20 YUM-parancs a Linux-csomagkezeléshez
Ebből a cikkből megtudjuk, hogyan telepíthet, frissíthet, távolíthat el, hogyan találhat csomagokat, hogyan kezelheti a csomagokat és a tárolókat Linux rendszereken a YUM (Yellowdog Updater Modified) eszközzel, amelyet < fejlesztett.RedHat.
Az ebben a cikkben bemutatott példaparancsokat gyakorlatilag az RHEL 8 szerverünkön teszteltük, ezeket az anyagokat tanulmányi célokra, RHEL-tanúsítványok megszerzésére használhatja, vagy egyszerűen csak új csomagok telepítésének és rendszerének naprakészen tartásának lehetőségeinek felfedezésére.
Ennek a cikknek az alapvető követelménye, hogy rendelkeznie kell a parancsok alapvető ismereteivel és egy működő Linux operációs rendszerrel, ahol felfedezheti és gyakorolhatja az alább felsorolt parancsokat.
Mi az a YUM?
A YUM (Yellowdog Updater Modified) egy nyílt forráskódú parancssori, valamint grafikus alapú csomagkezelő eszköz az RPM-hez ( RedHat Package Manager) alapú Linux rendszerek.
Lehetővé teszi a felhasználóknak és a rendszergazdáknak a szoftvercsomagok egyszerű telepítését, frissítését, eltávolítását vagy keresését a rendszeren. Seth Vidal fejlesztette ki és adta ki GPL (General Public License) alatt nyílt forráskódúként, ami azt jelenti, hogy bárki letöltheti. és hozzáférhet a kódhoz a hibák kijavításához és testreszabott csomagok fejlesztéséhez.
A YUM számos harmadik féltől származó tárolót használ a csomagok automatikus telepítéséhez a függőségi problémák megoldásával.
Frissítés: A yum parancsot a dnf parancs váltja fel, amely a yum következő generációs verziója, és a YUM a legtöbb újabb RPM-alapú disztribúcióban.
1. Telepítsen egy csomagot a YUM segítségével
A Firefox nevű csomag telepítéséhez egyszerűen futtassa az alábbi parancsot, amely automatikusan megkeresi és telepíti a Firefox összes szükséges függőségét.
yum install firefox
Loaded plugins: fastestmirror
Dependencies Resolved
================================================================================================
Package Arch Version Repository Size
================================================================================================
Updating:
firefox i686 10.0.6-1.el6.centos updates 20 M
Updating for dependencies:
xulrunner i686 10.0.6-1.el6.centos updates 12 M
Transaction Summary
================================================================================================
Install 0 Package(s)
Upgrade 2 Package(s)
Total download size: 32 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): firefox-10.0.6-1.el6.centos.i686.rpm | 20 MB 01:10
(2/2): xulrunner-10.0.6-1.el6.centos.i686.rpm | 12 MB 00:52
------------------------------------------------------------------------------------------------
Total 63 kB/s | 32 MB 02:04
Updated:
firefox.i686 0:10.0.6-1.el6.centos
Dependency Updated:
xulrunner.i686 0:10.0.6-1.el6.centos
Complete!
A fenti parancs megerősítést kér, mielőtt bármilyen csomagot telepítene a rendszerére. Ha automatikusan, megerősítés kérése nélkül szeretné telepíteni a csomagokat, használja a -y
opciót az alábbi példa szerint.
yum -y install firefox
2. Csomag eltávolítása a YUM segítségével
Az összes függőséggel rendelkező csomag teljes eltávolításához futtassa a következő parancsot az alábbiak szerint.
yum remove firefox
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package firefox.i686 0:10.0.6-1.el6.centos set to be erased
--> Finished Dependency Resolution
Dependencies Resolved
====================================================================================================
Package Arch Version Repository Size
====================================================================================================
Removing:
firefox i686 10.0.6-1.el6.centos @updates 23 M
Transaction Summary
====================================================================================================
Remove 1 Package(s)
Reinstall 0 Package(s)
Downgrade 0 Package(s)
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Erasing : firefox-10.0.6-1.el6.centos.i686 1/1
Removed:
firefox.i686 0:10.0.6-1.el6.centos
Complete!
Ugyanígy a fenti parancs megerősítést kér a csomag eltávolítása előtt. A megerősítő felszólítás letiltásához adja hozzá a -y
opciót az alábbiak szerint.
yum -y remove firefox
3. Csomag frissítése a YUM használatával
Tegyük fel, hogy a MySQL-csomag elavult verziójával rendelkezik, és frissíteni szeretné a legújabb stabil verzióra. Csak futtassa a következő parancsot, amely automatikusan megoldja az összes függőségi problémát, és telepíti őket.
yum update mysql
Loaded plugins: fastestmirror
Dependencies Resolved
============================================================================================================
Package Arch Version Repository Size
============================================================================================================
Updating:
vsftpd i386 2.0.5-24.el5_8.1 updates 144 k
Transaction Summary
============================================================================================================
Install 0 Package(s)
Upgrade 1 Package(s)
Total size: 144 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : vsftpd 1/2
Cleanup : vsftpd 2/2
Updated:
vsftpd.i386 0:2.0.5-24.el5_8.1
Complete!
4. Soroljon fel egy csomagot a YUM használatával
Használja a lista függvényt az adott csomag névvel ellátott megkereséséhez. Például egy OpenSSH nevű csomag kereséséhez használja a parancsot.
yum list openssh
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.neu.edu.cn
* epel: mirror.neu.edu.cn
* extras: mirror.neu.edu.cn
* rpmforge: mirror.nl.leaseweb.net
* updates: mirror.nus.edu.sg
Installed Packages
openssh.i386 4.3p2-72.el5_6.3 installed
Available Packages 4.3p2-82.el5 base
A pontosabb keresés érdekében adja meg a csomagneveket a verziójukkal, ha tudja. Például a csomag egy adott verziójának OpenSSH-4.3p2 kereséséhez használja a parancsot.
yum list openssh-4.3p2
5. Keressen egy csomagot a YUM használatával
Ha nem emlékszik a csomag pontos nevére, használja a keresés funkciót az összes rendelkezésre álló csomag megkereséséhez, hogy megfeleljen a megadott csomag nevének. Például a szónak megfelelő összes csomag keresése.
yum search vsftpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.neu.edu.cn
* epel: mirror.neu.edu.cn
* extras: mirror.neu.edu.cn
* rpmforge: mirror.nl.leaseweb.net
* updates: ftp.iitm.ac.in
============================== Matched: vsftpd ========================
ccze.i386 : A robust log colorizer
pure-ftpd-selinux.i386 : SELinux support for Pure-FTPD
vsftpd.i386 : vsftpd - Very Secure Ftp Daemon
6. Információk beszerzése egy csomagról a YUM használatával
Tegyük fel, hogy szeretné tudni a csomaggal kapcsolatos információkat a telepítés előtt. Ha információt szeretne kapni egy csomagról, adja ki az alábbi parancsot.
yum info firefox
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.neu.edu.cn
* epel: mirror.neu.edu.cn
* extras: mirror.neu.edu.cn
* rpmforge: mirror.nl.leaseweb.net
* updates: ftp.iitm.ac.in
Available Packages
Name : firefox
Arch : i386
Version : 10.0.6
Release : 1.el5.centos
Size : 20 M
Repo : updates
Summary : Mozilla Firefox Web browser
URL : http://www.mozilla.org/projects/firefox/
License : MPLv1.1 or GPLv2+ or LGPLv2+
Description: Mozilla Firefox is an open-source web browser, designed for standards
: compliance, performance and portability.
7. Sorolja fel az összes elérhető csomagot a YUM használatával
A Yum adatbázisban elérhető összes csomag listázásához használja az alábbi parancsot.
yum list | less
8. Sorolja fel az összes telepített csomagot a YUM használatával
A rendszer összes telepített csomagjának listázásához egyszerűen adja ki az alábbi parancsot, amely megjeleníti az összes telepített csomagot.
yum list installed | less
9. Yum funkciót biztosít
A Yum provides funkció segítségével meg lehet találni, hogy egy adott fájl melyik csomaghoz tartozik. Például, ha szeretné tudni annak a csomagnak a nevét, amely a következővel rendelkezik: /etc/httpd/conf/httpd.conf.
yum provides /etc/httpd/conf/httpd.conf
Loaded plugins: fastestmirror
httpd-2.2.3-63.el5.centos.i386 : Apache HTTP Server
Repo : base
Matched from:
Filename : /etc/httpd/conf/httpd.conf
httpd-2.2.3-63.el5.centos.1.i386 : Apache HTTP Server
Repo : updates
Matched from:
Filename : /etc/httpd/conf/httpd.conf
httpd-2.2.3-65.el5.centos.i386 : Apache HTTP Server
Repo : updates
Matched from:
Filename : /etc/httpd/conf/httpd.conf
httpd-2.2.3-53.el5.centos.1.i386 : Apache HTTP Server
Repo : installed
Matched from:
Other : Provides-match: /etc/httpd/conf/httpd.conf
10. Ellenőrizze az elérhető frissítéseket a Yum segítségével
Ha meg szeretné tudni, hogy a rendszeren hány telepített csomag rendelkezik frissítésekkel, használja a következő parancsot.
yum check-update
11. Frissítse a rendszert a Yum segítségével
A rendszer naprakészen tartásához az összes biztonsági és bináris csomagfrissítéssel futtassa a következő parancsot. Ez telepíti az összes legújabb javítást és biztonsági frissítést a rendszerére.
yum update
12. Sorolja fel az összes elérhető csoportcsomagot
Linuxban számos csomag egy adott csoportba van kötve. Ahelyett, hogy egyedi csomagokat telepítene a yum segítségével, telepíthet egy adott csoportot, amely telepíti a csoporthoz tartozó összes kapcsolódó csomagot. Például az összes elérhető csoport felsorolásához egyszerűen adja ki a következő parancsot.
yum grouplist
Installed Groups:
Administration Tools
DNS Name Server
Dialup Networking Support
Editors
Engineering and Scientific
FTP Server
Graphics
Java Development
Legacy Network Server
Available Groups:
Authoring and Publishing
Base
Beagle
Cluster Storage
Clustering
Development Libraries
Development Tools
Eclipse
Educational Software
KDE (K Desktop Environment)
KDE Software Development
13. Telepítse a csoportos csomagokat
Egy adott csomagcsoport telepítéséhez a csoporttelepítés lehetőséget használjuk. Például a „MySQL Database” telepítéséhez egyszerűen hajtsa végre az alábbi parancsot.
yum groupinstall 'MySQL Database'
Dependencies Resolved
=================================================================================================
Package Arch Version Repository Size
=================================================================================================
Updating:
unixODBC i386 2.2.11-10.el5 base 290 k
Installing for dependencies:
unixODBC-libs i386 2.2.11-10.el5 base 551 k
Transaction Summary
=================================================================================================
Install 1 Package(s)
Upgrade 1 Package(s)
Total size: 841 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : unixODBC-libs 1/3
Updating : unixODBC 2/3
Cleanup : unixODBC 3/3
Dependency Installed:
unixODBC-libs.i386 0:2.2.11-10.el5
Updated:
unixODBC.i386 0:2.2.11-10.el5
Complete!
14. Csoportos csomagok frissítése
A meglévő telepített csoportcsomagok frissítéséhez futtassa a következő parancsot az alábbiak szerint.
yum groupupdate 'DNS Name Server'
Dependencies Resolved
================================================================================================================
Package Arch Version Repository Size
================================================================================================================
Updating:
bind i386 30:9.3.6-20.P1.el5_8.2 updates 981 k
bind-chroot i386 30:9.3.6-20.P1.el5_8.2 updates 47 k
Updating for dependencies:
bind-libs i386 30:9.3.6-20.P1.el5_8.2 updates 864 k
bind-utils i386 30:9.3.6-20.P1.el5_8.2 updates 174 k
Transaction Summary
================================================================================================================
Install 0 Package(s)
Upgrade 4 Package(s)
Total size: 2.0 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : bind-libs 1/8
Updating : bind 2/8
Updating : bind-chroot 3/8
Updating : bind-utils 4/8
Cleanup : bind 5/8
Cleanup : bind-chroot 6/8
Cleanup : bind-utils 7/8
Cleanup : bind-libs 8/8
Updated:
bind.i386 30:9.3.6-20.P1.el5_8.2 bind-chroot.i386 30:9.3.6-20.P1.el5_8.2
Dependency Updated:
bind-libs.i386 30:9.3.6-20.P1.el5_8.2 bind-utils.i386 30:9.3.6-20.P1.el5_8.2
Complete!
15. Távolítsa el a csoportos csomagokat
Bármely meglévő telepített csoport törléséhez vagy eltávolításához használja az alábbi parancsot.
yum groupremove 'DNS Name Server'
Dependencies Resolved
===========================================================================================================
Package Arch Version Repository Size
===========================================================================================================
Removing:
bind i386 30:9.3.6-20.P1.el5_8.2 installed 2.1 M
bind-chroot i386 30:9.3.6-20.P1.el5_8.2 installed 0.0
Transaction Summary
===========================================================================================================
Remove 2 Package(s)
Reinstall 0 Package(s)
Downgrade 0 Package(s)
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Erasing : bind 1/2
warning: /etc/sysconfig/named saved as /etc/sysconfig/named.rpmsave
Erasing : bind-chroot 2/2
Removed:
bind.i386 30:9.3.6-20.P1.el5_8.2 bind-chroot.i386 30:9.3.6-20.P1.el5_8.2
Complete!
16. Listázza ki az engedélyezett Yum adattárakat
A rendszerben lévő összes engedélyezett Yum-tároló listázásához használja a következő lehetőséget.
yum repolist
repo id repo name status
base CentOS-5 - Base enabled: 2,725
epel Extra Packages for Enterprise Linux 5 - i386 enabled: 5,783
extras CentOS-5 - Extras enabled: 282
mod-pagespeed mod-pagespeed enabled: 1
rpmforge RHEL 5 - RPMforge.net - dag enabled: 11,290
updates CentOS-5 - Updates enabled: 743
repolist: 20,824
16. Sorolja fel az összes engedélyezett és letiltott Yum adattárat
A következő parancs megjeleníti a rendszer összes engedélyezett és letiltott yum adattárát.
yum repolist all
repo id repo name status
C5.0-base CentOS-5.0 - Base disabled
C5.0-centosplus CentOS-5.0 - Plus disabled
C5.0-extras CentOS-5.0 - Extras disabled
base CentOS-5 - Base enabled: 2,725
epel Extra Packages for Enterprise Linux 5 - i386 enabled: 5,783
extras CentOS-5 - Extras enabled: 282
repolist: 20,824
17. Telepítsen egy csomagot egy adott tárolóból
Ha egy adott csomagot egy adott engedélyezett vagy letiltott tárolóból szeretne telepíteni, a yum parancsban az ---enablerepo
opciót kell használnia. Például a PhpMyAdmin csomag telepítéséhez csak hajtsa végre a parancsot.
yum --enablerepo=epel install phpmyadmin
Dependencies Resolved
=============================================================================================
Package Arch Version Repository Size
=============================================================================================
Installing:
phpMyAdmin noarch 3.5.1-1.el6 epel 4.2 M
Transaction Summary
=============================================================================================
Install 1 Package(s)
Total download size: 4.2 M
Installed size: 17 M
Is this ok [y/N]: y
Downloading Packages:
phpMyAdmin-3.5.1-1.el6.noarch.rpm | 4.2 MB 00:25
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : phpMyAdmin-3.5.1-1.el6.noarch 1/1
Verifying : phpMyAdmin-3.5.1-1.el6.noarch 1/1
Installed:
phpMyAdmin.noarch 0:3.5.1-1.el6
Complete!
18. Interaktív Yum Shell
A Yum segédprogram egyéni parancsértelmezőt biztosít, ahol több parancsot is végrehajthat.
yum shell
Loaded plugins: fastestmirror
Setting up Yum Shell
> update httpd
Loading mirror speeds from cached hostfile
* base: mirrors.sin3.sg.voxel.net
* epel: ftp.riken.jp
* extras: mirrors.sin3.sg.voxel.net
* updates: mirrors.sin3.sg.voxel.net
Setting up Update Process
>
19. Tisztítsa meg a Yum gyorsítótárat
Alapértelmezés szerint a yum az összes lerakatengedélyezett csomagadatot a /var/cache/yum/ mappában tartja az egyes alkönyvtáraknál. Az összes gyorsítótárazott fájl törléséhez az engedélyezett tárolóból, rendszeresen futtassa a következő parancsot. Tisztítsa meg az összes gyorsítótárat, és győződjön meg arról, hogy nincs felesleges hely. Nem akarjuk megadni az alábbi parancs kimenetét, mert szeretjük a gyorsítótárban tárolt adatokat úgy, ahogy vannak.
yum clean all
20. A Yum története megtekintése
A yum parancs összes múltbeli tranzakciójának megtekintéséhez használja a következő parancsot.
yum history
Loaded plugins: fastestmirror
ID | Login user | Date and time | Action(s) | Altered
-------------------------------------------------------------------------------
10 | root | 2012-08-11 15:19 | Install | 3
9 | root | 2012-08-11 15:11 | Install | 1
8 | root | 2012-08-11 15:10 | Erase | 1 EE
7 | root | 2012-08-10 17:44 | Install | 1
6 | root | 2012-08-10 12:19 | Install | 2
5 | root | 2012-08-10 12:14 | Install | 3
4 | root | 2012-08-10 12:12 | I, U | 13 E<
3 | root | 2012-08-09 13:01 | Install | 1 >
2 | root | 2012-08-08 20:13 | I, U | 292 EE
1 | System | 2012-08-08 17:15 | Install | 560
history list
Példáikkal megpróbáltuk lefedni az összes alapvető yum parancsot. Ha bármi, ami a yum parancsokkal kapcsolatos, kimaradt. Kérjük, frissítsen minket megjegyzés rovatunkon keresztül. Tehát a kapott visszajelzések alapján folyamatosan frissítjük.