Files
StrixScripts/HDD/repair-hdd.md
T

59 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# repair-hdd.sh
Презаписва избран диск, за да задейства remap на проблемни сектори, след
което изпълнява SMART extended self-test и показва финален отчет.
## Какво прави
Скриптът записва целия block device с нули или псевдослучайни данни. След
това стартира продължителен SMART self-test и изчаква очакваното му време,
преди да покаже резултата и SMART атрибутите. Изходът се записва в
`/var/log/hdd-repair/`.
**Операцията унищожава всички данни на избрания диск.** Преди запис скриптът
проверява дали дискът участва в root filesystem, проверява за монтирани
дъщерни устройства и активен swap, и изисква изрично потвърждение `YES`.
Ако дъщерно устройство не може да се демонтира, скриптът прекратява
операцията.
В началото скриптът предупреждава, че работата може да продължи часове, и
изисква отговор `yes` за продължаване или `no` за прекратяване. По време на
целия процес не изключвай компютъра, не го рестартирай/приспивай и не
прекъсвай захранването или връзката с диска. Преди самия запис има отделно
потвърждение с `YES`.
Използвай само с правилно идентифициран диск, който можеш безопасно да
изтриеш. Изисква пряка SATA връзка; `smartctl` не използва `-d sat`, затова
USB адаптер може да изисква ръчна промяна на извикванията в скрипта.
## Изисквания
- Linux и Bash
- Root права (`sudo`)
- `smartctl` от пакета smartmontools
- `findmnt`, `lsblk`, `readlink`, `swapon`, `umount` и стандартните GNU/Linux
помощни команди, използвани от скрипта
- OpenSSL е незадължителен; при липса режимът `random` използва `/dev/urandom`
## Употреба
```bash
sudo ./HDD/repair-hdd.sh --help
sudo ./HDD/repair-hdd.sh /dev/sdX
sudo ./HDD/repair-hdd.sh /dev/sdX zero
sudo ./HDD/repair-hdd.sh /dev/sdX null
sudo ./HDD/repair-hdd.sh /dev/sdX random
```
| Аргумент | Описание |
|----------|----------|
| `DEVICE` | Целият диск, например `/dev/sdX`, не дял от него |
| `zero` | Записва нули; режим по подразбиране |
| `null` | Синоним на `zero` |
| `random` | Записва псевдослучайни данни |
| `-h`, `--help` | Показва помощта и приключва |
Изпълнението може да продължи часове. Не прекъсвай захранването или връзката
с диска по време на записа или SMART теста. SMART remap не възстановява
данни и не гарантира, че дискът ще стане надежден; запази резервно копие и
подмени диск с повтарящи се грешки.