如何修复 Ubuntu 18.04 上 udev:amd64 错误的未满足依赖关系?

如何修复 Ubuntu 18.04 上 udev:amd64 错误的未满足依赖关系?

我正在运行 Ubuntu 18.04。

像往常一样,我运行:

sudo apt-get update
sudo apt-get upgrade 

但后来我收到以下错误:

正在读取软件包列表...完成
构建依赖关系树       
正在读取状态信息...完成
您可能需要运行“apt --fix-broken install”来纠正这些问题。
以下软件包具有未满足的依赖关系:
 udev:依赖:libudev1(= 237-3ubuntu10.6)但已安装 237-3ubuntu10.9
E:未满足的依赖关系。尝试不使用任何软件包的“apt --fix-broken install”(或指定解决方案)。

我尝试过sudo apt --fix-broken install但没有成功并返回此错误:

正在读取软件包列表...完成
构建依赖关系树       
正在读取状态信息...完成
纠正依赖关系...完成
将会安装以下附加软件包:
  udev
以下软件包将会升级:
  udev
1 个已升级,0 个新安装,0 个要删除,3 个未升级。
需要获取 0 B/1,101 kB 的档案。
此操作后将使用0B的额外磁盘空间。
您想继续吗?[Y/n]
E: 无效的档案成员头
E: 先前的错误适用于 /var/cache/apt/archives/udev_237-3ubuntu10.9_amd64.deb
debconf:apt-extracttemplates 失败:没有该文件或目录
(正在读取数据库...当前安装了 212689 个文件和目录。)
准备解压 .../udev_237-3ubuntu10.9_amd64.deb ...
正在将 libudev1:amd64 (237-3ubuntu10.9) 解压到 (237-3ubuntu10.9) 上...
设置 libudev1:amd64 (237-3ubuntu10.9) ...
处理 libc-bin (2.27-3ubuntu1) 的触发器...
W:APT 计划让 dpkg 做的事情比它报告的要多(0 对 6)。
   受影响的软件包:udev:amd64

我也尝试删除(从头开始重新安装)udev,sudo apt purge udev但收到以下错误消息:

正在读取软件包列表...完成
构建依赖关系树       
正在读取状态信息...完成
您可能需要运行“apt --fix-broken install”来纠正这些问题。
以下软件包具有未满足的依赖关系:
 alsa-base :依赖:udev
 bluez:依赖:udev(>=170-1)
 gnome-bluetooth:依赖:udev(>=154)
 initramfs-tools-core :依赖:udev
 libsane1 :依赖:udev 或
                     makedev 但不会被安装
 媒体播放器信息:依赖:udev
 网络管理器:依赖:udev
 plymouth:依赖:udev(>= 232-8~)
 snapd :依赖:udev
 ubuntu-drivers-common:依赖:udev(>= 204-0ubuntu4~)
 ubuntu-minimal :依赖:udev
 udisks2 :依赖:udev
 upower :依赖:udev
 xserver-xorg-core:依赖:udev(>=149)
E:未满足的依赖关系。尝试不使用任何软件包的“apt --fix-broken install”(或指定解决方案)。

我尝试了在类似问题(未满足的依赖关系)上发现的一些其他选项,但总是出现以下错误之一:

W:APT 计划让 dpkg 做的事情比它报告的要多(0 对 6)。
   受影响的软件包:udev:amd64

或者

以下软件包具有未满足的依赖关系:
 udev:依赖:libudev1(= 237-3ubuntu10.6)但已安装 237-3ubuntu10.9
E:未满足的依赖关系。尝试不使用任何软件包的“apt --fix-broken install”(或指定解决方案)。

因此,菜单栏上出现了错误标记。我该如何修复?

[编辑] 根据 Mark J. Adams 的要求,这是输出apt rdepends --installed libudev1

libudev1
反向依赖:
  依赖:udev(= 237-3ubuntu10.6)
  依赖: libgnome-desktop-3-17 (>= 196)
  依赖: libapt-pkg5.0 (>= 183)
  依赖:gstreamer1.0-vaapi(>=183)
  依赖: xserver-xorg-core (>= 183)
  依赖: xserver-xephyr (>= 183)
  PreDepends:util-linux(>= 183)
  依赖:udev(= 237-3ubuntu10.9)
  依赖: snapd (>= 183)
  依赖:pulseaudio (>= 183)
  依赖:网络管理器(>= 183)
  依赖: libplymouth4 (>= 183)
  依赖: libnm0 (>= 183)
  依赖: libmutter-2-0 (>= 183)
  依赖: libgnome-desktop-3-17 (>= 196)
  依赖: libbluetooth3 (>= 183)
  依赖: libapt-pkg5.0 (>= 183)
  依赖: initramfs-tools-bin (>= 183)
  取决于:螺栓 (>= 183)
  依赖:bluez(>=196)
  依赖:gstreamer1.0-vaapi(>=183)
  依赖:xser​​ver-xorg-video-radeon(>= 183)
  依赖:xser​​ver-xorg-video-qxl(>= 183)
  依赖: xserver-xorg-video-nouveau (>= 183)
  依赖:xser​​ver-xorg-video-intel(>= 183)
  依赖:xser​​ver-xorg-video-amdgpu(>= 183)
  依赖:xser​​ver-xorg-input-wacom(>= 183)
  依赖: xserver-xorg-core (>= 183)
  依赖: xserver-xephyr (>= 183)
  PreDepends:util-linux(>= 183)
  依赖:udev(= 237-3ubuntu10)
  依赖: system-config-printer-udev (>= 183)
  依赖: snapd (>= 183)
  依赖:pulseaudio (>= 183)
  依赖:网络管理器(>= 183)
  依赖: libusb-1.0-0 (>= 183)
  依赖: libqt5gui5 (>= 183)
  依赖: libplymouth4 (>= 183)
  依赖: libpci3 (>= 196)
  依赖: libnm0 (>= 183)
  依赖: libmutter-2-0 (>= 183)
  依赖: libgudev-1.0-0 (>= 199)
  依赖: libinput10 (>= 183)
  依赖: libinput-bin (>= 183)
  依赖: libgnome-desktop-3-17 (>= 196)
  依赖: libgnome-bluetooth13 (>= 196)
  依赖: libfreerdp-client2-2 (>= 183)
  依赖: libdevmapper1.02.1 (>= 183)
  依赖: libcolord2 (>= 196)
  依赖: libclutter-1.0-0 (>= 183)
  依赖: libbluetooth3 (>= 183)
  依赖: libblockdev-utils2 (>= 216)
  取决于:螺栓 (>= 183)
  依赖: libatasmart4 (>= 183)
  依赖: libapt-pkg5.0 (>= 183)
  依赖: initramfs-tools-bin (>= 183)
  依赖: dosfstools (>= 183)
  依赖:bluez(>=196)

答案1

我可以通过强制覆盖来解决这个问题/var/cache/apt/archives/udev_237-3ubuntu10.9_amd64.deb

sudo dpkg -i --force-overwrite /var/cache/apt/archives/udev_237-3ubuntu10.9_amd64.deb
sudo apt purge udev
sudo apt-get 更新
sudo apt-get 升级

答案2

手动删除了文件

udev_237-3ubuntu10.39_amd64.deb 在路径下

 /var/cache/apt/archives/

然后

sudo apt update && sudo apt install udev

对我有用。

答案3

同样在这里:

删除以“udev_”开头的文件

/var/cache/apt/archives/

sudo apt --fix-broken install --allow-downgrades

帮我修好了。

相关内容