halt(8) on Solnix vs Linux and the BSDs

On Solnix, halt is the illumos /usr/sbin/halt, and poweroff is a second name for it on the same page. It writes pending data to disk and stops the processor. It does not shut down smf(7) services cleanly, so use shutdown(8) or init(8) for a full shutdown.

What Solnix runs

A default Solnix system runs the illumos halt at /usr/sbin/halt. No other variants are shipped. The page documents halt and poweroff but not reboot, which has its own page, reboot(8). poweroff removes power if possible.

Differences

Compared withTopicWhat differs
Linux, FreeBSD, NetBSDclean service shutdownSolnix halt and poweroff do not cleanly shut down smf(7) services. The page says to use shutdown(8) or init(8) for a complete shutdown. FreeBSD halt sends SIGTERM then SIGKILL to all processes. NetBSD does the same and waits up to 30 seconds. Linux halt calls shutdown outside runlevels 0 and 6.
Source: Solnix halt(8) NOTES; FreeBSD halt(8) DESCRIPTION; NetBSD halt(8) DESCRIPTION; Linux halt(8) DESCRIPTION
Linuxhalt outside runlevel 0/6On Linux, halt called while the system runs normally invokes shutdown instead, and -f forces a hard halt. The Solnix page describes no such redirection and has no -f.
Source: Linux halt(8) DESCRIPTION, -f, NOTES; Solnix halt(8) SYNOPSIS, OPTIONS
Linux, FreeBSD, NetBSD-n meaningSolnix -n prevents the sync(8) before stopping, and also skips the syslog message and wtmpx record. On Linux, -n means no sync and implies -d, which suppresses the wtmp record. FreeBSD and NetBSD -n means the file system cache is not flushed.
Source: Solnix halt(8) DESCRIPTION, -n; Linux halt(8) -n; FreeBSD halt(8) -n; NetBSD halt(8) -n
Linux-d meaningSolnix -d forces a crash dump, configured with dumpadm(8). On Linux, -d means do not write the wtmp record, so the same flag does the opposite kind of thing.
Source: Solnix halt(8) -d; Linux halt(8) -d
FreeBSD, NetBSD-d crash dumpSolnix, FreeBSD and NetBSD -d all request a crash dump. FreeBSD supports it only when rebooting, and it needs a dump device set with dumpon(8). NetBSD does not mention such a restriction. Solnix configures dumps with dumpadm(8).
Source: Solnix halt(8) -d; FreeBSD halt(8) -d; NetBSD halt(8) -d
Linux, FreeBSD, NetBSD-p and powering offSolnix halt has no -p. Power removal is done by running poweroff, which removes power if possible. Linux, FreeBSD and NetBSD halt take -p to power off.
Source: Solnix halt(8) SYNOPSIS, DESCRIPTION; Linux halt(8) -p; FreeBSD halt(8) -p; NetBSD halt(8) -p
Linux, FreeBSD-q meaningSolnix -q is a quick halt with no graceful shutdown, and it also inhibits the syslog message and wtmpx record. FreeBSD -q is quick and ungraceful, but still flushes the file system cache unless -n is given. Linux halt has no -q.
Source: Solnix halt(8) DESCRIPTION, -q; FreeBSD halt(8) -q; Linux halt(8) OPTIONS
Linux, FreeBSD-f meaningSolnix halt has no -f. On Linux, -f forces halt without calling shutdown. On FreeBSD, -f forces a reboot past the kernel-presence and /var/run/noshutdown checks.
Source: Solnix halt(8) SYNOPSIS; Linux halt(8) -f; FreeBSD halt(8) -f
Linux, FreeBSD, NetBSD-l loggingSolnix -l suppresses the syslogd(8) message about who ran halt. FreeBSD and NetBSD have -l too, also suppressing the log message. Linux halt has no -l and instead records the shutdown in /var/log/wtmp.
Source: Solnix halt(8) -l; FreeBSD halt(8) -l; NetBSD halt(8) -l; Linux halt(8) DESCRIPTION
Linux, FreeBSD, NetBSDaccounting file locationSolnix records the shutdown in /var/adm/wtmpx. Linux writes /var/log/wtmp. FreeBSD says only that a record goes to the user accounting database. NetBSD says only the login accounting file.
Source: Solnix halt(8) DESCRIPTION; Linux halt(8) DESCRIPTION; FreeBSD halt(8) DESCRIPTION; NetBSD halt(8) DESCRIPTION
Linux, FreeBSD, NetBSD-y and other missing flagsSolnix -y is accepted and ignored. Linux -w -i -h, FreeBSD -c -D -e -k -N -o -r and NetBSD -v -x -z have no Solnix equivalent in the page.
Source: Solnix halt(8) -y, SYNOPSIS; Linux halt(8) OPTIONS; FreeBSD halt(8) OPTIONS; NetBSD halt(8) OPTIONS

Standards

Writing portable scripts

  • Use shutdown(8) for portable scripted shutdowns. Solnix halt and poweroff skip clean smf(7) service shutdown.
  • Do not rely on halt flags: -d, -n and -q mean different things on Solnix, Linux and the BSDs. Use poweroff to power off on Solnix.

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.