deb/cephadm: add explicit --home for cephadm user

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 90bc036924 had previously added
`--home /home/cephadm`, but that was later removed by commit
c5a316cfd5 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>
(cherry picked from commit 6fddc83e26)
This commit is contained in:
Casey Bodley 2025-07-11 10:48:47 -04:00
parent ec20d40ab6
commit 3017121fb2

View 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"