shutdown(8) on Solnix vs Linux and the BSDs
On Solnix, shutdown is the illumos /usr/sbin/shutdown. It takes a grace period in seconds (-g) and a target init state (-i 0, 5, 6, s), and asks for confirmation. Linux and the BSDs require a time argument and choose the action with -h, -r, -p or -P, so their command lines do not work on Solnix.
The manual pages
- Solnix: shutdown(8) from
pkgs.solnix.illumos-world-man· illumos.org - Linux: shutdown(8) sysvinit-3.04
- FreeBSD: shutdown(8) 15.1-RELEASE
- OpenBSD: shutdown(8) 8.0
- NetBSD: shutdown(8) 11.0
What Solnix runs
A default Solnix system runs the illumos /usr/sbin/shutdown. /usr/ucb/shutdown is also shipped, but the bundle does not describe it. This page documents only -y, -g and -i. With no options, shutdown brings the system to single-user state after a 60-second grace period and asks for confirmation.
Differences
| Compared with | Topic | What differs |
|---|---|---|
| all four | time argument | Solnix has no time argument. The delay is -g grace-period in seconds, 60 by default. Linux, FreeBSD, OpenBSD and NetBSD require a time (now, +number, or an absolute time). A script that passes 'now' on Solnix would send it as part of the message.Source: Solnix shutdown(8) SYNOPSIS, -g; Linux shutdown(8) NOTES (time mandatory); FreeBSD/OpenBSD/NetBSD shutdown(8) SYNOPSIS, time |
| all four | choosing halt, reboot or power off | Solnix selects the action with -i init-state: 0 stops the OS, 5 powers off, 6 reboots, s is single-user. The other four use -h and -r. Linux adds -P for power off, and the BSDs use -p. Solnix has none of these flags.Source: Solnix shutdown(8) -i and state definitions; Linux shutdown(8) -h -r -P -H; FreeBSD/OpenBSD/NetBSD shutdown(8) -h -p -r |
| all four | confirmation prompt | Solnix sends a final message asking for confirmation unless -y is given, so unattended use needs -y. The Linux, FreeBSD, OpenBSD and NetBSD pages describe no confirmation question and have no -y.Source: Solnix shutdown(8) DESCRIPTION, -y; Linux/FreeBSD/OpenBSD/NetBSD shutdown(8) OPTIONS |
| all four | warning message quoting | On Solnix, message is a single argument, and a multi-word message must be quoted. On Linux and the BSDs, all arguments after time are joined into the warning message. FreeBSD, OpenBSD and NetBSD can also read the message from stdin with '-'. Source: Solnix shutdown(8) DESCRIPTION (message in quotation marks); FreeBSD/OpenBSD/NetBSD shutdown(8) warning-message, '-' |
| all four | warning schedule | Solnix prints warnings at fixed remaining times: 7200, 3600, 1800, 1200, 600, 300, 120, 60 and 30 seconds. Linux warns every 15 minutes, then every minute in the last 10 (-q and -Q reduce this). FreeBSD and OpenBSD start ten hours out. NetBSD does not say.Source: Solnix shutdown(8) DESCRIPTION; Linux shutdown(8) -q, -Q; FreeBSD/OpenBSD shutdown(8) DESCRIPTION |
| all four | -k meaning | Solnix has no -k. On Linux, -k only sends the warnings and shuts nothing down. On FreeBSD, OpenBSD and NetBSD, -k leaves the system multi-user with logins disabled for everyone except the superuser.Source: Solnix shutdown(8) SYNOPSIS; Linux shutdown(8) -k; FreeBSD/OpenBSD/NetBSD shutdown(8) -k |
| all four | -f and -n meaning | Solnix has neither flag. Linux -f creates /fastboot to skip fsck, and OpenBSD and NetBSD do the same. FreeBSD -f ignores /var/run/noshutdown. -n is deprecated on Linux, skips the sync on OpenBSD and NetBSD, and works only with -o on FreeBSD.Source: Linux shutdown(8) -f, -n; OpenBSD shutdown(8) -f, -n; NetBSD shutdown(8) -f, -n; FreeBSD shutdown(8) -f, -n, -o |
| Linux, FreeBSD, OpenBSD | nologin file | On Solnix, /etc/nologin is created when the system goes down to state S or s. A script in /etc/rc2.d removes it on return to state 2. Linux and OpenBSD create /etc/nologin five minutes before shutdown. FreeBSD uses /var/run/nologin.Source: Solnix shutdown(8) NOTES; Linux shutdown(8) DESCRIPTION; OpenBSD shutdown(8) DESCRIPTION; FreeBSD shutdown(8) DESCRIPTION |
| Linux, FreeBSD, OpenBSD | cancelling a scheduled shutdown | Linux cancels with shutdown -c. FreeBSD and OpenBSD cancel by killing the shutdown process. The Solnix page does not describe cancelling, and has no -c.Source: Linux shutdown(8) -c; FreeBSD shutdown(8) DESCRIPTION; OpenBSD shutdown(8) DESCRIPTION; Solnix shutdown(8) OPTIONS |
| Linux, FreeBSD, OpenBSD | who may run it | The Solnix page says the super user runs shutdown. FreeBSD also allows members of the operator group. OpenBSD allows members of the _shutdown group. The Linux page says it was not designed to be run setuid. Source: Solnix shutdown(8) DESCRIPTION; FreeBSD shutdown(8) DESCRIPTION; OpenBSD shutdown(8) DESCRIPTION; Linux shutdown(8) NOTES |
| OpenBSD, NetBSD | -d meaning | Solnix has no -d. On OpenBSD, -d with -h, -p or -r makes the system take a dump. On NetBSD, -d requests a kernel core dump and implies -r if neither -h nor -r is given.Source: OpenBSD shutdown(8) -d; NetBSD shutdown(8) -d; Solnix shutdown(8) SYNOPSIS |
| FreeBSD | poweroff command | The FreeBSD shutdown page also documents poweroff, which is equivalent to shutdown -p now. The Solnix shutdown page documents no poweroff. Its SEE ALSO lists halt(8) and reboot(8).Source: FreeBSD shutdown(8) SYNOPSIS, DESCRIPTION; Solnix shutdown(8) SEE ALSO |
Everyday tasks
| Task | Solnix | Linux | FreeBSD | OpenBSD | NetBSD |
|---|---|---|---|---|---|
| reboot now | shutdown -y -g seconds -i 6 | shutdown -r now | shutdown -r now | shutdown -r now | shutdown -r now |
| power off | shutdown -y -g seconds -i 5 | shutdown -h -P now | shutdown -p now | shutdown -p now | shutdown -p now |
| halt without power off | shutdown -y -g seconds -i 0 | shutdown -h -H now | shutdown -h now | shutdown -h now | shutdown -h now |
| go to single-user mode | shutdown -y (default state s) | shutdown time (runlevel 1 default) | shutdown time | shutdown time | shutdown time |
Standards
- POSIX: shutdown is not a POSIX.1-2024 utility.
- Solnix: The Solnix page has no STANDARDS section in the bundle.
- OpenBSD: The STANDARDS section says only that the hours and minutes in the second time format may be separated by a colon for backward compatibility.
Writing portable scripts
- Do not share one shutdown command line across systems. Branch on the OS and use
-i6,-i5 or-i0 with-yon Solnix, and-r,-por-hwith a time on the others. - Always pass an explicit time such as 'now' on Linux and the BSDs. Never pass it on Solnix, where it would become part of the message.
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.