Рухнул ZFS на сервере (большая трабла...)

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-20 18:15:38

Предыстория:

На рабочем серваке стоят 4 жёстких по 320 ГБ в RAID-Z, версия ФС 3, пула 14. Управляется всё в FreeBSD 8.1. Серв используется как роутер, плюс небольшой ФТП, почта и NTP. Однажды прихожу утром на работу и народ жалуется, что сетка дико тормозит, после рекогносцировки было обнаружено, что серв выдаёт сообщения о достижении максимального количества процессов и ни на что не реагирует: консоль не фунциклирует, по SSH не достучаться (пытался рестартовать или хотя бы шатдаун). Кнопкой Power также не удалось ничего добиться - выдавал ошибку о невозможности перехода в state S5, пришлось выключить железно. После загрузки при попытке монтирования пула вываливается в mountroot>, в котором естественно ничего не монтируется.

Загрузился с Frenzy и пошли пляски:

Статус - ноль реакции, понятное дело

Код: Выделить всё

# zpool status
no pools available
Импорт показывает, что всё хорошо:

Код: Выделить всё

# zpool import
  pool: zroot
    id: 2845664896022458514
 state: ONLINE
action: The pool can be imported using its name or numeric identifier.
config:

        zroot          ONLINE
          raidz1       ONLINE
            gpt/disk0  ONLINE
            gpt/disk1  ONLINE
            gpt/disk2  ONLINE
            gpt/disk3  ONLINE
Попытки импорта ни к чему хорошему не приводят:

Код: Выделить всё

# zpool import zroot
cannot import 'zroot': one or more devices is currently unavailable
Почитав форумы нигде толком решения не нашёл, попробовал способ, описанный тут: http://www.lissyara.su/articles/freebsd ... _recovery/

Метки читаются:

Код: Выделить всё

# zdb -l /dev/gpt/disk0
--------------------------------------------
LABEL 0
--------------------------------------------
    version=14
    name='zroot'
    state=0
    txg=2953733
    pool_guid=2845664896022458514
    hostid=3869910672
    hostname='***'
    top_guid=5265280382838920949
    guid=644973034455485017
    vdev_tree
        type='raidz'
        id=0
        guid=5265280382838920949
        nparity=1
        metaslab_array=23
        metaslab_shift=31
        ashift=9
        asize=1271681515520
        is_log=0
...
=============================================================
# zdb -l /dev/gpt/disk1
--------------------------------------------
LABEL 0
--------------------------------------------
    version=14
    name='zroot'
    state=0
    txg=2953733
    pool_guid=2845664896022458514
    hostid=3869910672
    hostname=''
    top_guid=5265280382838920949
    guid=10995080289820917495
    vdev_tree
        type='raidz'
        id=0
        guid=5265280382838920949
        nparity=1
        metaslab_array=23
        metaslab_shift=31
        ashift=9
        asize=1271681515520
        is_log=0
...
=============================================================
# zdb -l /dev/gpt/disk2
--------------------------------------------
LABEL 0
--------------------------------------------
    version=14
    name='zroot'
    state=0
    txg=2953733
    pool_guid=2845664896022458514
    hostid=3869910672
    hostname=''
    top_guid=5265280382838920949
    guid=12977244417034029693
    vdev_tree
        type='raidz'
        id=0
        guid=5265280382838920949
        nparity=1
        metaslab_array=23
        metaslab_shift=31
        ashift=9
        asize=1271681515520
        is_log=0
...
=============================================================
# zdb -l /dev/gpt/disk3
--------------------------------------------
LABEL 0
--------------------------------------------
    version=14
    name='zroot'
    state=0
    txg=902172
    pool_guid=2845664896022458514
    hostid=3869910672
    hostname=''
    top_guid=5265280382838920949
    guid=14437847592425153520
    vdev_tree
        type='raidz'
        id=0
        guid=5265280382838920949
        nparity=1
        metaslab_array=23
        metaslab_shift=31
        ashift=9
        asize=1271681515520
        is_log=0
Сразу бросилось в глаза: у первых трёх txg=2953733, а у disk3 txg=902172.
Попытка сделать дамп для проверки смещения (с поправкой на объем диска 320 ГБ) также ни к чему не привела, ни один из дисков в пуле не читается:

Код: Выделить всё

# dd if=/dev/gpt/disk3 of=/tmp/tmp.dump bs=1024 count=256 skip=312570968
dd: /dev/gpt/disk3: Input/output error
0+0 records in
0+0 records out
0 bytes transferred in 0.000340 secs (0 bytes/sec)
Может, у кого-то есть ещё идеи, как вернуть пул к жизни? Буду премного благодарен за любые советы :)

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

pimlab
прапорщик
Сообщения: 484
Зарегистрирован: 2007-10-09 11:31:03

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение pimlab » 2011-01-21 10:48:24

а такая случаем команда не проходит?

Код: Выделить всё

zpool import -f 
пипец ,а я тоже собирался raidz поднимать :(

EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-21 11:36:36

Неа, форс уже пробовал - те же грабли :(

Код: Выделить всё

# zpool import -f zroot
cannot import 'zroot': one or more devices is currently unavailable

Gegemon
ст. сержант
Сообщения: 316
Зарегистрирован: 2007-10-28 16:03:30
Контактная информация:

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение Gegemon » 2011-01-21 12:06:07

Винты не сигейты случаем?
"Попробую и обязательно отпишусь" - самое популярное последнее сообщение ветки форума

EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-21 12:15:45

Случаем пара из них сигейты NS-ки, пара WD AAJS ) Кстати, тот, который под подозрением - disk3 как раз сигейт и у меня есть мысля его заменить, но как в рассыпавшемся пуле заменить жёсткий - я не знаю :( его ни в оффлайн вывести, ни уничтожить, а в тупую заменить хард - вместо старого новый становится FAULTED и от пула так же никакой реакции... Возможно, что-то где-то я упустил, я не спец в ZFS и всё это дело поднимал предыдущий админ, который уходя оставил мне только бумажку с пассвордами и видел я его 10 минут...
Последний раз редактировалось EuGenE 2011-01-21 12:19:36, всего редактировалось 1 раз.

Gegemon
ст. сержант
Сообщения: 316
Зарегистрирован: 2007-10-28 16:03:30
Контактная информация:

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение Gegemon » 2011-01-21 12:18:19

Сигейт - disk3 ?
"Попробую и обязательно отпишусь" - самое популярное последнее сообщение ветки форума

EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-21 12:19:59

Ага, дополнил предыдущий пост

Gegemon
ст. сержант
Сообщения: 316
Зарегистрирован: 2007-10-28 16:03:30
Контактная информация:

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение Gegemon » 2011-01-21 12:22:08

Модель какая?
"Попробую и обязательно отпишусь" - самое популярное последнее сообщение ветки форума

EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-21 12:24:31

ST3320620NS Проша: 3.AEE

Gegemon
ст. сержант
Сообщения: 316
Зарегистрирован: 2007-10-28 16:03:30
Контактная информация:

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение Gegemon » 2011-01-21 12:32:24

SMART что показывает?
dmesg на что ругается?
В логах что еще?
"Попробую и обязательно отпишусь" - самое популярное последнее сообщение ветки форума

EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-21 13:59:09

dmesg не ругается ни на что, просто при:

Код: Выделить всё

Trying to mount root from zfs:root
ROOT MOUNT ERROR:
IF you have invalid mount options ... бла бла бла
...
mountroot>
ну и в логах соответственно ничего.

Подключал хард к виндовой машине, вот что выдаёт SMART на disk3:
Изображение

для сравнения его брат disk1:
Изображение

hranitel_y2k
сержант
Сообщения: 154
Зарегистрирован: 2007-12-10 21:04:35

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение hranitel_y2k » 2011-01-21 16:02:12

EuGenE писал(а):
Подключал хард к виндовой машине, вот что выдаёт SMART на disk3:
Изображение

для сравнения его брат disk1:
Изображение
У вас UNC в смартах - оба диска лучше поменять!
Для большей уверенности, просканировать в victoriya или mhdd.
Все гениальное - просто!

EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-21 16:57:25

Насчёт их замены - это понятно, в планах покупка нового сервака, но мне хочется хотя б восстановить с них инфу, там корпоративная почта, которую терять не хочется...

Аватара пользователя
InventoR
ст. лейтенант
Сообщения: 1344
Зарегистрирован: 2006-12-10 19:43:25
Контактная информация:

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение InventoR » 2011-01-21 18:17:03

используйте корпоративный backup
ну вот и сказочке конец, кто слушал, тот молодец.

EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-24 11:46:47

Ни у кого больше идей не будет или всё с нуля поднимать? (

Аватара пользователя
NoResponse
мл. сержант
Сообщения: 76
Зарегистрирован: 2007-07-30 1:39:02
Контактная информация:

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение NoResponse » 2011-01-25 3:24:03

диск совсем не читается ?
Я сам по себе скопище энтропии. А по законам термодинамики, если не принимать никаких действий энтропия стремится к бесконечности. Похоже, так оно и есть.

EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-25 12:26:59

Весь пул в ауте, диск соответственно тоже, ну или наоборот...

Аватара пользователя
voider
лейтенант
Сообщения: 830
Зарегистрирован: 2008-02-21 20:35:03
Откуда: msk

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение voider » 2011-01-25 14:01:56

spin retry count 97 а всего 100 3 ошибки осталось и винт запускаться не будет

EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-25 14:29:46

Теоретически инфу можно с них скатать в условиях серверной или только нести спецам? Или с ZFS это бесполезно?

zgen
рядовой
Сообщения: 10
Зарегистрирован: 2011-01-23 10:19:56

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение zgen » 2011-01-25 23:35:18

А вытащить сбойный диск и попытаться запустить без него?

EuGenE
рядовой
Сообщения: 25
Зарегистрирован: 2011-01-20 17:32:36

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение EuGenE » 2011-01-26 15:03:31

Та же хрень, что и с ним...

Аватара пользователя
voider
лейтенант
Сообщения: 830
Зарегистрирован: 2008-02-21 20:35:03
Откуда: msk

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение voider » 2011-01-26 17:56:56

кароче как можно быстрее с него данные копируй ,а то потом будет поздно

Kazak
мл. сержант
Сообщения: 99
Зарегистрирован: 2009-07-28 9:46:46

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение Kazak » 2011-01-26 18:57:09

EuGenE писал(а):Та же хрень, что и с ним...
Попробуйте сделать Spare-диск( думаю не нужно напоминать, что диск или в экстренных случаях раздел на диске,должен быть равным по объему остальным членам массива) например так:

Код: Выделить всё

# zpool add spare ad8
В таком случае должно спасать:

Код: Выделить всё

#zpool replace ad4 ad8
#zpool status test # ... и смотрим выхлоп

 

Kazak
мл. сержант
Сообщения: 99
Зарегистрирован: 2009-07-28 9:46:46

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение Kazak » 2011-01-26 19:15:03

Прошу прощения, за неточность, но лучше так:
EuGenE писал(а):Та же хрень, что и с ним...
Попробуйте сделать Spare-диск( думаю не нужно напоминать, что диск или в экстренных случаях раздел на диске,должен быть равным по объему остальным членам массива) например так:

Код: Выделить всё

# zpool add  testpool spare ad8
В таком случае должно спасать:

Код: Выделить всё

# zpool offline testpool ad4
#zpool replace testpool  ad4 ad8
#zpool status test # и смотрим выхлоп
 
Если не пошло, пробуй явно:

Код: Выделить всё

# zpool online testpool ad8
#zpool status test
если пошел "resilver" то есть смысл ждать, если пул даже поднялся делаем :

Код: Выделить всё

 # zpool remove testpool ad4
так ты выведешь из пула битый диск....ну пиши если что

hranitel_y2k
сержант
Сообщения: 154
Зарегистрирован: 2007-12-10 21:04:35

Re: Рухнул ZFS на сервере (большая трабла...)

Непрочитанное сообщение hranitel_y2k » 2011-01-27 0:03:16

Почему все,да и сам автор, обращают внимание только на 3 диск? Если судить по смарт (будем считать,что он правильно показывает состояние дисков), то первый диск в еще худшем состоянии. Для 3 диска UNC секторов 5,а для 1 - 79.
Я бы выбросил первый диск, поскольку там уже точно ловить нечего. А вот по 3 прошелся викторией с REMAP,глядишь получиться подправить эти 5 битых секторов и считать всю инфу,а дальше уже "resilver"...

Код: Выделить всё

UNC (Uncorrectable Data Error). Не удалось скорректировать данные избыточным кодом, блок признан нечитаемым. Может быть как следствием нарушения контрольной суммы данных, так и следствием физического повреждения HDD;
voider писал(а):spin retry count 97 а всего 100 3 ошибки осталось и винт запускаться не будет
Надо RAW(HEX) смотреть,а не THRESHOLD
Все гениальное - просто!