كيفية تقسيم وتهيئة أجهزة التخزين في لينكس


عبد اللطيف ايمش

تمهيد

يمكن أن يكون تحضير قرصٍ جديدٍ للاستخدام في نظام لينكس سهلًا وسريعًا، حيث هنالك الكثير من الأدوات، وصيغ أنظمة الملفات، ومخططات التقسيم التي يمكن أن تُعقِّد العملية إذا كانت لديك احتياجيات خاصة، لكن إن أردتَ أن تُشغِّل جهاز التخزين بسرعة، فالأمر سهلٌ جدًا.
سنشرح في هذا الدرس العمليات الآتية:

  • التعرف على قرصٍ جديدٍ في النظام.
  • إنشاء قسمٍ وحيدٍ الذي يمتد على كامل القرص (تتوقع أغلبية أنظمة التشغيل وجود جدول أقسام، حتى لو كان هنالك نظام ملفاتٍ وحيدٍ في القرص).
  • تهيئة القسم بنظام ملفات Ext4 (نظام الملفات الافتراضي في أغلبية توزيعات لينكس).
  • وصل وضبط الوصل التلقائي لنظام الملفات عند الإقلاع.

how-to-partition-and-format-storage-devices-in-linux.png

تثبيت الأدوات

علينا استخدام الأداة parted لتقسيم القرص، وقد تكون مثبتةً على الخادوم في أغلبية الحالات.
إذا كنتَ على خادوم أوبنتو أو دبيان ولم تكن الأداة parted مثبتةً بعد، فيمكنك تثبيتها بكتابة ما يلي في سطر الأوامر:

sudo apt-get update
sudo apt-get install parted

أما إذا كنتَ على خادوم CentOS أو فيدورا، فيمكنك تثبيتها بكتابة:

sudo yum install parted

التعرف على القرص الجديد في النظام

قبل أن نضبط القرص، فيجب أن نتمكن من التعرف عليه بشكلٍ صحيحٍ في الخادوم.
إذا كان القرص جديدًا كليًّا، فأسهل طريقة للتعرف عليه في الخادوم هي معرفة إن كان جدول التقسيمات موجودًا. فإذا طلبنا من parted أن يعرض مخطط الأقسام لجميع أقراصنا، فسيعطينا رسالة خطأ لأيّة أقراص لا تملك مخطط أقسام صحيح. يمكننا أن نستعمل هذه المعلومة لمساعدتنا على التعرف على القرص الجديد:

sudo parted -l | grep Error

يجب أن ترى رسالة الخطأ unrecognized disk label للأقراص الجديدة غير المُقسَّمة:

Error: /dev/sda: unrecognised disk label

يمكنك أيضًا استخدام الأمر lsblk والبحث عن القرص الذي له المساحة التخزينية الصحيحة وليس له أيّة أقسام تابعة له:

lsblk

الناتج:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0   100G  0 disk 
vda    253:0    0    20G  0 disk 
└─vda1 253:1    0    20G  0 part /

تحذير: تذكر أنَّ عليك التحقق من ناتج lsblk في كل مرة قبل إجراء التغييرات. فمُعرِّفات الأقراص ‎/dev/sd*‎ و ‎/dev/hd*‎ قد لا تشير إلى نفس القرص بعد إعادة الإقلاع، وهذا يعني أنَّك قد تخاطر بتقسيم أو تهيئة القرص الخاطئ إن لم تتحقق من مُعرِّف القرص قبل ذلك.
حاول استخدام مُعرِّفات الأقراص الثابتة مثل ‎/dev/disk/by-uuid أو ‎/dev/disk/by-label أو ‎/dev/disk/by-id. راجع مقالة «مدخل إلى مُصطلحات ومفاهيم التخزين في لينكس» لمزيد من التفاصيل.
بعد أن تعلم ما هو الاسم الذي أسندته النواة إلى قرصك، فيمكنك البدء بتقسيمه.

تقسيم القرص الجديد

كما ذكرنا في التمهيد، سننشِئ قسمًا وحيدًا يمتد على كامل القرص.

اختيار أحد معايير التقسيم

علينا أولًا تحديد ما هو معيار التقسيم الذي نود استخدامه، إذ أنَّ GPT هو معيار تقسيم حديث، بينما MBR له دعمٌ واسعٌ في أنظمة التشغيل. إن لم تكن عندك متطلباتٌ خاصة، فمن الأفضل أن تختار GPT.
نفِّذ الأمر الآتي على القرص الذي تريد تقسيمه لاختيار GPT:

sudo parted /dev/sda mklabel gpt

أما إذا أردتَ استخدام MBR، فنفِّذ الأمر الآتي بدلًا من الأمر السابق:

sudo parted /dev/sda mklabel msdos

إنشاء قسم جديد

بعد اختيار صيغة جدول الأقسام، فحان الآن الوقت لإنشاء قسم يمتد على كامل القرص بكتابة الأمر الآتي:

sudo parted -a opt /dev/sda mkpart primary ext4 0% 100%

إذا نفَّذنا الأمر lsblk الآن، فسنشاهد القسم الجديد مذكورًا في القائمة:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0   100G  0 disk 
└─sda1   8:1    0   100G  0 part 
vda    253:0    0    20G  0 disk 
└─vda1 253:1    0    20G  0 part /

إنشاء نظام ملفات على القسم الجديد

أصبح لدينا الآن قسمٌ جديدٌ متاحٌ للاستخدام، لذا علينا الآن تهيئته بنظام ملفات Ext4؛ وذلك بتمرير مسار القسم إلى الأداة mkfs.ext4.
يمكننا إضافة لافتة (label) للقسم باستخدام الخيار ‎-L. سيساعدك اختيار اسمٍ واضحٍ على التعرف على القسم بسهولة وسرعة.
ملاحظة: من المهم أنَّ تمرِّر اسم القسم وليس كامل القرص. تذكّر أنَّ أسماء الأقراص في لينُكس تشبه sda و sdb و hda …إلخ. أما الأقسام على تلك الأقراص فلها رقمٌ ملحقٌ بآخر اسمها، أي أنَّ عليك استخدام اسمٍ يشبه sda1 وليس sda.

sudo mkfs.ext4 -L datapartition /dev/sda1

إذا أردتَ أن تُغيّر لافتة القسم بعد إنشائه، فاستعمل حينها الأمر e2label كما يلي:

sudo e2label /dev/sda1 newlabel

يمكننا إظهار جميع الطرائق التي يمكنك التعرف فيها على القسم باستخدام lsblk؛ حيث نريد أن نعرض الاسم ,واللُصيقة ومُعرِّف UUID التابعين للقسم.
بعض إصدارات lsblk تُظهِر جميع تلك المعلومات إذا كتبنا:

sudo lsblk --fs

إذا لم تُظهِر النسخة الموجودة عندك كل الحقول اللازمة، فيمكنك طلب إظهارها يدويًا:

sudo lsblk -o NAME,FSTYPE,LABEL,UUID,MOUNTPOINT

يجب أن يظهر لك ناتجٌ شبيهٌ بالناتج الآتي، وكلُّ سطرٍ فيه يضمُّ الطرائق المختلفة التي يمكنك استعمالها للإشارة إلى نظام الملفات الجديد:

NAME   FSTYPE LABEL         UUID                                 MOUNTPOINT
sda                                                              
└─sda1 ext4   datapartition 4b313333-a7b5-48c1-a957-d77d637e4fda 
vda                                                              
└─vda1 ext4   DOROOT        050e1e34-39e6-4072-a03e-ae0bf90ba13a /

وصل نظام الملفات الجديد

يمكنك الآن وصل نظام الملفات لكي تستعمله.
ينصح معيار هيكلة نظام الملفات باستخدام ‎/mnt أو مجلدٍ فرعيٍ داخله لوصل أنظمة الملفات مؤقتًا. إذا كان وصلك للأقراص مؤقتًا فهذا أفضل مكانٍ لوصلها؛ لكن المعيار لم يُقدِّم أيّة اقتراحات لمكان وصل وسائط التخزين الدائمة، لذا يمكنك وصلها أينما تشاء؛ سنصل القسم في هذا الدرس داخل المجلد ‎/mnt/data.
أنشِئ المجلد باستخدام الأمر:

sudo mkdir -p /mnt/data

وصل نظام الملفات مؤقتًا

إذا أردتَ وصل نظام الملفات مؤقتًا، فنفِّذ الأمر الآتي:

sudo mount -o defaults /dev/sda1 /mnt/data

وصل نظام الملفات تلقائيًا عند الإقلاع

إذا أردتَ أن تصل نظام الملفات تلقائيًا في كل مرة يُقلِع فيها الخادوم، فعدِّل ملف ‎/etc/fstab بمحرِّرك النصي المفضَّل:

sudo nano /etc/fstab

نفَّذنا سابقًا الأمر sudo lsblk --fs لعرض ثلاثة مُعرِّفات لنظام الملفات الذي أنشأناه؛ يمكننا استخدام أي منها في ملف fstab؛ وسنستعمل في مثالنا هذا طريقة «اللُصيقة» (label)، لكنك تستطيع أن ترى كيف تبدو الأسطر التي تستعمل الطرائق الأخرى مذكورةً في التعليقات:

. . .
## Use one of the identifiers you found to reference the correct partition
# /dev/sda1 /mnt/data ext4 defaults 0 2
# UUID=4b313333-a7b5-48c1-a957-d77d637e4fda /mnt/data ext4 defaults 0 2
LABEL=datapartition /mnt/data ext4 defaults 0 2

ملاحظة: يمكنك تعلم المزيد عن مختلف الحقول في ملف ‎/etc/fstab في صفحة الدليل man fstab، لمعلوماتٍ إضافيةٍ عن خيارات الوصل المتوفرة لنظام ملفات معيّن فراجع صفحة الدليل man [filesystem] (أي مثلًا man ext4). لكن الأسطر الموجودة في المثال السابق تكفيك مبدئيًا.
يُضاف الخيار discard في بعض الأحيان لأقراص SSD لتفعيل «TRIM» بشكلٍ مستمر، وهنالك جدالٌ قائمٌ عن تأثير ذلك على الأداء؛ وأغلبية التوزيعات تتضمن طريقةً لإجراء TRIM كل فترة كبديلٍ عن تشغيله بشكلٍ مستمر.
احفظ الملف الآن بعد أن تنتهي من تعديله.
إذا لم تصل نظام الملفات من قبل، فيمكنك وصله الآن بكتابة:

sudo mount -a

اختبار نظام الملفات الموصول

بعد أن وصلنا القسم، فعلينا أن نتأكد من أنَّنا قادرون على الوصول إلى نظام الملفات.
يمكننا التحقق إن كان القرص متاحًا بالنظر إلى ناتج الأمر df:

df -h -x tmpfs -x devtmpfs

Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        20G  1.3G   18G   7% /
/dev/sda1        99G   60M   94G   1% /mnt/data

يجب أن تشاهد المجلد lost+found داخل المجلد ‎/mnt/data، والذي يُشير عادةً إلى جذر أنظمة ملفات Ext*‎:

ls -l /mnt/data

total 16
drwx------ 2 root root 16384 Jun  6 11:10 lost+found

يمكننا أيضًا التحقق من أنَّ نظام الملفات موصولٌ مع القدرة على القراءة والكتابة إليه بالكتابة إلى ملفٍ اختباري:

echo "success" | sudo tee /mnt/data/test_file

اقرأ الملف من القرص للتأكّد من القدرة على قراءة الملفات:

cat /mnt/data/test_file

success

يمكنك حذف الملف بعد التحقق من أنَّ نظام الملفات الجديد يعمل عملًا سليمًا:

sudo rm /mnt/data/test_file

الخلاصة

يجب أن يكون قرصك الآن مُقسَّمًا ومُهيّئًا وموصولًا وجاهزًا للاستخدام؛ وما شرحناه في هذا الدرس يُمثِّل الخطوط الأساسية لكيفية تحويل قرص خام إلى نظام ملفات يمكن للينكس أن يستعمله للتخزين. هنالك طرائق أخرى أكثر تعقيدًا للتقسيم والتهيئة والوصول والتي قد تستفيد منها في بعض الحالة، لكن ما سبق كافٍ كنقطة انطلاق لكيفية إعداد قرص للاستخدام الاعتيادي.
ترجمة -وبتصرّف- للمقال How To Partition and Format Storage Devices in Linux لصاحبه Justin Ellingwoo





تفاعل الأعضاء


لا توجد أيّة تعليقات بعد



يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن