The header looks like this:#!/bin/sh -e## rc.local - executed at the end of each multiuser runlevel## Make sure that the script will exit 0 on success or any other# value on error.What is the reason for this file (it does not contain much), and what commands do you usually put in it? What is a multiuser runlevel? (I guess rc is run commands?)
Purpose and typical usage of /etc/rc.local
debian;configuration;startup
A runlevel is a state of the system, indicating whether it is in the process of booting or rebooting or shutting down, or in single-user mode, or running normally. The traditional init program handles these actions by switching to the corresponding runlevel. Under Linux, the runlevels are by convention: S while booting, 0 while shutting down, 6 while rebooting, 1 in single-user mode and 2 through 5 in normal operation. Runlevels 2 through 5 are known as multiuser runlevels since they allow multiple users to log in, unlike runlevel 1 which is intended for only the system administrator.When the runlevel changes, init runs rc scripts (on systems with a traditional init  there are alternatives, such as Upstart and Systemd). These rc scripts typically start and stop system services, and are provided by the distribution.The script /etc/rc.local is for use by the system administrator. It is traditionally executed after all the normal system services are started, at the end of the process of switching to a multiuser runlevel. You might use it to start a custom service, for example a server that's installed in /usr/local. Most installations don't need /etc/rc.local, it's provided for the minority of cases where it's needed.