Difference between revisions of "Platform Notes (FreeBSD)"
(Created page with "== Port Status == FreeBSD is a Tier 3 Port == Verified Releases == FreeM 0.58.0 will build but not run. == Testing Details == * ESXi Virtual Machine (64-bit) * FreeBSD 1...") |
|||
(10 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== Port Status == | == Port Status == | ||
− | FreeBSD is a [[Tier | + | FreeBSD is a [[Tier 1 Port]] |
== Verified Releases == | == Verified Releases == | ||
− | FreeM 0. | + | * FreeM 0.62.3 (27 Mar 2025) |
+ | * FreeM 0.62.2 (23 Mar 2025) | ||
+ | * FreeM <code>cvs-current</code> | ||
+ | * FreeM 0.62.1 | ||
== Testing Details == | == Testing Details == | ||
− | * | + | * Bare-metal amd64 system |
− | * FreeBSD | + | * FreeBSD 14.1-RELEASE-p2 amd64 |
− | * gcc | + | * gcc 13.2.0 |
− | * autoconf 2. | + | * autoconf 2.72 |
− | * automake 1. | + | * automake 1.17 |
== Required Kernel Tuning == | == Required Kernel Tuning == | ||
− | + | === Shared Memory === | |
+ | FreeM in its default configuration requires just under 17MiB of shared memory. You can check the relevant kernel parameter with the following command: | ||
+ | |||
+ | <pre> | ||
+ | $ sudo sysctl kern.ipc.shmmax | ||
+ | </pre> | ||
+ | |||
+ | If <code>kern.ipc.shmmax</code> is less than <code>17000000</code>, add the following lines to <code>/etc/sysctl.conf</code> and reboot: | ||
+ | |||
+ | <pre> | ||
+ | kern.ipc.shmmax=17000000 | ||
+ | </pre> | ||
+ | |||
+ | === Address Space Layout Randomization === | ||
+ | FreeM is incompatible with address space layout randomization (ASLR), which is enabled by default on FreeBSD 13.2 and newer on 64-bit platforms. | ||
+ | |||
+ | To use FreeM on FreeBSD 13.2 and newer, add the following lines to <code>/etc/sysctl.conf</code> and reboot: | ||
+ | |||
+ | <pre> | ||
+ | kern.elf64.aslr.pie_enable=0 | ||
+ | kern.elf64.aslr.enable=0 | ||
+ | </pre> | ||
+ | |||
+ | If you do not wish to globally disable ASLR on your system, you can use FreeM by disabling it per-process with each invocation by using the following syntax: | ||
+ | |||
+ | <pre> | ||
+ | $ proccontrol -m aslr -s disable freem | ||
+ | </pre> | ||
+ | |||
+ | Particularly astute system administrators will likely want to script this, which is an exercise left to the reader. | ||
== Starting Daemon Automatically == | == Starting Daemon Automatically == | ||
− | + | * Copy <code>scripts/freebsd-rc/freem</code> to <code>/usr/local/etc/rc.d</code> | |
+ | * Type the following commands with root privileges: | ||
+ | # pw group add freem | ||
+ | # pw user add freem -m -g freem | ||
+ | # sysrc freem_enable="YES" | ||
+ | # chmod +x /usr/local/etc/rc.d/freem | ||
+ | * For each user who needs to run FreeM, type the following command: | ||
+ | # pw group mod freem -m ''username'' | ||
+ | * Reboot | ||
== Port Challenges == | == Port Challenges == | ||
− | + | None. | |
− | [[Category:Tier | + | [[Category:Tier 1 Ports]] |
[[Category:Platform Notes]] | [[Category:Platform Notes]] |
Latest revision as of 18:00, 15 April 2025
Contents
Port Status
FreeBSD is a Tier 1 Port
Verified Releases
- FreeM 0.62.3 (27 Mar 2025)
- FreeM 0.62.2 (23 Mar 2025)
- FreeM
cvs-current
- FreeM 0.62.1
Testing Details
- Bare-metal amd64 system
- FreeBSD 14.1-RELEASE-p2 amd64
- gcc 13.2.0
- autoconf 2.72
- automake 1.17
Required Kernel Tuning
FreeM in its default configuration requires just under 17MiB of shared memory. You can check the relevant kernel parameter with the following command:
$ sudo sysctl kern.ipc.shmmax
If kern.ipc.shmmax
is less than 17000000
, add the following lines to /etc/sysctl.conf
and reboot:
kern.ipc.shmmax=17000000
Address Space Layout Randomization
FreeM is incompatible with address space layout randomization (ASLR), which is enabled by default on FreeBSD 13.2 and newer on 64-bit platforms.
To use FreeM on FreeBSD 13.2 and newer, add the following lines to /etc/sysctl.conf
and reboot:
kern.elf64.aslr.pie_enable=0 kern.elf64.aslr.enable=0
If you do not wish to globally disable ASLR on your system, you can use FreeM by disabling it per-process with each invocation by using the following syntax:
$ proccontrol -m aslr -s disable freem
Particularly astute system administrators will likely want to script this, which is an exercise left to the reader.
Starting Daemon Automatically
- Copy
scripts/freebsd-rc/freem
to/usr/local/etc/rc.d
- Type the following commands with root privileges:
# pw group add freem # pw user add freem -m -g freem # sysrc freem_enable="YES" # chmod +x /usr/local/etc/rc.d/freem
- For each user who needs to run FreeM, type the following command:
# pw group mod freem -m username
- Reboot
Port Challenges
None.