Linux’ta Paket Yöneticisi Nedir, Neler Yapabilir?

Linux’ta paket yöneticisi nedir?

Paket yöneticisi, bir Linux sistemindeki yazılım paketlerini kolayca aramanıza, yüklemenize, güncellemenize ve kaldırmanıza olanak tanıyan bir komut satırı veya grafik aracıdır. Yazılım paketi, basit dağıtım ve kurulum için bir araya getirilmiş farklı dosyalardan oluşan bir koleksiyondur.

Herhangi bir yazılım paketini kurarken, paket yöneticisi otomatik olarak en son sürümünü getirir, indirir, gerekli dosyaları hedef hedeflere yerleştirir ve paket ek bağımlılıklar gerektiriyorsa paket yöneticisi bunu da kendisi yönetir.

Grafik paket yöneticileri, genellikle yazılım paketlerini yönetmek için arka uçta bir komut satırı aracı kullanan ön uç uygulamalardır. Grafik paket yöneticileri, komut satırını zahmetli bulan kullanıcılar için yapılmıştır. Örnekler olarak Synaptic (APT kullanır) ve Warehouse (Flatpak kullanır) verilebilir.

Bir paket yöneticisi neler yapabilir?

Çoğu paket yöneticisi yalnızca depolardaki paketlerin temel yönetimini üstlenirken, bazı gelişmiş olanlar çok daha fazlasını yapabilecek şekilde geniş yeteneklidir. Modern bir paket yöneticisinin yapabileceği ortak ve gelişmiş görevlere bir göz atalım:

Kurulum: Belirtilen paket yerel önbellekte mevcutsa direk oradan kullanır; aksi takdirde istenilen paket depolardan getirilerek sisteminize kurar.
Arama: Belirlenen paketi sisteminizdeki paket veritabanında arar.
Güncelleme: Bir paket yöneticisi paket veritabanı, paketlerin kendisi ve tüm sistem paketlerinin aynı anda güncellenmesinden oluşan üç tür güncellemeyi yönetir. Bu güncellemelerin her birinin ihtiyaca göre kullanılabilecek farklı bir komutu vardır.
Kaldırma: Tek veya birden fazla paketi, bağımlılığı veya kitaplığı, paket yöneticisinin kaldırma komutunda belirterek kolayca kaldırabilir.
Bilgi: Kurulumdan önce (adı, boyutu, yayın tarihi, gerekli bağımlılıklar vb. gibi) paketle ilgili ayrıntıları önbellekten veya paket veritabanından kontrol edebilir.
Listeleme: Paket yöneticisi kurulum sırasında paketlerin kaydını tutar ve sisteminizde kurulu tüm paketlerin listesini yazdırmanıza olanak tanır.
Sürüm düşürme: Bu özellik yalnızca DNF gibi belirli paket yöneticilerinde bulunur ve hatalar, güvenlik endişeleri, eksik özellikler ve daha fazlası durumunda hızlı bir şekilde paketin önceki sürümüne dönmenize olanak tanır.
Depo ekleme: Ubuntu gibi popüler Linux dağıtımları, ücretsiz ve açık kaynak paketleri içeren resmi depoları içerir. Ancak kullanıcılar, kapalı kaynak uygulamalara erişmek için özel depoları etkinleştirebilirler. Ayrıca Node.js, Python ve Chrome gibi yazılımlar, dağıtımın resmi deposundaki sürümler genellikle güncel olmadığından, en son sürümlerin basitçe kurulumu için kendi depolarını sağlarlar.
Depoları listeleme: Ubuntu’da, varsayılan paket yöneticisi ek bir depo listesi seçeneği sunmaz, ancak etkin depo listesini kontrol etmek için “Yazılım ve Güncellemeler” programını kullanabilirsiniz. Red Hat ve Fedora için DNF, depoları listeleme seçeneği sunar.
Depo kaldırma: Eklediğiniz depolardan herhangi biri aktif değilse/kullanılmıyorsa veya bunları geçici olarak kaldırmak istiyorsanız, paket yöneticinizle özel talimatları izleyerek bunu yapabilirsiniz.

Bunlar, modern bir paket yöneticisinin gerçekleştirebileceği en yaygın görevlerden bazılarıdır. Elbette paket yöneticisine bağlı olarak seçenekler listesi değişebilir. Bu nedenle paket yöneticisinin kılavuzu veya yardım sayfası kontrol edilebilir.

Çeşitli Linux Dağıtımları İçin Paket Yöneticileri

Linux’ta çok çeşitli dağıtımlar vardır.

İlişkili: Dağıtım Nedir? Neden “Dağıtım” Diyoruz?

Dağıtımların her biri, onları temel alan diğer Linux dağıtımlarıyla farklı veya ilişkili paket yöneticileri kullanır. Aşağıda yaygın paket yöneticilerinin ve bunları kullanan Linux dağıtımlarının bir listesi bulunmaktadır.

Paket YöneticisiLinux Dağıtımı
APTUbuntu, Debian, Kali Linux, Linux Mint, Zorin OS, Pop!_OS, Elementary OS, KDE Neon, Linux Lite, Deepin, Peppermint OS, MX Linux, Bodhi Linux, Devuan, Parrot OS, Raspberry Pi OS vb.
YUMCentOS, Fedora, RHEL, AlmaLinux, Rocky Linux, Oracle Linux, ClearOS, Yellow Dog Linux, OpenMandriva, ROSA Linux, ALT Linux, Vine Linux vb.
DNFRed Hat, Fedora, CentOS Stream, Rocky Linux, openSUSE, AlmaLinux, Oracle Linux, ClearOS, EuroLinux, Qubes OS, PCLinuxOS, NethServer, Springdale Linux, Ultramarine Linux, RisiOS, Chapeau, Fux Linux vb.
Pacman Arch Linux, Manjaro Linux, EndeavourOS, Garuda Linux, Chakra Linux, ArchBang, Artix Linux, RebornOS, BlackArch Linux, Bluestar Linux, Salient OS vb.
YayYukarıdakilerle aynı.
ZypperopenSUSE Leap, openSUSE Tumbleweed, LEAP Micro, GeckoLinux ve birkaç tane daha.
EmergeGentoo Linux, Chromium OS, Calculate Linux, Pentoo ve birkaç tane daha.
Nix-envNixOS
APKAlpine ve postmarketOS.
XBPS-*Void Linux, VX-Linux, gabeeOSLinux, AgarimOS ve birkaç tane daha.
swupdClear Linux

Linux Dağıtımları İçin Ek Paket Yöneticileri

Üçüncü taraflarca yönetilen birkaç paket yöneticisi daha vardır. Farklı Linux dağıtımlarında ve belirli senaryolarda macOS veya Windows gibi farklı platformlarda kullanılabilirler. Aşağıda kullanıcı deneyimlerini geliştirmek için kullanılabilecek ek paket yöneticilerinin bir listesi bulunmaktadır.

Paket YöneticisiDesteklenen Linux Dağıtımı
SnapBütün Linux dağıtımları
FlatpakBütün Linux dağıtımları
Cargo (Rust paket yöneticisi)Linux, Windows ve macOS
NPM, NPX (Node.js paket yöneticisi)Linux, Windows ve macOS
HomebrewBütün Linux dağıtımları
Pip, Pipx, uv (Python paket yöneticisi)Linux, Windows ve macOS

Bitirirken…

Bu yazıda bahsi geçen tüm paket yöneticileri oldukça popüler ve yaygındır, ancak paketlerin farklı şekilde de kurulabileceğini unutmayın. Örneğin, bazı geliştiriciler sizden paket kurulumları için wget veya curl komutunu kullanarak bir betik çalıştırmanızı ister. Bu, kaynağınaa güvenmediğiniz sürece önerilmez.

Bunun yanı sıra AppImage, kullanıcıların favori uygulamalarını taşınabilir bir formatta kullanmalarına olanak tanıyan popüler bir paket teknolojisidir. Unutulmamalıdır ki, paketleri kullanmanın daha birçok yolu vardır ve burada değinilmemiş/unutulmuş olabilir.

Bir yanıt yazın

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