systemd 245 came out on the 6th of March 2020. In this release, among many changes brought, a notable one is that regarding how we see and think of the Linux /home directory. A new service systemd-homed.service has been added, whose role is to manage home directories
systemd 245 came out on the 6th of March 2020.
In this release, among many changes brought, a notable one is that regarding how we see and think of the Linux /home
directory. A new service systemd-homed.service
has been added, whose role is to manage home directories.
Traditionally, user information on Linux systems have been recorded in the /etc/passwd
and /etc/shadow
files. The former contains details about the user name, id, group id, shell, home directory, among other details, while the latter contains the user password information.
On the other hand systemd-homed.service
stores user information in a ~/.identity
file in JSON format. The choice of JSON was mainly due to its popularity and easiness to process with the majority of programming languages.
Thus, every directory managed by systemd-homed.service
contains both the user information and the user data.
To create, remove or change home directories one would use the homectl
command.
$ sudo homectl create john --real-name="John Doe" -G wheel --disk-size=500M
What if you could carry your home directory in a pendrive and work from any (Linux) machine as if you are "home" ?
$ sudo homectl create john --real-name="John Doe" --image-path=/dev/disk/by-id/usb-SanDisk_Ultra_Fit_476fff954b2b5c44-0:0 --tasks-max=500
The above command creates the user john
in a pendrive and assigns a maximum of 500 concurrent tasks to him.
systemd-homed.service
also allows you to have an encrypted home directory, but that, I will write about on another day. 😉
Twitter/Facebook card image source: auroria.io