Release Notes für Debian GNU/Linux 2.2 (`potato'), Alpha -------------------------------------------------------- Josip Rodin, Bob Hilliard, Adam Di Carlo, Anne Bezemer $Id: release-notes.de.sgml,v 1.6 2000/07/24 17:33:42 joy Exp $ ------------------------------------------------------------------------------- ------------------------------------------------------------------------------- Inhalt ------ 1. Was ist neu in Debian GNU/Linux 2.2 1.1. Neuigkeiten bei der Installation 1.2. Neuigkeiten in der Distribution 2. Neuinstallationen 3. Upgrades von älteren Ausgaben 3.1. Informationen zum Upgrade 3.2. Notwendige Maßnahmen vor dem Upgrade 3.3. Der Upgradeprozess ------------------------------------------------------------------------------- 1. Was ist neu in Debian GNU/Linux 2.2 -------------------------------------- [Die neueste Version dieses Dokuments steht jederzeit unter http://www.debian.org/releases/2.2/alpha/release-notes/ zum Download zur Verfügung. Wenn diese Version älter als ein Monat ist, mögen Sie einen Download der neuesten Version vorziehen.] Debian's letzte Version, Debian GNU/Linux 2.1, wurde für vier offiziell unterstütze Architekturen freigegeben: Intel x86 (``i386''), Motorola 680x0 (``m68k''), Alpha (``alpha'') sowie SPARC (``sparc''). Mit Version 2.2 wurden zwei weitere Architekturen eingeführt: PowerPC (``powerpc'') und ARM (``arm''). Weitere Informationen über den Status der verschiedenen Portierungen und Hinweise für spezielle Architekturen finden Sie auf der Debian Portierungen Homepage (http://www.debian.org/ports/alpha). Debian GNU/Linux 2.2 für die Alpha Architektur wird mit der Version 2.2.17 des Linux-Kernels ausgeliefert. Mit der Generation 2.2 dieses Kernels werden viele wertvolle Änderungen sowohl im Kernel selbst als auch bei den Anwendungen zur Steuerung seiner Möglichkeiten eingeführt. Dazu kommt eine Menge neuer Gerätetreiber sowie viele Fehlerkorrekturen in den existierenden Treibern. 1.1. Neuigkeiten bei der Installation ------------------------------------- Die Pakete `boot-floppies' und das `debian-cd' enthalten eine Anzahl an Verbesserungen gegenüber Debian GNU/Linux 2.1. So unterstützt die Netzwerkinstallation jetzt die Konfiguration des Netzes über DHCP sowie die Basisinstallation über HTTP. Die Möglichkeit der Installation über eine serielle Konsole besteht jetzt auf weiteren Architekturen. Die Softwareauswahl über Profile und Aufgabenbereiche aus der alten Installation wurde durch durch "Meta-Pakete" ersetzt (das sind Pakete, deren einziger Zweck es ist, die Installation anderer Pakete zu erzwingen). Über das Program `tasksel' kann man jederzeit aus diesen Paketen die Aufgaben des Rechners auswählen und so die entsprechende Software installieren. Dadurch wird nun auch automatisch bei einem Upgrade des Systems evtl. neue Software für die gewünschten Anwendungen installiert. Die nach dem Neustart ausgeführte Konfiguration wird nun Dialogorientiert auf der Basis von `debconf' durch das `base-config' Paket durchgeführt. Vorher wurden dafür einfache Shellskripte verwendet, die nicht so benutzerfreundlich waren. Nach dem nächsten Versionssprung der Distribution wird `debconf' voraussichtlich die Standardschnittstelle für die Installation und Konfiguration darstellen. 1.2. Neuigkeiten in der Distribution ------------------------------------ Alle Debian GNU/Linux Architekturen basieren nun auf der neuen Version 2.1.2 der GNU C-Bibliothek. Obwohl sich durch diese neue Version der glibc neue Pakete nicht mehr auf der alten Distribution installieren lassen, wurde die Abwärtskompatibilität zu den Programmen und Quelltexten der alten Debian GNU/Linux-Versionen 2.1 und 2.0 bewahrt. Das heißt, daß Pakete für diese auch auf der neuen Version ohne größere Probleme benutzt werden können. Mit dieser neuen Version wurden die meisten, wenn nicht alle, Systemprogramme auf PAM umgestellt. PAM steht für "Pluggable Authentication Modules" und stellt dem Systemverwalter eine leistungsfähige Methode zur Zugangskontrolle zur Verfügung. Da alle Zugriffe auf das System von PAM zugelassen werden müssen, gibt es nur noch einen Punkt, an dem die Identifizierung und Authentifizierung durchgeführt wird. Wenn Sie also die Überprüfung der Zugangsberechtigung auf eine anderes Schema umstellen wollen, müssen Sie nur noch die Konfiguration von PAM ändern, während Sie vorher alle Programme anpassen mußten, was teilweise nur durch erneutes Übersetzen möglich war. Dies ist die erste Debian-Version, die komplette Unterstützung für unsere japanischen Benutzer enthält. Diese mußten vorher Erweiterungen des Debian-JP Projektes benutzen, um Unterstützung für umfangreichere Zeichensätze zu erhalten. Weiterhin haben wir die Internationalisierung und die Unterstützung für die meisten nicht-lateinischen Zeichensätze verbessert. Die Anzahl der in unserer Hauptdistribution enthaltenen Pakete ist nun bei etwa 3700, womit sie sich gegenüber der Vorversion wie gewöhnlich um 50% erhöht hat. Diese Ausgabe der Distribution zeichnet sich ferner durch neue Versionen wichtiger Programme und Bibliotheken aus, darunter XFree86 3.3.6, Perl 5.005.03, GCC 2.95.2, PAM 0.72, GTK+/GLib 1.2.7, GNOME 1.0.54, ncurses 5.0, teTeX 1.0.6, XEmacs 21.1.8, S-Lang 1.3.9, GGI 1.99.2, und viele mehr. Wie schon beim Upgrade von Version 2.0 zu 2.1 sind die meisten Änderungen von 2.1 zu 2.2 schrittweise. Viele neue Pakete und neue Versionen alter Pakete kommen mit einem Reigen von neuen Features und Fehlerkorrekturen einher. Wie gehabt wird die Paketverwaltung aus der Kombination von dpkg und apt zur Durchführung von Upgrades verwendet, und wir haben jede Anstrengung unternommen, um den Übergang so schmerzlos wie möglich zu machen. Das bevorzugte Programm zur Installation von Paketen ist `apt', das nun in der Version 0.3.19 mitgeliefert wird und in Verbindung mit `dpkg', jetzt Version 1.6.13, benutzt wird. `apt' unterstützt verschiedene Quellen für Softwarepakete: Es kann Pakete sowohl von CD-ROM oder anderen Wechselmedien als auch von lokal oder per Netz verfügbaren Laufwerken oder über HTTP oder FTP aus dem Internet installieren. Es kann sowohl über die Kommandozeile als `apt-get' oder als Paketbeschaffer in `dselect' verwendet werden, um neue Pakete zu installieren oder existierende zu aktualisieren. Die offizielle CD-ROM Distribution besteht aus _drei_ CD-ROMs mit Binärpaketen, die die Sektionen "main" und "contrib" enthält. Wenn ein Verkäufer Teile der Sektionen "non-US/main", "non-free" oder "non-US/non-free" zum CD-Satz hinzufügt, mag eine vierte hinzukommen. Die erste CD-ROM eines Satz ist bootfähig und wird normalerweise für Neuinstallationen benutzt. Alle CDs sind in sich geschlossen, Sie können also jede beliebige CD einlegen und mit ihrem Inhalt arbeiten, ohne die anderen einzulegen. Mit `apt-cdrom' können mehrere CDs verwaltet werden. Dazu kann das Programm entweder direkt über die Kommandozeile oder über dselect aufgerufen werden. ------------------------------------------------------------------------------- 2. Neuinstallationen -------------------- Wenn Sie neue Installationen von Debian durchführen möchten, sollten Sie das Installationshandbuch lesen, das auf der ersten offiziellen CD unter /dists/potato/main/disks-alpha/current/install.txt (or .html) oder im Internet unter http://www.debian.org/releases/2.2/alpha/install zu finden ist. Das Installationssystem, welches `boot-floppies' genannt wird (obwohl es nicht nur für Disketten gedacht ist) wurde zum Nutzen unserer Benutzer erweitert und modernisiert. ------------------------------------------------------------------------------- 3. Upgrades von älteren Ausgaben -------------------------------- 3.1. Informationen zum Upgrade ------------------------------ Abwärtskompatibilität auf Quell- und Objektcode-Ebene in GNU LibC 2.1 bedeutet, daß die meisten Programme der alten Version auf der neuen Ausgabe weiter funktionieren werden (aber nicht umgekehrt). Alle Pakete in Debian GNU/Linux 2.2 wurden natürlich für diese neue Umgebung konfiguriert und die meisten Programme sollten sich weiterhin übersetzen lassen. Natürlich gibt es immer ein paar Ausnahmen zu der Regel, es könnte also sein, daß einige Ihrer hiesigen Programme geändert und/oder recompiliert werden müssen, um einwandfrei zu funktionieren. Bei Benutzung von Kernel 2.2 und glibc 2.1 wird das System automatisch ein virtuelles Dateisystem `devpts' einbinden. Dadurch werden Unix98 PTYs unterstützt, und einige unserer Dienste werden automatisch diese virtuellen Geräte aus `/dev/pts/*' anstatt `/dev/ttyp*' benutzen. Mit Kernel 2.2.x beginnt die Numerierung der Druckerschnittstellen nun mit lp0 anstatt lp1, wie es bei den 2.0.x-Kerneln der Fall war. Sie werden also Ihre Druckerkonfiguration (gewöhnlich in `/etc/printcap') an diese neuen Gegebenheiten anpassen wollen. Aus `/dev/lp1' wird `/dev/lp0', aus `/dev/lp2' wird `/dev/lp1' usw. Der Übergang zur neuen Kernelversion ging recht glatt, vorwiegend, weil die Version 2.1 der Distribution schon fast komplett auf den neuen Kernel vorbereitet war. Einige Probleme sind jedoch übrig geblieben, größtenteils in Verbindung mit der Netzwerkkonfiguration. Netzwerkadministratoren werden zwei Sachen bemerken: 1. Das Programm `ipfwadm' zur Manipulation des Firewalls wurde durch `ipchains' ersetzt. Bei der Aktualisierung des `netbase'-Pakets werden Sie gefragt werden, ob ein Wrapper, der `ipfwadm' mit `ipchains' emuliert, installiert werden soll. Wenn Sie das bestätigen, sollte Ihr Firewall weiterhin wie gewohnt funktionieren. Alternativ können Sie `/usr/share/doc/netbase/ipchains-HOWTO.txt.gz' lesen und Ihre Firewall-Konfiguration richtig auf ipchains konvertieren. 2. Das Skript `/etc/init.d/network' wird, so, wie es von der alten Installationsroutine erstellt wurde, auf einem neuen Kernel Fehlermeldungen ausgeben. Das liegt daran, daß der neue Kernel bei der Konfiguration automatisch eine entsprechende Route einträgt, was in jenem Skript nochmal von Hand gemacht wird. Da die Route schon existiert, bekommt man eine Fehlermeldung, die jedoch ignoriert werden kann. 3. Unglücklicherweise kann das Kernelupgrade auf Maschinen mit wenig RAM zu Problemen führen. Hier hilft nur das weiterbenutzen des alten Kernels oder die Erstellung eines genau abgestimmten Kernels. Wir haben uns bemüht, Upgrades auf PAM-konfigurierte Anwendungen zu nahtlos wie möglich zu machen. In den meisten Fällen werden die PAM-Einstellungen die alte Vor-PAM-Konfiguration nachahmen. Es kann jedoch nicht allen Möglichkeiten Rechnung getragen werden. Wenn Änderungen nötig sind, können Sie das Paket `libpam-doc' installieren. Es enthält Dokumentation für jeden Aspekt der PAM Bibliothek, sogar Hinweise, wie Sie existierende Anwendungen, die nicht PAM-fähig sind, um Unterstützung für PAM erweitern können. Eine der größeren Änderungen des PAM Upgrades war die Integration des Pakets `secure-su' in das eigentliche `login'-Paket. Das gewöhnliche `su', vorher Teil der `shellutils', wird nun vom `login'-Paket bereitgestellt, da das `su' aus den `shellutils' keine PAM-Unterstützung bietet. Wenn Sie das normale `su' benutzt haben, sollten Sie keine Änderungen zur neuen Version bemerken. Benutzer des veralteten `secure-su'-Pakets müssen Ihre Konfiguration auf PAM umstellen. Sie mögen bemerkt haben, daß dieses Release zwei verschiedene Perl-Versionen beinhaltet: 5.004 (in den `perl-5.004*'-Paketen) sowie 5.005 (in den `perl-5.005*'-Paketen). Wir empfehlen die Benutzung der letzteren, neueren Version und die Entfernung der alten Pakete, die nur noch aus Kompatibilitätszwecken und für Perl-Programmierer enthalten sind. Wenn Sie Perl Module aus den `lib*-perl'-Paketen in Ihren Skripten benutzen, müssen Sie den symbolischen Link `/usr/bin/perl' mit `update-alternatives' auf Perl 5.005 umsetzen, falls Sie die alten Pakete noch installiert halten. Andernfalls werden Sie Probleme bekommen. Bitte beachten Sie, daß das Archiv `non-US', daß Software enthält, die nicht aus den USA exportiert werden darf, leicht reorganisiert wurde, um zusätzlich zwischen freier und unfreier Software zu unterscheiden. Wenn Sie schon vorher APT benutzt haben, um darauf zuzugreifen, werden Sie den non-US-Eintrag in `sources.list' in die folgende Form ändern müssen: deb http://non-US.debian.org/debian-non-US potato/non-US main contrib non-free Alte Versionen des `inetd'-Daemons (enthalten im `netbase'-Paket) hatten einen Fehler, der dazu führte, daß eine Verbindung zu einem der eingebauten Dienste einen Neustart von `inetd' verhinden konnte. Dieser Fehler wurde im aktuellen `netbase'-Paket behoben, aber ältere Versionen enthalten ihn noch. Wenn Sie feststellen, daß `inetd' nicht korrekt neu gestartet wird, gucken Sie nach laufenden `inetd'-Prozessen, oder Prozessen unter den Namen "-discard" oder "-echo". Wenn Sie das `psmisc'-Paket installiert haben, können Sie den Befehl sed 's/[[:space:]][[:space:]]*/ /g' /etc/inetd.conf | grep '^ *[^#]' | cut -d" " -f1,3 | while read serv type; do fuser -n $type $serv; done als root ausführen, um herauszufinden, welche Prozesse noch Ports, für die `inetd' zuständig ist, benutzen. Das neue XFree86 und andere `xserver-*'-Pakete, die in diesem Release eingeführt werden, bieten mit hoher Wahrscheinlichkeit, insbesondere bei neueren Grafikkarten, eine bessere Unterstützung für Ihre Grafikhardware. Wenn Sie nicht genau wissen, welches X-Server-Paket sie benötigen, dann probieren Sie das `xviddetect'-Programm (aus dem gleichnamigen Paket). Es wird versuchen, den Namen des benötigten X-Servers basierend auf den Informationen, die von PCI- und AGP-Karten geliefert werden, zu ermitteln. Wenn Sie das Upgrade unter X ausführen, und der verwendete X-Server seine Zeichensätze über den `xfs'-Dienst des aktualisierten Rechners bezieht, dann wird dieser Dienst während des Upgrades nicht mehr zur Verfügung stehen. Das ist zwar kein schwerwiegendes Problem, kann aber lästig sein. Achtung: Ähnliches kann auch mit anderen Diensten passieren, also seien Sie vorbereitet. 3.1.1. Umbenannte Pakete ------------------------ Die folgenden Pakete wurden umbenannt. In den meisten, wenn nicht allen Fällen werden die Felder "Conflicts", "Replaces" und "Provides" oder sogar Platzhalterpakete verwendet, um die neuen Pakete automatisch zu installieren und/oder die alten Pakete sicher zu entfernen. ada-rm -> gnat-doc [1] alsa-modules -> alsa-base alsalib -> libasound0.4 ax25-utils -> libax25 blt8.0-unoff -> blt8.0 c-client-dev -> libc-client4.7-dev console-tools-data -> console-tools [2] cti-ifhp -> ifhp cwnn -> freewnn-cserver cwnn-dev -> freewnn-cserver-dev data-dumper -> perl-5.005-doc dhcp-beta -> dhcp dhcp-client-beta -> dhcp-client dhcp-relay-beta -> dhcp-relay egcc -> gcc egcs-docs -> gcc-doc emacspeak-bs-tcl, emacspeak-dt, emacspeak-dt-tcl -> emacspeak-ss eterm-backgrounds -> eterm fte-cfgdocs -> fte-docs fvwm -> fvwm1 fvwm2 -> fvwm gltt2 -> libgltt2 gltt2-dev -> libgltt2-dev gmp2 -> libgmp2 gmp2-dev -> libgmp2-dev gnome-gnobots -> gnome-gnobots2 gnome-gnothello -> gnome-iagno gnome-gyahtzee -> gnome-gtali gsl -> libgsl0 gsl-dev -> libgsl0-dev gstep-base -> gstep-base0 gstep-base-dev -> gstep-base0-dev gstep-extensions -> gstep-extensions0 gstep-gui -> gstep-gui0 gstep-gui-dev -> gstep-gui0-dev gstep-guile -> gstep-guile0 gtkicq -> gnomeicu intlfonts-arabic -> xfonts-intl-arabic intlfonts-asian -> xfonts-intl-asian intlfonts-chinese -> xfonts-intl-chinese intlfonts-chinese-big -> xfonts-intl-chinese-big intlfonts-european -> xfonts-intl-european intlfonts-japanese -> xfonts-intl-japanese intlfonts-japanese-big -> xfonts-intl-japanese-big intlfonts-phonetic -> xfonts-intl-phonetic ivtools -> ivtools-unidraw kwnn -> freewnn-kserver kwnn-dev -> freewnn-kserver-dev lam -> lam-runtime lesstifg-dbg -> lesstif-dbg lesstifg-dev -> lesstif-dev libapache-mod-auth-sys -> apache-common libapache-mod-put -> apache-common libatalk1 -> netatalk libatalk1-dev -> netatalk-dev libc6-doc -> glibc-doc libdatecalc-perl -> libdate-calc-perl libg++2.8.2-dev -> libg++2.8.1.3-dev libgg0 -> libgii0 libgg0-dev -> libgii0-dev libggi1 -> libgii0, libggi2 libgnome0 -> libgnomesupport0 libjpegg-dev -> libjpeg62-dev liblockdev0-perl -> liblockdev1-perl liblockdev0g-dbg -> liblockdev1-dbg liblockdev0g-dev -> liblockdev1-dev libmd5-perl -> libdigest-md5-perl libpam0g-util -> libpam-runtime libwcsmbs, wcsmbs-locale-ja -> locale-ja libwine0.0.971116 -> libwine libxml0 -> libxml1 maplay -> maplay3 mysql-base -> mysql-gpl-client, mysql-client mysql-dev -> libmysqlclient6-dev newt0.25-dev -> libnewt-dev open -> console-tools palmpython -> pyrite perl -> perl5 perl-base -> perl5-base popt -> libpopt0, libpopt-dev ppp-pam -> ppp [3] ptx -> textutils python-bsddb, python-curses, python-misc, python-net -> python-base [4] python-mysql -> python-mysqldb python-pil -> python-imaging r-pdl -> pdl sgmlspm -> libsgmls-perl smbfsx -> smbfs sorcerer -> pccts t1lib0-bin -> t1lib-bin t1lib0-dev -> t1lib-dev tcd -> gnome-media timezones -> libc6 [5] tm -> wemi toshiba-fan, toshiba-hotkey -> toshutils v-bin -> libv-bin v-dbg -> libv-dbg v-dev, vm-dev -> libv-dev v1g -> libv1.22 vnc-doc -> xvncviewer, vncserver wcsmbs-locale-ko -> locale-ko wnn -> freewnn-jserver wnn-common -> freewnn-common wnn-dev -> freewnn-jserver-dev www-search -> libwww-search-perl wxxt1 -> libwxxt1 wxxt1-dev -> libwxxt-dev xfntbig5p-cmex24m -> xfonts-cmex-big5p xfntil2 -> xfonts-biznet-iso-8859-2-{base,75dpi,100dpi} xntp3-doc -> ntp-doc xpm-bin -> xpm4g-dev [6] [1] Das Ada Referenzhandbuch wurde in gnat-doc integriert. [2] Das Paket `console-tools-data' wurde wieder in `console-tools' reintegriert. [3] Die PAM-Unterstützung für ppp wurde in das eigentliche ppp-Paket integriert. [4] Diese Pakete wurden wieder in python-base aufgenommen. [5] Die Zeitzonen sind jetzt wieder im libc6-Paket enthalten. [6] Der Inhalt des xpm-bin-Pakets wurde wieder in xpm4g-dev aufgenommen. Obwohl wir uns bemüht haben, hier eine komplette Liste zu liefern, kann es trotzdem sein, daß Sie nicht komplett ist. 3.1.2. Aufgeteilte Pakete ------------------------- Einige Pakete aus Debian 2.1 (`slink') wurden in 2.2 (`potato') in zwei oder mehrere kleinere Pakete aufgeteilt. Der Grund für diese Aufspaltung ist im Allgemeinen, daß das Originalpaket eine breite Palette von Funktionen bereitstellte, und wenige Benutzer alle dieser Komponenten benutzen. Einige Pakete weisen bei der Installation auf diese Tatsache hin, andere erwähnen es in der Paketbeschreibung, und einige ignorieren sie ganz. Wenn Sie feststellen, daß ein vertrautes Paket vorher vorhandene Funktionalität vermissen läßt, dann prüfen Sie bitte die folgende Liste, ob Sie weitere Pakete installieren müssen, um die alte Funktionalität wiederherzustellen. Wenn das nicht hilft, prüfen Sie bitte das Änderungsprotokoll des Pakets, welcher unter `/usr/doc//changelog.Debian.gz' zu finden ist. Mindestens die folgenden Pakete wurden aufgeteilt: gmc: mc gmc mc-common [1] mozilla: mozilla libnspr3 libnspr3-dev netbase: netbase tcpd libwrap0 libwrap0-dev netstd: bootp bootparamd bootpc finger fingerd fping ftp ftpd icmpinfo pidentd rdate rdist routed rsh-client rsh-server ruptime rusers rusersd rwall rwalld rwho rwhod tftp tftpd traceroute wdsetup [2] perl-base: perl-base perl-5.004-base perl-5.005-base [3] perl: perl-5.004 perl-5.004-doc perl-5.005 perl-5.005-doc [4] vim: vim vim-gtk [5] [1] Die wichtigste Änderung ist, daß gmc nun nur die GNOME-Version enthält, während in mc nur die Textmodus-Version des Midnight-Commanders enthalten ist. Dafür kollidieren die beiden Pakete jetzt nicht mehr. [2] Nach dem Upgrade des netstd-Paketes und allen seinen Abhängigkeiten sollten Sie es deinstallieren, da es selbst keine Funktionalität mehr enthält. [3] Das Upgrade des perl-base-Pakets wird den Hauptteil von Perl in der Version 5.004 installieren. Um die gleiche Funktionalität aus der neuen Perl-Version zu bekommen, installieren Sie bitte das perl-5.005-base-Paket. Anschließend kann das Paket perl-5.004-base entfernt werden. [4] Das Upgrade des perl-Pakets wird die volle Perl-Distribution in der Version 5.004 installieren. Um die gleiche Funktionalität aus der neuen Perl-Version zu bekommen, sollten Sie die Pakete perl-5.005 und perl-5.005-doc installieren. Daanch können Sie die Pakete perl-5.004 und perl-5.004-doc entfernen. [5] Das vim-Paket enthielt ursprünglich eine einzige Version von vim für sowohl Textmodus als auch X11. Es wurde nun aufgeteilt, um auch die Installation ohne die X-Komponente zu ermöglichen. Obwohl wir uns bemüht haben, eine komplette Liste zu liefern, kann es sein, daß Sie nicht erschöpfend ist. 3.2. Notwendige Maßnahmen vor dem Upgrade ----------------------------------------- Bevor Sie das Upgrade starten, sollten Sie unbedingt ein Vollbackup machen oder zumindest alle Daten und Konfigurationsinfos sichern, deren Verlust Sie sich nicht erlauben können. Wir haben den Upgrade-Prozess und die dazu verwendeten Programme recht zuverlässig gemacht, aber ein Hardwareproblem während des Upgrades könnte in einem schwer beschädigten System resultieren. Die wichtigsten Dinge, die Sie wahrscheinlich sichern wollen, sind die Dateien in `/etc', `/var/lib/dpkg' und die Ausgabe von `dpkg --get-selections'. Es wäre sinnvoll, alle Benutzer im Voraus über alle geplanten Upgrades zu informieren, obwohl zumindest Benutzer, die per ssh arbeiten, nicht viel vom Upgrade mitbebekommen dürften, und evtl. weiterarbeiten möchten. Wenn Sie sicher gehen wollen, daß keine Benutzerdaten zerstört werden, unmounten Sie die `/home'-Partition, bevor Sie das Upgrade starten. Ein Weiterarbeiten ist dann jedoch nicht möglich. Das Upgrade der Distribution sollte entweder lokal im Textmodus (oder über ein direkt angeschlossenes serielles Terminal) oder über aus der Entfernung über eine `ssh'-Verbindung durchgeführt werden. Es wäre jedoch klug, wenn Sie sich die Möglichkeit zum physikalischen Zugriff auf den Rechner offenhalten oder zumindest jemanden in der Hinterhand haben, der notfalls Zugriff auf den Rechner nehmen kann. Was sie _nicht_ tun sollten, ist ein Upgrade über `telnet', `rlogin', `rsh' oder in einer X11-Sitzung, die über den `xdm' auf dem Zielrechner verwaltet wird. Diese Dienste werden nämlich mit hoher Wahrscheinlichkeit während der Upgrades terminiert und später dann neu gestartet werden, mit dem möglichen Resultat, daß Sie nach der Hälfte des Upgrades keinen Zugriff auf den Rechner mehr erlangen können. Unabhängig von der für das Upgrade benutzten Methode würden wir empfehlen, daß Sie zuerst den Status aller installierten Pakete überprüfen. Dies können Sie z.B. mit dpkg -l | pager oder dpkg --get-selections | pager machen, oder Sie können `dselect' dazu benutzen. Jede Paketinstallation muß als Systemverwalter durchgeführt werden, also melden Sie sich entweder als root anmelden oder `su' oder `sudo' benutzen, um die entsprechenden Zugriffsrechte zu erlangen. Es wäre wünschenswert, vor der Installation evtl. auf halten gesetzte Pakete wieder freizugeben. Ansonsten kann es passieren, daß ein auf halten gesetztes Paket, das essentiell für das Upgrade ist, dazu führt, daß die Aktion fehlschlägt. Wenn Sie ein Paket lokal geändert und recompiliert und dieses nicht umbenannt haben oder eine neue Epoche eingetragen haben, müssen Sie es auf halten setzen um zu verhindern, daß es durch die neue offizielle Version ersetzt wird. Der `halten'-Status kann entweder über `dselect' geändert werden (durch Drücken von `H' und `G' in der Paketauswahl für Halten respektive Freigeben des Pakets) oder über die Kommandozeile durch dpkg --get-selections > dateiname , Ändern der datei `dateiname' durch Austauschen der Stati "hold" und "install" und Aktivierung der Änderungen durch Ausführung von dpkg --set-selections < dateiname . Es wird dringend empfohlen, mit dem `script'-Programm eine Mitschrift der Upgradesitzung aufzunehmen. [1] Wenn Sie dann auf Probleme treffen, können Sie gucken, was passiert ist, und wenn nötig exakte Informationen in einer Problembeschreibung liefern. Um die Aufzeichnung zu starten, geben Sie script -a /upgrade-2.2.typescript oder entsprechendes ein. Denken Sie daran, die Mitschrift nicht in einem temporäres Verzeichnis wie `/tmp' oder `/var/tmp' zu speichern. [1] In der Tat ist es immer eine gute Idee, Installationen und andere aufzeichnungswürdige Aktionen mittels `script' zu protokollieren. Das `/usr/share/doc'-Verzeichnis (falls es schon existiert) sollte kein symbolischer Link (wie z.B. nach `/usr/doc') sein, da einige Pakete damit nicht klarkommen. Ein Link von `/usr/doc' nach `/usr/share/doc' dagegen ist erlaubt, wird jedoch zu vielen Fehlermeldungen bei Paketinstallationen führen, weil Verzeichnisse in `/usr/doc' nicht entfernt werden können. Diese Meldungen sind normal und Sie können einfach ignoriert werden. Es mag eine gute Idee sein, daß `ssh'-Paket, so es installiert ist, auf `halten' zu setzen, da es sonst durch OpenSSH, dem neuen `ssh'-Paket ersetzt werden wird und dieses noch immer nicht gänzlich kompatible zur alten Version ist. So ist die Konfigurationsdatei noch leicht inkompatibel, was dazu führen könnte, daß `sshd' nach dem Upgrade nicht mehr startet. Indem Sie das Paket vom Upgrade ausnehmen, können Sie sichergehen, daß das System weiterhin erreichbar ist. Sie können diese Probleme dann später lösen oder einfach das `ssh-nonfree'-Paket installieren, welches eine voll kompatible aber weiterhin unfreie Version von `ssh' ist. Anmerkung: Selbst, wenn Sie es nicht auf halten setzen, werden existierende Verbindungen nicht beendet werden. Die empfohlene Upgrade-Methode ist die direkte Benutzung des `apt-get'-Utilities. APT ist die nächste Generation unserer Paketverwaltung und ermöglicht glatte Upgrades und einfach Installationen. Die alten Zugriffsmethoden von `dselect' sollten _nicht_ mehr für größere Aktionen benutzt werden, weil diese keine Optimierung der Installationsreihenfolge vornehmen wie `apt' es tut und deswegen nicht so zuverlässig funktionieren. Dazu kommt, daß Upgrades mit deren Hilfe wesentlich weniger ausgetestet wurden und somit nicht wirklich unterstützt werden. 3.3. Der Upgradeprozess ----------------------- Wenn Sie Debian GNU/Linux 2.1 installiert haben und von Netzwerk (mit FTP oder HTTP) oder einem lokalen Mirror (möglicherweise auf EINER CD, einer Festplattenpartition oder einem NFS-Laufwerk) upgraden wollen, dann können Sie die `apt'- und `dpkg'-Pakete aus Ihrer alten Installation für das Upgrade benutzen. Bitte beachten Sie, daß Sie für ein Upgrade von _mehreren_ CDs auf jeden Fall die oben beschriebenen statischen Versionen von `apt' und `dpkg' benötigen. Wir empfehlen Ihnen, nun die Anleitungen zu apt-get(8) und sources.list(5) zu lesen. Vor Beginn des Upgrades müssen Sie die Quellen für APT in `/etc/apt/sources.list' an Ihre Bedürfnisse anpassen. `apt' wird alle Pakete, die über die "`deb'"-Zeilen dieser Datei gefunden werden können, für die Installation erwägen und jeweils die neueste Version benutzen. Dabei wird bevorzugt die erste mögliche Quelle aus `sources.list' verwendet. Wenn Sie also mehrere Quellen haben, sollten Sie zuerst Quellen auf Ihrer Festplatte angeben, dann CD-ROMs und zuletzt über das Internet verfügbare Quellen. 3.3.1. Einstellung zum Upgrade über das Internet ------------------------------------------------ Die Standardkonfiguration ist so eingestellt, daß das Upgrade über unsere Haupt-Internetserver durchgeführt wird. Sie sollten `/etc/apt/sources.list' jedoch so einstellen, daß netzwerkmäßig näherliegende Rechner verwendet werden. Eine Liste der verfügbaren Spiegel finden Sie unter http://www.debian.org/distrib/ftplist. Wenn Sie zum Beispiel den Mirror unter ftp://alea.iacta.est/debian/ für APT benutzen wollen, dann tragen Sie folgendes Zeile in die `sources.list' ein: deb ftp://alea.iacta.est/debian potato main contrib Beachten Sie, daß das ``dists''-Verzeichnis implizit eingefügt wird and die Parameter hinter dem dritten benutzt werden, um den Pfad in mehrere Verzeichnisse zu expandieren. Angenommen, der Mirror enthält auch die non-US/* Sektionen unter ftp://alea.iacta.est/debian/debian-non-US. Dann kann darauf mit einer weiteren Zeile zugreifen: deb ftp://alea.iacta.est/debian potato main contrib deb ftp://alea.iacta.est/debian/debian-non-US potato/non-US main contrib Jedes Paket, das zur Installation benötigt wird und über Netzwerk bezogen wird, wird in `/var/cache/apt/partial' heruntergeladen und dann nach `/var/cache/apt' verschoben. Sie müssen also sicherstellen, daß für das Verzeichnis `/var/cache/apt' genügend Speicherplatz zur Verfügung steht, bevor Sie das Upgrade starten. Hinweis: Wenn Sie die oben erwähnten statische Version von `apt' verwenden, funktioniert die Umsetzung von Rechnernamen in IP-Adressen nicht, was ein Grund ist, die slink-Version von `apt' zu benutzen. Die Lösung besteht darin, in der `sources.list' die IP-Adresse anstatt des Rechnernamens anzugeben. Diese kann man mit Hilfe von `nslookup' ermitteln. So liefert nslookup ftp.de.debian.org die Adresse `141.76.2.4'. 3.3.2. Einstellung zum Upgrade von CD-ROM ----------------------------------------- Der `apt'-Code für die Behandlung mehrerer CD-ROMs als Installationsmedium wird über das `apt-cdrom'-Programm angesteuert. Sie müssen zuerst `apt' (version 0.3.x) von der ersten CD wie oben beschrieben installieren. Stellen Sie sicher, daß `/etc/fstab' eine Zeile für das Mounten des CD-ROM Laufwerkes nach `/cdrom' enthält. Es muß wirklich `/cdrom' sein, daß `apt-cdrom' diesen Pfad voraussetzt. Wenn Ihr CD-ROM z.B. das erste Gerät am zweiten IDE-Controller ist, sollte in `/etc/fstab' die folgende Zeile sein: /dev/hdc /cdrom auto defaults,noauto,ro 0 0 Um sicher zu gehen, daß es funktioniert, legen Sie eine CD ein und probieren Sie die folgenden Kommandos: mount /cdrom (dies wird den Inhalt der CD unter /cdrom einbinden) ls -alF /cdrom (Inhalt des Hauptverzeichnisses der CD zeigen) umount /cdrom (gibt die CD wieder frei) Als nächstes führen Sie den Befehl apt-cdrom add für jede CD in ihrem CD-Satz, um die Daten über jede CD in die APT-Datenbank einzutragen. 3.3.3. Upgrading ---------------- Sobald Sie `apt' konfiguriert haben, führen Sie den Befehl apt-get update als root aus. Damit wird von jeder Quelle die Paketliste angefordert und die APT-Datenbank über verfügbare Pakete auf den aktuellen Stand gebracht. Einige Benutzer ziehen es vor, vor `apt-get -f dist-upgrade' mit dem Befehl apt-get --fix-broken --show-upgraded --dry-run dist-upgrade | pager zu überprüfen, was genau passieren wird. Das ist zwar ein ziemlicher Zeitaufwand, vermeidet aber eventuelle Überraschungen. Dieses Kommando wird Ihnen entweder mitteilen, was an Ihrem System nicht stimmt (und hoffentlich, wie man es beheben kann), oder, was wahrscheinlicher ist, was genau während des Upgrades gemacht wird. Achten Sie besonders auf Pakete, die `apt' löschen möchte. Nachdem Sie sichergestellt haben, daß `apt-get' nichts unartiges machen möchte, führen Sie den Befehl apt-get --fix-broken --show-upgraded dist-upgrade aus. Dieser zeigt Ihnen eine Übersicht, was `apt' vorhat sowie eine Information, wieviel aus dem Netz heruntergeladen werden wird. Wenn Sie bestätigen wird es ein komplettes Upgrade Ihres Systems ausführen. Das bedeutet, daß alle installierten Pakete auf den neuesten Stand gebracht und alle Abhängigkeiten aufgelöst werden. Es kann sein, daß apt dafür einige Pakete zusätzlich installieren wird, vorwiegend neue Bibliotheken oder umbenannte Pakete, aber es sollte kein momentan installiertes Paket ersatzlos löschen. Wenn Sie von mehreren CDs upgraden, werden sie einige Male aufgefordert werden, verschiedene CDs einzulegen. Dies kommt daher, daß einige voneinander abhängige Pakete über die CDs verteilt wurden. Es kann sein, daß einige Pakete nicht aktualisiert werden, obwohl eine neue Version zur Verfügung steht. Dies sind Pakete, die nicht aktualisiert werden können, ohne den Status eines anderen Paketes zu ändern. Diese werden als zurückgehaltene Pakete angezeigt. Es kann also nötig werden, `dselect' oder `apt-get' zu benutzen, um diese Pakete von Hand zu aktualisieren. Sie können auch versuchen, `apt-get dselect-upgrade' aufzurufen, um diese Probleme geradezuziehen. Die Option `--fix-broken' (oder einfach `-f') sagt `apt', daß er versuchen soll, ein System mit momentan verletzten Abhängigkeiten zu reparieren. `apt' läßt es nicht zu, daß die Abhängigkeiten zwischen Paketen verletzt werden. 3.3.3.1. Mögliche Probleme während und nach dem Upgrade ------------------------------------------------------- Es ist mögliht, daß das Abhängigkeitsnetz des Systems so korrupt ist, daß es nötig ist, von Hand einzugreifen. Normalerweise löst man diese Probleme mit `dselect', entfernt die problematischen Pakete mit dpkg --remove oder versucht, ob sich das Problem mit apt-get -f -u install dpkg --configure --pending automatisch lösen läßt. In Extremfällen muß man vielleicht sogar die Reinstallation eines Paketes mit dpkg --install /pfad/zum/paket.deb zu erzwingen. Anschließend sollten Sie in der Lage sein, das Upgrade mit den zuvor beschriebenen `dist-upgrade'-Kommandos fortzusetzen. Während des Upgrades werden Ihnen einige Fragen zur Konfiguration oder Neukonfiguration verschiedener Pakete gestellt. Falls Sie gefragt werden, ob neue Konfigurationsdateien im Verzeichnis `/etc/init.d' oder `/etc/terminfo' oder eine neue Version von `/etc/manpath.config' installiert werden soll, sollten Sie das normalerweise mit `yes' bestätigen, um das System konsistent zu halten. Sie können auf jeden Fall zu der alten Version zurückkehren, da diese mit der Endung `.dpkg-old' gesichert wird. Wenn Sie nicht sicher sind, was zu tun ist, schreiben Sie den Namen des Pakets oder der Datei auf und bringen Sie das später in Ordnung. Sie können immer in Ihrer Mitschrift gucken, was genau während des Upgrades angezeigt wurde. Wenn `apt-get dist-upgrade' durch ist, ist der "formelle" Teil des Upgrades erledigt, aber es bleiben einige Dinge, die man _vor_ dem Neustart erledigen sollte. Das wichtigste ist, daß die Pakete `locales' und `util-linux' evtl. installiert werden müssen. Dies kann mit apt-get install locales util-linux erledigt werden. Wenn Sie von Version 2.0 oder früher upgraden, wird dadurch das `getty'-Paket entfernt werden, da `getty' nun im Paket `util-linux' mitgeliefert wird. Wahrscheinlich gibt es noch einige weitere Pakete, die installiert werden müssen, ohne das `apt-get' das erkennt. Das liegt daran, daß `apt-get' nur die Abhängigkeiten der Pakete berücksichtigt, nicht die Empfehlungen und Vorschläge, die mit den Paketen kommen. Diese können recht einfach mit `dselect' gefunden werden: Gehen sie in die Paketauswahl, drücken Sie `o', `o', `v' und Shift-d, dann suchen Sie nach einer Trennzeile --- Obsolete and local packages present on system --- In dieser Sektion finden Sie alle solche Pakete. Zum Beispiel wurden die Pakete `gimp-smotif' und `gimp-dmotif' seit Debian GNU/Linux 2.1 durch das `gimp'-Paket ersetzt. Sie können dieses entweder mit `dselect' installieren, welches Sie dann darüber das Problem informieren wird, daß die alten Pakete entfernt werden müssen. Alternativ können Sie einfach apt-get install gimp ausführen, was ebenso die alten Gimp-Pakete entfernen wird. Ein anderes Beispiel, welches nicht mal in `dselect' angezeigt wird, sind die Server und Klienten für `talk' und `telnet' und der NFS-Server, die vom alten `netstd'-Paket abgespalten wurden. Diese können Sie z.B. mit apt-get install telnet telnetd talk talkd nfs-server installieren. Das gleiche gilt für das `manpages-dev'-Paket, das vom `manpages'-Paket abgespalten wurde. Bitte konsultieren Sie die Release Notes von Debian GNU/Linux 2.1 zu mehr Informationen über diese Pakete. Viel Spaß mit der neuen Debian GNU/Linux 2.2! :-) ------------------------------------------------------------------------------- Release Notes für Debian GNU/Linux 2.2 (`potato'), Alpha Josip Rodin, Bob Hilliard, Adam Di Carlo, Anne Bezemer $Id: release-notes.de.sgml,v 1.6 2000/07/24 17:33:42 joy Exp $