Страница 1 из 1
Нужен совет по восстановлению сервера
Добавлено: 2011-09-08 19:23:49
dm07
Всем здравствуйте. Прежде чем отпишусь по проблеме, опишу мою среду окружения: сервер на площадке в Германии, ОС 8.2-STABLE FreeBSD, 2 HDD, все стояло на зеркале в gmirror. Вчера вылетел один из дисков из рейда, причина - пара нечитаемых секторов (также проверил dd - есть ругань). Отписался в суппорт, диск заменили новым. Включил его в рейд, пошел ребилд. Дальше ребилд останавливается, причина - ошибка чтения уже на исходном диске. Вывел новый добавленный диск из рейда. Проверил его на всякий случай на bad-блоки, ошибок нет. Что сейчас имею:
Код: Выделить всё
gmirror list
Geom name: gm0
State: COMPLETE
Components: 1
Balance: round-robin
...
Consumers:
1. Name: ad4
...
State: ACTIVE
Flags: BROKEN
Все бы ничего, но похоже повредилась ФС, т.к. напрочь не могу сделать ряд бэкапов (tar папки и тишина - ни ошибок, не в message ни слова, что не может считать файл), также еще подозрительно то, что процессы не убиваются (висят с флагом D). Мои шаги такие:
1) загрузится с Rescue диска (провайдер дает "длинные руки")
2) выполнить fsck.
3) второй диск разбить и попробовать туда перенести все (gzip'лю ключевые папки на исходном диске, переношу и разворачиваю их на новом диске)
4) убираю загрузку c gmirror, перепрописываю fstab.
Ваши советы?
Еще вопрос: каким образом gmirror может потенциально повредить ФС в моем случае, когда при ребилде с исходного диска, исходный оказывается с bad-блоком и ребилд останавливается?
Спасибо за советы.
Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-08 20:21:31
vadim64
я думаю что не надо лишний раз мучать диск, пока нету валидной запасной площадки
ставьте систему из под пока живой оси на второй диск, спасайте что можно, оцените что не удаётся спасти
Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-08 21:28:26
Alex Keda
согласен.
ОС надо ставить на новый диск, из-под неё считывать посекторно старый.
или считывать со старого и писать на новый, тем же dd, с пропуском нечитаемых.
потом чекать ФС на новом и бутится с него.
если всё хорошо - просить второй убитый заменить на новый
--
дальнейшем, настоятельно рекомендую ставить и настраивать smartd
вероятность очнутся в тот момент когда сектора уже не читаемы - снижается
Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-08 21:48:07
dm07
Alex Keda писал(а):согласен.
ОС надо ставить на новый диск, из-под неё считывать посекторно старый.
или считывать со старого и писать на новый, тем же dd, с пропуском нечитаемых.
Исправный диск размечу. Вопрос - могу делать tar читаемых папок с untar на диск назначения вместо dd или тут подводные камни?
Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-09 8:07:37
Alex Keda
tar, в отличие от dd, подвиснет на нечитаемом секторе.
dd может пропустить - см. его ключи.
--
для dd не надо ничего размечать - он вместе с разметкой утащщит весь диск
Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-09 9:09:12
dm07
Alex Keda писал(а):tar, в отличие от dd, подвиснет на нечитаемом секторе.
Ночью сделал перенос через dump&restore - была ругань, что не все может восстановить.
Вопрос в другом. Как так получилось, что попортилась ФС на зеркальном gmirror при ребилде на исходном диске и с исходного диска? Я не думаю, что 2 нечитаемых сектора могли вызвать такие последствия, у меня были примеры по-серьезнее и система оставалась живой.
Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-09 10:33:52
Alex Keda
у меня однажды вылетел 1 (один) сектор.
это мне вылилось в потерю большей части ФС - в этом секторе хранилась директория /usr

Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-09 12:24:28
Bayerische
Alex Keda писал(а):tar, в отличие от dd, подвиснет на нечитаемом секторе.
dd может пропустить - см. его ключи.
А pax? Полагаю, как и tar?
Чем отличаются действия этих двух строк?
Полагаю pax перетягивает корректно линки?
Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-09 13:22:40
vadim64
man pax писал(а):
pax -- read and write file archives and copy directory hierarchies
man tar писал(а):
tar -- manipulate tape archives
man cp писал(а):
cp -- copy files
man dd писал(а):
dd -- convert and copy a file
они все такие разные)))
Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-09 13:25:22
vadim64
Код: Выделить всё
cat /dev/da1s1a | grep -v "Bad block" | grep -v "Bad sector" >> /dev/da0s1a
Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-09 14:40:19
dm07
vadim64 писал(а):Код: Выделить всё
cat /dev/da1s1a | grep -v "Bad block" | grep -v "Bad sector" >> /dev/da0s1a
Это что такое ?
Re: Нужен совет по восстановлению сервера
Добавлено: 2011-09-09 14:54:48
vadim64
шутка
не заморачивайтесь