Я использую версию SmartOS joyent_20130405T010449Z с загрузочного USB. Короче говоря, пароль root утерян на века.

Я попробовал "root" в качестве пароля, не повезло. Я не пробовал пароль, не работал. Я попробовал пароль в платформе /root.password на флешке, все равно не повезло. Пароль - это что-то другое, и я не могу его угадать.

Я могу войти, выбрав опцию «Live (noinstall)» в меню grub (в которой используется опция ядра noimport=true ) и введя "root" в качестве пароля. Затем я могу успешно сгенерировать хеш нового пароля, запустив /usr/lib/cryptpass newpassword , но после этого неясно, что делать.

Я пытался следовать инструкциям, расположенным здесь, но они, кажется, не относятся ко мне:

Когда я загружаю "Live (noinstall)", точка монтирования /usbkey , а редактирование /etc/shadow не имеет постоянных эффектов (сбрасывается при перезагрузке).

Я попытался отредактировать записи в файле boot/grub/menu.lst на флешке usb, переопределив опцию ядра root_shadow=[hash] для вывода /usr/lib/cryptpass newpassword , но затем перезагрузился и попытался войти с помощью "newpassword" по-прежнему не удается.

В качестве последнего средства я могу рассмотреть возможность "переустановки" SmartOS путем замены нового USB-ключа на более новую версию. Что произойдет с моим пулом ZFS и моими виртуальными машинами, если я это сделаю?

1 ответ1

2

Инструкции здесь верны, но они неполны в контексте загрузки в режиме noimport. usbkey - это файловая система в "зонах" zpool, и при загрузке в режиме noimport она должна быть смонтирована перед сбросом пароля. Чтобы смонтировать в режиме noimport:

Подтвердите, что "зоны" zpool существуют:

$ zpool import
  pool: zones
    id: ##########
 state: ONLINE
 - snip -

Импортируйте это:

$ zpool import zones

Убедитесь, что файловая система zone /usbkey существует и является "устаревшей" точкой монтирования (это означает, что она монтируется с помощью mount а не zfs mount):

$ zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT
- snip -
zones/usbkey                 ###      -   ####  legacy
- snip -

Смонтировать это:

$ mkdir /usbkey
$ mount -F zfs zones/usbkey /usbkey

Затем следуйте инструкциям по сбросу пароля:

$ umount /etc/shadow
$ cp /usbkey/shadow /etc/shadow
$ passwd root
$ cp /etc/shadow /usbkey/shadow

И точно так же, смена пароля будет сохранена при нормальной перезагрузке.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .