מערכות קבצים ב־Linux אחראיות על איך המידע מאוחסן ומשוחזר. באופן או באופן אחר, עם הזמן, המערכת עשויה להתקלקל וחלקים מסוימים שלה עשויים לא להיות נגישים. אם מערכת הקבצים שלך מתפתחת כזו אי־התאמה, מומלץ לאמת את תקינותה.
ניתן לבצע זאת באמצעות יישום מערכת השימוש הנקרא fsck (בדיקת תאימות מערכת קבצים), שבודק את מערכת הקבצים הראשית אוטומטית במהלך האתחול או נפעל באופן ידני.
במאמר זה, נבחן את הפקודת fsck ואת שימושה כדי לעזור לך לתקן שגיאות בדיסק Linux.
טבלת תוכן
מתי להשתמש בפקודת fsck ב-Linux
קיימות תרחישים שונים כאשר תרצה להריץ את fsck. הנה כמה דוגמאות:המערכת נכשלת בהפעלה.
- קבצים במערכת נהיים פגומים (לעתים תראה שגיאת קלט/פלט).
- הדיסק המצורף (כולל דיסקים ניידים/כרטיסי SD) אינו עובד כפי שצפוי.
אפשרויות פקודת fsck
הפקודה fsck צריכה להיות מורצת עם הרשאות מנהל מערכת או root. ניתן להשתמש בה עם ארגומנטים שונים. השימוש בהם תלוי במקרה הספציפי שלך. להלן כמה מהאפשרויות החשובות יותר:
-A
– משמש לבדיקת כל המערכות הקבצים. הרשימה לוקחת מ-/etc/fstab
.-C
– הצגת סרגל התקדמות.-l
– נעול את המכשיר כדי לוודא שאף תוכנית אחרת לא תנסה להשתמש במחיצה במהלך הבדיקה.-M
– אל תבדוק מערכות קבצים שמותקנות.-N
– הצג רק מה שיעשה – לא נעשים שינויים בפועל.-P
– אם ברצונך לבדוק מערכות קבצים במקביל, כולל שורש.-R
– אל תבדוק את מערכת הקבצים הראשית. זה שימושי רק עם '-A
'.-r
– מספק סטטיסטיקות עבור כל מכשיר שמתבצעת בו בדיקה.-T
– לא מציג את הכותרת.-t
– מפרט באופן בלעדי את סוגי מערכות הקבצים של Linux שיש לבדוק. סוגים יכולים להיות רשימות מופרדות בפסיקים.-V
– מספק תיאור של מה שנעשה.
הרץ את פקודת fsck כדי לתקן שגיאות במערכת הקבצים של Linux
כדי להריץ את fsck, עליך לוודא שהמחיצה שברצונך לבדוק אינה מחוברת. לצורך המאמר הזה, אני אשתמש במכונה השנייה שלי /dev/sdb
שמחוברת במיקום /mnt
.
כך נראה מה קורה אם אני מנסה להריץ fsck כאשר המחיצה מחוברת.
# fsck /dev/sdb

כדי למנוע זאת יש לנתק את המחיצה באמצעות.
# umount /dev/sdb
אז fsck יכול להתבצע בצורה בטוחה.
# fsck /dev/sdb

הבנת קודי יציאה של fsck
לאחר הרצת fsck, הוא יחזיר קוד יציאה. את הקודים האלו ניתן לראות במדריך של fsck על ידי הרצת:
# man fsck 0 No errors 1 Filesystem errors corrected 2 System should be rebooted 4 Filesystem errors were left uncorrected 8 Operational error 16 Usage or syntax error 32 Checking canceled by user request 128 Shared-library error
תיקון מערכת קובץ Linux של fsck
לעיתים קרובות ניתן למצוא יותר משגיאה אחת במערכת הקבצים. במקרים כאלה, ייתכן שתרצה ש- fsck ינסה באופן אוטומטי לתקן את השגיאות. זה ניתן לעשות עם:
# fsck -y /dev/sdb
הדגל -y
, שמאשר אוטומטית "כן" לכל הצעות מ fsck לתיקון שגיאה.
באופן דומה, ניתן להריץ את אותו דבר על כל המערכות הקבצים (ללא root):
$ fsck -AR -y
איך להריץ fsck על מחיצת Root של Linux
במקרים מסוימים, עשוי להיות עליך להריץ fsck על מחיצת ה- root של המערכת שלך. מאחר שאין אפשרות להריץ fsck כאשר המחיצה ממונטת, ניתן לנסות אחת מאפשרויות אלו:
- לכפות fsck בעת אתחול המערכת
- להריץ fsck במצב הצלה
נבדוק שתי המצבים.
לכפות fsck בעת אתחול המערכת
זה די פשוט להשלים, הדבר היחיד שעליך לעשות הוא ליצור קובץ בשם forcefsck במקטע השורש של המערכת שלך. השתמש בפקודה הבאה:
# touch /forcefsck
אז תוכל פשוט לכפות או לתזמן את האיתחול של המערכת שלך. במהלך האיתחול הבא, fsck יבוצע. אם התקופת העצירה חשובה, מומלץ לתכנן זאת בזהירות, מאחר ואם ישנם הרבה inodes בשימוש במערכת שלך, fsck עשוי לקחת זמן נוסף.
לאחר שהמערכת שלך מאתחלת, בדוק אם הקובץ עדיין קיים:
# ls /forcefsck
אם כן, עשוי להיות שתרצה להסיר אותו כדי למנוע fsck בכל איתחול של המערכת.
הרץ fsck במצב הצלה
הרצת fsck במצב הצלה מחייבת כמה שלבים נוספים. ראשית, הכינו את המערכת שלכם לאיתחול מחדש. עצרו כל שירות חיוני כמו MySQL/MariaDB ואז הקלידו:
# reboot
במהלך האיתחול, החזיקו את מקש ה-shift כך שתופיע תפריט ה-grub. בחרו "אפשרויות מתקדמות".

אז בחרו "מצב שחזור".

בתפריט הבא בחרו "fsck".

תתבקשו אם ברצונכם לאפשר שישוב תקיית ה-/ שלכם. בחרו "כן".

תראו משהו דומה לזה.

אתה למדת כיצד להשתמש ב־fsck ולהפעיל בדיקות עקיפה על מערכות קבצים שונות ב־Linux. אם יש לך שאלות אודות fsck, אנא אל תהסס לשלוח אותם באזור התגובות למטה.

מסקנה
אתה יכול להמשיך ולהפעיל רגיל על ידי בחירת “המשך”.
Source:
https://www.tecmint.com/fsck-repair-file-system-errors-in-linux/