Работа с дисками

Материал из ALT Linux Wiki

Работа с дисками

См. также ТестированиеКомпьютера

Не рекомендуется использовать программы fdisk/cfdisk для первичного разбиения диска, один из разделов в котором предназначен для загрузки Windows. Используйте parted.

0. Создать загрузочную запись См. man ms-sys или sys в DOS/Win95/Win98 или fixboot в консоли восстановления 2003

1. Увидеть, что пишет система о дисках при загрузке

# dmesg | grep sd

или, на старых (< 2.6.18) ядрах

# dmesg | grep hd 

2. Вывести перечень всех разделов и всех дисков

# fdisk -l 

3. Полная информация о диске

# hdparm -I /dev/sda

4. Вывести информацию о состоянии диска

# smartctl -a /dev/sda

Запустить внутренний тест диска

# smartctl -t short /dev/sda

или

# smartctl -t long /dev/sda

5. Программа работы с разделами диска

# parted /dev/sd? 

6. Программы восстановления потерянных разделов

# testdisk (более user-friendly)
# gpart (более могучая, но надо тщательно читать man)

7. Графическая программа для работы с разделами диска

$ qtparted 

8. Вывод температуры диска

# hddtemp /dev/sda

9. Простая программа работы с разделами диска

# cfdisk 

10. Восстановление файлов на разделе ext2

$ man recover

11. Сканирование диска на сбойные сектора (вместо badblocks)

# diskscan

12. Восстановление стёртых файлов с любых файловых систем

# photorec из пакета testdisk

Таблица соответствия устройств

Таблица соответствия IDE-устройств

Устройство Подключение
/dev/hda Master на IDE0 (Primary)
/dev/hdb Slave на IDE0 (Primary)
/dev/hdc Master на IDE1 (Secondary)
/dev/hdd Slave на IDE1 (Secondary)

Для SATA-устройств (так же как и для SCSI) чёткого порядка именования нет, устройствам выдаются имена sda,sdb,... в порядке их обнаружения системой.

Как пользоваться smartctl

# smartctl -a /dev/sda

Смотрим на следующие параметры:

  1 Raw_Read_Error_Rate     0x000b   100   100   051    Pre-fail Always       -       11
  5 Reallocated_Sector_Ct   0x0033   051   051   010    Pre-fail Always       -       101
  7 Seek_Error_Rate         0x000b   253   253   051    Pre-fail Always       -       0
197 Current_Pending_Sector  0x0033   253   253   010    Pre-fail Always       -       0
198 Offline_Uncorrectable   0x0031   253   253   010    Pre-fail Offline      -       0
200 Multi_Zone_Error_Rate   0x000b   100   100   051    Pre-fail Always       -       0
201 Soft_Read_Error_Rate    0x000b   100   100   051    Pre-fail Always       -       2

Если вкратце, то это все означает, что у вашего диска есть

проблемы

с поверхностью диска и часть секторов уже переназначена на запасные (параметр Reallocated_Sector_Count), а часть вообще потеряна (параметр Offline_Uncorrectable). Когда первый параметр достигнет нуля, есть большая вероятность появления bad секторов. Но эта вероятность есть и сейчас, поскольку нет 100% вероятности, что переназначенный сектор содержит ту же информацию, что и раньше. Я бы вам посоветовал озаботиться сохранением всех важных данных на более надежном носителе.

Надо сказать, что диск в подобном состоянии вполне еще может послужит в качестве дискеты и выбрасывать его рано :):)

  • Dmitry (Mothlike) Marochko
  • Vitaly Lipatov

Частая парковка диска

Если диск всё время паркуется, а потом опять включается (слышно, что каждые 5-15 секунд щёлкает), нужно либо настроить ОС, чтобы не было принудительной парковки так часто, либо настроить диск, чтобы он не занимался (так часто) автопарковкой.

Настройка диска (команда idle3ctl из пакета idle3-tools)

  1. idle3ctl -s 900 /dev/sda
  2. idle3ctl -d /dev/sda

Ссылки

FreeBSD

На FreeBSD нет hdparm (smartctl есть). Вместо него используйте rawio, iozone, or bonnie. Также в базовой системе есть команда diskinfo.