كيفية استخدام الأمر fsck على نظام Linux
نشرت: 2022-01-29
توجد جميع بياناتنا المهمة في نظام ملفات من نوع أو آخر ، ولا بد أن تحدث مشكلات في نظام الملفات. في نظام Linux ، يمكننا استخدام الأمر fsck
للعثور على أخطاء نظام الملفات وإصلاحها.
أنظمة الملفات هي برامج
تعد أنظمة الملفات أحد أهم مكونات الكمبيوتر. بدون نظام الملفات ، لا يمكن للكمبيوتر تخزين أي بيانات على محرك الأقراص الثابتة ، سواء كان محرك الأقراص هذا عبارة عن طبق ميكانيكي دوار أو محرك أقراص الحالة الصلبة. في الواقع ، يجب إنشاء نظام ملفات قبل تثبيت نظام التشغيل على القرص الصلب. يجب أن يكون هناك شيء ما ليتم تخزين ملفات نظام التشغيل فيه. لذلك يتم إنشاء نظام ملفات أثناء عملية التثبيت.
يتم إنشاء أنظمة الملفات عن طريق البرامج ، والكتابة إليها بواسطة البرامج ، والقراءة منها بواسطة البرنامج. كما تعلم ، كل البرامج المعقدة بها أخطاء. تعتبر بياناتنا مهمة للغاية بالنسبة لنا ، لذلك نحن نؤمن كثيرًا بأنظمة الملفات والبرامج التي تنشئها وتستخدمها. إذا حدث خطأ ما ، فقد نفقد الوصول إلى أجزاء من نظام الملفات أو حتى قسم بأكمله.
تعد أنظمة ملفات دفتر اليومية الحديثة أفضل في التعامل مع المشكلات التي يمكن أن تنتج عن فقدان مفاجئ للطاقة أو تعطل النظام. إنهم أقوياء ، لكنهم ليسوا منيعين. إذا تم خلط الجداول الداخلية الخاصة بهم ، فيمكنهم فقد المسار حيث يوجد كل ملف على محرك الأقراص ، وحجمه ، والاسم الذي يحمله ، وأذونات الملفات التي تم تعيينها عليها.
يتيح لك الأمر fsck
التحقق من سلامة أنظمة الملفات لديك. إذا وجدت أي مشاكل ، فيمكنها عادةً إصلاحها لك أيضًا.
قم بإجراء اختبارات الاختبار المبدئي
يتطلب استخدام fsck
امتيازات sudo. يجب التعامل مع أي أمر يمكنه إجراء تغييرات على نظام الملفات بحذر وقصره على أولئك الذين يعرفون ما يفعلونه.
لا يقفز الطيارون إلى الطائرة ، ويبدؤونها ، ويطيرون إلى المنطقة الزرقاء الباهتة هناك. يقومون بفحوصات مسبقة. هناك الكثير على المحك للقيام بخلاف ذلك. هذه عادة جيدة لتطويرها. قبل استخدام fsck
، تحتاج إلى التأكد من أنك ستستخدمه على محرك الأقراص الصحيح. لذا قبل القيام بأي شيء مع fsck
، سنقوم ببعض الاستطلاع.
سنبدأ بـ fdisk
ونقوم بتوجيهه إلى less
. نحن لا نطلب معلومات عن قسم معين. باستخدام الخيار -l
(list) ، يسرد fdisk
جداول الأقسام على جميع الأجهزة التي يجدها في ملف "/ proc / partitions" ، إن وجد.
sudo fdisk -l | أقل
يمكننا رؤية إدخالات /dev/sda
و /dev/sdb
. يمكنك التمرير خلال الملف لرؤية أي إدخالات أخرى قد تكون موجودة على جهاز الكمبيوتر الخاص بك.
يتم سرد الأقسام الموجودة على /dev/sda
كـ /dev/sda1
و /dev/sda2
و /dev/sda3
. إذن لدينا ثلاثة أقسام في محرك الأقراص الأول. يمكننا أن نرى المزيد من المعلومات باستخدام الأمر parted
. سنستخدم خيار 'print'
لعرض جداول الأقسام في نافذة المحطة الطرفية.
sudo مفترق / dev / sda "طباعة"
نحصل على بعض المعلومات الإضافية هذه المرة ، بما في ذلك نوع نظام الملفات في كل قسم.
الموديل: ATA VBOX HARDDISK (scsi) القرص / dev / sda: 34.4 جيجابايت حجم القطاع (منطقي / فيزيائي): 512B / 512B جدول التقسيم: gpt علامات القرص: رقم بداية نهاية الحجم ملف نظام الأعلام 1 1049 كيلو بايت 2097 كيلو بايت 1049 كيلو بايت bios_grub 2 2097 كيلو بايت 540 ميجا بايت 538 ميجا بايت fat32 EFI System Partition boot، esp 3540 ميجابايت 34.4 جيجابايت 33.8 جيجابايت ext4.0
هناك ثلاثة محركات في هذا الكمبيوتر التجريبي. هذه هي نتائج محركي الأقراص الآخرين /dev/sdb
و /dev/sdc
. لاحظ أن أنظمة الملفات هذه لا تحتوي على حقل "الاسم".
sudo مفترق / dev / sdb "طباعة"
الموديل: ATA VBOX HARDDISK (scsi) القرص / dev / sdb: 21.5 جيجابايت حجم القطاع (منطقي / فيزيائي): 512B / 512B جدول التقسيم: msdos علامات القرص: عدد بداية نهاية الحجم نوع ملف النظام إشارات 1 1049 كيلو بايت 21.5 جيجا بايت 21.5 جيجا بايت أساسي ext4
sudo مفترق / dev / sdc "طباعة"
الموديل: ATA VBOX HARDDISK (scsi) القرص / ديف / sdc: 21.5 جيجابايت حجم القطاع (منطقي / فيزيائي): 512B / 512B جدول التقسيم: msdos علامات القرص: عدد بداية نهاية الحجم نوع ملف النظام إشارات 1 1049 كيلو بايت 21.5 جيجا بايت 21.5 جيجا بايت أساسي ext3
تصادف أن يكون محركي الأقراص الثاني والثالث من نفس الحجم ولكل منهما قسم واحد. لكن نظام الملفات على محرك الأقراص الثاني هو ext4
، ونظام الملفات على محرك الأقراص الثالث هو نظام ext3
الأقدم.
نقوم بتمرير معرف القسم إلى fsck
، ويقوم بفحص نظام الملفات على هذا القسم. لكن لا يمكننا تشغيل fsck
على نظام ملفات مثبت. نحن بحاجة إلى إلغاء تحميل محرك الأقراص. للقيام بذلك ، نحتاج إلى معرفة نقطة التحميل التي تم تثبيت القسم - وبالتالي نظام الملفات - عليها.
يمكننا معرفة ذلك بسهولة باستخدام الأمر df
.
مدافع / ديف / sdb1
مدافع / ديف / sdc1
باستخدام الأمر fsck
لدينا كل المعلومات التي نحتاجها. أول شيء سنفعله هو إلغاء تحميل نظام الملفات الذي سنقوم بفحصه. سنعمل على نظام الملفات على القسم الأول - والوحيد - من /dev/sdb
، وهو /dev/sdb1
. لقد رأينا سابقًا أن هذا نظام ملفات ext4
، ويتم تثبيته في "/ run / mount / dave / sata2."
سنستخدم الأمر umount
. لاحظ عدم وجود "n" في "umount".
sudo umount / تشغيل / جبل / ديف / sata2
مع وجود عدد لا umount
، لا توجد أخبار جيدة. إذا عدت بصمت إلى موجه الأوامر ، فنحن على ما يرام.
sudo fsck / dev / sdb1
تم الإبلاغ عن نظام الملفات هذا على أنه نظيف. هذا يعني أن نظام الملفات يبلغ عن عدم وجود أخطاء أو مشكلات به. لا يتم إجراء فحص أعمق لنظام الملفات تلقائيًا. يمكننا أيضًا إلقاء نظرة على كود الإرجاع الذي أعاده fsck
إلى الصَدَفة.
صدى $؟
تشير القيمة المرجعة للصفر إلى عدم وجود أخطاء. رموز الإرجاع المحتملة هي:
- 0 : لا أخطاء
- 1 : تصحيح أخطاء نظام الملفات
- 2 : يجب إعادة تشغيل النظام
- 4 : أخطاء نظام الملفات التي تركت دون تصحيح
- 8 : خطأ تشغيلي
- 16 : خطأ في الاستخدام أو بناء الجملة
- 32 : تم إلغاء الفحص بناء على طلب المستخدم
- 128 : خطأ في المكتبة المشتركة
على الرغم من الإبلاغ عن نظام الملفات بأنه نظيف ، يمكننا فرض فحص نظام الملفات باستخدام الخيار -f
(فرض).

sudo fsck / dev / sdb1 -f
هذه المرة ، يستغرق الفحص وقتًا أطول حتى يكتمل ولكنه يقوم بإجراء اختبار أكثر شمولاً لنظام الملفات. كان نظام الملفات لدينا نظيفًا بالفعل ، ولم يتم الإبلاغ عن أي أخطاء. إذا تم العثور على مشكلات أثناء إجراء الاختبارات ، فسيُطلب منك السماح لـ fsck
بإصلاح المشكلة أو تجاهل الخطأ.
عند الانتهاء من الاختبار ، تحتاج إلى إعادة تحميل نظام الملفات. أسهل طريقة للقيام بذلك هي استخدام خيار mount
مع -a
(الكل). يتحقق هذا من "/ etc / fstab" بحثًا عن قائمة أنظمة الملفات ، ويتأكد من تركيبها جميعًا تمامًا كما لو كانت تتبع تمهيدًا عاديًا.
sudo mount -a
لاحظ أننا لسنا بحاجة إلى إخبار fsck
بنوع نظام الملفات الموجود على القسم ؛ تحدد الأداة ذلك عن طريق فحص نظام الملفات. هذا يعني أنه يمكننا فرض فحص نظام الملفات على /dev/sdc1
، نظام الملفات ext3
على جهاز الكمبيوتر التجريبي الخاص بنا ، باستخدام نفس الأمر بالضبط الذي استخدمناه في /dev/sdb1
، وهو قسم ext4
.
sudo fsck / dev / sdc1 -f
قد لا ترغب في الغوص مباشرة في إصلاح نظام الملفات. قد تفضل النظر قبل القفز. يمكنك أن تطلب من fsck
عدم عرض إصلاح أي شيء والإبلاغ عن المشكلات إلى نافذة الجهاز. يقوم الخيار -N
(التشغيل الجاف) بما يلي:
sudo fsck -N / dev / sdb1
عكس ذلك هو إخبار fsck
بعدم الإزعاج بالمطالبة إذا عثرت على أي أخطاء ، والمضي قدمًا في إصلاحها. للقيام بذلك ، استخدم الخيار -y
(بدون مطالبات).
sudo fsck -y / dev / sdb1
باستخدام fsck على قسم الجذر
لا يمكنك استخدام fsck
على قسم مُحمل ، ولكن لتشغيل جهاز الكمبيوتر الخاص بك ، يجب تثبيت قسم الجذر. فكيف يمكننا تشغيل fsck
على قسم الجذر؟ الإجابة هي مقاطعة عملية التمهيد وتشغيل fsck
في وضع الاسترداد.
أثناء تمهيد الكمبيوتر ، اضغط مع الاستمرار على مفتاح "Shift". إذا قمت بضبط الوقت بشكل صحيح ، فلن تقوم بالتمهيد إلى Linux. ستتوقف عملية التمهيد عند قائمة بالأبيض والأسود. كانت آلة الاختبار المستخدمة لهذه المقالة تعمل بنظام Ubuntu ولكن التوزيعات الأخرى لها نفس نوع القائمة ، على الرغم من أنها قد تختلف في المظهر. حيث تظهر عبارة "Ubuntu" في لقطات الشاشة ، سيكون لها اسم التوزيع الخاص بك.
حرك شريط التظليل باستخدام مفتاحي "Up Arrow" و "Down Arrow" بحيث يتم تحديد عنصر القائمة "Advanced options لـ Ubuntu". اضغط على "أدخل" للانتقال إلى الشاشة التالية.
حدد الخيار الذي ينتهي بـ "(وضع الاسترداد)". في مثالنا ، إنه "Ubuntu ، مع Linux 5.11.0-20-generic (وضع الاسترداد)." اضغط على مفتاح "Enter".
سترى قائمة الاسترداد. حدد "fsck check all file systems" واضغط على مفتاح "Tab" لنقل التمييز إلى الزر "موافق". اضغط دخول."
سترى إشعارًا يفيد بأنه سيتم تثبيت قسم الجذر مع أي أقسام أخرى محددة في ملف "/ etc / fstab".
اضغط على مفتاح "Tab" لنقل التظليل إلى الزر "نعم" واضغط على "إدخال".
سترى fsck
تعمل في الوضع التفاعلي. إذا كانت هناك مشكلات ، فستتم مطالبتك بالسماح لـ fsck
بإصلاحها أو تجاهلها. عندما يتم فحص أنظمة الملفات ، سترى قائمة الاسترداد مرة أخرى.
حدد خيار "استئناف" ، واضغط على مفتاح "Tab" لنقل التمييز إلى الزر "موافق" ، واضغط على "إدخال". ستستأنف عملية التمهيد ، وستقوم بالتمهيد إلى Linux.
يمكن أن يؤثر التمهيد في وضع الاسترداد على بعض برامج التشغيل ، لذلك من الجيد إعادة التشغيل مرة أخرى بمجرد بدء التشغيل في Linux. هذا يضمن أن جهاز الكمبيوتر الخاص بك يعمل بأسلوبه القياسي.
عندما تسوء الأمور
شبكات الأمان موجودة لسبب ما. تعرف على الأمر fsck
. إذا دعت الحاجة إلى استخدامه في الغضب يومًا ما ، فستكون سعيدًا لأنك تعرفت على نفسك مسبقًا.
أوامر لينكس | ||
الملفات | tar · pv · cat · tac · chmod · grep · diff _ _ _ _ _ _ _ _ _ _ _ · ذيل · ستات · ls · fstab · صدى · أقل · chgrp · chown · rev · look · strings · type · rename · zip · unzip · mount · umount · تثبيت · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · تحويل · rclone · shred · srm | |
العمليات | الاسم المستعار · شاشة · أعلى · لطيف · رينييس · تقدم · ستريس · systemd · tmux · chsh · تاريخ · في · دفعة · مجانية · أي · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · timeout · wall · نعم · قتل · نوم · sudo · su · time · groupadd · usermod · groups · lshw · shutdown · reboot · halt · poweroff · passwd · lscpu · crontab · date · bg · fg | |
الشبكات | netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · حفر · إصبع · nmap · ftp · curl · wget · who · who · w · iptables · ssh-keygen · ufw |
ذات صلة: أفضل أجهزة كمبيوتر Linux المحمولة للمطورين والمتحمسين