Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
Einleitung
1 Was ist Ubuntu?
2 Die Versionen im Detail
3 Die Shell
4 Migration und Synchronisation
5 Die Installation
6 Erste Schritte
7 Ubuntu mobil
8 Derivate
9 Internet und E-Mail
10 Office
11 Grafik und Bildbearbeitung
12 Multimedia und Spiele
13 Programmierung und Design
14 Hardware-Konfiguration
15 Software- und Paketverwaltung
16 Architektur
17 Backup und Sicherheit
18 Server-Installation
19 Datei- und FTP-Server
20 Weitere Server-Dienste
21 Kontrolle und Monitoring
22 Desktop-Virtualisierung
23 Server-Virtualisierung mit KVM
24 Server-Virtualisierung mit Xen
25 Hilfe
26 Befehlsreferenz Ubuntu Linux
A Übersicht: Software für (K)Ubuntu
B Mark Shuttleworth
C Glossar
D Häufig gestellte Fragen
Stichwort

Download:
- ZIP, ca. 36,6 MB
Buch bestellen
Ihre Meinung?

Spacer
<< zurück
Ubuntu GNU/Linux von Marcus Fischer
Das umfassende Handbuch, aktuell zu Ubuntu 9.04 - Jaunty Jackalope
Buch: Ubuntu GNU/Linux

Ubuntu GNU/Linux
4., aktualisierte und erweiterte Auflage, geb.
1.120 S., 39,90 Euro
Galileo Computing
ISBN 978-3-8362-1439-1
Pfeil 15 Software- und Paketverwaltung
Pfeil 15.1 Synaptic
Pfeil 15.1.1 Lokales Repository mit Synaptic verwalten
Pfeil 15.1.2 Die Ubuntu-Aktualisierungsverwaltung
Pfeil 15.1.3 Die Ubuntu-Anwendungsverwaltung
Pfeil 15.1.4 Adept – die KDE-Lösung
Pfeil 15.1.5 Metapakete
Pfeil 15.2 Repositorys
Pfeil 15.2.1 main
Pfeil 15.2.2 Restricted
Pfeil 15.2.3 Universe
Pfeil 15.2.4 Multiverse
Pfeil 15.2.5 Backports
Pfeil 15.3 dpkg – Die Basis der Paketverwaltung
Pfeil 15.3.1 Pakete installieren und deinstallieren
Pfeil 15.3.2 Installierte Pakete konfigurieren
Pfeil 15.3.3 Pakete finden
Pfeil 15.4 Advanced Packaging Tool (APT)
Pfeil 15.4.1 Installation von Paketen
Pfeil 15.4.2 Entfernen von Paketen
Pfeil 15.4.3 Upgrade von Paketen oder der kompletten Distribution
Pfeil 15.4.4 Ungenutzte Pakete entfernen
Pfeil 15.4.5 Die Datei sources.list
Pfeil 15.4.6 APT lokal verwenden
Pfeil 15.4.7 Externe Quellen
Pfeil 15.5 Fremdsoftware nutzen
Pfeil 15.5.1 Windows-Programme
Pfeil 15.5.2 Java-Programme
Pfeil 15.6 Sekundärsoftware aus Quellen
Pfeil 15.6.1 Der Linux-Dreisprung
Pfeil 15.6.2 Installation unter Ubuntu
Pfeil 15.7 Versionsverwaltung mit Bazaar
Pfeil 15.7.1 Was ist Bazaar?
Pfeil 15.7.2 Ein erstes kleines Projekt
Pfeil 15.7.3 Das Projekt veröffentlichen


Galileo Computing - Zum Seitenanfang

15.3 dpkg – Die Basis der Paketverwaltung Zur nächsten ÜberschriftZur vorigen Überschrift

Wenn Sie Ubuntu installiert haben und nun nach speziellen Programmen suchen, werden Sie früher oder später auf den Ausdruck »Repository« stoßen. Auch in dem vorliegenden Buch war davon bereits mehrfach die Rede. Aber was sind diese Repositorys eigentlich?

Auf Systemen wie Ubuntu kommt freie und quelloffene Software (Open-Source-Software) sehr oft in vorgefertigten Paketen, den deb-Dateien, daher. Eine andere Variante sind die rpm-Dateien, die man auf SUSE- und RedHat-Systemen findet. Solche Pakete enthalten alle benötigten Programme und Bibliotheken und sind leicht zu installieren. Sie finden die deb-Pakete in den verschiedenen Repositorys. Das sind Server, die ganze Sammlungen von Paketen zum Download bereitstellen. Auf derartige Pakete kann man mit Verwaltungstools wie z. B. apt-get oder Synaptic zugreifen und sie auf den PC herunterladen und anschließend installieren. Ein manuelles Kompilieren und Installieren der Software ist somit nicht nötig.

Debian-Pakete unter Ubuntu einsetzen

Wie ich bereits erläuterte, basiert Ubuntu auf Debian. Dies bedeutet, dass sich die Ubuntu-Entwickler prinzipiell die Softwarepakete von Debian nehmen und sie für die eigene Distribution anpassen. Das wirft die Frage auf, ob der Anwender sich nicht gleich die Debian-Pakete installieren kann.

Abbildung 15.6 Komfortable Paketinstallation mit GDebi

Installationstechnisch stellt dies kein Problem dar, da beide Distributionen dasselbe Paketsystem verwenden. Dennoch raten viele Insider, insbesondere auch das Ubuntu-Team, davon ab.

Auf der Ubuntu-Homepage findet man folgende Aussage:

»Obwohl Debian und Ubuntu zu einem großen Teil kompatibel sind und viele Quellpakete gemein haben, ist es keine gute Idee, Binärpakete der beiden Distributionen zu mischen. Diese wurden unabhängig voneinander kompiliert, was zu unerwarteten Effekten im Paketmanagement-System führen kann.

Die potentielle Unverträglichkeit stellt aber in Wirklichkeit kein Problem dar: Nahezu jegliche Software des Debian-Systems findet man auch unter Ubuntu.«

Sollte man nun auf eine Softwarekomponente angewiesen sein, die nicht im Ubuntu-System enthalten ist, so hat man die Möglichkeit, sogenannte »Backports« zu verwenden. Mehr dazu finden Sie in Abschnitt »Backports« ab Seite Mark#-->»Mark Shuttleworth« ab Seite finden Sie ein Interview mit Mark Shuttleworth, in dem er auf die besondere Beziehung von Ubuntu zu Debian näher eingeht.


Mit GDebi Debian-Pakete grafisch installieren

Wenn Sie trotzdem einmal in die Verlegenheit kommen und Debian-Pakete manuell installieren möchten, so bringt Ubuntu dafür ein grafisches Tool mit. Nach einem Rechtsklick auf das entsprechenden Debian-Paket wählen Sie Mit »GDebi Paketinstaller« öffnen aus. In dem sich öffnenden Fenster des Paket-Installers werden Informationen und die Abhängigkeiten des Pakets angezeigt (siehe Abbildung). Nach einem Klick auf Paket installieren werden das Paket und gegebenenfalls die vorhandenen Abhängigkeiten installiert.

Wenn Sie mit dem Browser (z. B. dem Firefox) Debian-Pakete aus dem Internet herunterladen, können Sie diese gleich mit gdebi öffnen und installieren. In Breezy oder älteren Versionen ist dazu ein kurzer Ausflug auf die Konsole nötig. Mit

sudo dpkg -i 'Dateiname'

wird das Paket installiert. Dazu müssen Sie sich natürlich in dem entsprechenden Verzeichnis befinden, in dem sich auch das .deb-Paket befindet. Mit dpkg rufen Sie den Paketmanager debian package auf, die Option -i installiert dieses Paket dann.

Falls Sie ein Paket installieren wollen, das sich ebenfalls in den offiziellen Repositorys befindet, dann werden Sie durch einen Hinweis benachrichtigt, dass die Installation aus den klassischen Paketquellen zu bevorzugen sei. Sie können diesen Hinweis getrost ignorieren, wenn Sie sich über die Herkunft des Pakets sicher sind oder wissen, was Sie tun.


Paketverwaltungstools

Die Paket-Verwaltungstools (beispielsweise Synaptic und Adept) listen alle installierten Pakete auf, angefangen vom verwendeten Kernel bis hin zu Ihren bevorzugten Anwendungen samt allen Bibliotheken. Zusätzlich kann man sich darüber informieren, welche Pakete in den verschiedenen Repositorys zur Verfügung stehen, sofern Sie die entsprechenden Repositorys dem Tool auch bekannt gemacht haben. Wie man das macht, wird weiter unten erklärt.

Zentrale Verwaltung

Durch den Einsatz solcher Tools lassen sich die zentralen Aufgaben des Paket-Managements zentral und einfach halten, als da wären:

  • Installation von Programmen
  • restlose Deinstallation von Programmen
  • Deinstallation von Programmen bei Erhalt von Konfigurationsdateien
  • Suchen nach Programmen
  • Updates von Programmen

Zugleich bieten die Paketmanager den Distributoren der Pakete eine einfache Möglichkeit, Sie mit Paket-Updates zu versorgen. Sie erfahren mehr über die auf dpkg aufsetzenden Management-Tools

  • APT in Abschnitt ab Seite und
  • aptitude in Abschnitt ab Seite .

Debian-basiert

Debian-basierte Systeme verpacken ihre Pakete in einem deb-Format und arbeiten mit dem Debian Package Manager (dpkg). Ubuntu macht hier keine Ausnahme.

Die Paketverwaltung kümmert sich um die Grundlage Ihres Betriebssystems – die Pakete, aus denen Ubuntu und Linux bestehen. Hierbei werden durch dpkg die Pakete so verwaltet, dass ein stabiles System resultiert. Um dies zu erreichen, prüft dpkg beständig die Abhängigkeiten zu installierender Pakete und verhindert konsequent das Installieren von Programmen, wenn diese durch nicht auflösbare Abhängigkeiten das System in seiner Stabilität gefährden könnten. Der umgekehrte Weg wird ebenso überwacht: dpkg verhindert das Entfernen von Paketen, die das System zu einem einwandfreien Betrieb braucht.

Wenn Sie mehr über die vielfältigen Fähigkeiten des Paketmanagers dpkg erfahren möchten, dann lohnt sich ein Blick in die Manpage mit

user$ man dpkg

Kurzreferenz

Mit dem Lesen dieser Manpage kann man Stunden verbringen und daher lohnt sich für das schnelle »Nachschlagen« von Befehlen die Kurzreferenz, die Sie mit dem Befehl dpkg -h | less aufrufen können. Hierbei wird die Ausgabe über die Pipe (»|«) an den Pager less weitergegeben.

Die meisten Optionen, die Sie angeben, existieren in Kurz- und Langform. So können Sie statt dpkg -i für das Installieren eines Paketes auch dpkg --install angeben.

Standortbestimmung

Schnell stieß man mit dpkg an die Grenzen. Man erkannte sehr früh, dass die Installation zwar einfacher wurde, da man nicht mehr bei jeder zu installierenden Anwendung diese selbst kompilieren musste, aber das Problem der Abhängigkeiten blieb weiterhin. Wenn man ein bestimmtes Paket installieren wollte, musste man teilweise mehrere andere Pakete vorher installieren, um die hinderlichen Abhängigkeiten aufzulösen. Dies konnte unter Umständen sehr zeitaufwendig und nervenraubend sein.

Schnell fand man eine Lösung für dieses Problem und entwickelte »Aufsätze« für dpkg, die allesamt noch die Grundstruktur von dpkg, also das Installieren und Entfernen von deb-Paketen, benutzen, sich aber teilweise im Vergleich zum alten Programm deutlich weiterentwickelt haben.

Als erste Verbesserung entstand dselect, das bis Debian 2.2 die bevorzugte Installationsmethode war. Es konnte bereits Abhängigkeiten auflösen, war aber rein konsolenbasiert und entsprechend unhandlich. So starteten ziemlich schnell Projekte wie APT und aptitude, auf die ich in den folgenden Abschnitten näher eingehen möchte.

Zwei Arten von Paketmanagern

Es gibt genau genommen zwei Arten von Paketmanagern: Auf der einen Seite stehen die Programme, die aus anderen Quellen Pakete nachladen können, um Abhängigkeiten aufzulösen, auf der anderen Seite diejenigen Programme, die direkt die Pakete installieren oder löschen, aber keine Abhängigkeitsverwaltungs- und Konfliktlösungsmechanismen kennen.

Zwei konkrete Fälle: Das Programm rpm kann Pakete vom Typ .rpm installieren und löschen, das Programm dpkg kann Pakete vom Typ .deb installieren und löschen. Beide können aber keine Abhängigkeiten auflösen, da sie keine Funktionen haben, um Software nachzuladen. Dies können erst die »richtigen« Paketmanager wie YUM, APT und andere.


Alien – Mittler zwischen Welten

Manchmal gibt es die gewünschte Lieblingssoftware nur im rpm-Format. Um diese dennoch installieren zu können, muss man dieses Paket in das bevorzugte deb-Format umwandeln. Bei dieser Aufgabe hilft einem ein Werkzeug namens alien.

RPM- und Debian-Pakete sind häufig nicht kompatibel, können aber meist mit der Hilfe von alien von einem ins andere Format konvertiert werden. Sie installieren alien im Terminal mit

sudo apt-get install alien

Wenn Sie nun ein Paket im rpm (paket.rpm) vorliegen haben, verwandeln Sie dieses mittels

alien paket.rpm

in ein deb-Format. Sie finden nun im gleichen Verzeichnis die Datei paket.deb. Diese können Sie mit dem Befehl

dpkg -i paket.deb

oder durch einen Doppelklick installieren. Dieses Verfahren birgt aber auch einige Tücken. Es können Probleme auftreten, wenn das zu konvertierende Paket von Bibliotheken abhängt, die gar nicht oder in einer anderen Version vorliegen. In einem solchen Fall wird zwar eventuell trotzdem die Transformation mit alien abgeschlossen, die anschließende Installation scheitert jedoch. Dann bleibt Ihnen meist nichts anderes übrig, als auf dieses Paket zu verzichten.



Galileo Computing - Zum Seitenanfang

15.3.1 Pakete installieren und deinstallieren Zur nächsten ÜberschriftZur vorigen Überschrift

Wie Sie ein Paket installieren, haben Sie bereits im vorigen Beispiel gesehen. Diese Aktion müssen Sie mit Administratorrechten ausführen, dpkg schreibt alle Meldungen, Warnungen und Fehler in das Terminal, in das Sie den Befehl eingegeben haben:

sudo dpkg -i bum_2.1.8-1_all.deb 
Password: 
Wähle vormals abgewähltes Paket bum. 
(Lese Datenbank ... 145205 Dateien und Verzeichnisse sind derzeit installiert.) 
Entpacke bum (aus bum_2.1.8-1_all.deb) ... 
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von bum: 
 bum hängt ab von libgtk2-gladexml-perl; aber: 
  Package libgtk2-gladexml-perl is not installed. 
dpkg: Fehler beim Bearbeiten von bum (--install): 
 Abhängigkeitsprobleme – lasse es unkonfiguriert 
Fehler traten auf beim Bearbeiten von: 
 bum

Ich habe im umseitigen Beispiel mit Absicht ein Paket gewählt, das sich nicht so einfach installieren lässt, damit ich Ihnen anhand dieses Beispiels eine solche Fehlermeldung präsentieren kann.

Wie installieren Sie nun dieses Paket? Dies ist prinzipiell auf zwei Arten möglich. Zum Einen könnten Sie sich auf die Suche nach allen Paketen begeben, die im umseitigen Beispiel gefordert werden, oder Sie nutzen eine smarte Paketverwaltung wie APT. APT löst die Abhängigkeiten automatisch auf und installiert alle abhängigen Pakete mit. Sie erfahren mehr über APT in Abschnitt ab Seite .

Wenn Sie mehrere Pakete installieren möchten, können Sie diese einfach an den obigen Befehl anhängen:

dpkg --install paket1:deb paket2.deb

Pakete entfernen

Wenn Sie ein Paket verschicken bzw. wieder entfernen möchten, dann nutzen Sie die Option -r. Ein Aufruf sieht folgendermaßen aus:

sudo dpkg -r bum 
(Lese Datenbank ... 145242 Dateien und Verzeichnisse sindderzeit installiert.) 
Entferne bum ...

Mit dem obigen Befehl haben Sie allerdings nur das Programm entfernt, seine Konfigurationsdateien bleiben vorhanden. Dies ist kein Fehler, sondern beabsichtigt. So brauchen Sie bei einer erneuten Installation des Programmes dieses nicht erneut einzurichten.

Wenn Sie das Programm komplett entfernen möchten, also mitsamt seinen Konfigurationsdateien, dann müssen Sie es »purgen«:

sudo dpkg -P bum

Das System entrümpeln

Wenn Sie Ihr System längere Zeit nutzen, haben Sie wahrscheinlich einige Programme installiert und vielleicht auch wieder deinstalliert. Dabei bleiben oftmals Pakete auf Ihrem System, die entweder als Voraussetzung automatisch installiert wurden oder davon abhängig sind.

Sie haben prinzipiell zwei Möglichkeiten Ihr System zu entrümpeln: Zum einen können Sie durch den Befehl

sudo apt-get autoremove

die eben angesprochenen Pakete entfernen. Die Alternative ist sehr viel radikaler: Über das Menü System • Systemverwaltung • Rechner-Hausmeister finden Sie ein Werkzeug, das es Ihnen erlaubt, durch einfaches Abwählen alle nachträglichen Programme auf einen Schlag zu entfernen.

Eine weitere Alternative stellt deborphan dar. Es ist ein Programm, das auf einem Debian-System nach verwaisten Paketen sucht. Wird ein Paket gefunden, von dem keine anderen Pakete abhängig sind, so wird der Name ausgegeben. Dies ist hauptsächlich sinnvoll, um installierte Bibliotheken zu finden, die nicht mehr benötigt werden. Sie installieren deborphan ganz einfach im Terminal:

user$ sudo apt-get install deborphan

Nun können Sie sich nach einem einfachen Aufruf deborphan alle verwaisten Pakete anzeigen lassen. Mit dem Befehl

user$ sudo dpkg -r PAKET

können Sie nun Pakete löschen, die Sie nicht mehr brauchen. Gehen Sie hierbei behutsam vor und prüfen Sie gewissenhaft, ob Sie die angezeigten Pakete wirklich nicht mehr brauchen.



Galileo Computing - Zum Seitenanfang

15.3.2 Installierte Pakete konfigurieren Zur nächsten ÜberschriftZur vorigen Überschrift

Manchmal müssen Sie bereits installierte Pakete neu konfigurieren. Dies kann mehrere Gründe haben: Entweder ist bei der vorherigen Installation eines Pakets etwas schiefgelaufen oder Sie müssen eventuell Ihren X-Server nach dem Einbinden eines neuen Treibers anpassen.

Dieses Konfigurieren funktioniert mit dem folgenden Befehl:

sudo dpkg --configure <Paket>

und das Rekonfigurieren z. B. des X-Servers erfolgt mit

sudo dpkg-reconfigure xserver-xorg

Galileo Computing - Zum Seitenanfang

15.3.3 Pakete finden topZur vorigen Überschrift

Sie können sich vorstellen, dass in einem Repository mehr als nur ein paar Pakete liegen – es sind sehr viel mehr. Sie werden in den Ubuntu-Repositorys mehr als 10.000 Pakete finden, so dass man sehr viel Zeit mit dem Suchen nach dem richtigen Paket verbringen kann. Erschwerend kommt hinzu, dass die Pakete, die man installieren will, oftmals einen anderen Namen haben als die Programme, die sich in diesem Paket befinden.

Der Paketmanager dpkg hilft Ihnen auch hier. Mit der Option -S oder --search können Sie das Paket ermitteln, in dem sich eine bestimmte Datei befindet.


Versteckte Programme in Paketen finden

Sie möchten wissen, in welchem Paket sich das Programm ls befindet? Hier müssen wir einen kleinen Trick anwenden, da wir nicht wissen, wo sich der Pfad des ausführbaren Programms befindet. Diesen finden wir mit dem Befehl which, und das Ergebnis binden wir in die Suche mit ein:

sudo dpkg -S `which ls` coreutils: /bin/ls

Wie Sie sehen, befindet sich das gewünschte Programm in einem Paket namens coreutils.



Liste aller installierten Pakete erstellen

Wenn Sie eine Liste aller installierten Pakete haben möchten, dann benutzen Sie die Option -l. Diese Liste ist natürlich sehr lang und daher ist eine Umleitung an less wieder sinnvoll:

dpkg -l | less

Nach Eingabe dieses Befehls sehen Sie nicht nur eine ellenlange Liste von Paketen, sondern auch zusätzliche Informationen über deren Status (siehe Abbildung). In den ersten beiden Spalten sehen Sie den Status des jeweiligen Pakets. Die Bedeutung der Buchstaben wird Ihnen am Anfang der Liste erklärt.


Abbildung 15.7 Liste aller installierten Pakete

Wenn Sie die Liste wieder verlassen möchten, dann brauchen Sie das Terminal dazu nicht zu schließen, sondern Sie nutzen die Tastenkombination Taste Strg + Taste Alt + Taste Q und anschließend noch einmal Taste Alt + Taste Q .

Keine Berücksichtigung von Abhängigkeiten

Die Basis der Paketverwaltung dpkg kann keine Abhängigkeiten auflösen, sondern »nur« Pakete (de-)installieren. Mit dpkg arbeiten verschiedene Paketmanager, unter anderem dselect. Dselect kann selbstständig Abhängigkeiten zwischen Paketen auflösen und Konflikte zwischen Paketversionen erkennen. Zum eigentlichen Installieren und Konfigurieren von Paketen kommt aber dpkg zum Einsatz. Dselect kann Pakete aus Quellen wie CDs, NFS- oder FTP-Servern beziehen. Dieser Paketmanager war bis Debian 2.2 der bevorzugte Paketmanager, wurde aber inzwischen von aptitude abgelöst.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen. >> Zum Feedback-Formular
<< zurück
  Zum Katalog
Zum Katalog: Ubuntu GNU/Linux





Ubuntu GNU/Linux
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Linux






 Linux


Zum Katalog: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


Zum Katalog: Webserver einrichten und administrieren






 Webserver einrichten
 und administrieren


Zum Katalog: Xen






 Xen


Zum Katalog: VirtualBox






 VirtualBox


Zum Katalog: LPIC-1






 LPIC-1


Zum Katalog: Einstieg in Ubuntu 8.10 »Intrepid Ibex«





 Einstieg in Ubuntu
 8.10 »Intrepid Ibex«


Zum Katalog: Einstieg in Ubuntu Linux - Videotraining





 Einstieg in Ubuntu
 Linux - Videotraining


Zum Katalog: Debian GNU/Linux






 Debian GNU/Linux


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2009
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de