Veamos cómo solucionar el error “libbd_mdraid.so.2: cannot open shared object file” en Ubuntu 18.
Se trata de un error que podemos encontrar en el log de /var/log/syslog. Lo que ocurre es que nos faltan paquetes necesarios.
Este error también puede venir acompañado de un error relacionado:
3334 Oct 24 22:28:55 localhost udisksd[974]: Failed to load the 'mdraid' libblockdev plugin |
Comprobamos el log de /var/log/syslog:
3295 Oct 24 22:28:55 localhost anacron[1005]: Anacron 2.3 started on 2020-10-24 3296 Oct 24 22:28:55 localhost systemd[1]: Started ACPI event daemon. 3297 Oct 24 22:28:55 localhost systemd[1]: Starting WPA supplicant... 3298 Oct 24 22:28:55 localhost systemd[1]: Starting Avahi mDNS/DNS-SD Stack... 3299 Oct 24 22:28:55 localhost systemd[1]: Started irqbalance daemon. 3300 Oct 24 22:28:55 localhost systemd[1]: Starting Detect the available GPUs and deal with any system changes... 3301 Oct 24 22:28:55 localhost systemd[1]: Started Regular background program processing daemon. 3302 Oct 24 22:28:55 localhost udisksd[974]: failed to load module mdraid: libbd_mdraid.so.2: cannot open shared object file: No such file or directory 3303 Oct 24 22:28:55 localhost anacron[1005]: Normal exit (0 jobs run) 3304 Oct 24 22:28:55 localhost systemd[1]: Started System Logging Service. 3305 Oct 24 22:28:55 localhost systemd[1]: Started Raise network interfaces. |
Antes de instalar los paquetes necesarios, comprobamos el estado del servicio udisks2 , un servicio que tiene relación con los dispositivos de almacenamiento y sirve para realizar operaciones sobre ellos;
y vemos que el status del servicio nos muestra el mismo error que aparece en el fichero de syslog:
pruebas@LinuxPruebas:~$ sudo systemctl status udisks2 ● udisks2.service - Disk Manager Loaded: loaded (/lib/systemd/system/udisks2.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2020-10-24 22:28:56 CEST; 1h 30min ago Docs: man:udisks(8) Main PID: 974 (udisksd) Tasks: 5 (limit: 4915) CGroup: /system.slice/udisks2.service └─974 /usr/lib/udisks2/udisksd oct 24 22:28:55 LinuxPruebas systemd[1]: Starting Disk Manager... oct 24 22:28:55 LinuxPruebas udisksd[974]: udisks daemon version 2.7.6 starting oct 24 22:28:55 LinuxPruebas udisksd[974]: failed to load module mdraid: libbd_mdraid.so.2: cannot open shared object file: No s oct 24 22:28:55 LinuxPruebas udisksd[974]: Failed to load the 'mdraid' libblockdev plugin oct 24 22:28:56 LinuxPruebas systemd[1]: Started Disk Manager. oct 24 22:28:56 LinuxPruebas udisksd[974]: Acquired the name org.freedesktop.UDisks2 on the system message bus |
Revisamos y comprobamos la versión de nuestro Linux:
pruebas@LinuxPruebas:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 18.04.5 LTS Release: 18.04 Codename: bionic |
Y revisamos la versión del servicio udisks2 :
pruebas@LinuxPruebas:~$ dpkg -l udisks2 Deseado=desconocido(U)/Instalar/eliminaR/Purgar/retener(H) | Estado=No/Inst/ficheros-Conf/desempaqUetado/medio-conF/medio-inst(H)/espera-disparo(W)/pendienTe-disparo |/ Err?=(ninguno)/requiere-Reinst (Estado,Err: mayúsc.=malo) ||/ Nombre Versión Arquitectura Descripción +++-============================-===================-===================-============================================================== ii udisks2 2.7.6-3ubuntu0.2 amd64 D-Bus service to access and manipulate storage devices |
SOLUCIÓN al error libbd_mdraid.so.2: cannot open shared object file
Parece ser que en algunos casos aparece cuando el sistema tiene configurado un sistema raid, aunque sea un raid por software.
El mensaje de advertencia se soluciona instalando los paquetes libblockdev-mdraid2 y libblockdev-crypto2; aunque la verdad que este paso lo que hace es instalar también el paquete dependiente mdadm, que en sistemas que no usan RAID no es útil.
Instalamos los paquetes:
pruebas@LinuxPruebas:~$ sudo apt-get install libblockdev-crypto2 Leyendo lista de paquetes... Hecho Creando árbol de dependencias Leyendo la información de estado... Hecho libblockdev-crypto2 ya está en su versión más reciente (2.16-2). fijado libblockdev-crypto2 como instalado manualmente. El paquete indicado a continuación se instaló de forma automática y ya no es necesario. linux-hwe-5.4-headers-5.4.0-48 Utilice «sudo apt autoremove» para eliminarlo. 0 actualizados, 0 nuevos se instalarán, 0 para eliminar y 3 no actualizados. |
pruebas@LinuxPruebas:~$ sudo apt-get install libblockdev-mdraid2 Leyendo lista de paquetes... Hecho Creando árbol de dependencias Leyendo la información de estado... Hecho El paquete indicado a continuación se instaló de forma automática y ya no es necesario. linux-hwe-5.4-headers-5.4.0-48 Utilice «sudo apt autoremove» para eliminarlo. Se instalarán los siguientes paquetes adicionales: libbytesize1 mdadm Paquetes sugeridos: dracut-core Se instalarán los siguientes paquetes NUEVOS: libblockdev-mdraid2 libbytesize1 mdadm 0 actualizados, 3 nuevos se instalarán, 0 para eliminar y 3 no actualizados. Se necesita descargar 438 kB de archivos. Se utilizarán 1.316 kB de espacio de disco adicional después de esta operación. ¿Desea continuar? [S/n] S Des:1 http://es.archive.ubuntu.com/ubuntu bionic/universe amd64 libbytesize1 amd64 1.2-3 [10,5 kB] Des:2 http://es.archive.ubuntu.com/ubuntu bionic-updates/main amd64 mdadm amd64 4.1~rc1-3~ubuntu18.04.4 [416 kB] Des:3 http://es.archive.ubuntu.com/ubuntu bionic/universe amd64 libblockdev-mdraid2 amd64 2.16-2 [11,4 kB] Descargados 438 kB en 1s (704 kB/s) Preconfigurando paquetes ... Seleccionando el paquete libbytesize1 previamente no seleccionado. (Leyendo la base de datos ... 230341 ficheros o directorios instalados actualmente.) Preparando para desempaquetar .../libbytesize1_1.2-3_amd64.deb ... Desempaquetando libbytesize1 (1.2-3) ... Seleccionando el paquete mdadm previamente no seleccionado. Preparando para desempaquetar .../mdadm_4.1~rc1-3~ubuntu18.04.4_amd64.deb ... Desempaquetando mdadm (4.1~rc1-3~ubuntu18.04.4) ... Seleccionando el paquete libblockdev-mdraid2:amd64 previamente no seleccionado. Preparando para desempaquetar .../libblockdev-mdraid2_2.16-2_amd64.deb ... Desempaquetando libblockdev-mdraid2:amd64 (2.16-2) ... Configurando libbytesize1 (1.2-3) ... Configurando mdadm (4.1~rc1-3~ubuntu18.04.4) ... Generating mdadm.conf... done. update-initramfs: deferring update (trigger activated) Obteniendo el archivo «/etc/default/grub» Generando un fichero de configuración de grub... File descriptor 3 (pipe:[207657]) leaked on vgs invocation. Parent PID 25042: /usr/sbin/grub-probe File descriptor 3 (pipe:[207657]) leaked on vgs invocation. Parent PID 25042: /usr/sbin/grub-probe Encontrada imagen de linux: /boot/vmlinuz-5.4.0-52-generic Encontrada imagen de memoria inicial: /boot/initrd.img-5.4.0-52-generic Encontrada imagen de linux: /boot/vmlinuz-5.4.0-51-generic Encontrada imagen de memoria inicial: /boot/initrd.img-5.4.0-51-generic File descriptor 3 (pipe:[207657]) leaked on vgs invocation. Parent PID 25407: /usr/sbin/grub-probe File descriptor 3 (pipe:[207657]) leaked on vgs invocation. Parent PID 25407: /usr/sbin/grub-probe Found memtest86+ image: /memtest86+.elf Found memtest86+ image: /memtest86+.bin File descriptor 3 (pipe:[207657]) leaked on lvs invocation. Parent PID 25644: /bin/sh hecho update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults Configurando libblockdev-mdraid2:amd64 (2.16-2) ... Procesando disparadores para systemd (237-3ubuntu10.42) ... Procesando disparadores para man-db (2.8.3-2ubuntu0.1) ... Procesando disparadores para ureadahead (0.100.0-21) ... ureadahead will be reprofiled on next reboot Procesando disparadores para libc-bin (2.27-3ubuntu1.2) ... Procesando disparadores para initramfs-tools (0.130ubuntu3.11) ... update-initramfs: Generating /boot/initrd.img-5.4.0-52-generic W: Possible missing firmware /lib/firmware/rtl_nic/rtl8125a-3.fw for module r8169 W: Possible missing firmware /lib/firmware/rtl_nic/rtl8168fp-3.fw for module r8169 W: Possible missing firmware /lib/firmware/i915/tgl_dmc_ver2_04.bin for module i915 W: Possible missing firmware /lib/firmware/i915/skl_guc_33.0.0.bin for module i915 W: Possible missing firmware /lib/firmware/i915/bxt_guc_33.0.0.bin for module i915 W: Possible missing firmware /lib/firmware/i915/kbl_guc_33.0.0.bin for module i915 W: Possible missing firmware /lib/firmware/i915/glk_guc_33.0.0.bin for module i915 W: Possible missing firmware /lib/firmware/i915/kbl_guc_33.0.0.bin for module i915 W: Possible missing firmware /lib/firmware/i915/icl_guc_33.0.0.bin for module i915 I: The initramfs will attempt to resume from /dev/dm-2 I: (/dev/mapper/ubuntu--vg-swap_1) I: Set the RESUME variable to override this. |
Reiniciamos el servicio y comprobamos su status y los posibles errores :
pruebas@LinuxPruebas:~$ sudo systemctl restart udisks2 pruebas@LinuxPruebas:~$ sudo systemctl status udisks2 ● udisks2.service - Disk Manager Loaded: loaded (/lib/systemd/system/udisks2.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2020-10-25 00:00:00 CEST; 1s ago Docs: man:udisks(8) Main PID: 3455 (udisksd) Tasks: 6 (limit: 4915) CGroup: /system.slice/udisks2.service └─3455 /usr/lib/udisks2/udisksd oct 25 00:00:00 LinuxPruebas systemd[1]: Starting Disk Manager... oct 25 00:00:00 LinuxPruebas udisksd[3455]: udisks daemon version 2.7.6 starting oct 25 00:00:00 LinuxPruebas systemd[1]: Started Disk Manager. oct 25 00:00:00 LinuxPruebas udisksd[3455]: Acquired the name org.freedesktop.UDisks2 on the system message bus |
Hemos solucionado el error libbd_mdraid.so.2: cannot open shared object file, los paquetes y dependencias necesarias ya se encuentran instaladas en el sistema.