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

Single mode в древней Gentoo

 ,


0

1

Достался в наследство древний сервак на Gentoo, если я правильно понял, на 3-ем ядре. Паролей, понятное дело, ни у кого нет. Пробовал перезегрузить в single mode чтобы сменить пароль - фиг там. Ни init=/bin/bash, ни softlevel=single, ни ‘S’, ни single, ни init=/bin/bb не сработали. Подскажите - как его загнать в single mode?

Update: загрузчик grub 0.97



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

Мне кажется, тут проблема с передачей параметров. Потому что если ядро действительно получило init=, то оно либо его успешно запустит, либо свалится с паникой.

Ну и вообще, просто сделай chroot и меняй пароли.

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

Сделал бы, если бы мог. Slax диски нормально не видит. lsblk утверждает что в системе два диска, но fdisk говорит что нет таких. Что там ещё есть живого из live-cd попробовать, чтобы с PERC’ами дружило? Внешняя корзина то ли отвалилась, то ли все диски сдохли. Два диска на внутреннем контроллере тоже хз что там. Один вроде рабочий, система запускается. А второй непонятно - iDRAC утверждает что диск жив, а массив в rebuild, хотя ему никто ничего плохого не делал.

Что там может быть не так с параметрами? Стёр всё что связано с видео, оставил ядро, initramfs, добавил в конце init=/bin/bash и фиг-вам.

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

Лишнего диска под рукой, куда можно воткнуть другую систему нет. Но это решаемо, если не получиться ничего с single mode. При загрузке со Slaх lsblk показывает два диска, вместо одного виртуального, отданного PERC’ом, и при этом не видны разделы. fdisk утверждает что нет таких дисков в системе. Подмонтировать, соответственно, нечего. Если известен какой-то live-cd который понимает PERC H310mini - буду благодарен за название.

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

lsblk утверждает что в системе два диска, но fdisk говорит что нет таких.

А сколько реально дисков?

Что там ещё есть живого из live-cd попробовать, чтобы с PERC’ами дружило?

Попробуйте копейку. Но не нулевая вероятность, что у железки свои дровишки, в этом случае придется попрыгать.

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

Но это решаемо, если не получиться ничего с single mode.

Гуглите как передать параметры загрузки у используемого вами загрузчика, а то вы кроме «древней Gentoo» ничего не написали.

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

Два на хост контроллере H310mini в RAID1, и 6 в корзине на H810 (или как он там). 6 вообще показывают что они failed, при загрузке ошибки про корзину, и что-то там enclosure unstable.

Вот потому и хотел сначала попробовать single mode, чтобы без танцев. Я ж помню там у 310mini целое приключение. Он, по моему, без дров не распознаётся, потому и вижу два диска.

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

Два на хост контроллере H310mini в RAID1, и 6 в корзине на H810 (или как он там). 6 вообще показывают что они failed

...

Он, по моему, без дров не распознаётся, потому и вижу два диска.

Офигеть логика.

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

Так уже гуглил. Написал же список всего что перепробовал. Там Grub 0.97, гугл забит тем что я уже попробовал. Вот решил спросить тут - может у гентушников своя магия какая-то, отдельная.

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

Из-за информации и вожусь. Сервер под списание, сервис что на нём крутился - под замену, но надо вытащить всё что можно, включая конфиги. Чтобы на новой системе повторить максимально близко к тому что было.

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

именно ‘1’ не пробовал. У гентушников на форуме указано что должно работать и softlevel=single и 1. Single не сработал, и я прошёл мимо, на другой форум, а про ‘1’ забыл. Сейчас попробую.

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

Ну если есть bash в системе - то какая разница кого ядро запустит в качестве init’а? До сих пор /bin/bash прекрасно работал на других системах. Если бы bash’a небыло - должно было вывалиться с ошибкой.

фиг-вам заключается в том что в single mode не запускается. Система загружается в init3 до приглашения ввести логин.

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

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

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

При удалении параметров связанных с видео - реагирует, разрешение меняется. Запрещена ли подмена init’a - не знаю. На уровни загрузки передаваемые посредством параметров тоже не реагирует.

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

Не, такой опции нет. Но я победил. Ну точнее выждал и оно решилось само

Я был неправ и зря грешил на PERC H310mini. Он честным образом отдаёт в систему один диск, собранный из двух в RAID1. Он закончил ребилдить массив и в загруженном Slax’e честным образом отдал мне диск со всеми разделами. Ну а дальше уже chroot и вот оно счастье. Почему Slax изначально не видел разделы, во время ребилда - я хз. Система при этом грузилaсь во время этого самого ребилда. Второй диск который ранее видел в Slax’e - это дополнительная корзина

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

там ещё есть живого из live-cd попробовать,

ИМХО, проще собирать свои ядра для live-cd, драйвер в ядре для этих PERC H310mini назывался megaraid_sas и, вполне, имеет смысл смотреть ядрах 4.x, а то в 5.x уже могли что сломать, железо древнее, тестеровщиков для новых ядер не особо много.

lsblk утверждает что в системе два диска, но fdisk говорит что нет таких.

″cat /proc/partition″ там будет всё, что увидело ядро. И dmesg почитать, что ядро пишет, про диски, контроллеры.

А у загрузку той системы можно на видео снять и почитать, что там в начале про initrd и пр. пишется.

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

Если бы bash’a небыло - должно было вывалиться с ошибкой.

Я же не штатный телепат угадывать что ты там зашифровал под «фиг-вам» может ошибку что инит не найден?

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

то оно либо его успешно запустит, либо свалится с паникой.

Это в новых ядрах, там такой код:

	if (ramdisk_execute_command) {
		ret = run_init_process(ramdisk_execute_command);
		if (!ret)
			return 0;
		pr_err("Failed to execute %s (error %d)\n",
		       ramdisk_execute_command, ret);
	}
	if (execute_command) {
		ret = run_init_process(execute_command);
		if (!ret)
			return 0;
		panic("Requested init %s failed (error %d).",
		      execute_command, ret);
	}
	if (!try_to_run_init_process("/sbin/init") ||
	    !try_to_run_init_process("/etc/init") ||
	    !try_to_run_init_process("/bin/init") ||
	    !try_to_run_init_process("/bin/sh"))
		return 0;

	panic("No working init found.  Try passing init= option to kernel. "	      
То есть, не выполнение указаного в rdinit=... даёт просто сообщение, а в init=... даёт панику.

А, допустим, в 3.9.11 такой код:

	if (ramdisk_execute_command) {
		if (!run_init_process(ramdisk_execute_command))
			return 0;
		printk(KERN_WARNING "Failed to execute %s\n",
				ramdisk_execute_command);
	}
	if (execute_command) {
		if (!run_init_process(execute_command))
			return 0;
		printk(KERN_WARNING "Failed to execute %s.  Attempting "
					"defaults...\n", execute_command);
	}
	if (!run_init_process("/sbin/init") ||
	    !run_init_process("/etc/init") ||
	    !run_init_process("/bin/init") ||
	    !run_init_process("/bin/sh"))
		return 0;

	panic("No init found.  Try passing init= option to kernel. "
Что в rdinit=..., что init=... может быть указан не существующий бинарник и будет только KERN_WARNING и попытка запустить /sbin/init и пр. по очереди.

mky ★★★★★
()