GNU/Linux Paket Kurmak, Silmek ve Güncellemek (apt-get, dpkg, gdebi)

GNU/Linux kurduysanız ilk bilmeniz gerekenlerden birisi bilgisayarınızı nasıl güncel tutacağınızdır. Diğeri ise bir programın nasıl yüklenip kaldırılacağıdır.


Öncelikle bilgisayarınıza linux kurduysanız ilk yapmanız gereken sistemi güncellemektir.

apt-get clean && apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y

Üst satırdaki kodun tam olarak ne işe yaradığını aşağıda öğreneceğiz ancak debian tabanlı bir linux kurduysanız yukarıdaki satırı terminale yazıp çalıştırmanız sisteminizi güncelleyecektir.


Anlatım debian tabanlı sistemler içindir ancak linux yapısı gereği diğer sistemleri anlamanızda da faydalı olacaktır.

Paket Nedir?

Paketler içlerinde, gerekli programın binary(ikili, çalıştırılabilir) halini, configurasyon dosyalarını, programın çalışması için gerekli dosyaları, dökümantasyonu barındıran bir dosya türüdür. Böylece bir paket kurulurken, kurulmak istenilen programın gerek duyduğu diğer dosyalarda sisteme kurulmuş olur.


Linux sistemler kullanıcıların bir pakete ihtiyacı olduğunda rahat bir şekilde arama yapabilmeleri için paket depolarına sahiptirler. Bu paket depolarından istenilen program aranıp bulunabilir ve bilgisayara kurulabilir.


Farklı linux dağıtımlarında bu paketler farklılık gösterebilir. Bu linux dağıtımların kendi paketlerinin yüklenebilmesi vs. için farklı komutları vardır.

---------------------
Paketler ve Komutları
---------------------
Debian : .deb | apt, apt-cache, apt-get, dpkg
Ubuntu : .deb | apt, apt-cache, apt-get, dpkg
CentOs : .rpm | yum
Fedora : .rpm | dnf
FreeBSD: .txz | make,pkg
---------------------

Debian paketlerinin .deb uzantısına sahiptirler.

Paket arama yükleme ve kaldırma işlemlerine geçmeden sudo komutunu öğrenmemizde fayda var. Çünkü bu işlemler root yetkisi gerektiriyor.


# sudo

Bu komut bir programın başka bir kullanıcı yetkileriyle çalıştırılmasını sağlar.

Kullanımı ise oldukça basit çalıştırmak istediğiniz programdan önce sudo yazarak çalıştırılır.

# sudo programadi


Şimdi sayfamızın başına yazdığımız kodumuzu inceliyelim

apt-get clean && apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y

# apt-get clean

Bu komut daha önceden yüklemek için yerel depomuza(bilgisayarımıza) indirdiğimiz ve kurduğumuz paketlerin hepsini siler. Yani kurulu paketleri temizlemez, kurulmuş paketlerin dosyalarını siler.


# apt-get update

Bilgisayarımızdaki paket listesini(/etc/apt/sources.list) günceller. Yani paket index'ini günceller.


# apt-get upgrade

Bilgisayarımıza kurulu olan paketleri /etc/apt/sources.list dosyasındaki paket listesine bakarak en güncel versiyonlarına günceller.


# apt-get dist-upgrade

Bu daha upgrade'in daha gelişmiş bir fonksiyonudur.Gerekli gördüğü paketleri silecek ve paketleri güncelliyecektir.


-y parametresi

Eğer bu parametre kullanılmaz ise güncelleştirme yapılırken bazı programlarda bizden onaylama isticektir. -y parametresi ile gelecek olan tüm onay isteklerine onay vermiş oluyoruz böylece güncelleştirmeler otomatik olarak yapılacaktır.


Her komut arasındaki && işaretlerinin kullanımını şu yazımda anlatmıştım.

Bkz: Temel Linux Komutları

Paket Aramak (apt-cache search <paketadi>)

# apt-cache search paketadi

paketadi ile belirtilen programın paket deposunda olup olmadığına bakar. Eğer belirtilen isimde bir paket varsa bunu ekrana basar.

root@kali:~# apt-cache search cmatrix

cmatrix - simulates the display from "The Matrix"
cmatrix-xfont - X11 font for cmatrix

cmatrix programını arattık ve bize bu ismi içeren iki tane paket olduğunu belirtti.

Paket Hakkında Bilgi Edinmek

# apt-cache show paketadi

Aradığımız paketin doğru paket olduğunu anlamak için paketi detaylı inceliyebiliriz.

root@kali:~# apt-cache show cmatrix

Package: cmatrix
Source: cmatrix (1.2a-5)
Version: 1.2a-5+b1
Installed-Size: 50
Maintainer: Diego Fernández Durán <diego@goedi.net>
Architecture: amd64
Depends: libc6 (>= 2.4), libncurses5 (>= 6), libtinfo5 (>= 6)
Recommends: kbd
Suggests: cmatrix-xfont
Size: 16908
SHA256: dbb6c1494302818bfb684743e813615e90b9c4d95d6202282716bd5b478c7f45
SHA1: 87936baa63b36e3cf0813858eac741d919c4cea1
MD5sum: 6a189d3c1d28ab45a749e0e2bd8ecc30
Description: simulates the display from "The Matrix"
 Screen saver for the terminal based in the movie "The Matrix". It works in
 terminals of all dimensions and have the following features:
  * Support terminal resize.
  * Screen saver mode: any key closes it.
  * Selectable color.
  * Change text scroll rate.
Description-md5: 9af1f58e4b6301a6583f036c780c6ae6
Homepage: http://www.asty.org/cmatrix/
Tag: game::toys, interface::text-mode, role::program, uitoolkit::ncurses,
 use::entertaining
Section: misc
Priority: optional
Filename: pool/main/c/cmatrix/cmatrix_1.2a-5+b1_amd64.deb

Paket Kurmak (sudo apt-get install paketadi)

# apt-get install paketadi

apt-get install komutu ile belirtilen program bilgisayarımıza kurulacaktır


# apt-get install paketadi1 paketadi2

Belirttiğimiz paketler bilgisayarımıza kurulacaktır


# apt-get install -y paketadi

Paket yüklenirken bize soracağı sorulara -y ile onay verdik

root@kali:~# apt-get install -y cmatrix

Paket Kaldırmak (sudo apt-get remove paketadi)

# apt-get remove paketadi

Belirtilen paketi bilgisayarımızdan siler.

root@kali:~# apt-get remove cmatrix

# apt-get autoremove

Bilgisayarımızın artık ihtiyacı olmayan gereksiz paketleri otomatik olarak siler.

root@kali:~# apt-get autoremove

# apt-get --purge remove paketadi

Kaldırmak istediğimiz programı configurasyon dosyaları ile beraber siler.

root@kali:~# apt-get --purge remove cmatrix

Dışarıdan İndirdiğimiz Paketi(.deb) Kurmak

İnternette dolaşıyorsunuz ve bir program buldunuz. Test etmek veya kullanmak için linux bilgisayarınıza indirdiniz ve nasıl kurulacağını bilmiyorsunuz paket deposundan kurmak istediniz ve program paket deposundada yok. Böyle durumlarda sakin olun ve şu adımları izleyin. :)


İnternet üzerinden veya başka bir yolla elinize .deb uzantılı bir program geçti, şimdi bunu bilgisayarımıza kuralım.


# dpkg -i paketadi.deb

dpkg debian paketlerini(.deb) yönetmek için yazılmış bir yazılımdır.

-i parametresi ile install yükle komutunu vermiş oluyoruz.

root@kali:~# dpkg -i paketadi.deb

gdebi programı ile paket kurmak

gdebi bilgisayarımıza dpkg gibi kurulu gelmiyecektir. Bu yüzden önce gdebi programını kuruyoruz.

# apt-get install -y gdebi

root@kali:~# apt-get install -y gdebi

# gdebi paketadi.deb

root@kali:~# gdebi paketadi.deb

Anlıyacağınız üzere dışarıdan edindiğiniz .deb uzantılı paketleri kurmanın iki kolay yolu mevcut


# dpkg -l

Bilgisayarımıza kurulu olan paketleri listeler.

root@kali:~# dpkg -l

# dpkg -s paketadi

Belirtilen paketin özelliklerini gösterir.

root@kali:~# dpkg -s cmatrix

Package: cmatrix
Status: install ok installed
Priority: optional
Section: misc
Installed-Size: 50
Maintainer: Diego Fernández Durán <diego@goedi.net>
Architecture: amd64
Source: cmatrix (1.2a-5)
Version: 1.2a-5+b1
Depends: libc6 (>= 2.4), libncurses5 (>= 6), libtinfo5 (>= 6)
Recommends: kbd
Suggests: cmatrix-xfont
Description: simulates the display from "The Matrix"
 Screen saver for the terminal based in the movie "The Matrix". It works in
 terminals of all dimensions and have the following features:
  * Support terminal resize.
  * Screen saver mode: any key closes it.
  * Selectable color.
  * Change text scroll rate.
Homepage: http://www.asty.org/cmatrix/