Scanning disk in linux

Проверка диска на битые секторы в Linux

Одно из самых важных устройств компьютера — это жесткий диск, именно на нём хранится операционная система и вся ваша информация. Единица хранения информации на жестком диске — сектор или блок. Это одна ячейка в которую записывается определённое количество информации, обычно это 512 или 1024 байт.

Битые сектора, это повреждённые ячейки, которые больше не работают по каким либо причинам. Но файловая система всё ещё может пытаться записать в них данные. Прочитать данные из таких секторов очень сложно, поэтому вы можете их потерять. Новые диски SSD уже не подвержены этой проблеме, потому что там существует специальный контроллер, следящий за работоспособностью ячеек и перемещающий данные из нерабочих в рабочие. Однако традиционные жесткие диски используются всё ещё очень часто. В этой статье мы рассмотрим как проверить диск на битые секторы Linux.

Проверка диска на битые секторы Linux

Для поиска битых секторов можно использовать утилиту badblocks. Если вам надо проверить корневой или домашний раздел диска, то лучше загрузится в LiveCD, чтобы файловая система не была смонтирована. Все остальные разделы можно сканировать в вашей установленной системе. Вам может понадобиться посмотреть какие разделы есть на диске. Для этого можно воспользоваться командой fdisk:

Или если вы предпочитаете использовать графический интерфейс, это можно сделать с помощью утилиты Gparted. Просто выберите нужный диск в выпадающем списке:

В этом примере я хочу проверить раздел /dev/sda2 с файловой системой XFS. Как я уже говорил, для этого используется команда badblocks. Синтаксис у неё довольно простой:

$ sudo badblocks опции /dev/имя_раздела_диска

Давайте рассмотрим опции программы, которые вам могут понадобится:

  • -e — позволяет указать количество битых блоков, после достижения которого дальше продолжать тест не надо;
  • -f — по умолчанию утилита пропускает тест с помощью чтения/записи если файловая система смонтирована чтобы её не повредить, эта опция позволяет всё таки выполнять эти тесты даже для смонтированных систем;
  • -i — позволяет передать список ранее найденных битых секторов, чтобы не проверять их снова;
  • -n — использовать безопасный тест чтения и записи, во время этого теста данные не стираются;
  • -o — записать обнаруженные битые блоки в указанный файл;
  • -p — количество проверок, по умолчанию только одна;
  • -s — показывать прогресс сканирования раздела;
  • -v — максимально подробный режим;
  • -w — позволяет выполнить тест с помощью записи, на каждый блок записывается определённая последовательность байт, что стирает данные, которые хранились там раньше.

Таким образом, для обычной проверки используйте такую команду:

Читайте также:  Rofi linux что это

sudo badblocks -v /dev/sda2 -o ~/bad_sectors.txt

Это безопасно и её можно выполнять на файловой системе с данными, она ничего не повредит. В принципе, её даже можно выполнять на смонтированной файловой системе, хотя этого делать не рекомендуется. Если файловая система размонтирована, можно выполнить тест с записью с помощью опции -n:

sudo badblocks -vn /dev/sda2 -o ~/bad_sectors.txt

После завершения проверки, если были обнаружены битые блоки, надо сообщить о них файловой системе, чтобы она не пыталась писать туда данные. Для этого используйте утилиту fsck и опцию -l:

fsck -l ~/bad_sectors.txt /dev/sda1

Если на разделе используется файловая система семейства Ext, например Ext4, то для поиска битых блоков и автоматической регистрации их в файловой системе можно использовать команду e2fsck. Например:

Параметр позволяет искать битые блоки и добавлять их в список, -f — проверяет файловую систему, -p — восстанавливает повреждённые данные, а -v выводит всё максимально подробно.

Выводы

В этой статье мы рассмотрели как выполняется проверка диска на битые секторы Linux, чтобы вовремя предусмотреть возможные сбои и не потерять данные. Но на битых секторах проблемы с диском не заканчиваются. Там есть множество параметров стабильности работы, которые можно отслеживать с помощью таблицы SMART. Читайте об этом в статье Проверка диска в Linux.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Похожие записи

Оцените статью

Об авторе

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.

14 комментариев к “Проверка диска на битые секторы в Linux”

Если ты настолько туп что не понимаешь что такое бэд блоки, то какого хрена ты вообще тут пишешь Ответить

Ты будешь очень удивлен, когда узнаешь, что битые сектора еще на стадии производства жестких дисков появляются. Причина этого: несовершенство технологии производство, как бы не парадоксально это звучало. По этой же причине с одной матрицы, на которой выращивают процессора получают как сверхвысокопроизводительные процессора с высокой стоимостью, так и самые дешевые целерончики. Так вот, те битые сектора, которые определяют еще на производстве помечают и заносят в специальный список. который хранится, в зависимости от производителя харда или в специальном разделе, или во флешпамяти или там и там. Наличие заводских бэдов подтверждает график чтения диска. Его можно увидеть прогнав новый диск (из заводской упаковки) какой нибудь утилитой типа Виктории или МХДД. Провалы в графике чтения, который представляет собой логарифмическую кривую это и есть подтверждение наличия заводских сбойных секторов: то есть на этих областях головка харда переходит по указанному адресу. То есть там алгоритм такой: головка доходит до нужного адреса на диске: считывает с него инфу, и если видит что-то подобное: этот блок сбойный, если вы хотите что-то записать, то вместо него работает вооон тот блок, расположенный воооон там.
э Ответить

Читайте также:  Running linux applications on mac

Уважаемый автор, что-то я не понял про «просто» fsck. У него параметром «-l» не подставляется файл от «badblocks» с перечнем битых секторов, а выполняется совсем другая операция.
Может подскажете что теперь делать в этом случае? Т. е. например у меня флэшка битая и файловая система там не ext, и в наличии только консоль. Ответить

Результат показал Failed. И что умрет в ближайшие сутки. Правда так уже пару недель. Инфу, конечно, скопировал. Есть ли смысл возится с винтом, или можно выбрасывать? Ответить

А что вам мешает вводить не сам раздел, а диск? /dev/SDxy где x буква (Она обязательна!) и y (Номер раздела.) Если не вводить цифру (у), то система посчитает что вам нужно всё устройство, а не его определённый участок. Ответить

Если в линуксе пометить bad сектора они не будет использоваться также и в других системах или только в данной системе? И можно ли такие манипуляции проделывать на диске с важными данными? Ответить

только в данной системе?
И можно ли такие манипуляции проделывать на диске с важными данными?
только в данной.
важные данные нужно скопировать на исправный диск.
пс. это ты мне продал ,битый диск,гад? Ответить

В Mint можно прямо в утилиту Disks заходить из меню, она там есть по умолчанию, в том числе и в live-дистрибутиве с флешки. Запускаемся с загрузочной флешки Mint, заходим в Disks и смотрим. Если сверху написано количество Bad Blocks, значит они есть. Также в меню программы Disks есть пункт SMART Data & Self-Tests, заходим и смотрим, какие проблемы у диска есть. Ответить

Добавить нужно, что диски большого объёма чтобы проверять, нужно увеличивать размер блока. Стандартно 2048, но если попробовать проверять диск на 6 Тб скажем, получите ошибку. Тогда, по вашему примеру: badblocks -v -b 4096 /dev/sda2 -o ~/bad_sectors.txt Ответить

Источник

3 Useful GUI and Terminal Based Linux Disk Scanning Tools

There mainly two reasons for scanning a computer hard disk: one is to examine it for filesystem inconsistencies or errors that can result from persistent system crashes, improper closure of critical system software and more significantly by destructive programs (such as malware, viruses etc).

And another is to analyze its physical condition, where we can check a hard disk for bad sectors resulting from physical damage on the disk surface or failed memory transistor.

In this article, we will review a mix of GUI and terminal based disk scanning utilities for Linux.

In case you notice any unusual behavior from a computer hard disk or a particular partition, one of the first things you can always investigate is filesystem inconsistency or errors and there is no other better utility for performing this other than fsck.

1. fsck – Filesystem Consistency Check

fsck is a system utility used to check and optionally repair a Linux filesystem. It is a front-end for several filesystem checkers.

Читайте также:  Command to find ipconfig in linux

Warning: Try out fsck commands on test Linux servers only, unless you know what you’re doing..

Always unmount a partition first before you can run fsck on it.

$ sudo unmount /dev/sdc1 $ sudo fsck -Vt vfat /dev/sdc1

In the command below, the switch:

You can find detailed usage instructions in the fsck man page:

Once you have performed filesystem inconsistency tests, you proceed to carry out physical condition assessments.

2. badblock

badblocks is a utility for scanning bad blocks or bad sectors in hard disks. Assuming you detect any bad blocks on your hard disk, you can use it together with fsck or e2fsck to instruct the kernel not to use the bad blocks.

For more information on how to check bad blocks using badblock utility, read: How to Check Bad Sectors or Bad Blocks on Hard Disk in Linux.

3. S.M.A.R.T System Utilities

S.M.A.R.T (Self-Monitoring, Analysis and Reporting Technology) is a system built into nearly all modern ATA/SATA and SCSI/SAS hard disks as well as solid-state disks.

It collects in-depth information about a supported hard disk and you can get that data using the utilities below.

i. Smartctl

smartctl is one of the two utilities under the smartmontools package. It is a command line utility which controls and monitors the S.M.A.R.T system.

To install smartmontools package, run the applicable command below for your distro:

$ sudo apt-get install smartmontools #Debian/Ubuntu systems $ sudo yum install smartmontools #RHEL/CentOS systems

The following is an example of a smartctl command for reporting hard disk partition health where the option -H helps to show the general partition health condition after a self-test:

Look through the smartctl man page for more usage guidelines:

There is a GUI front-end for smartctl called gsmartcontrol which can be installed as follows:

$ sudo apt-get install gsmartcontrol #Debian/Ubuntu systems $ sudo yum install gsmartcontrol #RHEL/CentOS systems

GSmart Control - Linux Disk Scanning Tool

ii. Gnome Disk Utility( or Disks)

Gnome disk utility offers a GUI for doing all the partition management related tasks such as creating, deleting, mounting partitions and beyond. It comes pre-installed in majority of mainstream Linux systems such as Ubuntu, Fedora, Linux Mint and others.

To use it on Ubuntu, open the Dash and search for Disks, on Linux Mint, open Menu and search for Disks and on Fedora, click on Activities type Disks.

Gnome Disk Utility for Linux Disk Scanning

More importantly, it can as well provide S.M.A.R.T data and effect self-tests as in the following interface.

Gnome Disk Utility for Linux Disk Scanning

That’s it! In this article, we reviewed hard disk scanning utilities for Linux operating system. You can share with us any utilities/tools for the same purpose, that are not mentioned in the list above or ask any related questions all in the comments.

Источник

Оцените статью
Adblock
detector