From homectl:
Home directories managed by systemd-homed.service are usually in one of two states, … when “active” they are unlocked and mounted, and thus accessible to the system and its programs; … Activation happens automatically at login of the user
What does ‘login’ mean? For example, I created a user and tried to su -l test
, but I got: cannot change directory to /home/test.
What is required to ‘activate’ a homed directory if not a login shell?
It is the same as with all logins: It goes through the Pluggable Authentication Modules. So you need a service that uses PAM (they basically all do for a long time now) and the configuration of that service needs to include homed as an option to authenticate users. Check /etc/pam.d for the config files.
sudo machinectl login the-user@localhost
That will handle all the PAM stuff as if you actually logged in.
You can also ssh into localhost as the user if you have that set up
Actually, I suspect ‘login’ refers to init and logind,
Back to the wiki to find out the steps during late userspace…
Try using doas maybe