mkfs(8) on Solnix vs Linux and the BSDs
On Solnix, mkfs is the illumos front-end at /usr/sbin/mkfs. It runs an FSType-specific module chosen with -F, and the page says ufs file systems are normally created with newfs(8). Its -V option echoes the command without running it; on Linux, -V means verbose, or version when it is the only argument.
The manual pages
- Solnix: mkfs(8) from
pkgs.solnix.illumos-world-man· illumos.org - Linux: mkfs(8) util-linux-2.42.3
What Solnix runs
A default Solnix system runs the illumos mkfs at /usr/sbin/mkfs. No other variants are shipped. FSType-specific options are documented in the module pages, for example mkfs_ufs(8). The bundle includes no other page for these modules.
Differences
| Compared with | Topic | What differs |
|---|---|---|
| Linux | selecting the file system type | Solnix uses -F FSType. If -F is absent, the type comes from the matching /etc/vfstab entry or from /etc/default/fs. Linux uses -t/--type, and the default type is currently ext2.Source: Solnix mkfs(8) -F; Linux mkfs(8) -t, --type |
| Linux | -V meaning | Solnix -V echoes the complete command line without executing it. Linux -V (--verbose) produces verbose output and still runs the builder. Used alone, Linux -V prints the version. Only repeating -V on Linux prevents execution.Source: Solnix mkfs(8) -V; Linux mkfs(8) -V, --verbose, --version |
| Linux | passing FS-specific options | Solnix takes them as one -o argument, a comma-separated list of keyword=value pairs with no spaces. Linux puts fs-options after the generic options, passes them to the builder unchanged, and does not use -o.Source: Solnix mkfs(8) DESCRIPTION, -o; Linux mkfs(8) SYNOPSIS, fs-options |
| Linux | -m option | Solnix -m prints the command line that was used to create an existing file system. The Linux page documents no equivalent option.Source: Solnix mkfs(8) -m; Linux mkfs(8) OPTIONS |
| Linux | how the type-specific program is found | Solnix calls the mkfs module for the FSType, and the module's manual page, such as mkfs_ufs(8), describes the operands. Linux runs mkfs.fstype, searched for only through PATH. Linux marks the mkfs front-end as deprecated in favour of those programs. Source: Solnix mkfs(8) DESCRIPTION; Linux mkfs(8) DESCRIPTION |
| Linux | device and size arguments | On Solnix, raw_device_file is required and must be the first argument after the specific options. Operands are FSType-specific. On Linux, device may be a device name or a regular file, and an optional size argument gives a block count. Source: Solnix mkfs(8) SYNOPSIS, DESCRIPTION; Linux mkfs(8) SYNOPSIS, DESCRIPTION |
| Linux | file as device | Linux accepts a regular file as the device. The Solnix page instead says lofiadm can create a file that appears to mkfs as a raw device. See lofiadm(8) for examples. Source: Solnix mkfs(8) NOTES; Linux mkfs(8) DESCRIPTION |
| Linux | exit status | Linux mkfs returns 0 on success and 1 on failure. The Solnix page does not document exit status. Source: Linux mkfs(8) DESCRIPTION; Solnix mkfs(8) (no EXIT STATUS section) |
| FreeBSD, OpenBSD, NetBSD | BSD counterparts | The bundle has no FreeBSD, OpenBSD or NetBSD mkfs(8) page, so this page cannot say how the BSDs differ. It also does not say which commands they use to create file systems. Source: Bundle header (COUNTERPART lists only linux) |
Standards
- POSIX: mkfs is not a POSIX.1-2024 utility.
- Solnix: The page has a USAGE section pointing to largefile(7) for files of 2 Gbyte (2^31 bytes) or more, and a SEE ALSO reference to attributes(7). It gives no interface stability table.
Writing portable scripts
- Do not use mkfs
-F,-o,-mor-Vin scripts meant to run on Linux. Call the type-specific program directly, such as mkfs.ext4 on Linux, and write per-OS branches. - Do not rely on mkfs's default file system type. Linux defaults to ext2, and on Solnix the type comes from
/etc/vfstabor/etc/default/fswhen-Fis absent. Always name the type.
Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.