newaliases(8) on Solnix vs Linux and the BSDs
On Solnix, newaliases is the illumos command at /usr/sbin/newaliases. It rebuilds the database for the sendmail aliases file /etc/mail/aliases. FreeBSD documents the same job as sendmail -bi. OpenBSD instead feeds smtpd, and NetBSD's page is the Postfix sendmail interface, so what it does depends on the mail system installed.
The manual pages
- Solnix: newaliases(8) from
pkgs.solnix.illumos-world-man· illumos.org - FreeBSD: newaliases(1) 15.1-RELEASE
- OpenBSD: newaliases(8) 8.0
- NetBSD: newaliases(1) 11.0
What Solnix runs
A default Solnix system runs the illumos newaliases at /usr/sbin/newaliases. No other variants are shipped. It accepts the sendmail(8) flags, but the page says only -C and a few -o options have any effect.
Differences
| Compared with | Topic | What differs |
|---|---|---|
| FreeBSD, OpenBSD, NetBSD | which mail system it drives | Solnix and FreeBSD rebuild the sendmail aliases database; FreeBSD says it is identical to sendmail -bi. OpenBSD makes alias changes visible to smtpd(8). NetBSD's page is the Postfix compatibility command, which runs postalias(1).Source: Solnix newaliases(8) DESCRIPTION; FreeBSD newaliases(1) DESCRIPTION; OpenBSD newaliases(8) DESCRIPTION; NetBSD newaliases(1) DESCRIPTION (newaliases, implemented by running postalias) |
| OpenBSD | options | Solnix newaliases has no option of its own in the synopsis, but accepts sendmail flags. OpenBSD takes -f file to name the smtpd.conf-style configuration file (default /etc/mail/smtpd.conf). The OpenBSD page does not list -C.Source: Solnix newaliases(8) SYNOPSIS, DESCRIPTION; OpenBSD newaliases(8) SYNOPSIS, -f |
| FreeBSD, OpenBSD, NetBSD | -C alternate configuration | Solnix -C path names an alternate sendmail configuration file. NetBSD -C names the Postfix main.cf or its directory, and newer Postfix requires non-default directories to be authorized. The FreeBSD page documents no options. OpenBSD uses -f instead.Source: Solnix newaliases(8) -C; NetBSD newaliases(1) -C config_file / -C config_dir; FreeBSD newaliases(1) SYNOPSIS; OpenBSD newaliases(8) -f |
| OpenBSD, NetBSD | where the alias file is chosen | Solnix rebuilds /etc/mail/aliases, and -oAfile can name other alias files. OpenBSD takes the alias file location from smtpd.conf(5), defaulting to /etc/mail/aliases. NetBSD (Postfix) uses the alias_database parameter unless -oA gives an input file.Source: Solnix newaliases(8) DESCRIPTION, -oAfile; OpenBSD newaliases(8) DESCRIPTION; NetBSD newaliases(1) DESCRIPTION (newaliases, alias_database) |
| FreeBSD, OpenBSD, NetBSD | exit status | Solnix newaliases returns sysexits.h codes such as EX_OK, EX_NOUSER, EX_UNAVAILABLE, EX_SYNTAX, EX_SOFTWARE, EX_OSERR, EX_NOHOST and EX_TEMPFAIL. FreeBSD and OpenBSD document only 0 on success and >0 on error. The NetBSD text in the bundle gives no exit status. Source: Solnix newaliases(8) EXIT STATUS; FreeBSD newaliases(1) DESCRIPTION; OpenBSD newaliases(8) EXIT STATUS |
| FreeBSD, OpenBSD, NetBSD | verbose output | Solnix newaliases runs in verbose mode (-v) automatically, so it prints progress when run. The FreeBSD, OpenBSD and NetBSD texts in the bundle do not say it does.Source: Solnix newaliases(8) DESCRIPTION (runs in verbose mode); FreeBSD/OpenBSD/NetBSD newaliases pages |
| FreeBSD, OpenBSD | makemap | FreeBSD warns not to use makemap to build the aliases database, because newaliases adds a special token sendmail needs. OpenBSD says that with db files newaliases is equivalent to makemap -t aliases /etc/mail/aliases. The Solnix page does not mention makemap.Source: FreeBSD newaliases(1) DESCRIPTION (Notice); OpenBSD newaliases(8) DESCRIPTION; Solnix newaliases(8) |
| NetBSD | log level and ignored flags | Solnix -oLn sets the default log level (default 9), and -on validates the right-hand side of aliases. In NetBSD's Postfix interface, -L label is ignored (use syslog_name), and the -n and -m flags are ignored.Source: Solnix newaliases(8) -oLn, -on; NetBSD newaliases(1) -L, -m, -n |
| NetBSD | visibility delay and -I | NetBSD documents that an alias database update may take a minute to become visible; postfix reload removes the delay. It also accepts -I as well as -bi. The Solnix page describes neither a delay nor -I.Source: NetBSD newaliases(1) DESCRIPTION (newaliases, Note; -bi, -I); Solnix newaliases(8) |
Standards
- POSIX: newaliases is not a POSIX.1-2024 utility.
- Solnix: The page lists attributes(7) under SEE ALSO but gives no interface stability level in the bundle text.
Writing portable scripts
- Call plain newaliases with no options in scripts. Flags differ:
-Con Solnix and NetBSD,-fon OpenBSD, and none on FreeBSD. - Check the exit status only as zero versus non-zero. Only Solnix documents the specific sysexits.h codes.
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.