nice(1) on Solnix vs Linux and the BSDs

On Solnix, nice is the illumos nice at /usr/bin/nice. It runs a command with a changed niceness, and the default increment is 10 as on the other systems. Unlike Linux, it always needs a command: the Solnix page documents no way to print the current niceness and no --adjustment long option.

What Solnix runs

A default Solnix system runs the illumos /usr/bin/nice. /usr/xpg4/bin/nice is also shipped with the same synopsis. The page does not say how it differs, but its ATTRIBUTES table lists Interface Stability as Standard. csh also has a built-in nice with different syntax, which is described in csh(1).

Differences

Compared withTopicWhat differs
Linuxno command givenWith no COMMAND, Linux nice prints the current niceness. The Solnix synopsis makes command mandatory, and the page describes no such mode. Scripts that call plain nice to read the niceness will not work on Solnix.
Source: Linux nice(1) DESCRIPTION; Solnix nice(1) SYNOPSIS
Linuxlong optionsLinux nice accepts -n, --adjustment=N, --help and --version. The Solnix page documents only -increment and -n increment, with no long options.
Source: Linux nice(1) -n, --adjustment, --help, --version; Solnix nice(1) SYNOPSIS, OPTIONS
FreeBSD, OpenBSD, NetBSD-increment formSolnix lists -increment as a normal alternative to -n increment. FreeBSD, OpenBSD and NetBSD call -increment historic or deprecated, though still supported, and their synopses show only -n. The Linux page does not document -increment.
Source: Solnix nice(1) SYNOPSIS, OPTIONS; FreeBSD nice(1) COMPATIBILITY; OpenBSD nice(1) STANDARDS; NetBSD nice(1) COMPATIBILITY; Linux nice(1) DESCRIPTION
Linux, OpenBSD, NetBSDniceness rangeLinux documents -20 to 19. OpenBSD and NetBSD document -20 to 20, and NetBSD says 19 or 20 takes no cycles from processes at nice 0 or better. The Solnix page states no range.
Source: Linux nice(1) DESCRIPTION; OpenBSD nice(1) DESCRIPTION; NetBSD nice(1) DESCRIPTION; Solnix nice(1) OPTIONS
all fournegative increment for unprivileged usersOn Solnix, a negative increment from an unprivileged user is ignored, and nice() errors other than EINVAL are ignored. The other pages say only that the superuser may use a negative increment, and do not say what happens to anyone else.
Source: Solnix nice(1) OPTIONS; FreeBSD nice(1) DESCRIPTION; OpenBSD nice(1) DESCRIPTION; NetBSD nice(1) DESCRIPTION; Linux nice(1) DESCRIPTION
Linuxexit status when nice failsLinux nice exits 125 if nice itself fails. Solnix, OpenBSD and NetBSD use the range 1-125 for any nice error. All three use 126 for found-but-not-invokable and 127 for not found.
Source: Linux nice(1) Exit status; Solnix nice(1) EXIT STATUS; OpenBSD nice(1) EXIT STATUS; NetBSD nice(1) EXIT STATUS
FreeBSDexit status 1-125 undocumentedThe FreeBSD page documents only 126, 127 and the command's own status. It gives no range for errors raised by nice itself, while Solnix documents 1-125.
Source: FreeBSD nice(1) EXIT STATUS; Solnix nice(1) EXIT STATUS
all fourcsh built-inIn csh, plain nice runs the built-in unless you give the full path. Solnix says the built-in takes nice [-increment | +increment] [command]. NetBSD's BUGS section says nice +10 nices to positive and nice -10 is for the super-user. OpenBSD says the csh syntax differs.
Source: Solnix nice(1) DESCRIPTION, csh Builtin; NetBSD nice(1) BUGS; OpenBSD nice(1) STANDARDS; FreeBSD nice(1) DESCRIPTION
all fourshell and environment variablesSolnix says nice uses /usr/bin/sh when it runs commands with arguments. It lists LANG, LC_ALL, LC_CTYPE, LC_MESSAGES, PATH and NLSPATH as affecting nice. FreeBSD lists only PATH. The Linux, OpenBSD and NetBSD pages list none.
Source: Solnix nice(1) DESCRIPTION, ENVIRONMENT VARIABLES; FreeBSD nice(1) ENVIRONMENT
all fourscheduling class requirementSolnix requires the invoking process (usually the shell) to be in a scheduling class that supports nice, and points to priocntl(1) as the more general interface. The other pages state no such requirement.
Source: Solnix nice(1) DESCRIPTION; Linux, FreeBSD, OpenBSD, NetBSD nice(1) DESCRIPTION

Standards

  • POSIX: nice is a POSIX.1-2024 utility.
  • Solnix: /usr/xpg4/bin/nice: Interface Stability is Standard. The page's SEE ALSO refers to standards(7).
  • FreeBSD: The nice utility conforms to IEEE Std 1003.1-2001 (“POSIX.1”).
  • OpenBSD: The nice utility is compliant with the IEEE Std 1003.1-2008 (“POSIX.1”) specification.
  • NetBSD: The nice utility conforms to IEEE Std 1003.2-1992 (“POSIX.2”).

Writing portable scripts

  • Write nice -n increment command [argument ...]. This form appears on every system, and the -increment form is deprecated on the BSDs.
  • Do not rely on plain nice to print the current niceness (Linux only), or on --adjustment.
  • Call /usr/bin/nice or env nice if you need the utility rather than a csh built-in.

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.