Apt ve Aptitude nedir? ve Aralarındaki Gerçek Fark Nedir?

Aptitude ve apt-get , paket yönetimini idare eden popüler araçlardan ikisidir. Her ikisi de, kurulum, kaldırma, arama vb. dahil olmak üzere paketlerdeki her türlü etkinliği gerçekleştirebilir.

 

Apt ve Aptitude nedir? ve Aralarındaki Gerçek Fark Nedir?

APT ve Aptitude Arasındaki Fark

Apt nedir

Apt veya Advanced Packaging Tool , yazılım yükleme ve kaldırma işlemlerini incelikle işleyen ücretsiz ve açık kaynaklı bir yazılımdır. Başlangıçta Debian'ın .deb paketleri için tasarlanmıştır ancak RPM Paket Yöneticisi ile uyumlu hale getirilmiştir.

Apt , GUI'siz tüm komut satırıdır. Komut satırından yüklenecek paketin adını belirterek her çağrıldığında, bu paketi, '/etc/apt/sources.list' de belirtilen kaynakların yapılandırılmış listesinde ve paketin bağımlılık listesiyle bulur ve sıralar ve mevcut paketle birlikte bunları otomatik olarak yükler, böylece kullanıcının bağımlılıkları yükleme konusunda endişelenmemesine izin verir.

Kullanıcının çeşitli konfigürasyonları kolayca kontrol etmesini sağlayan son derece esnektir: paketleri aramak için herhangi bir yeni kaynak eklemek, uygun şekilde sabitlemek, yani sistem yükseltme sırasında mevcut olmayan herhangi bir paketi işaretlemek ve böylece mevcut versiyonunun son sürümü kurulu olması “akıllı” yükseltme yani en önemli paketleri yükseltme ve en önemsiz paketleri bırakma.

Aptitude Nedir?

Aptitude , işlevselliğe bir kullanıcı arabirimi ekleyen, böylece bir kullanıcının etkileşimli olarak bir paket aramasına ve yüklemesine veya kaldırmasına izin veren gelişmiş paketleme aracının ön ucudur. İlk olarak Debain için oluşturulan Aptitude, işlevselliğini RPM tabanlı dağıtımlara da genişletiyor.

Kullanıcı arayüzü, GUI'lerde yaygın olarak görülen çeşitli öğeleri ekleyen ncurses kütüphanesine dayanmaktadır. En önemlilerinden biri, apt-get komut satırı argümanlarının çoğunu taklit edebilmesidir.

Genel olarak, Aptitude , düşük düzeyli ayrıntıları özetleyen ve hem metin tabanlı etkileşimli UI modunda hem de komut satırı etkileşimli olmayan modda çalışabilen daha üst düzey bir paket yöneticisidir.

APT ve Aptitude'un gerçek dünya örnekleriyle kullanımını öğrenmek istiyorsanız, aşağıdaki makalelere yönelmelisiniz.

  1. APT-GET ve APT-CACHE Hakkında 25 Yararlı Örnek Öğrenin
  2. Aptitude ve Dpkg ile Linux Paket Yönetimini Öğrenin

APT ve Aptitude Arasındaki Farklar Nelerdir?

Aptitude'un üst düzey bir paket yöneticisi olmasının yanı sıra, APT diğer üst düzey paket yöneticileri tarafından kullanılabilen alt düzey bir paket yöneticisi olmakla birlikte, bu iki paket yöneticisini ayıran diğer önemli özellikler şunlardır:

  1. Aptitude işlevselliği apt- get'den daha geniştir ve apt-get ve apt-mark ve apt-cache gibi diğer varyantlarının işlevlerini bütünleştirir.

Apt-get tüm paket kurulumunu, yükseltme, sistem yükseltme, boşaltma paketi, bağımlılıkları çözme vb. İşlemlerini gerçekleştirirken, Aptitude apt-mark ve apt-cache işlevlerini içeren, yani apt-cache işlevlerini içeren bir çok şeyi işler. kurulu paketlerin listesi, otomatik veya manuel olarak yüklenecek bir paketi işaretleme, bir paketi yukarı derecelendirme için kullanılamaz hale getirme vb.

  1. Apt-get kullanıcı arayüzünden yoksun olsa da, Aptitude'un salt metin ve etkileşimli bir kullanıcı arayüzü vardır

Apt-get'in daha düşük seviye bir paket yöneticisi olması sadece komut satırı ile sınırlıdır, Aptitude ise daha yüksek seviye bir araç olmak için gerekli komutları girerek komut satırı işlemi seçeneğinin yanı sıra varsayılan bir salt metin etkileşimli arayüze sahiptir.

  1. Aptitude, apt-get'den daha iyi bir paket yönetimine sahiptir

Paketler için kurulum, kaldırma ve çakışma çözümlemesini içeren birçok durumda, Aptitude apt-get yerine değerini kanıtlar. Bazı durumlar şunları içerir:

1. Yüklü herhangi bir paketi kaldırırken, Aptitude kullanılmayan paketleri otomatik olarak silerken , apt-get kullanıcının ek '—auto-remove' seçeneğini ekleyerek veya 'apt-get autoremove' belirterek bunu açıkça belirtmesini 'apt-get autoremove'

2. Belirli eylemin neden engellendiğini veya belirli bir eylemin neden ya da neden-yapılmaması gerektiğini araştırmak için Aptitude 'why' ve 'neden olmasın' komutları sunar.

Gibi : Aptitude, kurulu paketler listesine bakarak ve önerilen paketlerinden herhangi birinin bir bağımlılığı olup olmadığını veya bağımlılıklarından herhangi birinin bu paketi önerdiğini kontrol ederek belirli bir paketi kurma nedenini bulabilir.

  $ Aptitude neden yaws-wiki
 i doc-base Önerileri dhelp |  dwww |  doktor merkezi |  yelp |  khelpcenter4
 p dwww apache2'ye bağlı |  httpd-cgi
 p yaws httpd-cgi sağlar
 p yaws yaws-wiki'yi önerir

Burada olduğu gibi, 'yaws-wiki' adlı bir paketin yüklenmesinin nedenini, paketin (dwww) bağımlılık ve pakete sahip olduğu sanal bir paket (httpd-cgi) sağlayan bir bağımlılık (yaws) tarafından önerilmesi olarak (dwww) (dwww) 'doc-base' adlı kurulu paketlerden biri tarafından önerilmektedir.

Bu özellik apt-get'de eksik.

3. Apt-get , paketin bir mesajla yüklenmesi veya kaldırılmasıyla ilgili çelişkili bir eylem olması durumunda ölecektir, ancak Aptitude bu çatışmayı gidermek için olası önlemler önerebilir.

Aptitude , yalnızca sistemde değil, aynı zamanda tüm depoda hemen hemen her paketi aramak için kullanılabilecek güçlü bir arama sağlar.

Apt-get bir paketi aramak için başka bir apt varyantına, yani apt- cache'ye ihtiyaç duymasına rağmen, Aptitude depoda bulunan ya da mevcut ancak henüz kurulmamış bir paketi aramak için çok daha kolay ve etkili bir yol sağlar.

Apt-cache vs Aptitude kullanarak paket arama

  $ apt-cache search 'python' |  kafa -n4
 kate - güçlü metin editörü
 kcachegrind-converters - KCachegrind profiler görselleştirme aracı için biçim dönüştürücüler
 kig - KDE için etkileşimli geometri aracı
 python-kde4 - KDE Geliştirme Platformu için Python bağlamaları

 $ Aptitude arama 'python' |  kafa -n4
 i bpython - Python yorumlayıcısına hoş bir arayüz 
 p bpython-gtk - Python yorumlayıcısına hoş bir arayüz 
 p bpython-urwid - Python yorumlayıcısına hoş bir arayüz 
 p bpython3 - Python3 yorumlayıcısına hoş bir arayüz

Burada, varsayılan olarak, hem apt-cache hem de Aptitude , depodaki tüm paket listesinde bir paket arar, ancak Aptitude çıktısı, paketin sistemde yüklü olup olmadığını gösterir, burada 'p' olan bir paket başına bayrak vererek paketin mevcut olduğunu ancak yüklü olmadığını ve paketin kurulu olduğunu belirten 'i' belirtirken, apt-cache paketin yüklü olup olmadığını söylemeden paketi ve tek satırlık ayrıntılarını listeler.

Aptitude ile gelişmiş paket aramanın diğer bazı örnekleri

1. Paket adında 'python2.7' ve açıklamasında '2.7' bulunan depodaki bir paketi arama.

  $ Aptitude araması '~ npython2.7 ~ d2.7'
 p idle-python2.7 - Tkinter kullanarak Python için IDE (v2.7)       
 i libpython2.7 - Paylaşılan Python çalışma zamanı kitaplığı (sürüm 2.7
 p libpython2.7: i386 - Paylaşılan Python çalışma zamanı kitaplığı (sürüm 2.7
 p libpython2.7-dbg - Python Yorumlayıcısının Hata Ayıklama Derlemesi (ver
 p libpython2.7-dbg: i386 - Python Yorumlayıcısının Hata Ayıklama Derlemesi (ver
 i Bir libpython2.7-dev - Başlık dosyaları ve Pyth için statik bir kütüphane
 p libpython2.7-dev: i386 - Pyth için başlık dosyaları ve statik bir kütüphane
 i libpython2.7-minimal - Python dilinin en küçük alt kümesi (ver
 p libpython2.7-minimal: i386 - Python dilinin minimum alt kümesi (ver
 i libpython2.7-stdlib - Etkileşimli yüksek düzey nesne yönelimli lan
 p libpython2.7-stdlib: i386 - Etkileşimli yüksek düzey nesne yönelimli lan
 p libpython2.7-testsuite - Python standart kütüphanesi için testsuite 
 i python2.7 - Etkileşimli yüksek düzey nesne yönelimli lan
 p python2.7: i386 - Etkileşimli yüksek düzey nesne yönelimli lan
 p python2.7-dbg - Python Yorumlayıcısının Hata Ayıklama Derlemesi (ver
 p python2.7-dbg: i386 - Python Yorumlayıcısının Hata Ayıklama Derlemesi (ver
 i Python2.7-dev - Başlık dosyaları ve Pyth için statik bir kütüphane
 p python2.7-dev: i386 - Pyth için başlık dosyaları ve statik kitaplık
 p python2.7-doc - Üst düzey nesne belgeleri veya
 p python2.7-örnekler - Python dili örnekleri (v2.7)   
 i python2.7-minimal - Python dilinin en küçük alt kümesi (ver
 p python2.7-minimal: i386 - Python dilinin minimum alt kümesi (ver

Burada '~n' ismi, '~d' ise tanımı belirtir. Aynı komutun diğer biçimi:

  $ Aptitude araması '? name (python2.7)? description (2.7)'
Diğer bazı bayraklar şunları içerir:
  1. ~i or ?installed() : Yalnızca kurulu paketler listesinde bir paket aranıyor.
  2. ~U or ~Upgradable : Mevcut en son sürümleriyle yükseltilebilen tüm paketleri listeler.
  3. ~E or ?Essential() : Yüklü veya mevcut olan paketler gereklidir.
  $ aptitude version '? Yükseltilebilir' |  kafa -n 12
 Paket apache2:
 2.4.7-1ubuntu4 güvenilir 500 ph 
 2.4.7-1ubuntu4.5 güvenilir güvenlik 500 
 ih 2.4.7-1ubuntu4.8100 
 2.4.7-1ubuntu4.9 güvenilir güncellemeler 500 

 Apache2-bin paketi:
 p A 2.4.7-1 ubuntu4 güvenilir 500 
 p A 2.4.7-1ubuntu4.5 güvenilir güvenlik 500 
 i A 2.4.7-1 çıktısı4.8100 
 p A 2.4.7-1ubuntu4.9 güvenilir güncellemeler 500 

Burada kurulu sürümü ( 'i' ile gösterilir) ve bunların yükseltilebilir sürümü ( 'p' ile gösterilir) bulunan 3 paketin kısa bir listesi gibi.

2. Belirli bir hizmeti sunan tüm paketleri bulma

Smtp hizmeti sunan tüm paketleri bulmak için:

  $ aptitude search '? offers (smtp)'
 p libghc-smtpclient-dev - Basit Haskell SMTP istemci kütüphanesi        
 p libghc-smtpclient-dev: i386 - Basit Haskell SMTP istemci kütüphanesi        
 p libghc-smtpclient-prof - Basit Haskell SMTP istemci kütüphanesi;  profili
 p libghc-smtpclient-prof: i386 - Basit Haskell SMTP istemci kütüphanesi;  profili
 p syslog-ng-mod-smtp - Gelişmiş sistem günlüğü arka plan programı (SMTP eklentisi)
 p syslog-ng-mod-smtp: i386 - Gelişmiş sistem günlüğü arka plan programı (SMTP eklentisi)

3. Belirli bir paketi öneren tüm paketleri bulma

Burada olduğu gibi, 'gcc' paketini öneren tüm paketleri listeliyoruz.

  $ Aptitude arama '~ DSuggests: gcc' |  kafa -n10
 p bochs - IA-32 PC emülatörü                         
 p bochs: i386 - IA-32 PC emülatörü                         
 p cpp-4.4 - GNU C ön işlemcisi                        
 p cpp-4.4: i386 - GNU C ön işlemcisi                        
 p cpp-4.6 - GNU C ön işlemcisi                        
 p cpp-4.6: i386 - GNU C ön işlemcisi                        
 p cpp-4.7 - GNU C ön işlemcisi                        
 p cpp-4.7: i386 - GNU C ön işlemcisi                        
 p cpp-4.7-kol-linux-gnueabi - GNU C ön işlemcisi                        
 p cpp-4.7-arm-linux-gnueabi: i386 - GNU C ön işlemcisi 

Sonuç

Çoğu durumda apt-get kullanıcılarının Aptitude'a geçişte daha az acı çekmesini sağlamak için, Aptitude sözdizimi apt-get ile neredeyse aynı tutulur, , ancak buna ek olarak Aptitude'a birçok güçlü özellik entegre edilmiştir.

Kaynak

Yorumunuzu Ekleyin


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