Linux Paket Yöneticileri APT, DNF, YUM, APK, Pacman
Linux ve BSD türevlerinde kullanılan paket yöneticileri, yazılımların düzgün bir şekilde kurulmasını, güncellenmesini ve sistemden tamamen kaldırılmasını sağlayan temel bileşenlerdir. Her dağıtım kendi paket formatına sahiptir ve bu formatlar, yazılımın verilerini, meta bilgilerini ve kurulum sürecinde uygulanacak adımları bir arada sunar.
Paket Deposu Bilgilerini Yenileyelim
Paket yöneticileri işlemleri mevcut listeye göre yapar. Bu yüzden depolardaki en son sürümlerin alınması ilk adımdır. Depo verileri güncellenmediğinde sistem eski sürümlere göre işlem yapabilir ve bazı paketler bulunamaz.
Bu komutlar yalnızca paket listesini günceller ve sistemde yüklü yazılımlara herhangi bir işlem yapmaz.
apt update
dnf check-update
yum check-update
pkg update
apk update
pacman -Sy
zypper refresh
emerge --sync🛈 İpucu
pacman -Sy komutu yalnızca depo listesini tazeler ve kapsamlı bir sistem güncellemesi sağlamaz. Arch Linux’ta tam güncellemenin yapılmaması durumunda sistemde tutarsızlık oluşabilir ve paketlerin bozulma riski vardır. Gentoo tarafında ise emerge –sync, Portage veritabanını yeniden oluşturur ve paketlerin derleme kurallarını günceller.
Sistemdeki Paketleri Güncelleme
Çekirdek ve ilişkili paketler belirli aralıklarla yeni sürümlerle güncellenir. Paket yöneticileri bu sürümleri algılar ve sistemi otomatik olarak günceller.
apt upgrade
dnf upgrade
yum update
pkg upgrade
apk upgrade
pacman -Syu
zypper update
emerge --update @world🛈 İpucu
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.
Depoda Paket Arama
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ı>🛈 İpucu
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.
Kaynak tabanlı sistemlerde paket açıklamaları genellikle daha ayrıntılıdır.
Depodan Paket Yükleme
Depodan yapılan kurulum, bağımlılıkların otomatik olarak çözülmesi sayesinde en güvenilir yöntemlerden biridir. Dağıtımlar bu süreci farklı araçlarla yönetir ancak temel çalışma prensibi aynıdır. Paketle birlikte ihtiyaç duyulan tüm bileşenler kendiliğinden yüklenir. Depo imza doğrulaması etkinse paketlerin bütünlüğü de kurulum sırasında kontrol edilir.
Debian / Ubuntu
sudo apt install paket_adiRocky / Fedora / RHEL
sudo dnf install paket_adiCentOS 7
sudo yum install paket_adiFreeBSD
sudo pkg install paket_adiArch Linux
sudo pacman -S paket_adiAlpine Linux
sudo apk add paket_adiopenSUSE
sudo zypper install paket_adiGentoo
sudo emerge paket_adi🛈 İpucu
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.
Yerel Kaynaktan Paket Yükleme
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.
