=== Login prompt when connecting USB null modem cable ===
File: ///etc/udev/rules.d/99-ttyusb.rules//
KERNEL=="ttyUSB0", ACTION=="add",\
PROGRAM="/bin/systemctl start usb-serial-ttyUSB0.service"
File: ///etc/systemd/system/usb-serial-ttyUSB0.service//
[Unit]
BindTo=/dev/ttyUSB0
After=/dev/ttyUSB0.device
[Service]
Type=oneshot
TimeoutStartSec=300
ExecStart=/sbin/getty -L ttyUSB0 115200 vt100
Note: journalctl reports an error when unplugging the USB device. But it doesn't seem to be a problem.
=== Disable WIFI and Blutooth ===
to disable onboard WiFi and BT on Pi3 add the following to file: ///boot/config.txt//
dtoverlay=pi3-disable-wifi
dtoverlay=pi3-disable-bt
For pi4 you can use
dtoverlay=disable-wifi
dtoverlay=disable-bt
=== Disable IPv6 ===
to disable IPv6 add the following to file: ///boot/config.txt//
ipv6.disable=1
=== Reduce write IO to SD card ===
Albeit there are different approaches to this I typically start by disabling logging to disk.
First disable rsyslogd
systemctl disable rsyslog
Then instruct journalctl to store it's log in volatile memory (ram)
Edit file: ///etc/systemd/journald.conf// and change the line
#Storage=auto
to
Storage=volatile
Reboot for changes to take effect.
=== Check CPU temperature ===
vcgencmd measure_temp
=== Static IP address ===
Edit the file: ///etc/dhcpcd/dhcpcd.conf//
# Example static IP configuration:
interface eth0
static ip_address=192.168.0.10/24
static ip6_address=fd51:42f8:caae:d92e::ff/64
static routers=192.168.0.1
static domain_name_servers=192.168.0.1 8.8.8.8 fd51:42f8:caae:d92e::1
ipv6 stuff is not necessary and can be omitted.
Static IP can also be setup in ///etc/network/inerfaces.d/eth0// as described in [[Network:Network and IPtables]] Ubuntu section.
Then ///etc/dhcpcd.conf// needs the line
denyinterfaces eth0
=== Enable Power Button ===
to enable a power button connected between GND and GPIO3 add the following to file: ///boot/config.txt//
dtoverlay=gpio.shutdown