Serial communication on modern Linux
- June 11, 2020
Connect to your console for troubleshooting with Tio, a Linux serial communication program.
As a systems engineer, I spend aloof time in data centers configuring servers another computer equipment. Two of the items I keep in my toolkit are an RS-232 serial-to-USB converter and a standard DB-9 serial cable. These can be indispensable when you have no other way to access a device. You may need to deploy a new router that has not yet been configured for your network. You might need to troubleshoot a firewall appliance that has become inaccessible via SSH. In a ”lights-out” environment, in particular, new servers may have a management card that needs to be initialized. A serial connection provides a direct path to a console for accomplishing these tasks.
I will use a Netgate appliance in this example. These are firewalls that have no mouse, keyboard, monitor, or other GUI capabilities. They’re generally referred to as ”headless”.
To connect with a device over serial, you need hardware that supports the RS-232 protocol. This is typically a nine-pin DB-9 serial port, often labeled serial, comm, or console. Most older computers have at least one. Most servers still have them, but most laptops and desktops don’t any longer.
Find the serial port
If your system doesn’t already have a serial port, you’ll need to use a converter like the one I mentioned. When you plug in the PL2303 converter to a USB port on your computer, the Linux kernel registers it as a USB TTY device.