![在 Live CD 系统上使用 systemd-home](https://linux22.com/image/198935/%E5%9C%A8%20Live%20CD%20%E7%B3%BB%E7%BB%9F%E4%B8%8A%E4%BD%BF%E7%94%A8%20systemd-home.png)
我正在配置一个archiso
配置文件以正确实现由其生成的 iso 管理的用户systemd-home
。用户的主目录不需要加密。
我怎样才能做到这一点?
附:好像没有systemd-home
标签。
聚苯醚:我想这个问题的答案也有答案如何轻松地将管理的用户迁移systemd-home
到新系统?
答案1
假设您已使用 和 创建了用户,user
并且您正在使用标准用户结构运行 live cd。UID
GID
60101
先决条件
所管理的用户systemd-home
需要特定于站点的配置,这取决于系统的machine-id
.由于您使用的是 Live CD 系统,因此您需要首先设置静态machine-id
。
为此,请将该systemd.machine_id=<your_machine_id>
选项添加到内核启动参数中。你可以获得一个machine-id
系统
systemd-machine-id-setup --print
注意: machine-id
应被视为“机密”,并且不得暴露在不受信任的环境中,特别是在网络上。
设置
启用该
systemd-homed
服务(在 live CD 上,这意味着为 中的关联服务设置正确的符号链接/etc/systemd/system
)。设置
systemd-home
配置文件,使其不会创建加密的主页:/etc/systemd/homed.conf ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ DefaultStorage=directory
删除
user
其中的任何条目/etc/passwd
/etc/gshadow
/etc/shadow
/etc/group
将用户目录从 移动
/home/user
到/home/user.saved
让
user
管理人systemd-home
:homectl create user --uid=60101 \ --real-name="Standard Computer User" \ --shell=/usr/bin/zsh
将旧家搬到新家:
homectl with foobar -- rsync -aHAXv \ --remove-source-files \ /home/foobar.saved/ .
检查所有内容都已正确传递。
复制
/etc/systemd/homed.conf
/home/user.homedir
/var/lib/systemd/home
返回
airootfs
您的archiso
个人资料。