Estou tentando configurar o console serial no CentOS 6.2.
Consegui obter um console de login, mas se eu tentar ativar o grub e o log do kernel aparecer na porta serial, o grub continuará sendo encerrado a cada poucos segundos.
Esta é minha configuração atual:
/etc/init/serial-ttyS1.conf
:
# This service maintains a getty on /dev/ttyS1.
start on stopped rc RUNLEVEL=[2345]
stop on starting runlevel [016]
respawn
exec /sbin/agetty /dev/ttyS1 115200 vt100-nav
/boot/grub/grub.conf
:
#boot=/dev/sda
default=0
timeout=5
#splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
serial --unit=1 --speed=19200
terminal --timeout=8 console serial
title CentOS (2.6.32-220.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 rhgb crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=jp106 rd_LVM_LV=VolGroup/lv_root quiet rd_NO_DM console=tty0 console=ttyS1,19200n8
initrd /initramfs-2.6.32-220.el6.x86_64.img
Observe os dois console
sinalizadores no final das opções de comando do kernel ( console=tty0 console=ttyS1,19200n8
). Se eles forem removidos, o problema não se manifesta mais, mas também perco o grub e o log de boot no console serial.
Aqui está uma amostra de /var/log/messages
:
Aug 27 14:14:24 ovesh-centos-62 init: serial-ttyS1 main process ended, respawning
Aug 27 14:14:25 ovesh-centos-62 init: serial (ttyS1) main process (1614) terminated with status 1
Aug 27 14:14:25 ovesh-centos-62 init: serial (ttyS1) main process ended, respawning
Aug 27 14:14:26 ovesh-centos-62 init: serial (ttyS1) main process ended, respawning
Aug 27 14:15:25 ovesh-centos-62 init: serial-ttyS1 main process ended, respawning
Aug 27 14:15:35 ovesh-centos-62 init: serial (ttyS1) main process (1731) terminated with status 1
Aug 27 14:15:35 ovesh-centos-62 init: serial (ttyS1) main process ended, respawning
NOTA: Já vi outras pessoas recebendo mensagens de "ressurgimento muito rápido" em seus logs, mas isso énãoo caso aqui.
Responder1
Tente descobrir onde ocorre o erro.
Desative o serial em todos os lugares, exceto na configuração do grub. Você consegue ver o menu grub na porta serial durante a inicialização?
Inicialize sem nenhuma opção de console serial e tente iniciar o agetty /dev/ttyS0 115200 -a root
. Este comando falha? Você consegue fazer login na porta serial quando este comando está em execução?
Em seguida, tente o mesmo teste comagetty /dev/ttyS0 115200 vt100-nav
Responder2
Como mencionei em um dos comentários:
Acontece que você não precisa adicionar a configuração para /etc/init/serial-ttyS1.conf
obter um shell.
Passar um console
argumento para o kernel (por exemplo, console=ttyS1,19200n8
) é suficiente.
Então, suponho que havia dois processos constantemente tentando iniciar o agetty (talvez matando um ao outro?), o que fazia com que ele continuasse falhando.