Platform Notes (GNU/Linux)
Contents
Port Status
The GNU/Linux port is a Tier 1 Port
Testing Details
We build and test the GNU/Linux port on a system with the following specifications:
- amd64-based host
- Arch Linux running the 6.1.39-1-lts Linux kernel
- GNU gcc v13.1.1
- GNU autoconf 2.71
- GNU automake 1.16.5
Required Kernel Tuning
For the default daemon configuration, you will need a kernel kernel.shmmax parameter of at least 6000000.
To check the current value of this kernel parameter, enter the following command:
$ sysctl kernel.shmmax
If the reported value is less than 6000000, continue with the following procedure. Otherwise, your system already meets the requirements for running FreeM in the default configuration.
To apply an shm_max of 6000000, you will need to do the following:
- Create a file called 10-shmmax.conf in /etc/sysctl.d, containing the following information:
kernel.shmmax = 6000000
- Reboot your system
Starting the FreeM Daemon Automatically
systemd
To start the FreeM daemon automatically with systemd, you will need to first decide if you want the daemon to run as a system-level service, or as a user service under your normal user account.
System-Level Service
- Copy 'scripts/systemd/system/freem.service' from the FreeM distribution to '/etc/systemd/system'
- Replace the '<USER>' and '<GROUP>' values in the copied file with the user and group under which you want FreeM to run
- Type the following commands:
$ sudo systemctl daemon-reload $ sudo systemctl enable freem $ sudo systemctl start freem
- You may then check the status of the daemon with the following command:
$ sudo systemctl status freem
If the third line of output contains the text 'active (running)', the service has been successfully configured and started.
User-Level Service
- Copy 'scripts/systemd/user/freem.service' from the FreeM distribution to '$HOME/.config/systemd/user'
- Type the following commands:
$ systemctl --user enable freem $ systemctl --user start freem
$ You may then check the status of the daemon with the following command:
$ sudo systemctl --user status freem
If the third line of output contains the text 'active (running)', the service has been successfully configured and started.
sysvinit
Coming soon.