You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04升级中断后Snap应用(如Firefox)无法启动,snap-confine权限异常问题求助

Ubuntu 22.04升级中断后Snap应用(如Firefox)无法启动,snap-confine权限异常问题求助

我在执行apt upgrade的时候系统突然崩溃了,重启后再次尝试升级时收到提示:dpkg被中断,必须手动运行sudo dpkg --configure -a来修复问题。我按提示执行后,在配置snapd环节遇到了AppArmor配置文件的选择——系统提示我当前的配置文件已被修改,询问是否要替换成维护者版本,我选择了保留自己的版本(输入N)。

完成配置后,我发现最近升级过的Snap应用(比如Firefox)在系统重启后无法从桌面启动了。不过如果手动执行以下命令:

sudo apparmor_parser -r /etc/apparmor.d/*snap-confine*

就能正常启动这些应用,但重启系统后问题又会重复出现。

我已经尝试了以下所有方法,但都没能彻底解决问题:

  • 启用并启动AppArmor和snapd.apparmor服务:
    sudo systemctl enable --now apparmor.service
    sudo systemctl enable --now snapd.apparmor.service
    
  • 重启并启用snapd服务:
    sudo service start snapd
    sudo systemctl enable snapd.service
    sudo systemctl enable --now snapd.service
    
  • 执行Snap刷新:
    sudo snap refresh
    
  • 重新安装AppArmor:
    sudo apt reinstall --purge apparmor
    
  • 替换snap-confine的AppArmor配置文件并重启AppArmor:
    sudo cp /var/lib/snapd/apparmor/profiles/snap-confine.snapd.21184 /etc/apparmor.d/usr.lib.snapd.snap-confine.real
    sudo systemctl restart apparmor
    
  • 启动snapd.apparmor服务并重新启用snapd:
    sudo service snapd.apparmor start
    sudo systemctl enable snapd.service
    sudo systemctl start snapd.service
    service snapd.apparmor start
    
  • 彻底卸载并重新安装snapd:
    sudo dpkg -P snapd
    sudo apt install snapd
    

从系统日志里我找到了关键的错误提示:

Mar 28 19:43:40 ... ... firefox_firefox.desktop[...]: snap-confine has elevated permissions and is not confined but should be. Refusing to continue to avoid permission escalation attacks
Mar 28 19:43:40 ... ... firefox_firefox.desktop[...]: Please make sure that the snapd.apparmor service is enabled and started.

目前的服务状态如下:

$ systemctl status snapd.service
● snapd.service - Snap Daemon
     Loaded: loaded (/lib/systemd/system/snapd.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2024-03-29 09:00:28 CET; 1h 8min ago
TriggeredBy: ● snapd.socket
   Main PID: ... (snapd)
      Tasks: 9 (limit: 4519)
     Memory: 21.4M
        CPU: 2.140s
     CGroup: /system.slice/snapd.service
             └─... /usr/lib/snapd/snapd

$ systemctl status apparmor.service
● apparmor.service - Load AppArmor profiles
     Loaded: loaded (/lib/systemd/system/apparmor.service; enabled; vendor preset: enabled)
     Active: active (exited) since Fri 2024-03-29 08:59:45 CET; 1h 10min ago
       Docs: man:apparmor(7)
             https://gitlab.com/apparmor/apparmor/wikis/home/
   Main PID: ... (code=exited, status=0/SUCCESS)
        CPU: 182ms

Snap和AppArmor的版本信息:

$ snap version
snap    2.61.3+22.04
snapd   2.61.3+22.04
series  16
ubuntu  22.04
kernel  6.5.0-26-generic

$ dpkg -l
ii  apparmor                                   3.0.4-2ubuntu2.3                        amd64        user-space parser utility for AppArmor
ii  apparmor-profiles                          3.0.4-2ubuntu2.3                        all          experimental profiles for AppArmor security policies
ii  apparmor-utils                             3.0.4-2ubuntu2.3                        all          utilities for controlling AppArmor

测试结果:

$ sudo snap refresh firefox
snap "firefox" has no updates available

$ firefox
snap-confine has elevated permissions and is not confined but should be. Refusing to continue to avoid permission escalation attacks
Please make sure that the snapd.apparmor service is enabled and started.

补充说明:之前我对AppArmor做过自定义修改,限制了PDF阅读器的网络访问和指定目录权限,执行过这些操作:

$ sudo aa-status
$ sudo apt install apparmor-profiles apparmor-utils
$ sudo aa-enforce /etc/apparmor.d/*

想请教大家,还有什么办法能彻底解决这个问题,让我重启系统后就能直接启动Firefox这类Snap应用?

备注:内容来源于stack exchange,提问作者Philipp M

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 13:18:17