Раз в несколько дней, по-видимому, случайным образом, наша резервная копия на внешний жесткий диск USB дает сбой на нашем сервере HP DL380 G5 под управлением 64-разрядной версии CentOS 6.4. Если я cd /mnt/backup
и беги ls
он жалуется ls: reading directory .: Input/output error
, но mount -l
отчеты /dev/sda1 on /mnt/backup type ext4 (rw)
. Когда я вызываю кого-нибудь на место, чтобы проверить это, они неизменно сообщают, что индикатор на внешнем диске медленно мигает, что, по-видимому, является нормальным для состояния сна. Но я не прошу его переходить в состояние сна до тех пор, пока не будет запущен rsnapshot, но rsnapshot вызывает сбой моего скрипта еще до того, как это произойдет. Это пытается сэкономить электроэнергию? Как я могу заставить его этого не делать?
rsnapshot жалуется:
/usr/bin/rsnapshot daily: ERROR: /mnt/backup/.snapshots does not exist.
Конечно, если человек на месте отключит и снова подключит диск, я могу его снова смонтировать и .snapshots
конечно существует, и rsnapshot будет работать без ошибок. Какое-то время до следующего случайного происшествия. Кстати, это довольно новый накопитель WD Passport.
Итак, как мне сказать ему не спать?
Возможно, лучший способ предотвратить спящий режим жесткого диска и кэширование прошивки - это чтение случайного сектора вашего диска:
* * * * * bash -c 'dd if=/dev/sda of=/dev/null count=1 skip=$RANDOM'
У меня это сработало.
Если это hw poweroff было нормальной функцией ядра Linux, оно обработало его правильно. Нет, я думаю, что это прекрасный сюрприз от оборудования HP.
Предлагаю тривиальный обходной путь. Поместите в crontab:
* * * * * dd if=/dev/sda of=/dev/null bs=512 count=1
Это будет считываться в таблице разделов флеш-накопителя каждую минуту. Это не приведет к сокращению срока службы флеш-накопителя, потому что с него выполнялись только операции чтения, но предотвратит включение спящего режима.
В своих системах я никогда не сталкивался с такой проблемой. Если флеш-накопитель был смонтирован, он был смонтирован, и если я забыл его и попробовал использовать его раздел через 2 недели, его можно было включить без единого предупреждения ядра.