logins(8) on Solnix vs Linux and the BSDs

On Solnix, logins is the illumos logins at /usr/bin/logins, documented in section 8. The only counterpart in the bundle is FreeBSD logins(1), which has the same option letters. The details differ: what -s, -u and -x select or print, and where the data comes from. Linux, OpenBSD and NetBSD have no counterpart page in the bundle.

What Solnix runs

A default Solnix system runs the illumos logins at /usr/bin/logins. No other variants are shipped. The Solnix page is in section 8, and the FreeBSD page is in section 1.

Differences

Compared withTopicWhat differs
FreeBSD-s and -u definitionFreeBSD defines system accounts as UIDs below 1000 plus nobody (UID 65534), and user accounts as UIDs above 1000 except nobody. The Solnix page says only 'all system logins' and 'all user logins', with no UID boundary. Do not assume the same split.
Source: FreeBSD logins(1) -s, -u; Solnix logins(8) -s, -u
FreeBSD-x outputSolnix -x prints home directory, login shell and password aging information, each on a separate line. It includes a password status code (NP, LK, NL, PS or UN) and the last-change date. FreeBSD -x documents only home directory and shell.
Source: Solnix logins(8) -x; FreeBSD logins(1) -x
FreeBSD-a outputSolnix -a adds two password expiration fields: days a password may stay unused before it becomes inactive, and the expiry date. FreeBSD describes -a as password change and account expiration times. The wording differs, so compare the actual output before parsing it.
Source: Solnix logins(8) -a; FreeBSD logins(1) -a
FreeBSDno selection optionsFreeBSD states that with no selection options all accounts are displayed. The Solnix page documents a default set of fields and a sort order (by uid, system logins first, then user logins). It does not state the no-selection case.
Source: FreeBSD logins(1) DESCRIPTION; Solnix logins(8) DESCRIPTION
FreeBSD-g and -l combinedSolnix lists a user only once when -l and -g are combined, even if the user is in several selected groups. The FreeBSD page does not say this. Both pages say that multiple selection options display any account that matches any criterion.
Source: Solnix logins(8) -g, -l, OPTIONS; FreeBSD logins(1) DESCRIPTION
FreeBSDdata sourcesSolnix -l can read from /etc/passwd, /etc/shadow and other nameservices, depending on the lookups set in /etc/nsswitch.conf. The FreeBSD page names no files and refers to getpwent(3), getgrent(3), group(5) and passwd(5).
Source: Solnix logins(8) -l; FreeBSD logins(1) SEE ALSO
FreeBSDman section and synopsisSolnix documents logins in section 8 with the path /usr/bin/logins. FreeBSD documents it in section 1. The Solnix synopsis writes -g group... and -l login_name..., and the FreeBSD one writes -g groups and -l logins. Both take comma-separated lists.
Source: Solnix logins(8) SYNOPSIS; FreeBSD logins(1) SYNOPSIS
Linux, OpenBSD, NetBSDno counterpart pageThe bundle has no logins page for Linux, OpenBSD or NetBSD, so the manual cannot confirm that the command exists there. Check before using logins in a script that must run on those systems.
Source: Bundle header: counterparts list only freebsd logins(1)

Standards

  • POSIX: logins is not a POSIX.1-2024 utility.
  • Solnix: The Solnix page's SEE ALSO points to attributes(7). The bundle text shows no interface stability table.

Writing portable scripts

  • logins is not POSIX, and the bundle shows pages only for Solnix and FreeBSD. For scripts that must run elsewhere, read the passwd database with getent or a similar tool instead.
  • Do not rely on -s or -u selecting the same accounts across systems: FreeBSD fixes UID boundaries in its page, and the Solnix page gives none.

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.