Hallo allerseits! Ich habe «mein» zweites FAQ-Kapitel übersetzt und sende nun den Patch gegen das (eng. Original) ebenfalls mit der Bitte um Kritik/Korrekturen sowie Einchecken an die Liste! Einen schönen Abend und Grüsse, Jonas -- Jonas Huber <jonas@hubjo.org>, Registered Linux User #343557. Encrypted/signed mails preferred. Public PGP Key ID: 0x8D3457FE, download at http://www.hubjo.org/keys/hubjo.asc.
--- ../customizing.sgml 2005-12-10 23:26:50.000000000 +0100 +++ customizing.sgml 2006-04-17 20:09:45.000000000 +0200 @@ -1,256 +1,267 @@ -<!-- retain these comments for translator revision tracking --> -<!-- Original version: $Revision: 1.13 $ --> -<chapt id="customizing">Customizing your installation of &debian; - -<sect id="papersize">How can I ensure that all programs use the same - paper size? - -<p>Install the <package/libpaper1/ package, and it will ask you for a -system-wide default paper size. This setting will be kept in the file -<tt>/etc/papersize</tt>. - -<p>Users can override the paper size setting using the <tt>PAPERSIZE</tt> -environment variable. For details, see the manual page -<manref name="papersize" section="5">. - -<sect id="hardwareaccess">How can I provide access to hardware peripherals, - without compromising security? - -<p>Many device files in the <tt>/dev</tt> directory belong to some -predefined groups. For example, <tt>/dev/fd0</tt> belongs to the -<tt>floppy</tt> group, and <tt>/dev/dsp</tt> belongs to the -<tt>audio</tt> group. +<!-- CVS revision of original english document "1.13" --> -<p>If you want a certain user to have access to one of these devices, just -add the user to the group the device belongs to, i.e. do: - <example>adduser user group</example> -This way you won't have to change the file permissions on the device. +<chapt id="customizing">Anpassen Ihrer &debian;-Installation + +<sect id="papersize">Wie kann ich sicherstellen, dass alle Programme +die selbe Papiergrösse verwenden? + +<p>Installieren Sie das Paket <package/libpaper1/ und es wird nach einer +systemweiten Standardpapiergrösse fragen. Diese Einstellung wird in der +Datei <tt>/etc/papersize</tt> gespeichert. + +<p>Benutzer können sich über die Papiergrössen-Einstellung hinwegsetzen, +indem sie die <tt>PAPERSIZE</tt>-Umgebungsvariable verwenden. Für Details +siehe die Handbuchseite <manref name="papersize" section="5">. + +<sect id="hardwareaccess">Wie kann kann ich Zugang zu Peripheriegeräten +zur Verfügung stellen ohne die Sicherheit zu kompromittieren? + +<p>Viele Geräte-Dateien im <tt>/dev/</tt>-Verzeichnis gehören zu einer +vordefinierten Gruppe. Zum Beispiel gehört <tt>/dev/fd0</tt> zu der +<tt>floppy</tt>-Gruppe und <tt>/dev/dsp</tt> gehört zur <tt>audio</tt>-Gruppe. -<sect id="consolefont">How do I load a console font on startup the Debian way? +<p>Wenn Sie einem bestimmten Benutzer Zugriff auf eines dieser Geräte geben +wollen fügen Sie ihn zu der Gruppe hinzu, zu der das Gerät gehört, also z.B.: + <example>adduser user group</example> +Auf diese Art müssen Sie die Dateiberechtigungen des Gerätes nicht ändern. -<p>The <package/kbd/ and <package/console-tools/ packages support this, -edit <tt>/etc/kbd/config</tt> or <tt>/etc/console-tools/config</tt> files. +<sect id="consolefont">Wie kann ich eine Konsolen-Schriftart auf Debian-Art +beim Systemstart laden? -<sect id="appdefaults">How can I configure an X11 program's application - defaults? - -<p>Debian's X programs will install their application resource data in the -<tt>/etc/X11/app-defaults/</tt> directory. If you want to customize X -applications globally, put your customizations in those files. They are -marked as configuration files, so their contents will be preserved during -upgrades. - -<sect id="booting">Every distribution seems to have a different boot-up - method. Tell me about Debian's. - -<p>Like all Unices, Debian boots up by executing the program <tt>init</tt>. -The configuration file for <tt>init</tt> (which is <tt>/etc/inittab</tt>) -specifies that the first script to be executed should be -<tt>/etc/init.d/rcS</tt>. This script runs all of the scripts in -<tt>/etc/rcS.d/</tt> by sourcing or forking subprocess depending on their file -extension to perform initialization such as to check and to mount file systems, -to load modules, to start the network services, to set the clock, and to -perform other initialization. Then, for compatibility, it runs the files -(except those with a `.'in the filename) in <tt>/etc/rc.boot/</tt> too. Any -scripts in the latter directory are usually reserved for system administrator -use, and using them in packages is deprecated. - -<p>After completing the boot process, <tt>init</tt> executes all start -scripts in a directory specified by the default runlevel (this runlevel -is given by the entry for <tt>id</tt> in <tt>/etc/inittab</tt>). -Like most <!-- all? SGK --> System V compatible Unices, Linux has 7 runlevels: +<p>Die Pakete <package/kbd/ und <package/console-tools/ unterstützen dies. +Editieren Sie dazu die Datei <tt>/etc/kbd/config</tt> oder +<tt>/etc/console-tools/config</tt>. + +<sect id="appdefaults">Wie kann ich die Standardeinstellung eines +X11-Programms konfigurieren? + +<p>Die Debian-X-Programme installieren ihre Anwendungs-Ressource-Daten +im Verzeichnis <tt>/etc/X11/app-defaults/</tt>. Wenn sie eine X-Anwendung +global anpassen wollen, schreiben Sie Ihre Anpassungen in diese Dateien. +Sie sind als Konfigurationsdateien markiert, so dass ihre Inhalte bei +einem Upgrade erhalten bleiben. + +<sect id="booting">Jede Distribution scheint eine andere boot-up-Methode +zu haben. Beschreiben Sie jene von Debian. + +<p>Wie alle Unices bootet Debian durch das Ausführen des Programms +<tt>init</tt>. Die Konfigurationsdatei für <tt>init</tt> (sie heißt +<tt>/etc/inittab</tt>) spezifiziert, dass das erste auszuführende Skript +<tt>/etc/init.d/rcS</tt> sein sollte. Dieses Skript führt alle Skripte im +<tt>/etc/rcS.d/</tt>-Verzeichnis aus, indem es die Subprozesse abhängig von +ihrer Dateinamenerweiterung entweder auslagert oder gabelt, um Initialisationen +durchzuführen, wie zum Beispiel Dateisysteme zu prüfen und mounten, Module zu laden, +Netzwerkdienste zu starten, die Uhr zu stellen und weitere Initialisierungen +auszuführen. Danach, aus Kompatibilitätsgründen, führt es auch die Dateien in +<tt>/etc/rc.boot/</tt> (außer jene mit einem «.» im Dateinamen) aus. Alle +Skripte in diesem Verzeichnis sind üblicherweise für den Systemadministrator +reserviert, sie in Paketen zu verwenden wird abgelehnt. + +<p>Nachdem der Boot-Prozess abgeschlossen ist führt <tt>init</tt> alle +Start-Skripte in einem durch den Standard-Runlevel (dieser Runlevel wird +durch den Eintrag <tt>id</tt> in <tt>/etc/inittab</tt> festgelegt) spezifizierten +Verzeichnis aus. Wie alle zu System V kompatiblen Unices hat Linux 7 Runlevels: <list> - <item>0 (halt the system), - <item>1 (single-user mode), - <item>2 through 5 (various multi-user modes), and - <item>6 (reboot the system). + <item>0 (das System anhalten), + <item>1 (Einzel-Benutzer-Modus), + <item>2 bis 5 (verschiedene Mehr-Benutzer-Modi) und + <item>6 (das System neu starten). </list> -Debian systems come with id=2, which indicates that the default -runlevel will be '2' when the multi-user state is entered, and the -scripts in <tt>/etc/rc2.d/</tt> will be run. - -<p>In fact, the scripts in any of the directories, <tt>/etc/rcN.d/</tt> -are just symbolic links back to scripts in <tt>/etc/init.d/</tt>. However, -the <em>names</em> of the files in each of the <tt>/etc/rcN.d/</tt> -directories are selected to indicate the <em>way</em> the scripts in -<tt>/etc/init.d/</tt> will be run. Specifically, before entering any -runlevel, all the scripts beginning with 'K' are run; these scripts kill -services. Then all the scripts beginning with 'S' are run; these scripts -start services. The two-digit number following the 'K' or 'S' indicates -the order in which the script is run. Lower numbered scripts are executed -first. - -<p>This approach works because the scripts in <tt>/etc/init.d/</tt> all -take an argument which can be either `start', `stop', `reload', `restart' -or `force-reload' and will then do the task indicated by the argument. -These scripts can be used even after a system has been booted, to control -various processes. +Debian-System kommen mit id=2, was bedeutet, dass der Standard-Runlevel «2» +ist wenn der Mehrbenutzer-Zustand gestartet wird, und dass die Skripte in +<tt>/etc/rc2.d/</tt> ausgeführt werden. + +<p>Tatsächlich sind die Skripte in jedem der Verzeichnisse <tt>/etc/rcN.d/</tt> +nur symbolische Verweise zurück auf Skripts in <tt>/etc/init.d/</tt>. Wie auch +immer, die <em>Namen</em> der Dateien in jedem der <tt>/etc/rcN.d/</tt>-Verzeichnisse +sind so gewählt, dass sie darauf hinweisen, <em>wie</em> die Skripte in +<tt>/etc/init.d/</tt> ausgeführt werden. Konkret werden vor dem Aktivieren +eines Runlevels alle Skripte, die mit einem «K» beginnen, ausgeführt; diese +Skripte beenden Dienste. Danach werden alle Skripte, die mit einem «S» beginnen, +ausgeführt; diese Skripte starten Dienste. Die zweistellige Zahl, die dem «K» oder +dem «S» folgt, bestimmt die Reihenfolge, in welcher die Skripte ausgeführt werden. +Jene mit tieferer Nummer werden zuerst ausgeführt. + +<p>Diese Methode funktioniert weil die Skripte in <tt>/etc/init.d/</tt> +alle ein Argument übernehmen, welches entweder «start», «stop», «reload», +«restart» oder «force-reload» sein kann, und danach das dem Argument +entsprechende tun. Diese Skripte könne auch noch nach dem Starten des Systems +benutzt werden um verschiedene Prozesse zu kontrollieren. -<p>For example, with the argument `reload' the command +<p>Zum Beispiel sendet das Argument «reload» im Befehl <example>/etc/init.d/sendmail reload</example> -sends the sendmail daemon a signal to reread its configuration file. (BTW, -Debian supplies <prgn/invoke-rc.d/ as a wrapper for invoking the scripts in -<tt>/etc/init.d/</tt>.) - -<sect id="custombootscripts">It looks as if Debian does not use - <tt>rc.local</tt> to customize the boot process; what facilities - are provided? - -<p>Suppose a system needs to execute script <tt>foo</tt> on start-up, -or on entry to a particular (System V) runlevel. Then the system -administrator should: +dem sendmail-Daemon ein Signal, seine Konfigurationsdatei neu einzulesen. (Übrigens +stellt Debian mit <prgn/invoke-rc.d/ einen Wrapper zum Aufruf der Skripte in +<tt>/etc/init.d/</tt> zur Verfügung.) + +<sect id="custombootscripts">Es scheint so als ob Debian <tt>rc.local</tt> nicht +zum Anpassen des Bootprozesses verwendet; welche Einrichtungen gibt es? + +<p>Nehmen Sie an, ein System solle beim Hochfahren das Skript <tt>foo</tt> +ausführen oder einen bestimmten (System-V-) Runlevel aktivieren. Dann sollte +der Systemadministrator: <list> - <item>Enter the script <tt>foo</tt> into the directory <tt>/etc/init.d/</tt>. - <item>Run the Debian command <tt>update-rc.d</tt> with appropriate - arguments, to set up links between the (command-line-specified) directories - rc?.d and <tt>/etc/init.d/foo</tt>. Here, '?' is a number from 0 through 6 - and corresponds to each of the System V runlevels. - <item>Reboot the system. + <item>das Skript <tt>foo</tt> ins Verzeichnis <tt>/etc/init.d/</tt> + verschieben, + <item>den Debian-Befehl <tt>update-rc.d</tt> mit den passenden Argumenten + ausführen um die Verweise zwischen den (in der Befehlszeile spezifizierten) + Verzeichnissen <tt>rc?.d</tt> und <tt>/etc/init.d/foo</tt> (das «?» ist eine + Nummer zwischen 0 und 6, die je einem der System-V-Runlevel entspricht) + einzurichten, + <item>das System neu starten. </list> -<p>The command <tt>update-rc.d</tt> will set up links between files in -the directories rc?.d and the script in <tt>/etc/init.d/</tt>. -Each link will begin with a 'S' or a 'K', followed by a number, followed -by the name of the script. Scripts beginning with 'S' in -<tt>/etc/rcN.d/</tt> are executed when runlevel <tt>N</tt> is entered. -Scripts beginning with a 'K' are executed when leaving runlevel <tt>N</tt>. - -<p>One might, for example, cause the script <tt>foo</tt> to execute at -boot-up, by putting it in <tt>/etc/init.d/</tt> and installing the links with -<tt>update-rc.d foo defaults 19</tt>. The argument 'defaults' refers -to the default runlevels, which are 2 through 5. The argument '19' ensures -that <tt>foo</tt> is called before any scripts containing numbers 20 -or larger. - -<sect id="interconffiles">How does the package management system deal with - packages that contain configuration files for other packages? - -<p>Some users wish to create, for example, a new server by installing a -group of Debian packages and a locally generated package consisting of -configuration files. This is not generally a good idea, because <prgn/dpkg/ -will not know about those configuration files if they are in a different -package, and may write conflicting configurations when one of the -initial "group" of packages is upgraded. - -<p>Instead, create a local package that modifies the configuration files -of the "group" of Debian packages of interest. Then <prgn/dpkg/ and the -rest of the package management system will see that the files have been -modified by the local "sysadmin" and will not try to overwrite them when -those packages are upgraded. +<p>Der Befehl <tt>update-rc.d</tt> richtet Verweise zwischen den Dateien +in den <tt>rc?.d</tt>-Verzeichnissen und dem Skript in <tt>/etc/init.d/</tt> +ein. Jeder Verweis beginnt entweder mit einem «S» oder einem «K», gefolgt +von einer Nummer, der wiederum der Name des Skripts folgt. Skripte in +<tt>/etc/rc<var>N</var>.d/</tt>, die mit einem «S» beginnen werden ausgeführt +wenn in den Runlevel <var>N</var> gewechselt wird. Skripte, die mit einem +«K» beginnen werden beim Verlassen des Runlevels <var>N</var> ausgeführt. + +<p>Man könnte also zum Beispiel das Skript <tt>foo</tt> beim Systemstart +ausführen lassen, indem man es nach <tt>/etc/init.d/</tt> kopiert und die +Verweise mit <tt>update-rc.d foo defaults 19</tt> einrichtet. Das Argument +«defaults» bezieht sich auf die Standard-Runlevel, welche 2 bis 5 sind. Das +Argument «19» führt dazu, dass <tt>foo</tt> vor allen Skripts mit Nummer 20 +oder höher aufgerufen wird. + +<sect id="interconffiles">Wie geht das Paketverwaltungssystem mit Paketen um, +die Konfigurationsdateien für andere Pakete enthalten? + +<p>Manche Benutzer möchten zum Beispiel einen neuen Server einrichten, indem +sie eine Gruppe von Debian-Paketen installieren und ein lokal generiertes +Paket, welches aus Konfigurationsdateien besteht. Dies ist grundsätzlich keine +gute Idee, weil <prgn/dpkg/ nichts über diese Konfigurationsdateien weiß, wenn +sie in einem anderen Paket sind und daher Konfigurationen schreiben könnte, die +zu Konflikten führen, wenn eines der Pakete in der ursprünglichen «Gruppe» +aktualisiert wird. + +<p>Daher ist es besser, ein lokales Paket zu erstellen, das die Konfigurationsdateien +der «Gruppe» der jeweiligen Debian-Pakete modifiziert. Dann sieht <prgn/dpkg/ +und der Rest des Paketverwaltungssystems, dass die Dateien durch den lokalen +Systemverwalter modifiziert worden sind und versucht nicht, sie zu +überschreiben, wenn diese Pakete aktualisiert werden. <!-- check against dpkg-divert description --> -<sect id="divert">How do I override a file installed by a package, so that - a different version can be used instead? - -<p>Suppose a sysadmin or local user wishes to use a program "login-local" -rather than the program "login" provided by the Debian <package/login/ -package. +<sect id="divert">Wie kann ich eine durch ein Paket installierte Datei +außer Kraft setzen, so dass stattdessen eine andere Version verwendet +werden kann? + +<p>Nehmen Sie an, dass ein Systemadministrator oder ein lokaler Benutzer lieber +ein Programm «<tt>login-local</tt>» anstatt das vom Debian-Paket <package/login/ +zur Verfügung gestellte Programm «<tt>login</tt>» verwenden möchte. -<p>Do <strong/not/: +<p>Sie sollten <strong/nicht/: <list> - <item>Overwrite <tt>/bin/login</tt> with <tt>login-local</tt>. + <item><tt>/bin/login</tt> mit <tt>login-local</tt> überschreiben. </list> -The package management system will not know about this change, and will simply -overwrite your custom <tt>/bin/login</tt> whenever <tt>login</tt> (or any -package that provides <tt>/bin/login</tt>) is installed or updated. +Das Paketverwaltungssystem weiß nichts über diese Veränderung und wird +einfach Ihr angepasstes <tt>/bin/login</tt> jedes mal überschreiben, wenn <tt>login</tt> +(oder jedes andere Paket, welches <tt>/bin/login</tt> bereitstellt) installiert +oder aktualisiert wird. <!-- XXX dpkg-divert: is this correct ? --> -<p>Rather, do +<p>Tun Sie besser folgendes: <list> - <item>Execute: - <example>dpkg-divert --divert /bin/login.debian /bin/login</example> - in order to cause all future installations of the Debian <package/login/ - package to write the file <tt>/bin/login</tt> to <tt>/bin/login.debian</tt> - instead. - <item>Then execute: - <example>cp login-local /bin/login</example> - to move your own locally-built program into place. + <item>Führen Sie folgenden Befehl aus: + <example>dpkg-divert --divert /bin/login.debian /bin/login</example> Dies + führt dazu, dass bei allen zukünftigen Installationen des Debian-Pakets + <package/login/ die Datei <tt>/bin/login</tt> nach <tt>/bin/login.debian</tt> + geschrieben wird. + <item>Und dann folgenden: + <example>cp login-local /bin/login</example> Dadurch wird Ihre eigenes lokal + erstelltes Programm an den richtigen Ort kopiert. </list> -<p>Details are given in the manual page <manref name="dpkg-divert" section="8">. +<p>Details dazu finden Sie auf der Handbuchseite <manref name="dpkg-divert" section="8">. + +<sect id="localpackages">Wie kann ich meine lokal erstellten Pakete in die Liste +der verfügbaren Pakete, von denen das Paketmanagementsystem weiß, aufnehmen? -<sect id="localpackages">How can I have my locally-built package included in - the list of available packages that the package management system knows - about? - -<p>Execute the command: - -<example> -dpkg-scanpackages BIN_DIR OVERRIDE_FILE [PATHPREFIX] > my_Packages -</example> - -<p>where: - <list> - <item>BIN-DIR is a directory where Debian archive files (which usually - have an extension of ".deb") are stored. - <item>OVERRIDE_FILE is a file that is edited by the distribution - maintainers and is usually stored on a Debian FTP archive at - <tt>indices/override.main.gz</tt> for the Debian packages in - the "main" distribution. You can ignore this for local packages. - <item>PATHPREFIX is an <em>optional</em> string that can be prepended - to the <tt>my_Packages</tt> file being produced. - </list> - -<p>Once you have built the file <tt>my_Packages</tt>, tell the package -management system about it by using the command: - -<example> -dpkg --merge-avail my_Packages -</example> - -<p>If you are using APT, you can add the local repository to your -<manref name="sources.list" section="5"> file, too. - -<sect id="diverse">Some users like mawk, others like gawk; some like vim, - others like elvis; some like trn, others like tin; how does Debian - support diversity? - -<p>There are several cases where two packages provide two different versions -of a program, both of which provide the same core functionality. Users -might prefer one over another out of habit, or because the user -interface of one package is somehow more pleasing than the interface of -another. Other users on the same system might make a different choice. - -<p>Debian uses a "virtual" package system to allow system administrators -to choose (or let users choose) their favorite tools when there are two -or more that provide the same basic functionality, yet satisfy package -dependency requirements without specifying a particular package. - -<p>For example, there might exist two different versions of newsreaders on -a system. The news server package might 'recommend' that there exist -<em>some</em> news reader on the system, but the choice of <tt>tin</tt> -or <tt>trn</tt> is left up to the individual user. This is satisfied by -having both the <package/tin/ and <package/trn/ packages provide the -virtual package <package/news-reader/. <em>Which</em> program is -invoked is determined by a link pointing from a file with the virtual -package name <tt>/etc/alternatives/news-reader</tt> to the selected file, -e.g., <tt>/usr/bin/trn</tt>. - -<p>A single link is insufficient to support full use of an alternate -program; normally, manual pages, and possibly other supporting files -must be selected as well. The Perl script <tt>update-alternatives</tt> -provides a way of ensuring that all the files associated with a specified -package are selected as a system default. - -<p>For example, to check what executables provide `x-window-manager', run: - <example>update-alternatives --display x-window-manager</example> -If you want to change it, run: - <example>update-alternatives --config x-window-manager</example> -And follow the instructions on the screen (basically, press the number -next to the entry you'd like better). - -<p>If a package doesn't register itself as a window manager for some reason -(file a bug if it's in error), or if you use a window manager from /usr/local -directory, the selections on screen won't contain your preferred entry. -You can update the link through command line options, like this: - <example>update-alternatives --install /usr/bin/x-window-manager \ - x-window-manager /usr/local/bin/wmaker-cvs 50</example> - -<p>The first argument to `--install' option is the symlink that points to -/etc/alternatives/NAME, where NAME is the second argument. The third argument -is the program to which /etc/alternatives/NAME should point to, and the -fourth argument is the priority (larger value means the alternative will more -probably get picked automatically). +<p>Führen sie folgenden Befehl aus: +<example>dpkg-scanpackges BIN_DIR OVERRIDE_FILE [PATHPREFIX] > my_Packages</example> + +<p>Dabei ist +<list> + <item>BIN_DIR ein Verzeichnis, wo Debian-Archiv-Dateien (welche üblicherweise + die Endung «.deb» haben) gespeichert sind. + <item>OVERRIDE_FILE eine Datei, die von den Betreuern der Distribution editiert + worden ist und üblicherweise in einem Debian-FTP-Archiv in + <tt>indices/override.main.gz</tt> gespeichert ist für Debian-Pakete in der + «Main»-Distribution. Sie können dies für lokale Pakete ignorieren. + <item>PATHPREFIX eine <em>optionaler</em> Zeichenkette, die der zu erstellenden + <tt>my_Packages</tt>-Datei vorangestellt werden kann. +</list> -<p>To remove an alternative you added, simply run: - <example>update-alternatives --remove x-window-manager /usr/local/bin/wmaker-cvs</example> +<p>Wenn Sie die Datei <tt>my_Packages</tt> einmal erstellt haben, teilen Sie +dem dies Paketverwaltungssystem mit, indem Sie folgenden Befehl benutzen: +<example>dpkg --merge-avail my_Packages</example> + +<p>Wenn Sie APT verwenden, können Sie auch das lokale Paketdepot zu ihrer +<manref name="sources.list" section="5">-Datei hinzufügen. + +<sect id="diverse">Einige Benutzer mögen mawk, andere gawk; einige mögen vim, +andere elvis; einige trn, wieder andere tin; wie unterstützt Debian die Vielfalt? + +<!-- FIXME: Sind «mawk» etc. nicht Paketnamen und müssten entsprechend ausgezeichnet +werden? --> + +<p>Es gibt verschiedene Fälle, in denen zwei Pakete zwei verschiedene Versionen +eines Programms zur Verfügung stellen, wovon beide die selben Grundfunktionen +beherrschen. Benutzer mögen eines dem anderen aus Gewohnheit vorziehen, oder weil +die Benutzerschnittstelle des einen Pakets auf irgendeine Art attraktiver ist als +jene eines anderen. Andere Benutzer auf dem selben System könnten eine andere +Wahl treffen. + +<p>Debian verwendet ein «virtuelles» Paketsystem um den Systemadministratoren +zu erlauben, ihre favorisierten (oder jene der Benutzer) Werkzeuge zu wählen, +wenn es zwei oder mehr gibt, die die selben Basisfunktionen haben und dennoch +den Anforderungen der Paketabhängigkeiten genügen ohne ein bestimmtes Paket zu +spezifizieren. + +<p>Zum Beispiel könnten zwei verschiedene Versionen eines Newsreaders auf einem +System existieren. Das Newsserver-Paket könnte «empfehlen», dass es +<em>überhaupt einen</em> Newsreader auf dem System gibt, aber die Wahl von +<tt>tin</tt> oder <tt>trn</tt> ist dem einzelnen Benutzer überlassen. Dies wird +dadurch erreicht, dass beide Pakete <package/tin/ und <package/trn/ das virtuelle +Paket <package/news-reader/ bereitstellen. <em>Welches</em> der Programme +tatsächlich aufgerufen wird, wird durch einen Verweis, der von einer Datei mit +dem Namen des virtuellen Pakets <tt>/etc/alternatives/news-reader</tt> auf die +ausgewählte Datei zeigt, z.B. <tt>/usr/bin/trn</tt>. + +<p>Ein einzelner Verweis ist reicht nicht aus um die volle Verwendung eines +alternativen Programms zu unterstützen; normalerweise müssen Handbuchseiten +und möglicherweise andere Unterstützungsdateien ebenfalls ausgewählt werden. +Das Perl-Skript <tt>update-alternatives</tt> stellt einen Weg bereit, +sicherzustellen, dass alle Dateien, die mit einem bestimmten Paket in +Verbindung stehen, als einen systemweiten Standard gewählt werden. + +<p>Um zum Beispiel zu kontrollieren, welche ausführbaren Dateien +«x-window-manager» bereitstellen, führen Sie folgenden Befehl aus: +<example>update-alternatives --display x-window-manager</example> +Wenn Sie dies ändern wollen, führen Sie diesen Befehl aus: +<example>update-alternatives --config x-window-manager</example> Und folgen +Sie den Anweisungen auf dem Bildschirm (einfach gesagt: drücken Sie die Zahl, +welche neben dem Eintrag, den Sie am besten mögen, steht). + +<p>Wenn ein Paket sich selbst aus irgend einem Grund nicht als Fenstermanager +(senden Sie einen Fehlerbericht, wenn es ein Fehler ist), registriert, oder +wenn Sie einen Fenstermanager aus dem <tt>/usr/local/</tt>-Verzeichnis +verwenden, werden die Auswahlmöglichkeiten auf dem Bildschirm Ihren bevorzugten +Eintrag nicht enthalten. Sie können den Verweis über Befehlszeilen-Optionen +aktualisieren: +<example>update-alternatives --install /usr/bin/x-window-manager \ +x-window-manager /usr/local/bin/wmaker-cvs 50</example> + +<p>Das erste Argument für die «<tt>--install</tt>»-Option ist der symbolische +Verweis, der auf <tt>/etc/alternatives/<var>NAME</var></tt> zeigt, wobei +<var>NAME</var> das zweite Argument ist. Das dritte Argument ist das Programm, +auf welches <tt>/etc/alternatives/NAME</tt> zeigen soll, und das vierte Argument +ist die Priorität (ein größerer Wert bedeutet, dass diese Alternative +wahrscheinlicher automatisch ausgewählt wird). + +<p>Um eine Alternative, die Sie hinzugefügt haben, wieder zu entfernen, führen +Sie einfach folgenden Befehl aus: +<example>update-alternatives --remove x-window-manager \ +/usr/local/bin/wmaker-cvs</example>
Attachment:
signature.asc
Description: PGP signature