Partitioning (العربية) - ArchWiki

# Partitioning (العربية)

From ArchWiki
Jump to navigation Jump to search

Related articles

- fstab
- LVM
- Swap
- Format a device
- File Systems

توفر عملية تقسيم القرص الصلب Partitioning إدارة المساحة المتوفرة وتقسيمها بشكل منطقي إلى عدة أقسام يمكن الوصول إليها كل على حدى، ويتم حفظ معلومات القسم ضمن جدول تقسيم GUID Partition Table أو سجل الإقلاع الرئيسي Master Boot Record.

يمكن ترك مساحة القرص الصلب كاملةً ضمن قسم واحد أو يمكن تقسيم هذه المساحة إلى عدة أقسام حيث أن هناك العديد من الحالات التي تتطلب إنشاء عدة أقسام على القرص الصلب مثل: تثبيت أكثر من نظام تشغيل على القرص نفسه أو إنشاء قرص خاص لـ swap، كما يُستعمل التقسيم في حالات أخرى لفصل الملفات وترتيبها كأن يقوم المستخدم بإنشاء قسم للملفات الصوتية وقسم آخر لملفات الفيديو، وسيتم شرح مخططات التقسيم الشائعة في هذا المقال.

يجب عمل تهيئة Format للقسم بأحد أنظمة الملفات file system type قبل استخدامه.

## أنواع الأقسام

عملية تقسيم القرص الصلب عبارة عن تقسيم للمساحة التخزينية المتوفرة على القرص إلى عدة أجزاء، هذه الأجزاء يطلق عليها اسم "أقسام partitions"، كل قسم يتصرف كأنه قرص مستقل ويُهيأ بنظام ملفات معين.

### MBR

هناك 3 أنواع من أقسام القرص الصلب في MBR:

- أساسي Primary
- ممتد Extended
  - منطقي Logical

الأقسام من النوع الأساسي Primary يمكن الإقلاع منها "Bootable" ويمكنك تعيين أربعة أقسام أساسية فقط لكل قرص صلب أو قرص RAID، وعند الاحتياج لأكثر من أربعة أقسام يتم استخدام قسم ممتد Extended يحوي بداخله أقسام منطقية Logical، فالقسم الممتد يعتبر حاوية للأقسام المنطقية حيث يمكن وضع عدد غير محدود من الأقسام المنطقية داخل القسم الممتد لكن يمكن تعيين قسم ممتد واحد فقط لكل قرص صلب ويُعامل القسم الممتد كأنه قسم أساسي، أي أنه في حال تواجد قسم ممتد على قرص ما فيمكن تعيين ثلاثة أقسام أساسية فقط بجانبه، وفي حال تثبيت نظامين تشغيل أحدهما ويندوز Windows يجب وضع نظام الويندوز في قسم أساسي.

الطريقة المتعارف عليها في ترقيم الأقسام هي أن تُرقم الأقسام الأساسية من `sda1` إلى `sda3` ومن ثم القسم الممتد `sda4`، أما الأقسام المنطقية داخل القسم الممتد `sda4` فيتم ترقيمها `sda5`، `sda6` ... إلخ.

### GPT

هنا يتوفر نوع واحد فقط من الأقسام وهي الأقسام الأساسية Primary، وعدد الأقسام الأساسية الممكن إنشاؤها على القرص الصلب أو قرص RAID غير محدود.

## مخططات التقسيم

ليس هناك قواعد صارمة في تقسيم القرص الصلب لكن يمكن للمستخدم أن يتبع الإرشادات العامة المذكورة أدناه، يتم تحديد مخطط التقسيم وفقاً لرغبة المستخدم في المرونة أو السرعة أو الحماية وأيضاً وفق المساحة المتوفرة على القرص حيث أن المخطط بالنهاية خيار شخصي للمستخدم، إذا كنت ترغب بتثبيت نظامي آرتش لينوكس وويندوز فالرجاء قراءة Windows and Arch Dual Boot.

### قسم واحد للجذر

هذا المخطط هو الأبسط ومن المفترض أن يفي بالغرض في أغلب حالات الاستخدام، يمكن إنشاء ملف سواب swapfile ويمكن تغيير مساحته بسهولة عند الضرورة، وعادة يتم تعيين قسم للجذر "/" بدايةً ومن ثم يتم إنشاء باقي الأقسام بناءً على الغرض من الاستخدام مثل raid أو التشفير أو قسم لمشاركة الوسائط أو غيرها.

### الأقسام المنفصلة

وضع مجلد معين على قسم منفصل يُمكِّن المستخدم من اختيار نظام الملفات الخاص بهذا المجلد ويجعله قادراً على ضبط خيارات ربط mount هذا القسم، في بعض الحالات من مثل القسم المحتوي على الوسائط فمن الممكن مشاركة هذه القسم بين أنظمة التشغيل.

### نقاط الربط

نقاط الربط التالية هي الاختيارات المحتملة عند ربط الأقسام المنفصلة بالنظام، قم بالاختيار بناءً على احتياجاتك الفعلية.

#### قسم الجذر

مجلد الجذر هو قمة السُلَّم وهو المكان الذي تربط به ملفات النظام الرئيسية ومنه تنبثق كافة الملفات، كل الملفات والمجلدات تظهر تحت مجلد الجذر / حتى لو كانت مخزنة على قرص آخر، ملفات الجذر يجب أن تكون كافية للإقلاع والاسترجاع restore والاستعادة recover و/أو إصلاح النظام، ولذلك فإن بعض المجلدات المعينة تحت المسار / لا يمكن وضعها على أقسام منفصلة.

قسم الجذر / هو القسم الأهم في النظام أما باقي الأقسام فمن الممكن الاستغناء عنها وتضمينها مع قسم الجذر.

تحذير: المجلدات الأساسية لعملية الإقلاع (ليس المقصود مجلد /boot) يجب أن تكون على نفس القسم المتواجد عليه الجذر / أو أن يتم ربطها في وقت مبكر بواسطة سكربت initramfs، هذه المجلدات الأساسية هي:/bin، /etc، /lib، /sbin و/usr. [1].

#### مجلد /boot

يحوي مجلد /boot على النواة و ramdisk images إضافة إلى ملف إعداد مُحمِّل الإقلاع والمراحل التي يتبعها، كما أنه يخزن بيانات يتم استخدامها قبل أن تقوم النواة بتشغيل برامج المستخدم user-space، مجلد /boot غير مطلوب أثناء القيام بالعمليات الاعتيادية من قبل النظام إنما يكون مطلوباً فقط أثناء إقلاع النظام وأثناء ترقية النواة (عند إعادة توليد initial ramdisk).

من الضروري وضع مجلد /boot على قسم منفصل عند تثبيت برمجيات RAID0 (stripe) system.

#### مجلد /home

يحوي مجلد /home على العديد من الملفات الخاصة بالمستخدم مثل ملفات الإعدادات وملفات التخزين المؤقت caches وبيانات التطبيقات application data وملفات الوسائط.

فصل المجلد /home ووضعه على قسم خاص يُمكِّن المستخدم من إعادة تقسيم مجلد الجذر / بدون أن يؤثر هذا الأمر على الملفات الموجودة على المجلد /home، لكن لاحظ أنه يمكنك إعادة تثبيت آرتش دون أن تؤثر على المجلد /home حتى لو كان هذا المجلد غير منفصل (فقط المجلدات العليا يجب حذفها ومن ثم يتم تشغيل pacstrap).

يجب عليك عدم مشاركة مجلد المنزل بين التوزيعات المختلفة لأنها تستخدم برامج وباتشات غير متوافقة مع التوزيعات الأخرى، بدلاً من ذلك قم بمشاركة قسم وسائط أو على الأقل قم باستخدام مجلدات منزل مختلفة على نفس قسم /home.

#### مجلد /var

يقوم مجلد /var بتخزين البيانات المتغيرة مثل مجلدات وملفات spool، البيانات الإدارية وبيانات التسجيل، ملفات مدير الحزم pacman المؤقتة، هيكل ABS ... إلخ، ويستخدم للتخزين والتسجيل المؤقتين وأيضاً الكتابة والقراءة المتكررة، وضع هذا المجلد على قسم منفصل يساعد في تجنب نفاذ المساحة نتيجة لتزايد السجلات والملفات ... إلخ.

فهو موجود لكي يجعل من ربط قسم /usr في وضع القراءة فقط ممكناً، كل ما تتم كتابته أثناء عمليات النظام (في مقابل التثبيت وإدارة البرمجيات) يجب أن يوضع ضمن /var.

ملاحظة: يحوي مجلد /var على الكثير من الملفات الصغيرة، وبالتالي يجب أخذ هذا الأمر بعين الاعتبار عند اختيار نوع نظام الملفات في حال وضع المجلد على قسم منفصل.

#### مجلد /tmp

هذا المجلد وبشكل افتراضي يوجد على قسم منفصل، بحكم أنه يتم ربطه كـ tmpfs بواسطة systemd.

#### سواب

يوفر قسم swap مساحة يمكن استعمالها كذاكرة عشوائية RAM وهمية، يمكن مشاركة قسم سواب بين أنظمة التشغيل لكن ليس أثناء وضعية الإسبات، هناك أيضاً ملف سواب swapfile الذي يجب أخذه بعين الاعتبار، صحيح أن أداءه أقل مقارنة بقسم سواب لكن من السهل جداً تغيير حجمه عند الضرورة،

ملاحظة: القاعدة القديمة في مطابقة مساحة قسم سواب مع الذاكرة العشوائية المتوفرة أثناء تنفيذ الأمر suspend-to-disk لم تعد تُطبق، الطريقة الافتراضية لـ suspend باتت تستخدم صورة 40% من ذاكرة RAM المتوفرة، وحتى مع استعمال TuxOnIce فإن النسخة المتطابقة تملك فقط حوالي 70% بعد الضغط. [2]

#### ما هي المساحة المناسبة لكل قسم؟

ملاحظة: المذكور أدناه مجرد نصائح غير ملزمة حيث أنه لا توجد قواعد صارمة في تقسيم القرص الصلب.

تحديد مساحة كل قسم يعتمد على الشخص نفسه واحتياجاته، المعلومات التالية قد تكون مفيدة:

/boot - 200 ميغابايت
  يحتاج قسم /boot حوالي 100 ميغابايت فقط، لكن في حال أنك تريد الاحتفاظ بأكثر من نواة فيستحسن اختيار 200 أو 300 ميغابايت.
/ - من 15 إلى 20 غيغابايت
  يحوي مجلد الجذر / على مجلد /usr الذي يزداد حجمه كلما تم تثبيت برامج جديدة، 15 إلى 20 غيغابايت من المفترض أن تكون كافية لأغلب المستخدمين الممتلكين لأقراص صلبة حديثة.
/var - من 8 إلى 12 غيغابايت
  من بين عدة بيانات ستُخزَن على هذا القسم فإنه سيحوي على هيكل ABS وملفات وحزم مخبأة cache لمدير الحزم pacman، الحفاظ على نسخ من الحزم أمر مفيد حيث أنه يسمح للمستخدم الانتقال من نسخة أحدث إلى نسخة أقدم إذا لزم الأمر ولكن ستقل المساحة الخالية على القسم كنتيجة لهذه العملية حيث أن الحزم والملفات المخبأة من قبل pacman ستزيد كلما قمت بتحديث النظام أو قمت بتثبيت حزم جديدة، لكن بالطبع يمكن حذف هذه الملفات والحزم في حال أردت المزيد من المساحة الخالية على القسم، 8 إلى 12 غيغابايت من المفترض أن تكون كافية لقسم /var بالاعتماد على عدد الحزم التي سيتم تثبيتها.
/home - الحجم يختلف من مستخدم لآخر
  قسم /home هو المكان الذي تُخزن فيه بيانات المستخدم والملفات المُحمَّلة من الإنترنت وملفات الوسائط، بالنسبة لنظام سطح مكتب فإن نظام ملفات /home هو الأكبر على القرص كما لديه هامش كبير.
swap - الحجم يختلف من مستخدم لآخر
  تاريخياً القاعدة العامة لتحديد مساحة قسم سواب هو اختيار ضعف سعة الذاكرة العشوائية RAM لكن مع التطور والزيادة في سعات الذواكر العشوائية تم إلغاء هذه القاعدة، في حال الحواسيب التي تحوي على ذاكرة RAM بسعة 512 ميغابايت فإن القاعدة السابقة تكون مناسبة وكافية، أما إذا كانت سعة الذاكرة العشوائية كبيرة (أكبر من 1024 ميغابايت) فمن الممكن أن تقلل مساحة قسم سواب أو أن تلغيه نهائياً، وعند امتلاك ذاكرة أكبر من 2 غيغابايت فمن المتوقع أن يكون أداء الجهاز ممتازاً حتى بدون تخصيص قسم سواب.
/data - الحجم يختلف من مستخدم لآخر
  يمكن للمستخدم أن يخصص قسم "data" لوضع الملفات التي يريد أن يشاركها مع كل المستخدمين على الجهاز نفسه، ومن الممكن أيضاً الاكتفاء باستخدام قسم /home لنفس الغرض.

ملاحظة: إذا كنت تملك فائضاً من المساحة على القرص فإن زيادة مساحة الأقسام السابقة بمقدار 25% سيجعلك في مأمن من الحاجة لمساحة إضافية في المستقبل كما سيغنيك عن التجزئة.

## أدوات التقسيم

- fdisk — أداة للتقسيم من داخل الطرفية تأتي مضمنة مع لينوكس.

  https://www.kernel.org/ || util-linux

- cfdisk — أداة للتقسيم من داخل الطرفية كُتبت بواسطة مكتبات ncurses.

  https://www.kernel.org/ || util-linux

تحذير: القسم الأول الذي تنشئه أداة "cfdisk" يبدأ من القطاع رقم 63 بدلاً من القطاع المعتاد 2048، هذا الأمر قد يسبب أداءً منخفضاً في أقراص الحالة الصلبة SSD وأقراص البنية المتقدمة advanced format (4k sector) drives، كما سيسبب أخطاءً مع GRUB2، أما مُحمِّل الإقلاع GRUB legacy و Syslinux فمن المفترض أن يعملا بشكل جيد.

- gdisk — نسخة GPT من أداة fdisk.

  http://www.rodsbooks.com/gdisk/ || gptfdisk

- cgdisk — نسخة GPT من أداة cfdisk.

  http://www.rodsbooks.com/gdisk/ || gptfdisk

- GNU Parted — أداة تقسيم تعمل من الطرفية.

  http://www.gnu.org/software/parted/parted.html || parted

- GParted — أداة بواجهة رسومية كُتبت بواسطة GTK.

  http://gparted.sourceforge.net/ || gparted

- Partitionmanager — أداة بواجهة رسومية كُتبت بواسطة QT.

  http://sourceforge.net/projects/partitionman/ || partitionmanager

- QtParted — مشابهة لأداة Partitionmanager ومتوفرة في مستودع AUR.

  http://qtparted.sourceforge.net/ || qtpartedAUR[broken link: archived in aur-mirror]

## محاذاة القسم

### نظرة عامة

المحاذاة الصحيحة للقسم أمر أساسي للحصول على الأداء الأمثل والعمر الطويل، التقسيم (كحد أدنى) وفقاً لـ EBS (حجم كتلة المسح Erase Block Size) الخاص بقرص SSD هو الطريقة المثلى للحصول على محاذاة صحيحة.

ملاحظة: * حجم الـ EBS خاص لكل شركة، يمكنك القيام ببحث على غوغل عن الطراز المطلوب، على سبيل المثال يُعتقد أن الـ Intel X25-M يملك EBS بـمقدار 512 كيلوبايت لكن إنتل لم تعلن أي شي رسمي عنه لوقت كتابة هذا المقال.

- إذا لم تكن تعرف قيمة EBS الخاصة بقرص الحالة الصلبة SSD الخاص بك فقم باختيار القيمة 512 كيلوبايت، هذا الرقم أكبر من أو يساوي كل قيم EBS المنتشرة تقريباً، ضبط القسم على قيمة EBS السابقة سيمكن القسم من محاذاة جميع القيم الأصغر، هذه هي الطريقة التي يتبعها ويندوز 7 و أوبونتو في إعداد الأقسام لكي تعمل مع أقراص الحالة الصلبة.

إذا لم يتم محاذاة الأقسام بحيث تبدأ من مضاعفات الـ EBS (على سبيل المثال 512 كيلوبايت) فإن عملية المحاذاة لا فائدة منها لأن كل شيء سينحرف عند بداية الإزاحة في القسم، بشكل تقليدي فإن البيانات المراد قراءتها أو كتابتها على القرص الصلب يتم عنونتها بالإشارة إلى "الأسطوانة" و "الرأس" و "القطاع" حيث أنهم يمثلون على التوالي الموقع القُطْري و الرأس (القرص والمحور) والموقع المحوري للبيانات، لكن في LBA (عنونة الكتلة المنطقية logical block addressing) لم يعد هذا هو الحال فبدلاً من ذلك تم عنونة كل القرص الصلب كتيار متواصل من البيانات.

### الاختيار بين GPT و MBR

جدول تقسيم GUID Partition Table (GPT) عبارة عن طريقة تقسيم حديثة تهدف إلى استبدال نظام Master Boot Record (MBR) القديم، يتفوق GPT بعدة أمور على MBR الذي يحوي على مراوغات يعود تاريخها إلى MS-DOS، ومع التطويرات الجديدة على أدوات التهيئة fdisk (MBR) و gdisk (GPT) فأصبح من السهل الاختيار بين GPT أو MBR والحصول على الأداء الأفضل.

الاختيار محصور بالتالي:

- إذا كنت تستخدم GRUB legacy كمُحمَِل إقلاع فيجب استخدام MBR.
- للإقلاع الثنائي مع ويندوز يجب استخدام MBR.
  - هناك استثناء خاص لهذه القاعدة: عند الإقلاع الثنائي مع نظام ويندوز 64 بت باستخدام UEFI بدلاً من BIOS يجب استخدام GPT.
- إذا لم تنطبق عليك الأمور السابقة فلك مطلق الحرية باستعمال GPT أو MBR، وبما أن GPT هو الأحدث فيفضل استعماله.

### استخدام GPT - الطريقة الحديثة

#### ملخص استعمال أداة Gdisk

عند استعمال GPT فإن أداة تعديل جدول التقسيم تدعى `gdisk`، يمكن لهذه الأداة أن تتكفل بمحاذاة القسم تلقائياً على 2048 قطاع (أو كتلة بحجم 1024 كيلوبايت) والذي من المفروض أن يتوافق مع غالبية أقراص SSD إذا لم يكن كلها، GNU parted أيضاً يدعم GPT لكنه أقل ملائمة للمستخدم less user-friendly في عملية تنظيم القسم، ملخص للاستعمال القياسي لأداة `gdisk`:

- قم بتثبيت `gdisk` من خلال حزمة gptfdisk.
- شغل `gdisk`على القرص.
- إذا كان القرص جديداً أو كنت تريد أن تقسمه من جديد قم بإنشاء جدول تقسيم GUID فارغ جديد بواسطة الأمر `o`.
- قم بإنشاء قسم جديد بواسطة الأمر `n` (النوع أساسي/القسم الأول).
- على فرض أن القسم جديد، سيقوم gdisk باختيار أكبر محاذاة ممكنة، أو بعبارة أخرى فإنه سيختار أكبر قوة للعدد 2 والتي تقسم كل الانزياحات على القسم.
- إذا قمت باختيار قطاع قبل القطاع 2048 كنقطة للبدء فإن gdisk سيقوم تلقائياً بنقل نقطة البدء إلى القطاع 2048، هذا الأمر لكي يتم ضمان المحاذاة بمقدار 2048 قطاع (بما أن القطاع يساوي 512 بايت، تكون المحاذاة تساوي 1024 كيلوبايت والتي من المفروض أن تناسب أي قرص SSD NAND erase block).
- استعمل صيغة `+x{M,G}` لكي تزيد من القسم بمقدار `x` ميغابايت أو غيغابايت، إذا تم اختيار قيمة ليست من مضاعفات قيمة المحاذاة (1024 كيلوبايت) فإن gdisk سيقوم بتخفيض القسم إلى أقرب منزلة في المضاعف.
- قم باختيار مُعرّف نوع القسم، الافتراضي هو `Linux/Windows data` (code `0700`) والذي من المفترض أن يعمل جيداً في أغلب الاستخدامات، اضغط على المفتاح `L`لإظهار قائمة بالأرقام، وإذا كنت تخطط لاستخدام LVM اختر Linux LVM (8e00).
- قم بتخصيص باقي الأقسام بنفس الطريقة.
- قم بكتابة الجدول إلى القرص ثم اخرج بواسطة الأمر `w`.
- قم بتهيئة الأقسام الجديدة بواسطة file system.

ملاحظة: * للإقلاع من قرص مقسم وفق GPT على نظام BIOS يجب عليك إنشاء -يفضل أن يكون في بداية القرص- BIOS boot partition من دون نظام ملفات ومع نوع تقسيم مثل `BIOS boot` أو `bios_grub`، هذا في حال الإقلاع بواسطة GRUB، أنا في حال Syslinux فلا يجب عليك إنشاء قسم bios_grub السابق بل تحتاج إلى قسم خاص لـ `/boot` والقيام بتفعيل سمة BIOS boot partition الخاصة بهذا القسم (بواسطة gdisk).

- مُحمِّل الإقلاع GRUB Legacy لا يدعم GPT، يجب على المستخدمين أن يستعملوا BURG أو GRUB أو Syslinux.

تحذير: إذا كنت تريد أن تقلع ثنائياً مع نظام ويندوز في وضعية BIOS (هذا هو الخيار الوحيد لنسخ 32 بت من ويندوز ونسخة 64 بت من ويندوز XP) فلا تستعمل GPT حيث أن ويندوز لا يدعم الإقلاع من قرص GPT في أنظمة BIOS! أنت تحتاج إلى استعمال MBR ومن ثم الإقلاع بوضعية BIOS كما هو موضح أدناه، هذا الشيء لا ينطبق في حال الإقلاع بنسخة 64 بت حديثة من ويندوز في وضعية UEFI.

### استعمال MBR - طريقة legacy

عند استعمال MBR تدعى أداة تعديل جدول التقسيم بـ `fdisk`، النسخ الحديثة من fdisk تخلت عن النظام المهمل في عرض الأسطوانات كوحدة عرض افتراضية إضافة إلى التوافق مع MS-DOS بشكل افتراضي، النسخة الأخيرة من fdisk تقوم بشكل تلقائي بمحاذاة كل الأقسام إلى 2048 قطاع أو 1024 كيلوبايت والذي من المفروض أن يعمل مع كل أحجام EBS التي تُستخدم من قبل مُصنّعي أقراص SSD، هذا يعني أن الإعدادات الافتراضية ستقدم لك محاذاة صحيحة.

لاحظ أن أداة fdisk قديماً كانت تستعمل الأسطوانات كوحدة عرض افتراضية، وحافظت على التوافقية مع MS-DOS التي فقدت مع محاذاة أقراص SSD، لذلك ستجد الكثير من الأدلة على الإنترنت من حوالي عامي 2008-2009 التي تساعد في جعل كل الإعدادات صحيحة، مع النسخة الأحدث من fdisk فإن الأمور أصبحت أكثر بساطة كما هو مبين في هذا الدليل.

#### ملخص استعمال Fdisk

- شغل `fdisk` ضمن القرص المطلوب.
- إذا كان القرص جديداً أو كنت تريد أن تقسمه من جديد قم بإنشاء جدول تقسيم DOS جديد وفارغ بواسطة الأمر `o`.
- قم بإنشاء قسم جديد بواسطة الأمر `n` (النوع أساسي/القسم الأول).
- قم باستعمال الصيغة `+xG` لزيادة حجم القسم بمقدار `x` غيغابايت.
- قم بتغيير مُعرف نظام القسم من النوع الافتراضي لينوكس (`type 83`) إلى النوع المطلوب بواسطة الأمر `t`، هذه خطوة اختيارية في حال أراد المستخدم إنشاء نوع آخر من الأقسام مثل swap أو NTFS أو LVM ... إلخ، لاحظ أنه بإمكانك الاطلاع على قائمة بكل الأنواع الصالحة بواسطة الأمر `l`.
- قم بتخصيص باقي الأقسام بنفس الطريقة.
- قم بكتابة الجدول إلى القرص ثم اخرج بواسطة الأمر `w`.
- قم بتهيئة الأقسام الجديدة بواسطة file system.

## انظر أيضاً

- Creating ext4 partitions from scratch[broken link: invalid section]
- Wikipedia:Disk partitioning

Categories:

- File systems (العربية)
- العربية

Hidden categories:

- Pages with broken package links
- Pages with broken section links