একজন লিনাক্স সিস্টেম অ্যাডমিনিস্ট্রেটর হিসেবে কাজ করতে গেলে ডিস্ক ম্যানেজমেন্ট একটি অত্যন্ত গুরুত্বপূর্ণ বিষয়। লিনাক্স ইন্সটলেশনের সময় সাধারণত ডিফল্টভাবে MBR পদ্ধতিতে ৩ (তিন) এবং GPT পদ্ধতিতে ৪ (চার)টি পার্টিশন তৈরি করা হয়। তবে পরবর্তীতে প্রয়োজন অনুযায়ী অতিরিক্ত পার্টিশন ফ্রি স্পেস থেকে তৈরি করা সম্ভব। এছাড়াও পার্টিশন ফরম্যাট, কনভার্ট, ডিলিট বা রিকভার করার জন্য বিভিন্ন কমান্ড জানা প্রয়োজন। এই পোস্টে আমরা লিনাক্সের পার্টিশন ব্যবস্থাপনা সম্পর্কিত কিছু গুরুত্বপূর্ণ কমান্ড নিয়ে আলোচনা করব।
➡ 1. লিনাক্সেরহার্ডডিস্ক ইনফরমেশন, যেমনঃ হার্ডডিস্ক সাইজ, ডিস্ক পার্টিশনটাইপ (MBR/GPT) কতগুলো পার্টিশন আছে, সেক্টর, ব্লক সাইজ, এবং পার্টিশন আইডি সম্পর্কে জানতে নিচের কমান্ডঃ

নোটঃ উপরের কমান্ডের আউটপুটে যদি ‘dos’ দেখা যায়, তাহলে পার্টিশন MBR পদ্ধতিতে করা, আর যদি ‘gpt’ দেখা যায়, তাহলে বোঝা যাবে সেটা GPT পার্টিশন টেবিল।
➡ 2. নিচের কমান্ডের মাধ্যমে MBR পার্টিশনে’fdsik -l’ মত আউটপুট পাবেন, কিন্তু এখানে হেড (Head), সেক্টর (Sector), সিলিন্ডার (Cylinder), ব্লক (Block) সম্পর্কে আরও বিস্তারিত ভাল ভাবে উল্লেখ আছেঃ
[root@server ~]# sfdisk -l
Disk /dev/sda: 2610 cylinders, 255 heads, 63 sectors/track
Units: cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
Device Boot Start End #cyls #blocks Id System
/dev/sda1 * 0+ 63- 64- 512000 83 Linux
/dev/sda2 63+ 1369- 1306- 10485760 83 Linux
/dev/sda3 1369+ 1434- 66- 524288 82 Linux swap / Solaris
/dev/sda4 0 - 0 0 0 Empty
➡ 3. নিচের কমান্ড ব্যবহার করে আমরা লিনাক্স সিস্টেমের হার্ডডিস্কের হেড, সেক্টর, সিলিন্ডার, ট্র্যাক, প্রাইমারি পার্টিশন, এক্সটেন্ডেড পার্টিশন এবং লজিক্যাল পার্টিশন সম্পর্কিত ইনফরমেশন পাওয়া যাবেঃ
[root@server ~]# cfdisk -l
Disk Drive: /dev/sda
Size: 21474836480 bytes, 21.4 GB
Heads: 255 Sectors per Track: 63 Cylinders: 2610
Name Flags Part Type FS Type [Label] Size (MB)
-----------------------------------------------------------------------------
Pri/Log Free Space 1.05*
sda1 Boot Primary xfs 524.29*
sda2 Primary xfs 10737.42*
sda3 Primary swap 536.88*
Pri/Log Free Space 9675.22*
নোটঃ ‘cfdisk -l‘ কমান্ড থেকে বের হওয়ার জন্য ‘q‘ চাপতে হবে।
➡ 4. লিনাক্সের পার্টিশন, পার্টিশন সাইজ, ব্যবহৃত স্পেস, ফ্রি স্পেস, মাউট পয়েন্ট দেখার জন্য নিচের কমান্ডঃ
[root@server ~]# df -h | grep sda
/dev/sda2 10G 4.9G 5.2G 49% /
/dev/sda1 497M 146M 352M 30% /boot
[root@server ~]# df -HT | grep sda
/dev/sda2 xfs 11G 5.3G 5.5G 49% /
/dev/sda1 xfs 521M 153M 369M 30% /boot
নোটঃ দ্বিতীয় কমান্ডটি ব্যবহার করলে, উপরের কমান্ডের সকল তথ্যের সাথে ফাইল সিস্টেম টাইপও দেখাবে।
➡ 5. নিচের কমান্ড ব্যবহার করে লিনাক্স সিস্টেমে কতগুলা ব্লক ডিভাইস (HDD, DVD, USB) আছে এবং সেগুলার লিস্ট, পার্টিশন সাইজ এবং পার্টিশন নাম বা মাউন্ট পয়েন্ট জানা যাবেঃ

➡ 6. লিনাক্সে কোনও পার্টিশন বা মাউন্ট পয়েন্ট স্থায়ী ভাবে মাউন্ট করতে গেলে, আমাদেরকে ‘/etc/fstab’ ফাইলে উল্লেখ করতে হয়। ফলে, সিস্টেম স্টার্ট হওয়ার সময় স্থায়ী ভাবে মাউন্ট হয়ে যায়। এক্ষেত্রে ‘/etc/fstab’ ফাইলে আমরা পার্টিশন নাম (/dev/sdaX) বা পার্টিশন ব্লক আইডি (UUID) যে কোন একটা ব্যাবহার করতে পারি। যদি কোনও কারণে হার্ডডিস্কের পার্টিশন লেআউট পরিবর্তন হয়ে যায়, অর্থাৎ মাঝখান থেকে যদি কোনও পার্টিশন ডিলিট করে দেওয়া হয়, তখন পার্টিশন নাম গুলো পরিবর্তন হয়ে যায়। যেমনঃ মাঝখান থেকে ‘/dev/sda5’ পার্টিশন ডিলিট করে দেওয়া হয়ে, তখন sda7 পার্টিশনটি sda6 নামে দেখাবে।যার কারণে, মাউন্ট পয়েন্টটি তার পার্টিশন নাম্বার (/dev/sda7) হারায়ে ফেলে। এক্ষেত্রে, UUID (ব্লক আইডি) দিয়ে কাজ করার সুবিধা হচ্ছে, মাঝখান থেকে পার্টিশন ডিলিট হলেও আমাদের সিস্টেমে কোন সমস্যা হবে না।নিচের ‘blkid’ কমান্ড ব্যবহার করে আমরা লিনাক্স সিস্টেমের পার্টিশন লেবেল টাইপ (MBR/GPT) বের করা যাবে। সেই সাথে প্রত্যেকটি পার্টিশনের ইউনিক পার্টিশন আইডি (UUID) বা ব্লক আইডি বের করা যায়।
[root@server ~]# blkid
/dev/sda: PTTYPE="dos"
[root@server ~]# blkid /dev/sda7
/dev/sda7: UUID="052beb17-ad31-45a3-833a-c2b4be71775e" TYPE="xfs"
➡ 7. লিনাক্স সিস্টেমে MBR পদ্ধতিতে পার্টিশন করার জন্য নিচের কমান্ড করতে পারি। লিনাক্সে MBR দিয়ে সর্বোচ্চ ১৫(পনের) টা পার্টিশন করা যায়ঃ
[root@server ~]# fdisk /dev/sda
➡ 8. লিনাক্স সিস্টেমে GPT পদ্ধতিতে পার্টিশন করার জন্য নিচের কমান্ড করতে পারি। GPT পদ্ধতিতে সর্বোচ্চ ১২৮(একশত আটাশ) টা পার্টিশন করা যায়ঃ
[root@server ~]# gdisk /dev/sda
➡ 9. ‘parted’ কমান্ড (GNU টুলস) ব্যবহার করে আমরা MS-DOS (MBR) অথবা GPT(UEFI) পার্টিশন টেবিল ইনফরমেশন, সাইজ, নতুন পার্টিশন তৈরি, পার্টিশন ডিলিট, ফ্রি স্পেস, কনভার্ট এবং কপি করা যাবেঃ
[root@server ~]# parted

নোটঃ ‘parted‘ কমান্ড থেকে বের হওয়ার জন্য ‘q‘ চাপতে হবে।
