Capturar texto do console serial de um convidado do Hyper-V

1

Eu tenho um convidado do Hyper-V executando o CentOS 7. Quando o convidado entra em pânico e imprime uma mensagem de Oops do kernel, é possível capturar o texto gravado no console? Observe que a mensagem não é gravada no dmesg e, portanto, não pode ser recuperada na próxima reinicialização.

    
por ctuffli 05.12.2017 / 01:50

1 resposta

0

Para adicionar uma porta serial a uma VM, crie um (ou mais) pipes nomeados no PowerShell. Observe que o PowerShell deve ser "executado como administrador" para que isso funcione. O exemplo aqui usa uma VM chamada dv0 .

PS C:\WINDOWS\system32> Get-VMComPort -VMName dv0

VMName Name  Path
------ ----  ----
dv0    COM 1
dv0    COM 2

PS C:\WINDOWS\system32> Set-VMComPort -VMName dv0 -Path \.\pipe\dv0-com1 -Number 1
PS C:\WINDOWS\system32> Get-VMComPort -VMName dv0

VMName Name  Path
------ ----  ----
dv0    COM 1 \.\pipe\dv0-com1
dv0    COM 2

Na VM do Linux, adicione a configuração do console por meio de COM1 (a.k.a. ttyS0 ):

[root@dv0 ~]# grubby --args="console=tty0 console=ttyS0=115200" --update-kernel 'grubby --default-kernel'

PuTTY pode capturar a saída do pipe nomeado. Nas opções de sessão, use Serial para o destino, \.\pipe\dv0-com1 para a linha Serial e 115200 para a Velocidade para corresponder às configurações do console do Linux. Como os pipes nomeados são criados como Administrador, o PuTTY também deve ser "executado como administrador".

    
por 11.12.2017 / 23:53