সবাইকে লিনাক্স ইস্কুল পরব-৪ এ স্বাগতম । আশা করি সবাই পূর্বের পোস্টগুলো ধারাবাহিক ভাবে পড়েছেন । যদি না পড়ে থাকেন তবে পূর্বের পর্বগুলো(পর্ব -১, পর্ব – ২, পর্ব – ৩) আগে পড়ে আসার জন্য অনুরধ করছি।
আজ আমাদের আলোচ্য বিষয় হচ্ছে “লিনাক্স ফাইল সিস্টেম” , কিন্তু “লিনাক্স ফাইল সিস্টেম” সম্পর্কে জানার আগে আমাদের “ফাইল সিস্টেম (File System) ” সম্পর্কে জানতে হবে ।
ফাইল সিস্টেম (File System) কি ?
ফাইল সিস্টেম হচ্ছে একটি বিশেষ পদ্ধতি যার মাধ্যমে অপারেটিং সিস্টেম (OS) কম্পিউটার এর স্থায়ী মেমোরি তে অবস্থিত ফাইল সমূহের হিসাব রাখে। সহজ ভাবে বলতে গেলে, কোথায় কোন ফাইল আছে তা মনে রাখার পদ্ধতি। আমরা হয়তো অনেকেই “NTFS“,” FAT-32” ইত্যাদি শব্দের নাম শুনেছি। আশলে এগুলো Windows OS ভিত্তিক দুটি ফাইল সিস্টেম।
ফাইল সিস্টেম এর কাজসমূহ –
# ফাইল , ডিরেক্টরি ইত্যাদি সম্পর্কে অপারেটিং সিস্টেম কে জানানো
# ফাইল তথা ডিরেক্টরি এর ম্যানেজমেন্ট।
# ডাটা লস প্রতিরোধ করা ।
# ডাটা এর নিরাপত্তা নিশ্চিত করা।
# ইন্ডেক্সিং, সর্টিং ইত্যাদি বিষয়ে অপারেটিং সিস্টেম কে সাহায্য করা
লিনাক্স ফাইল সিস্টেম কি ?
Opensource licence এর আওতাভুক্ত যেকোনো ফাইল সিস্টেম ই হচ্ছে লিনাক্স ফাইল সিস্টেম।
যদিও লিনাক্স এ Windows OS এর ফাইল সিস্টেম ও কাজ করে। লিনাক্স এর জন্য অনেক ফাইল সিস্টেম আছে , যা বলে শেষ করা মুশকিল ।
কয়েকটি উল্লেখযোগ্য লিনাক্স ফাইল সিস্টেম –
ext-4
# ext -3,2,1
# zfs
# xfs
# btrfs
# jfs ……… আরও অনেক।
আমরা আজকে শুধুমাত্র ext-4 এর সম্পর্কে কিছু জানবো।
ext 4 ফাইল সিস্টেম
ext 4 = fourth extended filesystem . ext 4 হচ্ছে ext – 1,2,3 এর উন্নত সংস্করণ । বর্তমানে ext 4 লিনাক্স distro সমূহের Default ফাইল সিস্টেম হিসেবে ব্যাবহার করা হচ্ছে। নিম্নে ext 4ফাইল সিস্টেম সম্পর্কে কিছু তথ্য তুলে ধরা হল –
Developer(s) | Mingming Cao, Andreas Dilger, Alex Zhuravlev (Tomas), Dave Kleikamp, Theodore Ts’o, Eric Sandeen, Sam Naghshineh, others |
---|
Introduced | Stable: 21 October 2008 Unstable: 10 October 2006 with Linux 2.6.28, 2.6.19 |
---|
Max. volume size | 1 EiB
16 TiB (recommended) |
---|
Max. file size | 16 TiB (for 4k block filesystem) |
---|---|
Max. number of files | 4 billion (specified at filesystem creation time) |
Max. filename length | 255 bytes |
Attributes | acl, bh, bsddf, commit=nrsec, data=journal, data=ordered, data=writeback, delalloc, extents, journal_dev, mballoc, minixdf, noacl, nobh, nodelalloc,noextents, nomballoc, nouser_xattr, oldalloc, orlov, user_xattr |
---|
File system permissions | POSIX |
---|---|
Transparent compression | No |
Transparent encryption | Yes |
Data deduplication | No |
Supported operating systems | Linux FreeBSD (read-only in kernel since version 10.1) Mac OS X (read-only with ext4fuse, full with ExtFS) Windows (Read/Write without journaling with ext2fsd) |
---|
– তথ্য সংগ্রহে Wikipidea
এখন তাহলে লিনাক্স ফাইল ম্যানেজমেন্ট নিয়ে কিছু বলা যাক।
লিনাক্স ফাইল ম্যানেজমেন্ট
লিনাক্স এর সহজাত অভ্যাস হচ্ছে লিনাক্স সব কিছু কেই ফাইল হিসেবে মনে করে। এমনকি একটি হার্ড ডিস্ক কেও মনে করে একটি ফাইল । তাই Windows OS এর মতো লিনাক্স এ কোন”drive letter” ও নেই।
সকল লিনাক্স distro তেই “Home” নামক একটি ডিরেক্টরি বা ফোল্ডার পাওয়া যাবে। windows OS এ যা “My Computer আর লিনাক্স এ তা “Home” ।
“Home” এর ভিতর পাওয়া যাবে Document, Downloads, Music, Pictures সহ আরও কিছু ফোল্ডার ।
এখন আমরা কথা বলবো “root” ডিরেক্টরি সম্পর্কে। আসলে এই “root” ডিরেক্টরি দ্বারাই একটি লিনাক্স distro পরিচালিত হয় ।
“root” ডিরেক্টরি –
# /bin / sbin – এখানে System Binary ফাইল সমূহ থাকে । Terminal Command গুলো এখান থেকেই চলে।
# /boot – এখানে কম্পিউটার এর বুট এর সাথে সম্পর্কযুক্ত ফাইল থাকে। এখানে ,bootloader ও লিনাক্স কার্নেল থাকে।
# /dev – এই “dev” মানে কিন্তু developer না। এর মানে “device”. Hardware এর সাথে সম্পর্কযুক্ত ফাইলসমূহ এখানে থাকে।
# /etc – System dump ফাইলসমূহ এখানে থাকে।
# /lib – কম্পিউটার বুট এর সাথে সংশ্লিষ্ট কিছু library image ফাইল এখানে থাকে।
# /media – লিনাক্স কোন flash drive বা CD কে এখানে মাউন্ট করে। মাউন্ট করা না থাকলে ফোল্ডার টি খালি থাকে ।
# /mnt – লিনাক্স এখানে Temporary Drive কে মাউন্ট করে। যেমনঃ ISO images। এছাড়া ফোল্ডার টি খালি থাকে।
# /opt– এর অর্থ – Optional . Third-party software ( Google Chrome, Firefox) এর জন্য ফোল্ডার টি বরাদ্দ থাকে।
# /proc – Currently running processes গুলো এখানে পাওয়া যাবে।
# /root– এই ফোল্ডার “root user” এর জন্য বরাদ্দকৃত থাকে।
# /run – Boot এর সময় কিছু প্রোগ্রাম এখান থেকে run করে। এসব প্রোগ্রাম মূলত Hardware এর সাথে জড়িত।
# /srv – এর অর্থ – “Service”. সিস্টেম Service গুলো এখান থেকে শুরু হয়।
# /sys – virtual filesystem এর জন্য এই ফোল্ডার । kernel subsystems, hardware devices এখানে থাকে।
# /tmp – যা নাম তাই কাজ। এখানে, temporary files থাকে।
# /usr – User-facing applications এখানে পাওয়া যায়।
# /var – variable data এখানে পাওয়া যাবে। system logs, printer spools, lock files ইত্যাদি এই ফোল্ডার এর সদস্য।
মূলত , /root folder টি লিনাক্স ফাইল ম্যানেজমেন্ট এর সাথে জড়িত।
/*Bonus Info –
Format এবং সব Delete করার মধ্যকার পার্থক্য –
- ফরম্যাট দ্বারা ফাইল সিস্টেম পরিবর্তন করা বা পূর্বের ফাইল সিস্টেম reset করা যায়। কিন্তু Delete মানে শুধু মাত্র একটি task.
- ফরম্যাট দ্বারা ড্রাইভ এর ব্লক reset করা যায়, কিন্তু Delete এর মাধ্যমে তা সম্ভব না ।*/
তথ্য সংগ্রহে – Makeuseof, Wikipidea
আজ এখানেই ইতি টানলাম। আমার ভুল-ভ্রান্তি থাকলে ক্ষমা করবেন।
আগামীতে লিনাক্স Desktop Enviroment নিয়ে কথা বলবো।