Agetty 不斷終止

Agetty 不斷終止

我正在嘗試在 CentOS 6.2 上設定串行控制台。

我已經能夠獲得登入控制台,但如果我嘗試啟用 grub 並且內核日誌顯示在序列埠上,則 grub 每隔幾秒鐘就會終止。

這是我目前的配置:

/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

console請注意內核命令開關末端的兩個標誌 ( console=tty0 console=ttyS1,19200n8)。如果它們被刪除,問題就不會再出現,但我也會遺失 grub 和串列控制台中的啟動日誌。

這是來自的範例/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

注意:我看到其他人在他們的日誌中收到“重生太快”訊息,但這是不是這裡的情況。

答案1

試著找出錯誤發生的位置。

除 grub 配置外,在所有地方停用串行。啟動時可以在串列埠上看到 grub 選單嗎?

在沒有任何串行控制台選項的情況下啟動並嘗試啟動agetty /dev/ttyS0 115200 -a root。這個命令會失敗嗎?該指令運行時可以串口登入嗎?

然後嘗試相同的測試agetty /dev/ttyS0 115200 vt100-nav

答案2

正如我在其中一條評論中提到的:

事實證明,您不需要添加配置來/etc/init/serial-ttyS1.conf獲取 shell。

將參數傳遞console給核心(例如,console=ttyS1,19200n8)就足夠了。

所以我猜測有兩個進程不斷嘗試啟動agetty(也許互相殺死?),這導致它不斷失敗。

相關內容