Yum Komutları ve Kullanımı
Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MYH2nBcj' (Errcode: 28 - No space left on device) in /usr/share/nginx/html/syslogs/wp-includes/class-wpdb.php on line 2349
yum basit söz dizimi nedeniyle en kullanışlı paket yöneticilerinden birisi. Bu yüzden bu yazıda, yum'ın temel ve sık kullanılan şekillerine değinmek istiyorum.
Paket Listeleme İşlemleri
Sisteme tanıtılmış yum depoları içerisindeki paketlerin listelenmesi için “yum list” komutu aşağıdaki şekillerde kullanılabilmektedir.
# yum list [available|installed|extras|updates|obsoletes|recent]
Depolardaki tüm paketleri listelemek için aşağıdaki şekilde kısaca list denilebilir. Bu şekilde kurulu olan ya da kurulabilecek olan tüm paketler listelenecektir:
# yum list
Sadece kurulu paketlerin listelenmesi için installed parametresi kullanılabilir:
# yum list installed
Kurulabilecek paketlerin listelenmesi için ise available parametresi bulunmaktadır:
# yum list available
Update'i bulunan paketlerin listelenmesi için ise updates komutu verebilirsiniz:
# yum list updates
Sistemde kurulu olan ancak sistemdeki yum depolarında bulunmayan paketlerin listelenmesi için extras parametresi bulunur. Bu şekilde yum deposu üzerinden kurulmamış paketler tespit edilebilir:
# yum list extras
Artık kullanılmayan (obsolete) paketlerin listelenmeis için yum list aşağıdaki şekilde kullanılabilir:
# yum list obsoletes
Paket depolarına son 7 gün içerisinde eklenmiş paketlerin listelenmesi için list parametresine recent ifadesi eklenir:
# yum list recent
Paket Kurma
Yum üzerinden paket kurma işlemi için yum install paket_adi komutu yeterlidir. Örnek olarak sysstat paketini kurmak için şu komut kullanılabilir:
# yum install sysstat
Sisteme bu komutu verdğiniz zaman yum, apache (httpd) paketinin kurulabilmesi için gerekli olan bağımlılık paketlerini de kurmak üzere hazırlayacak ve aşağıda görülen kurulacak paketleri listeleyen çıktıyı verip onaylamanızı isteyecektir:
Dependencies Resolved ======================================================================================================================================================================== Package Arch Version Repository Size ======================================================================================================================================================================== Installing: sysstat x86_64 9.0.4-20.el6 base 225 k Installing for dependencies: cronie x86_64 1.4.4-7.el6 base 70 k cronie-anacron x86_64 1.4.4-7.el6 base 29 k crontabs noarch 1.10-33.el6 base 10 k cyrus-sasl x86_64 2.1.23-13.el6 base 78 k hesiod x86_64 3.1.0-19.el6 base 20 k procmail x86_64 3.22-25.1.el6 base 163 k sendmail x86_64 8.14.4-8.el6 base 717 k Transaction Summary ======================================================================================================================================================================== Install 8 Package(s) Total download size: 1.3 M Installed size: 3.0 M Is this ok [y/N]:
y diyerek onay verdiğiniz de paketler kurulacaktır:
Downloading Packages: Setting up and reading Presto delta metadata Processing delta metadata Package(s) data still to download: 1.3 M (1/8): cronie-1.4.4-7.el6.x86_64.rpm | 70 kB 00:00 (2/8): cronie-anacron-1.4.4-7.el6.x86_64.rpm | 29 kB 00:00 (3/8): crontabs-1.10-33.el6.noarch.rpm | 10 kB 00:00 (4/8): cyrus-sasl-2.1.23-13.el6.x86_64.rpm | 78 kB 00:00 (5/8): hesiod-3.1.0-19.el6.x86_64.rpm | 20 kB 00:00 (6/8): procmail-3.22-25.1.el6.x86_64.rpm | 163 kB 00:00 (7/8): sendmail-8.14.4-8.el6.x86_64.rpm | 717 kB 00:00 (8/8): sysstat-9.0.4-20.el6.x86_64.rpm | 225 kB 00:00 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Total 458 kB/s | 1.3 MB 00:02 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : cyrus-sasl-2.1.23-13.el6.x86_64 1/8 Installing : procmail-3.22-25.1.el6.x86_64 2/8 Installing : hesiod-3.1.0-19.el6.x86_64 3/8 Installing : sendmail-8.14.4-8.el6.x86_64 4/8 Installing : cronie-anacron-1.4.4-7.el6.x86_64 5/8 Installing : cronie-1.4.4-7.el6.x86_64 6/8 Installing : crontabs-1.10-33.el6.noarch 7/8 Installing : sysstat-9.0.4-20.el6.x86_64 8/8 Verifying : hesiod-3.1.0-19.el6.x86_64 1/8 Verifying : procmail-3.22-25.1.el6.x86_64 2/8 Verifying : cronie-anacron-1.4.4-7.el6.x86_64 3/8 Verifying : crontabs-1.10-33.el6.noarch 4/8 Verifying : sysstat-9.0.4-20.el6.x86_64 5/8 Verifying : sendmail-8.14.4-8.el6.x86_64 6/8 Verifying : cronie-1.4.4-7.el6.x86_64 7/8 Verifying : cyrus-sasl-2.1.23-13.el6.x86_64 8/8 Installed: sysstat.x86_64 0:9.0.4-20.el6 Dependency Installed: cronie.x86_64 0:1.4.4-7.el6 cronie-anacron.x86_64 0:1.4.4-7.el6 crontabs.noarch 0:1.10-33.el6 cyrus-sasl.x86_64 0:2.1.23-13.el6 hesiod.x86_64 0:3.1.0-19.el6 procmail.x86_64 0:3.22-25.1.el6 sendmail.x86_64 0:8.14.4-8.el6 Complete!
Paket Kaldırma
Sistemde yüklü herhangi bir paketi kaldırmak için remove parametresi kullanılmakta:
Örnek olarak bir önceki örnekte kurduğumuz sysstat paketini şu şekilde kaldırıyoruz:
# yum remove sysstat
Bu komutu verdiğiniz zaman tekrar onay isteyecek ve paketi sistemden kaldıracaktır.
Paket Update
Update'i bulunan bir paketi güncellemek içi yum update paket_adi komutunu kullamıyoruz:
# yum update sysstat
Paket Arama
Yum depolarında çok fazla sayıda paket olduğundan dolayı paketler arasında arama yapmak için search parametresi bulunuyor. Örnek olarak apache ile alakalı paketlerin neler olduğunu listelemek için şu komutu kullanabilirsiniz:
# yum search apache
Sonuç olarak aşağıda görüldüğü gibi isminde ya da açıklamasında apache kelimesi geçen tüm paketler listelenecektir.
========================================================================= N/S Matched: apache ========================================================================== ant-apache-bcel.x86_64 : Optional apache bcel tasks for ant ant-apache-bsf.x86_64 : Optional apache bsf tasks for ant ant-apache-log4j.x86_64 : Optional apache log4j tasks for ant ant-apache-oro.x86_64 : Optional apache oro tasks for ant ant-apache-regexp.x86_64 : Optional apache regexp tasks for ant ant-apache-resolver.x86_64 : Optional apache resolver tasks for ant apache-jasper.noarch : Jasper OSGi Bundle apache-jasper-javadoc.noarch : Javadoc for Jasper apache-tomcat-apis.noarch : Tomcat Servlet and JSP APIs apr.i686 : Apache Portable Runtime library apr.x86_64 : Apache Portable Runtime library apr-util.i686 : Apache Portable Runtime Utility library apr-util.x86_64 : Apache Portable Runtime Utility library httpd.x86_64 : Apache HTTP Server httpd-devel.i686 : Development interfaces for the Apache HTTP server httpd-devel.x86_64 : Development interfaces for the Apache HTTP server httpd-manual.noarch : Documentation for the Apache HTTP server httpd-tools.x86_64 : Tools for use with the Apache HTTP Server mod_auth_mysql.x86_64 : Basic authentication for the Apache web server using a MySQL database mod_auth_pgsql.x86_64 : Basic authentication for the Apache HTTP Server using a PostgreSQL database mod_authz_ldap.x86_64 : LDAP authorization module for the Apache HTTP Server mod_dav_svn.x86_64 : Apache httpd module for Subversion server mod_dnssd.x86_64 : An Apache HTTPD module which adds Zeroconf support mod_nss.x86_64 : SSL/TLS module for the Apache HTTP server mod_perl.x86_64 : An embedded Perl interpreter for the Apache HTTP Server mod_revocator.i686 : CRL retrieval module for the Apache HTTP server mod_revocator.x86_64 : CRL retrieval module for the Apache HTTP server mod_ssl.x86_64 : SSL/TLS module for the Apache HTTP Server mod_wsgi.x86_64 : A WSGI interface for Python web applications in Apache php-zts.x86_64 : Thread-safe PHP interpreter for use with the Apache HTTP Server python-qmf.noarch : Python QMF library for Apache Qpid python-qpid-qmf.x86_64 : Python QMF library for Apache Qpid qpid-tests.noarch : Conformance tests for Apache Qpid qpid-tools.noarch : Management and diagnostic tools for Apache Qpid tomcat6.noarch : Apache Servlet/JSP Engine, RI for Servlet 2.5/JSP 2.1 API tomcat6-admin-webapps.noarch : The host-manager and manager web applications for Apache Tomcat tomcat6-docs-webapp.noarch : The docs web application for Apache Tomcat tomcat6-javadoc.noarch : Javadoc generated documentation for Apache Tomcat tomcat6-jsp-2.1-api.noarch : Apache Tomcat JSP API implementation classes tomcat6-log4j.noarch : Log4J support for Apache Tomcat tomcat6-servlet-2.5-api.noarch : Apache Tomcat Servlet API implementation classes tomcat6-webapps.noarch : The ROOT and examples web applications for Apache Tomcat ws-commons-util.noarch : Common utilities from the Apache Web Services Project
Paket Detayı Görüntüleme
Herhangi bir paket ile ilgili detaylı bilgi için info parametresi kullanılmaktadır.
# yum info sysstat
Çıktı olarak aşağıdaki gibi paketle ilgili tüm detayları veren ekran görüntülenecektir.
Installed Packages Name : sysstat Arch : x86_64 Version : 9.0.4 Release : 20.el6 Size : 807 k Repo : installed From repo : base Summary : The sar and iostat system monitoring commands URL : http://perso.orange.fr/sebastien.godard/ License : GPLv2+ Description : This package provides the sar and iostat commands for Linux. Sar and : iostat enable system monitoring of disk, network, and other IO : activity.
Dosyalarla ilgili Paketleri Bulmak
Başlıkta tam olarak ifade edemedim ancak sistem üzerinde bulunan bir dosyanın (ya da dizinin) sisteme hangi paket vasıtası ile kurulduğunu bulmak için provides parametresi bulunmakta. Örnek olarak /etc/ssh dizini ile alakalı olan bulmak için komut şu şekildedir:
# yum provides /etc/ssh/
Komutun çıktısı şu şekilde olacaktır:
openssh-5.3p1-81.el6.x86_64 : An open source implementation of SSH protocol versions 1 and 2 Repo : base Matched from: Filename : /etc/ssh/ openssh-5.3p1-81.el6.x86_64 : An open source implementation of SSH protocol versions 1 and 2 Repo : installed Matched from: Other : Provides-match: /etc/ssh/
Çıktıda da görüldüğü gibi ilgili dizin openssh paketi tarafından oluşturulduğu tespit edilebiliyor.
Group list/install/update/remove
Yum'un birbirleri ile alakalı paketleri grup şeklinde kurulmalarını ya da kaldırılmalarını sağlayan groups isimli bir özelliği vardır. Bu şekilde örneğin bir web server kurmak için web server için gerekli olan tüm paketleri tek tek kurmak yerine bu paketlerin gruplandığı “Web Server” grubunun tek seferde kurulmasını sağlayabilirsiniz.
Goup ile ilgili tüm komutlar şöyledir:
Sistemdeki tüm grupları listelemek:
# yum grouplist
Herhangi bir grup ile ilgili bilgi almak ve grup içerisindeki paketleri listelemek (örnek web server grubu.):
# yum groupinfo 'Web Server'
Grubu kurmak için:
# yum groupinstall 'Web Server'
Grubu kaldırmak için:
# yum groupremove 'Web Server'
ve grubu update etmek için:
# yum groupupdate 'Web Server'
Yum ile ilgili daha fazla bilgi almak ve örnekleri çoğaltmak için aşağıdaki adreslere göz atabilirsiniz.
http://yum.baseurl.org/wiki/Guides
Bu yazılar da ilginizi çekebilir:
- RHEL Sistemlerde Orphaned Paketlerin Kaldırılması
- CentOS x86_64 Sistemlerden i386 Paketlerin Kaldırılması
- Hardware Lister (lshw) ile Detaylı Donanım Bilgileri
- CentOS Üzerine MongoDB Kurulumu
- Yum’a RPMFORGE Deposunun Eklenmesi
Yorumlar
Henuz yorum yapilmamis.
Yorumda bulunun.