TERMINAL PARA NOVATOS: INSTALAR PROGRAMAS CON APT

Hola gente, hoy vamos a ver el tema de instalar programas con APT, pero además, actualizar, desinstalar, buscar y algunas cosas más. Pero primero vamos a repasar unos conceptos básico pero sin profundizar demasiado para no alargar demasiado este artículo, entre ellos repositorio, paquete y el sistema de APT.

SISTEMA DE GESTIÓN DE PAQUETES: QUÉ ES Y QUÉ HACE

Los paquetes encapsulan los archivos necesarios para instalar un programa y en algunos casos un sólo paquete instala varios programas. El formato de paquete usado en Deepin es .deb. Muchos programas usan a otros programas para funcionar, de esta manera el sistema se parece a una gran caja de herramientas o más bien a un taller lleno de herramientas, donde las herramientas son construidas con otras herramientas, usemos como analogía una mesa de cortar madera, que se puede construir con una mesa y una sierra eléctrica de mano, o sea, que para construir (instalar) una mesa de cortar madera se necesita (depende) de que haya una mesa y una sierra eléctrica de mano en el taller. Esta sería una analogía de las dependencias al instalar un programa.

Continuando con la analogía, un repositorio se parece a una ferretería, donde podemos obtener las herramientas que necesitamos y que no tenemos, el repositorio por lo general tiene más programas de los que necesitamos pero que satisfacen las diferentes necesidades de los usuarios, tal como la ferretería tiene más herramientas que las que cada uno necesita individualmente. Al igual que las ferreterías, cada repositorio tiene un inventario de todo lo que tienen disponible, y si en un repositorio no hay lo que necesitamos, podemos agregar un repositorio que sí tenga lo que necesitamos. 

Pero hay que comprobar que el repositorio sea compatible; siguiendo con la analogía de las ferreterías, como sabemos en Europa la corriente eléctrica es de 220 voltios, pero en la mayoría de América es de 110 voltios, además los enchufes no son iguales, entonces las herramientas eléctricas de las ferreterías europeas no se van a poder conectar en América y viceversa, y si se fuerza el enchufe, una herramienta europea en América no va a funcionar a plena potencia y una americana en Europa se va a quemar (chispero). Igual hay que asegurarse de que los repositorios que agreguemos al sistema sean compatibles.

Es sistema de gestión de paquetes, tiene una lista de todos los programas instalados en nuestra computadora, también tiene una lista de todo lo que hay disponible en los repositorios agregados, entonces cuando se instala un paquete, se revisa si ya tiene instalado todo lo que se requiere (dependencias) o si necesita instalar paquetes adicionales desde los repositorios instalados. 

El sistema de gestión de paquetes que usa Deepin es APT, pero existen más en otras distribuciones, por ejemplo YUM en Fedora, YaST en openSUSE y Pacman en Arch Linux, solo por mencionar los más populares.

Por último vamos a mencionar el conflicto de paquetes, eso pasa cuando para instalar un paquete hay que desinstalar otro, esto equivale a que por cuestiones de espacio, para meter una herramienta al taller, primero hay que sacar otra para hacerle espacio. Esta es la principal causa de que un sistema se rompa cuando se agrega un repositorio que no es compatible, porque se sustituyen muchos programas que funcionan bien por otros que no fueron diseñados para funcionar en nuestro sistema, después de suficientes cambios el sistema deja de funcionar.

OPCIONES DE APT

A continuación presentamos algunos comandos básicos de APT y que son muy útiles.

ACTUALIZAR REPOSITORIOS

sudo apt update

Esto descarga y actualiza la lista de los paquete disponibles en los repositorios instalados.

INSTALAR PAQUETE

sudo apt install nombre_del_paquete

Este comando instala un paquete, por ejemplo sudo apt install firefox-latest instala Mozilla Firefox en su versión más reciente.

También se puede reinstalar un paquete agregando el parámetro –reinstall.

sudo apt install --reinstall nombre_del_paquete

BUSCAR PAQUETE

Una forma es empezar a escribir el nombre del paquete y presionar la tecla TAB dos veces, de esta manera muestra todos lo paquetes que empiezan con lo que hemos escrito, por ejemplo, todos los paquetes que empiezan con gimp.

jaca@titan:~$ sudo apt install gimp
gimp                  gimp-gluas            gimp-help-es          gimp-help-ru
gimp-cbmplugs         gimp-gmic             gimp-help-fr          gimp-help-sl
gimp-data             gimp-gutenprint       gimp-help-it          gimp-help-sv
gimp-data-extras      gimp-help-ca          gimp-help-ja          gimp-lensfun
gimp-dbg              gimp-help-common      gimp-help-ko          gimp-plugin-registry
gimp-dcraw            gimp-help-de          gimp-help-nl          gimp-texturize
gimp-dds              gimp-help-el          gimp-help-nn          gimp-ufraw
gimp-gap              gimp-help-en          gimp-help-pt          
jaca@titan:~$ sudo apt install gimp

Cuando son demasiados los resultados entonces nos preguntará si queremos mostrarlos todos.

jaca@titan:~$ sudo apt install firefox
Display all 104 possibilities? (y or n)

Si presiona la tecla Y es sí, si presiona la tecla N es no. Si responde afirmativamente al final de la ventana de la terminal se mostrará la leyenda —More— indicando que hay más resultados de los que se pueden mostrar en la ventana.

jaca@titan:~$ sudo apt install firefox
Display all 104 possibilities? (y or n)
firefoxdriver           firefox-esr-l10n-en-gb  firefox-esr-l10n-id     firefox-esr-l10n-pl
firefox-esr             firefox-esr-l10n-en-za  firefox-esr-l10n-is     firefox-esr-l10n-pt-br
firefox-esr52.9-cn      firefox-esr-l10n-eo     firefox-esr-l10n-it     firefox-esr-l10n-pt-pt
firefox-esr-dev         firefox-esr-l10n-es-ar  firefox-esr-l10n-ja     firefox-esr-l10n-rm
firefox-esr-l10n-ach    firefox-esr-l10n-es-cl  firefox-esr-l10n-ka     firefox-esr-l10n-ro
firefox-esr-l10n-af     firefox-esr-l10n-es-es  firefox-esr-l10n-kab    firefox-esr-l10n-ru
firefox-esr-l10n-all    firefox-esr-l10n-es-mx  firefox-esr-l10n-kk     firefox-esr-l10n-si
firefox-esr-l10n-an     firefox-esr-l10n-et     firefox-esr-l10n-km     firefox-esr-l10n-sk
firefox-esr-l10n-ar     firefox-esr-l10n-eu     firefox-esr-l10n-kn     firefox-esr-l10n-sl
firefox-esr-l10n-as     firefox-esr-l10n-fa     firefox-esr-l10n-ko     firefox-esr-l10n-son
--More--

Puede avanzar presionando la tecla Enter o la tecla espacio. Presione la tecla Q para abandonar.

Otra manera de buscar paquetes en APT es con la opción search, por ejemplo:

apt search firefox

Muestra todos los paquetes que coinciden con el término “firefox”.

Y si queremos una lista más compacta podemos hacer la búsqueda de la siguiente manera.

apt list | grep firefox

Si quiere ver sólo los que están instalados puede combinar la búsqueda con el comando grep.

apt search chrome | grep instal

ACTUALIZACIONES DEL SISTEMA

Existen dos opciones.

sudo apt upgrade

Este actualiza todo lo que está instalado pero no desinstala ningún paquete, entonces si la actualización de un paquete requiere que se desinstale algo, ese paquete no se actualiza, pero el resto sí. La otra opción es con el siguiente comando.

sudo apt full-upgrade

Esta opción además de actualizar todo lo que está instalado, desinstala todos los paquetes que sean necesarios para instalar todas las actualizaciones, asegura que todo quede actualizado a la última versión disponible en los repositorios instalados.

DESINSTALAR PAQUETES

Vamos a presentar tres opciones

sudo apt remove paquete

Desinstala el paquete pero deja algunos archivos, por ejemplo archivos de configuración.

sudo apt purge

Con esta opción se desinstala el paquete y borra todos los archivos relacionados, tratando de no dejar ningún rastro de que el paquete haya sido instalado.

sudo apt autoremove

Este comando está relacionado con las dependencias. Cuando se desinstala un paquete, sus dependencias no son desinstaladas. Con la opción autoremove, APT busca todos lo paquetes que fueron instalados como dependencias pero que ya no son usados por ningún otro paquete y los desinstala automáticamente.

CUIDADO CON ROMPER EL SISTEMA

Cuando ejecute una actualización, instalación o desinstalación, debe prestar atención a las advertencias del sistema. El formato y comportamiento de las advertencias es el mismo en todos los casos. El siguiente es un ejemplo de desinstalación, donde eliminar un sólo paquete desencadena la desinstalación de todo el escritorio de Deepin; vlc-plugin-base a primera vista parece que no está relacionado, pero es más importante de lo sospechado.

jaca@titan:~$ sudo apt remove vlc-plugin-base 
[sudo] password for usuario: 
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias       
Leyendo la información de estado... Hecho
Los paquetes indicados a continuación se instalaron de forma automática y ya no son necesarios.
  libkf5activitiesstats1 libkf5js5 libkf5khtml-data libkf5kirigami2-5 libkf5parts-data
  libkworkspace5-5 libnotify-bin qml-module-org-kde-kirigami2
Utilice «sudo apt autoremove» para eliminarlos.
Los siguientes paquetes se ELIMINARÁN:
  dde-clipboard dde-control-center dde-daemon dde-kwin dde-session-shell dde-session-ui kio
  kwin-common kwin-x11 libkf5declarative5 libkf5kcmutils5 libkf5khtml-bin libkf5khtml5
  libkf5newstuff5 libkf5newstuffcore5 libkf5notifications5 libkf5parts-plugins libkf5parts5
  libkf5plasma5 libkf5plasmaquick5 libkf5quickaddons5 libkf5wallet-bin libkf5wallet5
  libkscreenlocker5 libkwalletbackend5-5 libkwin4-effect-builtins1 phonon4qt5
  phonon4qt5-backend-vlc plasma-framework qml-module-org-kde-kcm qml-module-org-kde-kconfig
  qml-module-org-kde-kquickcontrols qml-module-org-kde-kquickcontrolsaddons startdde
  systemsettings vlc-plugin-base
0 actualizados, 0 nuevos se instalarán, 36 para eliminar y 0 no actualizados.
Se liberarán 252 MB después de esta operación.
¿Desea continuar? [S/n] n
Anulado.

Lo primero que debe observar cuidadosamente es la lista de paquetes que se eliminarán, encabezado por la frase: “Los siguientes paquetes se ELIMINARÁN”. Si no entiende qué implica desinstalar esa lista de paquetes, es mejor que presione la tecla N y luego Enter para abortar la operación.

Lo segundo a revisar es el contador  de modificaciones, en este caso “0 actualizados, 0 nuevos se instalarán, 36 para eliminar y 0 no actualizados”. Este también es un indicador para saber si la operación es lo que esperábamos o se está saliendo de control.

También es interesante ver el total del peso de los archivos que se agregará o que se liberará después de la operación, en el ejemplo es “Se liberarán 252 MB después de esta operación”.

Por último si está conforme y entiende los cambios presione la tecla S y Enter, si tiene dudas mejor presione la tecla N y Enter para cancelar la operación.

Si la operación no afecta a otros paquetes ya instalados, el sistema no pregunta si continúa o no.

REPARAR INSTALACIÓN

Tener paquetes rotos es cuando una instalación fue interrumpida o por alguna razón no terminó exitosamente, con el siguiente comando se repara todas las instalaciones pendientes.

sudo apt install --fix-broken

Si lo que necesita es reconfigurar el paquete de manera que se vuelva a configurar como cuando se instaló, use el siguiente comando.

sudo dpkg-reconfigure paquete

MOSTRAR INFORMACIÓN

Para ver todos los detalles de un paquete existe la opción show, con la que se puede consultar la versión, descripción, tamaño entre otras. El comando es el siguiente.

apt show paquete

Si quiere ver todas las versiones disponibles agregue el parámetro -a.

apt show -a paquete

Para ver una lista de la ubicación los archivos instalados por el paquete ejecute lo siguiente.

dpkg-query -L paquete

LIMPAR CACHE DE PAQUETES

Cada vez que se instala un paquete desde un repositorio, se descarga el archivo .deb correspondiente y se guarda en la carpeta /var/cache/apt/archives/. Si usted quiere borrar todos los archivos y liberar ese espacio, ejecute el siguiente comando.

sudo apt autoclean

Todos esos archivos .deb ya no son necesarios pues ya se usaron para instalar los paquetes correspondientes. Solo son útiles si necesita reinstalar los mismos paquetes.

Para los novatos creemos que esto es más que suficiente, aunque el comando apt tiene más opciones. Les comentamos que existen programas para usar APT de manera gráfica, entre ellos está Synaptic y GDebi, el primero es para administrar los paquetes del sistema y los disponibles en los repositorios instalados, y el segundo para instalar los paquetes cuando se descarga manualmente un archivo .deb. Deepin tiene el programa Gestor de paquetes Deepin (deepin-deb-installer) que viene preintalado, hace la misma función que GDebi pero de una manera más simplificada y sencilla.

OTROS ARTÍCULOS DE ESTA SERIE

TERMINAL PARA NOVATOS

Este fue el primer artículo de esta serie. Mostramos rápidamente trucos y comandos básicos para empezar a usar la terminal en GNU/Linux.

TERMINAL PARA NOVATOS: FISH, ATAJOS, ALIAS Y MÁS

La terminal es una herramienta de gran utilidad, y su uso es casi ineludible. Facilitamos su manejo con estos trucos.

TERMINAL PARA NOVATOS: EL COMANDO SUDO

Sudo, un comando muy básico y muy fácil de usar. Se usa para modificar componentes que afecten a todo el sistema y no sólo a la configuración de la cuenta del usuario.

Terminal para novatos: administrar carpetas y archivos

Cómo copiar, mover, borrar y crear archivos y carpetas.

5 6 votos
Califica el Artículo

18 Reacciones
Más antiguos
Más nuevos Más populares
Opinión desde el articulo
Ver todos los comentarios
PedroTirse
PedroTirse(@pedrotirse)
Deepineros
4 años atrás

Muy buen material, aunque hubiera sido bueno profundizar en algunos de esos comandos, por ejemplo dpkg tiene mucha tela por donde cortar. de todas formas disfrute la lectura.

Jare GM
Jare GM(@jaregm)
Deepineros
4 años atrás

Muchísimas gracias.

Juan Carlos
Juan Carlos(@juan-carlos)
Deepineros
4 años atrás

El tuto dice sudo apt update pero he visto en otros lougares que se debe hacer sudo apt full-upgrade, que es lo mas recomendable?

Juan Carlos
Juan Carlos(@juan-carlos)
Deepineros
4 años atrás

Respondido por:  Isaías Gätjens M

uups disculpa no me di cuenta de ese detalle, ahora si, gracias.

Gjcelis7
Gjcelis7(@gjcelis7)
Deepineros
4 años atrás

Saludos, sé que es un tema que no va pero es algo que he visto solo en esta distro ¿porqué para Boot exige casí 2Gb si solo usa 300mb? existe alguna razón ya que no se deja poner menos :/

XOdein
XOdein(@xodein)
Deepineros
Respondiendo a  Gjcelis7
4 años atrás

 Gjcelis7 Yo no he notado eso, recuerde siempre usted puede decidir el espacio si usa el particionado avanzado.

 

Gjcelis7
Gjcelis7(@gjcelis7)
Deepineros
Respondiendo a  XOdein
4 años atrás

 XOdein Pues me puso a pensar porque a mí es lo mínimo que me pide ya sea automatico o manual :/

 

Gjcelis7
Gjcelis7(@gjcelis7)
Deepineros
Respondiendo a  Isaías Gätjens M
4 años atrás

 Isaías Gätjens M Entiendo, pero siento que estoy quedando como mentiroso , amablemente lo invito a instalarlo con particionado automatico y verá que no miento en cuanto a la cantidad que asigna para Boot 🖐️ 

 

Gjcelis7
Gjcelis7(@gjcelis7)
Deepineros
Respondiendo a  Isaías Gätjens M
4 años atrás

 Isaías Gätjens M Por supuesto, nada como particionar a gusto PERO… En mi caso uso portátil y por mi profesión manejo información sensible y personal de terceros, entonces sí o sí debo instalar cifrando discos y la única forma de hacerlo es en automático porque no deja manual.

 

Car
Car(@car)
Redactores
Respondiendo a  Isaías Gätjens M
4 años atrás

Yo menos jajajaja jamas use boot aparte de echo juraría que a estas alturas es completamente inútil eso se arrastra por restricciones de las bios para arranque multiples etc y la posibilidad de devolver copas de seguridad de el arranque en caso de catastrofe; nuevamente todo eso es obsoleto mas aun desde la llegada de UEFI y GPT

Justo Moreno
Justo Moreno(@justo-moreno776)
Deepineros
3 años atrás

Muy instructivo, cual es la diferencia entre autoclean y autoremove? conozco que autoremove limpia dependencias que ya no son usadas por ninguna otra app, pero aqui se habla de autoclean que limpia los .debs, que quiere decir esto exactamente? no me queda claro.

gracias

Justo Moreno
Justo Moreno(@justo-moreno776)
Deepineros
Respondiendo a  Isaías Gätjens M
3 años atrás

 Isaías Gätjens M ya, entendido, muchas gracias por la explicación detallada, se agradece.

18
0
Nos gustaría saber lo que piensas, Únete a la discusión.x