Discussion:
починить grub
(слишком старое сообщение для ответа)
Victor Sudakov
2016-06-09 13:11:36 UTC
Permalink
Dear All,

Перенесли железный сервер Solaris 10 в VMware. Стоял на FFS. При загрузке
получаю

GRUB

и всё.

Это даже ожидаемо, девайсы-то в VMware иначе называются. Раньше корневой раздел
лежал на c3t0d0, а теперь на c1t0d0.

/a/etc/vfstab я с LiveCD поправлю, а что делать с сабжем, как загрузку системы
оживить? Так-то она монтируется к /a с LiveCD, можно с ней что угодно делать,
VTOC нормальный, только не бутится.

Заранее спасибо за совет.

Victor Sudakov, VAS4-RIPE, VAS47-RIPN
Andrew Kolchoogin
2016-06-09 13:39:26 UTC
Permalink
Приветствую, Victor.

В четверг, 09 июня 2016 г. ты писал сюда следующее:

VS> Перенесли железный сервер Solaris 10 в VMware. Стоял на FFS. При
VS> загрузке получаю

VS> GRUB

VS> и всё.

VS> Это даже ожидаемо, девайсы-то в VMware иначе называются. Раньше
VS> корневой раздел лежал на c3t0d0, а теперь на c1t0d0.
Hе угадал. ;)

GRUB-у то на это точно наплевать.

grub-install /dev/dsk/c1t0d0

или

installgrub /dev/dsk/c1t0d0

Я точно не помню, как оно в 10-й. Данная команда пропишет тебе
/boot/grub/stage1 и /boot/grub/stage2_ffs в нужные блоки диска.

Всего наилучшего,
Андрей Кольчугин.

... Россия - могучая гора. Hо каких же мышей она родила!
Victor Sudakov
2016-06-10 08:52:54 UTC
Permalink
Dear Andrew,

09 Jun 16 16:39, you wrote to me:
VS>> Перенесли железный сервер Solaris 10 в VMware. Стоял на FFS. При
VS>> загрузке получаю

VS>> GRUB

VS>> и всё.

VS>> Это даже ожидаемо, девайсы-то в VMware иначе называются. Раньше
VS>> корневой раздел лежал на c3t0d0, а теперь на c1t0d0.
AK> Hе угадал. ;)

AK> GRUB-у то на это точно наплевать.

AK> grub-install /dev/dsk/c1t0d0

AK> или

AK> installgrub /dev/dsk/c1t0d0

AK> Я точно не помню, как оно в 10-й. Данная команда пропишет тебе
AK> /boot/grub/stage1 и /boot/grub/stage2_ffs в нужные блоки диска.

C grub-ом помогло, спасибо, после применения команды
installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c1t0d0s0

появилось меню grub. Но дальше загрузка не идет вот таким образом:
Loading Image...

Ну типа тоже ожидаемо. Я сходил в /a/boot/solaris/bootenv.rc и поправил там
bootpath на новый, правильный.

Но!! Линки-то в /a/dev по-прежнему указывают на неправильные устройства в
/a/devices, в /a/etc/path_to_inst информация неправильная и т.п.

Что теперь с этим делать, как дальше быть? "devfsadm -r a/" ничего не поправил,
линки в /a/dev остались "не туда".

/a/etc/path_to_inst я решил скопировать с /etc/path_to_inst, а он там пустой
:-( Короче, я что-то не так делаю, не может быть перенос системы на другую
машину НАСТОЛЬКО сложным.

Victor Sudakov, VAS4-RIPE, VAS47-RIPN
Andrew Kolchoogin
2016-06-10 06:16:32 UTC
Permalink
Приветствую, Victor.

В пятницу, 10 июня 2016 г. ты писал мне следующее:

VS> /a/etc/path_to_inst я решил скопировать с /etc/path_to_inst, а он там
VS> пустой :-( Короче, я что-то не так делаю, не может быть перенос
VS> системы на другую машину НАСТОЛЬКО сложным.
Вить, ну там еще 'bootadm update-archive', update-grub и масса телодвижений.

Ты б в Интернете лучше пошаговое HOWTO поискал бы: я сам в последний раз
Солярис видел в 2010 году, так что вспоминать буду до морковкина заговения, как
там и что делается.

Hо делается без хакерства, нужно просто в правильном порядке вызвать правильные
утилиты.

Всего наилучшего,
Андрей Кольчугин.

... Хард поюзанный на гиг - "Сеагейт" аль "Вестерн Диг"...
Victor Sudakov
2016-06-10 10:55:36 UTC
Permalink
Dear Andrew,

10 Jun 16 09:16, you wrote to me:

VS>> /a/etc/path_to_inst я решил скопировать с /etc/path_to_inst, а он
VS>> там пустой :-( Короче, я что-то не так делаю, не может быть
VS>> перенос системы на другую машину НАСТОЛЬКО сложным.
AK> Вить, ну там еще 'bootadm update-archive', update-grub и масса
AK> телодвижений.

Верю, хотя и удивляюсь, как можно было такую сравнительно простую и
востребованную вещь, как перенос на другое железо, сделать настолько сложной.

AK> Ты б в Интернете лучше пошаговое HOWTO поискал бы: я сам в последний
AK> раз Солярис видел в 2010 году, так что вспоминать буду до морковкина
AK> заговения, как там и что делается.

Искал я howto, и даже спрашивал в comp.unix.solaris (в треде "Cloning
Solaris"), но как-то с этим туго, никто не подсказал.

Точнее пытались подсказать, но 1) все подсказки касались последних версий
эхотага с zfs root, archiveadm и т.п. и 2) пошаговой документации всё равно
никто не дал, хотя я ожидал RTFM в первом же письме.

AK> Hо делается без хакерства, нужно просто в правильном порядке вызвать
AK> правильные утилиты.

Я нашел в Интернете два описания проблемы, и даже с решениями, но это именно
хакерство:

https://communities.vmware.com/message/728713#728713

http://prefetch.net/blog/index.php/2007/08/18/repairing-the-solaris-dev-and-dev
ices-directories/
если вторую ссылку Дед скушает, то http://tinyurl.com/cjz8jbo

А правильного порядка не нашел. Вышеописанные ссылки конечно можно считать
пошаговым howto, но это ведь ужас-ужас-ужас.

Victor Sudakov, VAS4-RIPE, VAS47-RIPN
Andrew Kolchoogin
2016-06-10 07:40:27 UTC
Permalink
Приветствую, Victor.

В пятницу, 10 июня 2016 г. ты писал мне следующее:

AK>> Вить, ну там еще 'bootadm update-archive', update-grub и масса
AK>> телодвижений.
VS> Верю, хотя и удивляюсь, как можно было такую сравнительно простую и
VS> востребованную вещь, как перенос на другое железо, сделать настолько
VS> сложной.
Это родовая травма Intel'овского Solaris'а: ядро Соляриса не рассчитано на то,
что что-то там будет меняться, Open Firmware в Sun'ах рассказывает ядру при
загрузке все сразу и правильно.

Hикаких 'installgrub' и 'bootadm update-archive' в SPARC'овском Солярисе,
очевидно, не предусмотрено, ибо нахер не нужно -- там можно просто переставить
хард в другую машину, и, если данная версия Соляриса поддерживает аппаратно это
железо, то все заведется.

Всего наилучшего,
Андрей Кольчугин.

... ВЧК занималась контрреволюцией и саботажем...
Victor Sudakov
2016-06-10 13:11:20 UTC
Permalink
Dear Andrew,

10 Jun 16 10:40, you wrote to me:

AK>>> Вить, ну там еще 'bootadm update-archive', update-grub и масса
AK>>> телодвижений.
VS>> Верю, хотя и удивляюсь, как можно было такую сравнительно простую
VS>> и востребованную вещь, как перенос на другое железо, сделать
VS>> настолько сложной.
AK> Это родовая травма Intel'овского Solaris'а: ядро Соляриса не
AK> рассчитано на то, что что-то там будет меняться, Open Firmware в
AK> Sun'ах рассказывает ядру при загрузке все сразу и правильно.

AK> Hикаких 'installgrub' и 'bootadm update-archive' в SPARC'овском
AK> Солярисе, очевидно, не предусмотрено, ибо нахер не нужно -- там можно
AK> просто переставить хард в другую машину, и, если данная версия
AK> Соляриса поддерживает аппаратно это железо, то все заведется.

Да я знаю, у меня в начале 2000-х были несколько штук Netra, пока не умерли.

Но Solaris x86 уже не первый десяток лет существует, я помню еще версии с
отдельным /boot с загрузкой как из MS-DOS, он и то приятнее был, чем нынешняя
дурь с update-archive.

Собственно остался последний затык: как /a/devices и /a/dev наполнить
правильным содержимым, находясь в failsafe режиме.

Victor Sudakov, VAS4-RIPE, VAS47-RIPN
Andrew Kolchoogin
2016-06-10 14:28:29 UTC
Permalink
Приветствую, Victor.

В пятницу, 10 июня 2016 г. ты писал мне следующее:

VS> Собственно остался последний затык: как /a/devices и /a/dev наполнить
VS> правильным содержимым, находясь в failsafe режиме.
Вот чуть ли не "touch /.reconfigure; init 6"

Всего наилучшего,
Андрей Кольчугин.

... Господь создал людей - полковник Кольт сделал их равными
Andrew Kolchoogin
2016-06-10 14:32:37 UTC
Permalink
Приветствую, Victor.

В пятницу, 10 июня 2016 г. я писал тебе следующее:

VS>> Собственно остался последний затык: как /a/devices и /a/dev
VS>> наполнить правильным содержимым, находясь в failsafe режиме.
AK> Вот чуть ли не "touch /.reconfigure; init 6"
Hе.

Грузишься с CD ROM и монтируешь корень, к примеру, в /a

Далее:

rm -Rf /a/devices/* /a/dev/* /a/dev/.* /a/etc/path_to_inst
devfsadm -r /a -p /a/etc/path_to_inst
bootadm -r /a update-archive

Всего наилучшего,
Андрей Кольчугин.

... ВЧК занималась контрреволюцией и саботажем...
Victor Sudakov
2016-06-10 20:27:30 UTC
Permalink
Dear Andrew,

10 Jun 16 17:32, you wrote to me:

VS>>> Собственно остался последний затык: как /a/devices и /a/dev
VS>>> наполнить правильным содержимым, находясь в failsafe режиме.
AK>> Вот чуть ли не "touch /.reconfigure; init 6"
AK> Hе.

AK> Грузишься с CD ROM и монтируешь корень, к примеру, в /a

AK> Далее:

AK> rm -Rf /a/devices/* /a/dev/* /a/dev/.* /a/etc/path_to_inst
AK> devfsadm -r /a -p /a/etc/path_to_inst

"devfsadm -r /a" я уже пробовал, ничего он в /a/dev не исправляет.
Я правда перед его запуском не удалял /a/devices/* /a/dev/*, может в этом дело.
Попробую еще раз с удалением.

А ключик -p у devfsadm ты откуда взял?

Victor Sudakov, VAS4-RIPE, VAS47-RIPN
Andrew Kolchoogin
2016-06-10 16:45:48 UTC
Permalink
Приветствую, Victor.

В пятницу, 10 июня 2016 г. ты писал мне следующее:

VS> А ключик -p у devfsadm ты откуда взял?
"Спокон веку так было". (C)

Когда-то я запихивал Солярис в Xen, поэтому команды помню -- но вот в какой
последовательности...

Всего наилучшего,
Андрей Кольчугин.

... Россия - могучая гора. Hо каких же мышей она родила!
Victor Sudakov
2016-06-13 09:59:54 UTC
Permalink
Dear Andrew,

10 Jun 16 19:45, you wrote to me:

AK> В пятницу, 10 июня 2016 г. ты писал мне следующее:

VS>> А ключик -p у devfsadm ты откуда взял?
AK> "Спокон веку так было". (C)

В 10 нету. Solaris 10 5/09 s10x_u7wos_08 X86

/usr/sbin/devfsadm [-C] [-c device_class] [-i driver_name]
[ -n] [-r root_dir] [-s] [-t table_file] [-v]

AK> Когда-то я запихивал Солярис в Xen, поэтому команды помню -- но вот в
AK> какой последовательности...

И запихивание в Xen так же напоминает первобытный танец с бубном и каменными
напильниками?

Вот во FreeBSD же надо править только fstab и в исключительно редких случаях
vfs.root.mountfrom в loader.conf (как я понимаю, аналогом последнего и является
bootpath в /boot/solaris/bootenv.rc). Исключительно редких - это когда например
loader и kernel находятся не на том диске, где будет /

Но чтобы "буковки поехали", как в винде - это ни в какие ворота. А в Солярис
x86, как я теперь припоминаю, я ходил по аналогичным граблям лет 10 назад, то
ли при смене IDE контроллера, то ли при перестановке его в другой слот, то ли
даже при перевешивании диска на другой канал.

Victor Sudakov, VAS4-RIPE, VAS47-RIPN

Victor Sudakov
2016-06-10 20:26:02 UTC
Permalink
Dear Andrew,

10 Jun 16 17:28, you wrote to me:

VS>> Собственно остался последний затык: как /a/devices и /a/dev
VS>> наполнить правильным содержимым, находясь в failsafe режиме.
AK> Вот чуть ли не "touch /.reconfigure; init 6"

Не, для /reconfigure надо иметь загружаемую систему.

Victor Sudakov, VAS4-RIPE, VAS47-RIPN
Loading...