Getting /etc/rc.local file to work on Debian 9 (Stretch)

Posted on 05-09-2018 by Nadir Latif

Debian Stretch uses the rc.local service for executing commands on system startup. To use this service we need to run the following commands:


// if the /etc/systemd/system/rc-local.service does not exist, then it should be created with following contents:

sudo vi /etc/systemd/system/rc-local.service

[Unit]
 Description=/etc/rc.local Compatibility
 ConditionPathExists=/etc/rc.local

[Service]
 Type=forking
 ExecStart=/etc/rc.local start
 TimeoutSec=0
 StandardOutput=tty
 RemainAfterExit=yes
 SysVStartPriority=99

[Install]
 WantedBy=multi-user.target

sudo chmod +x /etc/systemd/system/rc-local.service // give executable permissions to the /etc/systemd/system/rc-local.service file
sudo chmod +x /etc/rc.local // give executable permissions to the /etc/rc.local file
sudo systemctl enable rc-local // enable the rc-local service to start on boot
sudo systemctl start rc-local.service // start the rc-local service
sudo systemctl status rc-local.service // check the status of the rc-local service

If the rc.local file does not exit, then create it with the following contents:


#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

exit 0

See the discussion How to Enable /etc/rc.local with Systemd for more information on getting /etc/rc.local to work on Debian 9


Leave a Comment:

Search