Preinstallation tasks

September 3, 2023 by Roberto Puzzanghera 0 comments

Before we start let's see how to prepare our machine for the installation. What follows is mostly a collection of hints that I extracted from the comments, so feel free to contribute.

On Debian 11, you may have to install at least these packages:

apt install build-essential autoconf automake libmariadb-dev default-libmysqlclient-dev

You can decide to install a wider set of packages, if your installation doesn't provide the webserver and the database:

apt install sudo git autoconf automake build-essential libssl-dev libmariadb-dev default-libmysqlclient-dev mariadb-server \ 
libev-dev unzip help2man net-tools apache2 python-dev-is-python3 fcgiwrap apache2-utils libnet-ssleay-perl php php-fpm php-zip

This is the list of packages to install on Ubuntu 22.04:

apt install build-essential autoconf automake libmariadb-dev libmariadb-dev-compat wget man help2man unzip psmisc libexpat-dev

Installing rc.local as a systemd service

In the following guide, our services (not only qmail) will be launched at boot time via rc.local, which is dismissed on a systemd OS. So let's create a new rc.local executable and define it as a systemd service.

Create rc.local and make it executable:

cat > /etc/rc.local << __EOF__ 
#!/bin/bash -e 

__EOF__
chmod +x /etc/rc.local

Create the systemd service:

cat > /etc/systemd/system/rc-local.service << __EOF__ 
[Unit] 
Description=/etc/rc.local 
ConditionPathExists=/etc/rc.local 

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

[Install] 
WantedBy=multi-user.target 
__EOF__

Enable and start:

systemctl enable rc-local 
systemctl start  rc-local

Add a comment