home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 May / Chip_2000-05_cd2.bin / docu / ascii / suselxde / slxde-15.txt < prev    next >
Text File  |  2000-02-29  |  52KB  |  991 lines

  1.         Teil VII
  2.  
  3. SuSE Linux: Update und
  4.     Besonderheiten
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.                           399
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.                                                                         Kapitel 15
  23.                                Update des Systems und
  24.                                                   Paketverwaltung
  25.  
  26. 15.1 Update des SuSE Linux
  27.  
  28. SuSE Linux bietet die M÷glichkeit, ein bestehendes System zu aktualisieren,
  29. ohne eine komplette Neuinstallation vornehmen zu mⁿssen. Dabei muss un-
  30. terschieden werden zwischen der Aktualisierung einzelner Pakete und einem
  31. kompletten Update des Systems.
  32. Es ist ein bekanntes PhΣnomen, dass Software von Version zu Version
  33.  wΣchst". Deshalb empfiehlt es sich vor dem Update mit df nachzuschauen,
  34. wie sehr die einzelnen Partitionen bereits ausgelastet sind. Wenn Sie den
  35. Eindruck haben, es k÷nnte knapp werden, dann fⁿhren Sie bitte unbedingt
  36. ein Datenbackup durch und partitionieren Sie neu. Es kann kein genereller
  37. Tipp gegeben werden, wie viel Platz jeweils im Einzelnen ben÷tigt wird ¡
  38. der Platzbedarf ist abhΣngig von der Art der bestehenden Partitionierung, von
  39. der ausgewΣhlten Software und von dem Wechsel von welcher Version auf
  40. das vorliegende SuSE Linux 6.4.
  41.  
  42.  Es ist empfehlenswert, auf der CD die Datei LIESMICH (engl.
  43.  README) bzw. unter DOS/Windows die Datei LIESMICH.DOS (engl.
  44.  README.DOS) zu lesen; dort notieren wir zusΣtzliche ─nderungen, die
  45.  nach der Drucklegung des Handbuchs vorgefallen sind!
  46.  
  47. 15.1.1 Vorbereitungen
  48.  
  49. Vor Beginn eines Updates sollten sicherheitshalber die alten Konfigurations-
  50. dateien auf ein separates Medium (Streamer, Wechselplatte, Disketten, ZIP-
  51. Laufwerk) kopiert werden. In erster Linie handelt es sich um die Dateien
  52. in /etc; weiterhin sind Konfigurationsdateien unter /var/lib zu kon-
  53. trollieren (z. B. fⁿr News oder den XDM). Zudem kann es nichts schaden,
  54. die aktuellen Benutzerdaten unter /home (die HOME-Verzeichnisse) auf ein
  55. Backup-Medium zu schreiben.
  56. Bevor Sie den Update-Vorgang einleiten, notieren Sie sich die Rootpartition;
  57. mit dem Kommando
  58.    erde: # df /
  59.  
  60.                                                                                  401
  61.  
  62.  
  63.  
  64. 15. Update des Systems und Paketverwaltung
  65.  
  66.                k÷nnen Sie den GerΣtenamen Ihrer Rootpartition herausfinden; in diesem Fall
  67.                wΣre /dev/sda3 die zu notierende Root-Partition; vgl. Ausgabe 15.1.1.
  68.  
  69.                  Filesystem 1024-blocks Used Available Capacity Moun-
  70.                  ted on
  71.                  /dev/sda3          4167999 3253471         698856         82%     /
  72.                  /dev/sda1                 7496    1311          5785      18%     /boot
  73.  
  74.                                     Ausgabe 15.1.1: ▄berblick mit df
  75.  
  76.                Denn die Ausgabe zeigt, dass die Partition /dev/sda3 ist unter / in das
  77.                Dateisystem eingehangen ist ( gemountet" ist).
  78.  
  79.                 Vor einem PostgreSQL-Update (Paket postgres) empfiehlt es sich
  80.                 in der Regel, die Datenbanken zu  dumpen"; vgl. Manual-Page von
  81.                 pg_dump (man pg_dump). Dies ist natⁿrlich nur dann erforderlich,
  82.                 wenn Sie PostgreSQL vor dem Update tatsΣchlich benutzt haben.
  83.  
  84.                Nun mⁿssen Sie noch entscheiden, ob Sie mit dem textorientieren YaST oder
  85.                mit dem grafischen YaST2 updaten wollen. Die Entscheidung ist einfach:
  86.                Wenn Sie ein SuSE Linux vor Version 6.0 erneuern m÷chten ¡ in einem
  87.                solchen Fall ist nehmen Sie YaST und gehen vor wie in Abschnitt 15.1.3
  88.                beschrieben. Version 6.0 und spΣter kann mit YaST2 erneuert werden.
  89.  
  90.                15.1.2 Update mit YaST2
  91.                Nach den in Abschnitt 15.1.1 auf der vorherigen Seite genannten Vorarbeiten
  92.                booten Sie zunΣchst wie im Installationskapitel 2.1 auf Seite 15 beschrieben.
  93.  
  94.                 Sie k÷nnen ein Update mit YaST2 nur durchfⁿhren, wenn Sie ein SuSE
  95.                 Linux 6.x erneuern wollen. Bei Σlteren Versionen (z. B. SuSE Linux 5.3)
  96.                 ist YaST1 der richtige Weg; vgl. Abschnitt 15.1.3.
  97.  
  98.                Wenn Sie bei Abschnitt 2.1.7 auf Seite 19 angelangt sind, wΣhlen Sie die
  99.                Option `Update'.
  100.  
  101.                15.1.3 Update mit YaST1
  102.  
  103.                Das Basissystem erneuern
  104.                Da beim Aktualisieren des Grundsystems die zentralen Bestandteile des Sys-
  105.                tems (wie z. B. Bibliotheken) ausgetauscht werden mⁿssen, kann diese Auf-
  106.                gabe nicht im normalen Betrieb, d. h. aus dem bereits laufenden Linuxsystem
  107.                heraus, erledigt werden.
  108.                Sie mⁿssen also die Update-Umgebung starten ¡ im Normalfall mit der mit-
  109.                gelieferten Diskette ( Bootdisk") oder durch Eingabe von manual am Boot-
  110.                prompt des Kernels, wie in Abschnitt 2.2.1 auf Seite 28 ausfⁿhrlich beschrie-
  111.                ben.
  112.                Im wesentlichen sind die folgenden Schritte notwendig:
  113.  
  114. 402
  115.  
  116.  
  117.  
  118.                                                                 15.1. Update des SuSE Linux
  119.  
  120. 1. Direkt im Anschluss an das Booten des Kernels von der  Bootdisk" oder
  121.     der Update-CD wird automatisch linuxrc gestartet.
  122. 2. Im linuxrc sind im Hauptmenⁿ unter dem Menⁿpunkt `Einstellung-
  123.     en' Sprache, Bildschirm und Tastatur festzulegen und mit `Ok' zu be-
  124.     stΣtigen.
  125. 3. ▄ber den Menⁿpunkt `Kernel-Module' mⁿssen ggf. die notwendi-
  126.     gen Hardware-Treiber geladen werden (zum genauen Vorgehen vgl. die
  127.     linuxrc-Beschreibung auf Seite 424).
  128. 4. Es kann ⁿber die Menⁿpunkte `Installation / System star-
  129.     ten' und `Installation starten' zur Auswahl des Quellmedi-
  130.     ums ⁿbergegangen werden (vgl. auf Seite 426).
  131. 5. Von linuxrc wird die Installationsumgebung geladen und ¡ wie ausge-
  132.     wΣhlt ¡ wird YaST gestartet.
  133.  
  134. Im Eingangsmenⁿ von YaST wΣhlen Sie bitte den Punkt `Bestehendes
  135. Linux-System updaten'; YaST versucht nun, die Root-Partition her-
  136. auszufinden und bietet das Ergebnis zur Auswahl bzw. BestΣtigung an; in
  137. der angezeigten Liste geben Sie Ihre Root-Partition an, wie oben notiert (Bei-
  138. spiel: /dev/sda3). So beauftragen Sie YaST, die  alte" fstab einzulesen,
  139. die sich auf dieser Partition befindet; YaST mountet die dort eingetragenen
  140. Dateisysteme. Nun bitte `Weiter' wΣhlen.    
  141. Nach der Rⁿckkehr in das Hauptmenⁿ mit  Esc  ist der Punkt `System
  142. updaten' an der Reihe (vgl. Abschnitt 3.2 auf Seite 81). Ihr bisheriges
  143. System wird von YaST analysiert und es wird das Ergebnis der Analyse
  144. angezeigt.
  145. Anschlie▀end werden die zentralen Bestandteile Ihres Systems aktualisiert,
  146. wobei YaST automatisch Sicherungen von Dateien anlegt, die seit der letz-
  147. ten Installation von Ihnen verΣndert wurden; weiterhin werden alte Konfi-
  148. gurationsdateien ggf. mit der Endung .rpmorig bzw. .rpmsave gesi-
  149. chert (vgl. Abschnitt 15.3.1 auf Seite 411); der Vorgang der Installation bzw.
  150. des Updates wird in /var/adm/inst-log/installation-* proto-
  151. kolliert und ist jederzeit nachlesbar.
  152.  
  153. Update des restlichen Systems
  154. Ist das Basissystem aktualisiert, gelangen Sie in einen speziellen Update-Mo-
  155. dus von YaST. Dort k÷nnen Sie nach Ihren Wⁿnschen den Rest des Systems
  156. updaten.
  157. YaST baut zwei Listen auf, in denen Ihnen diejenigen Pakete angeboten wer-
  158. den, von denen YaST selbstΣndig erkennen kann, dass ein Update sinnvoll
  159. und m÷glich ist, weil sich z. B. ein abhΣngiges Paket geΣndert hat oder das
  160. neue Paket eine h÷here Versionsnummer hat. In der zweiten Liste werden Ih-
  161. nen die Pakete angezeigt, in denen das nicht so ohne weiteres m÷glich ist ¡
  162. etwa weil das alte Paket noch ohne Versionsinformation gespeichert war.
  163. In diesen beiden Listen k÷nnen Sie wahlfrei Pakete zum Update an- und ab-
  164. wΣhlen. Wenn Sie das Update starten, werden die selektierten Pakete durch
  165. die jeweils neue Version ersetzt, wobei wiederum alle Dateien gesichert wer-
  166. den, die sich seit der letzten Installation verΣndert haben.
  167.  
  168.                                                                                        403
  169.  
  170.  
  171.  
  172. 15. Update des Systems und Paketverwaltung
  173.  
  174.                Nachdem diese Aufgabe erledigt ist, mⁿssen Sie den Vorgang wie eine Erst-
  175.                installation abschlie▀en. Unter anderem sollten Sie einen neuen Kernel aus-
  176.                wΣhlen; YaST wird diese Option anbieten.
  177.  
  178.                 Wenn Sie es gewohnt sind, mit loadlin zu booten, mⁿssen Sie den neu-
  179.                 en Kernel und eventuell Ihr initrd natⁿrlich auch in das loadlin-
  180.                 Verzeichnis Ihrer DOS-Partition kopieren!
  181.  
  182.                Wenn Sie nicht m÷chten, dass nach dem Update, wenn das System in seinen
  183.                normalen Betriebsmodus geht (zum Standard-Runlevel vgl. Abschnitt 17.2
  184.                auf Seite 440) und als erstes automatisch YaST noch einmal gestartet wird,
  185.                um die durchs Update vorbereiteten Ma▀nahmen abzuschlie▀en, dann geben
  186.                Sie am Bootprompt ein:
  187.                   NO_AUTO_SETUP=true
  188.                Sinn macht NO_AUTO_SETUP=true dann, wenn wider Erwarten bei die-
  189.                sem (erneuten) Hochlauf des Systems Probleme auftreten. Derartige Proble-
  190.                me k÷nnen vorkommen, wenn Sie essentielle Teile des Linux-Systems ⁿber
  191.                eine PCMCIA-SCSI-Karte einbinden. Um gleichwohl die vorbereitete Kon-
  192.                figurationsarbeit durchzufⁿhren, k÷nnen folgende Schritte gegangen werden:
  193.                 1. Beim Booten als Option folgenden Parameter angeben:
  194.                       NO_AUTO_SETUP=true
  195.  
  196.                 2. Als `root' einloggen und einmal yast -nomenu starten, um even-
  197.                   tuelle Konfigurationen durchfⁿhren zu lassen.
  198.                 3. Als `root' das Skript /lib/YaST/bootsetup.conf starten und
  199.                   durchlaufen lassen.
  200.                Danach ist es genauso, als ob es normal durchgelaufen wΣre.
  201.                Der erfahrene Linux-Anwender wird in einem solchen Fall vielleicht lieber
  202.                gar nicht erst in den Standard-Runlevel wollen, sondern mittels single am
  203.                Bootprompt direkt in den Single-User-Mode (Runlevel 1) verzweigen.
  204.  
  205.                15.1.4 Aktualisieren einzelner Pakete
  206.                UnabhΣngig von einem Gesamt-Update k÷nnen Sie selbstverstΣndlich jeder-
  207.                zeit einzelne Pakete aktualisieren.
  208.                In der Paketauswahl von YaST (siehe Abschnitt 3.4.3 auf Seite 94 ff.) k÷nnen
  209.                Sie nach Herzenslust schalten und walten. WΣhlen Sie ein Paket zum Update
  210.                aus, das fⁿr den Betrieb des Systems eine zentrale Rolle spielt, werden Sie
  211.                von YaST gewarnt. Derartige Pakete sollten im speziellen Update-Modus ak-
  212.                tualisiert werden. Beispielsweise enthalten etliche Pakete  shared libraries",
  213.                die m÷glicherweise zum Zeitpunkt des Updates von laufenden Prozessen ver-
  214.                wendet werden. Ein Update im laufenden System wⁿrde daher dazu fⁿhren,
  215.                dass diese Programme nicht mehr korrekt funktionieren k÷nnen.
  216.  
  217.                15.2 Von Version zu Version
  218.                In den folgenden Abschnitten wird aufgelistet, welche Details sich von Ver-
  219.                sion zu Version geΣndert haben. In dieser ▄bersicht erscheint z. B., ob grund-
  220.  
  221. 404
  222.  
  223.  
  224.  
  225.                                                                15.2. Von Version zu Version
  226.  
  227. legende Einstellungen neu vorgenommen oder ob Konfigurationsdateien an
  228. andere Stellen verschoben wurden oder ob alt-bekannte Programme ein neu-
  229. es Verhalten an den Tag legen. Es werden jedoch nur die Dinge genannt, die
  230. den Benutzer bzw. den Administrator bei der tΣglichen Arbeit unmittelbar be-
  231. rⁿhren. Die Liste ist keinesweg ersch÷pfend und vollstΣndig. Im Folgenden
  232. wird auf die SDB verwiesen, die auch im Paket sdb_de, Serie doc enthalten
  233. ist (vgl. Abschnitt 1.4.1 auf Seite 7).
  234. Probleme und Besonderheiten der jeweiligen Version werden bei Bekannt-
  235. werden auf dem WWW-Server ver÷ffentlicht; vgl. die unten angegebenen
  236. Links. Wichtige Updates einzelner Pakete sind ⁿber http://www.suse.
  237. de/de/support/download/updates/ zugΣnglich.
  238.  
  239. 15.2.1 Von 4.x auf 5.0
  240.  
  241. Probleme und Besonderheiten:
  242. http://sdb.suse.de/sdb/de/html/maddin_bugs5.html.
  243.  
  244.  * Paketmanagement von TGZ auf RPM umgestellt (vgl. Abschnitt 15.3 auf
  245.     Seite 410).
  246.  * Neue Bash (vgl. in der SDB die Artikel http://sdb.suse.de/
  247.     sdb/de/html/maddin_bash2.html und http://sdb.suse.
  248.     de/sdb/de/html/maddin_inputrc.html).
  249.  
  250. 15.2.2 Von 5.0 auf 5.1
  251.  
  252. Probleme und Besonderheiten:
  253. http://sdb.suse.de/sdb/de/html/maddin_bugs51.html.
  254.  
  255.  * LILO Fall 1: Die Loader any_b.b und any_d.b sind obsolet (vgl. auf
  256.     Seite 124).
  257.  * LILO Fall 2: Bei Boot-Schwierigkeiten im Zusammenhang mit dem
  258.     SCSI-Hostadapter Adaptec 2940 (verschiedene Modelle) sollte man die
  259.     Option linear in der /etc/lilo.conf nun nicht mehr setzen (vgl.
  260.     auf Seite 124).
  261.  *  Optionale" Software (z. B. KDE oder Applixware ) wird unter /opt
  262.     installiert (vgl. Abschnitt 2.8 auf Seite 68).
  263.  * Die Paketbeschreibungen werden aus Platzgrⁿnden nicht mehr im Buch
  264.     abgedruckt; sie sind auf der ersten CD im Verzeichnis /docu zu fin-
  265.     den: auf Deutsch als pkg_German.dvi und pkg_German.ps und
  266.     auf Englisch als pkg_English.dvi und pkg_English.ps.
  267.  * Der Anhang  Hardwarevoraussetzungen" ist nicht mehr im Handbuch
  268.     enthalten; als Alternative gibt es die  CDB ¡ Komponenten-Datenbank"
  269.     (engl. Components Database); verfⁿgbar online unter http://cdb.
  270.     suse.de/.
  271.  * Die m4-Dateien von Sendmail liegen unter /usr/share/sendmail.
  272.  * Die Quellen sind als  Source RPM"s gepackt (vgl. in der SDB http:
  273.     //sdb.suse.de/sdb/de/html/ke_source-rpm.html).
  274.  
  275.                                                                                        405
  276.  
  277.  
  278.  
  279. 15. Update des Systems und Paketverwaltung
  280.  
  281.                15.2.3 Von 5.1 auf 5.2
  282.                Probleme und Besonderheiten:
  283.                http://sdb.suse.de/sdb/de/html/maddin_bugs52.html.   
  284.                 * YaST : Die Serie ALL ist aus der `Serien-Auswahl' heraus mit  F4  
  285.                   (= `Umsortieren') zu erreichen (vgl. Abschnitt 3.4.3 auf Seite 94).
  286.                 * Die XSuSE-Server sind in die offiziellen XFree86-Quellen eingeflossen;
  287.                   verwenden Sie also jetzt wieder jeweiligen Standard-Server der Serie
  288.                   x. Ausnahme: XSuSE_Elsa_GLoria (Paket xglint), der fⁿr Glint-
  289.                   bzw. Permedia-basierte Grafikkarten.
  290.                 * Die X-Server werden aus Sicherheitsgrⁿnden nicht mehr suid root in-
  291.                   stalliert (also ohne das s-Bit). Das X Window System ist deshalb entweder
  292.                   ⁿber den Xwrapper via startx oder ⁿber einen Displaymanager (xdm
  293.                   oder kdm) zu starten.
  294.                 * Der wuftpd wird nun als Standard-FTP-Server in der /etc/inetd.
  295.                   conf eingerichtet (vgl. in der SDB http://sdb.suse.de/sdb/
  296.                   de/html/grimmer_ftpd.html); vgl. jetzt auch Abschnitt 15.2.8
  297.                   auf Seite 407.
  298.                 * Die Optionen von ps werden nicht mehr durch `-' eingeleitet; bitte
  299.                   passen Sie Ihre Shellskripten an (vgl. in der SDB http://sdb.suse.
  300.                   de/sdb/de/html/maddin_ps52.html).
  301.                 * SuSEconfig (vgl. Abschnitt 17.5 auf Seite 444) versteht einige Optionen,
  302.                   die helfen, die Arbeit zu beschleunigen.
  303.  
  304.                15.2.4 Von 5.2 auf 5.3
  305.                Probleme und Besonderheiten:
  306.                http://sdb.suse.de/sdb/de/html/bugs53.html.
  307.  
  308.                 * Eine SuSE LinuxErstinstallation bzw. ein -Update lΣuft  linear" ab;
  309.                   wer die  alte" Installationsprozedur mit zahlreichen Eingreifm÷glich-
  310.                   keiten verwenden m÷chte, der hat beim YaST-Eingangsbildschirm den
  311.                   Experten-Modus anzuwΣhlen (vgl. Abbildung 2.6 auf Seite 33).
  312.                 * ZusΣtzlich zur Bootdiskette wird ein modules-Disketten-Image mit zu-
  313.                   sΣtzlichen Modulen angeboten ¡ bei  exotischer" Hardware kann darauf
  314.                   zurⁿckgegriffen werden; vgl. Abschnitt 16.3 auf Seite 423.
  315.                 * Alle X-Server sind ⁿbersichtlich geordnet in der Serie xsrv (X-Server)
  316.                   zu finden, nicht mehr in Serie x.
  317.                 * Fⁿr neue Grafikkarten bzw. -chips stehen die von SuSE entwickelten
  318.                   X-Server XFCom_3DLabs (Paket x3dlabs; frⁿher XSuSE_Elsa_
  319.                   GLoria, Paket xglint), XFCom_SiS (Paket xsis; frⁿher XSuSE_
  320.                   SiS) und XFCom_Cyrix (Paket xcyrix) zur Verfⁿgung.
  321.                 * User, die Terminalprogramme wie minicom, seyon etc. verwenden wol-
  322.                   len, mⁿssen in die Gruppe `uucp' eingetragen werden; vgl. http:
  323.                   //sdb.suse.de/sdb/de/html/ke_terminal-prog.html.
  324.                 * Emacs liegt in der Version 20.x vor; es sind die gleichfalls angepass-
  325.                   ten Startdateien aus /etc/skel zu verwenden; vgl. http://sdb.
  326.                   suse.de/sdb/de/html/ke_emacs-update.html.
  327.  
  328. 406
  329.  
  330.  
  331.  
  332.                                                                  15.2. Von Version zu Version
  333.  
  334.  * Dem Paket jade_dsl sind nunmehr die SGML-Parsertools und Hilfs-
  335.    programme als eigenstΣndiges Unter-Paket sp ausgegliedert.
  336.  * PostgreSQL (Paket postgres) besteht aus mehreren Unterpaketen
  337.    (engl. subpackages): Datenbank-Engine, Datenbank-Initialisierung und
  338.    Interfaces.
  339. 15.2.5 Von 5.3 auf 6.0
  340. Probleme und Besonderheiten:
  341. http://sdb.suse.de/sdb/de/html/bugs60.html.
  342.  * Wie in den Quellen des Kernels vorgesehen, wird der Boot-Kernel
  343.    in /boot installiert. Beim Update ist darauf zu achten, dass in der
  344.    /etc/lilo.conf die Pfade entsprechend eingetragen sind; YaST
  345.    macht einen entsprechenden Vorschlag ¡ wenn Sie weiterhin den alten
  346.    Kernel (/vmlinux) booten wollen, greifen Sie bitte in den Update-
  347.    Vorgang ein und konfigurieren Sie LILO entsprechend.
  348.  * System-Bibliothek ist nun die glibc (auch bekannt als libc6). Bei einem
  349.    Update der mit SuSE Linux ausgelieferten Programme sollte es dadurch
  350.    zu keinen grundsΣtzlichen Schwierigkeiten kommen. Eigene Programme
  351.    sollte man nach dem System-Update neu kompilieren und mit der glibc
  352.    linken; sollte das nicht m÷glich sein ¡ weil Sie z. B. nicht ⁿber den Quell-
  353.    code des jeweiligen Programms verfⁿgen ¡, so gibt es den Ausweg, das
  354.    Paket shlibs5 (libc5) zu installieren, womit weiterhin die  alten"
  355.    Programme lauffΣhig gemacht werden k÷nnen.
  356.  * Teile der /etc/rc.config sind bei Paketen mit umfangreichen
  357.    Konfigurationsm÷glichkeiten in Dateien des Verzeichnisses /etc/rc.
  358.    config.d ausgelagert.
  359.  * cron ist in der Lage, Skripten in den Verzeichnissen /etc/cron.
  360.    hourly, /etc/cron.daily, /etc/cron.weekly und /etc/
  361.    cron.monthly auszufⁿhren; die System-crontab ist von /root/
  362.    bin/cron.daily in /etc/cron.daily/aaa_base umbenannt
  363.    worden; vgl. auch auf Seite 408.
  364.  * Die aktuelle teTeX-Version ist mit SuSE Linux verfⁿgbar. Da die TEX-
  365.    System konform zum Filesystem Hierarchy Standard (FHS) installiert
  366.    wird, werden unter /var zusΣtzlich ca. 15 MB Plattenplatz ben÷tigt. ¡
  367.    teTeX wurde auf auf mehrere Unterpakete aufgeteilt. Wenn nach einem
  368.    Update etwas  fehlt", ist es ratsam, in der Serie tex nachzuschauen, ob
  369.    alle notwendigen Pakete tatsΣchlich installiert sind.
  370.  * Die LATEX-Erweiterungen Paket colortbl und Paket hyperref sind
  371.    nunmehr bei teTeX mit enthalten und werden deshalb nicht mehr separat
  372.    angeboten.
  373.  * C News wird aus der Distribution ausgegliedert; fⁿr eine ▄bergangszeit
  374.    ist Paket cnews noch auf der CD 1 unter unsorted/ zu finden. LΣnger-
  375.    fristig ist an einen Umstieg auf das Paket inn oder das Paket leafnode
  376.    zu denken.
  377.  * Die Konfigurationsdateien von UUCP liegen im Verzeichnis /etc/
  378.    uucp.
  379.  * Die DocBook-Stylesheets sind nun in dem eigenem Paket docbkdsl
  380.    der Serie sgm zu finden.
  381.  
  382.                                                                                          407
  383.  
  384.  
  385.  
  386. 15. Update des Systems und Paketverwaltung
  387.  
  388.                15.2.6 Von 6.0 auf 6.1
  389.                Probleme und Besonderheiten:
  390.                http://sdb.suse.de/sdb/de/html/bugs61.html.
  391.                 * Die CD-ROM mit dem  Live-Filesystem" ist nicht mehr im Lieferum-
  392.                   fang enthalten; diese CD-ROM kann separat zu SuSE Linux kann gegen
  393.                   eine Schutzgebⁿhr erworben werden. Technische Hinweise zu dieser CD
  394.                   finden Sie in Abschnitt 3.6.4 auf Seite 107.
  395.                 * Weitere Treiber, die eventuell bei der Erstinstallation oder beim Update
  396.                   notwendig sind (proprietΣre CD-ROM-Laufwerke, Laufwerke am Paral-
  397.                   lelport, PCMCIA) finden Sie auf der zusΣtzlich mitgelieferten modules-
  398.                   Diskette. linuxrc wird Sie bei Bedarf zu gegebener Zeit auffordern, diese
  399.                   modules-Diskette einzulegen (Abschnitt 2.2.3 auf Seite 29).
  400.                 * Die  Standardschnittstelle" fⁿr das Drucken ⁿber den Parallelport ist beim
  401.                   Kernel 2.2.x /dev/lp0 (vgl. Abschnitt 12.1 auf Seite 329).
  402.  
  403.                15.2.7 Von 6.1 auf 6.2
  404.                Probleme und Besonderheiten:
  405.                http://sdb.suse.de/sdb/de/html/bugs62.html.
  406.                 * rpm (vgl. auch Abschnitt 15.3 auf Seite 410) liegt als Version 3.0 vor. Das
  407.                   Format der RPM-Datenbank hat sich geΣndert; die Datenbank muss sofort
  408.                   konvertiert werden, wenn rpm installiert ist. Bei einem regulΣren Upda-
  409.                   te des (Basis-)Systems mit YaST wird die Konvertierung zum richtigen
  410.                   Zeitpunkt im Hintergrund durchgefⁿhrt.
  411.                 * Die System-Bibliothek glibc liegt nun in Version 2.1 vor. Soweit m÷glich,
  412.                   werden Komponenten mitgeliefert, die auch weiterhin die Ausfⁿhrung
  413.                   von glibc-2.0-Programmen erlauben; dies st÷▀t jedoch auf seine Grenzen,
  414.                   wenn versucht wird, auf bestimmte interne Symbole zuzugreifen. Eigene
  415.                   Programme sollten folglich grundsΣtzlich neu compiliert werden.
  416.                 * Zu der glibc geh÷rt auch der nscd (engl. Name Service Cache Daemon),
  417.                   der ⁿber die Datei /etc/nscd.conf konfiguriert wird; vgl. Manual-
  418.                   Page von nscd (man 8 nscd).
  419.                 * Mit der glibc-2.1 wird der Umstieg auf  Unix98 PTY"-Devices vollzo-
  420.                   gen. Dies bedingt, dass auch das devpts-Dateisystem zu mounten ist;
  421.                   folgender Eintrag in der /etc/fstab stellt dies beispielsweise sicher:
  422.                   none          /dev/pts      devpts        gid=5,mode=620          0 0
  423.                   Vgl. auch die Dokumentation in /usr/src/linux/Documentation/
  424.                   Changes bei den Kernelquellen.
  425.                 * PAM (engl. Pluggable Authentication Modules): ZusΣtzlich zu /etc/
  426.                   login.defs gibt es nun /etc/securetty, /etc/security/
  427.                   limits.conf und /etc/security/pam_env.conf; vgl. auf
  428.                   Seite 111.
  429.                 * Spracheinstellungen k÷nnen ⁿber Variablen in der /etc/rc.config
  430.                   vorgenommen werden; vgl. Abschnitt 76 auf Seite 446 und auch http:
  431.                   //sdb.suse.de/sdb/de/html/ml_locale_implementation.
  432.                   html. Wer deutsche Meldungen nicht mag, kann auch direkt z. B. in
  433.                   .bashrc eintragen:
  434.  
  435. 408
  436.  
  437.  
  438.  
  439.                                                                15.2. Von Version zu Version
  440.  
  441.    export LANG=C
  442.  
  443.  * Bei etlichen Paketen sind die fⁿr die Software-Entwicklung notwendi-
  444.    gen Komponenten (Bibliotheken, Header- und Include-Dateien etc.) in
  445.    eigene Pakete ausgelagert; dies ist z. T. auch schon bei frⁿheren Versio-
  446.    nen geschehen. Diese Entwicklungspakete werden nur ben÷tigt, wenn Sie
  447.    Software selbst ⁿbersetzen (compilieren) wollen ¡ beispielsweise neue-
  448.    re GNOME-Pakete. Diese Entwicklungspakete sind in der Regel an dem
  449.    Namenszusatz dev oder d zu erkennen: Paket xformsd, Paket glibn-
  450.    dev, Paket gtkndev, Paket imlibdev, Paket gnlibsd etc.
  451.  
  452. 15.2.8 Von 6.2 auf 6.3
  453. Probleme und Besonderheiten:
  454. http://sdb.suse.de/sdb/de/html/bugs63.html.
  455.  * Es werden unterschiedlich optimierte Kernel zur Installation angeboten;
  456.    diese Kernel verwenden eine  initrd" (engl. Initial Ramdisk). Beim Er-
  457.    zeugen eines eigenen Kernels ist diese Nebenbedingung zu beachten; vgl.
  458.    Abschnitt 16.2.5 auf Seite 421 und http://sdb.suse.de/sdb/
  459.    de/html/adrian_6.3_boot.html.
  460.  * Die Konfigurationsdatei fⁿr die Kernel-Module hei▀t /etc/modules.
  461.    conf (frⁿher: /etc/conf.modules).
  462.  * Neben dem  Userspace"-NFS-Daemon (Paket nfsserv) steht auch der
  463.    kernel-basierte NFS-Daemon (Paket knfsd) zur Verfⁿgung. Der knfsd
  464.    zeigt nur einen eingeschrΣnkten Funktionsumfang, beherrscht dafⁿr aber
  465.    das Locken von Dateien; darauf ist beispielsweise StarOffice angewiesen.
  466.    Setzen Sie bitte USE_KERNEL_NFSD oder NFS_SERVER in /etc/
  467.    rc.config und installieren Sie das das fⁿr Sie richtige Paket.
  468.  * Die  Manpages liegen unter /usr/share/man, wie es der FHS (engl.
  469.    Filesystem Hierarchy Standard) verlangt; vgl. Abschnitt 16.1 auf Sei-
  470.    te 417.
  471.  * Einige Software-Pakete, die aus der Distribution genommen wurden:
  472.    ¡ Paket gnuhtml: Veraltet; die aktuellen Info-Dokumente kann man
  473.       im HTML-Format ⁿber das SuSE-Hilfesystem erhalten (vgl. Ab-
  474.       schnitt 16.4 auf Seite 429).
  475.    ¡ Paket glimpse: Ein Σltere Version finden Sie im Verzeichnis
  476.       /unsorted der CD 1. Aus Copyright-Grⁿnden k÷nnen wir die
  477.       neuere Version nicht mit SuSE Linux ausliefern.
  478.  * Tcl/Tk steht in neuen Versionen mit neuen Paketbezeichnungen zur Ver-
  479.    fⁿgung. Tcl/Tk 8.0 ist die Standardversion.
  480.  * OSS (engl. Open Sound System) steht auch fⁿr Mehr-Prozessor-
  481.    Maschinen zur Verfⁿgung; im Einzelnen handelt es sich um Paket opso
  482.    und Paket opsod_up sowie Paket opso_smp und Paket opsodsmp;
  483.    vgl. http://sdb.suse.de/sdb/de/html/oss-smp.html.
  484.  * Auslagerung der sendmail-Einstellungen von der /etc/rc.config
  485.    in die Datei /etc/rc.config.d/sendmail.rc.config; vgl.
  486.    http://sdb.suse.de/sdb/de/html/mneden_6.3_sendmail.
  487.    html.
  488.  
  489.                                                                                        409
  490.  
  491.  
  492.  
  493. 15. Update des Systems und Paketverwaltung
  494.  
  495.                 * Aus Sicherheitsⁿberlegungen wird bei der Standardauswahl der WU-
  496.                   FTPD (Paket wuftpd, Serie n) nicht mehr installiert.
  497.                 * Bei leafnode hat sich ab Version 1.9.2 das Verzeichnis der Konfigurations-
  498.                   dateien geΣndert. Sie befinden sich nun unter /etc/leafnode anstatt
  499.                   unter /usr/lib/leafnode.
  500.                   Falls Sie Ihre Konfigurationsdatei geΣndert haben, befindet sich die Siche-
  501.                   rungskopie unter /usr/lib/leafnode/config.rpmsave. Bitte
  502.                   ⁿbernehmen Sie Ihre Anpassungen manuell in die neue Konfigurations-
  503.                   datei.
  504.                   Achtung: Wenn Sie von einer Σlteren Version (vor 1.9.3) updaten, fⁿhren
  505.                   Sie bitte zuerst das Shellskript /usr/doc/packages/leafnode/
  506.                   update.sh aus:
  507.                   erde: # cd /usr/doc/packages/leafnode
  508.                   erde:/usr/doc/packages/leafnode # ./update.sh \
  509.                   /var/spool/news/ /etc/leafnode /var/lock/news/fetchnews.lck
  510.  
  511.                   Hierbei werden die Datei groupinfo und ein paar weitere umorgani-
  512.                   siert (groupinfo wird nun nicht mehr  case-sensitiv" sortiert). Falls
  513.                   hierbei etwas schief geht, finden Sie die alte Datei unter /var/spool/
  514.                   news/leaf.node/groupinfo.old. Wenn das Skript erfolgreich
  515.                   durchgelaufen ist, k÷nnen Sie diese Datei (.old) anschlie▀end l÷schen.
  516.                   Hinweis: Das Programm /usr/sbin/fetch hei▀t seit Version 1.9.3
  517.                   /usr/sbin/fetchnews. Bitte passen Sie  Cronjobs" oder sonstige
  518.                   Skripten (z. B. /etc/ppp/ip-up) entsprechend an.
  519.                   Zur Installation von leafnode vgl. Abschnitt 6.9 auf Seite 203.
  520.                 * MySQL lΣuft unter der UID `mysql' und der GID `daemon', um
  521.                   mehr Sicherheit zu gewΣhrleisten.
  522.                 * Fortify liegt unter /opt/fortify; es kann nach der Anwendung dein-
  523.                   stalliert werden.
  524.  
  525.                15.2.9 Von 6.3 auf 6.4
  526.                Probleme und Besonderheiten:
  527.                http://sdb.suse.de/sdb/de/html/bugs64.html.
  528.                 * Kernel: Paket kernmod bzw. Paket kernmods sind nicht mehr not-
  529.                   wendig. Die passend optimierten Kernel-Module werden  in einem
  530.                   Rutsch" mit dem jeweils ausgewΣhlten Kernel installiert (vgl. 3.6.2
  531.                   auf Seite 103). Die Konfigurationsdateien des installierten Kernels
  532.                   liegen unter /boot als vmlinuz.config-pentium (Beispiel!),
  533.                   vmlinuz.autoconf.h und vmlinuz.version.h. Auf Wunsch
  534.                   kopiert YaST diese Dateien in den Baum der Kernelquellen.
  535.                 * Gⁿltige Login-Shells in /etc/shells eingetragen; vgl. Manual-Page
  536.                   von shells (man 5 shells). Wird einem Benutzer /bin/true
  537.                   zugeordnet, so kann sich dieser Benutzer nur ⁿber das X Window Sys-
  538.                   tem anmelden; dieser Benutzer bekommt keine Shell. /bin/false als
  539.                    Login-Shell" verhindert jegliche Anmeldung.
  540.                 * Paket aaa_base: Die tΣglichen Wartungsarbeiten am System sind aus
  541.                   Grⁿnden der ▄bersichtlichkeit auf mehrere Skripten verteilt worden.
  542.  
  543. 410
  544.  
  545.  
  546.  
  547.                                                                   15.2. Von Version zu Version
  548.  
  549.   In /etc/cron.daily gibt es nun neben aaa_base die Kompo-
  550.   nenten backup_rpmdb, clean_catman, clean_core, clean_
  551.   instlog, clean_tmp, do_mandb, rotate_logs und updatedb
  552.   ¡ jeweils erkennbar an dem Vorwort aaa_base_; aaa_base liest
  553.   zudem cron.daily.local, wo eigene Erweiterungen eingetragen
  554.   werden k÷nnen. Zum Cron-System vgl. Abschnitt 16.6.1 auf Seite 435.
  555. * Eine neuere Version von tar (tar) wird mitgeliefert. Das ▄berschreib-
  556.   verhalten beim Auspacken vorhandener Dateien ist geΣndert; wenn Sie
  557.   auf den alten Modus angewiesen sind, verwenden Sie bitte die Option
  558.   --overwrite.
  559. * Fast alle Programme im Paket nkita und Paket nkitb liegen in neuen
  560.   Versionen vor. traceroute ist in das Paket nkitb gewandert. Einige Pro-
  561.   gramme sind bereits  IPv6 ready"; achten Sie deshalb darauf, dass DNS
  562.   richtig konfiguriert ist ¡ andernfalls kann es passieren, dass der DNS-
  563.   Timeout fⁿr IPv6-Anfrage abgewartet werden muss.
  564. * Zu Paket samba: Mit dem Update auf Version 2.0.6 hat sich die Syntax
  565.   des smbmount-Kommandos geΣndert! smbmount muss von dem Shell-
  566.   skript /sbin/mount.smbfs aufgerufen werden, welches wiederum
  567.   von mount aufgerufen wird; ein Beispielaufruf:
  568.   erde: # mount -t smbfs -o userna-
  569.   me=uname,password=passwd \
  570.              //smbserv/share /destination
  571. * Zum Paket postfix: Weitere M÷glichkeiten der Einstellung sind hin-
  572.   zugekommen; die Startvariablen sind nach /etc/rc.config.d/
  573.   postfix.rc.config ausgelagert worden; vgl. auch Abschnitt 17.5
  574.   auf Seite 444.
  575. * Das Paket squid, also die Version 1.x des WWW Proxy-Servers, wird
  576.   nicht mehr mitgeliefert. Da die nunmehr etablierte Version 2.x als sta-
  577.   bil zu betrachten ist, empfiehlt sich ein genereller Umstieg. WΣhrend
  578.   des Updates wird das Paket squid nicht automatisch durch das Pa-
  579.   ket squid2 ersetzt; sichern Sie die alte Konfigurationsdatei, deinstal-
  580.   lieren Sie dann das Paket squid und installieren Sie das Paket squid2.
  581.   Nun k÷nnen Sie mit den neuen Dateien starten und wieder Ihre eigenen
  582.   Anpassungen vornehmen ¡ zusΣtzliche Informationen sind unter http:
  583.   //squid.nlanr.net zu finden.
  584. * Der empfohlene DHCP-Client ist im Paket dhcpcd enthalten; fⁿr beson-
  585.   dere FΣlle wird weiterhin Paket dhclient mitgeliefert.
  586. * Aus Sicherheitsgrⁿnden ist anonymes FTP nicht mehr automatisch zuge-
  587.   lassen. Um bei dem FTP-Daemon in.ftpd anonymes FTP zu erlauben,
  588.   muss in /etc/pam.d/ftpd das Kommentarzeichen `#' entfernt wer-
  589.   den vor der Zeile:
  590.   auth       sufficient          /lib/security/pam_ftp.so
  591.  
  592. * Passwort Σndern mit PAM (engl. Pluggable Authentication Modules):
  593.   pam_unix kann auch NIS-Passw÷rter Σndern und versteht md5-Hashes
  594.   als Passwort. Vorsicht ¡ vgl. Abschnitt 3.6.7 auf Seite 111.
  595.   Au▀erdem gibt es jetzt ein neues pam_pwcheck-Module, welches die
  596.   ▄berprⁿfung neuer Passw÷rter ⁿbernimmt. Der alte Eintrag:
  597.  
  598.                                                                                           411
  599.  
  600.  
  601.  
  602. 15. Update des Systems und Paketverwaltung
  603.  
  604.                   password required            /lib/security/pam_unix.so               #strict=false
  605.  
  606.                   muss geΣndert werden in ¡ jeweils nur eine Zeile, oder mit \ ( Gegen-
  607.                   strich") am Zeilenende:
  608.                   password required            /lib/security/pam_pwcheck.so \
  609.                                                nullok #use_cracklib
  610.                   password required            /lib/security/pam_unix.so               \
  611.                                                nullok use_first_pass use_authtok
  612.                   Dieser manuelle Eingriff ist nur notwendig, falls rpm beim Update die
  613.                   Konfigurationsdateien nicht selbst Σndern darf, da der Systemadministra-
  614.                   tor eigene ─nderungen gemacht hat. Dies gilt ⁿbrigens fⁿr alle Konfigu-
  615.                   rationsdateien von PAM unter /etc/pam.d.
  616.                 * ZusΣtzlich zu den  Manual-Pages (vgl. Abschnitt 15.2.8 auf Seite 407)
  617.                   liegen auch die Info-Seiten unter /usr/share.
  618.                 * makewhatis (Paket makewhat) verwendet nun das Hilfsprogramm
  619.                   manpath, um die Manual-Pages zu finden. Die Umgebungsvariable
  620.                   MANPATH soll in rc-Dateien nicht mehr gesetzt werden.
  621.                 * ldconfig wird nur aufgerufen, wenn ein /lib-Verzeichnis neuer als
  622.                   /etc/ld.so.cache ist; ggf. wird es im Hintergrund gestartet. Der
  623.                   Aufruf von ldconfig lΣsst sich erzwingen, wenn die Umgebungsvaria-
  624.                   ble run_ldconfig auf true gesetzt wird; es ist m÷glich, bereits am
  625.                   Bootprompt "run_ldconfig=true" zu setzen.
  626.                 * Das Paket ncurses liegt in Version 5.0 vor; von der  shared library"
  627.                   wird weiterhin auch Version 4.2 mitgeliefert, sodass man vorkompilierte
  628.                   Programme in der Regel weiterverwenden kann.
  629.                 * Das Paket apache ist aufgeteilt worden. Installieren Sie auch die
  630.                   mod_*-Unterpakete, wenn Sie spezielle Erweiterungen ben÷tigen. Die
  631.                   Dokumentation zu PHP finden Sie im Paket phpdoc. Die Logdateien
  632.                   sind aus Grⁿnden der ▄bersichtlichkeit in /var/log/httpd zu finden.
  633.                 * Roxen ist folgenderma▀en aufgeteilt: Das Paket roxen ohne und das
  634.                   Paket roxenssl mit Kryptographie-Unterstⁿtzung. Dies hat den Vorteil,
  635.                   kein separates Paket roxenint mehr verwalten zu mⁿssen.
  636.                 * Das Paket changes wurde aufgegeben. Die gewⁿnschten Informationen
  637.                   kann rpm direkt anzeigen:
  638.                   tux@erde: > rpm -q --changelog <paket>
  639.  
  640.                15.3 RPM ¡ Der Paket-Manager der Distribution
  641.                Mit SuSE Linux Version 5.0 hat RPM (rpm) (engl. RPM Package Mana-
  642.                ger) Einzug in die Distribution gehalten. Damit vereinfacht sich das Paket-
  643.                Management fⁿr alle Beteiligten, die Benutzer, die Systemadministratoren
  644.                und ¡ nicht zuletzt ¡ fⁿr die Pakete-Macher. Mittels der mΣchtigen RPM-
  645.                Datenbank stehen jederzeit detaillierte Informationen zur installierten Soft-
  646.                ware zur Verfⁿgung.
  647.                Im wesentlichen kann rpm in drei Modi agieren: installierbare Pakete aus den
  648.                unangetasteten Quellen (engl. pristine sources) herstellen, diese Pakete instal-
  649.                lieren bzw. auch wieder sauber de-installieren oder updaten sowie Anfragen
  650.                an die RPM-Datenbank bzw. an einzelne RPM-Archive richten.
  651.  
  652. 412
  653.  
  654.  
  655.  
  656.                                                 15.3. RPM ¡ Der Paket-Manager der Distribution
  657.  
  658. Installierbare RPM-Archive sind in einem speziellen binΣren Format gepackt;
  659. die Archive bestehen aus den zu installierenden (Programm-)Dateien und aus
  660. verschiedenen Meta-Informationen, die wΣhrend der Installation von rpm
  661. benutzt werden, um das jeweilige Softwarepaket zu konfigurieren, oder die
  662. zu Dokumentationszwecken in der RPM-Datenbank abgelegt werden. RPM-
  663. Archive haben die Dateinamen-Endung .rpm.
  664.  
  665.  
  666. 15.3.1 Pakete verwalten: Installieren, Updaten und De-installieren
  667.  
  668. Im Normalfall ist das Installieren eines RPM-Archivs denkbar einfach:
  669.         erde: # rpm -i <paket>.rpm
  670. Mit diesem Standardbefehl wird ein Paket aber nur dann installiert, wenn die
  671.  AbhΣngigkeiten" erfⁿllt sind und wenn es zu keinen  Konflikten" kommen
  672. kann. rpm fordert per Fehlermeldung die Pakete an, die zum Erfⁿllen der Ab-
  673. hΣngigkeiten notwendig sind. Die Datenbank wacht im Hintergrund darⁿber,
  674. dass es zu keinen Konflikten kommen kann: eine Datei darf in der Regel nur
  675. zu einem Paket geh÷ren. Mit verschiedenen Optionen kann man sich ⁿber
  676. diese Regel hinwegsetzen ¡ wer dies tut, der sollte aber genau wissen, was er
  677. tut, da er damit eventuell die UpdatefΣhigkeit des Systems aufs Spiel setzt.
  678. Interessant ist auch die Option -U bzw. --upgrade, um ein Paket zu ak-
  679. tualisieren. Dadurch wird eine Σltere Version des gleichen Pakets gel÷scht
  680. und dann die neue Version installiert. Gleichzeitig versucht rpm, sorgfΣltig
  681. mit den Konfigurationsdateien umzugehen, wobei ¡ etwas vereinfacht ¡ die
  682. folgende Strategie zum Tragen kommt:
  683.  
  684.  * Falls eine Konfigurationsdatei vom Systemadministrator nicht verΣndert
  685.         wurde, dann wird von rpm die neue Version der entsprechenden Datei
  686.         installiert. Es sind keine Eingriffe seitens des Administrators notwendig.
  687.  * Falls eine Konfigurationsdatei vom Administrator zu einem Zeitpunkt vor
  688.         dem Update geΣndert wurde, dann wird rpm die geΣnderte Datei dann und
  689.         nur dann mit der Erweiterung .rpmorig oder .rpmsave sichern und
  690.         die neue Version aus dem RPM-Paket installieren, wenn sich zwischen
  691.         ursprⁿnglicher Datei und der Datei aus dem Update-Paket etwas geΣndert
  692.         hat. In diesem Fall ist es sehr wahrscheinlich, dass Sie die frisch installier-
  693.         te Konfigurationsdatei anhand der Kopie (.rpmorig oder .rpmsave)
  694.         auf Ihre System-Bedingungen hin abstimmen mⁿssen. Danach sollten al-
  695.         le .rpmorig- bzw. .rpmsave-Dateien unbedingt entfernt werden, um
  696.         kommenden Updates nicht als Hindernis im Wege zu liegen.1
  697.  
  698. Die Option -U ist also in keiner Weise nur ein ─quivalent fⁿr die Abfolge -e
  699. (De-Installieren/L÷schen) ¡ -i (Installieren). Wenn immer m÷glich, dann ist
  700. der Option -U der Vorzug zu geben.
  701.  
  702. 1 Die Erweiterung .rpmorig wird gewΣhlt, wenn die Datei der RPM-Datenbank noch nicht
  703. bekannt war, sonst kommt .rpmsave zum Zuge; mit anderen Worten: .rpmorigs entstehen
  704. beim Update von Fremdformat auf RPM und .rpmsave beim Update von RPM-alt auf RPM-
  705. neu.
  706.  
  707.                                                                                            413
  708.  
  709.  
  710.  
  711. 15. Update des Systems und Paketverwaltung
  712.  
  713.                 Nach jedem Update mⁿssen Sie die von rpm angelegten Sicherungsko-
  714.                 pien mit der Erweiterung .rpmorig oder .rpmsave kontrollieren; das
  715.                 sind Ihre alten Konfigurationsdateien. Falls erforderlich, ⁿbernehmen Sie
  716.                 bitte Ihre Anpassungen aus den Sicherungskopien in die neuen Konfigura-
  717.                 tionsdateien, und l÷schen Sie dann die alten Dateien mit der Erweiterung
  718.                 .rpmorig bzw. .rpmsave.
  719.  
  720.                Wenn ein Paket entfernt werden soll, geht man Σhnlich geradlinig vor:
  721.                   erde: # rpm -e <paket>
  722.                rpm wird ein Paket aber nur dann entfernen, wenn keine AbhΣngigkeiten
  723.                mehr bestehen; so ist es z. B. theoretisch nicht m÷glich, Tcl/Tk zu l÷schen,
  724.                solange noch irgendein anderes Programm Tcl/Tk zum Laufen ben÷tigt ¡
  725.                auch darⁿber wacht RPM mithilfe der Datenbank.
  726.                Falls in einem Ausnahmefall eine derartige L÷sch-Operation nicht m÷glich
  727.                sein sollte, obwohl keine AbhΣngigkeiten mehr bestehen, dann kann es hilf-
  728.                reich sein, die RPM-Datenbank mittels der Option -rebuilddb neu aufzu-
  729.                bauen; vgl. unten die Anmerkungen zur RPM-Datenbank (Abschnitt 15.3.2
  730.                auf Seite 414).
  731.  
  732.                15.3.2 Anfragen stellen
  733.                Mit der Option -q (engl. query) leitet man Anfragen ein. Damit ist
  734.                es sowohl m÷glich die RPM-Archive selbst zu durchleuchten (Option
  735.                -p <paket_datei>) als auch die RPM-Datenbank zu befragen. Die Art
  736.                der Information kann man mit den zusΣtzlichen Switches in Tabelle 15.1
  737.                auswΣhlen.
  738.  
  739.  
  740.                  -i                    Paket-Informationen anzeigen
  741.                  -l                    Dateiliste des Pakets anzeigen
  742.                  -f <DATEI>+           Anfrage nach Paket, das die Datei <DATEI> be-
  743.                                        sitzt; <DATEI> muss mit vollem Pfad angegeben
  744.                                        werden!
  745.                  -s                    Status der Dateien anzeigen (impliziert -l)
  746.                  -d                    Nur Dokumentationsdateien auflisten (impliziert
  747.                                        -l)
  748.                  -c                    Nur Konfigurationsdateien auflisten (impliziert
  749.                                        -l)
  750.                  --dump                Alle ⁿberprⁿfbaren Infos zu jeder Datei anzeigen
  751.                                        (mit -l, -c oder -d benutzen!)
  752.                  --provides            FΣhigkeiten des Pakets auflisten, die ein anderes
  753.                                        Paket mit --requires anfordern kann
  754.                  --requires, -R Paket-AbhΣngigkeiten ausgeben
  755.                  --scripts             Die diversen (De-)Installations-Skripten ausgeben
  756.  
  757.  
  758.                   Tabelle 15.1: Die wichtigsten Abfrageoptionen (-q [-p] ... <paket>)
  759.  
  760.  
  761. 414
  762.  
  763.  
  764.  
  765.                                                 15.3. RPM ¡ Der Paket-Manager der Distribution
  766.  
  767. Der Befehl
  768.    erde: # rpm -q -i rpm
  769. gibt die Information in Ausgabe 15.3.1 auf der nΣchsten Seite aus.
  770.  
  771.  
  772.   Name               : rpm                            Relocati-
  773.   ons: (not relocateable)
  774.   Version            : 3.0.3                                    Vendor: Su-
  775.   SE GmbH, Germany
  776.   Release            : 47                              Build Da-
  777.   te: Fri Dec 10 13:50:27
  778.   Install date: Tue Dec 14 12:57:00 1999 Build Host: Cauchy.suse.de
  779.   Group              : unsorted                        Source RPM: rpm-3.0.3-
  780.   47.src.rpm
  781.   Size               : 5740847                             License: GPL
  782.   Packager           : feedback@suse.de
  783.   Summary            : RPM Package Manager
  784.   Description :
  785.   RPM Package Manager is the main tool for managing softwa-
  786.   re packages
  787.   of the SuSE Linux distribution.
  788.   [...]
  789.  
  790.  
  791.                        Ausgabe 15.3.1: rpm -q -i rpm
  792.  
  793. Die Option -f fⁿhrt nur dann zum Ziel, wenn man den kompletten Dateina-
  794. men, einschlie▀lich des Pfades, kennt; es dⁿrfen beliebig viele zu suchende
  795. Dateinamen angegeben werden, z. B.:
  796.    erde: # rpm -q -f /bin/rpm /usr/bin/wget
  797. fⁿhrt zu dem Ergebnis:
  798. rpm-3.0.3-3
  799. wget-1.5.3-55
  800.  
  801. Kennt man nur einen Teil des Dateinamens, so muss man sich mit einem
  802. Shell-Skript behelfen (vgl. Datei 15.3.1); der gesuchte Dateiname ist als Pa-
  803. rameter beim Aufruf des Skripts zu ⁿbergeben.
  804.  
  805.  
  806.   #! /bin/sh
  807.   for i in `rpm -q -a -l | grep $1 `; do
  808.           echo "\"$i\" ist in Paket:"
  809.           rpm -q -f $i
  810.           echo ""
  811.   done
  812.  
  813.                               Datei 15.3.1: Paket-Suchskript
  814.  
  815. Mit dem Befehl
  816.    erde: # rpm -q --changelog rpm
  817. kann man sich gezielt die Auflistung der Informationen (Updates, Konfigura-
  818. tion, ─nderungen etc.) zu einem bestimmten Paket anzeigen lassen; hier im
  819. Beispiel zu dem Paket rpm.
  820.  
  821.                                                                                           415
  822.  
  823.  
  824.  
  825. 15. Update des Systems und Paketverwaltung
  826.  
  827.                Anhand der Datenbank lassen sich auch ▄berprⁿfungen durchfⁿhren; ein-
  828.                geleitet werden diese VorgΣnge mit der Option -V (gleichbedeutend mit -y
  829.                oder --verify). Damit veranlasst man rpm, all die Dateien anzuzeigen, die
  830.                sich im Vergleich zur ursprⁿnglichen Version, wie sie im Paket enthalten war,
  831.                geΣndert haben. rpm stellt dem eigentlichen Dateinamen bis zu 8 Zeichen
  832.                voran, die auf folgende ─nderungen hinweisen:
  833.  
  834.  
  835.                  5      MD5-Prⁿfsumme
  836.                  S      Dateigr÷▀e
  837.                  L      Symbolischer Link
  838.                  T      Modification Time
  839.                  D       major" und  minor" GerΣtenummer (engl. device number)
  840.                  U      Benutzer (engl. user)
  841.                  G      Gruppe (engl. group)
  842.                  M      Modus (einschl. Rechte und Typus)
  843.  
  844.  
  845.                                       Tabelle 15.2: Die ▄berprⁿfungen
  846.  
  847.  
  848.                Bei Konfigurationsdateien wird zusΣtzlich ein c ausgegeben. Beispiel, falls
  849.                etwas an /etc/wgetrc aus dem Paket wget geΣndert wurde:
  850.                       erde: # rpm -V wget
  851.  
  852.                S.5....T c /etc/wgetrc
  853.  
  854.  
  855.                Die Dateien der RPM-Datenbank liegen unter /var/lib/rpm. Bei einer
  856.                /usr-Partition von 500 MB kann die Datenbank durchaus 20 MB Platten-
  857.                platz beanspruchen; insbesondere nach einem kompletten Update. Falls die
  858.                Datenbank ⁿber Gebⁿhr gro▀ erscheint, ist es meist hilfreich, mit der Option
  859.                --rebuilddb eine neue Datenbank von der existierenden zu erstellen; es
  860.                kann nichts schaden, vor einem solchen  Rebuild" eine Kopie der existieren-
  861.                den aufzubewahren.
  862.                Weiterhin legt das cron-Skript cron.daily tΣglich gepackte Kopien der
  863.                Datenbank unter /var/adm/backup/rpmdb an, deren Anzahl durch die
  864.                Variable <MAX_RPMDB_BACKUPS> (Standard: 5) in der /etc/rc.
  865.                config vorgegeben wird; es ist mit bis zu 2 MB pro Backup zu rechnen
  866.                (bei einer 500 MB gro▀en /usr). Dieser Platzverbrauch ist unbedingt bei
  867.                Bestimmung der Gr÷▀e der Root-Partition zu berⁿcksichtigen, falls man fⁿr
  868.                /var keine eigene Partition vorsehen will.
  869.  
  870.  
  871.                15.3.3 Quellpakete installieren und kompilieren
  872.  
  873.                Alle Quellpakete (engl. Sources) der SuSE Linux liegen in der Serie zq
  874.                (Quellpakete) und haben die Erweiterung .spm hinter dem eigentlichen Pa-
  875.                ketnamen; diese Dateien sind die sog.  Source-RPMs".
  876.  
  877. 416
  878.  
  879.  
  880.  
  881.                                                 15.3. RPM ¡ Der Paket-Manager der Distribution
  882.  
  883.  Diese Pakete k÷nnen mit YaST ¡ wie jedes andere Paket ¡ installiert
  884.  werden; allerdings werden Quellpakete nie als installiert ([i]) markiert
  885.  wie die  regulΣren" anderen Pakete. Dies liegt daran, dass die Quellpa-
  886.  kete nicht in die RPM-Datenbank aufgenommen werden; in der RPM-
  887.  Datenbank nΣmlich erscheint nur installierte Betriebssoftware.
  888.  
  889. Die Arbeitsverzeichnisse des rpm unter /usr/src/packages mⁿssen
  890. vorhanden sein (falls keine eigenen Einstellungen z. B. via /etc/rpmrc
  891. vorgenommen wurden):
  892.  
  893. SOURCES fⁿr die originalen Quellen (.tar.gz-Dateien etc.) und fⁿr die
  894.     distributionsspezifischen Anpassungen (.dif-Dateien).
  895. SPECS fⁿr die .spec-Dateien, die in der Art eines Meta-Makefiles den
  896.      build"-Prozess steuern.
  897. BUILD unterhalb dieses Verzeichnisses werden die Quellen entpackt, ge-
  898.     patcht und kompiliert.
  899. RPMS hier werden die fertigen  Binary"-Pakete abgelegt.
  900. SRPMS und hier die  Source"-RPMs.
  901.  
  902.  Bitte machen Sie keine RPM-Experimente mit wichtigen System-
  903.  Komponenten (Paket libc, Paket rpm, Paket nkit etc.); Sie setzen die
  904.  Funktionstⁿchtigkeit Ihres Systems aufs Spiel.
  905.  
  906. Wenn Sie ein Quellpaket der Serie zq mit YaST installieren, dann werden
  907. die fⁿr den  build"-Prozess notwendigen Komponenten unter /usr/src/
  908. packages installiert: die Quellen und die Anpassungen unter SOURCES
  909. und die dazugeh÷rige .spec-Datei unter SPECS2. Im Folgenden wird
  910. das Paket wget.spm betrachtet. Nachdem das Quellpaket wget.spm mit
  911. YaST installiert wurde, gibt es die Dateien:
  912.     /usr/src/packages/SPECS/wget.spec
  913.     /usr/src/packages/SOURCES/wget-1.4.5.dif
  914.     /usr/src/packages/SOURCES/wget-1.4.5.tar.gz
  915. Mit rpm -b <X> /usr/src/packages/SPECS/wget.spec wird
  916. der Kompiliervorgang angesto▀en; dabei kann <X> fⁿr verschiedene Stufen
  917. stehen (vgl. die -help-Ausgabe bzw. die RPM-Dokumentation); hier nur in
  918. Kⁿrze:
  919.  
  920. -bp Quellen im Verzeichnis /usr/src/packages/BUILD prΣparieren:
  921.     entpacken und patchen
  922. -bc wie -bp, jedoch zusΣtzlich noch kompilieren
  923. -bi wie -bc, jedoch zusΣtzlich noch installieren; Achtung, wenn ein Paket
  924.     nicht das BuildRoot-Feature unterstⁿtzt, ist es m÷glich, dass Sie sich wΣh-
  925.     rend dieses Installationsvorgangs wichtige Konfigurationsdateien ⁿber-
  926.     schreiben!
  927. -bb wie -bi, jedoch zusΣtzlich noch das sog. Binary-RPM herstellen; bei
  928.     Erfolg liegt es in /usr/src/packages/RPMS.
  929. 2 Zum  Pakete-Machen" (engl. build mode) vgl. [Bai97]; dort, oder auch in der Manual-Page
  930. von rpm (man rpm), werden weitere Einsatzm÷glichkeiten vorgestellt.
  931.  
  932.                                                                                              417
  933.  
  934.  
  935.  
  936. 15. Update des Systems und Paketverwaltung
  937.  
  938.                -ba wie -bb, jedoch zusΣtzlich noch das sog. Source-RPM herstellen; bei
  939.                   Erfolg liegt es in /usr/src/packages/SRPMS.
  940.                Mit der Option -short-circuit lassen sich einzelne Schritte ⁿbersprin-
  941.                gen.
  942.                Das hergestellte Binary-RPM ist schlie▀lich mit rpm -i oder besser mit
  943.                rpm -U zu installieren, damit es auch in der RPM-Datenbank auftaucht.
  944.  
  945.                15.3.4 Tools fⁿr RPM-Archive und die RPM-Datenbank
  946.                Der Midnight Commander (mc) ist von Hause aus in der Lage, den Inhalt ei-
  947.                nes RPM-Archivs anzuzeigen bzw. Teile daraus zu kopieren. Er bildet ein sol-
  948.                ches Archiv als ein virtuelles Dateisystem ab, sodass alle gewohnten Menⁿ-
  949.                punkte des Midnight Commander ¡ wenn sinnvoll ¡ zur Verfⁿgung stehen:
  950.                                                                                               
  951.                Die Kopfzeilen-Informationen der  Datei" HEADER kann man sich mit  F3  
  952.                                                              
  953.                ansehen; mit den Cursor-Tasten und  Enter  lΣsst sich durch die Struktur des
  954.                                                             
  955.                Archivs  browsen", um bei Bedarf mit  F5  Komponenten herauszukopieren.
  956.                ¡ ▄brigens, mittlerweile gibt es auch fⁿr den Emacs ein rpm.el, ein  Fron-
  957.                tend" fⁿr rpm :-)
  958.                xrpm hei▀t ein grafischer RPM-Manager; realisiert ist dieses Tool in Python,
  959.                einer eleganten Skript-Sprache. xrpm unterstⁿtzt Aktionen per FTP.
  960.                KDE enthΣlt das Tool krpm, ein grafisches Interface unter X, um RPM zu
  961.                bedienen. Bei GNOME finden Sie gnorpm.
  962.                Mit Alien (alien) ist es m÷glich, die Paketformate der verschiedenen Dis-
  963.                tributionen zu konvertieren. So kann man versuchen, alte TGZ-Archive vor
  964.                dem Installieren nach RPM umzuwandeln, damit wΣhrend der Installation die
  965.                RPM-Datenbank mit den Paket-Informationen versorgt wird. Aber Achtung:
  966.                alien ist ein Perl-Skript und befindet sich nach Angaben der Programm-
  967.                Autoren noch in einem Alpha-Stadium ¡ wenngleich es bereits eine hohe
  968.                Versionsnummer erreicht hat.
  969.                Last, not least ¡ es gibt YaST (vgl. auch Abschnitt 3.4.9 auf Seite 98).
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987. 418
  988.  
  989.  
  990.  
  991.