লিনাক্স ডিরেক্টরি সিস্টেমগুলো উইন্ডোজ থেকে আলাদা এবং নতুন ইউজারদের বিভ্রান্ত করতে পারে। তাই লিনাক্স ডিরেক্টরি স্ট্রাকচারকে একটি গাছ হিসেবে চিন্তা করুন। গাছের রুট হলো সেটি যেখান থেকে বড় হয় এবং লিনাক্সে, সেটি যেখান থেকে ডিরেক্টরিগুলো ব্রাঞ্চ আউট করে।
ডিরেক্টরি সেপারেটর হচ্ছে ফরওয়ার্ড স্ল্যাশ (/), সংক্ষেপে slash। উদাহরণস্বরূপ, রুট ডিরেক্টরির পাথকে প্রায়শই slash (/) হিসেবে রেফার করা হয়।
লিনাক্স ডিরেক্টরি স্ট্রাকচার কী?
যারা লিনাক্সে পরিচিত, তারা root, lib, এবং boot শব্দগুলো শুনেছেন। এগুলো লিনাক্স ডিস্ট্রিবিউশন ডিরেক্টরির উদাহরণ।
লিনাক্স সিস্টেমগুলো Filesystem Hierarchy Standard (FHS) ব্যবহার করে। এটি সকল লিনাক্স ডিস্ট্রিবিউশনের কন্টেন্ট এবং ডিরেক্টরি স্ট্রাকচার ডিফাইন করে।
বেসিক নেভিগেশন
উপরোক্তরূপে বর্ণনা করা হয়েছে, লিনাক্স ডিরেক্টরি স্ট্রাকচার হард ড্রাইভের সেই ফোল্ডারকে রেফার করে যেখানে লিনাক্স ইনস্টল করা হয়েছিল।
ls (লিস্ট স্টোরেজ) কমান্ড রান করুন এবং Enter চাপুন। এই কমান্ড আপনার করেন্ট ওয়ার্কিং ডিরেক্টরিতে থাকা ফোল্ডারগুলোর তালিকা দেখাবে।
মনে রাখবেন যে প্রতিটি ডিস্ট্রিবিউশন হোম ডিরেক্টরিতে ভিন্ন ফোল্ডার দিয়ে আসে।
লিস্ট কমান্ড মানে লিস্ট স্টোরেজ, কিন্তু ফাইল সিস্টেম একটি সিঙ্গেল ফরওয়ার্ড স্ল্যাশ (/) দিয়ে শুরু হয় তাই নিচের কমান্ড এন্টার করুন:
ls /
এটি আপনাকে লিনাক্স ফাইল সিস্টেমের ডিরেক্টরি স্ট্রাকচার, হার্ড ড্রাইভের সেটআপ, বা ডিফল্ট ফোল্ডার স্ট্রাকচার দেখাবে।
প্রতিটি ফোল্ডারের একটি নির্দিষ্ট উদ্দেশ্য রয়েছে। হোম ডিরেক্টরি হলো যেখানে ইউজাররা থাকে, তাই আপনার ইউজার হোম ডিরেক্টরিতে কী আছে সেটি দেখতে নিচের কমান্ড ব্যবহার করুন।
ls /home
স্ক্রিন ক্লিয়ার করতে clear টাইপ করুন বা ctrl L ব্যবহার করুন। মনে রাখবেন ctrl L সব লিনাক্স ডিস্ট্রিবিউশনে কাজ নাও করতে পারে, কিন্তু clear কমান্ড করবে।
ফিরে যাই ls কমান্ডে। এটি জানা এবং বুঝার সবচেয়ে গুরুত্বপূর্ণ কমান্ড। আপনি আপনার লোকেশন ডিরেক্টরির আইটেমগুলো লিস্ট করতে চান।
لكن আপনি ls-এ অতিরিক্ত কমান্ডও যোগ করতে পারেন। উদাহরণস্বরূপ, ls -l / টাইপ করলে শুধু /-এর চেয়ে ভিন্ন আউটপুট দেবে। চেষ্টা করুন নিচের কমান্ড দিয়ে:
ls -l /
আপনি স্ক্রিনে অনেক বেশি ইনফরমেশন দেখতে পাচ্ছেন। সব কিছু בעיקר তার নিজস্ব লাইনে। -l কমান্ড মানে লং লিস্টিং খুঁজুন।
এতে মানে আপনি আরও ডিটেইলস দেখতে চান সেই সাথে প্রতিটি আইটেম আলাদা লাইনে থাকে যাতে পড়া সহজ হয়। কিছু ডিস্ট্রিবিউশন ll-কে -l এর অ্যালিয়াস হিসেবে ব্যবহার করে লং লিস্ট কমান্ডের জন্য।
গুরুত্বপূর্ণ ফোল্ডারগুলো যা আপনাকে জানা উচিত
আপনার লিনাক্স সিস্টেমে অনেক ফোল্ডার রয়েছে। নিচে সবচেয়ে গুরুত্বপূর্ণগুলো আলোচনা করা হলো।
হোম ডিরেক্টরি
হোম ডিরেক্টরি ডিফল্টভাবে যেখানে সকল ইউজারের নিজস্ব পার্সনাল ওয়ার্কিং স্পেস রয়েছে। প্রতিটি ইউজারের /home ডিরেক্টরিতে তাদের নিজস্ব ফোল্ডার রয়েছে।
আপনি যদি আপনার হোম ডিরেক্টরির সকল ফোল্ডারের লিস্টিং দেখতে চান, নিচের কমান্ড ব্যবহার করুন:
ls -l /home
কারণ আপনি ইতিমধ্যে আপনার হোম ডিরেক্টরিতে আছেন, আপনি শুধু ls ব্যবহার করেও পাথ ছাড়া আপনার ভিতরে কী আছে সেটি পুল আপ করতে পারেন।
লিনাক্স ডিরেক্টরি স্ট্রাকচারের প্রতিটি ডিরেক্টরি আলাদা হয় এবং একটি ফরওয়ার্ড স্ল্যাশ (/) দিয়ে শুরু হয়। অন্য কথায়, পাথ ছাড়া ls আপনার করেন্ট ডিরেক্টরির কন্টেন্টস দেখাবে।
আপনি যদি ওয়ার্কিং ডিরেক্টরি পরিবর্তন করে ফাইল সিস্টেমের রুটে ফিরে যেতে চান, নিচের কমান্ড ব্যবহার করুন:
cd /
আপনি যদি রুটের ডিরেক্টরিগুলো দেখতে চান, ব্যবহার করুন:
ls
কারণ আপনি রুট ডিরেক্টরিতে ফিরে এসেছেন আপনার হোম ডিরেক্টরিতে না, আপনি রুটের সকল ফোল্ডারের তালিকা দেখবেন।
রুট ডিরেক্টরিতে লং লিস্ট দেখতে, ব্যবহার করুন:
ls -l
রুট ডিরেক্টরি (/root)
আপনার সিস্টেমের সকল ডিরেক্টরি এবং ফাইল root ফাইলে থাকে যেটি সিম্বল / দিয়ে উপস্থাপিত। সকল ফাইল বা ডিরেক্টরি রুট থেকে শুরু হয়। যেকোনো ফাইল বা ডিরেক্টরির পাথ নিচের মতো দেখানো হয়:
Root/home/user/videos
রুট ডিরেক্টরি একটি সিঙ্গেল ইউজারের জন্য এবং লিনাক্স সিস্টেমে সবচেয়ে পাওয়ারফুল ইউজার।
লিব ডিরেক্টরি শেয়ারড লাইব্রেরি (/lib)
/lib ডিরেক্টরি হলো যেখানে কোড ধারণকারী ফাইলগুলো (লাইব্রেরিগুলো) অবস্থান করে। এই ফাইলগুলো সেই কোড স্নিপেট ধারণ করে যেগুলো আপনার হার্ড ড্রাইভে ফাইল পাঠাতে, আপনার ডেস্কটপে উইন্ডো ড্র করুন, বা পেরিফেরাল কন্ট্রোল করতে ব্যবহৃত হয়।
মিডিয়া ডিরেক্টরি (/media)
মিডিয়া ডিরেক্টরি হলো যেখানে আপনি মাউন্ট করা এক্সটার্নাল হার্ড ড্রাইভ, থাম্ব ড্রাইভ, DVD, বা ব্লু-রে ডিস্কের ডেটা ফাইল দেখতে পারেন।
বুট ডিরেক্টরি (/boot)
আপনার সিস্টেম যা দরকার সেটি শুরু করার জন্য সেগুলো /boot ডিরেক্টরিতে রয়েছে। এর ব্যবহার Filesystem Hierarchy Standard-এ স্ট্যান্ডার্ডাইজড।
আপনার মেশিন বুট করার জন্য প্রয়োজনীয় কনফিগারেশন বুট ডিরেক্টরিতে থাকে। আপনি এই ডিরেক্টরি রিড আফ করতে চাবেন না।
অন্যান্য কিছু স্ট্যান্ডার্ড ডিরেক্টরি شامل:
- /dev হলো যেখানে সকল ডিভাইস ফাইল থাকে, যেমন এক্সটার্নাল USB বা একটি ওয়েবক্যাম।
- /var হচ্ছে variable-এর সংক্ষিপ্ত রূপ। এটি সেই জায়গা যেখানে প্রোগ্রামগুলো রানটাইম ইনফরমেশন স্টোর করে যেমন ইউজার ট্র্যাকিং, সিস্টেম লগিং, ক্যাশে, এবং অন্যান্য ফাইল যা সিস্টেম প্রোগ্রাম ম্যানেজ এবং তৈরি করে।
- ইউজারদের পার্সনাল ডিরেক্টরি /home-এ রয়েছে।
- /proc আপনার সিস্টেম সম্পর্কে ইনফরমেশন ধারণ করে যেমন CPU এবং আপনার লিনাক্স সিস্টেম কার্নেল। এটি একটি ভার্চুয়াল সিস্টেম।
- /bin হলো যেখানে সকল এসেনশিয়াল রানNABLE প্রোগ্রাম (ইউজার বাইনারি) থাকে।
- /etc ফোল্ডার কনফিগারেশন ফাইলগুলো ধারণ করে।
প্রতিটি ডিরেক্টরি কী এবং কীভাবে ব্যবহৃত হয় সেটির পূর্ণ ব্রেকডাউন জন্য Wikipedia-এর সারমারি পড়ুন।
আপনার করেন্ট ডিরেক্টরি দেখুন
আপনি যদি না জানেন আপনি কোন ডিরেক্টরিতে কাজ করছেন, pwd (প্রিন্ট ওয়ার্কিং ডিরেক্টরি) কমান্ড ব্যবহার করুন।
রেজাল্ট যেন হবে:
/home/username
আপনি যদি তারপর ls রান করুন, ডিফল্ট সেটিং আপনাকে আপনার করেন্ট ফোল্ডারের কন্টেন্টস দেখাবে, যেমন উপরে বর্ণনা করা হয়েছে।
কালারগুলো কী বোঝায়?
মান লিনাক্স আপনি /etc ফোল্ডারে আছেন এবং এই কমান্ড রান করেন:
ls -l /etc
আপনি অনেক ইনফরমেশন সেই সাথে অনেক ভিন্ন কালার দেখবেন।
সাধারণ থাম্ব রুল হচ্ছে:
- ব্লু হচ্ছে একটি ফোল্ডার
- হোয়াইট হচ্ছে একটি ফাইল
- গ্রিন হচ্ছে একটি প্রোগ্রাম বা একটি বাইনারি
কালারগুলো ডিস্ট্রিবিউশন অনুযায়ী ভিন্ন হয়তে পারে। অধিকাংশ, কিন্তু সব নয়, ডিস্ট্রো প্রি-সেট কালার দিয়ে আসে।
পারমিশন স্ট্রিং কী?
প্রতিটি ফাইলের লিস্টিং-এর বাম পাশে অক্ষরের একটি স্ট্রিম রয়েছে। এটাকে পারমিশন স্ট্রিং বলা হয়।
স্ট্রিং-এর প্রথম ক্যারেক্টার লক্ষ্য করুন। d মানে ডিরেক্টরি। তাই, আপনার লিনাক্স ডিস্ট্রো যদি ভিন্ন কালার ব্যবহার না করে, তবুও আপনি জানবেন যে d দিয়ে শুরু হওয়া একটি ক্যারেক্টার স্ট্রিং হচ্ছে একটি ডিরেক্টরি।
ফাইল এবং প্রোগ্রাম হাইফেন (-) দিয়ে শুরু হয়।
একটি l একটি লিংককে রেফার করে যা অন্য একটি ফাইলের সাথে লিংক করা।
কুইক নেভিগেশন ওভারভিউ
ls কমান্ড লিস্ট স্টোরেজ আপনাকে দেখায় আপনার করেন্ট ওয়ার্কিং ডিরেক্টরিতে কী আছে। আপনি যদি না জানেন আপনার করেন্ট ডিরেক্টরি কী, pwd কমান্ড ব্যবহার করুন।
ফাইল সিস্টেমের শুরু একটি সিঙ্গেল ফরওয়ার্ড স্ল্যাশ (/) দিয়ে ডেজিগনেটেড। ডিরেক্টরির মাঝপথে সুইচ করতে cd কমান্ড ব্যবহার করুন। আপনি যা সווিচ করেছেন সেটি দেখতে ls কমান্ড ব্যবহার করুন। তারপর, আপনার হোম ডিরেক্টরিতে ফিরে যেতে /home/username টাইপ করুন।
cd কমান্ড আপনাকে ফাইল সিস্টেম নেভিগেট করতে সাহায্য করে। ls আপনাকে দেখায় আপনার করেন্ট ডিরেক্টরিতে কী আছে যেখানে আপনি কাজ করছেন। ls -1 আপনাকে লং লিস্টিং দেখায়।
যদিও বিভিন্ন লিনাক্স ডিস্ট্রিবিউশনে মাইনর পার্থক্য রয়েছে, ফাইল সিস্টেম লে আউটগুলো খুব সাদৃশ্য। লিনাক্স ডিরেক্টরি স্ট্রাকচার বুঝতে সেরা উপায় হচ্ছে উপরের কিছু সাজেশন ফলো করুন এবং কীভাবে কাজ করে সেটির সাথে নিজেকে পরিচিত করুন।
শুধু /boot ডিরেক্টরি স্পর্শ না করুন আশ्वস্ত হন। টার্মিনাল ব্যবহার করে আপনার সিস্টেম নেভিগেট করার প্র্যাক্টিস করুন। cd, ls, এবং pwd কমান্ডগুলোতে আটকে থাকুন যাতে আপনি কিছু ভাঙাবেন না। আপনার ডকুমেন্টেশন, অ্যাপস এবং অন্যান্য রিসোর্স যেগুলো আপনাকে ব্যবহার করতে হবে সেগুলো কোথায় পাবেন সেটি אינ্টুইটিভলি জানতে আপনাকে বেশি সময় লাগবে না।