rsh(1) on Solnix vs Linux and the BSDs
On Solnix, rsh is the illumos rsh at /usr/bin/rsh, with optional Kerberos V5 authentication and encryption (-a, -f, -F, -k, -K, -PN, -PO, -x). Its manual says it does not return the remote command's exit status. It has no -p, -4, -6 or -d, and no user@host form, all of which the Linux (inetutils) and NetBSD pages document.
The manual pages
- Solnix: rsh(1) from
pkgs.solnix.illumos-world-man· illumos.org - Linux: rsh(1) inetutils-2.7
- NetBSD: rsh(1) 11.0
What Solnix runs
A default Solnix system runs the illumos rsh at /usr/bin/rsh. The page also covers remsh and remote_shell. /usr/ucb/rsh is also shipped, but the bundle does not describe how it differs. The bundle has no FreeBSD or OpenBSD rsh page, so nothing is claimed about those systems.
Differences
| Compared with | Topic | What differs |
|---|---|---|
| Linux, NetBSD | exit status of the remote command | The Solnix page says rsh does not return the exit status code of command, so a script cannot rely on $? reflecting the remote command. The Linux and NetBSD pages do not say what rsh returns. Source: Solnix rsh(1) DESCRIPTION; Linux rsh(1) DESCRIPTION; NetBSD rsh(1) DESCRIPTION |
| Linux, NetBSD | Kerberos and encryption options | Solnix rsh has Kerberos V5 options -a, -f, -F, -k realm, -K, -PN/-PO and -x (encrypt session traffic). The Linux and NetBSD pages list no Kerberos or encryption options.Source: Solnix rsh(1) SYNOPSIS, OPTIONS (-a, -f, -F, -k, -K, -PN, -PO, -x); Linux rsh(1) DESCRIPTION; NetBSD rsh(1) SYNOPSIS |
| Linux, NetBSD | encryption caveat | On Solnix, even with -x the command itself is sent unencrypted; only the subsequent session traffic is encrypted. Without -x, the manual describes no encryption.Source: Solnix rsh(1) DESCRIPTION (last paragraph); Solnix rsh(1) -x |
| NetBSD | -p port | NetBSD rsh -p port connects to a port other than the "shell" service. The Solnix SYNOPSIS and OPTIONS have no -p, and the Linux page lists none either.Source: NetBSD rsh(1) -p; Solnix rsh(1) SYNOPSIS, OPTIONS |
| Linux, NetBSD | forcing IPv4 or IPv6 | Linux and NetBSD rsh take -4 and -6. Solnix has no such flags. Its page says rsh is IPv6-enabled, but IPv6 is not currently supported with Kerberos V5 authentication.Source: Linux rsh(1) -4, -6; NetBSD rsh(1) -4, -6; Solnix rsh(1) USAGE |
| Linux, NetBSD | user@host syntax | Linux and NetBSD accept [USER@]HOST or username@host. The Solnix SYNOPSIS shows only -l username for choosing the remote user. Solnix -l is the only documented way to set it.Source: Linux rsh(1) SYNOPSIS; NetBSD rsh(1) SYNOPSIS; Solnix rsh(1) SYNOPSIS, -l |
| Linux, NetBSD | -d socket debugging | Linux and NetBSD rsh have -d to turn on socket debugging with setsockopt(2). Solnix rsh has no -d. Linux also has -e (escape character) and -8 (eight-bit input path), which Solnix lacks.Source: Linux rsh(1) -d, -e, -8; NetBSD rsh(1) -d; Solnix rsh(1) SYNOPSIS |
| Linux, NetBSD | hostname from program name | If Solnix rsh is run under a name other than rsh, it uses that name as the hostname, so a symlink named after a host runs a remote shell there. remsh is treated as an alias only if /usr/bin/remsh exists. The other two pages do not describe this.Source: Solnix rsh(1) USAGE; Linux rsh(1); NetBSD rsh(1) |
| Linux, NetBSD | locale of remote command | On Solnix, if the user's login shell initialization file sets no locale, rsh runs the command in the "C" locale rather than the remote machine's default locale. The other pages do not mention locale handling. Source: Solnix rsh(1) DESCRIPTION; Linux rsh(1); NetBSD rsh(1) |
| NetBSD | interactive commands | The NetBSD BUGS section says you cannot run an interactive command such as vi(1) with rsh and should use rlogin(1). The Solnix page documents no such restriction. Source: NetBSD rsh(1) BUGS; Solnix rsh(1) DESCRIPTION |
| Linux | version and usage options | Linux (GNU inetutils 2.7) rsh has -V/--version, --usage and long options such as --user and --no-input. The Solnix page documents only single-letter options and no version flag.Source: Linux rsh(1) -V, --usage, --user, --no-input; Solnix rsh(1) SYNOPSIS |
Standards
- POSIX: rsh is not a POSIX.1-2024 utility.
- NetBSD: HISTORY: The rsh command appeared in 4.2BSD.
- Solnix: The visible page text refers to largefile(7) for files of 2 Gbyte or more and to ip6(4P) for IPv6. The bundle is trimmed and shows no ATTRIBUTES or stability section.
Writing portable scripts
- Do not rely on rsh's exit status for the remote command: the Solnix page says it is not returned. Have the remote command print its own status, or use a different transport.
- For a portable remote user, use
-lusername; Solnix has no user@host form. Avoid-p,-4,-6and-d, which Solnix lacks.
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.