我在启动时遇到此错误。aa-status 表示模块已加载。有些处于强制模式。
Oct 07 22:44:29 pc apparmor[787]: * Starting AppArmor profiles
Oct 07 22:44:26 pc systemd[1]: Starting LSB: AppArmor initialization...
Oct 07 22:44:29 pc apparmor[787]: Multiple definitions for hat chromium in profile (null) exist,bailing out.
Oct 07 22:44:30 pc apparmor[787]: Skipping profile in /etc/apparmor.d/disable: usr.sbin.rsyslogd
Oct 07 22:44:30 pc apparmor[787]: Multiple definitions for hat chromium in profile (null) exist,bailing out.
Oct 07 22:44:30 pc apparmor[787]: Skipping profile in /etc/apparmor.d/disable: usr.sbin.rsyslogd
Oct 07 22:44:30 pc apparmor[787]: ...fail!
Oct 07 22:44:30 pc systemd[1]: apparmor.service: Control process exited, code=exited status=123
Oct 07 22:44:30 pc systemd[1]: Failed to start LSB: AppArmor initialization.
Oct 07 22:44:30 pc systemd[1]: apparmor.service: Unit entered failed state.
Oct 07 22:44:30 pc systemd[1]: apparmor.service: Failed with result 'exit-code'.
有一个类似的问题,Apparmor 初始化失败,退出代码 123的答案是安装 apparmor-easyprof-ubuntu,但它并没有修复我的笔记本电脑上的问题。
我尝试设置一个 Chromium 配置文件,我想我做到了,因为它阻止 Chromium 读取电池电量和 dbus。但我不确定这个启动错误是什么。我在使用 systemctl start apparmor-service 时也遇到了同样的错误。
我已删除 /etc/apparmor.d/ 中的 usr.bin.chromium-browser,清除并重新安装了 apparmor-profiles 和 apparmor-profiles-extra
这个错误是什么?我该如何修复它?
编辑:相同或相似的问题,尚未回答Ubuntu 16.04。无法启动 LSB:AppArmor 初始化
编辑2:我认为这可能与此有关:https://bugs.launchpad.net/apparmor/+bug/1503762
编辑3:debsums -ac 给了我有关 systemd 和 apparmor 的信息
/etc/apparmor.d/usr.sbin.dnsmasq
/etc/apparmor.d/usr.bin.chromium-browser
/etc/apparmor.d/usr.bin.totem-previewers
/etc/apparmor.d/usr.bin.firefox
/etc/apparmor.d/lightdm-guest-session
/etc/systemd/logind.conf
答案1
您可能已将 /etc/apparmod.d 复制到 ~backup,否则 rsync 步骤将不起作用(或没有任何意义)。
答案2
这很痛苦。但是我已经解决了。虽然我仍然不知道是什么原因造成的。
我还有另一台运行 Ubuntu 16.04 的机器。它不像我的笔记本电脑那样定制。我检查了它的日志,发现apparmor.service就可以正常启动了。
- 以 root 身份从我的桌面删除
/etc/apparmor.d/
。 - 移至我的笔记本电脑
/etc/apparmor.d/
上/etc/apparmor.d.backup/
。 /etc/apparmor.d/
已在我的笔记本电脑上解压/tmp
。- 以 root 身份运行
rsync -avx /tmp/apparmor.d/ /etc/apparmor.d/
。 systemctl start apparmor
systemctl status apparmor