Linux Paket Yönetimi için 20 YUM Komutu
Bu makalede, YUM (Yellowdog Updater Modified) aracını kullanarak Linux sistemlerine nasıl kurulacağını, güncelleneceğini, kaldırılacağını, paketleri bulacağını, paketleri ve depoları nasıl yöneteceğimizi öğreneceğiz. Strong>RedHat.
Bu makalede gösterilen örnek komutlar RHEL 8 sunucumuzda pratik olarak test edilmiştir; bu malzemeleri çalışma amacıyla, RHEL sertifikaları için veya yalnızca yeni paketleri kurmanın ve sisteminizi güncel tutmanın yollarını keşfetmek için kullanabilirsiniz.
Bu makalenin temel gereksinimi, aşağıda listelenen tüm komutları keşfedip uygulayabileceğiniz, komutlar ve çalışan bir Linux işletim sistemi hakkında temel bilgiye sahip olmanızdır.
YUM nedir?
YUM (Yellowdog Updater Modified), RPM () için açık kaynaklı bir komut satırı ve grafik tabanlı paket yönetim aracıdır. RedHat Paket Yöneticisi) tabanlı Linux sistemleri.
Kullanıcıların ve sistem yöneticilerinin bir sistemdeki yazılım paketlerini kolayca kurmasına, güncellemesine, kaldırmasına veya aramasına olanak tanır. Seth Vidal tarafından GPL (Genel Kamu Lisansı) altında açık kaynak olarak geliştirilmiş ve yayınlanmıştır; bu, herkesin indirmesine izin verilebileceği anlamına gelir ve hataları düzeltmek ve özelleştirilmiş paketler geliştirmek için koda erişin.
YUM, bağımlılık sorunlarını çözerek paketleri otomatik olarak yüklemek için çok sayıda üçüncü taraf depo kullanır.
Güncelleme: yum komutunun yerini, yum'un yeni nesil sürümü olan ve onun yerine geçtiği düşünülen dnf komutu almıştır. YUM, daha yeni RPM tabanlı dağıtımların çoğunda.
1. YUM ile Paket Kurun
Firefox adlı bir paketi yüklemek için aşağıdaki komutu çalıştırmanız yeterlidir; paket, Firefox için gerekli tüm bağımlılıkları otomatik olarak bulup yükleyecektir.
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!
Yukarıdaki komut sisteminize herhangi bir paket kurmadan önce onay isteyecektir. Paketleri herhangi bir onay istemeden otomatik olarak kurmak istiyorsanız aşağıdaki örnekte gösterildiği gibi -y
seçeneğini kullanın.
yum -y install firefox
2. YUM'lu Paketi Kaldırma
Bir paketi tüm bağımlılıklarıyla birlikte tamamen kaldırmak için, aşağıda gösterildiği gibi aşağıdaki komutu çalıştırmanız yeterlidir.
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!
Aynı şekilde yukarıdaki komut bir paketi kaldırmadan önce onay isteyecektir. Onay istemini devre dışı bırakmak için aşağıda gösterildiği gibi -y
seçeneğini eklemeniz yeterlidir.
yum -y remove firefox
3. YUM kullanarak Paket Güncelleme
Diyelim ki MySQL paketinin eski bir sürümüne sahipsiniz ve onu en son kararlı sürüme güncellemek istiyorsunuz. Sadece aşağıdaki komutu çalıştırın, tüm bağımlılık sorunlarını otomatik olarak çözecek ve yükleyecektir.
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. YUM'u kullanarak Paket Listeleme
Belirli bir paketi bir adla aramak için liste işlevini kullanın. Örneğin, OpenSSH adlı bir paketi aramak için bu komutu kullanın.
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
Aramanızı daha doğru hale getirmek için, biliyorsanız paket adlarını versiyonlarıyla birlikte tanımlayın. Örneğin, paketin belirli bir OpenSSH-4.3p2 sürümünü aramak için bu komutu kullanın.
yum list openssh-4.3p2
5. YUM kullanarak Paket arayın
Paketin tam adını hatırlamıyorsanız, belirttiğiniz paketin adıyla eşleşen mevcut tüm paketleri aramak için arama işlevini kullanın. Örneğin, kelimeyle eşleşen tüm paketleri aramak için.
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. YUM kullanarak Paket Hakkında Bilgi Alın
Bir paketi kurmadan önce onunla ilgili bilgileri öğrenmek istediğinizi varsayalım. Bir paket hakkında bilgi almak için aşağıdaki komutu vermeniz yeterlidir.
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. YUM'u kullanarak Mevcut tüm Paketleri listeleyin
Yum veritabanındaki mevcut tüm paketleri listelemek için aşağıdaki komutu kullanın.
yum list | less
8. YUM'u kullanarak tüm Kurulu Paketleri listeleyin
Bir sistemdeki tüm kurulu paketleri listelemek için aşağıdaki komutu vermeniz yeterlidir, kurulu tüm paketleri gösterecektir.
yum list installed | less
9. Yum İşlev Sağlar
Yum sağlar işlevi belirli bir dosyanın hangi pakete ait olduğunu bulmak için kullanılır. Örneğin, /etc/httpd/conf/httpd.conf dosyasını içeren paketin adını bilmek istiyorsanız.
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. Yum'u Kullanarak Mevcut Güncellemeleri Kontrol Edin
Sisteminizde kaç tane kurulu pakette güncelleme bulunduğunu bulmak için aşağıdaki komutu kullanmayı kontrol edin.
yum check-update
11. Yum'u kullanarak Sistemi Güncelleyin
Sisteminizi tüm güvenlik ve ikili paket güncellemeleriyle güncel tutmak için aşağıdaki komutu çalıştırın. Sisteminize en son yamaları ve güvenlik güncellemelerini yükleyecektir.
yum update
12. Mevcut tüm Grup Paketlerini listeleyin
Linux'ta çok sayıda paket belirli bir grupta toplanmıştır. Yum ile ayrı ayrı paketler kurmak yerine, gruba ait tüm ilgili paketleri kuracak belirli bir grup kurabilirsiniz. Örneğin mevcut tüm grupları listelemek için aşağıdaki komutu vermeniz yeterlidir.
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. Grup Paketlerini Kurun
Belirli bir paket grubunu kurmak için groupinstall seçeneğini kullanırız. Örneğin “MySQL Database” kurmak için aşağıdaki komutu uygulamanız yeterli.
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. Grup Paketlerini Güncelleyin
Mevcut herhangi bir kurulu grup paketini güncellemek için aşağıda gösterildiği gibi aşağıdaki komutu çalıştırmanız yeterlidir.
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. Grup Paketlerini Kaldır
Mevcut herhangi bir kurulu grubu sistemden silmek veya kaldırmak için aşağıdaki komutu kullanmanız yeterlidir.
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. Etkinleştirilmiş Yum Depolarını Listeleyin
Sisteminizdeki tüm etkin Yum depolarını listelemek için aşağıdaki seçeneği kullanın.
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. Tüm Etkin ve Devre Dışı Yum Depolarını Listeleyin
Aşağıdaki komut sistemdeki tüm etkin ve devre dışı yum depolarını görüntüleyecektir.
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. Belirli Bir Depodan Paket Kurun
Belirli bir etkin veya devre dışı depodan belirli bir paketi yüklemek için yum komutunuzda --enablerepo
seçeneğini kullanmanız gerekir. Örneğin PhpMyAdmin paketini kurmak için komutu çalıştırmanız yeterlidir.
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. İnteraktif Yum Kabuğu
Yum yardımcı programı, birden fazla komutu çalıştırabileceğiniz özel bir kabuk sağlar.
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. Yum Önbelleğini Temizleyin
Varsayılan olarak yum, deponun etkin olduğu tüm paket verilerini her bir alt dizinde /var/cache/yum/ içinde tutar; etkin depodaki önbelleğe alınmış tüm dosyaları temizlemek için aşağıdaki komutu düzenli olarak çalıştırmanız gerekir. tüm önbelleği temizleyin ve gereksiz alanın kullanıldığı hiçbir şey olmadığından emin olun. Önbelleğe alınan verileri olduğu gibi tutmayı sevdiğimiz için aşağıdaki komutun çıktısını vermek istemiyoruz.
yum clean all
20. Yum'un Geçmişini Görüntüleyin
Yum komutunun geçmiş tüm işlemlerini görüntülemek için aşağıdaki komutu kullanmanız yeterlidir.
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
Yum komutlarını ilerletmek için gereken tüm temel bilgileri örnekleriyle ele almaya çalıştık. Yum komutlarıyla ilgili herhangi bir şey kaçırılmış olabilir. Lütfen yorum kutumuz aracılığıyla bizi bilgilendirin. Bu nedenle, alınan geri bildirimlere göre aynı şeyi güncellemeye devam ediyoruz.