Sprungmarken

Videoportal der FAU

Die letzten Meldungen

Novell Serverwartung MOLMED am Dienstag, 22 Mai von 8 Uhr bis ca. 11 Uhr

16. Mai 2012

Am Dienstag, 22 Mai findet von 8 Uhr bis voraussichtlich 11 Uhr eine dringende Serverwartung des Novell-Servers “MOLMED” statt. In der genannten Zeit ist der Zugriff auf die Volumes “USERTEMP” und “SYS” nicht möglich.
Weiterlesen...

Terminänderung – Vortrag “Einführung von fau.de-Maildomains und neuen Mail-/Groupware-Komponenten für die FAU” verschoben

15. Mai 2012

Aufgrund von Terminüberschneidungen mussten im Rahmen der Vorlesung “PRAXIS DER DATENKOMMUNIKATION” (Netzwerkausbildung) Termine getauscht werden.
Weiterlesen...

RRZE-Betrieb am „Berch“-Dienstag

15. Mai 2012

Am Dienstag, den 29.05.2012, wird das RRZE ab 12 Uhr geschlossen.
Weiterlesen...

Meldungen nach Thema

 

Smart Package Manager (SmartPM)

Was wird eingesetzt?

Da, das bisher verwendete APT nicht mehr weiterentwickelt wird, greift das RRZE in Zukunft auf den neuen Paketmanager SmartPM zurück. SmartPM arbeitet mit fast allen Distributionen (APT, APT-RPM, YUM, URPMI, usw.) zusammen und kann mit DEB- und RPM-Pakete umgehen. Neben einer Kommandozeilen-Version liefert SmartPM auch eine GUI (Benutzeroberfläche) mit.

Warum ausgerechnet das?

SmartPM kann wie APT vollkommen von der Kommandozeile aus bedient werden und ermöglicht dadurch die vollautomatische Installation von Paketen und Patches. Erklärtes Ziel des Projektes war es die Auflösung von Abhängigkeiten zwischen Paketen noch besser als im Vorbild APT zu realisieren.

Letztendlich ist es ihnen überlassen, ob sie diese Update-Möglichkeit nutzen, oder ob sie die distributionseigenen Mechanismen verwenden - aber Updates sollten in jedem Fall regelmäßig (und wenn möglich automatisiert) eingespielt werden.

Wie funktioniert SmartPM?

Je nach verwendetem Repository-Typ liegen die Informationen über vorhandene Pakete und Patches in unterschiedlicher Form auf den Servern. SmartPM lädt diese Daten in einen lokalen Cache um diesen in einem weiteren Schritt auf das Vorhandensein neuerer Pakete oder Patches zu analysieren. Smart ermöglicht den Transfer der Pakete mit FTP, HTTP, HTTPS und SCP. Falls ein weiteres Paket installiert ist (Pycurl), dann können die Pakete auch via FTPS, Telnet, Dict und LDAP übertragen werden.

Wo bekomme ich SmartPM her?

Fertige RPMs gibt's hier:

Sie benötigen nur eine der dort verfügbaren Dateien um den Patch-Dienst nutzen zu können:

  • smart-version.arch.rpm

Für das graphische Frontend benötigen sie noch folgende Datei:

  • smart-gui-version.arch.rpm

Diese werden einfach mit

linux~ # rpm -ihv smart-version.arch.rpm 
	

bzw.

linux~ # rpm -ihv smart-gui-version.arch.rpm 
	

installiert.
Das restlichen Paket

  • smart-debuginfo-version.arch.rpm

wird nur von Entwicklern (smart-debuginfo-version.arch.rpm) benötigt.

Das andere Paket

  • ksmarttray-version.arch.rpm

dient zum Einbinden eines Icons in den Desktopmanager KDE.

Und woher nimmt Smart die Patches?

Die Patches werden von SuSE bereitgestellt und auf unserem FTP-Server gespiegelt um aus dem Universitätsnetz einen schnelleren Zugriff zu ermöglichen.

Der Zugriff ist nicht beschränkt, d.h. auch Heimanwender können mit der gleichen Konfiguration diese Updates auf ihrem Rechner einspielen.

Was muß ich wo konfigurieren?

Eine Möglichkeit SmartPM zu konfigurieren besteht, darin vordefinierte Kanäle in /etc/smart/channels/*.channel bereitzustellen. Beim Aufruf von Smart fragt dieses dann nach, ob die dort aufgelisteten Kanäle aktiviert werden sollen.

Hier eine Beispiel-Konfiguration:

[openSuSE-10.0-inst-source]
name = Installationsquellen für OpenSuSE 10.0 
baseurl = ftp://ftp.rrze.uni-erlangen.de/pub/mirrors/opensuse/distribution/SL-10.0-OSS/inst-source/
type = yast2
	

Dazu noch eine kurze Erläuterung:

In der ersten Zeile wird ein Alias definiert, unter der der Channel definiert wird. Die zweite Zeile enthält den eigentlichen Namen des Channels. Unter baseurl steht der Pfad auf dem FTP-Server. Der Punkt type definiert die Art des Repositories und nach welchen Metadaten Smart im Netz sucht.

Hier sind Beispielkonfigurationen. Diese Konfiguration funktioniert für x86- und x86_64-Architektur

Via FTP/HTTP

Der Zugriff über FTP bzw. HTTP Protokoll ist sehr einfach zu konfigurieren, da auf dem Client nur eine korrekte Netzkonfiguration vorhanden sein muss.

Eine Kleinigkeit sollte man jedoch bei diesen beiden Zugriffsmethoden bedenken: Weder FTP noch HTTP bieten die Möglichkeit direkt auf Dateien zuzugreifen. Bevor Smart damit arbeiten kann, müssen diese auf der lokalen Platte zwischengelagert werden, was unter Umständen erheblich Plattenplatz beanspruchen kann. Nach einem erfolgreichen Update sollte man deswegen dafür sorgen, dass zumindest die alten Update-Pakete wieder gelöscht werden. Das erledigt das Kommando:

linux~ # smart clean
	

Wie komme ich an die Updates?

Mit Hilfe von

linux~ # smart update
	

wird zuerst die lokale Datenbank der verfügbaren Pakete auf den aktuellen Stand gebracht. Anschließend können Sie mit

linux~ # smart upgrade
	

evtl. vorhandene neuere Pakete einspielen.

Bestimmte Pakete nicht updaten

In manchen Fällen ist es sinnvoll oder nötig einige Pakete nicht zu aktualisieren. Bei Smart kann man solche Pakete mit dem folgenden Befehl von allen Updates ausnehmen:

linux~ # smart flag --set lock pkgname
	

Bestimmte Paketversionen installieren

Mit Hilfe des folgenden Kommandos lassen sich die verschiedenen verfügbaren Versionen eines Pakets anzeigen:

linux~ # smart info paketname | grep ^Version
	

Anschließend kann dann die gewünschte Version installiert werden:

linux~ # smart install paketname-versionsnummer
	

Smart kann auch RPM-Pakete installieren, die noch nicht heruntergeladen wurden. Hierfür einfach die URL angeben.

linux~ # smart install http://some.url/some/path/somepackage.rpm
	

Mehrere Mirrors verwenden

Um den Ausfall eines Patch-Servers zu überbrücken, kann man sich Mirrors einrichten. Bei smart erfolgt das auf Basis der URLs, die in den Channels verwendet werden:

linux~ # smart mirror --add http://ftp.uni-erlangen.de/pub/mirrors/opensuse/ http://ftp5.gwdg.de/pub/opensuse/
    

Migration von apt zu smart

Der Umstieg beim Client von apt zu smart ist relativ einfach. Die Konvertierung der apt Konfiguration hin zu smart erledigt ein kleines Skript aptrpm2smart.

Automatische Updates?

Um den ganzen Prozeß zu vereinfachen bietet es sich an die Updates automatisch laufen zu lassen. Dafür braucht es nur ein kleines Skript, welches per cron in regelmäßigen Abständen aufgerufen werden soll. Um es z.B. einmal täglich laufen zu lassen kopiert man es nach /etc/cron.daily (Skript muss ausführbar sein).

Die Kurzversion sieht etwa so aus:

#!/bin/sh
/usr/bin/smart update
/usr/bin/smart upgrade -y
	

Eine ausführliche Version kann hier heruntergeladen werden autosmart.sh.

Vielen Danke geht hier an die EasyLinux-Mailingliste, die das Script weiter verbessert haben.

Der Updatestatus wird via Email verschickt, deswegen sollte die Email-Adresse am Anfang des Skriptes geändert werden. Die Emails werden nur verschickt, wenn das Mailsystem "mail" konfiguriert ist.

Wenn man einen lokalen SMTP-Server bei "mail" konfiguriert hat, kann man eine lokale Email-Adresse verwenden. Bei Verwendung des FAU-Mailrelays sollte eine globale Email-Adresse verwendet werden.

RPMs von Fremdherstellern

Nicht jede Software ist in den Smart-Channels verfügbar, und so muss man manchmal die RPM Pakete von Fremdherstellern von Hand installieren. Oftmals treten dabei Abhängigkeiten auf, die erst durch die aufwändige Installation der fehlenden Pakete bereinigt werden können.

Einfacher geht es so: Man versucht das Paket ohne Beachtung der Abhängigkeiten zu installieren (dabei helfen die RPM-Optionen --nodeps und --force):

linux~ # rpm -ihv --nodeps --force <Paketname>
	

Ein nachfolgender Aufruf von

linux~ #smart check
	

installiert danach die fehlenden Pakete (soweit vorhanden) oder deinstalliert das Paket wieder.

Letzte Änderung: 13. Maerz 2012, Historie

zum Seitenanfang

Startseite | Kontakt | Impressum

RRZE - Regionales RechenZentrum Erlangen, Martensstraße 1, D-91058 Erlangen | Tel.: +49 9131 8527031 | Fax: +49 9131 302941

Inhaltenavigation

FAU - Friedrich-Alexander-Universität
UnivIS - Informationssystem der Friedrich-Alexander-Universität Erlangen Nürnberg

Zielgruppennavigation

  1. Studierende
  2. Beschäftigte
  3. Einrichtungen
  4. IT-Beauftragte
  5. Presse & Öffentlichkeit