我无法移除损坏的包。使用以下命令:
sudo apt-get -f install
但我收到以下响应:
Preparing to unpack .../nodejs_0.10.28-1chl1~trusty1_amd64.deb ...
Unpacking nodejs (0.10.28-1chl1~trusty1) over (0.10.25~dfsg2-2ubuntu1) ...
dpkg: error processing archive /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_amd64.deb (--unpack):
trying to overwrite '/usr/share/man/man1/node.1.gz', which is also in package nodejs-legacy 0.10.25~dfsg2-2ubuntu1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Processing triggers for man-db (2.6.7.1-1) ...
Errors were encountered while processing:
/var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
我尝试了各种命令,例如
2015 sudo apt-get clean
2020 sudo dpkg --configure -a
2023 sudo apt-get autoremove
2034 sudo apt-get upgrade && sudo apt-get -f install
但我没有得到任何结果。我无法安装 synaptic。有什么想法可以删除损坏的软件包吗?
答案1
运行此命令来删除 ubuntu 中损坏的软件包。
sudo dpkg --remove --force-remove-reinstreq package_name
删除软件包后使用命令更新系统
sudo apt-get update
更新成功后重新启动系统。
答案2
打开终端并使用以下命令
sudo dpkg --purge nodejs-legacy
sudo apt-get install -f
它应该可以解决你的问题。
答案3
这解决了我的问题:
sudo dpkg -i --force-overwrite /var/cache/apt/archives/nodejs_0.10.28-1chl1~trusty1_amd64.deb
答案4
如果您有一个损坏的依赖关系(我曾经遇到过openjdk
),您将需要清除该包并强制它跳过依赖关系问题:
sudo dpkg -P --force-depends package_name