Administrador de Linux: gestión de paquetes
La gestión de paquetes en CentOS se puede realizar de dos formas: desde el terminal y desde la interfaz gráfica de usuario.
La mayoría de las veces, la mayor parte del tiempo de un administrador de CentOS estará usando la terminal. Actualizar e instalar paquetes para CentOS no es diferente. Con esto en mente, primero exploraremos la administración de paquetes en la terminal, luego tocaremos el uso de la herramienta gráfica de administración de paquetes proporcionada por CentOS.
Administrador de paquetes YUM
YUM es la herramienta proporcionada para la administración de paquetes en CentOS. Hemos tocado brevemente este tema en capítulos anteriores. En este capítulo, trabajaremos desde una instalación limpia de CentOS. Primero actualizaremos completamente nuestra instalación y luego instalaremos una aplicación.
YUM ha llevado la instalación y administración de software en Linux por un largo camino. YUM verifica "automágicamente" las dependencias desactualizadas, además de los paquetes desactualizados. Esto realmente le ha quitado una carga al administrador de CentOS en comparación con los viejos tiempos de compilar cada aplicación desde el código fuente.
yum comprobar-actualizar
Comprueba los paquetes que pueden actualizar a los candidatos. Para este tutorial, asumiremos que se trata de un sistema de producción que se enfrentará a Internet sin aplicaciones de producción que deba probar DevOps antes de actualizar los paquetes. Instalemos ahora los candidatos actualizados en el sistema.
[root@localhost rdc]# yum check-update
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
NetworkManager.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-adsl.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-glib.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-libnm.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-team.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-tui.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-wifi.x86_64 1:1.4.0-19.el7_3 updates
audit.x86_64 2.6.5-3.el7_3.1 updates
vim-common.x86_64 2:7.4.160-1.el7_3.1 updates
vim-enhanced.x86_64 2:7.4.160-1.el7_3.1 updates
vim-filesystem.x86_64 2:7.4.160-1.el7_3.1 updates
vim-minimal.x86_64 2:7.4.160-1.el7_3.1 updates
wpa_supplicant.x86_64 1:2.0-21.el7_3 updates
xfsprogs.x86_64 4.5.0-9.el7_3 updates
[root@localhost rdc]#
actualización de yum
Esto instalará todos los candidatos actualizados y actualizará su instalación de CentOS. Con una nueva instalación, esto puede llevar un poco de tiempo dependiendo de su instalación y la velocidad de su conexión a Internet.
[root@localhost rdc]# yum update
vim-minimal x86_64 2:7.4.160-1.el7_3.1 updates 436 k
wpa_supplicant x86_64 1:2.0-21.el7_3 updates 788 k
xfsprogs x86_64 4.5.0-9.el7_3 updates 895 k
Transaction Summary
======================================================================================
Install 2 Packages
Upgrade 156 Packages
Total download size: 371 M
Is this ok [y/d/N]:
Instalar software a través de YUM
Además de actualizar el sistema CentOS, el administrador de paquetes YUM es nuestra herramienta de referencia para instalar el software. Todo, desde herramientas de monitoreo de red, reproductores de video, hasta editores de texto, se puede instalar desde un repositorio central con YUM .
Antes de instalar algunas utilidades de software, veamos algunos comandos de YUM . Para el trabajo diario, el 90% del uso de YUM por parte de un administrador de CentOS será con aproximadamente 7 comandos. Repasaremos cada uno con la esperanza de familiarizarnos con el funcionamiento de YUM a un nivel competente para el uso diario. Sin embargo, como la mayoría de las utilidades de Linux, YUM ofrece una gran cantidad de funciones avanzadas que siempre son excelentes para explorar a través de la página de manual. Usar man yum siempre será el primer paso para realizar operaciones desconocidas con cualquier utilidad de Linux.
Comandos YUM más comunes
A continuación se muestran los comandos YUM de uso común.
Mando | Acción |
---|---|
lista instalada | Enumera los paquetes instalados a través de YUM |
Listar todo | Muestra todos los paquetes disponibles actualmente |
lista de grupo | Enumera paquetes agrupados |
info | Proporciona información detallada sobre un paquete. |
buscar | Busca descripciones y nombres de paquetes |
Instalar en pc | Instala un paquete |
localinstall | Instala un paquete rpm local |
eliminar | Elimina e instala el paquete |
Limpiar todo | Limpia / var / cache / yum para liberar espacio en disco |
hombre yum | Como todos los comandos de Linux, el archivo de ayuda |
Instalar software con YUM
Ahora instalaremos un navegador web basado en texto llamado Lynx. Antes de la instalación, primero debemos obtener el nombre del paquete que contiene el navegador web Lynx. Ni siquiera estamos 100% seguros de que nuestro repositorio CentOS predeterminado proporcione un paquete para el navegador web Lynx, así que busquemos y veamos:
[root@localhost rdc]# yum search web browser
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
=================================================================
N/S matched: web, browser
==================================================================
icedtea-web.x86_64 : Additional Java components for OpenJDK - Java browser
plug-in and Web Start implementation
elinks.x86_64 : A text-mode Web browser
firefox.i686 : Mozilla Firefox Web browser
firefox.x86_64 : Mozilla Firefox Web browser
lynx.x86_64 : A text-based Web browser
Full name and summary matches only, use "search all" for everything.
[root@localhost rdc]#
Vemos, CentOS ofrece el navegador web Lynx en el repositorio. Veamos más información sobre el paquete.
[root@localhost rdc]# lynx.x86_64
bash: lynx.x86_64: command not found...
[root@localhost rdc]# yum info lynx.x86_64
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Available Packages
Name : lynx
Arch : x86_64
Version : 2.8.8
Release : 0.3.dev15.el7
Size : 1.4 M
Repo : base/7/x86_64
Summary : A text-based Web browser
URL : http://lynx.isc.org/
License : GPLv2
Description : Lynx is a text-based Web browser. Lynx does not display any images,
: but it does support frames, tables, and most other HTML tags. One
: advantage Lynx has over graphical browsers is speed; Lynx starts and
: exits quickly and swiftly displays web pages.
[root@localhost rdc]#
¡Agradable! La versión 2.8 es lo suficientemente actual, así que instalemos Lynx.
[root@localhost rdc]# yum install lynx
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Resolving Dependencies
--> Running transaction check
---> Package lynx.x86_64 0:2.8.8-0.3.dev15.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
===============================================================================
===============================================================================
Package Arch
Version Repository Size
===============================================================================
===============================================================================
Installing:
lynx x86_64
2.8.80.3.dev15.el7 base 1.4 M
Transaction Summary
===============================================================================
===============================================================================
Install 1 Package
Total download size: 1.4 M
Installed size: 5.4 M
Is this ok [y/d/N]: y
Downloading packages:
No Presto metadata available for base
lynx-2.8.8-0.3.dev15.el7.x86_64.rpm
| 1.4 MB 00:00:10
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : lynx-2.8.8-0.3.dev15.el7.x86_64
1/1
Verifying : lynx-2.8.8-0.3.dev15.el7.x86_64
1/1
Installed:
lynx.x86_64 0:2.8.8-0.3.dev15.el7
Complete!
[root@localhost rdc]#
A continuación, asegurémonos de que Lynx se instaló correctamente.
[root@localhost rdc]# yum list installed | grep -i lynx
lynx.x86_64 2.8.8-0.3.dev15.el7 @base
[root@localhost rdc]#
¡Excelente! Usemos Lynx para ver cómo se ve la web sin "me gusta" ni imágenes bonitas.
[root@localhost rdc]# lynx www.tutorialpoint.in
Genial, ahora tenemos un navegador web para nuestro servidor de producción que se puede usar sin mucha preocupación en exploits remotos lanzados a través de la web. Esto es bueno para los servidores de producción.
Estamos casi terminados, sin embargo, primero debemos configurar este servidor para que los desarrolladores prueben aplicaciones. Por lo tanto, asegurémonos de que tengan todas las herramientas necesarias para su trabajo. Podríamos instalar todo individualmente, pero CentOS y YUM lo han hecho mucho más rápido. Instalemos el paquete de grupo de desarrollo .
[root@localhost rdc]# yum groups list
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Available Groups:
Compatibility Libraries
Console Internet Tools
Development Tools
Graphical Administration Tools
Legacy UNIX Compatibility
Scientific Support
Security Tools
Smart Card Support
System Administration Tools
System Management
Done
[root@localhost rdc]#
Esta es una lista más pequeña de grupos de paquetes proporcionada por CentOS. Veamos qué se incluye con el "Grupo de desarrollo".
[root@localhost rdc]# yum group info "Development Tools"
Loaded plugins: fastestmirror, langpacks
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Group: Development Tools
Group-Id: development
Description: A basic development environment.
Mandatory Packages:
autoconf
automake
binutils
bison
La primera pantalla de salida es como se ve arriba. Esta lista completa es bastante completa. Sin embargo, normalmente será necesario instalar este grupo en su totalidad a medida que pase el tiempo. Instalemos todo el grupo de desarrollo.
[root@localhost rdc]# yum groupinstall "Development Tools"
Esta será una instalación más grande. Cuando esté completo, su servidor tendrá la mayoría de las bibliotecas de desarrollo y compiladores para Perl, Python, C y C ++.
Gestión gráfica de paquetes en CentOS
Gnome Desktop proporciona una herramienta gráfica de administración de paquetes llamada Software. Es bastante simple de usar y sencillo. Software, la herramienta de administración de paquetes de Gnome para CentOS se puede encontrar navegando a: Aplicaciones → Herramientas del sistema → Software.
La Herramienta de administración de paquetes de software se divide en grupos, lo que permite al administrador seleccionar los paquetes para su instalación. Si bien esta herramienta es excelente por su facilidad de uso y simplicidad para los usuarios finales, YUM es mucho más poderosa y probablemente los administradores la utilizarán más.
A continuación se muestra una captura de pantalla de la herramienta de administración de paquetes de software, que no está diseñada para administradores de sistemas.