Ok, acabei por recuperar o que queria da VM, por isso, para a posteridade, eis o que fiz:
Primeiro, atualizei o SmartOS. Eu estava hesitante no começo, temendo a perda de dados, mas a atualização foi totalmente indolor: coloque uma nova versão em um novo pendrive, desligue, troque os bastões e reinicie.
Após a atualização, vmadm console
e ssh
ainda travariam quando se conectarem à VM, então a introspecção chave (eu não sabia disso antes) era conectar via VNC:
root@smartos $ vmadm info [UUID] vnc
{
"vnc": {
"host": "192.168.1.7",
"port": 64762,
"display": 58862
}
}
me@anotherMachine $ xtightvncviewer 192.168.1.7::64762
Lá, o problema ficou imediatamente aparente: a VM ficou presa no menu de inicialização, aguardando a seleção de uma opção de inicialização. Selecionei a opção padrão e, pronto, a VM ficou perfeitamente saudável.
Houve um problema: presumivelmente, quando atualizei o SmartOS, perdi a NIC "externa", de modo que a VM surgiu sem um canal para o mundo externo. Eu tive que editar manualmente /usbkey/config
no SmartOS e adicionar essas linhas, que estavam faltando:
external_nic=[MAC address]
external0_ip=192.168.1.20
external0_netmask=255.255.255.0
external0_gateway=192.168.1.1
e, em seguida, adicione a NIC externa à VM:
root@smartos $ cat add_nic.json
{
"add_nics": [
{
"physical": "net1",
"index": 1,
"nic_tag": "external",
"mac": "[MAC address]",
"ip": "192.168.1.8",
"netmask": "255.255.255.0",
"gateway": "192.168.1.1"
}
]
}
root@smartos $ cat add_nic.json | vmadm update [UUID]
Eu tive que reiniciar o SmartOS para pegar a alteração de configuração e, em seguida, a VM criou uma interface de rede.
Advertência: vmadm console
ainda não funcionará, por algum motivo; ainda paira indefinidamente. No entanto, ssh steve
funciona de dentro do SmartOS e eu posso ssh para o endereço IP de outras máquinas na minha rede.