[Share Experiences] apt autoremove 为何成为普通用户的「高危操作」?
Tofloor
poster avatar
deepin-流云
Moderator
Community OP
2025-06-12 16:38
Author

以用为本.png

亲爱的deepin社区用户:

大家好!

近期我们收到多起社区用户反馈:在执行命令进行系统更新或安装软件后,因误用 sudo apt autoremove 命令导致DDE核心组件被卸载、系统无法启动等严重故障。为保障用户系统安全,小助手联合 deepin 研发团队,基于真实故障案例梳理出本安全指南。无论您是普通用户还是技术爱好者,均可按场景快速获取解决方案。

⚠️ 一、sudo apt autoremove 为何对普通用户高风险?

根本原因: 当用户混用软件源(如同时开启 deepin 官方源、第三方仓库、应用更新源等),使用命令卸载系统预装应用如深度之家/国际化翻译征集等,亦或是通过 dpkg/make install 等方式安装软件时,都有可能会破坏 APT 的依赖关系树,导致 autoremove将系统关键包误判为“可卸载”(如DDE关键组件、任务栏、系统壁纸等,严重时甚至可能包含内核驱动)。

🛡️ 二、普通用户替代方案:用图形化工具避免命令风险

deepin 内置的安全维护方式

  1. 卸载软件 → deepin应用商店——应用管理 或 启动器-应用图标右键-卸载
    • 通过应用商店或启动器卸载软件,后台自动处理依赖关系,不会触发系统组件误删
  2. 系统更新控制中心-更新
    • 定期检查官方更新,系统级更新包含安全依赖修正。
  3. 清理缓存(非依赖包) → 终端安全命令
sudo apt clean          # 清理下载的.deb安装包缓存(安全)
sudo apt autoclean      # 清理旧版本.deb缓存(安全)

🔧 三、建议使用 autoremove 时的操作规范(进阶用户参考)

关键原则:先模拟 → 人工审查 → 再执行

# 1. 模拟运行并输出待删列表(不实际执行)
apt -s autoremove  > ~/autoremove-list.txt

# 2. 人工审查列表(重点排查以下敏感包):
cat ~/autoremove-list.txt

必须排除的包类型:

deepin-desktop-*    # 深度桌面环境组件
dde-*               # 深度桌面环境核心模块
linux-image-*       # 系统内核
systemd*            # 系统服务管理
xserver-*           # 显示服务
nvidia-*, mesa-*    # 显卡驱动

如果出现列表内的包,请放弃执行apt autoremove,强行执行会导致系统异常。

确认列表安全后执行:

sudo apt autoremove

🚑 四、已发生误删的紧急修复方案

场景1:桌面异常但能打开终端

# 重装深度桌面核心组件
sudo apt install deepin-desktop-environment-*

场景2:系统无法启动 → LiveCD救援流程

  1. 用 deepin 安装 U 盘启动 → 选择第一项“试用模式”
  2. 挂载原系统分区并进入 Chroot 环境:
sudo mkdir -p /tmp/chroot/
sudo mount /dev/nvme0n1pX /tmp/chroot/        # X替换为实际根分区号
sudo mount --bind /dev /tmp/chroot/dev
sudo mount --bind /proc /tmp/chroot/proc
sudo mount --bind /sys /tmp/chroot/sys
sudo chroot /tmp/chroot/
  1. 重装受损组件:
apt update
apt install --reinstall deepin-desktop-environment-* systemd

请注意:Live CD模式下操作有风险,请谨慎操作并提前备份好数据。


💎 最终建议总结(致所有 deepin 用户)

用户类型 推荐操作
普通用户 建议不要主动使用 sudo apt autoremove• 卸载软件 → 深度应用商店或启动器右键卸载• 清理 →sudo apt clean
进阶用户 严格遵循「模拟-审查-执行」流程后执行

♥️ 温馨提示: deepin 系统的依赖树针对DDE桌面高度定制,任何第三方源的引入都有可能会破坏依赖完整性。若需安装外部软件,建议优先选择deepin应用商店上架应用 或 如意玲珑FlatpakAppimage等方案,总之不论您通过何种途径来安装三方应用,在通过终端命令操作时请慎用 autoremove

Reply Favorite View the author
All Replies
2 / 2
To page
enforcee
deepin
2025-06-13 21:08
#21
liujy126

既然如此,你终端命令执行中就不要提示中就不要有“建议apt autoremove”之类的话,

莫非这话是linux里原生带的你们改不了?

如果不这样做的话删除软件是删不干净的

blush

Reply View the author
W2J
deepin
2025-06-14 09:26
#22

Deepin应该学习mozilla路数,

作好两个样板(gimp,firefox)之后,把精力放在聚合中间件部分,

又先后进化出gtk和rustc,成为行业基线和发展的里程碑。

高聚合低耦合。生态领域,夫善战者无赫赫之功!

Reply View the author
neko
deepin
Ecological co-builder
Resources Team Moderator
2025-06-14 16:39
#23

说个我昨天autoremove发生的事情。

昨天在给小米平板5里的deepin更新,更新后提示一堆可以autoremove的组件。

之后我重启发现无法登录到桌面,就是输入密码后加载然后重新返回登录界面。

最后看日志发现是因为卸载了linglong-bin导致Xseesion找不到玲珑的脚本导致的。

重新安装linglong-bin后可以正常登入进桌面了。

PS:就是下面最后那行。

mmexport1749889908522.jpg

Reply View the author
134******40
deepin
2025-06-14 20:22
#24

学习了。

Reply View the author
fslong
deepin
2025-06-14 23:05
#25
buyike

image.png

根本原因根本不成立,以我自己为例,前两天又重装了系统,重装完系统后就发现有了升级提示,所以就用终端进行了升级,升级完成后系统提示有用不上的程序,建议使用apt autoremove进行删除。结果是执行后再次将主题系统删除了。

必须说明,前面我这就发生过这事,所以我心里明白可能会发生什么,但又希望官方已经修复,只是没想到再交中招。

必须强调,全新安装,第一时间去内测升级的,没有去混用软件源,如果硬说内测更新源也是混源就没办法了。

对了,我用的终端安装命令是 sudo apt update sudo apt dist-upgrade。这个命令也会导致APT 的依赖关系树断裂???

明说就是dde的依赖写的烂。

Reply View the author
181******22
deepin
2025-06-15 12:09
#26

https://bbs.deepin.org/post/288215?id=288215&limit=20&offset=0&postId=1723424

Reply View the author
玲珑沙
deepin
2025-06-15 15:44
#27
neko

说个我昨天autoremove发生的事情。

昨天在给小米平板5里的deepin更新,更新后提示一堆可以autoremove的组件。

之后我重启发现无法登录到桌面,就是输入密码后加载然后重新返回登录界面。

最后看日志发现是因为卸载了linglong-bin导致Xseesion找不到玲珑的脚本导致的。

重新安装linglong-bin后可以正常登入进桌面了。

PS:就是下面最后那行。

mmexport1749889908522.jpg

arm版uos 遇到过 +1

Reply View the author
花雨落逝
Moderator
2025-06-17 09:58
#28

deepin-desktop-* # 深度桌面环境组件 dde-* # 深度桌面环境核心模块 linux-image-* # 系统内核 systemd* # 系统服务管理 xserver-* # 显示服务 nvidia-*, mesa-* # 显卡驱动 ***glibc:为什么没有我***

Reply View the author
boydreaming
deepin
2025-06-17 19:50
#29

有一定道理。👍

Reply View the author
CTZ老斑鸠
deepin
2025-06-20 14:49
#30

2TB硬盘二奶机无所畏惧,从不卸载,从不删文件

Reply View the author
deepin-流云
Moderator
Community OP
2025-06-23 15:45
#31

感谢大家对这个问题的关注,autoremove的风险确实存在,deepin相关的依赖社区研发团队会尽可能的去排查并修复其中存在的问题,但针对一些三方应用的依赖问题依然无法规避,经过这次的讨论之后,社区研发团队已经调整了autoremove的提示方式,当有系统关键组件在autoremove中被卸载时,apt将会发出警告,如果不存在风险则该警告不会触发,这个改动会在近期发布的deepin25版本中上线。

Issue #11784 · linuxdeepin/developer-center

会加红重点警告,等后面25新版一起更新发布。
image.png

Reply View the author
叁陆玖
deepin
2025-06-27 08:30
#32

202506270017234509_image.png

控制中心更新不了,都建议用这个命令,用了

出现这种情况怎么整?是autoremove,还是不autoremove?

Reply View the author
deepin-流云
Moderator
Community OP
2025-06-27 14:31
#33
叁陆玖

202506270017234509_image.png

控制中心更新不了,都建议用这个命令,用了

出现这种情况怎么整?是autoremove,还是不autoremove?

你执行的时候如果有系统关键组件就会提醒警告,没有就放心执行。

Reply View the author
叁陆玖
deepin
2025-06-27 18:15
#34
deepin-流云

你执行的时候如果有系统关键组件就会提醒警告,没有就放心执行。

有几行红色的。怕是以后安装什么提醒还要出现红色的,不敢进行后续操作了。

Reply View the author
秦武扬
deepin
2025-06-28 13:21
#35

蹦了再修,挺好玩。

Reply View the author
2 / 2
To page