APT, APT-Cache an hir dacks benotzte Kommandoen verstoen


Wann Dir jeemools Debian oder eng Debian baséiert Verdeelung wéi Ubuntu oder Linux Mint benotzt hutt, da sinn d'Chancen datt Dir den APT Package System benotzt hutt fir Software z'installéieren oder ze läschen. Och wann Dir ni op der Kommandozeil geklappt hutt, ass den ënnerierdesche System deen Äre Package Manager GUI den APT System mécht.

Haut wäerte mir e puer vertraute Kommandoen kucken, an e puer manner oder méi dacks benotzt APT Kommandoen dauchen, a werfen e bësse Liicht op dëse brillant entworfene System.

Wat ass APT?

APT steet fir Advanced Package Tool. Et gouf fir d'éischt an Debian 2.1 zréck an 1999 gesinn. Am Wesentlechen ass APT e Management System fir dpkg Packagen, wéi mat der Extensioun *.deb. Et gouf entwéckelt fir net nëmme Packagen an Updates ze managen, mee fir déi vill Ofhängegkeetsprobleemer ze léisen wann Dir verschidde Packagen installéiert.

Als jidderengem deen Linux an deene Pionéierdeeg benotzt huet, ware mir all ze vertraut mam Begrëff Dependence Hell wa mir probéiert eppes aus der Quell ze kompiléieren, oder souguer wann Dir mat enger Zuel vun Red Hat seng individuell RPM Dateien handelt.

APT huet all dës Ofhängegkeetsprobleemer automatesch geléist, sou datt all Package installéiert gëtt, onofhängeg vun der Gréisst oder Unzuel vun Ofhängegkeeten zu engem Kommando vun enger Linn. Fir déi vun eis, déi fir Stonnen un dësen Aufgaben geschafft hunn, war dëst ee vun deene Momenter vun der Sonn, déi d'Wolleken trennen, an eisem Linux Liewen!

APT Configuratioun verstoen

Dës éischt Datei déi mir kucken ass eng vun den APT Konfiguratiounsdateien.

$ sudo cat /etc/apt/sources.list
deb http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise main
deb-src http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise main

deb http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise-updates main
deb-src http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise-updates main

deb http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise universe
deb-src http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise universe
deb http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise-updates universe
deb-src http://us-west-2.ec2.archive.ubuntu.com/ubuntu/ precise-updates universe

deb http://security.ubuntu.com/ubuntu precise-security main
deb-src http://security.ubuntu.com/ubuntu precise-security main
deb http://security.ubuntu.com/ubuntu precise-security universe
deb-src http://security.ubuntu.com/ubuntu precise-security universe

Wéi Dir wahrscheinlech aus menger sources.list Datei ofleede kënnt, benotzen ech Ubuntu 12.04 (Präzis Pangolin). Ech benotzen och dräi Repositories:

  1. Main Repository
  2. Universum Repository
  3. Ubuntu Sécherheetsrepository

D'Syntax vun dëser Datei ass relativ einfach:

deb (url) release repository

Déi begleedend Linn ass de Quelldatei Repository. Et follegt en ähnlecht Format:

deb-src (url) release repository

Dës Datei ass zimmlech dat eenzegt wat Dir jeemools musst änneren mat APT, an d'Chancen sinn datt d'Defaults Iech zimmlech gutt serveren an Dir musst et iwwerhaapt ni änneren.

Wéi och ëmmer, et ginn Zäiten datt Dir Drëtt Partei Repositories wëllt addéieren. Dir géift se einfach mam selwechte Format aginn, a lafen dann den Update Kommando:

$ sudo apt-get update

NOTÉIERT: Sidd ganz bewosst fir Drëtt Partei Repositories ze addéieren !!! Füügt nëmme vu vertrauenswürdege an unerkannten Quellen derbäi. Dodgy Repositories bäizefügen oder Verëffentlechungen ze vermëschen kann Äre System eescht messen!

Mir hunn eis sources.list Datei gekuckt a wësse elo wéi et aktualiséieren, also wat ass nächst? Loosst eis e puer Packagen installéieren. Loosst eis soen datt mir e Server lafen a mir wëllen WordPress installéieren. Als éischt loosst eis no de Package sichen:

$ sudo apt-cache search wordpress
blogilo - graphical blogging client
drivel - Blogging client for the GNOME desktop
drupal6-mod-views - views modules for Drupal 6
drupal6-thm-arthemia - arthemia theme for Drupal 6
gnome-blog - GNOME application to post to weblog entries
lekhonee-gnome - desktop client for wordpress blogs
libmarkdown-php - PHP library for rendering Markdown data
qtm - Web-log interface program
tomboy-blogposter - Tomboy add-in for posting notes to a blog
wordpress - weblog manager
wordpress-l10n - weblog manager - language files
wordpress-openid - OpenID plugin for WordPress
wordpress-shibboleth - Shibboleth plugin for WordPress
wordpress-xrds-simple - XRDS-Simple plugin for WordPress
zine - Python powered blog engine

Wat ass APT-Cache?

Apt-Cache ass e Kommando deen einfach den APT Cache freet. Mir hunn de Sichparameter dorun iwwerginn, a soen datt mir selbstverständlech APT dofir wëllen sichen. Wéi mir uewe kënne gesinn, huet d'Sich no Wordpress eng Zuel vu Packagen zréckginn, déi mat der Sichstring mat enger kuerzer Beschreiwung vun all Package verbonne sinn.

Doraus gesi mer den Haaptpak vun \wordpress – weblogmanager, a mir wëllen en installéieren. Mee wier et net flott ze gesinn, wéi eng Ofhängegkeeten domat installéiert ginn? D'APT kann eis soen dat och:

$ sudo apt-cache showpkg wordpress
Versions:
3.3.1+dfsg-1 (/var/lib/apt/lists/us-west-2.ec2.archive.ubuntu.com_ubuntu_dists_precise_universe_binary-amd64_Packages)
 Description Language:
                 File: /var/lib/apt/lists/us-west-2.ec2.archive.ubuntu.com_ubuntu_dists_precise_universe_binary-amd64_Packages
                  MD5: 3558d680fa97c6a3f32c5c5e9f4a182a
 Description Language: en
                 File: /var/lib/apt/lists/us-west-2.ec2.archive.ubuntu.com_ubuntu_dists_precise_universe_i18n_Translation-en
                  MD5: 3558d680fa97c6a3f32c5c5e9f4a182a

Reverse Depends:
  wordpress-xrds-simple,wordpress
  wordpress-shibboleth,wordpress 2.8
  wordpress-openid,wordpress
  wordpress-l10n,wordpress 2.8.4-2
Dependencies:
3.3.1+dfsg-1 - libjs-cropper (2 1.2.1) libjs-prototype (2 1.7.0) libjs-scriptaculous (2 1.9.0) libphp-phpmailer (2 5.1) libphp-simplepie (2 1.2) libphp-snoopy (2 1.2.4) tinymce (2 3.4.3.2+dfsg0) apache2 (16 (null)) httpd (0 (null)) mysql-client (0 (null)) libapache2-mod-php5 (16 (null)) php5 (0 (null)) php5-mysql (0 (null)) php5-gd (0 (null)) mysql-server (2 5.0.15) wordpress-l10n (0 (null))
Provides:
3.3.1+dfsg-1 -
Reverse Provides:

Dëst weist eis datt Wordpress 3.3.1 d'Versioun ass fir ze installéieren, de Repository aus deem se installéiert soll ginn, ëmgedréint Ofhängegkeeten, an aner Pakete vun deem et hänkt, plus hir Versiounsnummeren.

NOTÉIERT: (null heescht datt d'Versioun net definéiert ass, an déi lescht Versioun am Repository gëtt installéiert.)

Elo, den aktuellen Installatiounskommando:

$ sudo apt-get install wordpress

Dëse Kommando wäert WordPress-3.3.1 installéieren an all Ofhängegkeeten déi am Moment net installéiert sinn.

Natierlech ass dat net alles wat Dir mat APT maache kënnt. E puer aner nëtzlech Kommandoen sinn wéi follegt:

NOTÉIERT: Et ass eng gutt Praxis fir apt-get update ze lafen ier Dir eng Serie vun APT Kommandoen leeft. Denkt drun, apt-get update parséiert Är /etc/apt/sources.list Datei an aktualiséiert seng Datebank.

E Package uninstalléieren ass grad esou einfach wéi de Package z'installéieren:

$ sudo apt-get remove wordpress

Leider léisst de Kommando apt-get remove all d'Konfiguratiounsdateien intakt. Fir déi och ze läschen, wëllt Dir apt-get purge benotzen:

$ sudo apt-get purge wordpress

All elo an dann, Dir kënnt iwwer eng Situatioun lafen, wou et gebrach Ofhängegkeeten sinn. Dëst geschitt normalerweis wann Dir net apt-get update richteg leeft, d'Datebank mangling. Glécklecherweis huet APT e Fix fir et:

$ sudo apt-get –f install

Zënter APT all d'*.deb Dateien aus dem Repository direkt op Är Maschinn eroflueden (späichert se an /var/cache/apt/archives) wëllt Dir vläicht periodesch ewechhuelen fir Disk Space ze befreien:

$ sudo apt-get clean

Dëst ass just e klengen Deel vun APT, APT-Cache an e puer vun hiren nëtzlechen Kommandoen. Et ginn nach vill ze léieren an e puer méi fortgeschratt Kommandoen am Artikel hei ënnen ze entdecken.

  1. 25 Nëtzlech an fortgeschratt Kommandoen vun APT-GET an APT-CACHE

Wéi ëmmer, kuckt w.e.g. op d'Man Säiten fir nach méi Optiounen. Wann een eng Vertraut mat APT kritt, ass et méiglech genial Cron Scripte ze schreiwen fir de System um neiste Stand ze halen.