איך לבדוק אזורים רעים או גושים רעים בכונן קשיח ב-Linux

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

ככל שאזורים רעים מתקיימים במשך זמן, הם יכולים להשפיע באופן לא רצוי או הורס על קיבולת הדיסק הקשיח או על זיכרון הפלאש, ואף לגרום לכשלון חומרה אפשרי.

חשוב גם לציין כי התקיות של גושים רעים צריכות להתריע לך להתחיל לחשוב על קבלת דיסק קשיח חדש או פשוט לסמן את הגושים הרעים כבלתי שימושיים.

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

אמנם, לעיל יש באמצעות דרכים:

בדיקת אזורים רעים בכונני Linux באמצעות הכלי badblocks

A badblocks program enables users to scan a device for bad sectors or blocks. The device can be a hard disk or an external disk drive, represented by a file such as /dev/sdc.

בתחילה, השתמש בפקודת fdisk עם הרשאות מנהל מערכת כדי להציג מידע על כל כונני הדיסק או זיכרון הפלאש ועל המחיצות שלהם:

$ sudo fdisk -l
List Linux Filesystem Partitions

לאחר מכן סרוק את דיסק הלינוקס שלך כדי לבדוק אם יש אזורים רעים/חסרים על ידי הקלדת:

$ sudo badblocks -v /dev/sda10 > badsectors.txt
Scan Hard Disk Bad Sectors in Linux

בפקודה שמופיעה לעיל, badblocks סורק את המכשיר /dev/sda10 (זכור לציין את המכשיר הממשי שלך) עם ה- -v שמאפשר לו להציג פרטי פעולת הסריקה. בנוסף, תוצאות הפעולה מאוחסנות בקובץ badsectors.txt באמצעות הפנית פלט.

במקרה שבו אתה גלה סקטורים רעים בכונן הדיסק שלך, נתכוון אותו ונסמן למערכת הפעולה שלא לכתוב לסקטורים המדווחים כך:

תצטרך להשתמש ב- e2fsck (עבור מערכות קבצים ext2/ext3/ext4) או בפקודת fsck עם קובץ ה- badsectors.txt וקובץ המכשיר כפי שמוצג בפקודה למטה.

האפשרות -l מודיעה לפקודה להוסיף את מספרי הבלוקים המפורטים בקובץ הנקבע על ידי שם קובץ (badsectors.txt) לרשימת הבלוקים הרעים.

------------ Specifically for ext2/ext3/ext4 file-systems ------------ 
$ sudo e2fsck -l badsectors.txt /dev/sda10

OR

------------ For other file-systems ------------ 
$ sudo fsck -l badsectors.txt /dev/sda10

סריקת סקטורים רעים בדיסק באמצעות Smartmontools

שיטה זו היא אמינה ויעילה יותר עבור דיסקים מודרניים (דיסקים קשיחים ATA/SATA ו- SCSI/SAS ודיסקים קשיחים עם מערכת הפעלה קבועה) המשווקים עם מערכת S.M.A.R.T (Self-Monitoring, Analysis and Reporting Technology) שעוזרת לזהות, לדווח ואף לרשום את מצב הבריאות שלהם, כך שתוכל לזהות כשלי חומרה קרובים.

ניתן להתקין את smartmontools באמצעות הרצת הפקודה למטה:

------------ On Debian/Ubuntu based systems ------------ 
$ sudo apt-get install smartmontools

------------ On RHEL/CentOS based systems ------------ 
$ sudo yum install smartmontools

כאשר ההתקנה הושלמה, ניתן להשתמש ב- smartctl המבצע שליטה על מערכת ה- S.M.A.R.T המוטמעת בדיסק. ניתן לעיין בדף העזרה או בדף המסמך שלו כדלהלן:

$ man smartctl
$ smartctl -h

כעת בצע את הפקודה smartctrl וציין את המכשיר הספציפי שלך כארגומנט כפי שבפקודה הבאה, הדגל -H או --health כלול כדי להציג את תוצאת מבחן השיקום העצמי הכללי של SMART.

$ sudo smartctl -H /dev/sda10
Check Linux Hard Disk Health

התוצאה לעיל מציינת כי הדיסק הקשיח שלך הוא בריא ואולי לא יחווה כשלי חומרה בקרוב.

לקבלת מבט על מידע הדיסק, השתמש באפשרות -a או --all כדי להדפיס את כל מידע SMART הנוגע לדיסק ואת -x או --xall שמציג את כל המידע על SMART ומידע לא-SMART אודות דיסק.

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

Source:
https://www.tecmint.com/check-linux-hard-disk-bad-sectors-bad-blocks/