summaryrefslogtreecommitdiffstats
path: root/sysusers.d
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2023-01-31 17:04:10 +0100
committerLuca Boccassi <luca.boccassi@gmail.com>2023-02-01 01:02:09 +0100
commit49bb7fe5f88fc35b8529d7d8dfcd4c151a9aaf1a (patch)
tree545bdcd9a06e2d0de746d3e2052373f261835ac3 /sysusers.d
parentmeson: fail build on implicit int warnings (diff)
downloadsystemd-49bb7fe5f88fc35b8529d7d8dfcd4c151a9aaf1a.tar.xz
systemd-49bb7fe5f88fc35b8529d7d8dfcd4c151a9aaf1a.zip
sysusers: insist that root group is 0
In https://bugzilla.redhat.com/show_bug.cgi?id=2156900 sysusers was reporting a conflict between the following lines: u root 0:0 "Super User" /root /bin/bash u root 0 "Super User" /root The problem is that those configurations are indeed not equivalent. If group 0 exists with a different name, the first line would just create the user, but the second line would create a 'root' group with a different GID. The second behaviour seems definitely wrong. (Or at least more confusing in practice than the first one. The system is in a strange shape, but the second approach takes an additional step than is worse than doing nothing.) When this line was initially added, we didn't have the uid:gid functionality for 'u', so we didn't think about this too much. But now we do, so we should use it. $ build/systemd-sysusers --root=/var/tmp/inst7 --inline 'g foobar 0' Creating group 'foobar' with GID 0. $ build/systemd-sysusers --root=/var/tmp/inst7 --inline 'u root 0 "Zuper zuper"' src/sysusers/sysusers.c:1365: Creating group 'root' with GID 999. src/sysusers/sysusers.c:1115: Suggested user ID 0 for root already used. src/sysusers/sysusers.c:1183: Creating user 'root' (Zuper zuper) with UID 999 and GID 999. vs. $ build/systemd-sysusers --root=/var/tmp/inst7 --inline 'u root 0:0 "Zuper zuper"' src/sysusers/sysusers.c:1183: Creating user 'root' (Zuper zuper) with UID 0 and GID 0.
Diffstat (limited to 'sysusers.d')
-rw-r--r--sysusers.d/basic.conf.in2
1 files changed, 1 insertions, 1 deletions
diff --git a/sysusers.d/basic.conf.in b/sysusers.d/basic.conf.in
index a602b872e4..39d906ed5f 100644
--- a/sysusers.d/basic.conf.in
+++ b/sysusers.d/basic.conf.in
@@ -6,7 +6,7 @@
# (at your option) any later version.
# The superuser
-u root 0 "Super User" /root
+u root 0:0 "Super User" /root
# The nobody user/group for NFS file systems
g {{NOBODY_GROUP_NAME}} 65534 - -