yum komutu: kullanımı ve seçenekleri, yum-utils ve depoları kontrol etme

Test ortamıRHEL ailesiAlmaLinux 9.8root hesabı
Paket komutlarıyumyum-utilsrpmKonum/usr/bin/yum

yum komutu, RHEL tabanlı Linux'ta paketleri kuran, güncelleyen ve kaldıran paket yönetim komutudur. Bir AlmaLinux 9 sunucusunda sorgulama ve güncelleme kontrol komutlarını ve yum-utils araçlarını gerçekten çalıştırdığımızda yum, dnf ile aynı program olarak çalıştı ve çıktısı da dnf ile aynıydı.

Aşağıdaki çıktıdaki depo listesi, paket sürüm (release) numaraları ve kurulum saatleri örnek değerlerdir.

1️⃣ yum komutunun temel kullanımı: yum ve dnf

AlmaLinux 9'da yum yazınca dnf çalışır. Bunun nedeni /usr/bin/yum dosyasının dnf-3'e giden bir bağlantı olmasıdır.

ls -l /usr/bin/yum /usr/bin/dnf
lrwxrwxrwx 1 root root 5 Oct  5 10:12 /usr/bin/dnf -> dnf-3
lrwxrwxrwx 1 root root 5 Oct  5 10:12 /usr/bin/yum -> dnf-3

İki dosya da dnf-3'e giden bağlantılardı. Bu yüzden yum --version çalıştırıldığında da dnf sürümü görünür.

yum --version
4.14.0
  Installed: dnf-0:4.14.0-21.el9_8.alma.1.noarch at Mon Oct  5 10:12:30 2026
  Built    : AlmaLinux Packaging Team <packager@almalinux.org> at Fri May  1 09:30:00 2026

  Installed: rpm-0:4.16.1.3-23.el9.x86_64 at Mon Oct  5 10:12:08 2026
  Built    : AlmaLinux Packaging Team <packager@almalinux.org> at Thu Mar 12 08:15:20 2026

İlk satırdaki 4.14.0 dnf sürümüdür, altında dnf ve rpm paketlerinin kurulduğu saatler gelir. rpm sürümünün de görünmesinin nedeni, yum'un depodan aldığı paketleri sonunda rpm ile kurmasıdır.

Komutun temel biçimi sırasıyla yum, seçenekler, komut ve paket adıdır. --help çıktısının ilk satırı bu biçimdir, altında komut listesi gelir.

yum --help | head -n 12
usage: yum [options] COMMAND

List of Main Commands:

alias                     List or create command aliases
autoremove                remove all unneeded packages that were originally installed as dependencies
check                     check for problems in the packagedb
check-update              check for available package upgrades
clean                     remove cached data
deplist                   [deprecated, use repoquery --deplist] List package's dependencies and what packages provide them
distro-sync               synchronize installed packages to the latest available versions
downgrade                 Downgrade a package

Sık kullanılan komutlar tabloda toplandı.

KomutGörev
list installedKurulu paketlerin listesi (paket adı eklenirse yalnızca o paket)
list updatesDepoda daha yeni sürümü olan paketlerin listesi
check-updateGüncelleme olup olmadığını kontrol etme (varsa çıkış kodu 100)
infoBir paketin sürümü, boyutu, deposu ve açıklaması
searchAd ve özette paket arama
installPaket kurma (bağımlılıklar dahil)
removePaket kaldırma (erase ile aynı)
updateKurulu paketleri yeni sürüme yükseltme (upgrade ile aynı)
autoremoveBağımlılık olarak kurulmuş ve artık gerekmeyen paketleri kaldırma
makecacheDepo meta verilerini önceden indirip önbellek oluşturma
clean allİndirilmiş önbelleğin tamamını silme
repolistEtkin depoların listesi
deplistBağımlılıklar ve bunları sağlayan paketler (repoquery --deplist önerilir)
historyKurma ve kaldırma işlemlerinin (transaction) geçmişi

2️⃣ yum komutu seçenekleri: -y, -C, exclude, enablerepo

Seçenekler yum ile komutun arasına yazılır. -y sorulara evet yanıtı verdiği için betiklerde kullanılır; canlı bir sunucuda update'i elle çalıştırırken -y kullanmadan işlem tablosunu okuyup kendiniz yanıt vermeniz daha doğrudur.

SeçenekKopyalaAçıklama
-C, --cacheonlyDepolara bağlanmadan yalnızca indirilmiş önbelleği kullanır.
-q, --quietMeta veri satırı gibi bildirimleri gizler ve yalnızca sonucu yazdırır.
--showduplicatesAynı paketin kurulu sürümünü ve depodaki sürümlerini birlikte yazdırır.
--exclude=PKG, -x PKGO paketi bu komuttan çıkarır (kernel* gibi desenler kullanılabilir).
--enablerepo=REPODevre dışı bir depoyu yalnızca bu komut için etkinleştirir.
--versionyum (dnf) ve rpm sürümlerini yazdırır.
-h, --helpYardımı yazdırır.
SeçenekKopyalaAçıklama
-y, --assumeyesTüm sorulara evet yanıtı verir.
-v, --verboseYapılan işi ayrıntılı yazdırır.
--disablerepo=REPOEtkin bir depoyu yalnızca bu komut için devre dışı bırakır.
--skip-brokenBağımlılığı bozuk paketleri atlayıp kalanlarla devam eder.

-C, depolara bağlanmadan yalnızca indirilmiş önbellekle sonucu yazdırır. İlk satırda önbelleğin son yenilendiği zaman kalır, sonuç ikinci satırdan başlar.

yum -C list tree
Last metadata expiration check: 0:35:03 ago on Thu Oct 29 05:32:35 2026.
Installed Packages
tree.x86_64                         1.8.0-12.el9                         @baseos

-q eklenince ilk satır kaybolur ve yalnızca sonuç görünür.

yum -C -q list installed tree
Installed Packages
tree.x86_64                         1.8.0-12.el9                         @baseos

--showduplicates, kurulu sürümü ve depodaki sürümleri yan yana yazdırır.

yum -C --showduplicates list libavif
Last metadata expiration check: 0:38:15 ago on Thu Oct 29 05:32:35 2026.
Installed Packages
libavif.x86_64                      0.11.1-7.el9                       @epel
Available Packages
libavif.x86_64                      1.1.1-2.el9                        epel

Installed Packages altındaki 0.11.1 ile Available Packages altındaki 1.1.1 aynı paketin iki sürümüdür. Depodaki sürüm daha yüksek olduğu için libavif güncellenecek paketler arasındadır.

--exclude o paketi bu komuttan çıkarır.

yum -C --exclude=libavif check-update libavif libdav1d
Last metadata expiration check: 0:35:10 ago on Thu Oct 29 05:32:35 2026.

libdav1d.x86_64                         1.5.4-2.el9                         epel

İki paket belirtildi ama libavif çıkarıldı ve yalnızca libdav1d kaldı. update ile kullanılırsa o paket dışında her şeyi günceller.

3️⃣ yum ile paket yönetimi ve güncelleme sırası

Seçenekleri bilseniz de neyin kurulu olduğunu ve neyin yeni çıktığını önce görmeden güncellenecek paketlere karar veremezsiniz. Bu yüzden kurulu paketleri kontrol eden komutlarla başlıyoruz.

yum -C list installed tree
Installed Packages
tree.x86_64                         1.8.0-12.el9                         @baseos

Son sütundaki @baseos, paketin kurulduğu depodur. rpm -q ile sorgulanırsa sürüm de tek satırda görünür.

rpm -q tree htop libavif
tree-1.8.0-12.el9.x86_64
package htop is not installed
libavif-0.11.1-7.el9.x86_64

Kurulu olmayan bir pakette çıktı tek satırlık not installed ile biter ve çıkış kodu 1 olur.

Depoda yeni sürümü çıkan paketler list updates ile kontrol edilir.

yum -C list updates libavif libdav1d
Last metadata expiration check: 0:35:07 ago on Thu Oct 29 05:32:35 2026.
Available Upgrades
libavif.x86_64                          1.1.1-2.el9                         epel
libdav1d.x86_64                         1.5.4-2.el9                         epel

Available Upgrades altındakiler yeni sürümü olan paketlerdir. Paket adı eklenmezse kurulu olan her şey kontrol edilir.

check-update aynı listeyi çıkış koduyla da bildirir.

yum -C check-update libavif libdav1d; echo $?
Last metadata expiration check: 0:35:08 ago on Thu Oct 29 05:32:35 2026.

libavif.x86_64                          1.1.1-2.el9                         epel
libdav1d.x86_64                         1.5.4-2.el9                         epel
100

Son satırdaki 100 çıkış kodudur. Güncelleme varsa 100, yoksa 0 olduğundan betikler bu değere göre karar verir.

Güncelleme makecache, update, autoremove sırasıyla yapılır.

yum makecache

makecache depo meta verilerini önceden indirir. update bunları kendisi indirdiği için bu adımı atlayabilirsiniz.

yum update

update, kurulu tüm paketleri yeni sürümlerine yükseltir ve bağımlılıkları da birlikte işler.

yum update libavif

Paket adı eklenirse yalnızca o paket yükseltilir.

yum autoremove

autoremove, bağımlılık olarak birlikte kurulmuş ve artık gerekmeyen paketleri siler. update'ten sonra çalıştırılır.

yum update --exclude='kernel*'

Çekirdeği hariç tutarak güncellemek için --exclude'a bir kernel deseni eklenir. Çekirdek güncellendikten sonra yeni çekirdekle çalışmak için yeniden başlatmak gerekir; yeniden başlatmanın gerekip gerekmediği yum-utils içindeki needs-restarting ile kontrol edilir.

4️⃣ yum-utils araçları: yumdownloader, repoquery, needs-restarting

AlmaLinux 9'da yum-utils, dnf-plugins-core tarafından sağlanan bir uyumluluk katmanıdır. Komut adları eski YUM dönemindekiyle aynıdır, ama çalışan şey dnf eklentileridir.

yum -C info yum-utils
Last metadata expiration check: 0:38:12 ago on Thu Oct 29 05:32:35 2026.
Installed Packages
Name         : yum-utils
Version      : 4.3.0
Release      : 14.el9
Architecture : noarch
Size         : 23 k
Source       : dnf-plugins-core-4.3.0-14.el9.src.rpm
Repository   : @System
From repo    : baseos
Summary      : Yum-utils CLI compatibility layer
URL          : https://github.com/rpm-software-management/dnf-plugins-core
License      : GPLv2+
Description  : As a Yum-utils CLI compatibility layer, supplies in CLI shims for
             : debuginfo-install, repograph, package-cleanup, repoclosure, repomanage,
             : repoquery, reposync, repotrack, repodiff, builddep, config-manager, debug,
             : download and yum-groups-manager that use new implementations using DNF.

Source dnf-plugins-core, Summary ise Yum-utils CLI compatibility layer'dır. Kurulu değilse [yum install yum-utils] ile kurulur.

Bu paketin kurduğu 17 komut rpm -ql ile görünür.

rpm -ql yum-utils | grep bin/
/usr/bin/debuginfo-install
/usr/bin/find-repos-of-install
/usr/bin/needs-restarting
/usr/bin/package-cleanup
/usr/bin/repo-graph
/usr/bin/repoclosure
/usr/bin/repodiff
/usr/bin/repomanage
/usr/bin/repoquery
/usr/bin/reposync
/usr/bin/repotrack
/usr/bin/yum-builddep
/usr/bin/yum-config-manager
/usr/bin/yum-debug-dump
/usr/bin/yum-debug-restore
/usr/bin/yum-groups-manager
/usr/bin/yumdownloader
ls -l /usr/bin/yumdownloader /usr/bin/repoquery /usr/bin/needs-restarting /usr/bin/yum-config-manager
lrwxrwxrwx 1 root root 22 Mar  3  2026 /usr/bin/needs-restarting -> /usr/libexec/dnf-utils
lrwxrwxrwx 1 root root 22 Mar  3  2026 /usr/bin/repoquery -> /usr/libexec/dnf-utils
lrwxrwxrwx 1 root root 22 Mar  3  2026 /usr/bin/yum-config-manager -> /usr/libexec/dnf-utils
lrwxrwxrwx 1 root root 22 Mar  3  2026 /usr/bin/yumdownloader -> /usr/libexec/dnf-utils

Hepsi tek bir dosyaya, /usr/libexec/dnf-utils'e giden bağlantılardı. Sık kullanılan araçlar ve görevleri bir ağaçta toplandı.

yum-utilsTek paket — 17 komutun hepsi /usr/libexec/dnf-utils'e giden bağlantı
yumdownloaderPaket dosyası (.rpm) indirme · --urls yalnızca adresleri yazdırır
repoqueryPaketin dosya listesini, bağımlılıklarını ve ters bağımlılıklarını sorgulama
needs-restartingGüncellemeden sonra yeniden başlatma gerekip gerekmediğini kontrol etme
package-cleanupYinelenen, sahipsiz ve sorunlu paketleri bulma
yum-builddepKaynak RPM derlemek için gereken paketleri kurma
yum-config-managerDepoları etkinleştirme, devre dışı bırakma ve ekleme (yapılandırma dosyalarını değiştirir)
repoclosure · repodiff · repomanage · repo-graphDepoları denetleme, karşılaştırma, temizleme ve grafiğini çıkarma
reposync · repotrackDepoları ve paket gruplarını indirme
debuginfo-install · find-repos-of-install · yum-debug-dump · yum-debug-restore · yum-groups-managerHata ayıklama bilgisi · kaynak depo · yapılandırma dökümü ve geri yükleme · grup yönetimi

yumdownloader paket dosyalarını kurmadan yalnızca indirir. --urls eklenirse yalnızca indireceği adresleri yazdırır.

yumdownloader --urls tree
Last metadata expiration check: 0:35:16 ago on Thu Oct 29 05:32:35 2026.
https://repo.almalinux.org/almalinux/9.8/BaseOS/x86_64/os/Packages/tree-1.8.0-12.el9.x86_64.rpm

Depo adresi ve dosya adı tek satırda görünür. İnternet erişimi olmayan bir sunucuya taşıyıp kuracağınız dosyaları bu adresle önceden indirebilirsiniz.

repoquery, bir paketin kurduğu dosyaları ve bağımlılıklarını sorgular.

repoquery -l tree
Last metadata expiration check: 0:35:17 ago on Thu Oct 29 05:32:35 2026.
/usr/bin/tree
/usr/lib/.build-id
/usr/lib/.build-id/e0
/usr/lib/.build-id/e0/e2ec3d46003583b56979e08d437395bd0d2a07
/usr/share/doc/tree
/usr/share/doc/tree/README
/usr/share/licenses/tree
/usr/share/licenses/tree/LICENSE
/usr/share/man/man1/tree.1.gz

-l o paketin dosya listesidir. İçinde bir çalıştırılabilir dosya ile belgeler, lisans ve kılavuz bulunur.

repoquery --requires tree
Last metadata expiration check: 0:35:19 ago on Thu Oct 29 05:32:35 2026.
libc.so.6(GLIBC_2.34)(64bit)
rtld(GNU_HASH)

--requires gereken kütüphaneleri gösterir. yum deplist aynı bilgiyi bunları sağlayan paketlerle birlikte yazdırır, ama yardımda deprecated olarak işaretli olduğundan yerine repoquery --deplist kullanılır.

yum -C repoquery --deplist tree
Last metadata expiration check: 0:38:17 ago on Thu Oct 29 05:32:35 2026.
package: tree-1.8.0-12.el9.x86_64
  dependency: libc.so.6(GLIBC_2.34)(64bit)
   provider: glibc-2.34-170.el9_8.x86_64
  dependency: rtld(GNU_HASH)
   provider: glibc-2.34-170.el9_8.i686
   provider: glibc-2.34-170.el9_8.x86_64

dependency satırları gerekenleri, provider satırları ise bunları sağlayan paketleri gösterir.

Güncellemeden sonra yeniden başlatma gerekip gerekmediği needs-restarting -r ile kontrol edilir.

needs-restarting -r
No core libraries or services have been updated since boot-up.
Reboot should not be necessary.

Çekirdek veya temel bir kütüphane güncellendikten sonra bildirim, yeniden başlatma gerektiğini söyleyecek şekilde değişir ve çıkış kodu 1 ile biter.

package-cleanup seçeneksiz çalıştırılırsa yalnızca hangi denetimin yapılacağını seçmenizi isteyen bir bildirim yazdırır.

package-cleanup
package-cleanup has to be executed with one of the options: --dupes, --leaves, --orphans, --problems or --cleandupes

5️⃣ yum depolarını kontrol etme: repolist ve enablerepo seçeneği

Araçlar hazır olsa da paket hiçbir depoda yoksa yum hiçbir şey bulamaz. Bu yüzden önce hangi yum depolarının etkin olduğuna bakılır.

yum repolist
repo id             repo name
appstream           AlmaLinux 9 - AppStream
baseos              AlmaLinux 9 - BaseOS
epel                Extra Packages for Enterprise Linux 9 - x86_64
epel-cisco-openh264 Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64
extras              AlmaLinux 9 - Extras

repolist yalnızca yapılandırma dosyasında enabled=1 olan depoları yazdırır. baseos ve appstream dağıtımın temel depolarıdır, epel ise ayrıca eklenmiş bir depodur.

yum repolist --all | head -n 12
repo id                       repo name                                 status
appstream                     AlmaLinux 9 - AppStream                   enabled
appstream-debuginfo           AlmaLinux 9 - AppStream - Debug           disabled
appstream-source              AlmaLinux 9 - AppStream - Source          disabled
baseos                        AlmaLinux 9 - BaseOS                      enabled
baseos-debuginfo              AlmaLinux 9 - BaseOS - Debug              disabled
baseos-source                 AlmaLinux 9 - BaseOS - Source             disabled
crb                           AlmaLinux 9 - CRB                         disabled
crb-debuginfo                 AlmaLinux 9 - CRB - Debug                 disabled
crb-source                    AlmaLinux 9 - CRB - Source                disabled
epel                          Extra Packages for Enterprise Linux 9 - x enabled
epel-cisco-openh264           Extra Packages for Enterprise Linux 9 ope enabled

--all devre dışı depoları da status sütunuyla birlikte yazdırır. crb gibi disabled durumdaki bir deponun paketleri olduğu gibi kurulamaz.

Devre dışı bir depoyu yalnızca bu komut için etkinleştirmek için --enablerepo eklenir.

yum --enablerepo=crb repolist
repo id             repo name
appstream           AlmaLinux 9 - AppStream
baseos              AlmaLinux 9 - BaseOS
crb                 AlmaLinux 9 - CRB
epel                Extra Packages for Enterprise Linux 9 - x86_64
epel-cisco-openh264 Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64
extras              AlmaLinux 9 - Extras

crb artık listede. Yapılandırma dosyası aynı kaldığından sonraki komutta yeniden listeden çıkar. Bir depoyu sürekli etkin tutmak için yapılandırma dosyası yum-config-manager ile değiştirilir. Depoların etkinleşip devre dışı kalmasını aşağıdaki diyagramda komut düğmelerine basarak görebilirsiniz.

🧭 yum'un paket aradığı depolar
Açıklama diyagramı
🔍 Komut
$ yum repolist--enablerepo=crb repolist--disablerepo=epel repolist
baseosAçıkYalnızca bu sefer açıkYalnızca bu sefer kapalı
appstreamAçıkYalnızca bu sefer açıkYalnızca bu sefer kapalı
extrasAçıkYalnızca bu sefer açıkYalnızca bu sefer kapalı
epelAçıkYalnızca bu sefer açıkYalnızca bu sefer kapalı
crbKapalıYalnızca bu sefer açıkYalnızca bu sefer kapalı
➜
yumPaketlerin arandığı depolar564
repolist yalnızca yapılandırma dosyasında enabled=1 olan depoları yazdırır. yum paketleri yalnızca bu listedeki depolarda arar. crb gibi devre dışı bir deponun paketleri görünmez.
--enablerepo=crb eklenirse crb yalnızca bu tek komutta etkinleşir ve listeye girer. Yapılandırma dosyası değişmediğinden sonraki komutta yeniden listeden çıkar.
--disablerepo=epel eklenirse epel yalnızca bu tek komutta listeden çıkar. Bir depoyu sürekli etkin ya da devre dışı tutmak için yapılandırma dosyasını değiştiren yum-config-manager kullanılır.

EPEL gibi yeni bir depo eklemek, tek bir depo paketi kurmakla biter.

yum install epel-release

Kurulunca /etc/yum.repos.d/ altında epel.repo dosyası oluşur ve repolist'te epel görünür.

🔲 yum komutu simülatörü

Aşağıdaki simülatörde yum list, check-update, repolist ve yum-utils komutlarını kendiniz yazıp çıktıyı görebilirsiniz. Depo listesi yazıdaki örnek değerlerle aynıdır; kurma, kaldırma ve güncelleme komutları yalnızca bir bildirim gösterir.

yum komutu simülatörüyum 4.14.0
[root@server work]#
Klavyedeki ↑↓ tuşlarıyla daha önce yazdığınız komutları geri çağırabilirsiniz.

🔢 SSS & önerilen içerikler

Yok. yum delete yazınca No such command: delete hatasıyla biter. Paket kaldırmak için yum remove kullanılır, erase de aynı işi yapar.

Aynı komuttur. dnf'te update, upgrade'in başka bir adıdır; bu yüzden yum help update çalıştırıldığında da usage: yum upgrade ile başlayan yardım görünür.

-C eklenirse list ve info, depolara bağlanmadan indirilmiş önbellekle çalışır. Paket kurmak için başka bir sunucuda yumdownloader ile indirilen .rpm dosyası taşınır ve dosya yolu install'a verilir.

ℹ️ Satış ortaklığı bildirimi
Bu sitenin içeriklerinde satış ortaklığı bağlantıları bulunur. Bir ziyaretçi bu bağlantılar üzerinden ürün veya hizmet satın alırsa bu site satıcıdan komisyon alır. Bu süreçte alıcının ödediği tutar (kampanya indirimlerinde tutar düşer↓) artmaz. Yayımlanan fiyat, indirim ve stok bilgileri yazının yazıldığı zamana aittir ve gerçek durumdan farklı olabilir; bu yüzden satın almadan önce son bilgiyi satıcıdan kontrol etmenizi rica ederiz. Ürünler kendi ölçütlerimize göre seçilir ve değerlendirilir; komisyon alınıp alınmaması tanıtım sırasını veya değerlendirme içeriğini etkilemez.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

İnsan olduğunuzu kanıtlayın: 9   +   7   =