I'm running Proxmox 6.4 with kernel 5.4.103-1-pve (I've already asked this question in their forums with no luck). My motherboard has a COM header, so I recently got the equipment I needed to hook it up and manage via serial. However, I'm unable to use serial after the system is booted. The port is at
ttyS0
. I set it up in GRUB (note that my setup is serial-only until SSH comes up, the only GPU in the system is not actually used by GRUB or Linux, only for passthrough):
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200"
And then I set it up for Linux, by adding console=ttyS0,115200
to the kernel command line. Now, when I boot the host, I first see the GRUB menu, and can interact with it fully, and then I see the normal loading initramfs messages, followed by most of the normal Linux boot process. However, once it gets to the "Login Service", there is no longer any output and I cannot interact with the terminal:
...
Starting Proxmox VE Login Banner...
Starting Enable support fo…l executable binary formats...
[ OK ] Reached target ZFS volumes are ready.
[ OK ] Started Preprocess NFS configuration.
[ OK ] Started Set console font and keymap.
[ OK ] Started Create Volatile Files and Directories.
[ OK ] Started Load AppArmor profiles.
[ OK ] Started Proxmox VE firewall logger.
Mounting Arbitrary Executable File Formats File System...
Starting Raise network interfaces...
[ 17.623601] Generic FE-GE Realtek PHY r8169-800:00: attached PHY driver [Generic FE-GE Realtek PHY] (mii_bus:phy_addr=r8169-800:00, irq=IGNORE)
Starting Network Time Synchronization...
Starting Update UTMP about System Boot/Shutdown...
Starting RPC bind portmap service...
[ OK ] Reached target NFS client services.
[ OK ] Started Proxmox VE Login Banner.
[ OK ] Started Commit Proxmox VE network changes.
[ OK 17.739718] r8169 0000:08:00.0 enp8s0: Link is Down
0m] Mounted Arbitrary Executable File Formats File System.
[ OK ] Started 17.760897] 8021q: 802.1Q VLAN Support v1.8
1;39mRPC bind portmap service.
[ OK ] Started Network Time Synchronization.
[ OK ] Started Enable support for…nal executable binary formats.
[ OK ] Reached target System Time Synchronized.
[ OK ] Reached target RPC Port Mapper.
[ OK ] Started Update UTMP about System Boot/Shutdown.
[ OK ] Reached target System Initialization.
[ OK ] Listening on D-Bus System Message Bus Socket.
[ OK ] Reached target Sockets.
[ OK ] Reached target Basic System.
Starting Proxmox VE LXC Syscall Daemon...
[ OK ] Started D-Bus System Message Bus.
Starting PVE Qemu Event Daemon...
[ OK ] Started ZFS Event Daemon (zed).
Starting System Logging Service...
[ OK ] Started Daily apt download activities.
[ OK ] Started Daily apt upgrade and clean activities.
Starting LSB: The monitor UPS software....
[ OK ] Started Daily rotation of log files.
[ OK ] Started Daily man-db regeneration.
Starting Login Service...
[ OK ] Started Proxmox VE [ 18.118065] softdog: initialized. soft_noboot=0 soft_margin=60 sec soft_panic=0 (nowayout=0)
watchdog multiplexer.
Starting Kernel Samepage Merging (KSM) Tuning Daemon...
[ OK ] Started Daily Cleanup of Temporary Directories.
[ OK ] Started Daily PVE download activities.
Starting Self Monitoring a…g Technology (SMART) Daemon...
Starting ZFS file system shares...
[ OK ] Started Proxmox VE replication runner.
[ OK ] Reached target Timers.
[ OK ] Started FUSE filesy[ 18.258047] new mount options do not match the existing superblock, will be ignored
stem for LXC.
Starting Initialize hardware monitoring sensors...
[ OK ] Started Proxmox VE LXC Syscall Daemon.
[ OK ] Started System Logging Service.
[ OK ] Started PVE Qemu Event Daemon.
[ OK ] Started Kernel Samepage Merging (KSM) Tuning Daemon.
[ OK ] Started ZFS file system shares.
[ OK ] Reached target ZFS startup target.
[ OK ] Started Initialize hardware monitoring sensors.
[ OK ] Started Login Service.
If I SSH in, I can see that the serial-getty@ttyS0
service is running, and its journal shows zero errors or warnings. Similarly, dmesg
and the syslog have no errors about this. Even if I restart the service, the serial terminal still doesn't work. If I run stty -a -F /dev/ttyS0
, I can see that for some reason, the baud rate is set to 2400, even though it was correct during boot. I can manually set it back to 115200 baud, but if I do that and then type anything on the client side of the terminal, it immediately reverts to 2400 after showing that character. However, if I manually reset it and then restart serial-getty@ttyS0
, it maintains 115200 baud and remains interactive.
I've been unable to find a solution anywhere on the internet, perhaps my Google-fu is not strong enough but it's difficult to find a similar issue where it works partially, unlike what most people experience, where it doesn't work at all.
**EDIT**:
This is now fixed, thanks to telcoM. For reference, the default ExecStart
line was:
ExecStart=-/sbin/agetty -o '-p -- \\u' --keep-baud 115200,38400,9600 %I $TERM
So running systemctl edit serial-getty@ttyS0
and adding the following lines fixed it:
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -- \\u' 115200 %I $TERM
Asked by Daniel Hellstern
(3 rep)
May 17, 2021, 11:53 PM
Last activity: May 19, 2021, 07:25 AM
Last activity: May 19, 2021, 07:25 AM