]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
deb/cephadm: add explicit --home for cephadm user 64459/head
authorCasey Bodley <cbodley@redhat.com>
Fri, 11 Jul 2025 14:48:47 +0000 (10:48 -0400)
committerCasey Bodley <cbodley@redhat.com>
Wed, 16 Jul 2025 15:19:18 +0000 (11:19 -0400)
cephadm.postinst fails on ubuntu 24.04, because the cephadm user it
creates ends up with a `/nonexistent` home directory:

> mkdir: cannot create directory '/nonexistent/.ssh': No such file or directory

on ubuntu 22.04, this user's home directory is `/home/cephadm`

the `adduser` man page for 24.04 includes this new text:
> If no home directory is specified, the default home directory for a new system user is /nonexistent. This directory should never exist on any Debian system, and adduser will never create it automatically.

commit 90bc0369243077c2aaf67f0de2bab5810b217f4e had previously added
`--home /home/cephadm`, but that was later removed by commit
c5a316cfd5e993ad5accd12ed101dc33ff671163 to support non-default home
directories. the latter commit's author recommends use of
`--home /var/lib/cephadm` instead

Fixes: https://tracker.ceph.com/issues/72083
Signed-off-by: Casey Bodley <cbodley@redhat.com>
debian/cephadm.postinst

index 87a0d81e22c06bd4a36c3591b3705a7816beb289..b586ee7183d775d979848c4281b166e1e3b84aa4 100644 (file)
@@ -28,6 +28,7 @@ case "$1" in
          adduser --quiet \
                  --system \
                  --disabled-password \
+                 --home /var/lib/cephadm \
                  --shell /bin/bash cephadm 2>/dev/null || true
          usermod --comment "cephadm user for mgr/cephadm" cephadm
          echo "..done"