[Rapidito] Cómo solucionar “E: No se pudo abrir el fichero de bloqueo «/var/lib/dpkg/lock» – open (13: Permiso denegado)”

Editado1: agregada la advertencia de paquetería

Editado2: agregada la razón del problema

Hola de nuevo a todos y todas. En esfuerzos incomunables por hacer posts más cortos voy a tratar de ir al punto. Hoy me meto con un error de terminal que todos tuvimos y tendremos. Se bloquea el dpkg y no nos deja hacer updates o instalar paquetes desde la terminal de Ubuntu.

Es algo relativamente usual que cada tanto Ubuntu se empaque y cuando hacemos un update nos tire el mensaje en cuestión E: No se pudo abrir el fichero de bloqueo «/var/lib/dpkg/lock» - open (13: Permiso denegado). Este mensaje bloquea todo tipo de instalación y upgrade del sistema, hacíendolo realmente molesto. Las razones son cosa’e mandinga para mi, pero la solución se las comparto a continuación.

La solución. Pim pam pum (o en 2 patadas)

En corta, abran una terminal y peguen:

sudo rm -Rf var/lib/dpkg/lock ; sudo apt-get dist-upgrade -y

Un segundito… que páaaaare la música!: Si agregaron un nuevo PPA o instalaron un paquetón que no funciona bien, entonces la línea de arriba fuerza a que el paquete se instale. Si ese es el caso, saquen el “-y” del final y controlen que la instalación vaya correctamente. Agradezco a +Javi en guglplás por la señalación.

Listo!

La razón del error, como dije, me es completamente ajena es simple (gracias +Héctor!): se debe a que cancelamos manualmente el proceso apt-get update. Luego de la cancelación, dpkg se empaca y bloquea esa carpeta impidiendo el acceso al sistema de paquetes. Así que si quieren prevenir este error, nada de ctrl+c o de killall apt-get durante el proceso `sudo apt-get update`.

Esta solución que les presenté se deriva directmente del mensaje que nos devuelve apt-get. Cuando dice que «/var/lib/dpkg/lock» está bloqueado, entonces sabemos que el problema está ahí. Lejos de tratar de “desbloquearlo”, el camino fácil es borrarlo ya que dpkg debería regenarlo por cada paquete que instala y, en efecto, es lo que sucede. Una vez que forzamos la eliminación del directorio todo vuelve a la normalidad. Para terminar de curar el sistema, debemos reiniciar.

Wow, eso fue corto. Me siento raro. :P

Espero les sirva y hasta la próxima! :D

Salú!!

//

[Rapidito] Cómo solucionar “E: No se pudo abrir el fichero de bloqueo «/var/lib/dpkg/lock» – open (13: Permiso denegado)”