Difference between revisions of "Platform Notes (GNU/Linux)"

From FreeM Wiki
Jump to navigation Jump to search
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
 
== Port Status ==
 
== Port Status ==
 
The GNU/Linux port is a [[Tier 1 Port]]
 
The GNU/Linux port is a [[Tier 1 Port]]
 +
 +
== Verified Releases ==
 +
* FreeM 0.59.2 (04 Aug 2023)
  
 
== Testing Details ==
 
== Testing Details ==
Line 39: Line 42:
 
* Copy 'scripts/systemd/system/freem.service' from the FreeM distribution to '/etc/systemd/system'
 
* 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 as root:
 +
# groupadd freem
 +
# useradd -m -d /home/freem -g freem freem
 +
* Type the following command for each user who will use FreeM, substituting the user's login name for <code>username</code>:
 +
# usermod -aG freem ''username''
  
* Type the following commands:
+
* Type the following commands as root:
  $ sudo systemctl daemon-reload
+
  # systemctl daemon-reload
  $ sudo systemctl enable freem
+
  # systemctl enable freem
  $ sudo systemctl start freem
+
  # systemctl start freem
  
 
* You may then check the status of the daemon with the following command:
 
* You may then check the status of the daemon with the following command:
  $ sudo systemctl status freem
+
  # systemctl status freem
  
 
If the third line of output contains the text 'active (running)', the service has been successfully configured and started.
 
If the third line of output contains the text 'active (running)', the service has been successfully configured and started.

Latest revision as of 17:37, 6 August 2024

Port Status

The GNU/Linux port is a Tier 1 Port

Verified Releases

  • FreeM 0.59.2 (04 Aug 2023)

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'
  • Type the following commands as root:
# groupadd freem
# useradd -m -d /home/freem -g freem freem
  • Type the following command for each user who will use FreeM, substituting the user's login name for username:
# usermod -aG freem username
  • Type the following commands as root:
# systemctl daemon-reload
# systemctl enable freem
# systemctl start freem
  • You may then check the status of the daemon with the following command:
# 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.