Replacing rc.local and using systemd

11 min read

SYSTEMD

Sean Conway is struggling with change – specifically, what system administration knowledge to keep and what to throw away.

When was the last time you changed? Okay, that question was pretty ambiguous. Let’s try again. As a systems administrator, you need to decide what knowledge is worth keeping and what force or energy you need to replace old knowledge? For you as a senior administrator, with years of support knowledge for systems that are still in service, having to decide what knowledge stays and what goes it can be extremely difficult.

If you’ve been using Raspberry Pi’s single board computers since they were first introduced in 2012, then change should come as no surprise. The singleboard computer hardware has gone through several revisions as it offers more and more features. If you’ve been using the Raspbian operating system (OS), new releases have brought in their changes. In 2022, the OS changed its name to Raspberry Pi OS. Under the new name, it also released a beta 64-bit version.

Operating system upgrades resolve known problems, improve existing offerings or add new features or enhancements. Release notes are an extremely important piece of documentation. When upgrades make changes that render old knowledge obsolete, it’s important for users to gain the new knowledge before it’s needed.

Let’s look at two changes that affect your ability to administer your Raspberry Pi. The aim is not to argue the merits of the changes, but to raise awareness so your knowledge can be updated, hopefully minimising the impact. The first is the Advanced User Options added to the Raspberry Pi Imager software and the second is changes to the Raspberry Pi OS that removes support for /etc/rc.local.

If Raspberry Pi OS is selected then the gear icon will appear.
Password change will be forced if either Enable SSH or Set Username is selected.

A new imager

Are you an administrator who installs headless (in other words, no attached keyboard, video monitor or mouse) Raspberry Pis? Any modification, additions or deletions to software or configuration changes to the OS are achieved through a console via some type of connection. If the connection is wireless and the communication protocol is SSH, then the services would need to be enabled before the operating system starts or there is no connection.

To enable the services, change the operating system configuration. Wireless network support and enabling SSH are two services that can be enabled by installing specific configuration files in the /boot directory of the SD card before the first boot. This tells the OS, “Hey I want these services available on the first boot.��