Linux Yum Paket Yönetimi İçin Komutlar

Bu yazıda, RedHat tarafından geliştirilen YUM (Yellowdog Updater Modified) aracını kullanarak Linux sistemlerinde paketler ve depoları nasıl kuracağınızı, güncelleyeceğini, kaldıracağını, paketleri bulacağını, paketleri nasıl yöneteceğinizi öğreneceğiz. Bu yazıda gösterilen örnek komutlar, CentOS 6.3 sunucuda pratik olarak test edilmekte, bu materyali çalışma amacı, sertifikaları veya sadece yeni paketler yüklemenin yollarını keşfetmek ve sisteminizi güncel tutmak 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 olmalısınız.

YUM nedir?

YUM ( Yellowdog Updater Modified ), açık kaynak kodlu bir komut satırı yanı sıra RPM ( RedHat Package Manager ) tabanlı Linux sistemleri için grafik tabanlı bir paket yönetim aracıdır. Kullanıcıların ve sistem yöneticisinin, bir sistemdeki yazılım paketlerini kolayca yüklemesine, güncellemesine, kaldırmasına veya aramalarına olanak tanır. Seth Vidal tarafından GPL ( General Public License ) uyarınca geliştirilmiş ve açık kaynak kod olarak yayınlanmıştır. Herkes bugs’ları düzeltmek ve özelleştirilmiş paketler geliştirmek için kodu indirip erişmesine izin verilebilir demektir. YUM , paketleri bağımlılık sorunlarını çözerek otomatik olarak yüklemek için sayısız üçüncü taraf depolarını kullanmaktadır.

  1. YUM ile bir Paket Yükleyin:

Firefox 14 adlı bir paket yüklemek için aşağıdaki komutu çalıştırmanız yeterlidir; Firefox için gerekli tüm bağımlılıkları otomatik olarak bulur ve yükler.

# 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 yüklemeden önce onay isteyecektir. Herhangi bir teyit istemeksizin paketleri otomatik olarak yüklemek istiyorsanız, aşağıdaki örnekte gösterildiği gibi -y seçeneğini kullanın.

# yum -y install firefox

linux yum paket yonetimi icin komutlar

2. YUM ile bir Paket Çıkarma:

Bir paketi tamamen bağımlılıklarıyla kaldırmak için aşağıdaki komutu aşağıda gösterildiği gibi çalıştırın.

# 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 çıkarmadan önce onaylamayı isteyecektir. Onay istemini devre dışı bırakmak için, aşağıda gösterildiği gibi -y seçeneğini ekleyin.

# yum -y remove firefox

  1. YUM’u Kullanarak Paket Güncelleme:

Diyelim ki, MySQL paketinin eski sürümüne sahip olduğunuzu ve en son kararlı sürümüne güncellemek istediğinizi varsayalım. Aşağıdaki komutu çalıştırmanız otomatik olarak tüm bağımlılık sorunlarını çözer ve yükler.

# 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!

  1. YUM kullanarak bir Paket Listeleme:

Belirli paketi adıyla aramak için list işlevini kullanın. Örneğin openssh adlı bir paket aramak için 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

Aramanızı daha doğru hale getirmek için, paket adını versiyonlarıyla birlikte tanımlayın, biliyorsanız. Örneğin paketin belirli bir sürümünü openssh-4.3p2 aramak için komutu kullanın.

# yum list openssh-4.3p2
  1. YUM kullanarak bir Paket Arayın

Paketin tam adını hatırlamıyorsanız, belirtilen paketin adıyla eşleşen tüm mevcut 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
  1. YUM kullanarak bir Paket Bilgileri Alın

Kurmadan önce bir paketin bilgilerini öğrenmek istediğinizi söyleyin. Bir paket hakkında bilgi almak için aşağıdaki komutu çalıştırın.

# 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.

 

  1. Kullanılabilir Paketlerin tümünü YUM kullanarak listele:

Yum veritabanındaki tüm paketleri listelemek için aşağıdaki komutu kullanın.

# yum list | less

  1. Yüklü Paketlerin tümünü YUM kullanarak listeleyin:

Bir sistemde yüklü olan tüm paketleri listelemek için aşağıdaki komutu çalıştırmanız yeterlidir; yüklü olan tüm paketleri görüntüler.

# yum list installed | less

  1. Yum Sağlayan Fonksiyonlar:

Yum , belirli bir dosyanın hangi paketin ait olduğunu bulmak için işlev sağlar. Örneğin, /etc/httpd/conf/httpd.conf dosyasının bulunduğu paketin adını öğrenmek isterseniz.

# 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

  1. Yum kullanarak Mevcut Güncellemeleri Kontrol Edin:

Sisteminizde kaç tane yüklü paketin mevcut olduğunu bulmak için aşağıdaki komutu kullanın kontrol edin.

# yum check-update

  1. Yum kullanarak güncelleme sistemi:

Sisteminizi tüm güvenlik ve ikili paket güncellemeleri ile güncel tutmak için aşağıdaki komutu çalıştırın. Sisteminize en son çıkan tüm yamaları ve güvenlik güncellemelerini yükleyecektir.

# yum update
  1. Mevcut tüm Grup Paketlerini listele:

Linux’ta, paketlerin sayısı belirli gruba dağıtılır. Yum’la bireysel paketler yüklemek yerine, gruba ait tüm ilgili paketleri kuracak belirli bir grubu kurabilirsiniz. Örneğin mevcut tüm grupları listelemek için aşağıdaki komutu verin.

# 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
  1. Grup Paketleri Yükleme:

Belirli bir paket grubunu yüklemek için seçeneği groupinstall olarak kullanın . Örneğin, ” MySQL Veritabanı ” nı yüklemek için aşağıdaki komutu çalıştırmanız yeterlidir.

# 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!
  1. Bir Grup Paketlerini Güncelleme:

Mevcut tüm kurulu grup paketlerini güncellemek için aşağıdaki komutu aşağıda gösterildiği gibi çalıştırın.

# 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. Bir Grup Paketlerini Kaldırın:

Sistemde varolan herhangi bir grubu silmek veya silmek için aşağıdaki komutu kullanın.

# 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!

  1. Etkin Yum Depolarını Listele:

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. a) Tüm devre dışı ve Engelli Yum Depolarını listele:

Aşağıdaki komut, sistemdeki tüm etkin ve devre dışı bırakılmış yum havuzları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

  1. Belirli Depodan Bir Paket Kurun:

Belirli bir paketin belirli bir etkinleştirilmiş veya devre dışı bırakılmış depodan yüklenmesi için, yum komutunuzda -enablerepo seçeneğini kullanmanız gerekir. Örneğin PhpMyAdmin 3.5.2 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. Etkileşimli Yum Kabuk:

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 Temizle

Varsayılan olarak yum, tüm önbellek dosyalarını etkin depodan temizlemek için tüm alt havuzda etkinleştirilmiş paket verilerini / var / cache / yum / alt dizininde tutar; tüm önbelleği temizlemek için düzenli olarak aşağıdaki komutu çalıştırmanız gerekir. Aşağıdaki komutun çıktısını vermek istemiyoruz çünkü önbelleğe alınmış verileri olduğu gibi saklamayı severiz.

# yum clean all

20. Yum’un Tarihini Görüntüle:

Yum komutunun tüm geçmiş işlemlerini görüntülemek için aşağıdaki komutu kullanın.

# 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

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir