需要升级
❯ sudo apt list --upgradable
Listing... Done
golang-1.13-go/focal-updates,focal-security 1.13.8-1ubuntu1.1 amd64 [upgradable from: 1.13.8-1ubuntu1]
升级时存在依赖错误
❯ sudo apt upgrade golang-1.13-go
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
golang-1.13 : Depends: golang-1.13-go (>= 1.13.8-1ubuntu1.1) but 1.13.8-1ubuntu1 is installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
使用 sudo apt --fix-broken install
无效
After this operation, 2048 B of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 89223 files and directories currently installed.)
Preparing to unpack .../golang-1.13-go_1.13.8-1ubuntu1.1_amd64.deb ...
Unpacking golang-1.13-go (1.13.8-1ubuntu1.1) over (1.13.8-1ubuntu1) ...
dpkg: error processing archive /var/cache/apt/archives/golang-1.13-go_1.13.8-1ubuntu1.1_amd64.deb (--unpack):
trying to overwrite '/usr/lib/go-1.13/src', which is also in package golang-1.13-race-detector-runtime 0.0+svn332029-0ubuntu2
Errors were encountered while processing:
/var/cache/apt/archives/golang-1.13-go_1.13.8-1ubuntu1.1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
这个错误消息表明在尝试安装 golang-1.13-go 包时出现了问题,导致 dpkg 无法正常完成安装过程。
这可能是由于系统上存在未知的错误或其他问题,导致 dpkg 无法正常工作。
使用 dpkg 命令来安装包,并使用 --force-overwrite 选项强制覆盖已存在的文件。
使用 dpkg -i --force-overwrite /var/cache/apt/archives/golang-1.13-go_1.13.8-1ubuntu1.1_amd64.deb
这个命令可以直接安装 deb 包,并强制覆盖已存在的文件。
dpkg 是 Ubuntu 系统中用于处理 deb 包的工具。 -i 选项用于安装 deb 包,而 --force-overwrite 选项则强制覆盖已存在的文件。
在这种情况下,由于之前安装 golang-1.13-race-detector-runtime 包时已经存在 /usr/lib/go-1.13/src 这个文件,导致现在再安装 golang-1.13-go 包时冲突。使用 --force-overwrite 选项可以强制覆盖已存在的文件,从而解决冲突问题。
注意:使用 --force-overwrite 选项可能会导致系统稳定性降低或其他问题,因此应谨慎使用。
在使用 dpkg -i --force-overwrite /var/cache/apt/archives/golang-1.13-go_1.13.8-1ubuntu1.1_amd64.deb 这个命令之前,建议确保备份重要数据。
❯ sudo dpkg -i --force-overwrite /var/cache/apt/archives/golang-1.13-go_1.13.8-1ubuntu1.1_amd64.deb
(Reading database ... 89223 files and directories currently installed.)
Preparing to unpack .../golang-1.13-go_1.13.8-1ubuntu1.1_amd64.deb ...
Unpacking golang-1.13-go (1.13.8-1ubuntu1.1) over (1.13.8-1ubuntu1) ...
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: trying to overwrite '/usr/lib/go-1.13/src', which is also in package golang-1.13-race-detector-runtime 0.0+svn332029-0ubuntu2
dpkg: dependency problems prevent configuration of golang-1.13-go:
golang-1.13-go depends on golang-1.13-src (>= 1.13.8-1ubuntu1.1); however:
Package golang-1.13-src is not configured yet.
dpkg: error processing package golang-1.13-go (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
golang-1.13-go
再次使用
sudo apt --fix-broken install
修复完成