谁能帮我这个?
在 dist 升级期间发生了一些事情,出现了损坏的软件包并且显示未满足的依赖关系,因此之后在终端中要求我输入此命令“apt-get -f install”,所以我尝试了一下,这就是我得到的:
sudo apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
libjack-jackd2-0 libjack-jackd2-0:i386
Suggested packages:
jackd2 jackd2:i386
The following NEW packages will be installed:
libjack-jackd2-0 libjack-jackd2-0:i386
0 upgraded, 2 newly installed, 0 to remove and 6 not upgraded.
Need to get 0 B/398 kB of archives.
After this operation, 996 kB of additional disk space will be used.
Do you want to continue [Y/n]? Y
Selecting previously unselected package libjack-jackd2-0.
(Reading database ... 248346 files and directories currently installed.)
Unpacking libjack-jackd2-0 (from .../libjack-jackd2-0_1.9.8~dfsg.2-1precise1_amd64.deb) ...
Selecting previously unselected package libjack-jackd2-0:i386.
Unpacking libjack-jackd2-0:i386 (from .../libjack-jackd2-0_1.9.8~dfsg.2-1precise1_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/libjack-jackd2-0_1.9.8~dfsg.2-1precise1_i386.deb (--unpack):
'./usr/share/doc/libjack-jackd2-0/buildinfo.gz' is different from the same file on the system
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/libjack-jackd2-0_1.9.8~dfsg.2-1precise1_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
我尝试了以下操作:
sudo dpkg --configure -a <--- didn't work,
sudo apt-get -f install <--- didn't work,
sudo gedit /var/lib/dpkg/status <---- I tried removing the broken package, still the same after using "sudo fuser -vki /var/lib/dpkg/lock".
嗯...请帮帮我...我被难住了,如果这是关于 libjackd2 的重复帖子,有人可以将我重定向到另一个已解决的帖子吗?...
答案1
首先尝试清理包缓存(sudo apt-get clean)然后重新安装。
可能您应该首先尝试卸载这两个包:
sudo apt-get remove libjack-jackd2-0 libjack-jackd2-0:i386
并尝试再次安装。
答案2
您不应该同时为两种架构安装相同的软件包,要么安装libjack-jackd2-0
要么安装libjack-jackd2-0:i386
。我建议您不要安装其中i386
一个,因为您的系统是 64 位的。一个简单的:
sudo apt-get install libjack-jackd2-0
應該做這些工作。
答案3
解决问题的方法是这样的:
我只是将包名称从 libjack-jackd2-0 更改为 libjack-jackd2-0.old,然后我执行了
sudo apt-get install libjack-jackd2-0 libjack-jackd2-0:i386
它对我有用,是因为这个(这是提示)让我尝试按照他所做的去做:
'./usr/share/doc/libjack-jackd2-0/buildinfo.gz' is different from the same file on the system
我所做的是查看 /usr/shar/doc/ 以查找 libjack-jackd2-0 文件夹,找到它并在其名称中附加“.old”,以便在执行
sudo apt-get -f install libjack-jackd2-0 libjack-jackd2-0:i386
更改名称后,我尝试执行 apt-get -f install,它成功了,并且一切顺利,现在一切都很好,我现在可以使用 sudo apt-get 进行安装,没有错误。我不必担心以后的后果,因为在完成升级后,我通过 apt-get remove 删除了使用这些软件包的软件或应用程序,即 lmms(Linux MultiMedia Studio),并执行了一些 sudo apt-get autoremove,以防万一有软件包没用,我再也没有尝试重新安装它。
我想我只是运气好。但我绝对不建议在每个包依赖错误上都这样做,因为并非所有错误都会显示相同的错误;
阅读和分析错误无疑有很大帮助。因为有些人回答在包树上禁用包,有些人说删除包并再次安装,但幸运的是,这只是一个构建文件错误。
我希望这有帮助..