kpropd(8) on Solnix vs Linux and the BSDs

On Solnix, kpropd is the illumos slave-KDC propagation daemon at /usr/lib/krb5/kpropd, not on PATH. It runs under inetd and SMF by default, and incremental propagation is off unless sunw_dbprop_enable is set. FreeBSD's kpropd uses different default paths, different kdc.conf variable names and a different run mode.

What Solnix runs

A default Solnix system has the illumos kpropd at /usr/lib/krb5/kpropd, outside /usr/bin, /usr/sbin and /sbin. No other variants are shipped. The service is svc:/network/security/krb5_prop:default, started by inetd(8). Manage it with svcadm(8) and inetadm(8), and query it with svcs(1). The bundle has a counterpart page only for FreeBSD, so it says nothing about Linux, OpenBSD or NetBSD.

Differences

Compared withTopicWhat differs
FreeBSDdefault run modeSolnix kpropd defaults to non-standalone mode, with inetd listening, and -S switches to standalone. FreeBSD kpropd detects whether inetd started it and runs standalone, backgrounding itself, if not. FreeBSD -S is accepted but does nothing.
Source: Solnix kpropd(8) -S; FreeBSD kpropd(8) DESCRIPTION (release 1.11 text)
FreeBSDservice managementOn Solnix, kpropd is an SMF service, svc:/network/security/krb5_prop:default, with start and restart delegated to inetd(8). The FreeBSD page shows an /etc/inetd.conf line for the non-incremental case and gives no service-manager instructions.
Source: Solnix kpropd(8) NOTES; FreeBSD kpropd(8) DESCRIPTION (inetd.conf example)
FreeBSDincremental propagation settingsSolnix enables incremental propagation with sunw_dbprop_enable (default false) in kdc.conf and polls at sunw_dbprop_slave_poll (default 2m). FreeBSD uses iprop_enable and iprop_replica_poll. A kdc.conf written for one system will not turn it on for the other.
Source: Solnix kpropd(8) DESCRIPTION; FreeBSD kpropd(8) DESCRIPTION
FreeBSDdefault file locationsSolnix defaults are /var/krb5/from_master (-f), /var/krb5/principal (-F), /usr/sbin/kdb5_util (-p) and /etc/krb5/kpropd.acl (-a). FreeBSD defaults are @LOCALSTATEDIR@/krb5kdc/from_master, @LOCALSTATEDIR@/krb5kdc/kpropd.acl and @SBINDIR@/kdb5_util. The FreeBSD -F default is only 'the default'.
Source: Solnix kpropd(8) OPTIONS -f, -F, -p, -a; FreeBSD kpropd(8) OPTIONS -f, -F, -p, -a
FreeBSD-P portSolnix -P sets the listen port, default 754 (service name krb5_prop). FreeBSD also listens on 754, but says -P is only useful in combination with -S.
Source: Solnix kpropd(8) -P; FreeBSD kpropd(8) -P and DESCRIPTION
FreeBSD-r realm defaultSolnix -r takes its default realm from /etc/krb5/krb5.conf. The FreeBSD page describes -r as the realm of the primary server and gives no default.
Source: Solnix kpropd(8) -r; FreeBSD kpropd(8) -r
FreeBSDforeground and debugFreeBSD has -D to stay in the foreground, and -d also implies -D. Solnix has no -D. Its -d only enables debug mode, and the page does not say whether the daemon stays in the foreground.
Source: Solnix kpropd(8) SYNOPSIS, -d; FreeBSD kpropd(8) -D, -d
FreeBSDoptions only on FreeBSDFreeBSD kpropd accepts -A admin_server (server for incremental updates), --pid-file=pid_file (standalone mode) and -x db_args. The Solnix synopsis has none of these.
Source: FreeBSD kpropd(8) SYNOPSIS, -A, --pid-file, -x; Solnix kpropd(8) SYNOPSIS
FreeBSD-p argumentSolnix -p kdb_util and -s srv_tabfile take an argument. In the FreeBSD page, -s takes keytab_file, and -p is described without a named argument in the text. Both pages say -p selects the kdb5_util program.
Source: Solnix kpropd(8) -p, -s; FreeBSD kpropd(8) -p, -s
FreeBSDterminologySolnix writes 'master' and 'slave' KDC. FreeBSD writes 'primary' and 'replica'. The Solnix principal name for incremental propagation is kiprop/<hostname>@<REALM>, the same form FreeBSD gives for the replica's keytab.
Source: Solnix kpropd(8) DESCRIPTION; FreeBSD kpropd(8) DESCRIPTION

Standards

  • POSIX: kpropd is not a POSIX.1-2024 utility.
  • Solnix: Interface Stability: Evolving.
  • FreeBSD: The FreeBSD page has no STANDARDS section.

Writing portable scripts

  • Pass explicit -f, -F, -p and -a paths in scripts and unit files, because the defaults live under /var/krb5 and /etc/krb5 on Solnix but under @LOCALSTATEDIR@/krb5kdc on FreeBSD.
  • Do not rely on -S, -D or --pid-file: -S only means something on Solnix, and -D and --pid-file exist only in the FreeBSD page.

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.