Het installeren, verwijderen en bijwerken van pakketten is een typische activiteit onder Linux. De meeste Linux-distributies bieden een of ander hulpprogramma voor pakketbeheer. Bijvoorbeeld, apt-get, dpkg, rpm, yum, etc.
Op sommige Linux distributies is yum de standaard package manager.
Yum staat voor Yellowdog Updater Modified.
Dit artikel legt 15 meest gebruikte yum commando’s uit met voorbeelden.
Installeer een pakket met yum install
Om een pakket te installeren, doe je ‘yum install packagename’. Dit zal ook automatisch de afhankelijkheden identificeren en deze installeren.
Het volgende voorbeeld installeert het postgresql pakket.
# 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!
Aan standaard ‘yum install’, zal u vragen om te accepteren of te weigeren voordat u de pakketten installeert. Als u wilt dat yum automatisch installeert zonder te vragen, gebruik dan -y optie zoals hieronder getoond.
# yum -y install postgresql.x86_64
Een pakket verwijderen met yum remove
Om een pakket te verwijderen (samen met al zijn afhankelijkheden), gebruik dan ‘yum remove package’ zoals hieronder getoond.
# 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!
Een bestaand pakket upgraden met yum update
Als u een oudere versie van een pakket heeft, gebruik dan ‘yum update package’ om het te upgraden naar de laatste actuele versie. Dit zal ook alle vereiste afhankelijkheden identificeren en installeren.
# yum update postgresql.x86_64
Zoek naar een te installeren pakket met yum search
Als u niet de exacte pakketnaam weet die geïnstalleerd moet worden, gebruik dan ‘yum search keyword’, dit zal alle pakketten zoeken die overeenkomen met het ‘keyword’ en deze weergeven.
Het volgende voorbeeld zoekt in de yum repository naar alle pakketten die overeenkomen met het trefwoord ‘firefox’ en geeft de beschikbare pakketten weer.
# 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.
Aanvullende informatie over een pakket weergeven met yum info
Als u naar een pakket zoekt met yum search, kunt u ‘yum info package’ gebruiken om aanvullende informatie over het pakket weer te geven.
Het volgende voorbeeld toont aanvullende informatie over het samba-common pakket.
# 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.
Bekijk alle beschikbare pakketten met yum list
Het volgende commando geeft een lijst weer van alle pakketten die beschikbaar zijn in de yum database.
# yum list | less
Lijst alleen de geïnstalleerde pakketten met behulp van yum list installed
Om alle pakketten te bekijken die op uw systeem zijn geïnstalleerd, voert u het volgende yum commando uit.
# yum list installed | less
Van welk pakket is een bestand? – Gebruik yum provides
Gebruik ‘yum provides’ als u wilt weten tot welk pakket een bepaald bestand behoort. Als u bijvoorbeeld de naam van het pakket wilt weten dat het /etc/sysconfig/nfs bestand bevat, doe dan het volgende.
# 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
Lijst beschikbare software groepen met yum grouplist
In yum, worden verschillende gerelateerde pakketten gegroepeerd in een specifieke groep. In plaats van alle individuele pakketten te zoeken en te installeren die bij een specifieke functie horen, kunt u eenvoudig de groep installeren, die alle pakketten zal installeren die bij de groep horen.
Om alle beschikbare softwaregroepen te zien voert u ‘yum grouplist’ uit zoals hieronder getoond. De uitvoer wordt weergegeven in drie groepen-Installeerde groepen, Geïnstalleerde taalgroepen en Beschikbare groepen.
# 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 ...
Installeer een specifieke software groep met yum groupinstall
Om een specifieke software groep te installeren, gebruik je de groupinstall optie zoals hieronder wordt weergegeven. In het volgende voorbeeld, ‘DNS Name Server’ groep bevat bind en 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!
Note: U kunt ook MySQL database installeren met yum groupinstall zoals we eerder hebben besproken.
Een bestaande software groep upgraden met groupupdate
Als u al een software groep heeft geïnstalleerd met yum groupinstall, en u wilt deze upgraden naar de laatste versie, gebruik dan ‘yum groupupdate’ zoals hieronder getoond.
# 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!
Een softwaregroep verwijderen met yum groupremove
Om een bestaande softwaregroep te verwijderen gebruikt u ‘yum groupremove’, zoals hieronder getoond.
# 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!
Toon uw huidige yum repositories
Alle yum commando’s gaan tegen een of meer yum repositories in. Om alle yum repositories te bekijken die in uw systeem zijn geconfigureerd, doet u ‘yum repolist’ zoals hieronder getoond.
Hieronder worden alleen de ingeschakelde repositories getoond.
# yum repolistrepo id repo name statusfedora Fedora 15 - x86_64 24,085updates Fedora 15 - x86_64 - Updates 5,612
Om alle repositories te tonen (zowel ingeschakelde als uitgeschakelde), gebruikt u ‘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
Om alleen de uitgeschakelde repositories te zien, gebruik ‘yum repositories disabled’.
Installeren vanuit een uitgeschakelde repositories met yum -enablerepo
Bestandaardig installeert yum alleen vanuit de ingeschakelde repositories. Als je om wat voor reden dan ook een pakket wilt installeren vanuit een uitgeschakelde repository, gebruik dan de -enablerepo optie in de ‘yum install’ zoals hieronder getoond.
# 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!
Syum commando’s interactief uitvoeren met Yum Shell
Yum biedt de interactieve shell om meerdere commando’s uit te voeren zoals hieronder getoond.
# 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 kan ook commando’s uit een tekst bestand lezen en deze één voor één uitvoeren. Dit is erg handig als je meerdere systemen hebt. In plaats van dezelfde commando’s op alle systemen uit te voeren, maak je een tekstbestand met deze commando’s, en gebruik je ‘yum shell’ om deze commando’s uit te voeren zoals hieronder is weergegeven.
# 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