Error al actualizar "dpkg: error: no se ha encontrado 2 en el PATH o no es ejecutable"
#1
Lun, 06/08/2018 - 15:18
Error al actualizar "dpkg: error: no se ha encontrado 2 en el PATH o no es ejecutable"
Estado:
[SOLUCIONADO]
Hoy he tenido un error al actualizar en Debian testing (buster) 64 bts. Con escritorio Plasma. Al hacer un apt upgrade me muestra este error:
root@debian:/home/pablo# apt upgrade
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Calculando la actualización... Hecho
Los siguientes paquetes se han retenido:
bind9-host dnsutils libbind9-160 libirs160 libisc169 libisccc160 libisccfg160 liblwres160 libreoffice libreoffice-avmedia-backend-gstreamer libreoffice-base libreoffice-base-core libreoffice-base-drivers
libreoffice-calc libreoffice-common libreoffice-core libreoffice-draw libreoffice-impress libreoffice-java-common libreoffice-l10n-es libreoffice-math libreoffice-report-builder-bin libreoffice-sdbc-firebird
libreoffice-sdbc-hsqldb libreoffice-style-tango libreoffice-writer python3-uno
Se actualizarán los siguientes paquetes:
apparmor bsdutils dbus dbus-user-session dbus-x11 dictionaries-common fdisk gdal-data gir1.2-gstreamer-1.0 glx-alternative-mesa glx-alternative-nvidia glx-diversions grub-common grub-pc grub-pc-bin grub2-common
libapparmor1 libblkid1 libblkid1:i386 libbrotli1 libcryptsetup12 libdbus-1-3 libdbus-1-3:i386 libdbus-1-dev libdns-export1102 libegl-mesa0 libegl-mesa0:i386 libegl1-mesa libepsilon1 libfdisk1 libfreexl1 libfyba0
libgbm1 libgbm1:i386 libgdal20 libgeotiff2 libgl1-mesa-dev libgl1-mesa-dri libgl1-mesa-dri:i386 libgl1-mesa-glx libgl1-mesa-glx:i386 libglapi-mesa libglapi-mesa:i386 libgles2-mesa libglx-mesa0 libglx-mesa0:i386
libgrilo-0.3-0 libgstreamer1.0-0 libhdf4-0-alt libidn2-0 libisc-export169 libkmlbase1 libkmlconvenience1 libkmldom1 libkmlengine1 libkmlregionator1 libkmlxsd1 libmount1 libmount1:i386 libmspack0 libnetcdf13
libogdi3.2 libosmgpsmap-1.0-1 libpugixml1v5 libsmartcols1 libsmartcols1:i386 libtesseract4 libuuid1 libuuid1:i386 libwayland-egl1-mesa libxatracker2 man-db mesa-common-dev mesa-va-drivers mount net-tools
update-glx util-linux util-linux-locales uuid-dev uuid-runtime:i386 vim-common vim-tiny xxd
84 actualizados, 0 nuevos se instalarán, 0 para eliminar y 27 no actualizados.
Se necesita descargar 0 B/45,3 MB de archivos.
Se liberarán 873 kB después de esta operación.
¿Desea continuar? [S/n] s
Obteniendo informes de fallo... Finalizado
Analizando información Encontrada/Corregida... Finalizado
Leyendo lista de cambios... Hecho.
Extrayendo plantillas para los paquetes: 100%
Preconfigurando paquetes ...
dpkg: atención: `ldconfig' no se ha encontrado en el PATH o no es ejecutable
dpkg: atención: `start-stop-daemon' no se ha encontrado en el PATH o no es ejecutable
dpkg: error: no se ha encontrado 2 en el PATH o no es ejecutable
NOTA: El PATH de root debería incluir habitualmente /usr/local/sbin, /usr/sbin y /sbin.
E: Sub-process /usr/bin/dpkg returned an error code (2)
root@debian:/home/pablo# dpkg --configure -a
dpkg: atención: `ldconfig' no se ha encontrado en el PATH o no es ejecutable
dpkg: atención: `start-stop-daemon' no se ha encontrado en el PATH o no es ejecutable
dpkg: error: no se ha encontrado 2 en el PATH o no es ejecutable
NOTA: El PATH de root debería incluir habitualmente /usr/local/sbin, /usr/sbin y /sbin.
He hecho un dpkg --configure -a por probar, pero me sigue dando el mismo error asi que mirando por la red he encontrado la solución.
Solo abrir una terminal como root y ejecutar esto:
export PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin
Tras eso puedo actualizar sin problemas. Para que el cambio sea permanente y que no se repita el error, editamos /etc/sudoers agregando esto dentro:
Defaults env_reset
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
En realidad parece que hay un cambio de política en debian y a partir de debian buster se va a usar
en lugar de
y si se quiere seguir usando el su solo hay que editar
y agregar el siguiente texto al final
fuente: /usr/share/doc/util-linux/NEWS.Debian.gz
Bien, para quien quiera investigar diferencias hagan esta comprobación
luego salir del terminal con 'exit' y nuevamente en otro terminal
Vale, la parte de editar /etc/sudoers no funciona. Tras reiniciar vuelve a salir el error logeandome con su. Asi que probare a acostumbrarme a usar su -.
Con su - funciona sin problemas.
We were but stones. Your light made us stars
https://linuxveredas.blogspot.com.es/
Otra alternativa es poner el path en nuestro .bashrc
https://blog.desdelinux.net/como-solucionar-error-dpkg-aviso-ldconfig-en-debian-testing/
Un comentario sobre seguridad hacia los novatos, hagan previamente una copia de ~/.bashrc
De tal modo tendran un archivo original para reemplazar si dañan al modificarlo , ejemplo :
Si al ejecutar
En cambio si ejecutan :
Notese la diferencia entre utilizar
echo >> (append) agregar
echo > sustituir
En mi caso utilizo leafpad para editar archivos del sistema, si utilizo su -, no puedo utilizar leafpad con los archivos del sistema, lo cual resolví editando el archivo root/.bashrc y agregando la siguiente linea.
no es mas una combinación de path de su y su -
Saludos
Alternativa para usar un editor gráfico como root (cuidado!!)
(Sustituir leafpad por el editor gráfico de preferencia )
otra opción para ese caso seria
http://www.webupd8.org/2015/03/how-to-run-gedit-and-nautilus-as-root.html
parece que ahora no funciona
saludos...