Como n00b es difícil no meter la pata muy de vez en cuando. Justo hace unos momentos estaba reinstalando Noise (Music en Freya y Luna) para diagnosticar e intentar un problema que tuve con él y mi librería de música. Se instala con
$ sudo apt-get noise
cuando recordé que en algunos sitios he encontrado la siguiente variación:
$ sudo apt-get install -y nombre_del_programa_a_instalar_acá
y al hacer esto, el prompt que anuncia:
"After this operation, 4,829 kB of additional disk space will be used. Do you want to continue? [Y/n]"
se salta, tal y cual lo describe $ apt-get --help, así que ya no es necesario estar presente durante la descarga para decir que "sí" a la instalación (vamos que podés ir al baño o por comida al refrigerador mientras la tarea corre por sí sola). La opción -y significa "Assume Yes to all queries and do not prompt": asumir que sí a las preguntas y no pedir respuesta. Como decía, recordé esa opción -y así que cancelé con Ctrl + z la operación. Cosa que fue tonta porque pude simplemente contestar "n" para abortar. Así que cuando intenté
$ sudo apt-get install -y noise
Recibí
E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
Intenté nuevamente, recibí el mismo error. Yo fui el responsable de este problema. Luego de una Googleadita rápida, descubrí que el /var/lib/dpkg es un directorio usado cuando APT está procesando una paquete/programa para su descarga e instalación. Al menos esa es la explicación más útil que encuentro para mi nivel de conocimiento. El punto es, no podía instalar porque el directorio usado para tal fin está "bloqueado y siendo usando por otro proceso".
Busqué información para resolver esto. Hace tiempo conocí a kill y pkill pero esta vez no sabía cómo identificar el proceso. Entonces en un maravilloso thread del foro de Ubuntu, encontré las siguientes instrucciones:
Primero: Identificar el ID del proceso que está atascando al apt-get:
$ ps aux | grep apt
este comando nos mostrará el número del proceso que está usando el apt del comando apt-get:
root 6020 0.2 0.0 72648 4020 pts/14 S+ 22:07 0:00 sudo apt-get install noise
root 6021 11.0 0.7 90548 59296 pts/14 S+ 22:07 0:00 apt-get install noise
El número del proceso se muestra en la segunda columna, justo después del nombre de usuario (para el caso, recordemos que sudo = SuperUserDO, lo que implica que es el root quien instala).
Segundo: con esta información, podemos darle jaque mate al proceso:
$ kill -9 6020
El -9 es una opción dada por el comando kill e implica que el proceso será terminado forzosamente; o sea, que le damos jaque mate irremediable. Ya con esto, pude continuar felizmente mi camino de destrucción accidental :v
Espero que esto sirva. Recordá, si un día se atasca el apt-get,
$ ps aux | grep apt
y
$ kill -9 númerodeprocesoacá
son tus mejores amigos :)
$ sudo apt-get noise
cuando recordé que en algunos sitios he encontrado la siguiente variación:
$ sudo apt-get install -y nombre_del_programa_a_instalar_acá
y al hacer esto, el prompt que anuncia:
"After this operation, 4,829 kB of additional disk space will be used. Do you want to continue? [Y/n]"
se salta, tal y cual lo describe $ apt-get --help, así que ya no es necesario estar presente durante la descarga para decir que "sí" a la instalación (vamos que podés ir al baño o por comida al refrigerador mientras la tarea corre por sí sola). La opción -y significa "Assume Yes to all queries and do not prompt": asumir que sí a las preguntas y no pedir respuesta. Como decía, recordé esa opción -y así que cancelé con Ctrl + z la operación. Cosa que fue tonta porque pude simplemente contestar "n" para abortar. Así que cuando intenté
$ sudo apt-get install -y noise
Recibí
E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
Intenté nuevamente, recibí el mismo error. Yo fui el responsable de este problema. Luego de una Googleadita rápida, descubrí que el /var/lib/dpkg es un directorio usado cuando APT está procesando una paquete/programa para su descarga e instalación. Al menos esa es la explicación más útil que encuentro para mi nivel de conocimiento. El punto es, no podía instalar porque el directorio usado para tal fin está "bloqueado y siendo usando por otro proceso".
Busqué información para resolver esto. Hace tiempo conocí a kill y pkill pero esta vez no sabía cómo identificar el proceso. Entonces en un maravilloso thread del foro de Ubuntu, encontré las siguientes instrucciones:
Primero: Identificar el ID del proceso que está atascando al apt-get:
$ ps aux | grep apt
este comando nos mostrará el número del proceso que está usando el apt del comando apt-get:
root 6020 0.2 0.0 72648 4020 pts/14 S+ 22:07 0:00 sudo apt-get install noise
root 6021 11.0 0.7 90548 59296 pts/14 S+ 22:07 0:00 apt-get install noise
El número del proceso se muestra en la segunda columna, justo después del nombre de usuario (para el caso, recordemos que sudo = SuperUserDO, lo que implica que es el root quien instala).
Segundo: con esta información, podemos darle jaque mate al proceso:
$ kill -9 6020
El -9 es una opción dada por el comando kill e implica que el proceso será terminado forzosamente; o sea, que le damos jaque mate irremediable. Ya con esto, pude continuar felizmente mi camino de destrucción accidental :v
Espero que esto sirva. Recordá, si un día se atasca el apt-get,
$ ps aux | grep apt
y
$ kill -9 númerodeprocesoacá
son tus mejores amigos :)
No comments:
Post a Comment