Bij*_*jak 90 package-management aptitude dpkg
前bsnes几天我去安装,不知什么原因,安装失败。现在,我无法更新、安装新软件包或执行任何 apt-get 命令,因为它们都试图处理这个损坏的软件包并失败。尝试安装一个新的软件包也注定了它的命运。
我得到的错误是:
Setting up google-chrome-stable (33.0.1750.152-1) ...
/var/lib/dpkg/info/google-chrome-stable.postinst: 124: /var/lib/dpkg/info/google-chrome-stable.postinst: update-alternatives: not found
dpkg: error processing google-chrome-stable (--configure):
subprocess installed post-installation script returned error exit status 127
Setting up bsnes (0.088-7) ...
/var/lib/dpkg/info/bsnes.postinst: 5: /var/lib/dpkg/info/bsnes.postinst: update-alternatives: not found
dpkg: error processing bsnes (--configure):
subprocess installed post-installation script returned error exit status 127
Errors were encountered while processing:
google-chrome-stable
bsnes
E: Sub-process /usr/bin/dpkg returned an error code (1)
Run Code Online (Sandbox Code Playgroud)
我一直在谷歌和这里的 Ask Ubuntu 上搜索,但还没有找到可行的解决方案。
通常建议的修复是运行以下命令:
sudo apt-get clean && sudo apt-get autoremove
sudo apt-get -f install
sudo dpkg --configure -a
Run Code Online (Sandbox Code Playgroud)
然而这不起作用。apt-get 命令都失败,并出现与上述相同的错误,而 dpkg 命令也无济于事。他们经常建议通过 Synaptic 或命令行清除它的另一件事,这也失败了。
Ski*_*rou 89
对于高级用户,使用风险自负。
根据以下错误消息:
subprocess installed post-installation script returned error exit status 127
Run Code Online (Sandbox Code Playgroud)
您可能想要编辑/var/lib/dpkg/info/[package_name].postinst和评论所有内容(或者更好的是,尝试理解它并确定问题),然后再试apt-get一次。
请注意,尽管在此特定问题中,该消息与“安装后”有关,但它可能会提到例如“预删除”或“删除后”(在这种情况下,要编辑的文件的扩展名应该是.prerm或.postrm) .
Reg*_*ser 52
除了您已经发布的那些命令之外,几乎没有其他有用的命令。
Autoclean 清除检索到的包文件的本地存储库。
sudo apt-get autoclean
Run Code Online (Sandbox Code Playgroud)强制安装/删除软件包。?谨慎使用
sudo apt-get --force-yes install <pkgname>
Run Code Online (Sandbox Code Playgroud)
和
sudo apt-get --force-yes remove <pkgname>
Run Code Online (Sandbox Code Playgroud)与往常一样,您可以使用dpkg来安装、删除和清除软件包。
安装
sudo dpkg -i <pkgname>
Run Code Online (Sandbox Code Playgroud)消除
sudo dpkg -r <pkgname>
Run Code Online (Sandbox Code Playgroud)清除
sudo dpkg -P <pkgname>
Run Code Online (Sandbox Code Playgroud)小智 32
您可以删除此/var/lib/dpkg/info/路径中的包文件并更新源。
sudo rm /var/lib/dpkg/info/[package_name].*
sudo dpkg --configure -a
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)
然后,重新安装您的软件包 sudo apt-get install [package_name]
Bij*_*jak 30
因此,经过更多的谷歌搜索并再次仔细阅读错误消息后,似乎dpkg需要重新安装。
sudo apt-get install --reinstall dpkg
Run Code Online (Sandbox Code Playgroud)
提示这是问题所在(如果有人搜索并看到此问题)是update-alternatives: not found错误消息中的问题。重新安装 dpkg 后,其他软件包就会自动正常安装。
小智 16
如果一切都失败了。我所做的是首先将目录更改为:
cd /var/lib/dpkg/info
Run Code Online (Sandbox Code Playgroud)
然后我删除了所有内容.postinst:
sudo rm *.postinst
Run Code Online (Sandbox Code Playgroud)
然后更新存储库
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)
然后当我这样做时一切都恢复正常:
sudo apt-get --force-yes install openjdk-7-jre-headless
Run Code Online (Sandbox Code Playgroud)
如果所有其他方法都失败了,您可以通过dpkg. 运行sudo dpkg -P bsnes应该清除bsnes。
| 归档时间: |
|
| 查看次数: |
333316 次 |
| 最近记录: |