| Main index | Section 4 | Options |
linux_enable="YES"
The path translation mechanism makes Linux processes look up file paths under emul_path (defaulting to /compat/linux) before /. For example, when a Linux process attempts to open /etc/passwd, it will first access /compat/linux/etc/passwd, falling back to /etc/passwd if the compat path does not exist. This is used to make sure Linux processes load Linux shared libraries instead of their similarly-named FreeBSD counterparts, and also to provide alternative versions of certain other files and virtual file systems.
To install Linux shared libraries and system files into /compat/linux, either use the emulators/linux_base-c7 port or package, or debootstrap(8) installed from sysutils/debootstrap.
To avoid mounting Linux-specific filesystems at startup, add the following line to the rc.conf(5) file:
linux_mounts_enable="NO"
| compat.linux.debug | |
| Enable debugging messages. Set to 0 to silence them. Defaults to 3. A setting of 1 prints debug messages, tells about unimplemented stuff (only once). Set to 2 is like 1, but also prints messages about implemented but not tested stuff (only once). Setting it to 3 or higher is like 2, but no rate limiting of messages. | |
| compat.linux.default_openfiles | |
| Default soft openfiles resource limit for Linux applications. Set to -1 to disable the limit. Defaults to 1024. | |
| compat.linux.emul_path | |
| Path to the Linux run-time environment. Defaults to /compat/linux. | |
| compat.linux.osname | |
| Linux kernel operating system name. Defaults to "Linux". | |
| compat.linux.osrelease | |
| Linux kernel operating system release. Changing this to something else is discouraged on non-development systems, because it may change the way Linux programs work. Some versions of GNU libc are known to use different syscalls depending on the value of this sysctl. | |
| compat.linux.oss_version | |
| Linux Open Sound System version. Defaults to 198144. | |
| compat.linux.preserve_vstatus | |
| When set to 1, it prevents Linux applications from resetting the termios(4) VSTATUS setting. From a user perspective, this makes SIGINFO work for Linux executables. Defaults to 1. | |
| compat.linux.setid_allowed | |
| Enable handling of set-user-ID and set-group-ID mode bits for the new process image file when image is to be executed under Linux ABI. When set to 0, new Linux images always use credentials of the program that issued the execve(2) call, regardless of the image file mode. This might be reasonable or even required, because FreeBSD does not emulate the Linux environment completely, and missed features may result in security vulnerabilities. Defaults to 1. | |
| compat.linux32.emulate_i386 | |
| In the x86_64 (amd64) world enable the real i386 Linuxulator behavior. For example, when set to 0, Linux uname -m will return "x86_64" even if uname itself is a i386 Linux executable. When set to 1, Linux i386 uname -m will return "i686". Defaults to 0. | |
| /compat/linux | Linux run-time environment |
| /compat/linux/dev | device file system, see devfs(5) |
| /compat/linux/dev/fd | file descriptor file system mounted with the linrdlnk option, see fdescfs(5) |
| /compat/linux/dev/shm | |
| in-memory file system, see tmpfs(5) | |
| /compat/linux/proc | Linux process file system, see linprocfs(5) |
| /compat/linux/sys | Linux kernel objects file system, see linsysfs(5) |
| LINUX (4) | January 9, 2022 |
| Main index | Section 4 | Options |
Please direct any comments about this manual page service to Ben Bullock. Privacy policy.
| “ | Using Unix is the computing equivalent of listening only to music by David Cassidy | ” |
| — Rob Pike | ||