LINUX.ORG.RU
решено ФорумAdmin

Помогите оживить Линукс на софтрейде....

 


0

1

Есть раздел форума Linux-install но вот Linux-recover не увидел.
Линукс я давным давно поставил. Он стоял и работал...
Как бэкап сервер...
Но надобность отпала и он запылился... Сейчас включил а grub встает в rescue mode. Как бы его оживить?

Предистория: Установил Debian Wheezy или Squeeze на RAID5 поверх обычных винтов 2 из которых живут на PCI SATA контроллере. Оно работало и грузилось. Было: md0:sda1,sdb1,sdc1,sdd1. Поверх него LVM:data,root,swap.
grub грузил систему с root и меню брал оттуда же.

Не понимаю как он это делал - но работало.
Сейчас загрузился с Debian 7.5.0 DVD в rescue режиме, собрал RAID автоматом, Появились /dev/md0 и LVM разделы data,root,swap. Указал root в качестве корня. Затем в следующем меню заказал: Переустановка системного загрузчика grub в /dev/sda. Оно без ошибок отработало, но при перезагрузки всё тот же:
Entering rescue mode...
grub rescue>

Как его победить?

★★★

Последнее исправление: n0mad (всего исправлений: 1)

дк, как обычно. запускайся с лайвки и восстанавливай граб.

darkenshvein ★★★★★
()

на команды, хотябы на help реагирует или говорит что ничего не умеет ?

handbrake ★★★
()

Переустановка системного загрузчика grub в /dev/sda.

а разве загрузчик не устанавливается на все диски?

snaf ★★★★★
()

Может в первом секторе какой-то шлак остался? Попробуй почистить.

И это, ты grub2-mkconfig > /boot/grub/grub.cfg делал?

invokercd ★★★★
()
Ответ на: комментарий от snaf

Установщик wheezy ставит(л) на первый. Потом ручками разве что доставить.

invokercd ★★★★
()

Всем спасибо за рекомендации.
«Дело было не в бобине».
Винтов было не 4 а 5. Один отвалился и система встала в degraded а в этом режиме grub не умеет грузиться с рейда.
Система с лайв-сиди монтирует массив нормально.
Наука о контактах... Залез в системник, поменял шлейф винта (прежний даже в BIOS показывал мусор в названии винта даже после переподключения) и он заработал. Идет ресинк, как завершится посмотрим на результат.
Узнал новую для меня команду: nmon - Красиво показывает ресинк.
Теоретически после завершения ресинка всё должно работать.

n0mad ★★★
() автор топика
Ответ на: комментарий от n0mad

В общем синк завершился и система спокойно загрузилась с рейда.
По ходу синка посмотрел аптайм винтов. Тот который отваливался оказался самым рабочим, у него 53362 часа :) = 6Y1M3D
Там еще Squeeze стоит... интересно, а если его до Wheezy заапгрейдить? :) или сразу до Jessie?

n0mad ★★★
() автор топика
Ответ на: комментарий от n0mad

Один отвалился и система встала в degraded а в этом режиме grub не умеет грузиться с рейда.

Умеет. У тебя в sd* загрузчик а не на рейде.

handbrake ★★★
()
Ответ на: комментарий от handbrake

Умеет. У тебя в sd* загрузчик а не на рейде.

Поясни пожалуйста.
загрузчик писать на /dev/md0?
Так он софтРЕЙД5...
В любом случае сейчас подключил репу: squeeze-lts, сделал dist-upgrade и ребутнулся. Оно взлетело но опять начался синк.
Как завершится попробую ребутнуться без одного hdd.

n0mad ★★★
() автор топика
Ответ на: комментарий от n0mad

Хм. За 5 не скажу - не использую. На 1 гарантированно работает, у меня перед вводом в прод обязательная проверка на грузибельность с каждого члена мессива, вместе и по отдельности.

Установка в / или /boot, в конфиге соответственно set root='mduuid/48a97efdeef9908adg900ef8ef5f26a8'

Когда грузится с одного, значит только на нем и стоит. Собственно поэтому я и ввел проверку перед вводом в эксплуатацию.
На rescue пару дней назад напоролся, при дист-апгрейде суськи, оно означает, что только часть граба обновилась, то что в секторах болтается - старое. Там баг какой-то, многие жалуются.

handbrake ★★★
()
Последнее исправление: handbrake (всего исправлений: 1)
Ответ на: комментарий от handbrake

Хм. За 5 не скажу - не использую. На 1 гарантированно работает

На 1 вполне может работать. В моём случае grub не мог даже начать ядро грузить. Если я в BIOS отключаю винт - GRUB выпадает в rescue даже не показывая /boot/grub/grub.cfg соответственно если отвалился винт система не грузится. Надо поставить новый, грузануться с Live и синкнуть рейд.

В продакшн наверное надо RAID1 для /boot вот на досуге сделаю апгрейд Squeeze->Jessie на той машинке с 5 винтами а потом из неё сделаю полигон из Jessie с готовой к продакшн конфигурацией.
В идеале добиться предсказуемой отказоустойчивости и быстрого восстановления с минимальным даунтаймом.

При нынешних 3T винтах конечно это всё уже не так актуально - это раньше во времена 160Gb был актуален RAID5.

n0mad ★★★
() автор топика
Ответ на: комментарий от n0mad

На 1 вполне может работать.

Тут http://wiki.gentoo.org/wiki/GRUB2 пишут

GRUB2 has many features that make it a very powerful boot loader. It supports: 
...
booting with support for DM-RAID (RAID 0, 1, 4, 5, 6, 9 and 10).

В моём случае grub не мог даже начать ядро грузить.

Аналогично. Он вообще не живой был, я поэтому и спрашивал - работает ли любая команда, например help, у меня - не работала и она.

Я с ужасом представляю время ресинка 10Т.

handbrake ★★★
()
Ответ на: комментарий от handbrake

booting with support for DM-RAID (RAID 0, 1, 4, 5, 6, 9 and 10).

Это рабочий рейд. У меня грузится с root живущего на LVM в RAID разделе. Грузится пока рейд остановлен штатно. Если я нажму «reset» то рейд остановлен аварийно и grub уже с него загрузиться не сможет. Надо грузиться с LiveCD и синкать.
Вечером дома проверю help, но подозреваю что не заработает.
Надеюсь что с /boot на RAID1 и root на RAID5 сможет грузиться в degraded режиме, но проверю не скоро - нет пока свободной машинки и времени для экспериментов.

n0mad ★★★
() автор топика
Ответ на: комментарий от n0mad

Грузится пока рейд остановлен штатно. Если я нажму «reset» то рейд остановлен аварийно и grub уже с него загрузиться не сможет. Надо грузиться с LiveCD и синкать.

жесть какая, я выбывание в ресинк вижу только при _нескольких_ ресетах _подряд_ при условии приличной нагрузки

handbrake ★★★
()
Ответ на: комментарий от handbrake

В общем не стал я дожидатся освобождения реальной железки.
Поднял VirtualBox с 5 дисками по 8Gb.
Поделил на:1=500M,2=2G,5=Остальное.
Прямо в консольном инсталляторе сделал md0=sdX[1]=RAID1*5=boot
md1=sdX[5]=RAID5*5=root и md2=sdX[2]=RAID5*5=swap
md0 задал как /boot
md1 задал как / а
md2 задал как swap
Я понимаю что своп на RAID5 бессмысленен, но это просто проверка возможности.
Прогнал инсталлятор, перезагрузился. Всё взлетело. Остановил машинку и отключил один образ. Загрузился - система нормльно загрузилась с корнем на [degraded]. Опять выключил машнку, вернул диск. Перезагрузился. Рейд в [degraded]. Тупо в консоли:
mdadm /dev/md1 -a /dev/md1 /dev/sdX5;mdadm -a /dev/md2 /dev/sdX2
Всё. Рейд начал синкаться. Пишу сюда а ему еще 15 минут синкаться в VirtualBOX.

т.е. короткий тест на отказоустойчивость пройден. Отказ одного диска пережили. Как Джесси зарелизят попробую это на ней же и сделаю на той машинке Джесси на рейде.
Вот как то так.

n0mad ★★★
() автор топика
Ответ на: комментарий от n0mad

Да, вот это его нормальное поведение, можно украсить sparse по настроению, для 5, имхо, актуально. Кста, специально для возвращения прежних дисков есть --re-add.

handbrake ★★★
()
Ответ на: комментарий от handbrake

Да, вот это его нормальное поведение, можно украсить sparse по настроению, для 5, имхо, актуально. Кста, специально для возвращения прежних дисков есть --re-add.

Другое дело своп на рейд5 :) С одной стороны нафиг не надо ибо тормозить систему будет с другой - при отказе диска всё будет жить. Если своп размазать по дискам ведь уже пострадает отказоустойчивость.

n0mad ★★★
() автор топика
Ответ на: комментарий от n0mad

Со свопом вообще песня отдельная - ни разу не видел чтобы массив свопа разваливался, всегда в UU, чтобы ни было.

handbrake ★★★
()
Ответ на: комментарий от handbrake

Со свопом вообще песня отдельная - ни разу не видел чтобы массив свопа разваливался, всегда в UU, чтобы ни было.

Я не в этом плане. Если своп на рейде то он будет медленнее чем подключить 5 своп партиций с 5 дисков, но странички лежащие в свопе отказавшего диска уйдут вместе с ним.
Все равно же диски надо размечать одинаково и в случае с 5 дисками - 5 свопов.
И со свопами все же совсем отдельная песня. Для сервера одна, а для десктопа нужен гибернейт и боюсь загибернейченная система не проснется с РЕЙД5 или даже РЕЙД1.

n0mad ★★★
() автор топика
Последнее исправление: n0mad (всего исправлений: 2)
Ответ на: комментарий от n0mad

Для сервера одна, а для десктопа нужен гибернейт

0_o У меня он и там и там для проформы, чай не винды какие. Необходимость в гибернейте считаю сомнительной - на десктопе 24 гига, на буке - 12+ссд - во первых время загрузки системы и образа памяти сравнимо, во вторых ссд убивать, в третьих инициализация устройств - со спячки даже винда (в которой она типа нормально реализована) во половине случаев дурная.

handbrake ★★★
()
Ответ на: комментарий от handbrake

n0mad

Для сервера одна, а для десктопа нужен гибернейт



0_o У меня он и там и там для проформы, чай не винды какие. Необходимость в гибернейте считаю сомнительной - на десктопе 24 гига, на буке - 12+ссд - во первых время загрузки системы и образа памяти сравнимо, во вторых ссд убивать, в третьих инициализация устройств - со спячки даже винда (в которой она типа нормально реализована) во половине случаев дурная.

В случае с ноутбуком всегда есть sleep, SSD действительно стоит поберечь. Ну и не у всех крутые машинки а на одном месте работы на ночь производили полное обесточивание - потому без гибернейта неудобно было работать. С тех пор гибернейт настраиваю. Кстати с реакцией на «Power». В случае скажем с отключкой когда я в онлайне - сразу жму power и комп гибернейтится.
Я так и не осилил Linux+UPS.
Еще голову не ломал, но есть подозрение что её там сломаю.
Дома Wheezy встал и увидел Powercom на USB но сейчас Linux приближается к винде по ИИ. Он сам его увидел и настроил. Причем есть подозрение что для Default Gnome настройки одни а для MATE другие. При этом не все настройки доступны ни через GUI ни через конфиги, только через gsettings set. С дефолтными настройками я не понимаю пока алгоритма работы. Мне надо тупо работать а по LowBATT мгновенный гибернейт, ну и скажем если 5 минут пользователь неактивен - принудительный гибернейт.
Если тупо поставить и настроить nut то он может заработать а может и пересечься с гномом и кто то кого то обломает. В консоли всё однозначно - есть nut он и управляет, а если залогинен в Гном то вмешивается и он.
Вот как то так... грустно...
«Смешались в кучу кони, люди»

n0mad ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.