Apparmor Init失败,退出代码123

Apparmor启动和命令行启动失败,结果如下

x@x-NICEPUTER:~$ systemctl --failed UNIT LOAD ACTIVE SUB DESCRIPTION ● apparmor.service loaded failed failed LSB: AppArmor initialization LOAD = Reflects whether the unit definition was properly loaded. ACTIVE = The high-level unit activation state, ie generalization of SUB. SUB = The low-level unit activation state, values depend on unit type. 1 loaded units listed. Pass --all to see loaded but inactive units, too. To show all installed unit files use 'systemctl list-unit-files'. x@x-NICEPUTER:~$ systemctl status apparmor.service ● apparmor.service - LSB: AppArmor initialization Loaded: loaded (/etc/init.d/apparmor; bad; vendor preset: enabled) Active: failed (Result: exit-code) since Tue 2016-05-03 21:52:29 MDT; 1h 15min ago Docs: man:systemd-sysv-generator(8) Process: 523 ExecStart=/etc/init.d/apparmor start (code=exited, status=123) May 03 21:52:22 x-NICEPUTER apparmor[523]: AppArmor parser error for /etc/apparmor.d/usr.bin.webbrowser-app in /etc/apparmor.d/usr.bin.webbrowser-app at line 26: Could not open '/usr/share/apparmor/hardware/graphics.d' May 03 21:52:28 x-NICEPUTER apparmor[523]: Skipping profile in /etc/apparmor.d/disable: usr.sbin.rsyslogd May 03 21:52:29 x-NICEPUTER apparmor[523]: Skipping profile in /etc/apparmor.d/disable: usr.bin.firefox May 03 21:52:29 x-NICEPUTER apparmor[523]: AppArmor parser error for /etc/apparmor.d/usr.bin.webbrowser-app in /etc/apparmor.d/usr.bin.webbrowser-app at line 26: Could not open '/usr/share/apparmor/hardware/graphics.d' May 03 21:52:29 x-NICEPUTER apparmor[523]: Skipping profile in /etc/apparmor.d/disable: usr.sbin.rsyslogd May 03 21:52:29 x-NICEPUTER apparmor[523]: ...fail! May 03 21:52:29 x-NICEPUTER systemd[1]: apparmor.service: Control process exited, code=exited status=123 May 03 21:52:29 x-NICEPUTER systemd[1]: Failed to start LSB: AppArmor initialization. May 03 21:52:29 x-NICEPUTER systemd[1]: apparmor.service: Unit entered failed state. May 03 21:52:29 x-NICEPUTER systemd[1]: apparmor.service: Failed with result 'exit-code'. 

/usr/share/不存在目录apparmor/hardware/apparmor/hardware/ graphics.d因此#include /usr/share/apparmor/hardware/graphics.d apparmor/hardware/第26行的#include /usr/share/apparmor/hardware/graphics.d /etc/apparmor.d/usr.bin.webbrowser-app返回null并导致失败。

我如何正确地解决这个问题,或者至少创建一个允许apparmor.service初始化而没有失败的解决方法?

 uname -a Linux x-NICEPUTER 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux sudo lshw [sudo] password for x: x-niceputer description: Computer width: 64 bits capabilities: smbios-2.4 vsyscall32 *-core description: Motherboard physical id: 0 *-memory description: System memory physical id: 0 size: 3793MiB *-cpu product: Intel(R) Core(TM)2 Duo CPU P8400 @ 2.26GHz 

似乎是一个报告的错误( #1554803 )

可以解决安装apparmor-easyprof-ubuntu或手动创建文件夹的问题。

 sudo apt-get install apparmor-easyprof-ubuntu 

对我来说,我无法安装任何软件包,因为ifconfignetwork-manager都无法找到/启动我的USB wifi加密狗。

所以@ xtrchessreal的评论对我有用:

在恢复模式shell中,创建以下目录:

 mkdir -p /usr/share/apparmor/hardware/graphics.d mkdir -p /usr/share/apparmor/hardware/audio.d mkdir -p /usr/share/apparmor/hardware/video.d 

然后reboot