LINUX.ORG.RU
ФорумTalks

[RHEL][идиотия] вляпался в энтерпрайс

 ,


0

1
# zcat /boot/initrd-2.6.18-238.5.1.el5.img | grep -a /dev/md0
raidautorun /dev/md0
mkrootdev -t ext3 -o defaults,ro /dev/md0

Кто ещё не понял индейской шутки юмора:

Адрес блок-девайса с rootfs зашивается в initrd при запуске mkinitrd на рабочей системе. Редактирование в грабе строки ядра root=/dev/md125 никаких результатов не дает. (Зачем она там вообще?) А сам сервак с убитым софт-рейдом перед уходом в панику жаловался на некий /dev/root.

Старый баян, да.

★★★★★

Ответ на: комментарий от xorik

Мопед не мой. Труп пациента сегодня торжественно вручили для проведения обряда воскрешения данных.

shahid ★★★★★
() автор топика

Старый. В своё время приходилось загружать систему с установочного диска в recovery, чтобы пересобрать initrd. Ещё более непонятно, нафига они используют этот убогий nash для init - скрипта в initrd, могли бы и bash использовать.

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

Труп пациента сегодня торжественно вручили для проведения обряда воскрешения данных

LiveCD,

данные на флешку,

???,

PROFIT!

Не?

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

Я забыл сообщить: сервер в голландии (это отечественный мастерхост, они сами починить его не смогли!). «Вручили» - в том плане, что дали доступ к management console и IPMI.

На рейде около терабайта данных. Нужно также чтоб сервак заработал, ибо нагрузка высокая на нем была, да и ленивый я. Текущее временное решение:

1. Смонтирован system rescue cd по IPMI.

2. На выжившем мирроре почему-то не было таблицы разделов и grub - восстановил через testdisk. Поднялись убитые рейды (/dev/md12[5-8]). На втором мирроре одни бэдблоки, но он тоже откликается.

3. System Rescue CD -> Boot installed system. В итоге сейчас сервер пашет на гентушном ядре. Т.е.

cat /etc/issue; uname -r
CentOS release 5.6 (Final)
2.6.38-std231-amd64

Много раз пытался загрузить ценось, но безуспешно. Сегодня ночью продолжу сношение.

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

Много раз пытался загрузить ценось

s/центось/центось на родном ядре/

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

Какой-то сервак HP Proliank. Но систему менять не просили. В 15к это уже не укладывается...

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

Что именно смешно? Замените слово CentOS на RHEL, поменяйте фон загрузчика и обои, и будет RHEL. Только без подписей редхата на пакетах.

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

Понимание тут бесполезно.
Изя своим присутствием в этом треде (впрочем, как и в любом другом треде вне зависимости от его тематики) кагбе намекает, что Ъ-ынтыпрайз это FreeBSD с Ъ-ынтыпрайзной ФС - ZFS. :)

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

>бсдунишко

с погоста

Врёшь! Мертвые не пердят.

Ygor ★★★★★
()

Интересно, в Федоре такая же порнография?

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

У них же, вроде, на FreeBSD и было. По крайней мере там, где я виртуальный хостинг покупал.

exorcist
()

>Адрес блок-девайса с rootfs зашивается в initrd при запуске mkinitrd на рабочей системе. Редактирование в грабе строки ядра root=/dev/md125 никаких результатов не дает. (Зачем она там вообще?) А сам сервак с убитым софт-рейдом перед уходом в панику жаловался на некий /dev/root.

«Ты так быстро не говори, понял? Я краями не догоняю, понял?»

Параметр root вообще парсится ядром. А строки, которые ты привёл - настройки по умолчанию, видимо. На пробу сейчас менял root, ядро его спокойно читало.

А вот монтирование ФС происходит по записям из fstab. И хоть ты обпередавайся root=/dev/md125, после chroot в /dev/mdd125 будет прочитан родной fstab, в котором кривые руки прописани /dev/md0 ;) И в debian то же самое.

Пройдите к ближайшему забору для выпрямления рук

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

>Много раз пытался загрузить ценось, но безуспешно. Сегодня ночью продолжу сношение.

минимально необходимый livecd ты получаешь на установочном диске. ctrl+alt+f1 и ты в консоли. lvm команды нужно писать с приставкой (lvm vgdisplay вместо vgdisplay), например, но для восстановления годится.

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

lvm команды нужно писать с приставкой (lvm vgdisplay вместо vgdisplay), например, но для восстановления годится.

Да я в курсе. Повторяю, что рейд был капитально убитый. Был похерен один диск, а на мирроре не было рабочей таблицы разделов. Поэтому testdisk.

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

> Параметр root вообще парсится ядром. А строки, которые ты привёл - настройки по умолчанию, видимо. На пробу сейчас менял root, ядро его спокойно читало.

А ты просто выпили рут-девайс, зашитый в initrd. Так чтобы его не было вообще. Т.е. в случае софт-рейда, поменяй preferred-minor в супер блоке на любое другое число и ребутанись.

А строки, которые ты привёл - настройки по умолчанию, видимо


Видимо. Линейный код на баше читать умеешь? Какие ещё настройки по-умолчанию? В init нет ни одного if.

А вот монтирование ФС происходит по записям из fstab.


Раздел c fstab'ом ещё надо примонтировать. Или fstab телепатически читается?

Остальное мимо кассы, поумничать не удалось.

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

Только сегодня и специально для вас!

Содержимое initrd/init: http://pastebin.ca/2080053

1. Ни одной переменной. 2. Ни одного if. 3. setuproot, switchroot и прочие вызовы зашиты в nash ещё на стадии компиляции дистрибутива. Судя по сорцам, ничего кроме мелких танцев вокруг /sysroot и некоего /dev/root они не делают.

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

>Что именно смешно? Замените слово CentOS на RHEL, поменяйте фон загрузчика и обои, и будет RHEL. Только без подписей редхата на пакетах.

Вот именно это и смешно. 5 звёзд набрать, а так толсто троллить. Что, со мненой обоев и фона загрузчика у меня вдруг появится доступ к обновлениям РедХат и к поддержке? Именно в этом и заключается «энтерпрайз».

Тем более смотрю сейчас на RHEL 4 AS i386, RHEL 6(6.0/6.1) Server/Client/Workstation x64/i386, таких строчек в /boot/initrd-2.6.9-5.EL.img и /boot/initramfs-2.6.32-131.0.15.el6.x86_64.img не вижу. RHEL 5 c RAID нет, потом могу посмотреть.

И да, CentOS != RHEL.

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

Параметр root вообще парсится ядром. А строки, которые ты привёл - настройки по умолчанию, видимо. На пробу сейчас менял root, ядро его спокойно читало.

Иди спи дальше, ты не разбираешься в вопросе.

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

> На пробу сейчас менял root, ядро его спокойно читало.
поддерживаю, менял часто на CentOS5, все работало, причем были случаи root на /dev/md0 менял на /dev/sdb1 все загружалось.

anonymous2 ★★★★★
()

> Старый баян, да.
вы бы ошибки привели, что на экране было хотя бы по памяти, да?

anonymous2 ★★★★★
()

> Редактирование в грабе строки ядра root=/dev/md125 никаких результатов не дает.
я все больше удивляюсь, root у вас в /dev/md0 а вы ищите на /dev/md{1,2,3}
пьяный што ле?

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

поддерживаю, менял часто на CentOS5, все работало

В случае использования initrd, параметр root= ядром не обрабатывается, так как при старте системы корневой ФС является initrd. В этом случае строка параметров ядра парсится стартовым скриптом в initrd. А там такое творчество (при использовании mdadm и LVM):

mdadm -As --auto=yes --run /dev/md1                     
echo Scanning logical volumes
lvm vgscan --ignorelockingfailure
echo Activating logical volumes
lvm vgchange -ay --ignorelockingfailure  Sys
resume /dev/Sys/swap01
echo Creating root device.
mkrootdev -t ext3 -o defaults,ro /dev/Sys/rootfs
echo Mounting root filesystem.
mount /sysroot

Или мне, помимо приведения цитаты из кода, нужно привести ещё какие-то доводы?

причем были случаи root на /dev/md0 менял на /dev/sdb1 все загружалось.

Конечно загружалось. /dev/md0 же никуда не исчез, вот и загружалось.

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

>А ты просто выпили рут-девайс, зашитый в initrd. Так чтобы его не было вообще. Т.е. в случае софт-рейда, поменяй preferred-minor в супер блоке на любое другое число и ребутанись.

Поднял тестовую виртуалку с рейдом. Поменял super-minor и вырвал один диск. Да, после изменнения root в grub не грузится. Признаю, сел в лужу. Дядь, прости засранца.

Пойду посмотрю этот initrd подробнее, а то что-то неинтырпрайзненько.

router ★★★★★
()

Не исключено, что бред в initrd вызван ранним половым опытом центоси с проприетарным драйвером fakeraid'а от HP, который они имеют обыкновение ставить в дешёвые пролианты. Но это так, даже не на кофейной гуще.

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

> Что, со мненой обоев и фона загрузчика у меня вдруг появится доступ к обновлениям РедХат и к поддержке?

RH не должна быть пригодна для обслуживания без специально раскрашенного ынтырпрайзным шаманом бубна. Чтобы пользоваться их поддержкой было выгоднее, чем просто нанять хорошего админа. Всё правильно, чо. Бизнес так и делается.

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