我在 Debian 11 上,在使用 kvm 的虚拟机上 我的用户可以通过控制台、ssh 和 lightdm 登录。但是systemd出现错误
sudo systemctl status [email protected]
● [email protected] - User Manager for UID 1000
Loaded: loaded (/lib/systemd/system/[email protected]; static)
Drop-In: /lib/systemd/system/[email protected]
└─sysfs.conf
Active: failed (Result: exit-code) since Mon 2021-09-06 20:20:08 UTC; 50min ago
Docs: man:[email protected](5)
Main PID: 897 (code=exited, status=1/FAILURE)
CPU: 12ms
set 06 20:20:08 host systemd[1]: Starting User Manager for UID 1000...
set 06 20:20:08 host systemd[897]: pam_unix(systemd-user:session): session opened for user user(uid=1000) by (uid=0)
set 06 20:20:08 host systemd[897]: Failed to determine supported controllers: No such process
set 06 20:20:08 host systemd[897]: Failed to allocate manager object: No such process
set 06 20:20:08 host systemd[1]: [email protected]: Main process exited, code=exited, status=1/FAILURE
set 06 20:20:08 host systemd[1]: [email protected]: Failed with result 'exit-code'.
set 06 20:20:08 host systemd[1]: Failed to start User Manager for UID 1000.
我看到服务尝试执行这一行
grep -i exec /lib/systemd/system/[email protected]
ExecStart=/lib/systemd/systemd --user
我尝试调试服务
/lib/systemd/systemd --user --log-level=debug
systemd 247.3-6 running in user mode for user 1000/user. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +ZSTD +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=unified)
Failed to create '/run/user/1000/systemd/inaccessible', ignoring: File exists
Failed to create '/run/user/1000/systemd/inaccessible/reg', ignoring: File exists
Failed to create '/run/user/1000/systemd/inaccessible/dir', ignoring: File exists
Failed to create '/run/user/1000/systemd/inaccessible/fifo', ignoring: File exists
Failed to create '/run/user/1000/systemd/inaccessible/sock', ignoring: File exists
Failed to create '/run/user/1000/systemd/inaccessible/chr', ignoring: File exists
Failed to create '/run/user/1000/systemd/inaccessible/blk', ignoring: Operation not permitted
Found cgroup2 on /sys/fs/cgroup/, full unified hierarchy
Failed to determine root cgroup, ignoring cgroup memory limit: No such process
RLIMIT_MEMLOCK is already as high or higher than we need it, not bumping.
Found cgroup2 on /sys/fs/cgroup/, full unified hierarchy
Unified cgroup hierarchy is located at /sys/fs/cgroup/user.slice/user-1000.slice/session-1.scope.
Failed to create /user.slice/user-1000.slice/session-1.scope/init.scope control group: Permission denied
Failed to allocate manager object: Permission denied
有什么解决办法吗?
答案1
找到解决方案/解决方法,可能是 systemd 的一个错误。使用 grub“systemd.unified_cgroup_hierarchy=0”上的此命令行,一切正常
vim /etc/default/grub
GRUB_CMDLINE_LINUX="apparmor=1 security=apparmor systemd.unified_cgroup_hierarchy=0"
update-grub2
shutdown -r now
我们做了一些检查,一切都按预期正常工作
systemctl is-active [email protected]
active
sudo systemctl list-units --state failed
UNIT LOAD ACTIVE SUB DESCRIPTION
0 loaded units listed.