تعلم قيادة لينكس - FDISK

اسم

fdisk - مناولة الجدول التقسيم لينكس

ملخص

fdisk [-u] [-b segmentize ] [-C cyls ] [-H heads ] [ -Ss sms ] الجهاز

fdisk -l [-u] [ device ... ]

قسم fdisk -s ...

fdisk -v

وصف

يمكن تقسيم الأقراص الثابتة إلى قرص منطقي واحد أو أكثر يسمى الأقسام . يتم وصف هذا التقسيم في جدول الأقسام الموجود في القطاع 0 من القرص.

في العالم BSD واحد يتحدث عن 'شرائح القرص' و 'disklabel'.

يحتاج نظام Linux إلى قسم واحد على الأقل ، وهو نظام ملفات الجذر الخاص به. يمكن استخدام ملفات المبادلة و / أو أقسام المبادلة ، ولكن هذا الأخير أكثر كفاءة. لذلك ، عادةً ما يريد المرء قسم Linux ثاني مخصصًا كقسم مقايضة. على الأجهزة المتوافقة مع Intel ، يمكن لنظام الإدخال / الإخراج الأساسي ( BIOS) الذي يقوم بتمهيد النظام غالبًا الوصول إلى أول 1024 اسطوانة للقرص فقط. لهذا السبب ، غالباً ما يقوم الأشخاص الذين لديهم أقراص كبيرة بإنشاء قسم ثالث ، فقط بضعة ميغابايت كبيرة ، يتم تركيبها عادة على / boot ، لتخزين صورة kernel وعدد قليل من الملفات الإضافية اللازمة في وقت التمهيد ، وذلك للتأكد من أن هذه الأشياء الوصول إلى BIOS. قد تكون هناك أسباب تتعلق بالأمان وسهولة الإدارة والنسخ الاحتياطي أو الاختبار ، لاستخدام أكثر من الحد الأدنى لعدد الأقسام.

حل مشكلات الطباعة وتوفير الوقت باستخدام برنامج إدارة قائمة انتظار الطباعة.

FDISK (في النموذج الأول من الاحتجاج) هو برنامج قائم على القائمة لإنشاء جداول التقسيم ومعالجتها. يفهم جداول تقسيم نوع DOS و disklabels BSD أو SUN نوع.

عادة ما يكون الجهاز واحدًا مما يلي:

/ dev / hda / dev / hdb / dev / sda / dev / sdb

(/ dev / hd [ah] لأقراص IDE ، / dev / sd [ap] لأقراص SCSI ، / dev / ed [ad] لأقراص ESDI ، / dev / xd [ab] للأقراص XT). يشير اسم الجهاز إلى القرص بأكمله.

القسم هو اسم جهاز متبوعًا برقم القسم. على سبيل المثال ، / dev / hda1 هو القسم الأول على القرص الثابت IDE الأول في النظام. يمكن أن تحتوي الأقراص على ما يصل إلى 15 جزءًا. انظر أيضًا /usr/src/linux/Documentation/devices.txt .

يمكن لوصلة diskDabel BSD / SUN وصف 8 أقسام ، يجب أن يكون الجزء الثالث منها قسم "القرص بالكامل". لا تبدأ القسم الذي يستخدم في الواقع القطاع الأول (مثل قسم المبادلة) في الاسطوانة 0 ، لأن ذلك سوف يدمر disklabel.

يمكن أن يصف قرص disklabel من نوع IRIX / SGI 16 قسمًا ، يجب أن يكون الجزء الحادي عشر منها عبارة عن قسم "وحدة تخزين" بالكامل ، بينما يجب أن يكون العنوان التاسع بعنوان "رأس مستوى الصوت". سيغطي عنوان وحدة التخزين أيضًا جدول الأقسام ، أي أنه يبدأ في المربع صفر ويمتد بشكل افتراضي على خمسة أسطوانات. قد يتم استخدام المساحة المتبقية في رأس وحدة التخزين بواسطة إدخالات الدليل رأس. قد لا تتراكب أي أقسام مع رأس مستوى الصوت. أيضا لا تغيير نوعه وجعل بعض نظام الملفات على ذلك ، لأنك سوف تفقد جدول القسم. استخدم هذا النوع من الملصقات فقط عند العمل مع Linux على أجهزة IRIX / SGI أو أقراص IRIX / SGI تحت Linux.

يمكن أن يصف جدول قسم من نوع DOS عددًا غير محدود من الأقسام. في القطاع 0 هناك مساحة لوصف 4 أقسام (تسمى "أساسي"). أحد هذه قد يكون قسم موسّع؛ هذا هو المربع الذي يحتوي على أقسام منطقية ، مع وجود واصفات موجودة في قائمة مرتبطة بالقطاعات ، كل منها يسبق الأقسام المنطقية المقابلة. الأقسام الأساسية الأربعة ، سواء كانت موجودة أم لا ، تحصل على أرقام 1-4. تبدأ الأقسام المنطقية الترقيم من 5.

في جدول تقسيم نوع DOS يتم تخزين إزاحة البداية وحجم كل قسم بطريقتين: كعدد مطلق من القطاعات (المعطى في 32 بت) وكقسم ثلاثي / اسطوانات / قطاعات (محدد في 10 + 8 + 6 بت). السابق على ما يرام - مع قطاعات 512 بايت وهذا العمل يصل إلى 2 تيرابايت. هذا الأخير لديه مشكلتين مختلفتين. بادئ ذي بدء ، يمكن ملء هذه الحقول C / H / S فقط عندما يتم معرفة عدد الرؤوس وعدد القطاعات لكل مسار. ثانيا ، حتى إذا كنا نعرف ما ينبغي أن تكون عليه هذه الأرقام ، فإن البتات الـ 24 المتاحة لا تكفي. يستخدم DOS C / H / S فقط ، يستخدم Windows كلاهما ، لا يستخدم Linux C / H / S.

إذا كان ذلك ممكنًا ، فستحصل fdisk على هندسة القرص تلقائيًا. هذا ليس بالضرورة هندسة القرص الفعلي (في الواقع ، لا تحتوي الأقراص الحديثة بالفعل على أي شيء مثل الهندسة الفيزيائية ، وبالتأكيد ليس شيئاً يمكن وصفه في نموذج الأسطر / الرؤوس / المقاطعات التبسيطية) ، لكن هندسة القرص التي يستخدمها MS-DOS لجدول التقسيم.

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

عند طباعة جدول تقسيم ، يتم تنفيذ تدقيق تناسق على إدخالات جدول الأقسام. يتحقق هذا التحقق من أن نقطة البداية والنهاية الفعلية والمنطقية متطابقة ، وأن القسم يبدأ وينتهي على حدود الأسطوانة (باستثناء القسم الأول).

إنشاء بعض إصدارات MS-DOS قسم الأول الذي لا يبدأ على حدود الاسطوانة ولكن على القطاع 2 من الاسطوانة الأولى. لا يمكن أن تبدأ الأقسام التي تبدأ في الأسطوانة 1 على حدود الأسطوانة ، ولكن هذا من غير المحتمل أن يسبب صعوبة ما لم يكن لديك OS / 2 على جهازك.

يتم تنفيذ المزامنة () و BLKRRPART ioctl () (إعادة تقسيم الجدول من القرص) قبل إنهاء عند تحديث جدول الأقسام. منذ فترة طويلة كان من الضروري أن إعادة التشغيل بعد استخدام FDISK. لا أعتقد أن هذه هي الحالة بعد الآن - في الواقع ، قد يؤدي إعادة التشغيل بسرعة كبيرة إلى فقدان البيانات غير المكتوبة. لاحظ أن كلا من kernel والأجهزة القرص قد المخزن المؤقت للبيانات.

دوس 6.x تحذير

يبحث الأمر 6.M DOS DOS بعض المعلومات في القطاع الأول من ناحية البيانات من القسم ، ويعامل هذه المعلومات أكثر موثوقية من المعلومات الموجودة في جدول الأقسام. DOS FORMAT يتوقع DOS FDISK لمسح أول 512 بايت من منطقة البيانات من قسم عند حدوث تغيير حجم. سيشاهد DOS FORMAT هذه المعلومات الإضافية حتى إذا تم إعطاء علامة / U - نعتبر هذا خطأ في DOS FORMAT و DOS FDISK.

الخلاصة هي أنه إذا كنت تستخدم cfdisk أو fdisk لتغيير حجم إدخال جدول قسم DOS ، فيجب عليك أيضًا استخدام dd إلى صفر أول 512 بايت من هذا القسم قبل استخدام DOS FORMAT لتنسيق القسم. على سبيل المثال ، إذا كنت تستخدم cfdisk لإنشاء إدخال جدول قسم DOS لـ / dev / hda1 ، فحينئذٍ (بعد الخروج من fdisk أو cfdisk وإعادة تشغيل Linux بحيث تكون معلومات جدول القسم صالحة) ، يمكنك استخدام الأمر "dd if = / dev / zero of = / dev / hda1 bs = 512 count = 1 "إلى صفر أول 512 بايت من القسم.

تكون دقيقة للغاية إذا كنت تستخدم الأمر dd ، لأن خطأ مطبعي صغير يمكن أن تجعل جميع البيانات الموجودة على القرص الخاص بك عديمة الفائدة.

للحصول على أفضل النتائج ، يجب دائمًا استخدام برنامج جدول قسم خاص بنظام التشغيل. على سبيل المثال ، يجب أن تقوم بإجراء أقسام DOS باستخدام برنامج DOS FDISK وأقسام Linux باستخدام برنامج Linux fdisk أو Linux cfdisk.

خيارات

-b القطاعات

حدد حجم القطاع من القرص. القيم الصالحة هي 512 ، 1024 ، أو 2048. (تعرف الحبوب الأخيرة حجم القطاع. استخدم هذا فقط على الحواف القديمة أو لتجاوز أفكار النواة).

اسطوانات -C

حدد عدد اسطوانات القرص. ليس لدي أي فكرة عن سبب رغبة أي شخص في القيام بذلك.

الرؤوس

حدد عدد رؤوس القرص. (ليس الرقم الفعلي ، بالطبع ، ولكن الرقم المستخدم لجداول التقسيم.) القيم المعقولة هي 255 و 16.

الطوائف

حدد عدد القطاعات لكل مسار القرص. (ليس الرقم الفعلي ، بالطبع ، ولكن الرقم المستخدم لجداول التقسيم.) قيمة معقولة هي 63.

-l

قائمة جداول التقسيم للأجهزة المحددة ثم الخروج. إذا لم يتم إعطاء أي أجهزة ، فسيتم استخدام تلك المذكورة في / proc / partitions (إن وجدت).

-u

عند إدراج جداول التقسيم ، قم بإعطاء أحجام في القطاعات بدلاً من الاسطوانات.

التقسيم

تتم طباعة حجم القسم (في كتل) على الإخراج القياسي.

-الخامس

رقم إصدار الطباعة من برنامج fdisk والخروج.