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.

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 withTopicWhat differs
OpenBSD, NetBSD-A meaningSolnix -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 meaningSolnix -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 meaningSolnix -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 -dSolnix -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 useSolnix 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 meaningSolnix 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 fourdevice argumentSolnix 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, OpenBSDpartition table typesSolnix 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
Linuxlisting partition tablesLinux 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, OpenBSDconfirmation before writingOn 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
Linuxsector size, geometry and outputLinux 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, -f and -w each 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.