اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

آموزش پیدا کردن بدسکتور (Bad Sector / Bad Block ها) روی هارد دیسک در لینوکس

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    آموزش پیدا کردن بدسکتور (Bad Sector / Bad Block ها) روی هارد دیسک در لینوکس

    ابتدا با تعریف یک بد سکتور یا بد بلاک شروع میکنیم. این block یا bad sector در حقیقت یک قسمتی روی دیسک درایو یا فلش مموری میباشد که نمیتواند خوانده شود یا روی آن چیزی نوشته شود که میتواند در نتیجه یک تغییر فیزیکال روی سطح دیسک و یا مشکل در ترانزیستورهای فلش مموری پیش بیاید.


    توصیه میشود این مقاله را هم مطالعه کنید :

    آموزش Defrag کردن دیسک (پارتیشن ها و دایرکتوری ها) در لینوکس

    نحوه بازیابی اطلاعات حذف شده در لینوکس

    نحوه استفاده از دستور fsck برای رفع خطاهای فایل سیستم در لینوکس


    از آنجایی که این سکتورها به انباشته شدن روی هم ادامه میدهند میتوانند ناخواسته و به صورت کاملا مخرب روی دیسک درایو یا حافظه فلش مموری شما تاثیر بگذارند، و یا حتی منجر به نقص سخت افزاری بشوند.

    همچنین باید دقت کنید که همیشه از وجود بلاک های بد باید سریعا مطلع شوید تا به خرید یک دیسک درایو جدید فکر کنید یا به آسانی بلاک های بد را با عنوان unusable (غیر قابل استفاده) مارک کنید.

    بنابراین در این مقاله ما مراحل ضروری که شما را به تشخیص وجود یا عدم وجود سکتورهای بد روی هارد درایو یا فلش مموری سیستم لینوکس شما قادر میسازد با استفاده از ابزار Disk Scanning مورد بحث قرار میدهیم.

    موارد زیر روش های مورد استفاده میباشد :


    چک کردن بدسکتور در دیسک های لینوکسی با استفاده از ابزار badblocks

    برنامه badblocks به کاربران کمک میکند تا یک دیوایس را به منظور بررسی هر گونه سکتور یا بلاک بد اسکن کند. این دیوایس میتواند یک هارد دیسک یا یک دیسک درایو اکسترنال باشد که از طریق یک فایل مانند /dev/sdc/ نمایش داده میشود.

    در ابتدا از دستور fdisk با پرمیژن یک superuser را برای نمایش اطلاعات درباره تمامی دیسک درایوها یا فلش مموری تان بعلاوه پارتیشن های آنها استفاده میکنیم.
    کد PHP:
    sudo fdisk -
    نحوه پیدا کردن بدسکتور در لینوکس





    سپس دیسک درایو لینوکسی تان را برای بررسی بد سکتور یا بلاک های بد و با تایپ کردن دستور زیر scan کنید.
    کد PHP:
    sudo badblocks -/dev/sda10 badsectors.txt 
    پیدا کردن بدسکتور هارد در لینوکس





    در دستور بالا برنامه badblocks در حال اسکن دیوایس /dev/sda10 میباشد (فراموش نکنید که دیوایس واقعی تان را مشخص کنید) با آپش -v میتوان جزئیات عملیات را نمایش داد. بعلاوه نتایج عملیات در فایل badsectors.txt که خودمان خروجی را به سمت آن redirect کردید ذخیره میشوند.

    در مواردی که شما هرگونه بدسکتوری روی دیسک تان کشف کردید دیسک را unmount کنید و به فایل سیستم اجازه رایت کردن روی سکتورهای گزارش داده شده را ندهید همانطور که در زیر توضیح داده شده است.

    شما نیاز دارید که از دستور e2fsck (برای فایل سیستم ها ext2/ext3/ext4) یا دستور fsck به همراه فایل badsectors.txt و فایل device همانطور که در دستور زیر نمایش داده شده استفاده کنید.

    آپشن -l به کامند میگوید که تعداد بلاکی که در فایل (badsectors.txt) مشخص و لیست شده اند به لیست بلاک های بد اضافه کند.
    کد PHP:
    ------------ 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, SCASI, SAS و همچنین درایوهای solid-state یا همان SSD) موثر و قابل اعتمادتر است ازآنجایی که این دیسک ها با یک سیستم S.M.A.R.T (تکنولوژی Self-Monitoring, Analysis و Reporting) تجهیز شده اند که به تشخیص، گزارش و log وضعیت سلامتشان کمک میکند در نتیجه شما میتوانید هر نقص سخت افزاری در حال وقوع را مطلع شوید. شما میتوانید با استفاده از دستورات زیر smartmontools را نصب کنید.
    کد PHP:
    ------------ 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 این دستور و یا صفحه help ان ّکمک بگیرید، همانطور که در زیر مشاهده میکنید.
    کد PHP:
    man smartctl
    smartctl -
    اکنون دستور smartctl را اجرا کنید و نام دیوایس مورد نظرتان را به عنوان یک argument به همراه دستور مشخص کنید. آپشن -h یا --health که در دستور مشاهده میکنید برای نمایش نتیجه تست self-assessment درSMART برای تشخیص سلامت کلی دیوایس مورد استفاده قرار میگیرد.
    کد PHP:
    sudo smartctl -/dev/sda10 
    تعمیر بدسکتور هارد در لینوکس





    نتیجه بالا مشخص میکند که هارد دیسک تان سالم است و شما به این زودی ها مشکلی در آن تجربه نخواهید کرد.

    برای یک مشاهده کلی از اطلاعات دیسک از آپشن -a یا --all استفاده کنید تا تمام اطلاعات S.M.A.R.T مرتبط با یک دیسک نمایش داده شود و آپشن -x یا --xall که تمامی اطلاعات S.M.A.R.T و حتی اطلاعات نامربوط به S.M.A.R.T درباره دیسک را نمایش میدهد.

    در این پست ما یک موضوع خیلی مهم را درباره تشخیص سلامت دیسک درایو مورد بحث قرار دادیم امیدواریم برای شما مفید واقع شود همچنین اگر شما هرگونه تجربیاتی در باره استفاده از این دستور دارید باعث خوشحالیست که آنرا با ما درمیان بگذارید.
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 02-07-2021, 03:16 PM.

درباره انجمن منطقه لینوکسی ها

انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

شبکه های اجتماعی
در حال انجام ...
X