Como redefinir uma senha de root perdida no SmartOS

0

Estou executando a versão SmartOS joyent_20130405T010449Z de um USB inicializável. Resumindo, a senha do root é perdida para as idades.

Eu tentei "root" como a senha, sem sorte. Eu tentei sem senha, não funcionou. Eu tentei a senha na plataforma / root.password no pendrive, ainda sem sorte. A senha é outra coisa e não posso adivinhar isso.

Eu posso fazer o login escolhendo a opção "Live (noinstall)" no menu grub (que usa a opção noimport=true kernel) e digitando "root" como senha. Em seguida, posso gerar com êxito um novo hash de senha executando /usr/lib/cryptpass newpassword , mas depois disso não fica claro o que fazer.

Eu tentei seguir as instruções localizadas aqui , mas eles não parecem se aplicar a mim:

Quando inicializo o "Live (noinstall)", não há /usbkey ponto de montagem, e a edição /etc/shadow não tem efeitos persistentes (ele é redefinido quando eu reinicializo).

Eu tentei editar as entradas em boot/grub/menu.lst no pendrive, substituindo a opção root_shadow=[hash] kernel pela saída de /usr/lib/cryptpass newpassword , mas a reinicialização e a tentativa de login com "newpassword" ainda falharam.

Como último recurso, posso considerar "reinstalar" o SmartOS trocando uma nova chave USB por uma nova versão. O que acontecerá com meu pool do ZFS e minhas VMs se eu fizer isso?

    
por James Bailey 29.09.2015 / 20:19

1 resposta

2

As instruções aqui estão corretas, mas eles estão incompletos no contexto de inicialização no modo noimport. usbkey é um sistema de arquivos no zpool "zones" e, ao inicializar no modo noimport, deve ser montado antes de redefinir a senha. Para montar no modo noimport:

Confirme se existe zpool "zones":

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

Importá-lo:

$ zpool import zones

Confirme se o sistema de arquivos zones / usbkey existe e é um ponto de montagem "legado" (o que significa que ele é montado com mount e não zfs mount ):

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

Monte:

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

Em seguida, siga as instruções de redefinição de senha :

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

E, assim, a alteração da senha será mantida quando você reinicializar normalmente.

    
por 02.10.2015 / 02:46