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

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:

3. Juni 2013

Nexus 10: CyanogenMod auf verschlüsseltem Gerät updaten

Das CustomROM "CyanogenMod" bietet seit Version 10 die Möglichkeit, vorhandene Updates automatisch herunterzuladen, so dass diese anschließend installiert werden können. Unter dem Nexus 10 oder ähnlichen Geräten, die über keine externe SD-Karte verfügen, kann das Einspielen der Updates  jedoch zu Problemen führen, falls das Gerät mittels der entsprechenden Android-Funktion verschlüsselt wurde. Im Folgenden soll diese Problematik erläutert und eine Möglichkeit zur Abhilfe gezeigt werden.

Die Update-Überprüfung von CyanogenMod 10 in den Android-Systemeinstellungen (Klicken zum Vergrößern)

Wenn ein Update zur Verfügung steht, wird das entsprechende zip-Archiv, dass die dafür notwendigen Dateien enthält, durch den Update-Mechanismus heruntergeladen und unter dem Verzeichnis /sdcard/cmupdater/ gespeichert. Wenn das Gerät über keine externe SD-Karte verfügt, handelt es sich bei diesem Verzeichnis lediglich um eine virtuelle Partition. Wenn das Update durch den Benutzer zur Installation ausgewählt wurde, wird das Gerät neu gestartet und in den Recovery-Modus (in diesem Post wird davon ausgegangen, das es sich hierbei um "ClockworkMod Recovery" handelt) gebootet um die Dateien des entsprechenden Archivs zu entpacken und zu installieren. Falls das Dateisystem des Geräts jedoch verschlüsselt wurde, steht die virtuelle SD-Karte, die das Archiv enthält, nicht zur Verfügung, da das zugehörige Verzeichnis auf dem verschlüsselten Dateisystem liegt und zu diesem Zeitpunkt keine Möglichkeit zu dessen Entschlüsselung besteht. Das Updaten des Geräts scheitert demzufolge, da die notwendige Datei nicht gefunden werden kann.

Die elegante Möglichkeit, die CyanogenMod-Installation von dem jeweiligen Gerät aus herunterzuladen und zu installieren, ist damit ausgeschlossen, falls das Gerät verschlüsselt werden soll. Das Einspielen von Updates muss dann über eine USB-Verbindung manuell gesteuert werden, wozu folgende Schritt nötig sind:
  1. Zunächst muss die zu installierende CyanogenMod-Version auf dem Rechner heruntergeladen werden.
  2. Anschließend muss das Android-Gerät durch Halten der Power-, sowie der beiden Lautstärke-Tasten in den Bootloader-Modus neu gestartet werden.
  3. Über die Lautstärke-Tasten navigiert man anschließend zum Menüpunkt "RECOVERY MODE", den man durch Drücken der Power-Taste auswählt.
  4. Der Recovery-Modus wird anschließend gestartet. In dessen Hauptmenü wählt man dann die Option "install zip from sideload".
  5. Das Gerät muss nun per Micro-USB mit dem Rechner verbunden werden.
  6. Über die Kommandozeile kann anschließend aus dem Verzeichnis, das das heruntergeladene zip-Archiv enthält an das Android-Gerät übertragen werden. Hierzu genügt folgender Befehl, wobei der Name der zip-Datei natürlich angepasst werden muss:
     adb sideload cm-10.1-20130603-NIGHTLY-manta.zip  
Das Update sollte darauf hin eingespielt werden und das Gerät kann anschließend neu gestartet werden.