Paket Yönetimi

Paket kurulumu hakkında birkaç soru ve cevap

Kurmak istediğim paketin istediğim sürümünün deb paketi yok ne yapmalıyım?

Belki aradığınız paketin istediğiniz sürümünü http://www.apt-get.org benzeri gayri-resmi depolardan temin edebilirsiniz. Veya kullanmakta olduğunuz sürümün bir üstündeki depoya bakıp paketiniz oralarda varsa, kaynak kodunu indirip kendi sisteminizde derleyerek deb paketini oluşturabilirsiniz.

Aradığınız paket unstable depoda yer alıyor olsun; Unstable depo için gerekli olan deb-src satırını /etc/apt/sources.list dosyanıza ekleyiniz. Daha sonra;

apt-get update
apt-get build-dep 
apt-get -b source 

Şeklinde sisteminizde yeni bir deb paketi oluşturmaya çalışıp oluşan deb paketini kurmaya çalışabilirsiniz.

Diğer yandan paketi Unstable depodan direk olarak indirip kurmayı deneyebilirsiniz.

Bu yöntemlerin hepsi, resmi olmayan ve problemlerle karşılaşma ihtimalinizin olduğu yöntemlerdir. Bu şekilde kurulan paketlerin %100 kararlı veya sorunsuz olarak çalışabileceği garanti edilemez. Ancak bu kesin sorun çıkarır anlamında da algılanmamalıdır.

[Not] Not
Şayet kaynak kodu üzerinde değişiklik yapmak istiyorsanız yukarıdaki son satırı -b parametresini dahil etmeden işletiniz. Daha sonra kaynak kodun yer aldığı dizine geçerek yapmak istediğiniz değişiklikleri yapıp fakeroot debian/rules binary veya dpkg-buildpackage -uc -us -rfakeroot komutunu işletiniz.

Bir dosyanın hangi paket içerisinden çıktığını nasıl öğrenebilirim?

Bu tür yöntemlerin hepsinde olduğu gibi bu işlem için birden fazla yöntem uygulamak mümkün.

  • dpkg ile; dpkg -S /dosyanın/bulunduğu/yol/dosya.ismi şeklinde
  • apt-file aracını kullanarak;apt-file tüm paketler hakkında içerdikleri dosyalara ilişkin kayıtları tutar
    apt-get install apt-file
    apt-file update
    apt-file search /dosyanın/bulunduğu/yol/dosya.ismi

    Bir paketin içeriğini aşağıdaki komutla listeleyebilirsiniz:

    apt-file list 
  • auto-apt aracı ile; Bu paket öntanımlı olarak apt-file auto-apt ile aynı kaynağı kullanır.
  • http://packages.debian.org adresindeki sorgu panelini kullanarak aradığınız dosyanın hangi paket içerisinde çıktığını bulabilirsiniz.

Daha detaylı bilgi için; http://www.debian.org/doc/manuals/apt-howto/ch-search.tr.html

Aynı tür yazılımlardan sadece birisinin öntanımlı olarak ayarlanabilmesi

update-alternatives komutu ile aynı kategorideki yazılımlardan birisinin varsayılan olarak seçilebilmesini sağlayabilirsiniz.

Misal olarak; update-alternatives –display x-window-manager komutu ile sisteminizdeki mevcut Pencere Yöneticilerini görebilir, dilediğiniz birisini varsayılan olarak atayabilirsiniz. Herhangi bir Pencere Yöneticisini varsayılan olarak atama yapabilmek için ise; update-alternatives –config x-window-manager komutunu kullanabilirsiniz.

Benzer şekilde sisteminizdeki tarayıcılardan birisini varsayılan olarak atayabilmek için anahtar kelime www-browser olacaktır. update-alternatives –config www-browser ile de varsayılan olarak belirlenmesini istediğiniz tarayıcınızı değiştirebileceksiniz. Masaüstü yöneticimizi değiştirebilmek için ise anahtar kelime x-display-manager olacaktır. Bu işlem için de update-alternatives –config x-display-manager komutunu işletmek gerekecek.

Varsayılan editörümüzü değiştirebilmek için; update-alternatives –config editor

Benzer şekilde örnekleri çoğaltmak mümkün olmakla birlikte tüm seçeneklerinizin, yani mevcut anahtar kelimelerinizin neler olduğuna ls -al /etc/alternatives komutu ile bakabilirsiniz.

Sistemdeki Paket Listesini Yedeklemek

Sistemdeki paket listesini kaydetmek için; var olan

dpkg --get-selections > selections.txt

Gerektiğinde başka bir makinede bu listeyi kullanarak hızlıca kurulum yapabilmek için;

dpkg --set-selections < selections.txt
apt-get deselect-upgrade

Kurulu olan paketlerin listesini ve sürümlerini nasıl görebilirim?

dpkg -l

komutu ile sisteminize kurduğunuz, kaldırdığınız tüm paketlerin listesini ve sürümlerini görebilirsiniz. Sisteminizde tamamıyle kurulu olan paketlerin listesini almak için aşağıdaki komut daha uygun olacaktır.

dpkg -l | awk ‘/^ii/ {print}’

Bu konudaki detaylar için daha sonraki soru ve cevapları takip ediniz.

Paketleri nasıl bulabilirim?

http://packages.debian.org adresinden aradığınız paketi sorgulayarak bulabilirsiniz, veya sisteminiz üzerinden de benzer sorgulamayı yapabilirsiniz. Bunun için /etc/apt/sources.list dosyanızda depo adreslerinin uygun şekilde yer alması ve ardından da paket indexinizi apt-get update ile güncellemeniz gerekir. apt-get update işlemi sonucunda /var/lib/apt/lists/ dizini içerisinde sonu Packages ifadesi ile biten (/var/lib/apt/lists/*_Packages) dosyalarda kullandığınız depolardaki paketlerin listesi yer alır. Daha sonra bu liste üzerinde apt-cache komutu ile sorgulama yapabilirsiniz.

apt-cache search <

Örnek: apt-cache search apache, apt-cache search x-window

Bundan başka,

Gayri-resmi paketleri kullanmak için ;

  • http://www.apt-get.org gibi sitelerden arama yapabiliriz.
  • Yazılımın kendi sitesinde .deb paketinin olup olmadığını kontrol edebiliriz.
  • google üzerinde çeşitli kriterlerle arama yapabiliriz

Yüklü olan bir paketin sadece sürümünü nasıl görebilirim?

dpkg -l

dpkg -l ile paket ismi ve sürümünü net olarak göremiyorum, ekrana sığmıyor?

COLUMNS=200 dpkg -l

dpkg -l sonucunda gelen rc,ii, pn gibi başlıklar neyi ifade ediyor?

#dpkg -l
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name           Version        Description
+++-==============-==============-===========================================
ii  adduser        3.47           Add and remove users and groups
ii  analog         5.23-0woody1   analyzes logfiles from web servers

[....]

Görüldüğü üzere dpkg -l çıktısı yukarıdaki şekilde uzayıp gider. Soruda da belirtildiği gibi burada önemli olan bazı ifadeler vardır;

ii = Paket normal olarak yüklendi

rc = Paket yüklendikten sonra apt-get remove ile kaldırıldı ancak konfigürasyon dosyaları halen sistemde duruyor anlamındadır. Paket kaldırılırken ayar dosyalarıda kalmasın isterseniz, bunun icin apt-get remove –purge ile kaldırmak gerekir.

pn = Paket ayar dosyaları ile birlikte sistemden kaldırıldı. dpkg -l çıktısının sol tarafında +++ ile belirtilen üç hanelik yer vardır.

Sisteme sorunsuzca yüklenmiş paketleri görebilemek için; dpkg -l | awk ‘{ if( == “ii”) print }’ veya dpkg -l | awk ‘/^ii/ {print}’ Benzer şekilde durumu rc olanları listelemek için; dpkg -l | awk ‘/^rc/ {print}’ Diğer yandan dpkg –get-selections sistemde yüklü olan paketleri (paketin sadece ayar dosyaları yüklü olsa bile) getirir. Ancak biz sadece düzgünce yüklenmiş olan paketleri görmek istiyorsak dpkg –get-selections | awk ‘{ if( == “install”) print }’ şeklinde de bu paketleri görebilmemiz mümkün.

Nasıl yeni bir paket yükleyebilirim?

Paket *.deb şeklinde elinizde mevcutsa dpkg -i şeklinde bunu sisteme yükleyebilirsiniz. Ancak yüklemeye çalıştığınız paket başka bir pakete veya paketlere de bağımlı ise paketin bağımlı olduğu diğer paketleri de temin edip yüklemek gerekir. Paket yükleme işlemi için genelde apt-get install yöntemi tercih edilir. apt-get install ile, belirttiğiniz paket indirilip sisteme dpkg -i ile sizin kurulur. Gerekli paket bağımlıklarını da apt-get halleder.

Bütün bunlardan önce kurmak istediğiniz paketi tespit etmeniz gerekir. Bunun için de Paketleri nasıl bulabilirim başlıklı sorunun cevabına göz atmanız yerinde olacaktır.

Daha detaylı bilgi için : http://www.debian-tr.org/?q=debian-quick-apt

Sistemimde yüklü olan bir paketi yeniden nasıl yükleyebilirim?

Şayet paket .deb olarak elinizde varsa, dpkg -i paket_ismi ile aynı paketin tekrar kurulmasını sağlayabilirsiniz. Veya apt-get install –reinstall paket_ismi ile paketi yeniden kurabilirsiniz.

Yüklü olan bir paketi nasıl kaldırabilirim?

Bu işlemi en alt seviyede dpkg –remove ile gerçekleştirebilirsiniz. apt-get –remove (veya dpkg -r ) ile kaldırmak istediğiniz paketi sistemden kaldırabilirsiniz. Ancak burada dikkat edilmesi gereken iki nokta var. Birincisi, –remove ile paketi kaldırdığınızda o pakete ait konfigürasyon dosyaları sistemde kalır. Siz daha sonra aynı paketi sisteme kurarsanız, paket en son ayarladığınız konfigürasyon ile çalışmaya devam eder. İkinci nokta, dpkg –remove ile paketi kaldırırken şayet -varsa- o pakete bağımlı diğer paketlerden sistemden kaldırılır.

Bu durumda, birinci nokta için –purge parametresi paketin sistemden tümden kaldırılmasını sağlar.

dpkg –purge –remove , veya dpkg -P -r ile paketi kalıntı bırakmadan kaldırabilirsiniz.

Yukarıda sözü edilen ikinci nokta için ise;

dpkg –force-depends –remove ile sadece ile belirtilen paketin kaldırılmasını sağlayabilirsiniz.

Paket kaldırmak için benzer şekilde, apt-get remove veya apt-get remove –purge şeklinde apt-get’ide kullanabilirsiniz.

Sistemden paket kaldırmak için kullanabileceğiniz yöntemler bunlarla sınırlı değil elbette, synaptic, aptitude, dselect gibi araçlarıda tercih edebilirsiniz.

Sistemde sadece konfigürasyon dosyaları kalmış paketleri nasıl tamamen temizleyebilirim?

Sisteminizde kaldırırken –purge ifadesini kullanmadığınız tüm paketleri görebilmek için;

dpkg -l | awk ‘/^rc/ {print }’ veya COLUMNS=200 dpkg -l | awk ‘/^rc/ {print }’

Bunları sistemden tamamen temizlemek için ise;

dpkg -l | awk ‘/^rc/ {print }’ | xargs dpkg –purge veya COLUMNS=200 dpkg -l | awk ‘/^rc/ {print }’ | xargs dpkg –purge

Böylece sistemden daha önce purge işlemini ilave etmeden kaldırmış olduğunu ancak konfigürasyon dosyaları halen duran paketleride tamamen temizlemiş olursunuz.

Bir pakete bağımlı olarak kurulan ancak sistemde istemediğim paketleri nasıl temizleyebilirim?

Sisteminize bir A paketini kurdunuz, kurulum sırasında A paketine bağımlı olan B ve C paketlerininde geldiğini farzedelim. Siz kurulumdan sonra herhangi bir sebeple A paketini sisteminizden kaldırmak istediğinizde, A ya bağımlı olan B ve C paketleri sistemde kalacaktır. Genel olarak bu paketleri bulup temizleyebilmek için deborphan veya debfoster araçlarını kullanabilirsiniz.

deborphan için http://www.tribe.eu.org/deborphan/

debfoster için http://www.fruit.eu.org/debfoster/

Tutarsız durumda kalan paketleri nasıl kaldırabilirim?

Şayet bir paketi kaldırırken herhangi bir sebepten dolayı tutarsız durum oluşursa, paket düzgünce sistemden kaldırılamaz ve yeniden yüklemek istediğinizde de yüklenmez ise;

dpkg --purge --force-remove-reinstreq paket_ismi

ile bu tutarsız durumdan kurtulmayı deneyiniz.

Sunucu listemi (sources.list) nasıl düzenleyebilirim veya değiştirebilirim?

apt-setup yazılımı size bu konuda yardımcı olabilir. Şayet bu işlemi elle yapmak isterseniz, /etc/apt/sources.list dosyasında isteğinize uygun şekilde değişiklik yapıp apt-get update ile index’inizi güncellemeniz yeterli olacaktır.

Sistemimi Woody’den Sarge’ye nasıl dönüştürebilirim?

/etc/apt/sources.list dosyanızı sadece Sarge depolarından oluşacak şekilde uygun şekilde ayarlayın ve;

apt-get update
apt-get install apt-utils debconf dpkg
apt-get upgrade

Bir .deb paketinin içeriğini nasıl elde edebilirim (extract)?

dpkg -x .deb /içeriğin/açılacağı/dizin_ismi/

Bir paketi konfigürasyon dosyaları ile birlikte yeniden nasıl yükleyebilirim?

dpkg –force-confmiss -i

 

Kaynak http://www.linuxogren.com/ubuntu-paket-yonetimi-ile-ilgili-soru-cevaplar.html

Yorumunuzu Ekleyin


Yükleniyor...
Yükleniyor...