Platform Notes (GNU/Linux)

From FreeM Wiki
Revision as of 12:11, 3 August 2023 by Smw (talk | contribs) (Created page with "== 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 kern...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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 status freem

If the third line of output contains the text 'active (running)', the service has been successfully configured and started.

sysvinit

Coming soon.