subuid(5)

subuid5

The configuration for subordinate user ids

Overview

Subuid authorizes a user id to map ranges of user ids from its namespace into child namespaces.

The delegation of the subordinate uids can be configured via the subid field in /etc/nsswitch.conf file. Only one value can be set as the delegation source. Setting this field to files configures the delegation of uids to /etc/subuid. Setting any other value treats the delegation as a plugin following with a name of the form libsubid_$value.so. If the value or plugin is missing, then the subordinate uid delegation falls back to files.

Note, that newusers, useradd, and usermod will only create entries in /etc/subuid if subid delegation is managed via subid files.

Local subordinate delegation

Each line in /etc/subuid contains a user name and a range of subordinate user ids that user is allowed to use. This is specified with three fields delimited by colons (“:”). These fields are:

• login name or UID

• numerical subordinate user ID

• numerical subordinate user ID count

This file specifies the user IDs that ordinary users can use, with the newuidmap command, to configure uid mapping in a user namespace.

Multiple ranges may be specified per user.

When large number of entries (10000-100000 or more) are defined in /etc/subuid, parsing performance penalty will become noticeable. In this case it is recommended to use UIDs instead of login names. Benchmarks have shown speed-ups up to 20x.

Files

/etc/subuid

Per user subordinate user IDs.

/etc/subuid-

Backup file for /etc/subuid.

Releases

7 releases since Debian 8 (Jessie); the text changed 6 times.

  1. 8
  2. 9
  3. 10
  4. 11
  5. 12
  6. 13
  7. Arch

From shadow 4.20.0.arch1-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.