![如何修复在启动时永远运行 apparmor 的 ubuntu 安装?](https://linux22.com/image/1195049/%E5%A6%82%E4%BD%95%E4%BF%AE%E5%A4%8D%E5%9C%A8%E5%90%AF%E5%8A%A8%E6%97%B6%E6%B0%B8%E8%BF%9C%E8%BF%90%E8%A1%8C%20apparmor%20%E7%9A%84%20ubuntu%20%E5%AE%89%E8%A3%85%EF%BC%9F.png)
昨晚,我尝试将 Ubuntu 22.04.2 LTS 安装升级到 23.04。重新启动后,系统将挂起,试图启动 AppArmor。我以前发现过几篇关于禁用 app armor 在恢复模式下启动的帖子。我也无法启动到恢复模式(同样的行为)。我尝试过在 grub 屏幕上使用恢复模式输入 systemd.mask=apparmor.service,就像旧帖子中建议的那样,但没有成功。当我说它挂起时,我让它运行了一整夜,它运行了 9 个小时,看不到尽头。
我正在考虑在闪存驱动器上启动 ubuntu 安装程序,然后尝试通过这种方式进行修复。我想尝试 chroot SSD 上的文件系统,看看是否可以清理一些旧应用程序并确保所有内容都已更新。这是正确的方法吗?有没有办法从已安装的文件系统禁用 AppArmor,使其无法启动?
安装过程中我看到两个关于 samba 和 ntpd 配置文件的警告,建议重新启动,但没有其他异常。
我确实在该系统上安装了相当数量的 snap 包和一个 flatpak。
答案1
为了解决这个问题,我必须从 23.04 版的 ubuntu 安装程序 USB 映像启动,使用 sudo mount /dev/nvme0n1p2 /mnt 挂载安装操作系统的文件系统,运行 chroot /mnt,编辑 /etc/resolv.conf 以添加有效的 DNS 服务器,
sudo apt 更新;sudo apt 升级;sudo apt dist-upgrade
然后我禁用了 AppArmor sudo systemctl disable apparmor.service
重新启动后,系统恢复正常。
答案2
我也遇到了同样的问题。经过几个小时的研究、反复试验,终于解决了这个问题,那就是清除 apt 缓存并删除 apparmor。
清除 apt 缓存
sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock
cd /var/lib/dpkg/updates
sudo rm *
移除装甲
sudo apt remove apparmor