26.02.2014 Aufrufe

LinuxUser Skripten und Coden (Vorschau)

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Know-how<br />

Apt-get <strong>und</strong> Aptitude<br />

Auf Einzelplatzsystemen können Sie in<br />

aller Regel auf das Anpassen der Apt-<br />

Konfiguration verzichten. Interessant<br />

wird es, wenn Sie trotz Vorliegens aktuellerer<br />

Pakete einen bestehenden Software-Stand<br />

beibehalten wollen oder bestimmte<br />

Pakete von der Installation ausschließen<br />

möchten. Ähnliches gilt für die<br />

automatische Installation empfohlener<br />

Pakete oder den Fall, dass der Netzzugang<br />

nur über einen Proxy-Server funktioniert<br />

û.<br />

Dass zwischen Apt <strong>und</strong> Aptitude weitere<br />

subtile Unterschiede bestehen, verdeutlicht<br />

unter anderem das Verhalten<br />

beim Entfernen „verwaister“ Pakete. Diese<br />

entstehen, wenn der Paketmanager<br />

bei einer Deinstallation nicht alle Abhängigkeiten<br />

löscht, die nur für das entfernte<br />

Paket notwendig waren, aber in keinem<br />

Bezug mehr zur weiterhin installierten<br />

Software stehen.<br />

Apt-get weist in einem solchen Fall lediglich<br />

darauf hin, dass verwaiste Pakete<br />

existieren, während Aptitude diese automatisch<br />

auch löscht. Die dazugehörigen<br />

Kommandozeilen-Optionen <strong>und</strong> Einstellungen<br />

für die Konfiguration finden Sie<br />

in der Tabelle Automatisches Entfernen.<br />

In einem Schritt<br />

Apt-get bietet die Möglichkeit, die Auswirkungen<br />

der beiden Unterkommandos<br />

install <strong>und</strong> remove in deren jeweiliges<br />

Gegenteil zu verkehren. Im Aufruf<br />

von Apt-get hängen Sie dazu an die einzelnen<br />

Paketnamen ein Plus- oder<br />

Minus- Zeichen an. So entfernen Sie mit<br />

apt‐get install einzelne Pakete, anstatt<br />

sie zu installieren. Das erweist sich<br />

etwa dann als hilfreich, wenn Sie ein Paket<br />

einrichten, das alternative Abhängigkeiten<br />

aufweist, von denen Sie eine bestimmte<br />

ausschließen möchten.<br />

So benötigt das Paket stumpwm des in<br />

Lisp geschriebenen Window-Managers<br />

Stump û einen Lisp-Interpreter, legt<br />

sich dabei aber nicht auf einen bestimmten<br />

fest. Daher genügt eines der drei<br />

Pakete clisp-module-clx, cl-clx-sbcl oder<br />

cmucl-source. Haben Sie keines davon<br />

installiert, wählt Apt-get im Normalfall<br />

das erste Paket aus. Wünschen Sie das<br />

nicht, wählen Sie es mit dem nachfolgenden<br />

Befehl explizit ab. Daraufhin<br />

nimmt Apt-get das zweite aus der Liste:<br />

# apt‐get install stumpwm clisp‐mU<br />

odule‐clx<br />

Aptitude bietet in dieser Hinsicht noch<br />

wesentlich mehr Möglichkeiten. Einerseits<br />

erlaubt es solche Korrekturen auch<br />

bei anderen Unterkommandos, wie<br />

full‐upgrade, safe‐upgrade, markauto<br />

oder hold. Andererseits kennt es noch<br />

wesentlich mehr Aktionen, auf die Sie<br />

ebenfalls über „Anhängsel“ auf den<br />

Namen des Paketes Zugriff haben (siehe<br />

Tabelle Aktionen in Aptitude).<br />

Das Beispiel in Listing 1 demonstriert<br />

diese Möglichkeiten ausführlich: Aptitude<br />

aktualisiert in einem Aufruf das Paket<br />

lintian, installiert dabei gleichzeitig<br />

das Paket htop sowie die noch fehlenden<br />

Bau-Abhängigkeiten für htop (in diesem<br />

Fall libncurses5-dev), entfernt das Paket<br />

tasksel samt nicht benötigter Abhängigkeiten<br />

<strong>und</strong> setzt das Paket ccal auf „automatisch<br />

installiert“.<br />

Daraufhin entfernt der Paketmanager<br />

Ccal, da kein anderes Paket davon abhängt.<br />

Alle weiteren, nicht angegebenen<br />

Pakete, bleiben auf dem derzeitigen<br />

Stand, auch wenn eine neuere Version<br />

Automatisches Entfernen<br />

Funktion Apt-get Aptitude<br />

Beim Entfernen apt‐get ‐‐auto‐remove aptitude remove Paket<br />

Paket<br />

Abhängigkeiten nicht<br />

automatisch entfernen<br />

apt‐get remove Paket aptitude ‐o Aptitude::DU<br />

elete‐Unused=false remoU<br />

ve Paket<br />

Konfigurationsoptionen APT::Get::AutomaticRemove Aptitude::Delete‐Unused<br />

Vorgabewert false true<br />

bereitsteht: aptitude full‐upgrade bearbeitet<br />

nur die angegebenen Pakete.<br />

Filter <strong>und</strong> Suchmuster<br />

Aptitude stellt umfangreiche Optionen<br />

für die Recherche nach Paketen bereit.<br />

Sowohl in der interaktiven Oberfläche<br />

als auch auf der Kommandozeile punktet<br />

es dabei mit mächtigen Filtern <strong>und</strong><br />

Suchmustern. Im Curses-Interface erreichen<br />

Sie die Eingabemaske für die Suche<br />

über [Umschalt]+[ 7 ] (den Schrägstrich).<br />

Im Aufruf auf der Kommandozeile heißt<br />

das Unterkommando search, gefolgt<br />

vom Suchbegriff.<br />

Bei beiden erlaubt Aptitude nicht nur<br />

Bestandteile des Paketnamens <strong>und</strong> reguläre<br />

Ausdrücke als Eingabe, sondern<br />

auch spezielle Suchmuster. Dazu zählen<br />

~i für alle installierten Pakete, ~M für alle<br />

automatisch installierten Pakete oder<br />

?description(Suchbegriff) für die<br />

Suche in den Beschreibungen 2 .<br />

Die meisten Suchmuster gibt es in einer<br />

Kurz- <strong>und</strong> Langform. Erstere beginnt<br />

mit einer Tilde (~), Letztere mit einem<br />

Fragezeichen. Eine Auswahl an Suchmustern<br />

zeigt die Tabelle Aptitude-<br />

Suchmuster. Eine aktuelle, vollständige<br />

Liste auf Englisch findet sich online û<br />

<strong>und</strong> im Paket aptitude‐doc‐en. Bislang<br />

wurde die Dokumentation nicht ins<br />

Deutsche übersetzt, liegt aber in Französisch,<br />

Italienisch <strong>und</strong> Spanisch vor û.<br />

Aktionen in Aptitude<br />

Zeichen<br />

Effekt<br />

+ Paket installieren<br />

+M Paket installieren <strong>und</strong> als automatisch<br />

installiert markieren<br />

‐ Paket entfernen<br />

_ Paket <strong>und</strong> Konfigurationen<br />

entfernen („purge“)<br />

: Paket beibehalten (also beispielsweise<br />

nicht aktualisieren)<br />

= Paket auf „hold“ setzen<br />

&M Paket als automatisch installiert<br />

markieren<br />

&m Paket als nicht automatisch<br />

installiert markieren<br />

&BD Bau-Abhängigkeiten des<br />

Pakets erfüllen<br />

92 www.linux-user.de<br />

06.2013

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!