APT, DNF, YUM, Pacman ve Zypper ile Linux Paket Yönetimi

Linux ve BSD türevlerinde yer alan paket yönetim sistemleri, yazılımların düzenli olarak yüklenmesine, güncellenmesine ve eksiksiz kaldırılmasına imkân tanıyan temel mekanizmalardır. Her dağıtım, kendine özgü bir paket formatı kullanır ve bu paketler yazılımın içeriğini, meta verilerini ve kurulum sırasında çalışacak işlemleri barındırır.

Depodaki Paket Listesini Güncelleme

Paket yöneticileri komutları mevcut paket listesine göre uygular. Bu sebeple depodaki en yeni sürümlerin alınması ilk aşamayı oluşturur. Depo bilgilerinin güncellenmemesi durumunda sistem eski sürümlere göre işlem yapabilir ve bazı paketler eksik görünebilir.

apt update
dnf check-update
yum check-update
pkg update
apk update
pacman -Sy
zypper refresh
emerge --sync

pacman -Sy yalnızca paket listesini yenileyen bir komuttur ve sistemin tamamını güncellemez. Arch Linux’ta tam güncelleme yapılmadığında uyumsuzluklar meydana gelebilir ve bazı paketler zarar görebilir. Öte yandan Gentoo’da emerge –sync işlemi Portage veritabanını sıfırdan günceller ve paketlerin derleme yapılandırmaları güncel hâle gelir.

Paket Güncelleme İşlemleri

Zaman içinde çekirdek ve ona bağlı bileşenlerin yeni sürümleri yayınlanır. Paket yöneticileri bu güncellemeleri algılar ve sistemi otomatik şekilde yeniler.

apt upgrade
dnf upgrade
yum update
pkg upgrade
apk upgrade
pacman -Syu
zypper update
emerge --update @world

Arch Linux’ta -Syu tam bir sistem güncellemesidir ve yarım bırakılmış ya da eksik güncellemeye izin verilmez.
Gentoo’da @world işlemi tüm paketleri ve onlara bağlı bileşenleri sırayla yeniler, işlem uzun sürse de sistemin düzeni ve bütünlüğü korunur.

Paketleri Arama İşlemi

Depodaki paketlerin bulunması için arama komutları kullanılır. Bu komutlar paket adı, açıklama veya kategori bazlı sonuç döndürebilir

apt search <adı>
dnf search <adı>
yum search <adı>
pkg search <adı>
apk search <adı>
pacman -Ss <adı>
zypper search <adı>

FreeBSD’de pkg search -D kelime komutu, paket açıklamalarında arama yaparak daha kapsamlı sonuç verir.
Pacman’da -Ss kullanıldığında alt dizinler de taranır ve benzer isimli paketleri bulmak daha kolay olur.

Depodaki Paketleri Kurma

Depo üzerinden kurulum yapmak, bağımlılıkların otomatik olarak çözülmesi nedeniyle en sağlam yöntemdir. Dağıtımlar bu süreci farklı mekanizmalarla yürütse de işleyiş aynı temele dayanır. Paketle beraber gereken tüm bileşenler otomatik biçimde kurulmuş olur. Depo imza doğrulaması açıksa paketlerin bütünlük kontrolü de sağlanır.

Debian / Ubuntu

sudo apt install paket_adi

Rocky / Fedora / RHEL

sudo dnf install paket_adi

CentOS 7

sudo yum install paket_adi

FreeBSD

sudo pkg install paket_adi

Arch Linux

sudo pacman -S paket_adi

Alpine Linux

sudo apk add paket_adi

openSUSE

sudo zypper install paket_adi

Gentoo

sudo emerge paket_adi

DNF ve Zypper, paketler arasında sorun çıktığında bunu düzgün şekilde çözer. Pacman, kurulum sırasında her dosyayı SHA-256 ile kontrol eder.
Gentoo’da emerge paketleri kaynak koddan derlediği için işlem süresi paketin büyüklüğüne göre değişir.

Dosyadan Doğrudan Paket Kurulumu

Depo dışından indirilen paketler bu komutlarla kurulabilir. Bu yöntem, resmi depolarda bulunmayan özel sürümler ya da üreticinin sağladığı paketler için tercih edilir. Eğer gereken bağımlılıklar eksikse kurulum tamamlanmayabilir.

dpkg -i paket.deb
dnf install paket.rpm
yum install paket.rpm
pkg add paket.txz
apk add paket.apk
pacman -U paket.pkg.tar.zst

🛈 İpucu

APT tabanlı sistemlerde dpkg -i ile kurulum yapıldıktan sonra eksik bağımlılıkları tamamlamak için sudo apt -f install komutu çalıştırılır.
Pacman’da -U parametresi yalnızca yereldeki paket dosyasını kurar ve depo bağlantısına ihtiyaç duymaz.

Paket Kaldırma İşlemleri

Sistemdeki kurulu yazılımları kaldırmak için kullanılır. Paket yöneticileri, paketin sisteme hangi dosyaları eklediğini bildiği için silme işlemi güvenli şekilde yapılır. Bazı dağıtımlarda yapılandırma dosyaları istenirse bırakılabilir.

apt remove paket
dnf erase paket
yum remove paket
pkg delete paket
apk del paket
pacman -R paket
zypper remove paket
emerge --unmerge paket

🛈 İpucu

APT’de apt purge paket komutu çalıştırılırsa yapılandırma dosyaları da temizlenir. Pacman’da -Rs kullanıldığında paketin bağımlılıkları da birlikte kaldırılır. Zypper ise gereksiz hâle gelen bağımlılıkları kendiliğinden tespit edebilir.

Sonuç olarak Linux ve BSD dağıtımlarında kullanılan farklı paket yöneticileri temelde aynı amacı taşır. Yazılımların güvenli biçimde kurulması, güncellenmesi ve kaldırılması bu araçlarla düzenli bir şekilde yapılır. APT, DNF, Pacman, Zypper, APK ve Portage kendi komut yapılarıyla çalışsa da hepsi bağımlılıkları doğru yöneterek sistemin kararlı kalmasını sağlar. Yöntemler değişse de yazılım yönetiminin genel mantığı her dağıtımda aynıdır.

Sık Sorulan Sorular

Paket yöneticisiyle indirilen dosyaları arşivleyip saklamak mümkün mü?

Yüklenen paketleri ya da sistem yapılandırmalarını arşivlemek isteyenler tar komutunu kullanabilir. Bu yöntem özellikle yedekleme ya da taşıma işlemlerinde kullanışlıdır.

Bir paket kaldırıldığında geride kalan artık dosyalar nasıl temizlenir?

APT’de apt purge, Pacman’da pacman -Rns gibi komutlar hem paketi hem yapılandırma dosyalarını kaldırır. Zypper ise kullanılmayan bağımlılıkları otomatik algılayıp temizleme seçeneği sunar. Ayrıca paket önbelleğini temizlemek de sistemin kararlılığı açısından fayda sağlar.

Depo dışı kurulum yaptım, paket çalışmıyor?

Depo dışından indirilen paketlerde bağımlılık eksikliği yaygındır. APT için sudo apt -f install, Pacman için pacman -Syu, Gentoo için emerge --sync sonra ilgili paketi yeniden derlemek sorunu büyük ölçüde çözer. Eksik bağımlılıkla yazılımın sorunsuz çalışması beklenmemelidir.

Yorum yapın