dev*_*guy 107 package-management 18.04
仅供参考:我使用的是 Kubuntu 18.04
当我安装 apt-transport-https 时,我不断收到以下错误
我已经厌倦了修复这个错误的事情是:
sudo apt-get autoremove libdvd-pkg
sudo apt-get install libdvd-pkg
sudo apt-get update
sudo apt-get install -f
sudo apt-get purge apt-transport-https && sudo apt-get install apt-transport-https
Run Code Online (Sandbox Code Playgroud)
我继续看到的错误是
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
apt-transport-https*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 152 kB disk space will be freed.
Do you want to continue? [Y/n] Y
(Reading database ... 246794 files and directories currently installed.)
Removing apt-transport-https (1.6.6) ...
libdvd-pkg: Checking orig.tar integrity...
/usr/src/libdvd-pkg/libdvdcss_1.4.2.orig.tar.bz2: OK
libdvd-pkg: `apt-get check` failed, you may have broken packages. Aborting...
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
apt-transport-https
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 1,692 B of archives.
After this operation, 152 kB of additional disk space will be used.
Get:1 http://ca.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 apt-transport-https all 1.6.6 [1,692 B]
Fetched 1,692 B in 0s (6,872 B/s)
Selecting previously unselected package apt-transport-https.
(Reading database ... 246791 files and directories currently installed.)
Preparing to unpack .../apt-transport-https_1.6.6_all.deb ...
Unpacking apt-transport-https (1.6.6) ...
Setting up apt-transport-https (1.6.6) ...
libdvd-pkg: Checking orig.tar integrity...
/usr/src/libdvd-pkg/libdvdcss_1.4.2.orig.tar.bz2: OK
libdvd-pkg: `apt-get check` failed, you may have broken packages. Aborting...
Run Code Online (Sandbox Code Playgroud)
dev*_*guy 207
我为解决此问题所做的一件事是在安装 libdvd-pkg 后,运行以下命令以完成设置:
sudo dpkg-reconfigure libdvd-pkg
Run Code Online (Sandbox Code Playgroud)
如果此问题仍然存在,您可以选择不进行“自动”更新。
小智 18
@devguy 的回答相呼应/usr/share/doc/libdvd-pkg/README.Debian:
dpkg-reconfigure libdvd-pkg可用于构建和安装 libdvdcss* 软件包。
作为背景,快速查看已安装的软件包,了解其工作原理以及问题发生的位置/原因:该软件包安装软件包的 debian 源代码包libdvdcss,并从脚本中从 videolan.orgpostinst下载源代码,并构建.orig.tar.gz并安装二进制包。大部分工作都是在/usr/lib/libdvd-pkg/b-i_libdvdcss.sh脚本和/usr/share/libdvd-pkg/debian/. 该故障似乎是在源包构建之前故意触发的,因为在运行apt-get check时总是会失败:apt-get install
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
Run Code Online (Sandbox Code Playgroud)
作者在安装via时故意触发失败的原因在这个错误报告apt-get中描述得比在:README.Debian
问题在于 libdvd-pkg 挂钩到 APT 调用后处理程序并运行通常不会在该阶段运行的命令。因此,存在破坏 APT 操作并造成系统范围影响的风险和潜力......
我认为从源代码构建的原因libdvdcss.so是为了避免围绕分发二进制文件的一些法律或其他问题。然而,通读错误报告,并不清楚为什么该软件包从源代码构建并安装Debian 软件包,而嵌套软件包安装(即在软件包安装过程中libdvdcss安装软件包)是这里的根本问题。我发现的任何地方都没有讨论可以解决此问题的从源代码构建和安装的替代方法。libdvd-pkglibdvdcss.so
同样,在解决包的问题之前,@devguy 的答案似乎是最好的临时解决方法:
# Install base files; .postinst fails; libdvdcss package NOT installed
sudo apt-get install libdvd-pkg
# Re-run .postinst; libdvdcss package successfully builds and installs
sudo dpkg-reconfigure libdvd-pkg
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
89991 次 |
| 最近记录: |