Posts mit dem Label Paketmanagement werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Paketmanagement werden angezeigt. Alle Posts anzeigen

5. August 2013

Arch Linux: Umstieg von Ubuntu auf Arch Linux - Das AUR nutzen (Teil 6)

Nachdem im letzten Artikel dieser Serie über den Umstieg auf Arch Linux bereits dessen Paketmanager Pacman, mit dem sich Software aus Repositories installieren lässt, betrachtet wurde, soll sich dieser Artikel darum drehen, wie Software aus dem sogenannten AUR bezogen werden kann. Das AUR, oder "Arch User Repository" ist ein von der Community gepflegtes, weiteres Repository, in dem sogenannte PKGBUILDS angeboten werden, die es erlauben Programme zu bauen und anschließend zu installieren. Auf diese Weise ist es möglich, eine riesige Anzahl von zusätzlichen Programmen bequem zu beziehen.

Die Webseite des Arch User Repositories (Klicken zum Vergrößern)

Um Software elegant im AUR aufzufinden und installieren zu können, bietet sich das Kommandozeilen-Tool Yaourt an, das einen Wrapper für Pacman darstellt und dadurch die exakt gleichen Befehle unterstützt. Im Folgenden soll die Installation von Programmen aus dem AUR mit Hilfe von Yaourt anhand eines Beispiels erläutert werden.

1 Installation von Yaourt


Bevor man Yaourt nutzen kann, muss dieses zunächst installiert werden. Es ist selbst über das AUR zu beziehen, weshalb man dessen Installation ein erstes Mal manuell durchführen muss. Dies trägt zum Verständnis bei, wie Software aus dem AUR heruntergeladen, gebaut und installiert werden kann und verdeutlicht, welche Arbeitsschritte Yaourt später selbständig übernehmen wird.

Zunächst muss sichergestellt sein, dass alle Pakete der Paketgruppe base-devel installiert sind. Anderenfalls lassen sie sich durch den folgenden Befehl über Pacman installieren:
 $ sudo pacman -S base-devel  
Anschließend muss in ein Verzeichnis navigiert werden, in dem die Dateien heruntergeladen und gebaut werden sollen. In diesem Beispiel dient dafür das Verzeichnis "builds" innerhalb des Home-Ordners des Benutzers:
 $ cd ~/builds  

Herunterladen der Build-Dateien


Bei den Build-Dateien, die heruntergeladen werden müssen, handelt es sich um eine .tar.gz-Datei, die über die Webseite des AURs, bzw. dessen Suchfunktion gefunden werden kann. Die beiden Pakete, die für die Installation von Yaourt notwendig sind, sind package-query und yaourt selbst. Die jeweiligen Dateien können entweder jeweils über den Link "Tar-Archiv herunterladen" auf der rechten Seite der jeweiligen AUR-Seiteen heruntergeladen und anschließend in das zuvor gewählte Verzeichnis kopiert werden, oder per Konsole über die folgenden beiden Befehle unter Angabe einer URL bezogen werden:
 $ curl -0 https://aur.archlinux.org/packages/pa/package-query/package-query.tar.gz  
 $ curl -O https://aur.archlinux.org/packages/ya/yaourt/yaourt.tar.gz  

Bauen und installieren des Pakets


Die beiden heruntergeladenen Archive müssen zunächst folgendermaßen entpackt werden, wobei jeweils ein neuer Unterordner angelegt werden sollte:
 $ tar -xvzf package-query.tar.gz  
 $ tar -xvzf yaourt.tar.gz  
Über den cd-Befehl muss nun zunächst in das Verzeichnis des Paketes package-query gewechselt werden:
 $ cd package-query
Anschließend kann das Paket über folgenden Befehl gebaut werden:
 $ makepkg -s
Dabei sollte eine Datei mit der Endung ".pkg.tar.gz" angelegt worden sein, die anschließend über Pacman installiert werden kann:
 $ sudo pacman -U package-query-1.2-2-x86_64.pkg.tar.xz  
Mit der selben Vorgehensweise kann anschließend das Paket yaourt installiert werden. Zu dessen Installation muss das Paket package-query bereits installiert worden sein, da es als Abhängigkeit benötigt wird.
 $ cd ../yaourt  
 $ makepkg -s  
 $ sudo pacman -U yaourt-1.3-1-any.pkg.tar.xz  

Benutzung von Yaourt


Da Yaourt die selben Befehle nutzt wie Pacman, ist dessen Handhabung identisch. Im Folgenden soll die Installation eines Paketes aus dem AUR beispielhaft anhand des Programms "adb" (Android Debug Bridge), das die Kommunikation mit einem Android-Gerät erlaubt, gezeigt werden.

Zunächst kann der Name des zu installierenden Pakets mithilfe des folgenden Befehls ausfindig gemacht werden:
 $ yaourt -Ss android debug bridge  
Die Ausgabe dieses Befehls, der sowohl Paketnamen, als auch -beschreibungen durchsucht, lautet dabei wie folgt:
 aur/adb-git 20130531-1 [installed] (23)  
   adb (Android Debug Bridge CLI tool), an Android platform tool  
Anschließend kann das gefundene Paket mit dem Namen "adb-git" über den folgenden Yaourt-Aufruf installiert werden:
 yaourt -S adb-git  
Es wird dabei die Option angeboten, die jeweilige PKGBUILD-Datei zunächst in einem Editor zu öffnen, was über die Taste "n" in der Regel verneint werden kann. Nach einer Bestätigung über die "y"-Taste wird das Paket gebaut und anschließend über Pacman installiert.

Installation des Pakets "adb-git" über Yaourt (Klicken zum Vergrößern)

Mit Yaourt bietet sie unter Arch Linux ein eleganten Weg, über Source-Quellen bezogene, Programme zu installieren und anschließend zu aktualisieren. Es sollte jedoch beachtet werden, dass die zum Bauen verwendeten Skripte prinzipiell auch schädliche Befehle ausführen können, weshalb ein Yaourt- oder makepkg-Befehl niemals mit Root-Rechten ausgeführt werden sollte.

Weiterführende Links:

4. August 2013

Arch Linux: Umstieg von Ubuntu auf Arch Linux - Paketmanagement mit Pacman (Teil 5)

In den vorherigen Artikeln dieser Serie "Umstieg von Ubuntu auf Arch Linux" wurde oftmals der Arch Linux-eigene Paketmanager Pacman verwendet um Pakete bestimmte zu installieren. Da Pacman einer der wesentlichen Bestandteile und eine große Stärke von Arch Linux ist, soll ihm hiermit ein eigener Artikel gewidmet werden. Eine ausführlichere Dokumentation über das Programm, sowie eine Liste aller vorhandenen Befehle findet sich in diesem englischsprachigen Artikel des offiziellen Arch-Wikis.

Pacman ist ein Kommandozeilen-Werkzeug, das sich mit ein wenig Übung sehr unkompliziert und schnell bedienen lässt. Wie andere Paketmanager auch, ist Pacman in der Lage, Pakete aus Online- oder lokalen Repositories zu suchen, zu installieren, zu aktualisieren, zu überprüfen und zu entfernen. Eventuelle Abhängigkeiten werden dabei automatisch aufgelöst.

1 Verwendete Repositories festlegen


Die Programme, die durch Pacman gefunden und installiert werden können, sind verschiedenen Repositories zugeordnet. Neben den folgenden sechs offiziellen Repositories können auch benutzerdefinierte Repositories hinzugefügt werden.
  • [core] Enthält die Kernkomponenten von Arch Linux, die für dessen Betrieb unbedingt notwendig sind.
  • [extra] Enthält optionale Programme in der jeweils letzten stabilen Version.
  • [testing] Enthält die selben Programme wie [extra], jedoch in neueren, noch nicht ausreichend getesteten Versionen.
  • [community] Enthält weitere optionale Programme, die nicht von den Arch Linux-Entwicklern, sondern von sogenannten "Trusted Usern" betreut werden.
  • [multilib] Enthält 32-Bit Anwendungen, die auf 64-Bit Systemen installiert werden sollen.
  • [multilib-testing] Enthält die selben Anwendungen wie [multilib], jedoch in neueren, noch nicht ausreichend getesteten Versionen.
Nicht alle dieser offiziellen Repositories sind standardmäßig aktiviert. Um die aktuell verwendeten Repositories einzusehen und neue Repositories hinzuzufügen, muss die Konfigurationsdatei /etc/pacman.conf in einem Editor geöffnet werden. Diejenigen der offiziellen Repositories, die standardmäßig deaktiviert sind, wie z.B. [multilib], sind zwar in der Datei eingetragen, jedoch durch vorangestellte #-Zeichen auskommentiert. Um diese Repositories zu verwenden müssen diese Zeichen daher entfernt werden.

Durch Editieren der Datei können außerdem weitere benutzerdefiniert Repositories hinzugefügt werden, indem ein entsprechender Name und die Adresse des Servers hinzugefügt wird. Für die inoffiziellen Repositories der Unity-Desktopumgebung muss diese Ergänzung beispielsweise folgendermaßen lauten, wobei die Zeile "SigLevel = Optional" kennzeichnet, dass Paketsignaturen nicht zwingend erforderlich sein müssen:
 [unity]  
 SigLevel = Optional  
 Server = http://unity.xe-xe.org/$arch  

2 Wichtige Befehle


Die folgende Tabelle zeigt die wichtigsten Befehle für den Umgang mit Pacman. Eine komplette Übersicht über alle vorhandenen Befehle findet sich dagegen unter diesem Link.

pacman -S [package1] [package2]Installiert eines oder mehrere Pakete oder aktualisiert sie, wenn sich bereits installiert wurden.
pacman -Ss [package] Sucht bestimmte Paketnamen nach einem Schlüsselwort, das Teil des Paketnamens oder der Paketbeschreibung ist.
pacman -Syu Führt eine komplette System-Aktualisierung durch.
pacman -Su Aktualisiert alle installierten Pakete.
pacman -Syy Baut die lokale Datenbank neu auf und aktualisiert sie (notwendig nachdem neue Repositories hinzugefügt wurden).
pacman -R [package] Entfernt ein bestimmtes Paket ohne seine Abhängigkeiten zu entfernen.
pacman -Rss Entwernt ein Paket, seine Abhängigkeiten und deren Abhängigkeit, insofern sie nicht von anderen Paketen benötigt werden.
pacman -U [package-file] Installiert ein lokales Paket aus einer Datei.
pacman -Qdt Zeigt verwaiste Pakete an, die als Abhängigkeiten anderer Pakete mitinstalliert wurden, aber nicht mehr benötigt werden.
pacman -Qm Zeigt alle Pakete an, die sich in keinem aktuell aktivierten Repository befinden.

Um den Cache des Paketmanagers zu leeren existiert darüber hinaus noch der Befehl pacman -Scc und um heruntergeladene Pakete und Repositories, die nicht mehr benötigt werden zu löschen, kann der Befehl pacman -Sc genutzt werden. Außerdem kann die Pacman-Datenbank optimiert werden, indem durch den Befehl pacman-optimize alle Paketdateien neu im Dateisystem angeordnet werden.

Weiterführende Links:

26. Januar 2013

Fedora: Paketmanagement mit YUM

Yum (Yellow Dog Updater Modified) ist der Paketmanager, der unter der Linux-Distribution "Fedora" zum Einsatz kommt. Über das Konsolen-Frontend können RPM-Pakete (RPM Package Manager, früher Red Hat Package Manager) gesucht, installiert, aktualisiert und deinstalliert werden. Die wichtigsten Befehle hierzu sollen im Folgenden kurz vorgestellt werden. Eine vollständige Dokumentation findet sich unter http://www.fedorawiki.de/index.php/Yum.

Pakete suchen: 
Der folgende Befehl kann zur Suche von Paketen nach einem bestimmten Schlüsselwort genutzt werden.
 yum search Suchwort  
Dabei werden sowohl Paketnamen, als auch Paketinformationen durchsucht. Sollen nur Pakete mit einem bestimmten Namen ausgegeben werden, kann der unten stehende Befehl verwendet werden.
 yum list *Suchwort*  
Die *-Zeichen vor und nach dem Suchwort bewirken, dass davor und danach noch weitere Buchstaben stehen dürfen. Der Suchbegriff kann auf diese Weise durch reguläre Ausdrücke näher definiert werden.
Soll lediglich die Paketinformation, die nähere Informationen über ein Paket enthält ausgegeben werden, so kann der folgende Befehl genutzt werden.
 yum info Paketname  
Pakete installieren:
Zur Installation eines bestimmten Paketes aus den Repositories dient der folgende Befehl.
 yum install Paketname  
Handelt es sich stattdessen um ein lokal vorliegendes Paket, muss stattdessen dieser Befehl genutzt werden:
 yum localinstall Verzeichniszweig/Name.rpm  
Pakete aktualisieren:
Um zu überprüfen, ob eine Aktualisierung für ein bestimmtes, bereits installiertes Paket vorhanden ist und diese eventuell zu installieren, kann folgender Befehl genutzt werden.
 yum update Paketname  
Wird der Befehl, wie unten dargestellt, ohne die Angabe eines Paketnamens ausgeführt, so werden alle installierten Pakete aktualisiert.
 yum update  
Wenn lediglich überprüft werden soll, für welche Pakete Updates vorliegen, ohne diese automatisch zu installieren, kann folgender Befehl genutzt werden. Er listet alle installierten Pakete auf, für die Aktualisierungen gefunden werden konnten.
 yum check-update  
Pakete entfernen:
Um ein, auf dem System installiertes, Paket wieder zu entfernen, kann folgender Befehl aufgerufen werden. Er deinstalliert das angegebene Paket, sowie alle damit verbundenen Abhängigkeiten.
 yum remove Paketname