update-binfmts
Register handlers for non-native executable formats
SYNOPSIS
update-binfmts [options] command [format]
PARAMETERS
--help
Display a help message and exit.
--version
Display version information and exit.
--verbose
Enable verbose output.
--package package-name
Limit operations to formats belonging to a specific package.
--kernel-only
Do not attempt to update the configuration files. Only modify the kernel handlers.
--test
Simulate the operations without making actual changes.
-q
Quiet mode. Suppress non-error messages.
--register format
Register a new binary format handler. Requires a format name.
--unregister format
Unregister a binary format handler. Requires a format name.
--enable format
Enable a binary format handler. Requires a format name.
--disable format
Disable a binary format handler. Requires a format name.
--display
Display all the registered binary format handlers.
DESCRIPTION
The update-binfmts command manages the kernel's binary format support, allowing the system to execute files of various types transparently.
It reads configuration files, typically located in /usr/share/binfmts/, which describe how to handle different binary formats.
These configuration files specify the interpreter to use for executing files of a given type, identified by a magic number or file extension.
The command registers, unregisters, enables, or disables these binary format handlers within the kernel.
This allows the system to execute Java .jar files using the java interpreter, or Windows .exe files using Wine, without explicitly invoking the interpreter from the command line.
The primary benefit is improved user experience and seamless integration of various binary formats into the Linux environment.
CAVEATS
Incorrect configuration can lead to system instability or security vulnerabilities. Always test configuration changes in a controlled environment before deploying them to a production system.
CONFIGURATION FILES
Configuration files are located in /usr/share/binfmts/. Each file defines a single binary format handler, specifying the interpreter to use, the magic number to match, and other relevant parameters.
HISTORY
The update-binfmts command was created to simplify the management of binary format handlers in Linux. Prior to its existence, manual configuration of the binfmt_misc filesystem was required, which was error-prone and cumbersome.
The command automated the process of registering, unregistering, enabling, and disabling binary format handlers, making it easier for system administrators to support various binary formats.
Over time, the command has been refined and expanded to include support for package management and other features.
SEE ALSO
binfmt_misc(8)