Instalar, eliminar y actualizar paquetes es una actividad típica en Linux. La mayoría de las distribuciones de Linux proporcionan algún tipo de utilidad de gestión de paquetes. Por ejemplo, apt-get, dpkg, rpm, yum, etc.
En algunas distribuciones de Linux, yum es el gestor de paquetes por defecto.
Yum significa Yellowdog Updater Modified.
Este artículo explica los 15 comandos de yum más utilizados con ejemplos.
Instalar un paquete usando yum install
Para instalar un paquete, haz ‘yum install packagename’. Esto también identificará las dependencias automáticamente y las instalará.
El siguiente ejemplo instala el paquete postgresql.
# yum install postgresql.x86_64Resolving DependenciesInstall 2 Package(s)Is this ok : yPackage(s) data still to download: 3.0 M(1/2): postgresql-9.0.4-5.fc15.x86_64.rpm | 2.8 MB 00:11(2/2): postgresql-libs-9.0.4-5.fc15.x86_64.rpm | 203 kB 00:00------------------------------------------------------------------Total 241 kB/s | 3.0 MB 00:12 Running Transaction Installing : postgresql-libs-9.0.4-5.fc15.x86_64 1/2 Installing : postgresql-9.0.4-5.fc15.x86_64 2/2 Complete!
Por defecto ‘yum install’, le pedirá que acepte o rechace antes de instalar los paquetes. Si desea que yum instale automáticamente sin preguntar, utilice la opción -y como se muestra a continuación.
# yum -y install postgresql.x86_64
Desinstalar un paquete usando yum remove
Para eliminar un paquete (junto con todas sus dependencias), utilice ‘yum remove package’ como se muestra a continuación.
# yum remove postgresql.x86_64Resolving Dependencies---> Package postgresql.x86_64 0:9.0.4-5.fc15 will be erasedIs this ok : yRunning Transaction Erasing : postgresql-9.0.4-5.fc15.x86_64 1/1 Removed: postgresql.x86_64 0:9.0.4-5.fc15Complete!
Actualizar un paquete existente utilizando yum update
Si tiene una versión antigua de un paquete, utilice ‘yum update package’ para actualizarlo a la última versión actual. Esto también identificará e instalará todas las dependencias necesarias.
# yum update postgresql.x86_64
Busca un paquete para instalarlo usando yum search
Si no sabes el nombre exacto del paquete a instalar, usa ‘yum search keyword’, que buscará todos los paquetes que coincidan con la ‘palabra clave’ y los mostrará.
El siguiente ejemplo busca en el repositorio de yum todos los paquetes que coincidan con la palabra clave ‘firefox’ y muestra los paquetes disponibles.
# yum search firefoxLoaded plugins: langpacks, presto, refresh-packagekit============== N/S Matched: firefox ======================firefox.x86_64 : Mozilla Firefox Web browsergnome-do-plugins-firefox.x86_64 : gnome-do-plugins for firefoxmozilla-firetray-firefox.x86_64 : System tray extension for firefoxmozilla-adblockplus.noarch : Adblocking extension for Mozilla Firefoxmozilla-noscript.noarch : JavaScript white list extension for Mozilla FirefoxName and summary matches only, use "search all" for everything.
Mostrar información adicional sobre un paquete usando yum info
Una vez que busque un paquete usando yum search, puede usar ‘yum info package’ para ver información adicional sobre el paquete.
Los siguientes ejemplos muestran información adicional sobre el paquete samba-common.
# yum info samba-common.i686Loaded plugins: langpacks, presto, refresh-packagekitAvailable PackagesName : samba-commonArch : i686Epoch : 1Version : 3.5.11Release : 71.fc15.1Size : 9.9 MRepo : updatesSummary : Files used by both Samba servers and clientsURL : http://www.samba.org/License : GPLv3+ and LGPLv3+Description : Samba-common provides files necessary for both the server and client : packages of Samba.
Ver todos los paquetes disponibles usando yum list
El siguiente comando listará todos los paquetes disponibles en la base de datos de yum.
# yum list | less
Lista sólo los paquetes instalados usando yum list installed
Para ver todos los paquetes que están instalados en tu sistema, ejecuta el siguiente comando yum.
# yum list installed | less
¿A qué paquete pertenece un archivo? – Utiliza yum provides
Usa ‘yum provides’ si quieres saber a qué paquete pertenece un archivo concreto. Por ejemplo, si quiere saber el nombre del paquete que tiene el archivo /etc/sysconfig/nfs, haga lo siguiente.
# yum provides /etc/sysconfig/nfsLoaded plugins: langpacks, presto, refresh-packagekit1:nfs-utils-1.2.3-10.fc15.x86_64 : NFS utilities and supporting clients and : daemons for the kernel NFS serverRepo : fedoraMatched from:Filename : /etc/sysconfig/nfs1:nfs-utils-1.2.4-1.fc15.x86_64 : NFS utilities and supporting clients and : daemons for the kernel NFS serverRepo : updatesMatched from:Filename : /etc/sysconfig/nfs1:nfs-utils-1.2.4-1.fc15.x86_64 : NFS utilities and supporting clients and : daemons for the kernel NFS serverRepo : installedMatched from:Other : Provides-match: /etc/sysconfig/nfs
Lista de grupos de software disponibles usando yum grouplist
En yum, varios paquetes relacionados se agrupan en un grupo específico. En lugar de buscar e instalar todos los paquetes individuales que pertenecen a una función específica, puede simplemente instalar el grupo, que instalará todos los paquetes que pertenecen al grupo.
Para ver todos los grupos de software disponibles ejecute ‘yum grouplist’ como se muestra a continuación. El resultado aparece en tres grupos-Grupos instalados, Grupos de idiomas instalados y Grupos disponibles.
# yum grouplistInstalled Groups: Administration Tools Base Design Suite ....Installed Language Groups: Arabic Support Armenian Support Bengali Support ....Available Groups: Authoring and Publishing Books and Guides Clustering DNS Name Server Development Libraries Development Tools Directory Server Dogtag Certificate System ...
Instalar un grupo de software específico utilizando yum groupinstall
Para instalar un grupo de software específico, utilice la opción groupinstall como se muestra a continuación. En el siguiente ejemplo, el grupo ‘DNS Name Server’ contiene bind y bind-chroot.
# yum groupinstall 'DNS Name Server'Dependencies ResolvedInstall 2 Package(s)Is this ok : yPackage(s) data still to download: 3.6 M(1/2): bind-9.8.0-9.P4.fc15.x86_64.rpm | 3.6 MB 00:15(2/2): bind-chroot-9.8.0-9.P4.fc15.x86_64.rpm | 69 kB 00:00-----------------------------------------------------------------Total 235 kB/s | 3.6 MB 00:15Installed: bind-chroot.x86_64 32:9.8.0-9.P4.fc15Dependency Installed: bind.x86_64 32:9.8.0-9.P4.fc15Complete!
Nota: También puedes instalar la base de datos MySQL usando yum groupinstall como ya hemos comentado.
Actualizar un grupo de software existente usando groupupdate
Si ya has instalado un grupo de software usando yum groupinstall, y quieres actualizarlo a la última versión, usa ‘yum groupupdate’ como se muestra a continuación.
# yum groupupdate 'Graphical Internet'Dependencies ResolvedUpgrade 5 Package(s)Is this ok : y Running Transaction Updating : evolution-data-server-3.0.2-1.fc15.x86_64 1/10 Updating : evolution-3.0.2-3.fc15.x86_64 2/10 Updating : evolution-NetworkManager-3.0.2-3.fc15.x86_64 3/10 Updating : evolution-help-3.0.2-3.fc15.noarch 4/10 Updating : empathy-3.0.2-3.fc15.x86_64 5/10 Cleanup : evolution-NetworkManager-3.0.1-1.fc15.x86_64 6/10 Cleanup : evolution-help-3.0.1-1.fc15.noarch 7/10 Cleanup : evolution-3.0.1-1.fc15.x86_64 8/10 Cleanup : empathy-3.0.1-3.fc15.x86_64 9/10 Cleanup : evolution-data-server-3.0.1-1.fc15.x86_64 10/10 Complete!
Desinstalar un grupo de software utilizando yum groupremove
Para eliminar un grupo de software existente utiliza ‘yum groupremove’ como se muestra a continuación.
# yum groupremove 'DNS Name Server'Dependencies ResolvedRemove 2 Package(s)Is this ok : yRunning Transaction Erasing : 32:bind-chroot-9.8.0-9.P4.fc15.x86_64 1/2 Erasing : 32:bind-9.8.0-9.P4.fc15.x86_64 2/2 Complete!
Muestra tus repositorios yum actuales
Todos los comandos yum van contra uno o más repositorios yum. Para ver todos los repositorios yum que están configurados en su sistema, haga ‘yum repolist’ como se muestra a continuación.
Lo siguiente mostrará sólo los repositorios habilitados.
# yum repolistrepo id repo name statusfedora Fedora 15 - x86_64 24,085updates Fedora 15 - x86_64 - Updates 5,612
Para mostrar todos los repositorios (tanto los habilitados como los deshabilitados), utilice ‘yum repolist all’.
# yum repolist allrepo id repo name statusfedora Fedora 15 - x86_64 enabled: 24,085fedora-debuginfo Fedora 15 - x86_64 - Debug disabledfedora-source Fedora 15 - Source disabledrawhide-debuginfo Fedora - Rawhide - Debug disabledrawhide-source Fedora - Rawhide - Source disabledupdates Fedora 15 - x86_64 - Updates enabled: 5,612updates-debuginfo Fedora 15 - x86_64 - Updates - Debug disabledupdates-source Fedora 15 - Updates Source disabledupdates-testing Fedora 15 - x86_64 - Test Updates disabledupdates-testing-debuginfo Fedora 15 - x86_64 - Test Updates Debug disabledupdates-testing-source Fedora 15 - Test Updates Source disabled
Para ver sólo los repositorios deshabilitados, utilice ‘yum repositories disabled’.
Instalar desde un repositorio deshabilitado utilizando yum -enablerepo
Por defecto yum instala sólo desde los repositorios habilitados. Por alguna razón si quieres instalar un paquete desde un repositorio deshabilitado, utiliza la opción -enablerepo en el ‘yum install’ como se muestra a continuación.
# yum --enablerepo=fedora-source install vim-X11.x86_64Dependencies ResolvedInstall 1 Package(s)Is this ok : yRunning Transaction Installing : 2:vim-X11-7.3.138-1.fc15.x86_64 1/1 Complete!
Ejecutar comandos yum de forma interactiva usando Yum Shell
Yum proporciona el shell interactivo para ejecutar múltiples comandos como se muestra a continuación.
# yum shellSetting up Yum Shell> info samba.x86_64Available PackagesName : sambaArch : x86_64Epoch : 1Version : 3.5.11Release : 71.fc15.1Size : 4.6 MRepo : updatesSummary : Server and Client software to interoperate with Windows machinesURL : http://www.samba.org/License : GPLv3+ and LGPLv3+Description : : Samba is the suite of programs by which a lot of PC-related : machines share files, printers, and other information (such as : lists of available files and printers). The Windows NT, OS/2, and : Linux operating systems support this natively, and add-on packages : can enable the same thing for DOS, Windows, VMS, UNIX of all : kinds, MVS, and more. This package provides an SMB/CIFS server : that can be used to provide network services to SMB/CIFS clients. : Samba uses NetBIOS over TCP/IP (NetBT) protocols and does NOT : need the NetBEUI (Microsoft Raw NetBIOS frame) protocol.>
Yum también puede leer comandos desde un archivo de texto y ejecutarlos uno a uno. Esto es muy útil cuando se tienen múltiples sistemas. En lugar de ejecutar el mismo comando en todos los sistemas, crea un archivo de texto con esos comandos, y utiliza ‘yum shell’ para ejecutar esos comandos como se muestra a continuación.
# cat yum_cmd.txtrepolistinfo nfs-utils-lib.x86_64# yum shell yum_cmd.txt repo id repo name statusfedora Fedora 15 - x86_64 24,085updates Fedora 15 - x86_64 - Updates 5,612Available PackagesName : nfs-utils-libArch : x86_64Version : 1.1.5Release : 5.fc15Size : 61 kRepo : fedoraSummary : Network File System Support LibraryURL : http://www.citi.umich.edu/projects/nfsv4/linux/License : BSDDescription : Support libraries that are needed by the commands and : daemons the nfs-utils rpm.Leaving Shell