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

升级Ubuntu 19.10至20.04将移除Node.js、MySQL Workbench?原因与解决办法

嘿,这个情况我升级Ubuntu的时候也碰到过,特别闹心,来给你详细捋捋原因和解决办法~

为什么升级时会移除Node.js、MySQL Workbench这些软件?

主要有这几个核心原因:

  • 软件不在新版本的官方仓库中:Ubuntu 20.04(Focal Fossa)的官方软件仓库和19.10相比有不少调整,有些旧版本的软件包要么被移除了,要么更换了包名,系统找不到对应的新版本,就会标记为需要移除。
  • 依赖冲突问题:大版本升级会更新系统核心库的版本,这些软件的旧版本依赖的库在20.04里可能已经被淘汰或者不兼容了。系统为了保证升级能顺利完成,会自动移除那些无法解决依赖冲突的软件。
  • 第三方PPA的锅:很多人装Node.js、MySQL Workbench这类软件都是用第三方PPA,而Ubuntu升级大版本时会默认禁用所有非官方PPA。如果这些PPA还没适配20.04,系统找不到对应的包,自然就会把这些软件列在移除清单里。
怎么阻止这些软件被移除?

分两种场景来处理,提前预防和已经触发移除提示时的补救:

升级前的预防操作

  1. 先备份软件列表:把当前已安装的软件导出来,就算不小心被移除了,之后也能快速重装:
    dpkg --get-selections > installed-software-list.txt
    
  2. 更新第三方PPA到适配版本:
    • 比如Node.js,如果你用的是NodeSource的PPA,先换成支持20.04的版本:
      curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
      sudo apt install nodejs
      
    • 对于MySQL Workbench,去官方确认适配20.04的安装源,添加官方的MySQL APT仓库后再更新包列表。
  3. 提前模拟升级排查问题:用apt的模拟升级功能,提前看看哪些软件会被移除,针对性处理:
    sudo apt update && sudo apt dist-upgrade --simulate
    
    输出里会明确显示哪些软件要被移除,你可以提前解决它们的依赖问题。

已经看到移除提示时的处理

如果已经在升级流程里看到了移除提示,别着急确认:

  • 要是还没执行移除操作,直接终止升级,按照上面的步骤先修复软件的依赖或更新PPA,然后再重新启动升级流程。
  • 要是已经开始移除了也没关系,升级完成后,用之前导出的软件列表,重新添加适配的仓库后重装这些软件就行。

另外还有个应急技巧:可以用apt-mark hold暂时锁定不想被移除的软件,但这个要谨慎使用——如果软件和新版本系统有严重的依赖冲突,强行锁定可能导致升级失败或者系统不稳定。命令如下:

sudo apt-mark hold nodejs mysql-workbench

优先还是建议解决依赖问题,而不是强行锁定。

内容的提问来源于stack exchange,提问作者Abhilash S S

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 18:52:44