Estou usando o grub2 no CentOS 7. Gostaria de saber se é possível exibir a saída para serial (ttyS0) e console (tty1) quando tento inicializar no modo de usuário único. O objetivo final é ter uma entrada de item de menu grub "single user" permanente que eu possa selecionar para inicializar e eu posso estar em serial ou eu posso estar no console.
A exibição da saída para console e serial simultaneamente funciona quando o sistema é inicializado em condições 'normais'. Ou seja, apenas uma linha de inicialização do kernel linux padrão que o grub2 geraria. Meu arquivo /etc/default/grub
se parece com:
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console serial"
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
GRUB_CMDLINE_LINUX="rd_NO_LUKS rd_NO_LVM rd_NO_DM crashkernel=auto rhgb quiet net.ifnames=0 biosdevname=0"
GRUB_CMDLINE_LINUX_DEFAULT="console=tty1 console=ttyS0,115200"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_LINUX_LABLE=true
Depois de executar grub2-mkconfig
, minha linha grub "linux16" se parece com:
linux16 /vmlinuz-3.10.0-693.2.2.el7.x86_64 root=UUID=ea3ace60-3b6f-4be1-beaa-fcab95e66bb1 ro rd_NO_LUKS rd_NO_LVM rd_NO_DM crashkernel=auto rhgb quiet console=tty1 console=ttyS0,115200
O parâmetro do kernel que me leva a um shell sem exigir uma senha é: rd.break
(parece que há muitas maneiras de inicializar no modo de usuário único, então escolhi este, mas posso ser convencido a usar outro método) .
Então, se eu inicializar o sistema usando
linux16 /vmlinuz-3.10.0-693.2.2.el7.x86_64 root=UUID=ea3ace60-3b6f-4be1-beaa-fcab95e66bb1 ro rd_NO_LUKS rd_NO_LVM rd_NO_DM crashkernel=auto rhgb quiet console=tty1 console=ttyS0,115200 rd.break
Eu chego a um prompt do shell, mas apenas por serial.
Eu obtive o modo de usuário único para exibir em tty1 (colocando console=tty1
no final da linha) e não serial, mas gostaria de ter os dois.
Isso é possível? Qual combinação de parâmetros do kernel funcionaria?
(Se você tiver documentos detalhados explicando porque isso não é possível, eu irei vê-los. Eu só posso imaginar que o modo de usuário único só inicia o mínimo e isso inclui terminais virtuais ???)