Serial Console HowTo
Contents
Overview
Sometimes it is handy to be able to redirect a TTY Console to a serial port. One such example might be that your server is headless (No VGA, Keyboard, or Monitor) The info on this page will help you enable console access via a serial port.
Instructions
To redirect a Linux Console to a serial port edit /etc/inittab and add this line at the end of the '# Run gettys in standard runlevels' section.
S0:2345:respawn /usr/sbin/agetty -h ttyS0 38400 vt100
When done issue this command to make the changes take effect:
init q
Explanation
TTY-ID:RUN-LEVELS:respawn COMMAND -SWITCHES PORT TERMINAL-EMULATION (For greater detail on inittab or agetty see the References Section below)
General Notes
1) In this HowTo I used 'agetty' but there are other getty packages such as 'getty', 'mgetty', and 'mingetty' use whichever is the default on your distribution. If you use one of the other getty packages keep in mind that the syntax will most likely be different.
2) ttyS0 = COM1, ttyS1 = COM2 etc...
Modern Distros using Systemd
If you're on a distro that uses systemd, here is another method (in this case Ubuntu 22.04):
cat <<EOF > /lib/systemd/system/ttyS0.service [Unit] Description=Serial Console Service [Service] ExecStart=/sbin/getty -L 115200 ttyS0 vt102 Restart=always [Install] WantedBy=multi-user.target EOF
Then reload, enable, and start the service
systemctl daemon-reload systemctl enable ttyS0 systemctl start ttyS0
References
Linux Serial Console HowTo
Linux Journal - Serial as a Console
inittab Man Pages
agetty Man Pages
Serial Console connection on Ubuntu 16.04 or higher