fdisk(8) on Solnix vs Linux and the BSDs
On Solnix, fdisk is the illumos fdisk at /usr/sbin/fdisk (also /sbin/fdisk). It edits the MBR-style fdisk partition table of a raw device such as /dev/rdsk/c0t0d0p0. Its single-letter flags differ from every counterpart: -A adds a partition, -D deletes one, and -b names the master boot file.
The manual pages
What Solnix runs
A default Solnix system runs the illumos fdisk at /usr/sbin/fdisk and /sbin/fdisk. No other variants are shipped. The bundle's Solnix text is trimmed, so some options (for example -F, -W, -w, -r, -n, -I, -E) are listed in the synopsis but not described here.
Differences
| Compared with | Topic | What differs |
|---|---|---|
| OpenBSD, NetBSD | -A meaning | Solnix -A adds a partition from a colon-separated id:act:bhead:bsect:bcyl:ehead:esect:ecyl:rsect:numsect string, and zeroes the VTOC on the Solaris partition if the table changes. On OpenBSD, -A puts all free space into one GPT OpenBSD partition. On NetBSD, -A sets partition alignment.Source: Solnix fdisk(8) -A; OpenBSD fdisk(8) -A; NetBSD fdisk(8) -A |
| all four | -b meaning | Solnix -b takes a master boot file (default /boot/pmbr). Linux -b is the sector size. FreeBSD -b is a bootcode file (default /boot/mbr). OpenBSD -b creates a partition entry of blocks[@offset[:type]]. NetBSD -b gives BIOS cylinders/heads/sectors.Source: Solnix fdisk(8) -b; Linux fdisk(8) -b; FreeBSD fdisk(8) -b; OpenBSD fdisk(8) -b; NetBSD fdisk(8) -b |
| Linux, FreeBSD, NetBSD | -B meaning | Solnix -B makes one Solaris partition covering the whole disk (limited to 2 TB on x86 for larger disks). Linux -B keeps the start of the first sector when creating a label. FreeBSD -B reinitializes the boot code. NetBSD -B edits boot selector settings.Source: Solnix fdisk(8) -B; Linux fdisk(8) -B, --protect-boot; FreeBSD fdisk(8) -B; NetBSD fdisk(8) -B |
| all four | -D and -d | Solnix -D deletes a partition given by the colon-separated argument, and -d turns on verbose debug output on stderr. None of the four counterpart option lists has -D or a -d debug flag. Linux enables debug output with FDISK_DEBUG=all.Source: Solnix fdisk(8) -D, -d; Linux fdisk(8) ENVIRONMENT; FreeBSD/OpenBSD/NetBSD fdisk(8) option lists |
| FreeBSD, OpenBSD, NetBSD | -f meaning and scripted use | Solnix has no -f. Its scripted mode uses --F fdisk_file and -W fdisk_file, or the -A and -D arguments. FreeBSD -f reads a slice config file with no confirmation. OpenBSD -f names an MBR bootcode file; scripted input is -R. NetBSD -f means non-interactive.Source: Solnix fdisk(8) SYNOPSIS, DESCRIPTION (second mode); FreeBSD fdisk(8) -f; OpenBSD fdisk(8) -f, -R; NetBSD fdisk(8) -f |
| Linux, NetBSD | -w meaning | Solnix lists -w in its synopsis as a bare mode flag with no argument. Linux -w takes when (auto, never, always) and wipes signatures. NetBSD -w takes a bootfile argument. The Solnix meaning is in the trimmed text.Source: Solnix fdisk(8) SYNOPSIS; Linux fdisk(8) -w, --wipe; NetBSD fdisk(8) SYNOPSIS (-w bootfile) |
| all four | device argument | Solnix requires rdevice, a raw device such as /dev/rdsk/c0t0d0p0. FreeBSD accepts a bare name like da0 and guesses the device from the mounted root if omitted. OpenBSD accepts /dev/rsd0c, sd0c or sd0. NetBSD's device is optional. Source: Solnix fdisk(8) DESCRIPTION, SYNOPSIS; FreeBSD fdisk(8) DESCRIPTION; OpenBSD fdisk(8) disk; NetBSD fdisk(8) SYNOPSIS |
| Linux, FreeBSD, OpenBSD | partition table types | Solnix fdisk manages the fdisk partition table (at most 4 entries, plus extended-partition logical drives). VTOC or EFI/GPT metadata is written by format(8). Linux understands GPT, MBR, Sun, SGI and BSD tables. OpenBSD edits MBR and GPT. FreeBSD calls its fdisk obsolete and points to gpart(8). Source: Solnix fdisk(8) DESCRIPTION, Menu Options; Linux fdisk(8) DESCRIPTION; OpenBSD fdisk(8) DESCRIPTION; FreeBSD fdisk(8) DESCRIPTION |
| Linux | listing partition tables | Linux fdisk -l lists tables and exits, using /proc/partitions when no device is given. The Solnix synopsis has no -l. The Solnix text shown describes interactive mode, which displays the table before the menu.Source: Linux fdisk(8) -l, --list; Solnix fdisk(8) SYNOPSIS, DESCRIPTION (interactive mode) |
| FreeBSD, OpenBSD | confirmation before writing | On Solnix the interactive Exit menu option writes the table, and Cancel leaves it unchanged. OpenBSD -y writes without asking. FreeBSD -f writes without asking. The Solnix synopsis has no -y.Source: Solnix fdisk(8) Menu Options (Exit, Cancel); OpenBSD fdisk(8) -y; FreeBSD fdisk(8) -f |
| Linux | sector size, geometry and output | Linux fdisk uses device I/O limits for alignment, deprecates CHS addressing and does not guarantee its output format. It points scripts to partx(8). The Solnix text shown makes no such statements, and its -S is a geometry file.Source: Linux fdisk(8) DESCRIPTION, -S; Solnix fdisk(8) SYNOPSIS (-S geom_file) |
Standards
- POSIX: fdisk is not a POSIX.1-2024 utility.
- Solnix: The trimmed Solnix text shown contains no STANDARDS or ATTRIBUTES section, so the manual does not say here.
Writing portable scripts
- Do not share fdisk flags between systems:
-A,-b,-B,-fand-weach mean something different. Branch on uname and call each system's own syntax, or use gpart on FreeBSD. - Build the device path per system (/dev/rdsk/c0t0d0p0 on Solnix, sd0 on OpenBSD, da0 on FreeBSD) instead of hard-coding one naming scheme.
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.