diff --git a/de_DE.ISO8859-1/books/handbook/Makefile b/de_DE.ISO8859-1/books/handbook/Makefile index 9d2f2c5486..65b686d316 100644 --- a/de_DE.ISO8859-1/books/handbook/Makefile +++ b/de_DE.ISO8859-1/books/handbook/Makefile @@ -1,227 +1,228 @@ # # $FreeBSD$ -# $FreeBSDde: de-docproj/books/handbook/Makefile,v 1.52 2007/03/23 15:50:37 jkois Exp $ -# basiert auf: 1.101 +# $FreeBSDde: de-docproj/books/handbook/Makefile,v 1.53 2007/04/11 19:41:36 jkois Exp $ +# basiert auf: 1.102 # # Build the FreeBSD Handbook in its German translation. # .PATH: ${.CURDIR}/../../share/sgml/glossary MAINTAINER=de-bsd-translators@de.FreeBSD.org DOC?= book FORMATS?= html-split HAS_INDEX= true USE_PS2PDF= yes INSTALL_COMPRESSED?= gz INSTALL_ONLY_COMPRESSED?= IMAGES_EN = advanced-networking/isdn-bus.eps IMAGES_EN+= advanced-networking/isdn-twisted-pair.eps IMAGES_EN+= advanced-networking/natd.eps IMAGES_EN+= advanced-networking/net-routing.pic IMAGES_EN+= advanced-networking/static-routes.pic IMAGES_EN+= geom/striping.pic IMAGES_EN+= install/adduser1.scr IMAGES_EN+= install/adduser2.scr IMAGES_EN+= install/adduser3.scr IMAGES_EN+= install/boot-mgr.scr IMAGES_EN+= install/console-saver1.scr IMAGES_EN+= install/console-saver2.scr IMAGES_EN+= install/console-saver3.scr IMAGES_EN+= install/console-saver4.scr IMAGES_EN+= install/desktop.scr IMAGES_EN+= install/disklabel-auto.scr IMAGES_EN+= install/disklabel-ed1.scr IMAGES_EN+= install/disklabel-ed2.scr IMAGES_EN+= install/disklabel-fs.scr IMAGES_EN+= install/disklabel-root1.scr IMAGES_EN+= install/disklabel-root2.scr IMAGES_EN+= install/disklabel-root3.scr IMAGES_EN+= install/disk-layout.eps IMAGES_EN+= install/dist-set.scr IMAGES_EN+= install/dist-set2.scr IMAGES_EN+= install/docmenu1.scr IMAGES_EN+= install/ed0-conf.scr IMAGES_EN+= install/ed0-conf2.scr IMAGES_EN+= install/edit-inetd-conf.scr IMAGES_EN+= install/fdisk-drive1.scr IMAGES_EN+= install/fdisk-drive2.scr IMAGES_EN+= install/fdisk-edit1.scr IMAGES_EN+= install/fdisk-edit2.scr IMAGES_EN+= install/ftp-anon1.scr IMAGES_EN+= install/ftp-anon2.scr IMAGES_EN+= install/hdwrconf.scr IMAGES_EN+= install/keymap.scr IMAGES_EN+= install/main1.scr IMAGES_EN+= install/mainexit.scr IMAGES_EN+= install/main-std.scr IMAGES_EN+= install/main-options.scr IMAGES_EN+= install/main-doc.scr IMAGES_EN+= install/main-keymap.scr IMAGES_EN+= install/media.scr IMAGES_EN+= install/mouse1.scr IMAGES_EN+= install/mouse2.scr IMAGES_EN+= install/mouse3.scr IMAGES_EN+= install/mouse4.scr IMAGES_EN+= install/mouse5.scr IMAGES_EN+= install/mouse6.scr IMAGES_EN+= install/mta-main.scr IMAGES_EN+= install/net-config-menu1.scr IMAGES_EN+= install/net-config-menu2.scr IMAGES_EN+= install/nfs-server-edit.scr IMAGES_EN+= install/ntp-config.scr IMAGES_EN+= install/options.scr IMAGES_EN+= install/pkg-cat.scr IMAGES_EN+= install/pkg-confirm.scr IMAGES_EN+= install/pkg-install.scr IMAGES_EN+= install/pkg-sel.scr IMAGES_EN+= install/probstart.scr IMAGES_EN+= install/routed.scr IMAGES_EN+= install/security.scr IMAGES_EN+= install/sysinstall-exit.scr IMAGES_EN+= install/timezone1.scr IMAGES_EN+= install/timezone2.scr IMAGES_EN+= install/timezone3.scr IMAGES_EN+= install/userconfig.scr IMAGES_EN+= install/userconfig2.scr IMAGES_EN+= install/xf86setup.scr IMAGES_EN+= install/example-dir1.eps IMAGES_EN+= install/example-dir2.eps IMAGES_EN+= install/example-dir3.eps IMAGES_EN+= install/example-dir4.eps IMAGES_EN+= install/example-dir5.eps IMAGES_EN+= mail/mutt1.scr IMAGES_EN+= mail/mutt2.scr IMAGES_EN+= mail/mutt3.scr IMAGES_EN+= mail/pine1.scr IMAGES_EN+= mail/pine2.scr IMAGES_EN+= mail/pine3.scr IMAGES_EN+= mail/pine4.scr IMAGES_EN+= mail/pine5.scr IMAGES_EN+= security/ipsec-network.pic IMAGES_EN+= security/ipsec-crypt-pkt.pic IMAGES_EN+= security/ipsec-encap-pkt.pic IMAGES_EN+= security/ipsec-out-pkt.pic IMAGES_EN+= vinum/vinum-concat.pic IMAGES_EN+= vinum/vinum-mirrored-vol.pic IMAGES_EN+= vinum/vinum-raid10-vol.pic IMAGES_EN+= vinum/vinum-raid5-org.pic IMAGES_EN+= vinum/vinum-simple-vol.pic IMAGES_EN+= vinum/vinum-striped-vol.pic IMAGES_EN+= vinum/vinum-striped.pic # Images from the cross-document image library IMAGES_LIB= callouts/1.png IMAGES_LIB+= callouts/2.png IMAGES_LIB+= callouts/3.png IMAGES_LIB+= callouts/4.png IMAGES_LIB+= callouts/5.png IMAGES_LIB+= callouts/6.png IMAGES_LIB+= callouts/7.png IMAGES_LIB+= callouts/8.png IMAGES_LIB+= callouts/9.png IMAGES_LIB+= callouts/10.png # # SRCS lists the individual SGML files that make up the document. Changes # to any of these files will force a rebuild # # SGML content SRCS+= audit/chapter.sgml SRCS+= book.sgml SRCS+= colophon.sgml SRCS+= freebsd-glossary.sgml SRCS+= advanced-networking/chapter.sgml SRCS+= basics/chapter.sgml SRCS+= bibliography/chapter.sgml SRCS+= boot/chapter.sgml SRCS+= config/chapter.sgml SRCS+= cutting-edge/chapter.sgml SRCS+= desktop/chapter.sgml SRCS+= disks/chapter.sgml SRCS+= eresources/chapter.sgml SRCS+= firewalls/chapter.sgml SRCS+= geom/chapter.sgml SRCS+= install/chapter.sgml SRCS+= introduction/chapter.sgml SRCS+= jails/chapter.sgml SRCS+= kernelconfig/chapter.sgml SRCS+= l10n/chapter.sgml SRCS+= linuxemu/chapter.sgml SRCS+= mac/chapter.sgml SRCS+= mail/chapter.sgml SRCS+= mirrors/chapter.sgml SRCS+= multimedia/chapter.sgml SRCS+= network-servers/chapter.sgml SRCS+= pgpkeys/chapter.sgml SRCS+= ports/chapter.sgml SRCS+= ppp-and-slip/chapter.sgml SRCS+= preface/preface.sgml SRCS+= printing/chapter.sgml SRCS+= security/chapter.sgml SRCS+= serialcomms/chapter.sgml SRCS+= users/chapter.sgml SRCS+= vinum/chapter.sgml +SRCS+= virtualization/chapter.sgml SRCS+= x11/chapter.sgml # Entities SRCS+= chapters.ent SRCS+= newsgroups.ent # alle Kapitel bauen CHAPTERS?= ${SRCS:M*chapter.sgml} SGMLFLAGS+= ${CHAPTERS:S/\/chapter.sgml//:S/^/-i chap./} SGMLFLAGS+= -i chap.freebsd-glossary pgpkeyring: pgpkeys/chapter.sgml @${JADE} -V nochunks ${OTHERFLAGS} ${JADEOPTS} -d ${DSLPGP} -t sgml ${MASTERDOC} URL_RELPREFIX?= ../../../.. DOC_PREFIX?= ${.CURDIR}/../../.. # # rules generating lists of mirror site from XML database. # XMLDOCS= mirrors-ftp:::mirrors.sgml.ftp.inc.tmp \ mirrors-cvsup:::mirrors.sgml.cvsup.inc.tmp \ eresources:::eresources.sgml.www.inc.tmp DEPENDSET.DEFAULT= transtable mirror XSLT.DEFAULT= ${XSL_MIRRORS} XML.DEFAULT= ${XML_MIRRORS} NO_TIDY.DEFAULT= yes PARAMS.mirrors-ftp+= --param 'type' "'ftp'" \ --param 'proto' "'ftp'" \ --param 'target' "'handbook/mirrors/chapter.sgml'" PARAMS.mirrors-cvsup+= --param 'type' "'cvsup'" \ --param 'proto' "'cvsup'" \ --param 'target' "'handbook/mirrors/chapter.sgml'" PARAMS.eresources+= --param 'type' "'www'" \ --param 'proto' "'http'" \ --param 'target' "'handbook/eresources/chapter.sgml'" SRCS+= mirrors.sgml.ftp.inc \ mirrors.sgml.cvsup.inc \ eresources.sgml.www.inc CLEANFILES+= mirrors.sgml.ftp.inc mirrors.sgml.ftp.inc.tmp \ mirrors.sgml.cvsup.inc mirrors.sgml.cvsup.inc.tmp \ eresources.sgml.www.inc eresources.sgml.www.inc.tmp .include "${DOC_PREFIX}/share/mk/doc.project.mk" .for p in ftp cvsup mirrors.sgml.${p}.inc: mirrors.sgml.${p}.inc.tmp ${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2>,;s,,,'\ < $@.tmp > $@ || (${RM} -f $@ && false) .endfor eresources.sgml.www.inc: eresources.sgml.www.inc.tmp ${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2>,;s,,,'\ < $@.tmp > $@ || (${RM} -f $@ && false) diff --git a/de_DE.ISO8859-1/books/handbook/basics/chapter.sgml b/de_DE.ISO8859-1/books/handbook/basics/chapter.sgml index f6f417bbd3..1fe997cc9e 100644 --- a/de_DE.ISO8859-1/books/handbook/basics/chapter.sgml +++ b/de_DE.ISO8859-1/books/handbook/basics/chapter.sgml @@ -1,2745 +1,2739 @@ Chris Shumway Umgeschrieben von - + Uwe Pierau Übersetzt von Grundlagen des UNIX Betriebssystems Übersicht Das folgende Kapitel umfasst die grundlegenden Kommandos und Funktionsweisen des Betriebssystems FreeBSD. Viel von dem folgenden Material gilt auch für jedes andere &unix;-artige System. Falls Sie mit dem Material schon vertraut sind, können Sie dieses Kapitel überlesen. Wenn FreeBSD neu für Sie ist, dann sollten Sie dieses Kapitel auf jeden Fall aufmerksam lesen. Dieser Abschnitt behandelt die folgenden Themen: virtuelle Konsolen, Zugriffsrechte unter &unix; sowie Datei-Flags unter &os;, Zugriffskontrolllisten für Dateisysteme, die Verzeichnisstruktur von &os;, Organisation von Dateisystemen unter &os;, Ein- und Abhängen von Dateisystemen, Prozesse, Dämonen und Signale, Shells und die Login-Umgebung, Texteditoren, Geräte und Gerätedateien, Binärformate unter &os; und wie Sie in den Manualpages nach weiteren Informationen suchen können. Virtuelle Konsolen und Terminals virtuelle Konsole Terminals Sie können FreeBSD mit einem Terminal benutzen, der nur Text darstellen kann. Wenn Sie FreeBSD auf diese Weise benutzen, stehen Ihnen alle Möglichkeiten eines &unix; Betriebssystems zur Verfügung. Dieser Abschnitt beschreibt was Terminals und Konsolen sind und wie sie unter FreeBSD eingesetzt werden. Die Konsole Konsole Wenn Ihr FreeBSD-System ohne eine graphische Benutzeroberfläche startet, wird am Ende des Systemstarts, nachdem die Startskripten gelaufen sind, ein Anmeldeprompt ausgegeben. Die letzten Startmeldungen sollten ähnlich wie die Folgenden aussehen: Additional ABI support:. Local package initialization:. Additional TCP options:. Fri Sep 20 13:01:06 EEST 2002 FreeBSD/i386 (pc3.example.org) (ttyv0) login: Beachten Sie die letzten beiden Zeilen der Ausgabe, die vorletzte lautet: FreeBSD/i386 (pc3.example.org) (ttyv0) Diese Zeile enthält einige Informationen über das gerade gestartete System. Die Ausgabe stammt von der FreeBSD-Konsole einer Maschine mit einem Intel oder Intel-kompatiblen Prozessor der x86-Architektur Genau das ist mit i386 gemeint. Auch wenn Ihr System keine Intel 386 CPU besitzt, wird i386 ausgegeben. Es wird immer die Architektur und nicht der Typ des Prozessors ausgegeben. . Der Name des Systems (jedes &unix; System besitzt einen Namen) ist pc3.example.org und die Ausgabe stammt von der Systemkonsole, dem Terminal ttyv0. Das Ende der Ausgabe ist immer die Aufforderung zur Eingabe eines Benutzernamens: login: Der Anmeldevorgang wird im nächsten Abschnitt erläutert. Der Anmeldevorgang FreeBSD ist ein Mehrbenutzersystem, das Multitasking unterstützt. Das heißt mehrere Benutzer können gleichzeitig viele Programme auf einem System laufen lassen. Jedes Mehrbenutzersystem muss die Benutzer voneinander unterscheiden können. Bei FreeBSD und allen anderen &unix;-artigen Betriebssystemen wird dies dadurch erreicht, dass sich die Benutzer anmelden müssen, bevor sie Programme laufen lassen können. Jeder Benutzer besitzt einen eindeutigen Namen (den Account) und ein dazugehörendes Passwort, die beide bei der Anmeldung abgefragt werden. Startskripten Nachdem FreeBSD gestartet ist und die Startskripten Startskripten sind Programme, die FreeBSD automatisch bei jedem Startvorgang ausführt. Der Zweck der Skripte besteht darin, das System zu konfigurieren und nützliche Dienste im Hintergrund zu starten. , gelaufen sind, erscheint eine Aufforderung zur Eingabe des Benutzernamens: login: Wenn Ihr Benutzername beispielsweise john ist, geben Sie jetzt john gefolgt von Enter ein. Sie sollten dann eine Aufforderung zur Eingabe des Passworts erhalten: login: john Password: Geben Sie jetzt das Passwort von john gefolgt von Enter ein. Das Passwort wird aus Sicherheitsgründen nicht auf dem Bildschirm angezeigt. Wenn Sie das richtige Passwort eingegeben haben, sind Sie am System angemeldet und können nun alle verfügbaren Kommandos absetzen. Anmgemeldet sind Sie, wenn Sie die Tagesmeldungen (message of today) gefolgt von einer Eingabeaufforderung (dem Zeichen #, $ oder %) gesehen haben. Virtuelle Konsolen Da FreeBSD mehrere Programme gleichzeitig laufen lassen kann, ist eine einzige Konsole, an der Kommandos abgesetzt werden können, zu wenig. Abhilfe schaffen virtuelle Konsolen, die mehrere Konsolen zur Verfügung stellen. Die Anzahl der virtuellen Konsolen unter FreeBSD können Sie einstellen. Zwischen den einzelnen Konsolen können Sie mit speziellen Tastenkombinationen wechseln. Jede Konsole verfügt über einen eigenen Ausgabekanal und FreeBSD ordnet die Tastatureingaben und Monitorausgaben der richtigen Konsole zu, wenn Sie zwischen den Konsolen wechseln. Zum Umschalten der Konsolen stellt FreeBSD spezielle Tastenkombinationen bereit Eine recht technische und genaue Beschreibung der FreeBSD-Konsole und der Tastatur-Treiber finden Sie in den Hilfeseiten &man.syscons.4;, &man.atkbd.4;, &man.vidcontrol.1; und &man.kbdcontrol.1;. Lesen Sie diese Seiten, wenn Sie an den Einzelheiten interessiert sind. . Benutzen Sie AltF1, AltF2 bis AltF8, um zwischen den verschiedenen Konsolen umzuschalten. Wenn Sie zu einer anderen Konsole wechseln, sichert FreeBSD den Bildschirminhalt und gibt den Bildschirminhalt der neuen Konsole aus. Dies erzeugt die Illusion mehrerer Bildschirme und Tastaturen, an denen Sie Kommandos absetzen können. Wenn eine Konsole nicht sichtbar ist, weil Sie auf eine andere Konsole gewechselt haben, laufen die dort abgesetzten Kommandos weiter. <filename>/etc/ttys</filename> In der Voreinstellung stehen unter FreeBSD acht virtuelle Konsolen zur Verfügung, deren Anzahl Sie leicht erhöhen oder verringern können. Die Anzahl und Art der Konsolen wird in /etc/ttys eingestellt. Jede Zeile in /etc/ttys, die nicht mit # anfängt, konfiguriert einen Terminal oder eine virtuelle Konsole. In der Voreinstellung werden in dieser Datei neun virtuelle Konsolen definiert, von denen acht aktiviert sind. Die Konsolen sind in den Zeilen, die mit ttyv beginnen, definiert: # name getty type status comments # ttyv0 "/usr/libexec/getty Pc" cons25 on secure # Virtual terminals ttyv1 "/usr/libexec/getty Pc" cons25 on secure ttyv2 "/usr/libexec/getty Pc" cons25 on secure ttyv3 "/usr/libexec/getty Pc" cons25 on secure ttyv4 "/usr/libexec/getty Pc" cons25 on secure ttyv5 "/usr/libexec/getty Pc" cons25 on secure ttyv6 "/usr/libexec/getty Pc" cons25 on secure ttyv7 "/usr/libexec/getty Pc" cons25 on secure ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure Die Hilfeseite &man.ttys.5; enthält eine ausführliche Beschreibung der Spalten dieser Datei und der Optionen, die Sie zum Konfigurieren der virtuellen Konsolen benutzen können. Die Konsole im Single-User-Modus Eine eingehende Beschreibung des Single-User-Modus finden Sie in . Im Single-User-Modus steht Ihnen nur eine Konsole zur Verfügung. Die Definition dieser Konsole befindet sich ebenfalls in /etc/ttys. Suchen Sie nach einer Zeile, die mit console beginnt: # name getty type status comments # # If console is marked "insecure", then init will ask for the root password # when going to single-user mode. console none unknown off secure In der Zeile, die mit console beginnt, können Sie secure durch insecure ersetzen. Wenn Sie danach in den Single-User-Modus booten, verlangt das System ebenfalls die Eingabe des root-Passworts. Setzen Sie insecure nicht leichtfertig ein. Wenn Sie das Passwort von root vergessen, wird es schwierig, in den Single-User-Modus zu gelangen, wenn Sie den FreeBSD-Boot-Prozess nicht genau verstehen. Zugriffsrechte UNIX FreeBSD, das ein direkter Abkömmling von BSD &unix; ist, stützt sich auf mehrere Grundkonzepte von &unix; Systemen. Das erste und ausgeprägteste: FreeBSD ist ein Mehrbenutzer-Betriebssystem. Das System ermöglicht, dass mehrere Benutzer gleichzeitig an völlig verschiedenen und unabhängigen Aufgaben arbeiten können. Es ist verantwortlich für eine gerechte Auf- und Zuteilung von Nachfragen nach Hardware- und Peripheriegeräten, Speicher und CPU-Zeit unter den Benutzern. Da das System mehrere Benutzer unterstützt, hat alles, was das System verwaltet, einen Satz von Rechten, die bestimmen, wer die jeweilige Ressource lesen, schreiben oder ausführen darf. Diese Zugriffsrechte stehen in drei Achtergruppen, die in drei Teile unterteilt sind: einen für den Besitzer der Datei, einen für die Gruppe, zu der die Datei gehört und einen für alle anderen. Die numerische Darstellung sieht wie folgt aus: Zugriffsrechte Dateizugriffsrechte Wert Zugriffsrechte Auflistung im Verzeichnis 0 Kein Lesen, Kein Schreiben, Kein Ausführen --- 1 Kein Lesen, Kein Schreiben, Ausführen --x 2 Kein Lesen, Schreiben, Kein Ausführen -w- 3 Kein Lesen, Schreiben, Ausführen -wx 4 Lesen, Kein Schreiben, Kein Ausführen r-- 5 Lesen, Kein Schreiben, Ausführen r-x 6 Lesen, Schreiben, Kein Ausführen rw- 7 Lesen, Schreiben, Ausführen rwx ls Verzeichnisse Sie können auf der Kommandozeile von &man.ls.1; angeben, um eine ausführliche Verzeichnisauflistung zu sehen, die in einer Spalte die Zugriffsrechte für den Besitzer, die Gruppe und alle anderen enthält. Die Ausgabe von ls -l könnte wie folgt aussehen: &prompt.user; ls -l total 530 -rw-r--r-- 1 root wheel 512 Sep 5 12:31 myfile -rw-r--r-- 1 root wheel 512 Sep 5 12:31 otherfile -rw-r--r-- 1 root wheel 7680 Sep 5 12:31 email.txt ... Die erste Spalte der Ausgabe enthält die Zugriffsrechte: -rw-r--r-- Das erste Zeichen von links ist ein Symbol, welches angibt, ob es sich um eine normale Datei, ein Verzeichnis, ein zeichenorientiertes Gerät, ein Socket oder irgendeine andere Pseudo-Datei handelt. In diesem Beispiel zeigt - eine normale Datei an. Die nächsten drei Zeichen, dargestellt als rw-, ergeben die Rechte für den Datei-Besitzer. Die drei Zeichen danach r-- die Rechte der Gruppe, zu der die Datei gehört. Die letzten drei Zeichen, r--, geben die Rechte für den Rest der Welt an. Ein Minus bedeutet, dass das Recht nicht gegeben ist. In diesem Fall sind die Zugriffsrechte also: der Eigentümer kann die Datei lesen und schreiben, die Gruppe kann lesen und alle anderen können auch nur lesen. Entsprechend obiger Tabelle wären die Zugriffsrechte für diese Datei 644, worin jede Ziffer die drei Teile der Zugriffsrechte dieser Datei verkörpert. Das ist alles schön und gut, aber wie kontrolliert das System die Rechte von Hardware-Geräten? FreeBSD behandelt die meisten Hardware-Geräte als Dateien, welche Programme öffnen, lesen und mit Daten beschreiben können wie alle anderen Dateien auch. Diese Spezial-Dateien sind im Verzeichnis /dev gespeichert. Verzeichnisse werden ebenfalls wie Dateien behandelt. Sie haben Lese-, Schreib- und Ausführ-Rechte. Das Ausführungs-Bit hat eine etwas andere Bedeutung für ein Verzeichnis als für eine Datei. Die Ausführbarkeit eines Verzeichnisses bedeutet, dass in das Verzeichnis zum Beispiel mit cd gewechselt werden kann. Das bedeutet auch, dass in dem Verzeichnis auf Dateien, deren Namen bekannt sind, zugegriffen werden kann, vorausgesetzt die Zugriffsrechte der Dateien lassen dies zu. Das Leserecht auf einem Verzeichnis erlaubt es, sich den Inhalt des Verzeichnisses anzeigen zu lassen. Um eine Datei mit bekanntem Namen in einem Verzeichnis zu löschen, müssen auf dem Verzeichnis Schreib- und Ausführ-Rechte gesetzt sein. Es gibt noch mehr Rechte, aber die werden vor allem in speziellen Umständen benutzt, wie zum Beispiel bei SetUID-Binaries und Verzeichnissen mit gesetztem Sticky-Bit. Mehr über Zugriffsrechte von Dateien und wie sie gesetzt werden, finden Sie in &man.chmod.1;. Tom Rhodes Beigesteuert von Symbolische Zugriffsrechte Zugriffsrechte symbolische Die Zugriffsrechte lassen sich auch über Symbole anstelle von oktalen Werten festlegen. Symbolische Zugriffsrechte werden in der Reihenfolge Wer, Aktion und Berechtigung angegeben. Die folgenden Symbole stehen zur Auswahl: Option Symbol Bedeutung Wer u Benutzer (user) Wer g Gruppe (group) Wer o Andere (other) Wer a Alle Aktion + Berechtigungen hinzufügen Aktion - Berechtigungen entziehen Aktion = Berechtigungen explizit setzen Berechtigung r lesen (read) Berechtigung w schreiben (write) Berechtigung x ausführen (execute) Berechtigung t Sticky-Bit Berechtigung s Set-UID oder Set-GID Symbolische Zugriffsrechte werden wie die numerischen mit dem Kommando &man.chmod.1; vergeben. Wenn Sie beispielsweise allen anderen Benutzern den Zugriff auf die Datei FILE verbieten wollen, benutzen Sie den nachstehenden Befehl: &prompt.user; chmod go= FILE Wenn Sie mehr als eine Änderung der Rechte einer Datei vornehmen wollen, können Sie eine durch Kommata getrennte Liste der Rechte angeben. Das folgende Beispiel entzieht der Gruppe und der Welt (den anderen) die Schreibberechtigung auf die Datei FILE und fügt dann für alle Ausführungsrechte hinzu: &prompt.user; chmod go-w,a+x FILE Tom Rhodes Beigetragen von &os; Datei-Flags Zusätzlich zu den vorhin diskutierten Zugriffsrechten unterstützt &os; auch die sogenannten Datei-Flags. Diese erhöhen die Sicherheit Ihres Systems, indem sie eine verbesserte Kontrolle von Dateien erlauben. Verzeichnisse werden allerdings nicht unterstützt. Diese verbesserte Sicherheit führt dazu, dass manche Dateien nicht einmal von root gelöscht oder bearbeitet werden können. Datei-Flags können über &man.chflags.1; gesetzt oder gelöscht werden. Um beispielsweise die Datei file1 mit dem unlöschbar-Flag zu sichern, geben Sie folgenden Befehl ein: &prompt.root; chflags sunlink file1 Um dieses Flag wieder zu löschen, geben Sie den Befehl erneut ein. Allerdings setzen Sie ein no vor : &prompt.root; chflags nosunlink file1 Um die Flags dieser Datei anzuzeigen, verwenden Sie &man.ls.1; zusammen mit der Option : &prompt.root; ls -lo file1 Dadurch erhalten Sie eine Ausgabe ähnlich der folgenden: -rw-r--r-- 1 trhodes trhodes sunlnk 0 Mar 1 05:54 file1 Viele Flags können nur von root gesetzt oder gelöscht werden. Andere wiederum können auch vom Eigentümer der Datei gesetzt werden. Weitere Informationen zu Datei-Flags finden sich in den Manualpages &man.chflags.1; und &man.chflags.2;. Verzeichnis-Strukturen Verzeichnis Hierarchien Die FreeBSD-Verzeichnishierarchie ist die Grundlage, um ein umfassendes Verständnis des Systems zu erlangen. Das wichtigste Konzept, das Sie verstehen sollten, ist das Root-Verzeichnis /. Dieses Verzeichnis ist das erste, das während des Bootens eingehangen wird. Es enthält das notwendige Basissystem, um das System in den Mehrbenutzerbetrieb zu bringen. Das Root-Verzeichnis enthält auch die Mountpunkte anderer Dateisysteme, die später eingehangen werden. Ein Mountpunkt ist ein Verzeichnis, in das zusätzliche Dateisysteme in das /-Dateisystem eingehängt werden können. Dieser Vorgang wird in ausführlich beschrieben. Standard-Mountpunkte sind /usr, /var, /tmp, /mnt sowie /cdrom. Auf diese Verzeichnisse verweisen üblicherweise Einträge in der Datei /etc/fstab. /etc/fstab ist eine Tabelle mit verschiedenen Dateisystemen und Mountpunkten als Referenz des Systems. Die meisten der Dateisysteme in /etc/fstab werden beim Booten automatisch durch das Skript &man.rc.8; gemountet, wenn die zugehörigen Einträge nicht mit der Option versehen sind. Weitere Informationen zu diesem Thema finden Sie im . Eine vollständige Beschreibung der Dateisystem-Hierarchie finden Sie in &man.hier.7;. Als Beispiel sei eine kurze Übersicht über die am häufigsten verwendeten Verzeichnisse gegeben: Verzeichnis Beschreibung / Wurzelverzeichnis des Dateisystems. /bin/ Grundlegende Werkzeuge für den Single-User-Modus sowie den Mehrbenutzerbetrieb. /boot/ Programme und Konfigurationsdateien, die während des Bootens benutzt werden. /boot/defaults/ Vorgaben für die Boot-Konfiguration, siehe &man.loader.conf.5;. /dev/ Gerätedateien, siehe &man.intro.4;. /etc/ Konfigurationsdateien und Skripten des Systems. /etc/defaults/ Vorgaben für die System Konfigurationsdateien, siehe &man.rc.8;. /etc/mail/ Konfigurationsdateien von MTAs wie &man.sendmail.8;. /etc/namedb/ Konfigurationsdateien von named, siehe &man.named.8;. /etc/periodic/ Täglich, wöchentlich oder monatlich ablaufende Skripte, die von &man.cron.8; gestartet werden. Siehe &man.periodic.8;. /etc/ppp/ Konfigurationsdateien von ppp, siehe &man.ppp.8;. /mnt/ Ein leeres Verzeichnis, das von Systemadministratoren häufig als temporärer Mountpunkt genutzt wird. /proc/ Prozess Dateisystem, siehe &man.procfs.5; und &man.mount.procfs.8;. /rescue/ Statisch gelinkte Programme zur Wiederherstellung des Systems, lesen Sie dazu auch &man.rescue.8;. /root/ Home Verzeichnis von root. /sbin/ Systemprogramme und administrative Werkzeuge, die grundlegend für den Single-User-Modus und den Mehrbenutzerbetrieb sind. - - /stand/ - Programme, die ohne andere Programme oder Bibliotheken - laufen. - - /tmp/ Temporäre Dateien, die für gewöhnlich bei einem Neustart des Systems verloren gehen. Häufig wird ein speicherbasiertes Dateisystem unter /tmp eingehängt. Dieser Vorgang kann automatisiert werden, wenn Sie die tmpmfs-bezogenen Variablen von &man.rc.conf.5; verwenden. Alternativ können Sie auch einen entsprechenden Eintrag in /etc/fstab aufnehmen. Weitere Informationen finden Sie in &man.mdmfs.8;. /usr/ Der Großteil der Benutzerprogramme und Anwendungen. /usr/bin/ Gebräuchliche Werkzeuge, Programmierhilfen und Anwendungen. /usr/include/ Standard C include-Dateien. /usr/lib/ Bibliotheken. /usr/libdata/ Daten verschiedener Werkzeuge. /usr/libexec/ System-Dämonen und System-Werkzeuge, die von anderen Programmen ausgeführt werden. /usr/local/ Lokale Programme, Bibliotheken usw. Die Ports-Sammlung benutzt dieses Verzeichnis als Zielverzeichnis für zu installierende Anwendungen. Innerhalb von /usr/local sollte das von &man.hier.7; beschriebene Layout für /usr benutzt werden. Das man Verzeichnis wird direkt unter /usr/local anstelle unter /usr/local/share angelegt. Die Dokumentation der Ports findet sich in share/doc/port. /usr/obj/ Von der Architektur abhängiger Verzeichnisbaum, der durch das Bauen von /usr/src entsteht. /usr/ports Die FreeBSD-Ports-Sammlung (optional). /usr/sbin/ System-Dämonen und System-Werkzeuge, die von Benutzern ausgeführt werden. /usr/share/ Von der Architektur unabhängige Dateien. /usr/src/ Quelldateien von BSD und/oder lokalen Ergänzungen. /usr/X11R6/ Optionale X11R6-Programme und Bibliotheken. /var/ Wird für mehrere Zwecke genutzt und enthält Logdateien, temporäre Daten und Spooldateien. Manchmal wird ein speicherbasiertes Dateisystem unter /var eingehängt. Dieser Vorgang kann automatisiert werden, wenn Sie die varmfs-bezogenen Variablen von &man.rc.conf.5; verwenden. Alternativ können Sie auch einen entsprechenden Eintrag in /etc/fstab aufnehmen. Weitere Informationen finden Sie in &man.mdmfs.8;. /var/log/ Verschiedene Logdateien des Systems. /var/mail/ Postfächer der Benutzer. /var/spool/ Verschiedene Spool-Verzeichnisse der Drucker- und Mailsysteme. /var/tmp/ Temporäre Dateien. Dateien in diesem Verzeichnis bleiben in der Regel auch bei einem Neustart des Systems erhalten, es sei denn, bei /var handelt es sich um ein speicherbasiertes Dateisystem. /var/yp NIS maps. Festplatten, Slices und Partitionen &os; identifiziert Dateien anhand eines Dateinamens. In Dateinamen wird zwischen Groß- und Kleinschreibung unterschieden: readme.txt und README.TXT bezeichnen daher zwei verschiedene Dateien. &os; benutzt keine Dateiendungen wie .txt, um den Typ der Datei (ein Programm, ein Dokument oder andere Daten) zu bestimmen. Dateien werden in Verzeichnissen gespeichert. In einem Verzeichnis können sich keine oder hunderte Dateien befinden. Ein Verzeichnis kann auch andere Verzeichnisse enthalten und so eine Hierarchie von Verzeichnissen aufbauen, die Ihnen die Ablage von Daten erleichtert. In Dateinamen werden Verzeichnisse durch einen Schrägstrich (/, Slash) getrennt. Wenn das Verzeichnis foo ein Verzeichnis bar enthält, in dem sich die Datei readme.txt befindet, lautet der vollständige Name der Datei (oder der Pfad zur Datei) foo/bar/readme.txt. Verzeichnisse und Dateien werden in einem Dateisystem gespeichert. Jedes Dateisystem besitzt ein Wurzelverzeichnis (Root-Directory), das weitere Verzeichnisse enthalten kann. Dieses Konzept kennen Sie vielleicht von anderen Betriebssystemen, aber es gibt einige Unterschiede: In &ms-dos; werden Datei- und Verzeichnisnamen mit dem Zeichen \ getrennt, &macos; benutzt dazu das Zeichen :. &os; kennt keine Laufwerksbuchstaben und in Pfaden werden keine Bezeichnungen für Laufwerke benutzt. Die Pfadangabe c:/foo/bar/readme.txt gibt es in &os; nicht. Stattdessen wird ein Dateisystem als Wurzeldateisystem (root file system) ausgewählt. Das Wurzelverzeichnis dieses Dateisystems wird / genannt. Jedes andere Dateisystem wird unter dem Wurzeldateisystem eingehangen (mount). Daher scheint jedes Verzeichnis, unabhängig von der Anzahl der Platten, auf derselben Platte zu liegen. Betrachten wir drei Dateisysteme A, B und C. Jedes Dateisystem besitzt ein eigenes Wurzelverzeichnis, das zwei andere Verzeichnisse enthält: A1, A2, B1, B2, C1 und C2. Das Wurzeldateisystem soll A sein. Das Kommando ls zeigt darin die beiden Verzeichnisse A1 und A2 an. Der Verzeichnisbaum sieht wie folgt aus: / | +--- A1 | `--- A2 Ein Dateisystem wird in einem Verzeichnis eines anderen Dateisystems eingehangen. Wir hängen nun das Dateisystem B in das Verzeichnis A1 ein. Das Wurzelverzeichnis von B ersetzt nun das Verzeichnis A1 und die Verzeichnisse des Dateisystems B werden sichtbar: / | +--- A1 | | | +--- B1 | | | `--- B2 | `--- A2 Jede Datei in den Verzeichnissen B1 oder B2 kann über den Pfad /A1/B1 oder /A1/B2 erreicht werden. Dateien aus dem Verzeichnis /A1 sind jetzt verborgen. Wenn das Dateisystem B wieder abgehangen wird (umount), erscheinen die verborgenen Dateien wieder. Wenn das Dateisystem B unter dem Verzeichnis A2 eingehangen würde, sähe der Verzeichnisbaum so aus: / | +--- A1 | `--- A2 | +--- B1 | `--- B2 Die Dateien des Dateisystems B wären unter den Pfaden /A2/B1 und /A2/B2 erreichbar. Dateisysteme können übereinander eingehangen werden. Der folgende Baum entsteht, wenn im letzten Beispiel das Dateisystem C in das Verzeichnis B1 des Dateisystems B eingehangen wird: / | +--- A1 | `--- A2 | +--- B1 | | | +--- C1 | | | `--- C2 | `--- B2 C könnte auch im Verzeichnis A1 eingehangen werden: / | +--- A1 | | | +--- C1 | | | `--- C2 | `--- A2 | +--- B1 | `--- B2 Der &ms-dos;-Befehl join kann Ähnliches bewirken. Normalerweise müssen Sie sich nicht mit Dateisystemen beschäftigen. Während der Installation werden die Dateisysteme und die Stellen, in der sie eingehangen werden, festgelegt. Dateisysteme müssen Sie erst wieder anlegen, wenn Sie eine neue Platte hinzufügen. Sie können sogar mit nur einem großen Dateisystem auskommen. Dies hat mehrere Nachteile und einen Vorteil. Vorteile mehrerer Dateisysteme Die Dateisysteme können mit unterschiedlichen Optionen (mount options) eingehangen werden. Bei sorgfältiger Planung können Sie beispielsweise das Wurzeldateisystem nur lesbar einhängen. Damit schützen Sie sich vor dem unabsichtlichen Löschen oder Editieren kritischer Dateien. Von Benutzern beschreibbare Dateisysteme wie /home können Sie mit der Option nosuid einhängen, wenn sie von anderen Dateisystemen getrennt sind. Die SUID- und GUID-Bits verlieren auf solchen Dateisystemen ihre Wirkung und die Sicherheit des Systems kann dadurch erhöht werden. Die Lage von Dateien im Dateisystem wird, abhängig vom Gebrauch des Dateisystems, automatisch von &os; optimiert. Ein Dateisystem mit vielen kleinen Dateien, die häufig geschrieben werden, wird anders behandelt als ein Dateisystem mit wenigen großen Dateien. Mit nur einem Dateisystem ist diese Optimierung unmöglich. In der Regel übersteht ein &os;-Dateisystem auch einen Stromausfall. Allerdings kann ein Stromausfall zu einem kritischen Zeitpunkt das Dateisystem beschädigen. Wenn die Daten über mehrere Dateisysteme verteilt sind, lässt sich das System mit hoher Wahrscheinlichkeit noch starten. Dies erleichtert das Zurückspielen von Datensicherungen. Vorteil eines einzelnen Dateisystems Die Größe von Dateisystemen liegt fest. Es kann passieren, dass Sie eine Partition vergrößern müssen. Dies ist nicht leicht: Sie müssen die Daten sichern, das Dateisystem vergrößert anlegen und die gesicherten Daten zurückspielen. &os; kennt den Befehl &man.growfs.8;, mit dem man Dateisysteme im laufenden Betrieb vergrößern kann. Dateisysteme befinden sich in Partitionen (damit sind nicht die normalen &ms-dos;-Partitionen gemeint). Jede Partition wird mit einem Buchstaben von a bis h bezeichnet und kann nur ein Dateisystem enthalten. Dateisysteme können daher über ihren Mount-Point, den Punkt an dem sie eingehangen sind, oder den Buchstaben der Partition, in der sie liegen, identifiziert werden. &os; benutzt einen Teil der Platte für den Swap-Bereich, der dem Rechner virtuellen Speicher zur Verfügung stellt. Dadurch kann der Rechner Anwendungen mehr Speicher zur Verfügung stellen als tatsächlich eingebaut ist. Wenn der Speicher knapp wird, kann &os; nicht benutzte Daten in den Swap-Bereich auslagern. Die ausgelagerten Daten können später wieder in den Speicher geholt werden (dafür werden dann andere Daten ausgelagert). Für einige Partitionen gelten besondere Konventionen: Partition Konvention a Enthält normalerweise das Wurzeldateisystem b Enthält normalerweise den Swap-Bereich c Ist normalerweise genauso groß wie die Slice in der die Partition liegt. Werkzeuge, die auf der kompletten Slice arbeiten, wie ein Bad-Block-Scanner, können so die c-Partition benutzen. Für gewöhnlich legen Sie in dieser Partition kein Dateisystem an. d Früher hatte die d-Partition eine besondere Bedeutung. Heute ist dies nicht mehr der Fall und die Partition d kann wie jede andere Partition auch verwendet werden. Jede Partition, die ein Dateisystem enthält, wird in einer Slice angelegt. Slice ist der Begriff, den &os; für &ms-dos;-Partitionen verwendet. Slices werden von eins bis vier durchnummeriert. Slices Partitionen dangerously dedicated Die Slice-Nummern werden mit vorgestelltem s hinter den Gerätenamen gestellt: da0s1 ist die erste Slice auf dem ersten SCSI-Laufwerk. Auf einer Festplatte gibt es höchstens vier Slices. In einer Slice des passenden Typs kann es weitere logische Slices geben. Diese erweiterten Slices werden ab fünf durchnummeriert: ad0s5 ist die erste erweiterte Slice auf einer IDE-Platte. Diese Geräte werden von Dateisystemen benutzt, die sich in einer kompletten Slice befinden müssen. Slices, dangerously dedicated-Festplatten und andere Platten enthalten Partitionen, die mit Buchstaben von a bis h bezeichnet werden. Der Buchstabe wird an den Gerätenamen gehangen: da0a ist die a-Partition des ersten da-Laufwerks. Dieses Laufwerk ist dangerously dedicated. ad1s3e ist die fünfte Partition in der dritten Slice der zweiten IDE-Platte. Schließlich wird noch jede Festplatte des Systems eindeutig bezeichnet. Der Name einer Festplatte beginnt mit einem Code, der den Typ der Platte bezeichnet. Es folgt eine Nummer, die angibt, um welche Festplatte es sich handelt. Anders als bei Slices werden Festplatten von Null beginnend durchnummeriert. Gängige Festplatten-Namen sind in zusammengestellt. Wenn Sie eine Partition angeben, erwartet &os; dass Sie auch die Slice und die Platte angeben, in denen sich die Partition befindet. Wenn Sie eine Slice angeben, müssen Sie auch die Platte der Slice angeben. Setzen Sie den Namen aus dem Plattennamen gefolgt von einem s, der Slice-Nummer und dem Buchstaben der Partition zusammen. Einige Beispiele finden Sie in . Der Aufbau einer Festplatte wird in dargestellt. Um &os; zu installieren, müssen Sie zuerst Slices auf den Festplatten anlegen. Innerhalb der Slices, die Sie für &os; verwenden wollen, müssen Sie dann Partitionen anlegen. In den Partitionen wiederum werden die Dateisysteme (oder der Auslagerungsbereich) angelegt. Für Dateisysteme müssen Sie schließlich noch festlegen, wo diese eingehangen werden (Mount-Point). Laufwerk-Codes Code Bedeutung ad ATAPI (IDE) Festplatte da SCSI-Festplatte acd ATAPI (IDE) CD-ROM cd SCSI-CD-ROM fd Disketten-Laufwerk
Namen von Platten, Slices und Partitionen Name Bedeutung ad0s1a Die erste Partition (a) in der ersten Slice (s1) der ersten IDE-Festplatte (ad0). da1s2e Die fünfte Partition (e) der zweiten Slice (s2) auf der zweiten SCSI-Festplatte (da1). Aufteilung einer Festplatte Das folgende Diagramm zeigt die Sicht von &os; auf die erste IDE-Festplatte eines Rechners. Die Platte soll 4 GB groß sein und zwei Slices (&ms-dos;-Partitionen) mit je 2 GB besitzen. Die erste Slice enthält ein &ms-dos;-Laufwerk (C:), die zweite Slice wird von &os; benutzt. Im Beispiel verwendet die &os;-Installationen drei Partitionen und einen Auslagerungsbereich. Jede der drei Partitionen enthält ein Dateisystem. Das Wurzeldateisystem ist die a-Partition. In der e-Partition befindet sich der /var-Verzeichnisbaum und in der f-Partition befindet sich der Verzeichnisbaum unterhalb von /usr. .-----------------. --. | | | | DOS / Windows | | : : > First slice, ad0s1 : : | | | | :=================: ==: --. | | | Partition a, mounted as / | | | > referred to as ad0s2a | | | | | :-----------------: ==: | | | | Partition b, used as swap | | | > referred to as ad0s2b | | | | | :-----------------: ==: | Partition c, no | | | Partition e, used as /var > file system, all | | > referred to as ad0s2e | of FreeBSD slice, | | | | ad0s2c :-----------------: ==: | | | | | : : | Partition f, used as /usr | : : > referred to as ad0s2f | : : | | | | | | | | --' | `-----------------' --'
Anhängen und Abhängen von Dateisystemen Ein Dateisystem wird am besten als ein Baum mit der Wurzel / veranschaulicht. /dev, /usr, und die anderen Verzeichnisse im Rootverzeichnis sind Zweige, die wiederum eigene Zweige wie /usr/local haben können. Root-Dateisystem Es gibt verschiedene Gründe, bestimmte dieser Verzeichnisse auf eigenen Dateisystemen anzulegen. /var enthält log/, spool/ sowie verschiedene andere temporäre Dateien und kann sich daher schnell füllen. Es empfiehlt sich, /var von / zu trennen, da es schlecht ist, wenn das Root-Dateisystem voll läuft. Ein weiterer Grund bestimmte Verzeichnisbäume auf andere Dateisysteme zu legen, ist gegeben, wenn sich die Verzeichnisbäume auf gesonderten physikalischen oder virtuellen Platten, wie Network File System oder CD-ROM-Laufwerken, befinden. Die <filename>fstab</filename> Datei Dateisysteme fstab Während des Boot-Prozesses werden in /etc/fstab aufgeführte Verzeichnisse, sofern sie nicht mit der Option versehen sind, automatisch angehangen. Die Zeilen in /etc/fstab haben das folgende Format: device /mount-point fstype options dumpfreq passno device Ein existierender Gerätename wie in beschrieben. mount-point Ein existierendes Verzeichnis, an das das Dateisystem angehangen wird. fstype Der Typ des Dateisystems, der an &man.mount.8; weitergegeben wird. FreeBSDs Standarddateisystem ist ufs. options Entweder für beschreibbare Dateisysteme oder für schreibgeschützte Dateisysteme, gefolgt von weiteren benötigten Optionen. Eine häufig verwendete Option ist für Dateisysteme, die während der normalen Bootsequenz nicht angehangen werden sollen. Weitere Optionen finden sich in &man.mount.8;. dumpfreq Gibt die Anzahl der Tage an, nachdem das Dateisystem gesichert werden soll. Fehlt der Wert, wird 0 angenommen. passno Bestimmt die Reihenfolge, in der die Dateisysteme überprüft werden sollen. Für Dateisysteme, die übersprungen werden sollen, ist passno auf null zu setzen. Für das Root-Dateisystem, das vor allen anderen überprüft werden muss, sollte der Wert von passno eins betragen. Allen anderen Dateisystemen sollten Werte größer eins zugewiesen werden. Wenn mehrere Dateisysteme den gleichen Wert besitzen, wird &man.fsck.8; versuchen, diese parallel zu überprüfen. Das <command>mount</command> Kommando Dateisysteme anhängen &man.mount.8; hängt schließlich Dateisysteme an. In der grundlegenden Form wird es wie folgt benutzt: &prompt.root; mount device mountpoint Viele Optionen werden in &man.mount.8; beschrieben, die am häufigsten verwendeten sind: Optionen von <command>mount</command> Hängt alle Dateisysteme aus /etc/fstab an. Davon ausgenommen sind Dateisysteme, die mit noauto markiert sind, die mit der Option ausgeschlossen wurden und Dateisysteme, die schon angehangen sind. Führt alles bis auf den mount-Systemaufruf aus. Nützlich ist diese Option in Verbindung mit . Damit wird angezeigt, was &man.mount.8; tatsächlich versuchen würde, um das Dateisystem anzuhängen. Erzwingt das Anhängen eines unsauberen Dateisystems oder erzwingt die Rücknahme des Schreibzugriffs, wenn der Status des Dateisystems von beschreibbar auf schreibgeschützt geändert wird. Hängt das Dateisystem schreibgeschützt ein. Das kann auch durch Angabe von als Argument ( vor FreeBSD 5.2) der Option erreicht werden. fstype Hängt das Dateisystem mit dem angegebenen Typ an, oder hängt nur Dateisysteme mit dem angegebenen Typ an, wenn auch angegeben wurde. Die Voreinstellung für den Typ des Dateisystems ist ufs. Aktualisiert die Mountoptionen des Dateisystems. Geschwätzig sein. Hängt das Dateisystem beschreibbar an. erwartet eine durch Kommata separierte Liste von Optionen, unter anderem die folgenden: nodev Beachtet keine Gerätedateien auf dem Dateisystem. Dies ist eine nützliche Sicherheitsfunktion. noexec Verbietet das Ausführen von binären Dateien auf dem Dateisystem. Dies ist eine nützliche Sicherheitsfunktion. nosuid SetUID und SetGID Bits werden auf dem Dateisystem nicht beachtet. Dies ist eine nützliche Sicherheitsfunktion. Das <command>umount</command> Kommando Dateisysteme abhängen &man.umount.8; akzeptiert als Parameter entweder einen Mountpoint, einen Gerätenamen, oder die Optionen oder . Jede Form akzeptiert , um das Abhängen zu erzwingen, und , um etwas geschwätziger zu sein. Seien Sie bitte vorsichtig mit : Ihr Computer kann abstürzen oder es können Daten auf dem Dateisystem beschädigt werden, wenn Sie das Abhängen erzwingen. und werden benutzt um alle Dateisysteme, deren Typ durch modifiziert werden kann, abzuhängen. hängt das Rootdateisystem nicht ab. Prozesse Da FreeBSD ein Multitasking-Betriebssystem ist, sieht es so aus, als ob mehrere Prozesse zur gleichen Zeit laufen. Jedes Programm, das zu irgendeiner Zeit läuft, wird Prozess genannt. Jedes Kommando startet mindestens einen Prozess. Einige Systemprozesse laufen ständig und stellen die Funktion des Systems sicher. Jeder Prozess wird durch eine eindeutige Nummer identifiziert, die Prozess-ID oder PID genannt wird. Prozesse haben ebenso wie Dateien einen Besitzer und eine Gruppe, die festlegen, welche Dateien und Geräte der Prozess benutzen kann. Dabei finden die vorher beschriebenen Zugriffsrechte Anwendung. Die meisten Prozesse haben auch einen Elternprozess, der sie gestartet hat. Wenn Sie in der Shell Kommandos eingeben, dann ist die Shell ein Prozess und jedes Kommando, das Sie starten, ist auch ein Prozess. Jeder Prozess, den Sie auf diese Weise starten, besitzt den Shell-Prozess als Elternprozess. Die Ausnahme hiervon ist ein spezieller Prozess, der &man.init.8; heißt. init ist immer der erste Prozess und hat somit die PID 1. init wird vom Kernel beim Booten von FreeBSD gestartet. Die Kommandos &man.ps.1; und &man.top.1; sind besonders nützlich, um sich die Prozesse auf einem System anzusehen. ps zeigt eine statische Liste der laufenden Prozesse und kann deren PID, Speicherverbrauch und die Kommandozeile, mit der sie gestartet wurden und vieles mehr anzeigen. top zeigt alle laufenden Prozesse an und aktualisiert die Anzeige, so dass Sie Ihrem Computer bei der Arbeit zuschauen können. Normal zeigt Ihnen ps nur die laufenden Prozesse, die Ihnen gehören. Zum Beispiel: &prompt.user; ps PID TT STAT TIME COMMAND 298 p0 Ss 0:01.10 tcsh 7078 p0 S 2:40.88 xemacs mdoc.xsl (xemacs-21.1.14) 37393 p0 I 0:03.11 xemacs freebsd.dsl (xemacs-21.1.14) 48630 p0 S 2:50.89 /usr/local/lib/netscape-linux/navigator-linux-4.77.bi 48730 p0 IW 0:00.00 (dns helper) (navigator-linux-) 72210 p0 R+ 0:00.00 ps 390 p1 Is 0:01.14 tcsh 7059 p2 Is+ 1:36.18 /usr/local/bin/mutt -y 6688 p3 IWs 0:00.00 tcsh 10735 p4 IWs 0:00.00 tcsh 20256 p5 IWs 0:00.00 tcsh 262 v0 IWs 0:00.00 -tcsh (tcsh) 270 v0 IW+ 0:00.00 /bin/sh /usr/X11R6/bin/startx -- -bpp 16 280 v0 IW+ 0:00.00 xinit /home/nik/.xinitrc -- -bpp 16 284 v0 IW 0:00.00 /bin/sh /home/nik/.xinitrc 285 v0 S 0:38.45 /usr/X11R6/bin/sawfish Wie Sie sehen, gibt &man.ps.1; mehrere Spalten aus. In der PID Spalte findet sich die vorher besprochene Prozess-ID. PIDs werden von 1 beginnend bis 99999 zugewiesen und fangen wieder von vorne an, wenn die Grenze überschritten wird. Die Spalte TT zeigt den Terminal, auf dem das Programm läuft. STAT zeigt den Status des Programms an und kann für die Zwecke dieser Diskussion ebenso wie TT ignoriert werden. TIME gibt die Zeit an, die das Programm auf der CPU gelaufen ist – dies ist nicht unbedingt die Zeit, die seit dem Start des Programms vergangen ist, da die meisten Programme hauptsächlich auf bestimmte Dinge warten, bevor sie wirklich CPU-Zeit verbrauchen. Unter der Spalte COMMAND finden Sie schließlich die Kommandozeile, mit der das Programm gestartet wurde. &man.ps.1; besitzt viele Optionen, um die angezeigten Informationen zu beeinflussen. Eine nützliche Kombination ist auxww. Mit werden Information über alle laufenden Prozesse und nicht nur Ihrer eigenen angezeigt. Der Name des Besitzers des Prozesses, sowie Informationen über den Speicherverbrauch werden mit angezeigt. zeigt auch Dämonen-Prozesse an, und veranlasst &man.ps.1; die komplette Kommandozeile anzuzeigen, anstatt sie abzuschneiden, wenn sie zu lang für die Bildschirmausgabe wird. Die Ausgabe von &man.top.1; sieht ähnlich aus: &prompt.user; top last pid: 72257; load averages: 0.13, 0.09, 0.03 up 0+13:38:33 22:39:10 47 processes: 1 running, 46 sleeping CPU states: 12.6% user, 0.0% nice, 7.8% system, 0.0% interrupt, 79.7% idle Mem: 36M Active, 5256K Inact, 13M Wired, 6312K Cache, 15M Buf, 408K Free Swap: 256M Total, 38M Used, 217M Free, 15% Inuse PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND 72257 nik 28 0 1960K 1044K RUN 0:00 14.86% 1.42% top 7078 nik 2 0 15280K 10960K select 2:54 0.88% 0.88% xemacs-21.1.14 281 nik 2 0 18636K 7112K select 5:36 0.73% 0.73% XF86_SVGA 296 nik 2 0 3240K 1644K select 0:12 0.05% 0.05% xterm 48630 nik 2 0 29816K 9148K select 3:18 0.00% 0.00% navigator-linu 175 root 2 0 924K 252K select 1:41 0.00% 0.00% syslogd 7059 nik 2 0 7260K 4644K poll 1:38 0.00% 0.00% mutt ... Die Ausgabe ist in zwei Abschnitte geteilt. In den ersten fünf Kopfzeilen finden sich die zuletzt zugeteilte PID, die Systemauslastung (engl. load average), die Systemlaufzeit (die Zeit seit dem letzten Reboot) und die momentane Zeit. Die weiteren Zahlen im Kopf beschreiben wie viele Prozesse momentan laufen (im Beispiel 47), wie viel Speicher und Swap verbraucht wurde und wie viel Zeit das System in den verschiedenen CPU-Modi verbringt. Darunter befinden sich einige Spalten mit ähnlichen Informationen wie in der Ausgabe von &man.ps.1;. Wie im vorigen Beispiel können Sie die PID, den Besitzer, die verbrauchte CPU-Zeit und das Kommando erkennen. &man.top.1; zeigt auch den Speicherverbrauch des Prozesses an, der in zwei Spalten aufgeteilt ist. Die erste Spalte gibt den gesamten Speicherverbrauch des Prozesses an, in der zweiten Spalte wird der aktuelle Verbrauch angegeben. &netscape; hat im gezeigten Beispiel insgesamt 30 MB Speicher verbraucht. Momentan benutzt es allerdings nur 9 MB. Die Anzeige wird von &man.top.1; automatisch alle zwei Sekunden aktualisiert. Der Zeitraum kann mit eingestellt werden. Dämonen, Signale und Stoppen von Prozessen Wenn Sie einen Editor starten, können Sie ihn leicht bedienen und Dateien laden. Sie können das, weil der Editor dafür Vorsorge getroffen hat und auf einem Terminal läuft. Manche Programme erwarten keine Eingaben von einem Benutzer und lösen sich bei erster Gelegenheit von ihrem Terminal. Ein Web-Server zum Beispiel verbringt den ganzen Tag damit, auf Anfragen zu antworten und erwartet keine Eingaben von Ihnen. Programme, die E-Mail von einem Ort zu einem anderen Ort transportieren sind ein weiteres Beispiel für diesen Typ von Anwendungen. Wir nennen diese Programme Dämonen. Dämonen stammen aus der griechischen Mythologie und waren weder gut noch böse. Sie waren kleine dienstbare Geister, die meistens nützliche Sachen für die Menschheit vollbrachten. Ähnlich wie heutzutage Web-Server und Mail-Server nützliche Dienste verrichten. Seit langer Zeit ist daher das BSD Maskottchen dieser fröhlich aussehende Dämon mit Turnschuhen und Dreizack. Programme, die als Dämon laufen, werden entsprechend einer Konvention mit einem d am Ende benannt. BIND ist der Berkeley Internet Name Daemon und das tatsächlich laufende Programm heißt named. Der Apache Webserver wird httpd genannt, der Druckerspool-Dämon heißt lpd usw. Dies ist allerdings eine Konvention und keine unumstößliche Regel: Der Dämon der Anwendung sendmail heißt sendmail und nicht maild, wie Sie vielleicht gedacht hatten. Manchmal müssen Sie mit einem Dämon kommunizieren und dazu benutzen Sie Signale. Sie können mit einem Dämonen oder jedem anderen laufenden Prozess kommunizieren, indem Sie diesem ein Signal schicken. Sie können verschiedene Signale verschicken – manche haben eine festgelegte Bedeutung, andere werden von der Anwendung interpretiert. Die Dokumentation zur fraglichen Anwendung wird erklären, wie die Anwendung Signale interpretiert. Sie können nur Signale zu Prozessen senden, die Ihnen gehören. Normale Benutzer haben nicht die Berechtigung, Prozessen anderer Benutzer mit &man.kill.1; oder &man.kill.2; Signale zu schicken. Der Benutzer root darf jedem Prozess Signale schicken. In manchen Fällen wird FreeBSD Signale senden. Wenn eine Anwendung schlecht geschrieben ist und auf Speicher zugreift, auf den sie nicht zugreifen soll, so sendet FreeBSD dem Prozess das Segmentation Violation Signal (SIGSEGV). Wenn eine Anwendung den &man.alarm.3; Systemaufruf benutzt hat, um nach einiger Zeit benachrichtigt zu werden, bekommt sie das Alarm Signal (SIGALRM) gesendet. Zwei Signale können benutzt werden, um Prozesse zu stoppen: SIGTERM und SIGKILL. Mit SIGTERM fordern Sie den Prozess höflich zum Beenden auf. Der Prozess kann das Signal abfangen und merken, dass er sich beenden soll. Er hat dann Gelegenheit Logdateien zu schließen und die Aktion, die er vor der Aufforderung sich zu beenden durchführte, abzuschließen. Er kann sogar SIGTERM ignorieren, wenn er eine Aktion durchführt, die nicht unterbrochen werden darf. SIGKILL kann von keinem Prozess ignoriert werden. Das Signal lässt sich mit Mich interessiert nicht, was du gerade machst, hör sofort auf damit! umschreiben. Wenn Sie einem Prozess SIGKILL schicken, dann wird FreeBSD diesen sofort beenden Das stimmt nicht ganz: Es gibt Fälle, in denen ein Prozess nicht unterbrochen werden kann. Wenn der Prozesss zum Beispiel eine Datei von einem anderen Rechner auf dem Netzwerk liest und dieser Rechner aus irgendwelchen Gründen nicht erreichbar ist (ausgeschaltet, oder ein Netzwerkfehler), dann ist der Prozess nicht zu unterbrechen. Wenn der Prozess den Lesezugriff nach einem Timeout von typischerweise zwei Minuten aufgibt, dann wir er beendet. . Andere Signale, die Sie vielleicht verschicken wollen, sind SIGHUP, SIGUSR1 und SIGUSR2. Diese Signale sind für allgemeine Zwecke vorgesehen und verschiedene Anwendungen werden unterschiedlich auf diese Signale reagieren. Nehmen wir an, Sie haben die Konfiguration Ihres Webservers verändert und möchten dies dem Server mitteilen. Sie könnten den Server natürlich stoppen und httpd wieder starten. Die Folge wäre eine kurze Zeit, in der der Server nicht erreichbar ist. Die meisten Dämonen lesen Ihre Konfigurationsdatei beim Empfang eines SIGHUP neu ein. Da es keinen Standard gibt, der vorschreibt, wie auf diese Signale zu reagieren ist, lesen Sie bitte die Dokumentation zu dem in Frage kommenden Dämon. Mit &man.kill.1; können Sie, wie unten gezeigt, Signale verschicken. Verschicken von Signalen Das folgende Beispiel zeigt, wie Sie &man.inetd.8; ein Signal schicken. Die Konfigurationsdatei von inetd ist /etc/inetd.conf. Diese Konfigurationsdatei liest inetd ein, wenn er ein SIGHUP empfängt. Suchen Sie die Prozess-ID des Prozesses, dem Sie ein Signal schicken wollen. Benutzen Sie dazu &man.ps.1; und &man.grep.1;. Mit &man.grep.1; können Sie in einer Ausgabe nach einem String suchen. Da &man.inetd.8; unter dem Benutzer root läuft und Sie das Kommando als normaler Benutzer absetzen, müssen Sie &man.ps.1; mit aufrufen: &prompt.user; ps -ax | grep inetd 198 ?? IWs 0:00.00 inetd -wW Die Prozess-ID von &man.inetd.8; ist 198. In einigen Fällen werden Sie auch das grep inetd Kommando in der Ausgabe sehen. Dies hat damit zu tun, wie &man.ps.1; die Liste der laufenden Prozesse untersucht. Senden Sie das Signal mit &man.kill.1;. Da &man.inetd.8; unter dem Benutzer root läuft, müssen Sie zuerst mit &man.su.1; root werden: &prompt.user; su Password: &prompt.root; /bin/kill -s HUP 198 &man.kill.1; wird, wie andere Kommandos von &unix; Systemen auch, keine Ausgabe erzeugen, wenn das Kommando erfolgreich war. Wenn Sie versuchen, einem Prozess, der nicht Ihnen gehört, ein Signal zu senden, dann werden Sie die Meldung kill: PID: Operation not permitted sehen. Wenn Sie sich bei der Eingabe der PID vertippen, werden Sie das Signal dem falschen Prozess schicken, was schlecht sein kann. Wenn Sie Glück haben, existiert der Prozess nicht und Sie werden mit der Ausgabe kill: PID: No such process belohnt. Warum soll ich <command>/bin/kill</command> benutzen? Viele Shells stellen kill als internes Kommando zur Verfügung, das heißt die Shell sendet das Signal direkt, anstatt /bin/kill zu starten. Das kann nützlich sein, aber die unterschiedlichen Shells benutzen eine verschiedene Syntax, um die Namen der Signale anzugeben. Anstatt jede Syntax zu lernen, kann es einfacher sein, /bin/kill ... direkt aufzurufen. Andere Signale senden Sie auf die gleiche Weise, ersetzen Sie nur TERM oder KILL entsprechend. Es kann gravierende Auswirkungen haben, wenn Sie zufällig Prozesse beenden. Insbesondere &man.init.8; mit der Prozess-ID ist ein Spezialfall. Mit /bin/kill -s KILL 1 können Sie Ihr System schnell herunterfahren. Überprüfen Sie die Argumente von &man.kill.1; immer zweimal bevor Sie Return drücken. Shells Shells Kommandozeile Von der tagtäglichen Arbeit mit FreeBSD wird eine Menge mit der Kommandozeilen Schnittstelle der Shell erledigt. Die Hauptaufgabe einer Shell besteht darin, Kommandos der Eingabe anzunehmen und diese auszuführen. Viele Shells haben außerdem eingebaute Funktionen, die die tägliche Arbeit erleichtern, beispielsweise eine Dateiverwaltung, die Vervollständigung von Dateinamen (Globbing), einen Kommandozeileneditor, sowie Makros und Umgebungsvariablen. FreeBSD enthält die Shells sh (die Bourne Shell) und tcsh (die verbesserte C-Shell) im Basissystem. Viele andere Shells, wie zsh oder bash, befinden sich in der Ports-Sammlung. Welche Shell soll ich benutzen? Das ist wirklich eine Geschmacksfrage. Sind Sie ein C-Programmierer, finden Sie vielleicht eine C-artige Shell wie die tcsh angenehmer. Kommen Sie von Linux oder ist Ihnen der Umgang mit &unix; Systemen neu, so könnten Sie die bash probieren. Der Punkt ist, dass jede Shell ihre speziellen Eigenschaften hat, die mit Ihrer bevorzugten Arbeitsumgebung harmonieren können oder nicht. Sie müssen sich eine Shell aussuchen. Ein verbreitetes Merkmal in Shells ist die Dateinamen-Vervollständigung. Sie müssen nur einige Buchstaben eines Kommandos oder eines Dateinamen eingeben und die Shell vervollständigt den Rest automatisch durch drücken der Tab-Taste. Hier ist ein Beispiel. Angenommen, Sie haben zwei Dateien foobar und foo.bar. Die Datei foo.bar möchten Sie löschen. Nun würden Sie an der Tastatur eingeben: rm fo[Tab]. [Tab]. Die Shell würde dann rm foo[BEEP].bar ausgeben. [BEEP] meint den Rechner-Piepser. Diesen gibt die Shell aus, um anzuzeigen, dass es den Dateinamen nicht vervollständigen konnte, da es mehrere Möglichkeiten gibt. Beide Dateien foobar und foo.bar beginnen mit fo, so konnte nur bis foo ergänzt werden. Nachdem Sie . eingaben und dann die Tab-Taste drückten, konnte die Shell den Rest für Sie ausfüllen. Umgebungsvariablen Ein weiteres Merkmal der Shell ist der Gebrauch von Umgebungsvariablen. Dies sind veränderbare Schlüsselpaare im Umgebungsraum der Shell, die jedes von der Shell aufgerufene Programm lesen kann. Daher enthält der Umgebungsraum viele Konfigurationsdaten für Programme. Die folgende Liste zeigt verbreitete Umgebungsvariablen und was sie bedeuten: Umgebungsvariablen Variable Beschreibung USER Name des angemeldeten Benutzers. PATH Liste mit Verzeichnissen (getrennt durch Doppelpunkt) zum Suchen nach Programmen. DISPLAY Der Name des X11-Bildschirms, auf dem Ausgaben erfolgen sollen. SHELL Die aktuelle Shell. TERM Name des Terminals des Benutzers. Benutzt, um die Fähigkeiten des Terminals zu bestimmen. TERMCAP Datenbankeintrag der Terminal Escape Codes, benötigt um verschieden Terminalfunktionen auszuführen. OSTYPE Typ des Betriebsystems, beispielsweise FreeBSD. MACHTYPE Die CPU Architektur auf dem das System läuft. EDITOR Vom Benutzer bevorzugter Text-Editor. PAGER Vom Benutzer bevorzugter Text-Betrachter. MANPATH Liste mit Verzeichnissen (getrennt durch Doppelpunkt) zum Suchen nach Manualpages. Shells Bourne Shell Das Setzen von Umgebungsvariablen funktioniert von Shell zu Shell unterschiedlich. Zum Beispiel benutzt man in C-artigen Shells wie der tcsh dazu setenv. Unter Bourne-Shells wie sh oder bash benutzen Sie zum Setzen von Umgebungsvariablen export. Um beispielsweise die Variable EDITOR mit csh oder tcsh auf /usr/local/bin/emacs zu setzen, setzen Sie das folgende Kommando ab: &prompt.user; setenv EDITOR /usr/local/bin/emacs Unter Bourne-Shells: &prompt.user; export EDITOR="/usr/local/bin/emacs" Sie können die meisten Shells Umgebungsvariablen expandieren lassen, in dem Sie in der Kommandozeile ein $ davor eingeben. Zum Beispiel gibt echo $TERM aus, worauf $TERM gesetzt ist, weil die Shell $TERM expandiert und das Ergebnis an echo gibt. Shells behandeln viele Spezialzeichen, so genannte Metazeichen, als besondere Darstellungen für Daten. Das allgemeinste ist das Zeichen *, das eine beliebige Anzahl Zeichen in einem Dateinamen repräsentiert. Diese Metazeichen können zum Vervollständigen von Dateinamen (Globbing) benutzt werden. Beispielsweise liefert das Kommando echo * nahezu das gleiche wie die Eingabe von ls, da die Shell alle Dateinamen die mit * übereinstimmen, an echo weitergibt. Um zu verhindern, dass die Shell diese Sonderzeichen interpretiert, kann man sie schützen, indem man ihnen einen Backslash (\) voranstellt. echo $TERM gibt aus, auf was auch immer Ihr Terminal gesetzt ist. echo \$TERM gibt $TERM genauso aus, wie es hier steht. Ändern der Shell Der einfachste Weg Ihre Shell zu ändern, ist das Kommando chsh zu benutzen. chsh platziert Sie im Editor, welcher durch Ihre Umgebungsvariable EDITOR gesetzt ist, im vi wenn die Variable nicht gesetzt ist. Ändern Sie die Zeile mit Shell: entsprechend Ihren Wünschen. Sie können auch chsh mit der Option aufrufen, dann wird Ihre Shell gesetzt, ohne dass Sie in einen Editor gelangen. Um Ihre Shell zum Beispiel auf die bash zu ändern, geben Sie das folgende Kommando ein: &prompt.user; chsh -s /usr/local/bin/bash Die von Ihnen gewünschte Shell muss in /etc/shells aufgeführt sein. Haben Sie eine Shell aus der Ports-Sammlung installiert, sollte das schon automatisch erledigt werden. Installierten Sie die Shell von Hand, so müssen Sie sie dort eintragen. Haben Sie beispielsweise die bash nach /usr/local/bin installiert, geben Sie Folgendes ein: &prompt.root; echo "/usr/local/bin/bash" >> /etc/shells Danach können Sie chsh aufrufen. Text-Editoren Text Editoren Editoren Eine großer Teil der Konfiguration wird bei FreeBSD durch das Editieren von Textdateien erledigt. Deshalb ist es eine gute Idee, mit einem Texteditor vertraut zu werden. FreeBSD hat ein paar davon im Basissystem und sehr viel mehr in der Ports-Sammlung. ee Text Editoren ee Der am leichtesten und einfachsten zu erlernende Editor nennt sich ee, was für easy editor steht. Um ee zu starten, gibt man in der Kommandozeile ee filename ein, wobei filename den Namen der zu editierenden Datei darstellt. Um zum Beispiel /etc/rc.conf zu editieren, tippen Sie ee /etc/rc.conf ein. Einmal im Editor, finden Sie alle Editor-Funktionen oben im Display aufgelistet. Das Einschaltungszeichen ^ steht für die Ctrl (oder Strg) Taste, mit ^e ist also die Tastenkombination Ctrle gemeint. Um ee zu verlassen, drücken Sie Esc und wählen dann aus. Der Editor fragt nach, ob Sie speichern möchten, wenn die Datei verändert wurde. vi Text Editoren vi emacs Text Editoren emacs FreeBSD verfügt über leistungsfähigere Editoren wie vi als Teil des Basissystems, andere Editoren wie emacs oder vim sind Teil der Ports-Sammlung. Diese Editoren bieten höhere Funktionalität und Leistungsfähigkeit, jedoch auf Kosten einer etwas schwierigeren Erlernbarkeit. Wenn Sie viele Textdateien editieren, sparen Sie auf lange Sicht mehr Zeit durch das Erlernen von Editoren wie vim oder emacs ein. Geräte und Gerätedateien Der Begriff Gerät wird meist in Verbindung mit Hardware wie Laufwerken, Druckern, Grafikkarten oder Tastaturen gebraucht. Der Großteil der Meldungen, die beim Booten von FreeBSD angezeigt werden, beziehen sich auf gefundene Geräte. Sie können sich die Bootmeldungen später in /var/run/dmesg.boot ansehen. Gerätenamen, die Sie wahrscheinlich in den Bootmeldungen sehen werden, sind zum Beispiel acd0, das erste IDE CD-ROM oder kbd0, die Tastatur. Auf die meisten Geräte wird unter &unix; Systemen über spezielle Gerätedateien im /dev Verzeichnis zugegriffen. Anlegen von Gerätedateien Wenn sie ein neues Gerät zu Ihrem System hinzufügen, oder die Unterstützung für zusätzliche Geräte kompilieren, müssen ein oder mehrere Gerätedateien erstellt werden. <literal>DEVFS</literal> (Gerätedateisystem) Das Gerätedateisystem DEVFS ermöglicht durch den Namensraum des Dateisystems Zugriff auf den Namensraum der Geräte im Kernel. Damit müssen Gerätedateien nicht mehr extra angelegt werden, sondern werden von DEVFS verwaltet. Weitere Informationen finden Sie in &man.devfs.5;. Binärformate Um zu verstehen, warum &os; das Format &man.elf.5; benutzt, müssen Sie zunächst etwas über die drei gegenwärtig dominanten ausführbaren Formate für &unix; Systeme wissen: &man.a.out.5; Das älteste und klassische Objektformat von &unix; Systemen. Es benutzt einen kurzen, kompakten Header mit einer magischen Nummer am Anfang, die oft benutzt wird, um das Format zu charakterisieren (weitere Details finden Sie unter &man.a.out.5;). Es enthält drei geladene Segmente: .text, .data und .bss, sowie eine Symboltabelle und eine Stringtabelle. COFF Das Objektformat von SVR3. Der Header enthält nun eine Sectiontable. Man kann also mit mehr als nur den Sections .text, .data und .bss arbeiten. &man.elf.5; Der Nachfolger von COFF. Kennzeichnend sind mehrere Sections und mögliche 32-Bit- oder 64-Bit-Werte. Ein wesentlicher Nachteil: ELF wurde auch unter der Annahme entworfen, dass es nur eine ABI (Application Binary Interface) pro Systemarchitektur geben wird. Tatsächlich ist diese Annahme falsch – nicht einmal für die kommerzielle SYSV-Welt (in der es mindestens drei ABIs gibt: SVR4, Solaris, SCO) trifft sie zu. FreeBSD versucht, dieses Problem zu umgehen, indem ein Werkzeug bereitgestellt wird, um ausführbare Dateien im ELF-Format mit Informationen über die ABI zu versehen, zu der sie passen. Weitere Informationen finden Sie in der Manualpage &man.brandelf.1;. FreeBSD kommt aus dem klassischen Lager und verwendete traditionell das Format &man.a.out.5;, eine Technik, die bereits über viele BSD-Releases hinweg eingesetzt und geprüft worden ist. Obwohl es bereits seit einiger Zeit möglich war, auf einem FreeBSD-System auch Binaries (und Kernel) im ELF-Format zu erstellen und auszuführen, widersetzte FreeBSD sich anfangs dem Druck, auf ELF als Standardformat umzusteigen. Warum? Nun, als das Linux-Lager die schmerzhafte Umstellung auf ELF durchführte, ging es nicht so sehr darum, dem ausführbaren Format a.out zu entkommen, als dem unflexiblen, auf Sprungtabellen basierten Mechanismus für Shared-Libraries der die Konstruktion von Shared-Libraries für Hersteller und Entwickler gleichermaßen sehr kompliziert machte. Da die verfügbaren ELF-Werkzeuge eine Lösung für das Problem mit den Shared-Libraries anboten und ohnehin generell als ein Schritt vorwärts angesehen wurden, wurde der Aufwand für die Umstellung als notwendig akzeptiert und die Umstellung wurde durchgeführt. Unter FreeBSD ist der Mechanismus von Shared-Libraries enger an den Stil des Shared-Library-Mechanismus von Suns &sunos; angelehnt und von daher sehr einfach zu verwenden. Ja, aber warum gibt es so viele unterschiedliche Formate? In alter, grauer Vorzeit gab es simple Hardware. Diese simple Hardware unterstützte ein einfaches, kleines System. a.out war absolut passend für die Aufgabe, Binaries auf diesem simplen System (eine PDP-11) darzustellen. Als &unix; von diesem simplen System portiert wurde, wurde auch das a.out-Format beibehalten, weil es für die frühen Portierungen auf Architekturen wie den Motorola 68000 und VAX ausreichte. Dann dachte sich ein schlauer Hardware-Ingenieur, dass, wenn er Software zwingen könnte, einige Tricks anzustellen, es ihm möglich wäre, ein paar Gatter im Design zu sparen, und seinen CPU-Kern schneller zu machen. Obgleich es dazu gebracht wurde, mit dieser neuen Art von Hardware (heute als RISC bekannt) zu arbeiten, war a.out für diese Hardware schlecht geeignet. Deshalb wurden viele neue Formate entwickelt, um eine bessere Leistung auf dieser Hardware zu erreichen, als mit dem begrenzten, simplen a.out-Format. Dinge wie COFF, ECOFF und einige andere obskure wurden erdacht und ihre Grenzen untersucht, bevor die Dinge sich in Richtung ELF entwickelten. Hinzu kam, dass die Größe von Programmen gewaltig wurde und Festplatten sowie physikalischer Speicher immer noch relativ klein waren. Also wurde das Konzept von Shared-Libraries geboren. Das VM-System wurde auch immer fortgeschrittener. Obwohl bei jedem dieser Fortschritte das a.out-Format benutzt worden ist, wurde sein Nutzen mit jedem neuen Merkmal mehr und mehr gedehnt. Zusätzlich wollte man Dinge dynamisch zur Ausführungszeit laden, oder Teile ihres Programms nach der Initialisierung wegwerfen, um Hauptspeicher oder Swap-Speicher zu sparen. Programmiersprachen wurden immer fortschrittlicher und man wollte, dass Code automatisch vor der main-Funktion aufgerufen wird. Das a.out-Format wurde oft überarbeitet, um alle diese Dinge zu ermöglichen und sie funktionierten auch für einige Zeit. a.out konnte diese Probleme nicht ohne ein ständiges Ansteigen eines Overheads im Code und in der Komplexität handhaben. Obwohl ELF viele dieser Probleme löste, wäre es sehr aufwändig, ein System umzustellen, das im Grunde genommen funktionierte. Also musste ELF warten, bis es aufwändiger war, bei a.out zu bleiben, als zu ELF überzugehen. Im Laufe der Zeit haben sich die Erstellungswerkzeuge, von denen FreeBSD seine Erstellungswerkzeuge abgeleitet hat (speziell der Assembler und der Loader), in zwei parallele Zweige entwickelt. Im FreeBSD-Zweig wurden Shared-Libraries hinzugefügt und einige Fehler behoben. Das GNU-Team, das diese Programme ursprünglich geschrieben hat, hat sie umgeschrieben und eine simplere Unterstützung zur Erstellung von Cross-Compilern durch beliebiges Einschalten verschiedener Formate usw. hinzugefügt. Viele Leute wollten Cross-Compiler für FreeBSD erstellen, aber sie hatten kein Glück, denn FreeBSD's ältere Sourcen für as und ld waren hierzu nicht geeignet. Die neuen GNU-Werkzeuge (binutils) unterstützen Cross-Compilierung, ELF, Shared-Libraries, C++-Erweiterungen und mehr. Weiterhin geben viele Hersteller ELF-Binaries heraus und es ist gut, wenn FreeBSD sie ausführen kann. ELF ist ausdrucksfähiger als a.out und gestattet eine bessere Erweiterbarkeit des Basissystems. Die ELF-Werkzeuge werden besser gewartet und bieten Unterstützung von Cross-Compilierung, was für viele Leute wichtig ist. ELF mag etwas langsamer sein, als a.out, aber zu versuchen, das zu messen, könnte schwierig werden. Es gibt unzählige Details, in denen sich die beiden Formate unterscheiden, wie sie Pages abbilden, Initialisierungscode handhaben usw. Keins davon ist sehr wichtig, aber es sind Unterschiede. Irgendwann wird die Unterstützung für Programme im a.out-Format aus dem GENERIC-Kernel entfernt werden. Wenn es dann keinen oder kaum noch Bedarf für die Unterstützung dieses Formates gibt, werden die entsprechenden Routinen ganz entfernt werden. Weitere Informationen Manualpages Manualpages Die umfassendste Dokumentation rund um FreeBSD gibt es in Form von Manualpages. Annähernd jedes Programm im System bringt eine kurze Referenzdokumentation mit, die die grundsätzliche Funktion und verschiedene Parameter erklärt. Diese Dokumentationen kann man mit dem man Kommando benutzen. Die Benutzung des man Kommandos ist einfach: &prompt.user; man Kommando Kommando ist der Name des Kommandos, über das Sie etwas erfahren wollen. Um beispielsweise mehr über das Kommando ls zu lernen, geben Sie ein: &prompt.user; man ls Die Online-Dokumentation ist in nummerierte Sektionen unterteilt: Benutzerkommandos. Systemaufrufe und Fehlernummern. Funktionen der C Bibliothek. Gerätetreiber. Dateiformate. Spiele und andere Unterhaltung. Verschiedene Informationen. Systemverwaltung und -Kommandos. Kernel Entwickler. In einigen Fällen kann dasselbe Thema in mehreren Sektionen auftauchen. Es gibt zum Beispiel ein chmod Benutzerkommando und einen chmod() Systemaufruf. In diesem Fall können Sie dem man Kommando sagen, aus welcher Sektion Sie die Information erhalten möchten, indem Sie die Sektion mit angeben: &prompt.user; man 1 chmod Dies wird Ihnen die Manualpage für das Benutzerkommando chmod zeigen. Verweise auf eine Sektion der Manualpages werden traditionell in Klammern gesetzt. So bezieht sich &man.chmod.1; auf das Benutzerkommando chmod und mit &man.chmod.2; ist der Systemaufruf gemeint. Das ist nett, wenn Sie den Namen eines Kommandos wissen, und lediglich wissen wollen, wie es zu benutzen ist. Aber was tun Sie, wenn Sie Sich nicht an den Namen des Kommandos erinnern können? Sie können mit man nach Schlüsselbegriffen in den Kommandobeschreibungen zu suchen, indem Sie den Parameter benutzen: &prompt.user; man -k mail Mit diesem Kommando bekommen Sie eine Liste der Kommandos, deren Beschreibung das Schlüsselwort mail enthält. Diese Funktionalität erhalten Sie auch, wenn Sie das Kommando apropos benutzen. Nun, Sie schauen Sich alle die geheimnisvollen Kommandos in /usr/bin an, haben aber nicht den blassesten Schimmer, wozu die meisten davon gut sind? Dann rufen Sie doch einfach das folgende Kommando auf: &prompt.user; cd /usr/bin &prompt.user; man -f * Dasselbe erreichen Sie durch Eingabe von: &prompt.user; cd /usr/bin &prompt.user; whatis * GNU Info Dateien FreeBSD enthält viele Anwendungen und Utilities der Free Software Foundation (FSF). Zusätzlich zu den Manualpages bringen diese Programme ausführlichere Hypertext-Dokumente (info genannt) mit, welche man sich mit dem Kommando info ansehen kann. Wenn Sie emacs installiert haben, können Sie auch dessen info-Modus benutzen. Um das Kommando &man.info.1; zu benutzen, geben Sie einfach ein: &prompt.user; info Eine kurze Einführung gibt es mit h; eine Befehlsreferenz erhalten Sie durch Eingabe von: ?.
diff --git a/de_DE.ISO8859-1/books/handbook/book.sgml b/de_DE.ISO8859-1/books/handbook/book.sgml index e895591761..328948ae1c 100644 --- a/de_DE.ISO8859-1/books/handbook/book.sgml +++ b/de_DE.ISO8859-1/books/handbook/book.sgml @@ -1,359 +1,360 @@ %books.ent; %chapters; %txtfiles; %pgpkeys; ]> Das &os;-Handbuch The FreeBSD German Documentation Project
de-bsd-translators@de.FreeBSD.org
Februar 1999 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 The FreeBSD German Documentation Project &bookinfo.legalnotice; &tm-attrib.freebsd; &tm-attrib.3com; &tm-attrib.3ware; &tm-attrib.arm; &tm-attrib.adaptec; &tm-attrib.adobe; &tm-attrib.apple; &tm-attrib.corel; &tm-attrib.creative; &tm-attrib.cvsup; &tm-attrib.heidelberger; &tm-attrib.ibm; &tm-attrib.ieee; &tm-attrib.intel; &tm-attrib.intuit; &tm-attrib.linux; &tm-attrib.lsilogic; &tm-attrib.m-systems; &tm-attrib.macromedia; &tm-attrib.microsoft; &tm-attrib.netscape; &tm-attrib.nexthop; &tm-attrib.opengroup; &tm-attrib.oracle; &tm-attrib.powerquest; &tm-attrib.realnetworks; &tm-attrib.redhat; &tm-attrib.sap; &tm-attrib.sun; &tm-attrib.symantec; &tm-attrib.themathworks; &tm-attrib.thomson; &tm-attrib.usrobotics; &tm-attrib.vmware; &tm-attrib.waterloomaple; &tm-attrib.wolframresearch; &tm-attrib.xfree86; &tm-attrib.xiph; &tm-attrib.general; Willkommen bei &os;! Dieses Handbuch beschreibt die Installation und den täglichen Umgang mit &os; &rel2.current;-RELEASE und &os; &rel.current;-RELEASE. Das Handbuch ist jederzeit unter Bearbeitung und das Ergebnis der Arbeit vieler Einzelpersonen. Dies kann dazu führen, dass bestimmte Bereiche nicht mehr aktuell sind und auf den neuesten Stand gebracht werden m&üssen. Wenn Sie dabei mithelfen möchten, senden Sie bitte eine E-Mail an die Mailingliste &a.de.translators;. Die aktuelle Version des Handbuchs ist immer auf dem &os;-Webserver verfügbar und kann in verschiedenen Formaten und in komprimierter Form vom &os;-FTP-Server oder einem der vielen Spiegel herunter geladen werden (ältere Versionen finden Sie hingegen unter ). Vielleicht möchten Sie das Handbuch aber auch durchsuchen.
&chap.preface; Erste Schritte Dieser Teil des &os;-Handbuchs richtet sich an Benutzer und Administratoren für die &os; neu ist. Diese Kapitel geben Ihnen eine Einführung in &os;, geleiten Sie durch den Installationsprozess, erklären Ihnen die Grundlagen von &unix; Systemen, zeigen Ihnen, wie Sie die Fülle der erhältlichen Anwendungen Dritter installieren und führen Sie in X, der Benutzeroberfläche von &unix; Systemen ein. Es wird gezeigt, wie Sie den Desktop konfigurieren, um effektiver arbeiten zu können. Wir haben uns bemüht, Referenzen auf weiter vorne liegende Textteile auf ein Minimum zu beschränken, so dass Sie diesen Teil des Handbuchs ohne viel Blättern durcharbeiten können. Oft benutzte Funktionen Nach den Grundlagen beschäftigt sich das &os;-Handbuch mit oft benutzten Funktionen von &os;. Die Kapitel behandeln die nachstehenden Themen: Zeigen Ihnen beliebte und nützliche Werkzeuge wie Browser, Büroanwendungen und Programme zum Anzeigen von Dokumenten. Zeigen Ihnen Multimedia-Werkzeuge für &os;. Erklären den Bau eines angepassten &os;-Kernels, der die Systemfunktionen erweitert. Beschreiben ausführlich das Drucksystem, sowohl für direkt angeschlossene Drucker als auch für Netzwerkdrucker. Erläutern, wie Sie Linux-Anwendungen auf einem &os;-System laufen lassen. Damit Sie einige Kapitel verstehen, sollten Sie vorher andere Kapitel gelesen haben. Die Übersicht zu jedem Kapitel zählt die Voraussetzungen für das erolgreiche Durcharbeiten des Kapitels auf. Systemadministration Die restlichen Kapitel behandeln alle Aspekte der &os; Systemadministration. Am Anfang jedes Kapitels finden Sie eine Zusammenfassung, die beschreibt, was Sie nach dem Durcharbeiten des Kapitels gelernt haben. Weiterhin werden die Voraussetzungen beschrieben, die für das Durcharbeiten des Kapitels erforderlich sind. Diese Kapitel sollten Sie lesen, wenn Sie die Informationen darin benötigen. Sie brauchen Sie nicht in einer bestimmten Reihenfolge zu lesen, noch müssen Sie die Kapitel lesen, bevor Sie anfangen, &os; zu benutzen. + Netzwerke &os; ist eins der meist benutzten Betriebssysteme für leistungsfähige Netzwerkserver. Die Kapitel in diesem Teil behandeln die nachstehenden Themen: Serielle Datenübertragung PPP und PPP over Ethernet Electronic-Mail Den Betrieb von Netzwerkdiensten Firewalls Weiterführende Netzwerkthemen Diese Kapitel sollten Sie lesen, wenn Sie die Informationen darin benötigen. Sie brauchen Sie nicht in einer bestimmten Reihenfolge zu lesen, noch müssen Sie die Kapitel lesen, bevor Sie anfangen, &os; zu benutzen. Anhang &chap.colophon;
diff --git a/de_DE.ISO8859-1/books/handbook/chapters.ent b/de_DE.ISO8859-1/books/handbook/chapters.ent index db450ead78..5fd1782ae4 100644 --- a/de_DE.ISO8859-1/books/handbook/chapters.ent +++ b/de_DE.ISO8859-1/books/handbook/chapters.ent @@ -1,62 +1,63 @@ + diff --git a/de_DE.ISO8859-1/books/handbook/config/chapter.sgml b/de_DE.ISO8859-1/books/handbook/config/chapter.sgml index 9b1164cfb5..c5a491594d 100644 --- a/de_DE.ISO8859-1/books/handbook/config/chapter.sgml +++ b/de_DE.ISO8859-1/books/handbook/config/chapter.sgml @@ -1,3521 +1,3527 @@ Chern Lee Geschrieben von Mike Smith Nach einem Tutorium von Matt Dillon Basiert ebenfalls auf tuning(7) von Martin Heinen Übersetzt von Konfiguration und Tuning Übersicht System-Konfiguration System-Optimierung Ein korrekt konfiguriertes System kann die Arbeit, die bei der zukünftigen Pflege und bei Migrationen des Systems entsteht, erheblich reduzieren. Dieses Kapitel beschreibt die Konfiguration von &os; sowie Maßnahmen zur Leistungssteigerung von &os;-Systemen. Nachdem Sie dieses Kapitel durchgearbeitet haben, werden Sie Folgendes wissen: Wie Sie effizient Dateisysteme und Swap-Partitionen auf Ihrer Festplatte einrichten. Die Grundlagen der Konfiguration mit rc.conf und des Systems zum Starten von Anwendungen in /usr/local/etc/rc.d. Wie Sie Netzwerkkarten konfigurieren und testen. Wie Sie virtuelle Hosts und Netzwerkgeräte konfigurieren. Wie Sie die verschiedenen Konfigurationsdateien in /etc benutzen. Wie Sie mit sysctl-Variablen &os; einstellen können. Wie Sie die Platten-Performance einstellen und Kernel-Parameter modifizieren können. Bevor Sie dieses Kapitel lesen, sollten Sie die Grundlagen von &unix; und &os; () verstehen. Damit vertraut sein, wie Sie einen Kernel konfigurieren und kompilieren (). Vorbereitende Konfiguration Layout von Partitionen Layout von Partitionen /etc /var /usr Partitionen Wenn Sie Dateisysteme mit &man.bsdlabel.8; oder &man.sysinstall.8; anlegen, sollten Sie beachten, dass Festplatten auf Daten in den äußeren Spuren schneller zugreifen können als auf Daten in den inneren Spuren. Daher sollten die kleineren oft benutzten Dateisysteme, wie das Root-Dateisystem oder die Swap-Partition, an den äußeren Rand der Platte gelegt werden. Die größeren Partitionen wie /usr sollten in die inneren Bereiche gelegt werden. Es empfiehlt sich, die Partitionen in einer ähnlichen Reihenfolge wie Root-Partition, Swap, /var und /usr anzulegen. Die Größe von /var ist abhängig vom Zweck der Maschine. /var enthält hauptsächlich Postfächer, den Spoolbereich zum Drucken und Logdateien. Abhängig von der Anzahl der Systembenutzer und der Aufbewahrungszeit für Logdateien, können gerade die Postfächer und Logdateien zu ungeahnten Größen wachsen. Oft werden Sie mit weniger als einem Gigabyte auskommen, doch beachten Sie, dass /var/tmp für Pakete ausreichend dimensioniert ist. Die /usr-Partition enthält den Hauptteil des Systems, die Ports-Sammlung (empfohlen) und die Quellen (optional). Im Laufe der Installation haben Sie die Möglichkeit, die Quellen und die Ports-Sammlung gleich mit zu installieren. Für die /usr-Partition sollten Sie mindestens zwei Gigabyte vorsehen. Wenn Sie die Größe der Partitionen festlegen, beachten Sie bitte das Wachstum Ihres Systems. Wenn Sie den Platz auf einer Partition vollständig aufgebraucht haben, eine andere Partition aber kaum benutzen, kann die Handhabung des Systems schwierig werden. Die automatische Partitionierung von &man.sysinstall.8; mit Auto-defaults legt manchmal zu kleine / und /var-Partition an. Partitionieren Sie weise und großzügig. Swap Partition Swap-Partition Größe Swap-Partition Als Daumenregel sollten Sie doppelt soviel Speicher für die Swap-Partition vorsehen, als Sie Hauptspeicher haben. Verfügt die Maschine beispielsweise über 128 Megabyte Hauptspeicher, sollten Sie 256 Megabyte für den Swap-Bereich vorsehen. Systeme mit weniger Speicher werden wahrscheinlich mit viel mehr Swap mehr leisten. Es wird nicht empfohlen, weniger als 256 Megabyte Swap einzurichten. Außerdem sollten Sie künftige Speichererweiterungen beachten, wenn Sie die Swap-Partition einrichten. Die VM-Paging-Algorithmen im Kernel sind so eingestellt, dass Sie am besten laufen, wenn die Swap-Partition mindestens doppelt so groß wie der Hauptspeicher ist. Zu wenig Swap kann zu einer Leistungsverminderung im VM page scanning Code führen, sowie Probleme verursachen, wenn Sie später mehr Speicher in Ihre Maschine bauen. Auf größeren Systemen mit mehreren SCSI-Laufwerken (oder mehreren IDE-Laufwerken an unterschiedlichen Controllern) empfehlen wir Ihnen, Swap-Bereiche auf bis zu vier Laufwerken einzurichten. Diese Swap-Partitionen sollten ungefähr dieselbe Größe haben. Der Kernel kann zwar mit beliebigen Größen umgehen, aber die internen Datenstrukturen skalieren bis zur vierfachen Größe der größten Partition. Ungefähr gleich große Swap-Partitionen erlauben es dem Kernel, den Swap-Bereich optimal über die Laufwerke zu verteilen. Große Swap-Bereiche, auch wenn sie nicht oft gebraucht werden, sind nützlich, da sich ein speicherfressendes Programm unter Umständen auch ohne einen Neustart des Systems beenden lässt. Warum partitionieren? Gegen eine einzelne Partition sprechen mehrere Gründe. Jede Partition hat im Betrieb unterschiedliche Eigenschaften und die Trennung der Partitionen erlaubt es, die Dateisysteme an diese Eigenschaften anzupassen. Die Root- und /usr-Partitionen weisen meist nur lesende Zugriffe auf, während /var und /var/tmp hauptsächlich beschrieben werden. Indem Sie ein System richtig partitionieren, verhindern Sie, dass eine Fragmentierung in den häufig beschriebenen Partitionen auf die meist nur gelesenen Partitionen übergreift. Wenn Sie die häufig beschriebenen Partitionen an den Rand der Platte, legen, dann wird die I/O-Leistung diesen Partitionen steigen. Die I/O-Leistung ist natürlich auch für große Partitionen wichtig, doch erzielen Sie eine größere Leistungssteigerung, wenn Sie /var an den Rand der Platte legen. Schließlich sollten Sie noch die Stabilität des Systems beachten. Eine kleine Root-Partition, auf die meist nur lesend zugegriffen wird, überlebt einen schlimmen Absturz wahrscheinlich eher als eine große Partition. Basiskonfiguration rc-Dateien rc.conf Informationen zur Systemkonfiguration sind hauptsächlich in /etc/rc.conf, die meist beim Start des Systems verwendet wird, abgelegt. Der Name der Datei zeigt ihren Zweck an: Sie enthält die Konfigurationen für die rc* Dateien. In rc.conf werden die Vorgabewerte aus /etc/defaults/rc.conf überschrieben. Die Vorgabedatei sollte nicht nach /etc kopiert werden, da sie die Vorgabewerte und keine Beispiele enthält. Jede systemspezifische Änderung wird in rc.conf vorgenommen. Um den administrativen Aufwand gering zu halten, existieren in geclusterten Anwendungen mehrere Strategien, globale Konfigurationen von systemspezifischen Konfigurationen zu trennen. Der empfohlene Weg hält die globale Konfiguration in einer separaten Datei z.B. rc.conf.site. Diese Datei wird dann in /etc/rc.conf, die nur systemspezifische Informationen enthält, eingebunden. Da rc.conf von &man.sh.1; gelesen wird, ist das einfach zu erreichen: rc.conf: . /etc/rc.conf.site hostname="node15.example.com" network_interfaces="fxp0 lo0" ifconfig_fxp0="inet 10.1.1.1" rc.conf.site: defaultrouter="10.1.1.254" saver="daemon" blanktime="100" rc.conf.site kann dann auf jedes System mit rsync verteilt werden, rc.conf bleibt dabei systemspezifisch. Bei einem Upgrade des Systems mit &man.sysinstall.8; oder make world wird rc.conf nicht überschrieben, so dass die Systemkonfiguration erhalten bleibt. Konfiguration von Anwendungen Installierte Anwendungen haben typischerweise eigene Konfigurationsdateien, die eine eigene Syntax verwenden. Damit diese Dateien leicht von der Paketverwaltung gefunden und verwaltet werden können, ist es wichtig, sie vom Basissystem zu trennen. /usr/local/etc Für gewöhnlich werden diese Dateien in /usr/local/etc installiert. Besitzt eine Anwendung viele Konfigurationsdateien, werden diese in einem separaten Unterverzeichnis abgelegt. Wenn ein Port oder ein Paket installiert wird, werden normalerweise auch Beispiele für die Konfigurationsdateien installiert. Diese erkennt man gewöhnlich an dem Suffix .default. Wenn keine Konfigurationsdateien für eine Anwendung existieren, werden sie durch Kopieren der .default Dateien erstellt. Als Beispiel sei /usr/local/etc/apache gezeigt: -rw-r--r-- 1 root wheel 2184 May 20 1998 access.conf -rw-r--r-- 1 root wheel 2184 May 20 1998 access.conf.default -rw-r--r-- 1 root wheel 9555 May 20 1998 httpd.conf -rw-r--r-- 1 root wheel 9555 May 20 1998 httpd.conf.default -rw-r--r-- 1 root wheel 12205 May 20 1998 magic -rw-r--r-- 1 root wheel 12205 May 20 1998 magic.default -rw-r--r-- 1 root wheel 2700 May 20 1998 mime.types -rw-r--r-- 1 root wheel 2700 May 20 1998 mime.types.default -rw-r--r-- 1 root wheel 7980 May 20 1998 srm.conf -rw-r--r-- 1 root wheel 7933 May 20 1998 srm.conf.default Anhand der Dateigröße erkennen Sie, dass sich nur srm.conf geändert hat. Eine spätere Aktualisierung des Apache-Ports überschreibt diese Datei nicht. Tom Rhodes Beigetragen von Start von Diensten Dienste Viele Benutzer installieren Software Dritter auf &os; mithilfe der Ports-Sammlung. Häufig soll die Software bei einem Systemstart mitgestartet werden. Beispielsweise sollen die Dienste mail/postfix oder www/apache13 nach einem Systemstart laufen. Dieser Abschnitt stellt die Startprozeduren für Software Dritter vor. Unter &os; werden die meisten der im System enthaltenen Dienste wie &man.cron.8; mithilfe von Systemskripten gestartet. Diese Skripten sind abhängig von der &os;- oder Hersteller-Version. Allerdings kann ein Dienst mit einfachen Skripten gestartet werden. Vor der Einführung von rc.d legten Anwendungen einfach ein Startskript im Verzeichnis /usr/local/etc/rc.d ab. Das Startskript wurde von den Systemskripten in den letzten Phasen des Systemstarts ausgeführt. Obwohl bereits viele Startskripten auf das neue rc.d-System umgestellt wurden, gibt es noch Anwendungen, die ein Startskript im eben erwähnten Verzeichnis benötigen. In diesem Fall weisen die Skripte kleinere Unterschiede auf. Vor &os; 5.1 wurde der alte Stil verwendet, obwohl in den meisten Fällen auch der neue Stil problemlos funktionieren würde. Die Startskripten müssen das Suffix .sh tragen und ausführbar sein. Sie machen ein Skript ausführbar, indem Sie mit chmod die Rechte 755 vergeben. Das Skript sollte die Optionen und akzeptieren, um die Anwendung zu starten und zu stoppen. Ein einfaches Startskript sieht wie folgt aus: #!/bin/sh echo -n ' utility' case "$1" in start) /usr/local/bin/utility ;; stop) kill -9 `cat /var/run/utility.pid` ;; *) echo "Usage: `basename $0` {start|stop}" >&2 exit 64 ;; esac exit 0 Das Skript akzeptiert die Optionen start und stop zum Starten und Stoppen einer Anwendung mit Namen utility. Manuell wird die Anwendung mit dem nachstehenden Kommando gestartet: &prompt.root; /usr/local/etc/rc.d/utility.sh start Obwohl nicht jede Anwendung die Zeile in rc.conf benötigt, akzeptieren immer mehr Ports diese Konfiguration. Prüfen Sie die Ausgaben während der Installation einer Anwendung, um herauszufinden, wie die Anwendung gestartet wird. Einige Anwendungen stellen Startskripten bereit, die das rc.d-System (wird im nächsten Abschnitt besprochen) verwenden. Dienste über das <filename>rc.d</filename>-System starten Mit rc.d lässt sich der Start von Anwendungen besser steuern als mit den vorher besprochenen Startskripten. Mit den im Abschnitt rc.d besprochenen Schlüsselwörtern können Anwendungen in einer bestimmten Reihenfolge (zum Beispiel nach DNS) gestartet werden und Optionen können in rc.conf statt fest im Startskript der Anwendung festgelegt werden. Ein einfaches Startskript sieht wie folgt aus: #!/bin/sh # # PROVIDE: utility # REQUIRE: DAEMON # KEYWORD: shutdown # # DO NOT CHANGE THESE DEFAULT VALUES HERE # SET THEM IN THE /etc/rc.conf FILE # utility_enable=${utility_enable-"NO"} utility_flags=${utility_flags-""} utility_pidfile=${utility_pidfile-"/var/run/utility.pid"} . /etc/rc.subr name="utility" rcvar=`set_rcvar` command="/usr/local/sbin/utility" load_rc_config $name pidfile="${utility_pidfile}" start_cmd="echo \"Starting ${name}.\"; /usr/bin/nice -5 ${command} ${utility_flags} ${command_args}" run_rc_command "$1" Dieses Skript stellt sicher, dass utility nach den daemon-Diensten gestartet wird. Es stellt auch eine Methode bereit, die Prozess-ID (PID) der Anwendung in einer Datei zu speichern. In /etc/rc.conf könnte für diese Anwendung die folgende Zeile stehen: utility_enable="YES" Die neue Methode erleichtert den Umgang mit Kommandozeilenargumenten, bindet Funktionen aus /etc/rc.subr ein, ist kompatibel zum Werkzeug &man.rcorder.8; und lässt sich über rc.conf leichter konfigurieren. Andere Arten, um Dienste zu starten Dienste wie POP3 oder IMAP können über den &man.inetd.8; gestartet werden. Nach der Installation der Anwendung aus der Ports-Sammlung muss eine Konfigurationszeile in der Datei /etc/inetd.conf hinzugefügt oder aktiviert werden. Der Abschnitt beschreibt den inetd und dessen Konfiguration. Systemdienste können auch mit &man.cron.8; gestartet werden. Dieser Ansatz hat einige Vorteile; nicht zuletzt, weil &man.cron.8; die Prozesse unter dem Eigentümer der crontab startet, ist es möglich, dass Dienste von nicht-root Benutzern gestartet und gepflegt werden können. Dies nutzt eine Eigenschaft von &man.cron.8;: Für die Zeitangabe kann @reboot eingesetzt werden. Damit wird das Kommando gestartet, wenn &man.cron.8; kurz nach dem Systemboot gestartet wird. Tom Rhodes Beigetragen von Programme mit <command>cron</command> starten cron Ein sehr nützliches Werkzeug von &os; ist &man.cron.8;. cron läuft im Hintergrund und überprüft fortlaufend die Datei /etc/crontab. Beim Start sucht cron neue crontab-Dateien im Verzeichnis /var/cron/tabs. In den crontab-Dateien wird festgelegt, welche Programme zu welchem Zeitpunkt laufen sollen. Das Werkzeug cron verwendet zwei verschiedene Konfigurationsdateien: Die System-crontab und die Benutzer-crontab. Der einzige Unterschied zwischen beiden Formaten ist das sechste Feld. In der System-crontab gibt das sechste Feld das Konto an, unter dem ein Kommando läuft. Aus der System-crontab können daher Kommandos unter beliebigen Konten gestartet werden. In der Benutzer-crontab gibt das sechste Feld das auszuführende Kommando an. Alle Kommandos laufen unter dem Konto, unter dem die crontab erstellt wurde (ein wichtiges Sicherheitsmerkmal). Benutzer können mit Benutzer-crontabs ohne root-Rechte Befehle terminieren. Die Kommandos in Benutzer-crontabs laufen unter dem Benutzer, der die crontab erstellt hat. Der Benutzer root kann, wie jeder andere Benutzer, eine Benutzer-crontab besitzen. Die Benutzer-crontab von root ist nicht mit der Datei /etc/crontab, der System-crontab, zu verwechseln. Normalerweise besitzt root, wegen der Existenz der System-crontab, keine eigene Benutzer-crontab. Der folgende Auszug aus der System-crontab /etc/crontab zeigt den Aufbau einer crontab-Datei: # /etc/crontab - root's crontab for FreeBSD # # $FreeBSD: src/etc/crontab,v 1.32 2002/11/22 16:13:39 tom Exp $ # # SHELL=/bin/sh PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin HOME=/var/log # # #minute hour mday month wday who command # # */5 * * * * root /usr/libexec/atrun Das Zeichen # leitet, wie in den meisten Konfigurationsdateien, einen Kommentar ein. Benutzen Sie Kommentare, um die Funktion eines Eintrags zu erläutern. Kommentare müssen in einer extra Zeile stehen. Sie können nicht in derselben Zeile wie ein Kommando stehen, da sie sonst Teil des Kommandos wären. Leerzeilen in dieser Datei werden ignoriert. Umgebungsvariablen werden mit dem Gleichheits-Zeichen (=) festgelegt. Im Beispiel werden die Variablen SHELL, PATH und HOME definiert. Wenn die Variable SHELL nicht definiert wird, benutzt cron die Shell sh. Wird die Variable PATH nicht gesetzt, müssen alle Pfadangaben absolut sein, da es keinen Vorgabewert für PATH gibt. Der Vorgabewert für HOME ist das Heimatverzeichnis des Accounts, dem die crontab gehört. In dieser Zeile werden sieben Felder beschrieben: minute, hour, mday, month, wday, who und command. Die ersten Felder legen den Zeitpunkt fest, an dem ein Kommando laufen soll. Das Feld minute legt die Minute fest, das Feld hour die Stunde, das Feld mday den Tag des Monats. Im Feld month wird der Monat und im Feld wday der Wochentag festgelegt. Alle Felder müssen numerische Werte enthalten und die Zeitangaben sind im 24-Stunden-Format. Das Feld who gibt es nur in der Datei /etc/crontab und gibt den Account an, unter dem das Kommando laufen soll. In den crontab-Dateien einzelner Accounts existiert dieses Feld nicht. Im letzten Feld wird schließlich das auszuführende Kommando angegeben. Diese Zeile definiert die Zeitpunkte an denen das Kommando atrun laufen soll. Beachten Sie die Zeichenfolge */5 gefolgt von mehreren *-Zeichen. Das Zeichen * ist ein Platzhalter und steht für jede mögliche Zeit. Diese Zeile führt das Kommando atrun unter dem root-Account alle fünf Minuten aus. Mehr über das Kommando atrun erfahren Sie in der Hilfeseite &man.atrun.8;. Bei den Kommandos können beliebige Optionen angegeben werden. Wenn das Kommando zu lang ist und auf der nächsten Zeile fortgesetzt werden soll, muss am Ende der Zeile das Fortsetzungszeichen (\) angegeben werden. Bis auf das sechste Feld, das den Account angibt, sieht jede crontab-Datei so wie das Beispiel aus. Das sechste Feld existiert nur in der Systemdatei /etc/crontab. In den restlichen crontab-Dateien fehlt dieses Feld. <filename>crontab</filename> installieren Die nachstehende Prozedur gilt nur für Benutzer-crontabs. Die System-crontab können Sie einfach mit Ihrem Lieblingseditor editieren. Das Werkzeug cron bemerkt, dass sich die Datei geändert hat und wird die neue Version benutzen. Lesen Sie bitte auch die FAQ zur Meldung root: not found. Eine Benutzer-crontab, beispielsweise die Datei crontab, können Sie mit jedem Editor erstellen. Die Benutzer-crontab installieren Sie mit dem nachstehenden Befehl: &prompt.root; crontab crontab Das Argument zum Befehl crontab ist die vorher erstellte Datei crontab. Der Befehl crontab -l zeigt die installierte crontab-Datei an. Benutzer, die eine eigene crontab-Datei ohne Vorlage erstellen wollen, können den Befehl crontab -e verwenden. Dieser Befehl ruft einen Editor auf und installiert beim Verlassen des Editors die crontab-Datei. Wollen Sie die installierte Benutzer-crontab entfernen, rufen Sie den Befehl crontab mit der Option auf. Tom Rhodes Beigetragen von Das rc-System für Systemdienste 2002 wurde das rc.d-System von NetBSD zum Start von Systemdiensten in &os; integriert. Die zu diesem System gehörenden Dateien sind im Verzeichnis /etc/rc.d abgelegt. Die Skripten in diesem Verzeichnis akzeptieren die Optionen , und . Beispielsweise kann &man.sshd.8; mit dem nachstehenden Kommando neu gestartet werden: &prompt.root; /etc/rc.d/sshd restart Analog können Sie andere Dienste starten und stoppen. Normalerweise werden die Dienste beim Systemstart über Einträge in der Datei &man.rc.conf.5; automatisch gestartet. Der Network Address Translation Dæmon wird zum Beispiel mit dem folgenden Eintrag in /etc/rc.conf aktiviert: natd_enable="YES" Wenn dort bereits die Zeile existiert, ändern Sie einfach in . Die rc-Skripten starten, wie unten beschrieben, auch abhängige Dienste. Da das rcNG-System primär zum automatischen Starten und Stoppen von Systemdiensten dient, funktionieren die Optionen , und nur, wenn die entsprechenden Variablen in /etc/rc.conf gesetzt sind. Beispielsweise funktioniert das Kommando sshd restart nur dann, wenn in /etc/rc.conf die Variable sshd_enable auf gesetzt wurde. Wenn Sie die Optionen , oder unabhängig von den Einstellungen in /etc/rc.conf benutzen wollen, müssen Sie den Optionen mit dem Präfix one verwenden. Um beispielsweise sshd unabhängig von den Einstellungen in /etc/rc.conf neu zu starten, benutzen Sie das nachstehende Kommando: &prompt.root; /etc/rc.d/sshd onerestart Ob ein Dienst in /etc/rc.conf aktiviert ist, können Sie leicht herausfinden, indem Sie das entsprechende rc.d-Skript mit der Option aufrufen. Ein Administrator kann beispielsweise wie folgt prüfen, ob der sshd-Dienst in /etc/rc.conf aktiviert ist: &prompt.root; /etc/rc.d/sshd rcvar # sshd $sshd_enable=YES Die zweite Zeile (# sshd) wird vom Kommando sshd ausgegeben; sie kennzeichnet nicht die Eingabeaufforderung von root. Ob ein Dienst läuft, kann mit der Option abgefragt werden. Das folgende Kommando überprüft, ob der sshd auch wirklich gestartet wurde: &prompt.root; /etc/rc.d/sshd status sshd is running as pid 433. Einige Dienste können über die Option neu initialisiert werden. Dazu wird dem Dienst über ein Signal mitgeteilt, dass er seine Konfigurationsdateien neu einlesen soll. Oft wird dazu das Signal SIGHUP verwendet. Beachten Sie aber, dass nicht alle Dienste diese Option unterstützen. Die meisten Systemdienste werden beim Systemstart vom rc.d-System gestartet. Zum Beispiel aktiviert das Skript bgfsck die Prüfung von Dateisystemen im Hintergrund. Das Skript gibt die folgende Meldung aus, wenn es gestartet wird: Starting background file system checks in 60 seconds. Viele Systemdienste hängen von anderen Diensten ab. NIS und andere RPC-basierende Systeme hängen beispielsweise von dem rpcbind-Dienst (portmapper) ab. Im Kopf der Startskripten befinden sich die Informationen über Abhängigkeiten von anderen Diensten und weitere Metadaten. Mithilfe dieser Daten bestimmt das Programm &man.rcorder.8; beim Systemstart die Startreihenfolge der Dienste. Folgende Schlüsselwörter werden im Kopf der Startskripten verwendet: PROVIDE: Gibt die Namen der Dienste an, die mit dieser Datei zur Verfügung gestellt werden. REQUIRE: Gibt die Namen der Dienste an, von denen dieser Dienst abhängt. Diese Datei wird nach den angegebenen Diensten ausgeführt. BEFORE: Zählt Dienste auf, die auf diesen Dienst angewiesen sind. Diese Datei wird vor den angegebenen Diensten ausgeführt. Mit diesem System kann ein Administrator den Start von Systemdiensten einfach steuern, ohne mit den Schwierigkeiten des runlevel-Systems anderer &unix; Systeme kämpfen zu müssen. Weitere Informationen über das rc.d-System finden sich in den Manualpages zu &man.rc.8; sowie &man.rc.subr.8;. Wenn Sie Ihre eigenen rc.d-Skripte schreiben wollen, sollten Sie den Artikel Practical rc.d scripting in BSD lesen. Marc Fonvieille Beigetragen von Einrichten von Netzwerkkarten Netzwerkkarten einrichten Ein Rechner ohne Netzanschluss ist heute nicht mehr vorstellbar. Die Konfiguration einer Netzwerkkarte gehört zu den alltäglichen Aufgaben eines &os; Administrators. Bestimmen des richtigen Treibers Netzwerkkarten Treiber Bevor Sie anfangen, sollten Sie das Modell Ihrer Karte kennen, wissen welchen Chip die Karte benutzt und bestimmen, ob es sich um eine PCI- oder ISA-Karte handelt. Eine Aufzählung der unterstützten PCI- und ISA-Karten finden Sie in der Liste der unterstützen Geräte. Schauen Sie nach, ob Ihre Karte dort aufgeführt ist. Wenn Sie wissen, dass Ihre Karte unterstützt wird, müssen Sie den Treiber für Ihre Karte bestimmen. /usr/src/sys/conf/NOTES und /usr/src/sys/arch/conf/NOTES enthalten eine Liste der verfügbaren Treiber mit Informationen zu den unterstützten Chipsätzen und Karten. Wenn Sie sich nicht sicher sind, ob Sie den richtigen Treiber ausgewählt haben, lesen Sie die Hilfeseite des Treibers. Die Hilfeseite enthält weitere Informationen über die unterstützten Geräte und macht auch auf mögliche Probleme aufmerksam. Wenn Sie eine gebräuchliche Karte besitzen, brauchen Sie meistens nicht lange nach dem passenden Treiber zu suchen. Die Treiber zu diesen Karten sind schon im GENERIC-Kernel enthalten und die Karte sollte während des Systemstarts erkannt werden: dc0: <82c169 PNIC 10/100BaseTX> port 0xa000-0xa0ff mem 0xd3800000-0xd38 000ff irq 15 at device 11.0 on pci0 dc0: Ethernet address: 00:a0:cc:da:da:da miibus0: <MII bus> on dc0 ukphy0: <Generic IEEE 802.3u media interface> on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto dc1: <82c169 PNIC 10/100BaseTX> port 0x9800-0x98ff mem 0xd3000000-0xd30 000ff irq 11 at device 12.0 on pci0 dc1: Ethernet address: 00:a0:cc:da:da:db miibus1: <MII bus> on dc1 ukphy1: <Generic IEEE 802.3u media interface> on miibus1 ukphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto Im Beispiel erkennt das System zwei Karten, die den &man.dc.4; Treiber benutzen. Ist der Treiber für Ihre Netzwerkkarte nicht in GENERIC enthalten, müssen Sie den Treiber laden, um die Karte zu benutzen. Sie können den Treiber auf zwei Arten laden: Am einfachsten ist es, das Kernelmodul für Ihre Karte mit &man.kldload.8; zu laden. Allerdings gibt es nicht für alle Karten Kernelmodule; zum Beispiel gibt es keine Kernelmodule für ISA-Karten. Alternativ können Sie den Treiber für die Karte fest in den Kernel einbinden. Schauen Sie sich dazu /usr/src/sys/conf/NOTES, /usr/src/sys/arch/conf/NOTES und die Hilfeseite des Treibers, den Sie in den Kernel einbinden möchten, an. Die Übersetzung des Kernels wird in beschrieben. Wenn Ihre Karte während des Systemstarts vom Kernel (GENERIC) erkannt wurde, müssen Sie den Kernel nicht neu übersetzen. &windows;-NDIS-Treiber einsetzen NDIS NDISulator &windows;-Treiber Microsoft Windows Microsoft Windows Gerätetreiber KLD (kernel loadable object) Leider stellen nach wie vor viele Unternehmen die Spezifikationen ihrer Treiber der Open Source Gemeinde nicht zur Verfügung, weil sie diese Informationen als Geschäftsgeheimnisse betrachten. Daher haben die Entwickler von FreeBSD und anderen Betriebssystemen nur zwei Möglichkeiten. Entweder versuchen sie in einem aufwändigen Prozess den Treiber durch Reverse Engineering nachzubauen, oder sie versuchen, die vorhandenen Binärtreiber der µsoft.windows;-Plattform zu verwenden. Die meisten Entwickler, darunter auch die an FreeBSD beteiligten, haben sich für den zweiten Ansatz entschieden. Bill Paul (wpaul) ist es zu verdanken, dass es seit FreeBSD 5.3-RELEASE eine native Unterstützung der Network Driver Interface Specification (NDIS) gibt. Der FreeBSD NDISulator (auch als Project Evil bekannt) nutzt den binären &windows;-Treiber, indem er diesem vorgibt, unter &windows; zu laufen. Da der &man.ndis.4;-Treiber eine &windows;-Binärdatei nutzt, kann er nur auf &i386;- und amd64-Systemen verwendet werden. Der &man.ndis.4;-Treiber unterstützt primär PCI-, CardBus- sowie PCMCIA-Geräte, USB-Geräte werden hingegen noch nicht unterstützt. Um den NDISulator zu verwenden, benötigen Sie drei Dinge: Die Kernelquellen Den &windowsxp;-Binärtreiber (mit der Erweiterung .SYS) Die Konfigurationsdatei des &windowsxp;-Treibers (mit der Erweiterung .INF) Suchen Sie die Dateien für Ihre Karte. Diese befinden sich meistens auf einer beigelegten CD-ROM, oder können von der Internetseite des Herstellers heruntergeladen werden. In den folgenden Beispielen werden die Dateien W32DRIVER.SYS und W32DRIVER.INF verwendet. Sie können einen &windows;/i386-Treiber nicht unter &os;/amd64 einsetzen, vielmehr benötigen Sie dafür einen &windows;/amd64-Treiber. Als Nächstes kompilieren Sie den binären Treiber, um ein Kernelmodul zu erzeugen. Dazu rufen Sie als root &man.ndisgen.8; auf: &prompt.root; ndisgen /path/to/W32DRIVER.INF /path/to/W32DRIVER.SYS &man.ndisgen.8; arbeitet interaktiv, benötigt es weitere Informationen, so fragt es Sie danach. Als Ergebnis erhalten Sie ein Kernelmodul im Arbeitsverzeichnis, das Sie wie folgt laden können: &prompt.root; kldload ./W32DRIVER.ko Neben dem vorhin erzeugten Kernelmodul müssen Sie auch die Kernelmodule ndis.ko und if_ndis.ko laden. Diese Module sollten automatisch geladen werden, wenn Sie ein von &man.ndis.4; abhängiges Modul laden. Wollen Sie die Module hingegen manuell laden, geben Sie die folgenden Befehle ein: &prompt.root; kldload ndis &prompt.root; kldload if_ndis Der erste Befehl lädt dabei den NDIS-Miniport-Treiber, der zweite das tatsächliche Netzwerkgerät. Überprüfen Sie nun die Ausgabe von &man.dmesg.8; auf eventuelle Fehler während des Ladevorgangs. Gab es dabei keine Probleme, sollten Sie eine Ausgabe ähnlich der folgenden erhalten: ndis0: <Wireless-G PCI Adapter> mem 0xf4100000-0xf4101fff irq 3 at device 8.0 on pci1 ndis0: NDIS API version: 5.0 ndis0: Ethernet address: 0a:b1:2c:d3:4e:f5 ndis0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps ndis0: 11g rates: 6Mbps 9Mbps 12Mbps 18Mbps 36Mbps 48Mbps 54Mbps Ab jetzt können Sie mit dem Gerät ndis0 wie mit jeder anderen Gerätedatei (etwa dc0) arbeiten. Wie jedes Kernelmodul können auch die NDIS-Module beim Systemstart automatisch geladen werden. Dazu kopieren Sie das erzeugte Modul (W32DRIVER.ko) in das Verzeichnis /boot/modules. Danach fügen Sie die folgende Zeile in /boot/loader.conf ein: W32DRIVER_load="YES" Konfiguration von Netzwerkkarten Netzwerkkarten einrichten Nachdem der richtige Treiber für die Karte geladen ist, muss die Karte konfiguriert werden. Unter Umständen ist die Karte schon während der Installation mit sysinstall konfiguriert worden. Das nachstehende Kommando zeigt die Konfiguration der Karten eines Systems an: &prompt.user; ifconfig dc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 192.168.1.3 netmask 0xffffff00 broadcast 192.168.1.255 ether 00:a0:cc:da:da:da media: Ethernet autoselect (100baseTX <full-duplex>) status: active dc1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 10.0.0.1 netmask 0xffffff00 broadcast 10.0.0.255 ether 00:a0:cc:da:da:db media: Ethernet 10baseT/UTP status: no carrier lp0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500 lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 inet 127.0.0.1 netmask 0xff000000 tun0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500 In alten Versionen von &os; müssen Sie vielleicht noch auf der Kommandozeile von &man.ifconfig.8; angeben. Hinweise zum Gebrauch von &man.ifconfig.8; entnehmen Sie bitte der Hilfeseite. Beachten Sie, dass in diesem Beispiel die IPv6-Ausgaben (inet6 etc.) ausgelassen wurden. Im Beispiel werden Informationen zu den folgenden Geräten angezeigt: dc0: Der erste Ethernet-Adapter dc1: Der zweite Ethernet-Adapter lp0: Die parallele Schnittstelle lo0: Das Loopback-Gerät tun0: Das von ppp benutzte Tunnel-Gerät Der Name der Netzwerkkarte wird aus dem Namen des Treibers und einer Zahl zusammengesetzt. Die Zahl gibt die Reihenfolge an, in der die Geräte beim Systemstart erkannt wurden. Die dritte Karte, die den &man.sis.4; Treiber benutzt, würde beispielsweise sis2 heißen. Der Adapter dc0 aus dem Beispiel ist aktiv. Sie erkennen das an den folgenden Hinweisen: UP bedeutet, dass die Karte konfiguriert und aktiv ist. Der Karte wurde die Internet-Adresse (inet) 192.168.1.3 zugewiesen. Die Subnetzmaske ist richtig (0xffffff00 entspricht 255.255.255.0). Die Broadcast-Adresse 192.168.1.255 ist richtig. Die MAC-Adresse der Karte (ether) lautet 00:a0:cc:da:da:da. Die automatische Medienerkennung ist aktiviert (media: Ethernet autoselect (100baseTX <full-duplex>)). Der Adapter dc1 benutzt das Medium 10baseT/UTP. Weitere Informationen über die einstellbaren Medien entnehmen Sie bitte der Hilfeseite des Treibers. Der Verbindungsstatus (status) ist active, das heißt es wurde ein Trägersignal entdeckt. Für dc1 wird status: no carrier angezeigt. Das ist normal, wenn kein Kabel an der Karte angeschlossen ist. Wäre die Karte nicht konfiguriert, würde die Ausgabe von &man.ifconfig.8; so aussehen: dc0: flags=8843<BROADCAST,SIMPLEX,MULTICAST> mtu 1500 ether 00:a0:cc:da:da:da Sie brauchen die Berechtigungen von root, um Ihre Karte zu konfigurieren. Die Konfiguration kann auf der Kommandozeile mit &man.ifconfig.8; erfolgen, allerdings müsste sie dann nach jedem Neustart wiederholt werden. Dauerhaft wird die Karte in /etc/rc.conf konfiguriert. Öffnen Sie /etc/rc.conf mit Ihrem Lieblingseditor und fügen Sie für jede Karte Ihres Systems eine Zeile hinzu. In dem hier diskutierten Fall wurden die nachstehenden Zeilen eingefügt: ifconfig_dc0="inet 192.168.1.3 netmask 255.255.255.0" ifconfig_dc1="inet 10.0.0.1 netmask 255.255.255.0 media 10baseT/UTP" Ersetzen Sie dc0, dc1 usw. durch die Gerätenamen Ihrer Karten und setzen Sie die richtigen IP-Adressen ein. Die Hilfeseiten des Treibers und &man.ifconfig.8; enthalten weitere Einzelheiten über verfügbare Optionen. Die Syntax von /etc/rc.conf wird in &man.rc.conf.5; erklärt. Wenn Sie das Netz während der Installation konfiguriert haben, existieren vielleicht schon Einträge für Ihre Karten. Überprüfen Sie /etc/rc.conf bevor Sie weitere Zeilen hinzufügen. In /etc/hosts können Sie die Namen und IP-Adressen der Rechner Ihres LANs eintragen. Weitere Informationen entnehmen Sie bitte &man.hosts.5; und /usr/share/examples/etc/hosts. Test und Fehlersuche Nachdem Sie die notwendigen Änderungen in /etc/rc.conf vorgenommen haben, führen Sie einen Neustart Ihres Systems durch. Dadurch werden die Adapter konfiguriert und Sie stellen sicher, dass der Start ohne Konfigurationsfehler erfolgt. Wenn das System gestartet ist, sollten Sie die Netzwerkkarten testen. Test der Ethernet-Karte Netzwerkkarten testen Mit zwei Tests können Sie prüfen, ob die Ethernet-Karte richtig konfiguriert ist. Testen Sie zuerst mit ping den Adapter selbst und sprechen Sie dann eine andere Maschine im LAN an. Zuerst, der Test des Adapters: &prompt.user; ping -c5 192.168.1.3 PING 192.168.1.3 (192.168.1.3): 56 data bytes 64 bytes from 192.168.1.3: icmp_seq=0 ttl=64 time=0.082 ms 64 bytes from 192.168.1.3: icmp_seq=1 ttl=64 time=0.074 ms 64 bytes from 192.168.1.3: icmp_seq=2 ttl=64 time=0.076 ms 64 bytes from 192.168.1.3: icmp_seq=3 ttl=64 time=0.108 ms 64 bytes from 192.168.1.3: icmp_seq=4 ttl=64 time=0.076 ms --- 192.168.1.3 ping statistics --- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max/stddev = 0.074/0.083/0.108/0.013 ms Jetzt versuchen wir, eine andere Maschine im LAN zu erreichen: &prompt.user; ping -c5 192.168.1.2 PING 192.168.1.2 (192.168.1.2): 56 data bytes 64 bytes from 192.168.1.2: icmp_seq=0 ttl=64 time=0.726 ms 64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=0.766 ms 64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=0.700 ms 64 bytes from 192.168.1.2: icmp_seq=3 ttl=64 time=0.747 ms 64 bytes from 192.168.1.2: icmp_seq=4 ttl=64 time=0.704 ms --- 192.168.1.2 ping statistics --- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max/stddev = 0.700/0.729/0.766/0.025 ms Sie können auch den Namen der Maschine anstelle von 192.168.1.2 benutzen, wenn Sie /etc/hosts entsprechend eingerichtet haben. Fehlersuche Netzwerkkarten Fehlersuche Fehler zu beheben, ist immer sehr mühsam. Indem Sie die einfachen Sachen zuerst prüfen, erleichtern Sie sich die Aufgabe. Steckt das Netwerkkabel? Sind die Netzwerkdienste richtig konfiguriert? Funktioniert die Firewall? Wird die Netwerkkarte von &os; unterstützt? Lesen Sie immer die Hardware-Informationen des Releases, bevor Sie einen Fehlerbericht einsenden. Aktualisieren Sie Ihre &os;-Version auf -STABLE. Suchen Sie in den Archiven der Mailinglisten oder auf dem Internet nach bekannten Lösungen. Wenn die Karte funktioniert, die Verbindungen aber zu langsam sind, lesen Sie bitte die Hilfeseite &man.tuning.7;. Prüfen Sie auch die Netzwerkkonfiguration, da falsche Einstellungen die Ursache für langsame Verbindungen sein können. Wenn Sie viele device timeout Meldungen in den Systemprotokollen finden, prüfen Sie, dass es keinen Konflikt zwischen der Netzwerkkarte und anderen Geräten Ihres Systems gibt. Überprüfen Sie nochmals die Verkabelung. Unter Umständen benötigen Sie eine neue Netzwerkkarte. Wenn Sie in den Systemprotokollen watchdog timeout Fehlermeldungen finden, kontrollieren Sie zuerst die Verkabelung. Überprüfen Sie dann, ob der PCI-Steckplatz der Karte Bus Mastering unterstützt. Auf einigen älteren Motherboards ist das nur für einen Steckplatz (meistens Steckplatz 0) der Fall. Lesen Sie in der Dokumentation Ihrer Karte und Ihres Motherboards nach, ob das vielleicht die Ursache des Problems sein könnte. Die Meldung No route to host erscheint, wenn Ihr System ein Paket nicht zustellen kann. Das kann vorkommen weil beispielsweise keine Default-Route gesetzt wurde oder das Netzwerkkabel nicht richtig steckt. Schauen Sie in der Ausgabe von netstat -rn nach, ob eine Route zu dem Zielsystem existiert. Wenn nicht, lesen Sie bitte das . Die Meldung ping: sendto: Permission denied wird oft von einer falsch konfigurierten Firewall verursacht. Wenn keine Regeln definiert wurden, blockiert eine aktivierte Firewall alle Pakete, selbst einfache ping-Pakete. Weitere Informationen erhalten Sie in . Falls die Leistung der Karte schlecht ist, setzen Sie die Medienerkennung von autoselect (automatisch) auf das richtige Medium. In vielen Fällen löst diese Maßnahme Leistungsprobleme. Wenn nicht, prüfen Sie nochmal die Netzwerkeinstellungen und lesen Sie die Hilfeseite &man.tuning.7;. Virtual Hosts virtual hosts IP-Aliase Ein gebräuchlicher Zweck von &os; ist das virtuelle Hosting, bei dem ein Server im Netzwerk wie mehrere Server aussieht. Dies wird dadurch erreicht, dass einem Netzwerkinterface mehrere Netzwerk-Adressen zugewiesen werden. Ein Netzwerkinterface hat eine echte Adresse und kann beliebig viele alias Adressen haben. Die Aliase werden durch entsprechende alias Einträge in /etc/rc.conf festgelegt. Ein alias Eintrag für das Interface fxp0 sieht wie folgt aus: ifconfig_fxp0_alias0="inet xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx" Beachten Sie, dass die Alias-Einträge mit alias0 anfangen müssen und weiter hochgezählt werden, das heißt _alias1, _alias2, und so weiter. Die Konfiguration der Aliase hört bei der ersten fehlenden Zahl auf. Die Berechnung der Alias-Netzwerkmasken ist wichtig, doch zum Glück einfach. Für jedes Interface muss es eine Adresse geben, die die Netzwerkmaske des Netzwerkes richtig beschreibt. Alle anderen Adressen in diesem Netzwerk haben dann eine Netzwerkmaske, die mit 1 gefüllt ist (also 255.255.255.255 oder hexadezimal 0xffffffff). Als Beispiel betrachten wir den Fall, in dem fxp0 mit zwei Netzwerken verbunden ist: dem Netzwerk 10.1.1.0 mit der Netzwerkmaske 255.255.255.0 und dem Netzwerk 202.0.75.16 mit der Netzwerkmaske 255.255.255.240. Das System soll die Adressen 10.1.1.1 bis 10.1.1.5 und 202.0.75.17 bis 202.0.75.20 belegen. Wie eben beschrieben, hat nur die erste Adresse in einem Netzwerk (hier 10.0.1.1 und 202.0.75.17) die richtige Netzwerkmaske. Alle anderen Adressen (10.1.1.2 bis 10.1.1.5 und 202.0.75.18 bis 202.0.75.20) erhalten die Maske 255.255.255.255. Die folgenden Einträge in /etc/rc.conf konfigurieren den Adapter entsprechend dem Beispiel: ifconfig_fxp0="inet 10.1.1.1 netmask 255.255.255.0" ifconfig_fxp0_alias0="inet 10.1.1.2 netmask 255.255.255.255" ifconfig_fxp0_alias1="inet 10.1.1.3 netmask 255.255.255.255" ifconfig_fxp0_alias2="inet 10.1.1.4 netmask 255.255.255.255" ifconfig_fxp0_alias3="inet 10.1.1.5 netmask 255.255.255.255" ifconfig_fxp0_alias4="inet 202.0.75.17 netmask 255.255.255.240" ifconfig_fxp0_alias5="inet 202.0.75.18 netmask 255.255.255.255" ifconfig_fxp0_alias6="inet 202.0.75.19 netmask 255.255.255.255" ifconfig_fxp0_alias7="inet 202.0.75.20 netmask 255.255.255.255" Konfigurationsdateien <filename>/etc</filename> Layout Konfigurationsdateien finden sich in einigen Verzeichnissen unter anderem in: /etc Enthält generelle Konfigurationsinformationen, die Daten hier sind systemspezifisch. /etc/defaults Default Versionen der Konfigurationsdateien. /etc/mail Enthält die &man.sendmail.8; Konfiguration und weitere MTA Konfigurationsdateien. /etc/ppp Hier findet sich die Konfiguration für die User- und Kernel-ppp Programme. /etc/namedb Das Vorgabeverzeichnis, in dem Daten von &man.named.8; gehalten werden. Normalerweise werden hier named.conf und Zonendaten abgelegt. /usr/local/etc Installierte Anwendungen legen hier ihre Konfigurationsdateien ab. Dieses Verzeichnis kann Unterverzeichnisse für bestimmte Anwendungen enthalten. /usr/local/etc/rc.d Ort für Start- und Stopskripten installierter Anwendungen. /var/db Automatisch generierte systemspezifische Datenbanken, wie die Paket-Datenbank oder die locate-Datenbank. Hostnamen hostname DNS <filename>/etc/resolv.conf</filename> resolv.conf Wie der &os;-Resolver auf das Internet Domain Name System (DNS) zugreift, wird in /etc/resolv.conf festgelegt. Die gebräuchlichsten Einträge in /etc/resolv.conf sind: nameserver Die IP-Adresse eines Nameservers, den der Resolver abfragen soll. Bis zu drei Server werden in der Reihenfolge, in der sie aufgezählt sind, abgefragt. search Suchliste mit Domain-Namen zum Auflösen von Hostnamen. Die Liste wird normalerweise durch den Domain-Teil des lokalen Hostnamens festgelegt. domain Der lokale Domain-Name. Beispiel für eine typische resolv.conf: search example.com nameserver 147.11.1.11 nameserver 147.11.100.30 Nur eine der Anweisungen search oder domain sollte benutzt werden. Wenn Sie DHCP benutzen, überschreibt &man.dhclient.8; für gewöhnlich resolv.conf mit den Informationen vom DHCP-Server. <filename>/etc/hosts</filename> hosts /etc/hosts ist eine einfache textbasierte Datenbank, die aus alten Internetzeiten stammt. Zusammen mit DNS und NIS stellt sie eine Abbildung zwischen Namen und IP-Adressen zur Verfügung. Anstatt &man.named.8; zu konfigurieren, können hier lokale Rechner, die über ein LAN verbunden sind, eingetragen werden. Lokale Einträge für gebräuchliche Internet-Adressen in /etc/hosts verhindern die Abfrage eines externen Servers und beschleunigen die Namensauflösung. # $FreeBSD$ # # Host Database # This file should contain the addresses and aliases # for local hosts that share this file. # In the presence of the domain name service or NIS, this file may # not be consulted at all; see /etc/nsswitch.conf for the resolution order. # # ::1 localhost localhost.my.domain myname.my.domain 127.0.0.1 localhost localhost.my.domain myname.my.domain # # Imaginary network. #10.0.0.2 myname.my.domain myname #10.0.0.3 myfriend.my.domain myfriend # # According to RFC 1918, you can use the following IP networks for # private nets which will never be connected to the Internet: # # 10.0.0.0 - 10.255.255.255 # 172.16.0.0 - 172.31.255.255 # 192.168.0.0 - 192.168.255.255 # # In case you want to be able to connect to the Internet, you need # real official assigned numbers. PLEASE PLEASE PLEASE do not try # to invent your own network numbers but instead get one from your # network provider (if any) or from the Internet Registry (ftp to # rs.internic.net, directory `/templates'). # /etc/hosts hat ein einfaches Format: [Internet Adresse] [Offizieller Hostname] [Alias1] [Alias2] ... Zum Beispiel: 10.0.0.1 myRealHostname.example.com myRealHostname foobar1 foobar2 Weitere Informationen entnehmen Sie bitte &man.hosts.5;. Konfiguration von Logdateien Logdateien <filename>syslog.conf</filename> syslog.conf syslog.conf ist die Konfigurationsdatei von &man.syslogd.8;. Sie legt fest, welche syslog Meldungen in welche Logdateien geschrieben werden. # $FreeBSD$ # # Spaces ARE valid field separators in this file. However, # other *nix-like systems still insist on using tabs as field # separators. If you are sharing this file between systems, you # may want to use only tabs as field separators here. # Consult the syslog.conf(5) manpage. *.err;kern.debug;auth.notice;mail.crit /dev/console *.notice;kern.debug;lpr.info;mail.crit;news.err /var/log/messages security.* /var/log/security mail.info /var/log/maillog lpr.info /var/log/lpd-errs cron.* /var/log/cron *.err root *.notice;news.err root *.alert root *.emerg * # uncomment this to log all writes to /dev/console to /var/log/console.log #console.info /var/log/console.log # uncomment this to enable logging of all log messages to /var/log/all.log #*.* /var/log/all.log # uncomment this to enable logging to a remote log host named loghost #*.* @loghost # uncomment these if you're running inn # news.crit /var/log/news/news.crit # news.err /var/log/news/news.err # news.notice /var/log/news/news.notice !startslip *.* /var/log/slip.log !ppp *.* /var/log/ppp.log Weitere Informationen enthält &man.syslog.conf.5;. <filename>newsyslog.conf</filename> newsyslog.conf Die Konfigurationsdatei für &man.newsyslog.8;, das normalerweise von &man.cron.8; aufgerufen wird, ist newsyslog.conf. &man.newsyslog.8; stellt fest, ob Logdateien archiviert oder verschoben werden müssen. So wird logfile nach logfile.0 geschoben und logfile.0 nach logfile.1 usw. Zudem können Logdateien mit &man.gzip.1; komprimiert werden. Die Namen der Logdateien sind dann logfile.0.gz, logfile.1.gz usw. newsyslog.conf legt fest, welche Logdateien wann bearbeitet und wie viele Dateien behalten werden. Logdateien können auf Basis ihrer Größe oder zu einem gewissen Zeitpunkt archiviert bzw. umbenannt werden. # configuration file for newsyslog # $FreeBSD$ # # filename [owner:group] mode count size when [ZB] [/pid_file] [sig_num] /var/log/cron 600 3 100 * Z /var/log/amd.log 644 7 100 * Z /var/log/kerberos.log 644 7 100 * Z /var/log/lpd-errs 644 7 100 * Z /var/log/maillog 644 7 * @T00 Z /var/log/sendmail.st 644 10 * 168 B /var/log/messages 644 5 100 * Z /var/log/all.log 600 7 * @T00 Z /var/log/slip.log 600 3 100 * Z /var/log/ppp.log 600 3 100 * Z /var/log/security 600 10 100 * Z /var/log/wtmp 644 3 * @01T05 B /var/log/daily.log 640 7 * @T00 Z /var/log/weekly.log 640 5 1 $W6D0 Z /var/log/monthly.log 640 12 * $M1D0 Z /var/log/console.log 640 5 100 * Z Um mehr zu erfahren, lesen Sie bitte &man.newsyslog.8;. <filename>sysctl.conf</filename> sysctl.conf sysctl sysctl.conf sieht ähnlich wie rc.conf aus. Werte werden in der Form Variable=Wert gesetzt. Die angegebenen Werte werden gesetzt, nachdem sich das System bereits im Mehrbenutzermodus befindet. Allerdings lassen sich im Mehrbenutzermodus nicht alle Werte setzen. Um das Protokollieren von fatalen Signalen abzustellen und Benutzer daran zu hindern, von anderen Benutzern gestartete Prozesse zu sehen, können Sie in der Datei sysctl.conf die folgenden Variablen setzen: # Do not log fatal signal exits (e.g. sig 11) kern.logsigexit=0 # Prevent users from seeing information about processes that # are being run under another UID. security.bsd.see_other_uids=0 Einstellungen mit sysctl sysctl Einstellungen mit sysctl Mit &man.sysctl.8; können Sie Änderungen an einem laufenden &os;-System vornehmen. Unter anderem können Optionen des TCP/IP-Stacks oder des virtuellen Speichermanagements verändert werden. Unter der Hand eines erfahrenen Systemadministrators kann dies die Systemperformance erheblich verbessern. Über 500 Variablen können mit &man.sysctl.8; gelesen und gesetzt werden. Der Hauptzweck von &man.sysctl.8; besteht darin, Systemeinstellungen zu lesen und zu verändern. Alle auslesbaren Variablen werden wie folgt angezeigt: &prompt.user; sysctl -a Sie können auch eine spezielle Variable, z.B. kern.maxproc lesen: &prompt.user; sysctl kern.maxproc kern.maxproc: 1044 Um eine Variable zu setzen, benutzen Sie die Syntax Variable= Wert: &prompt.root; sysctl kern.maxfiles=5000 kern.maxfiles: 2088 -> 5000 Mit sysctl können Sie Strings, Zahlen oder Boolean-Werte setzen. Bei Boolean-Werten setzen sie 1 für wahr und 0 für falsch. Wenn Sie Variablen automatisch während des Systemstarts setzen wollen, fügen Sie die Variablen in die Datei /etc/sysctl.conf ein. Weiteres entnehmen Sie bitte der Hilfeseite &man.sysctl.conf.5; und dem . Tom Rhodes Contributed by Schreibgeschützte Variablen Schreibgeschützte sysctl-Variablen können nur während des Systemstarts verändert werden. Beispielsweise hat &man.cardbus.4; auf einigen Laptops Schwierigkeiten, Speicherbereiche zu erkennen. Es treten dann Fehlermeldungen wie die folgende auf: cbb0: Could not map register memory device_probe_and_attach: cbb0 attach returned 12 Um dieses Problem zu lösen, muss eine schreibgeschützte sysctl-Variable verändert werden. Eine OID kann in der Datei /boot/loader.conf überschrieben werden. Die Datei /boot/defaults/loader.conf enthält Vorgabewwerte für sysctl-Variablen. Das oben erwähnte Problem wird durch die Angabe von in /boot/loader.conf gelöst. Danach sollte &man.cardbus.4; fehlerfrei funktionieren. Tuning von Laufwerken Sysctl Variablen <varname>vfs.vmiodirenable</varname> vfs.vmiodirenable Die Variable vfs.vmiodirenable besitzt in der Voreinstellung den Wert 1. Die Variable kann auf den Wert 0 (ausgeschaltet) oder 1 (angeschaltet) gesetzt werden. Sie steuert, wie Verzeichnisse vom System zwischengespeichert werden. Die meisten Verzeichnisse sind klein und benutzen nur ein einzelnes Fragment, typischerweise 1 kB, im Dateisystem. Im Buffer-Cache verbrauchen sie mit 512 Bytes noch weniger Platz. Ist die Variable ausgeschaltet (auf 0) wird der Buffer-Cache nur eine limitierte Anzahl Verzeichnisse zwischenspeichern, auch wenn das System über sehr viel Speicher verfügt. Ist die Variable aktiviert (auf 1), kann der Buffer-Cache den VM-Page-Cache benutzen, um Verzeichnisse zwischenzuspeichern. Der ganze Speicher steht damit zum Zwischenspeichern von Verzeichnissen zur Verfügung. Der Nachteil bei dieser Vorgehensweise ist, dass zum Zwischenspeichern eines Verzeichnisses mindestens eine physikalische Seite im Speicher, die normalerweise 4 kB groß ist, anstelle von 512 Bytes gebraucht wird. Wir empfehlen, diese Option aktiviert zu lassen, wenn Sie Dienste zur Verfügung stellen, die viele Dateien manipulieren. Beispiele für solche Dienste sind Web-Caches, große Mail-Systeme oder Netnews. Die aktivierte Variable vermindert, trotz des verschwendeten Speichers, in aller Regel nicht die Leistung des Systems, obwohl Sie das nachprüfen sollten. <varname>vfs.write_behind</varname> vfs.write_behind In der Voreinstellung besitzt die Variable vfs.write_behind den Wert 1 (aktiviert). Mit dieser Einstellung schreibt das Dateisystem anfallende vollständige Cluster, die besonders beim sequentiellen Schreiben großer Dateien auftreten, direkt auf das Medium aus. Dies verhindert, dass sich im Buffer-Cache veränderte Puffer (dirty buffers) ansammeln, die die I/O-Verarbeitung nicht mehr beschleunigen würden. Unter bestimmten Umständen blockiert diese Funktion allerdings Prozesse. Setzen Sie in diesem Fall die Variable vfs.write_behind auf den Wert 0. <varname>vfs.hirunningspace</varname> vfs.hirunningspace Die Variable vfs.hirunningspace bestimmt systemweit die Menge ausstehender Schreiboperationen, die dem Platten-Controller zu jedem beliebigen Zeitpunkt übergeben werden können. Normalerweise können Sie den Vorgabewert verwenden. Auf Systemen mit vielen Platten kann der Wert aber auf 4 bis 5 Megabyte erhöht werden. Beachten Sie, dass ein zu hoher Wert (größer als der Schreib-Schwellwert des Buffer-Caches) zu Leistungverlusten führen kann. Setzen Sie den Wert daher nicht zu hoch! Hohe Werte können auch Leseoperationen verzögern, die gleichzeitig mit Schreiboperationen ausgeführt werden. Es gibt weitere Variablen, mit denen Sie den Buffer-Cache und den VM-Page-Cache beeinflussen können. Wir raten Ihnen allerdings davon ab, diese Variablen zu verändern, da das VM-System den virtuellen Speicher selbst sehr gut verwaltet. <varname>vm.swap_idle_enabled</varname> vm.swap_idle_enabled Die Variable vm.swap_idle_enabled ist für große Mehrbenutzer-Systeme gedacht, auf denen sich viele Benutzer an- und abmelden und auf denen es viele Prozesse im Leerlauf (idle) gibt. Solche Systeme fragen kontinuierlich freien Speicher an. Wenn Sie die Variable vm.swap_idle_enabled aktivieren, können Sie die Auslagerungs-Hysterese von Seiten mit den Variablen vm.swap_idle_threshold1 und vm.swap_idle_threshold2 einstellen. Die Schwellwerte beider Variablen geben die Zeit in Sekunden an, in denen sich ein Prozess im Leerlauf befinden muss. Wenn die Werte so eingestellt sind, dass Seiten früher als nach dem normalen Algorithmus ausgelagert werden, verschafft das dem Auslagerungs-Prozess mehr Luft. Aktivieren Sie diese Funktion nur, wenn Sie sie wirklich benötigen: Die Speicherseiten werden eher früher als später ausgelagert. Der Platz im Swap-Bereich wird dadurch schneller verbraucht und die Plattenaktivitäten steigen an. Auf kleine Systeme hat diese Funktion spürbare Auswirkungen. Auf großen Systemen, die sowieso schon Seiten auslagern müssen, können ganze Prozesse leichter in den Speicher geladen oder ausgelagert werden. <varname>hw.ata.wc</varname> hw.ata.wc In &os; 4.3 wurde versucht, den IDE-Schreib-Zwischenspeicher abzustellen. Obwohl dies die Bandbreite zum Schreiben auf IDE-Platten verringerte, wurde es aus Gründen der Datenkonsistenz als notwenig angesehen. Der Kern des Problems ist, dass IDE-Platten keine zuverlässige Aussage über das Ende eines Schreibvorgangs treffen. Wenn der Schreib-Zwischenspeicher aktiviert ist, werden die Daten nicht in der Reihenfolge ihres Eintreffens geschrieben. Es kann sogar passieren, dass das Schreiben mancher Blöcke im Fall von starker Plattenaktivität auf unbefristete Zeit verzögert wird. Ein Absturz oder Stromausfall zu dieser Zeit kann die Dateisysteme erheblich beschädigen. Wir entschieden uns daher für die sichere Variante und stellten den Schreib-Zwischenspeicher ab. Leider war damit auch ein großer Leistungsverlust verbunden, so dass wir die Variable nach dem Release wieder aktiviert haben. Sie sollten den Wert der Variable hw.ata.wc auf Ihrem System überprüfen. Wenn der Schreib-Zwischenspeicher abgestellt ist, können Sie ihn aktivieren, indem Sie die Variable auf den Wert 1 setzen. Dies muss zum Zeitpunkt des Systemstarts im Boot-Loader geschehen. Eine Änderung der Variable, nachdem der Kernel gestartet ist, hat keine Auswirkungen. Weitere Informationen finden Sie in &man.ata.4;. <literal>SCSI_DELAY</literal> (<varname>kern.cam.scsi_delay</varname>) kern.cam.scsi_delay Kerneloptionen SCSI_DELAY Mit der Kerneloption SCSI_DELAY kann die Dauer des Systemstarts verringert werden. Der Vorgabewert ist recht hoch und er verzögert den Systemstart um 15 oder mehr Sekunden. Normalerweise kann dieser Wert, insbesondere mit modernen Laufwerken, auf 5 Sekunden heruntergesetzt werden. Ab &os; 5.0 wird dazu die sysctl-Variable kern.cam.scsi_delay benutzt. Die Variable sowie die Kerneloption verwenden für die Zeitangabe Millisekunden und nicht Sekunden. Soft Updates Soft Updates tunefs Mit &man.tunefs.8; lassen sich Feineinstellungen an Dateisystemen vornehmen. Das Programm hat verschiedene Optionen, von denen hier nur Soft Updates betrachtet werden. Soft Updates werden wie folgt ein- und ausgeschaltet: &prompt.root; tunefs -n enable /filesystem &prompt.root; tunefs -n disable /filesystem Ein eingehängtes Dateisystem kann nicht mit &man.tunefs.8; modifiziert werden. Soft Updates werden am besten im Single-User Modus aktiviert, bevor Partitionen eingehangen sind. Durch Einsatz eines Zwischenspeichers wird die Performance im Bereich der Metadaten, vorwiegend beim Anlegen und Löschen von Dateien, gesteigert. Wir empfehlen, Soft Updates auf allen Dateisystemen zu aktivieren. Allerdings sollten Sie sich über die zwei Nachteile von Soft Updates bewusst sein: Erstens garantieren Soft Updates zwar die Konsistenz der Daten im Fall eines Absturzes, aber es kann leicht passieren, dass das Dateisystem über mehrere Sekunden oder gar eine Minute nicht synchronisiert wurde. Im Fall eines Absturzes verlieren Sie mit Soft Updates unter Umständen mehr Daten als ohne. Zweitens verzögern Soft Updates die Freigabe von Datenblöcken. Eine größere Aktualisierung eines fast vollen Dateisystems, wie dem Root-Dateisystem, z.B. während eines make installworld, kann das Dateisystem vollaufen lassen. Dadurch würde die Aktualisierung fehlschlagen. Details über Soft Updates Soft Updates Details Es gibt zwei klassische Herangehensweisen, wie man die Metadaten des Dateisystems (also Daten über Dateien, wie inode Bereiche oder Verzeichniseinträge) aktualisiert auf die Platte zurückschreibt: Das historisch übliche Verfahren waren synchrone Updates der Metadaten, d. h. wenn eine Änderung an einem Verzeichnis nötig war, wurde anschließend gewartet, bis diese Änderung tatsächlich auf die Platte zurückgeschrieben worden war. Der Inhalt der Dateien wurde im Buffer Cache zwischengespeichert und asynchron irgendwann später auf die Platte geschrieben. Der Vorteil dieser Implementierung ist, dass sie sicher funktioniert. Wenn während eines Updates ein Ausfall erfolgt, haben die Metadaten immer einen konsistenten Zustand. Eine Datei ist entweder komplett angelegt oder gar nicht. Wenn die Datenblöcke einer Datei im Fall eines Absturzes noch nicht den Weg aus dem Buffer Cache auf die Platte gefunden haben, kann &man.fsck.8; das Dateisystem reparieren, indem es die Dateilänge einfach auf 0 setzt. Außerdem ist die Implementierung einfach und überschaubar. Der Nachteil ist, dass Änderungen der Metadaten sehr langsam vor sich gehen. Ein rm -r beispielsweise fasst alle Dateien eines Verzeichnisses der Reihe nach an, aber jede dieser Änderungen am Verzeichnis (Löschen einer Datei) wird einzeln synchron auf die Platte geschrieben. Gleiches beim Auspacken großer Hierarchien (tar -x). Der zweite Fall sind asynchrone Metadaten-Updates. Das ist z. B. der Standard bei Linux/ext2fs oder die Variante mount -o async für *BSD UFS. Man schickt die Updates der Metadaten einfach auch noch über den Buffer Cache, sie werden also zwischen die Updates der normalen Daten eingeschoben. Vorteil ist, dass man nun nicht mehr auf jeden Update warten muss, Operationen, die zahlreiche Metadaten ändern, werden also viel schneller. Auch hier ist die Implementierung sehr einfach und wenig anfällig für Fehler. Nachteil ist, dass keinerlei Konsistenz des Dateisystems mehr gesichert ist. Wenn mitten in einer Operation, die viele Metadaten ändert, ein Ausfall erfolgt (Stromausfall, drücken des Reset-Tasters), dann ist das Dateisystem anschließend in einem unbestimmten Zustand. Niemand kann genau sagen, was noch geschrieben worden ist und was nicht mehr; die Datenblöcke einer Datei können schon auf der Platte stehen, während die inode Tabelle oder das zugehörige Verzeichnis nicht mehr aktualisiert worden ist. Man kann praktisch kein fsck mehr implementieren, das diesen Zustand wieder reparieren kann, da die dazu nötigen Informationen einfach auf der Platte fehlen. Wenn ein Dateisystem derart beschädigt worden ist, kann man es nur neu erzeugen (&man.newfs.8;) und die Daten vom Backup zurückspielen. Der historische Ausweg aus diesem Dilemma war ein dirty region logging (auch als Journalling bezeichnet, wenngleich dieser Begriff nicht immer gleich benutzt und manchmal auch für andere Formen von Transaktionsprotokollen gebraucht wird). Man schreibt die Metadaten-Updates zwar synchron, aber nur in einen kleinen Plattenbereich, die logging area. Von da aus werden sie dann asynchron auf ihre eigentlichen Bereiche verteilt. Da die logging area ein kleines zusammenhängendes Stückchen ist, haben die Schreibköpfe der Platte bei massiven Operationen auf Metadaten keine allzu großen Wege zurückzulegen, so dass alles ein ganzes Stück schneller geht als bei klassischen synchronen Updates. Die Komplexität der Implementierung hält sich ebenfalls in Grenzen, somit auch die Anfälligkeit für Fehler. Als Nachteil ergibt sich, dass Metadaten zweimal auf die Platte geschrieben werden müssen (einmal in die logging area, einmal an die richtige Stelle), so dass das im Falle regulärer Arbeit (also keine gehäuften Metadatenoperationen) eine Pessimisierung des Falls der synchronen Updates eintritt, es wird alles langsamer. Dafür hat man als Vorteil, dass im Falle eines Crashes der konsistente Zustand dadurch erzielbar ist, dass die angefangenen Operationen aus dem dirty region log entweder zu Ende ausgeführt oder komplett verworfen werden, wodurch das Dateisystem schnell wieder zur Verfügung steht. Die Lösung von Kirk McKusick, dem Schöpfer von Berkeley FFS, waren Soft Updates: die notwendigen Updates der Metadaten werden im Speicher gehalten und dann sortiert auf die Platte geschrieben (ordered metadata updates). Dadurch hat man den Effekt, dass im Falle massiver Metadaten-Änderungen spätere Operationen die vorhergehenden, noch nicht auf die Platte geschriebenen Updates desselben Elements im Speicher einholen. Alle Operationen, auf ein Verzeichnis beispielsweise, werden also in der Regel noch im Speicher abgewickelt, bevor der Update überhaupt auf die Platte geschrieben wird (die dazugehörigen Datenblöcke werden natürlich auch so sortiert, dass sie nicht vor ihren Metadaten auf der Platte sind). Im Fall eines Absturzes hat man ein implizites log rewind: alle Operationen, die noch nicht den Weg auf die Platte gefunden haben, sehen danach so aus, als hätten sie nie stattgefunden. Man hat so also den konsistenten Zustand von ca. 30 bis 60 Sekunden früher sichergestellt. Der verwendete Algorithmus garantiert dabei, dass alle tatsächlich benutzten Ressourcen auch in den entsprechenden Bitmaps (Block- und inode Tabellen) als belegt markiert sind. Der einzige Fehler, der auftreten kann, ist, dass Ressourcen noch als belegt markiert sind, die tatsächlich frei sind. &man.fsck.8; erkennt dies und korrigiert diese nicht mehr belegten Ressourcen. Die Notwendigkeit eines Dateisystem-Checks darf aus diesem Grunde auch ignoriert und das Dateisystem mittels mount -f zwangsweise eingebunden werden. Um noch allozierte Ressourcen freizugeben muss später ein &man.fsck.8; nachgeholt werden. Das ist dann auch die Idee des background fsck: beim Starten des Systems wird lediglich ein Schnappschuss des Filesystems gemacht, mit dem &man.fsck.8; dann später arbeiten kann. Alle Dateisysteme dürfen unsauber eingebunden werden und das System kann sofort in den Multiuser-Modus gehen. Danach wird ein Hintergrund-fsck für die Dateisysteme gestartet, die dies benötigen, um möglicherweise irrtümlich belegte Ressourcen freizugeben. (Dateisysteme ohne Soft Updates benötigen natürlich immer noch den üblichen (Vordergrund-)fsck, bevor sie eingebunden werden können.) Der Vorteil ist, dass die Metadaten-Operationen beinahe so schnell ablaufen wie im asynchronen Fall (also durchaus auch schneller als beim logging, das ja die Metadaten immer zweimal schreiben muss). Als Nachteil stehen dem die Komplexität des Codes (mit einer erhöhten Fehlerwahrscheinlichkeit in einem bezüglich Datenverlust hoch sensiblen Bereich) und ein erhöhter Speicherverbrauch entgegen. Außerdem muss man sich an einige Eigenheiten gewöhnen: Nach einem Absturz ist ein etwas älterer Stand auf der Platte – statt einer leeren, aber bereits angelegten Datei (wie nach einem herkömmlichen fsck Lauf) ist auf einem Dateisystem mit Soft Updates keine Spur der entsprechenden Datei mehr zu sehen, da weder die Metadaten noch der Dateiinhalt je auf die Platte geschrieben wurden. Weiterhin kann der Platz nach einem rm -r nicht sofort wieder als verfügbar markiert werden, sondern erst dann, wenn der Update auch auf die Platte vermittelt worden ist. Dies kann besonders dann Probleme bereiten, wenn große Datenmengen in einem Dateisystem ersetzt werden, das nicht genügend Platz hat, um alle Dateien zweimal unterzubringen. Einstellungen von Kernel Limits Einstellungen von Kernel Limits Datei und Prozeß Limits <varname>kern.maxfiles</varname> kern.maxfiles Abhängig von den Anforderungen Ihres Systems kann kern.maxfiles erhöht oder erniedrigt werden. Die Variable legt die maximale Anzahl von Dateideskriptoren auf Ihrem System fest. Wenn die Dateideskriptoren aufgebraucht sind, werden Sie die Meldung file: table is full wiederholt im Puffer für Systemmeldungen sehen. Den Inhalt des Puffers können Sie sich mit dmesg anzeigen lassen. Jede offene Datei, jedes Socket und jede FIFO verbraucht einen Dateideskriptor. Auf dicken Produktionsservern können leicht Tausende Dateideskriptoren benötigt werden, abhängig von der Art und Anzahl der gleichzeitig laufenden Dienste. In älteren &os;-Versionen wurde die Voreinstellung von kern.maxfile aus der Kernelkonfigurationsoption maxusers bestimmt. kern.maxfiles wächst proportional mit dem Wert von maxusers. Wenn Sie einen angepassten Kernel kompilieren, empfiehlt es sich diese Option entsprechend der maximalen Benutzerzahl Ihres Systems einzustellen. Obwohl auf einer Produktionsmaschine vielleicht nicht 256 Benutzer gleichzeitig angemeldet sind, können die benötigten Ressourcen ähnlich denen eines großen Webservers sein. Seit &os; 4.5 wird kern.maxusers beim Systemstart automatisch aus dem zur Verfügung stehenden Hauptspeicher bestimmt. Im laufenden Betrieb kann dieser Wert aus der (nur lesbaren) sysctl-Variable kern.maxusers ermittelt werden. Falls ein System für diese Variable einen anderen Wert benötigt, kann der Wert über den Loader angepasst werden. Häufig verwendete Werte sind dabei 64, 128, sowie 256. Es ist empfehlenswert, die Anzahl der Dateideskriptoren nicht auf einen Wert größer 256 zu setzen, es sei denn, Sie benötigen wirklich eine riesige Anzahl von ihnen. Viele der von kern.maxusers auf einen Standardwert gesetzten Parameter können beim Systemstart oder im laufenden Betrieb in der Datei /boot/loader.conf (sehen Sie sich dazu auch &man.loader.conf.5; sowie die Datei /boot/defaults/loader.conf an) an Ihre Bedürfnisse angepasst werden. Auf &os;-Systemen vor &os; 4.4 muss dieser Wert allerdings über die Kernelkonfigurationsoption (siehe auch &man.config.8;) gesetzt werden. Ältere &os;-Versionen setzen diesen Wert selbst, wenn Sie in der Konfigurationsdatei den Wert 0 Der verwendete Algorithmus setzt maxusers auf die Speichergröße des Systems. Der minimale Wert beträgt dabei 32, das Maximum ist 384. angeben. Wenn Sie den Wert selbst bestimmen wollen, sollten Sie maxusers mindestens auf 4 setzen. Dies gilt insbesondere dann, wenn Sie beabsichtigen, das X Window-System zu benutzen oder Software zu kompilieren. Der Grund dafür ist, dass der wichtigste Wert, der durch maxusers bestimmt wird, die maximale Anzahl an Prozessen ist, die auf 20 + 16 * maxusers gesetzt wird. Wenn Sie also maxusers auf 1 setzen, können gleichzeitig nur 36 Prozesse laufen, von denen ungefähr 18 schon beim Booten des Systems gestartet werden. Dazu kommen nochmals etwa 15 Prozesse beim Start des X Window-Systems. Selbst eine einfache Aufgabe wie das Lesen einer Manualpage benötigt neun Prozesse zum Filtern, Dekomprimieren und Betrachten der Datei. Für die meisten Benutzer sollte es ausreichen, maxusers auf 64 zu setzen, womit 1044 gleichzeitige Prozesse zur Verfügung stehen. Wenn Sie allerdings den gefürchteten Fehler proc table full beim Start eines Programms oder auf einem Server mit einer großen Benutzerzahl (wie ftp.FreeBSD.org) sehen, dann sollten Sie den Wert nochmals erhöhen und den Kernel neu bauen. Die Anzahl der Benutzer, die sich auf einem Rechner anmelden kann, wird durch maxusers nicht begrenzt. Der Wert dieser Variablen legt neben der möglichen Anzahl der Prozesse eines Benutzers weitere sinnvolle Größen für bestimmte Systemtabellen fest. Die Option pseudo-device pty 16 legt die Anzahl der erlaubten Anmeldungen von entfernten Systemen und X-Terminals fest. Unter &os; 5.X brauchen Sie sich um die Anzahl dieser Geräte nicht mehr zu kümmern, da der &man.pty.4;-Treiber automatisch neue Geräte erstellt, wenn Sie die Option device pty in Ihre Kernelkonfigurationsdatei aufnehmen und danach den Kernel neu bauen. <varname>kern.ipc.somaxconn</varname> kern.ipc.somaxconn Die Variable kern.ipc.somaxconn beschränkt die Größe der Warteschlange (Listen-Queue) für neue TCP-Verbindungen. Der Vorgabewert von 128 ist normalerweise zu klein, um neue Verbindungen auf einem stark ausgelasteten Webserver zuverlässig zu handhaben. Auf solchen Servern sollte der Wert auf 1024 oder höher gesetzt werden. Ein Dienst (z.B. &man.sendmail.8;, oder Apache) kann die Größe der Queue selbst einschränken. Oft gibt es die Möglichkeit, die Größe der Listen-Queue in einer Konfigurationsdatei einzustellen. Eine große Listen-Queue übersteht vielleicht auch einen Denial of Service Angriff (DoS). Netzwerk Limits Die Kerneloption NMBCLUSTERS schreibt die Anzahl der Netzwerkpuffer (Mbufs) fest, die das System besitzt. Eine zu geringe Anzahl Mbufs auf einem Server mit viel Netzwerkverkehr verringert die Leistung von &os;. Jeder Mbuf-Cluster nimmt ungefähr 2 kB Speicher in Anspruch, so dass ein Wert von 1024 insgesamt 2 Megabyte Speicher für Netzwerkpuffer im System reserviert. Wie viele Cluster benötigt werden, lässt sich durch eine einfache Berechnung herausfinden. Wenn Sie einen Webserver besitzen, der maximal 1000 gleichzeitige Verbindungen servieren soll und jede der Verbindungen je einen 16 kB großen Puffer zum Senden und Empfangen braucht, brauchen Sie ungefähr 32 MB Speicher für Netzwerkpuffer. Als Daumenregel verdoppeln Sie diese Zahl, so dass sich für NMBCLUSTERS der Wert 2x32 MB / 2 kB = 32768 ergibt. Für Maschinen mit viel Speicher sollten Werte zwischen 4096 und 32768 genommen werden. Sie können diesen Wert nicht willkürlich erhöhen, da dies bereits zu einem Absturz beim Systemstart führen kann. Mit der Option von &man.netstat.1; können Sie den Gebrauch der Netzwerkpuffer kontrollieren. Die Netzwerkpuffer können beim Systemstart mit der Loader-Variablen kern.ipc.nmbclusters eingestellt werden. Nur auf älteren &os;-Systemen müssen Sie die Kerneloption NMBCLUSTERS verwenden. Die Anzahl der &man.sendfile.2; Puffer muss auf ausgelasteten Servern, die den Systemaufruf &man.sendfile.2; oft verwenden, vielleicht erhöht werden. Dazu können Sie die Kerneloption NSFBUFS verwenden oder die Anzahl der Puffer in /boot/loader.conf (siehe &man.loader.8;) setzen. Die Puffer sollten erhöht werden, wenn Sie Prozesse im Zustand sfbufa sehen. Die schreibgeschützte sysctl-Variable kern.ipc.nsfbufs zeigt die Anzahl eingerichteten Puffer im Kernel. Der Wert dieser Variablen wird normalerweise von kern.maxusers bestimmt. Manchmal muss die Pufferanzahl jedoch manuell eingestellt werden. Auch wenn ein Socket nicht blockierend angelegt wurde, kann der Aufruf von &man.sendfile.2; blockieren, um auf freie struct sf_buf Puffer zu warten. <varname>net.inet.ip.portrange.*</varname> net.inet.ip.portrange.* Die sysctl-Variable net.inet.ip.portrange.* legt die Portnummern für TCP- und UDP-Sockets fest. Es gibt drei Bereiche: den niedrigen Bereich, den normalen Bereich und den hohen Bereich. Die meisten Netzprogramme benutzen den normalen Bereich. Dieser Bereich umfasst in der Voreinstellung die Portnummern 500 bis 5000 und wird durch die Variablen net.inet.ip.portrange.first und net.inet.ip.portrange.last festgelegt. Die festgelegten Bereiche für Portnummern werden von ausgehenden Verbindungen benutzt. Unter bestimmten Umständen, beispielsweise auf stark ausgelasteten Proxy-Servern, sind alle Portnummern für ausgehende Verbindungen belegt. Bereiche für Portnummern spielen auf Servern keine Rolle, die hauptsächlich eingehende Verbindungen verarbeiten (wie ein normaler Webserver) oder nur eine begrenzte Anzahl ausgehender Verbindungen öffnen (beispielsweise ein Mail-Relay). Wenn Sie keine freien Portnummern mehr haben, sollten Sie die Variable net.inet.ip.portrange.last langsam erhöhen. Ein Wert von 10000, 20000 oder 30000 ist angemessen. Beachten Sie auch eine vorhandene Firewall, wenn Sie die Bereiche für Portnummern ändern. Einige Firewalls sperren große Bereiche (normalerweise aus den kleinen Portnummern) und erwarten, dass hohe Portnummern für ausgehende Verbindungen verwendet werden. Daher kann es erforderlich sein, den Wert von net.inet.ip.portrange.first zu erhöhen. TCP Bandwidth Delay Product Begrenzung TCP Bandwidth Delay Product Begrenzung net.inet.tcp.inflight.enable Die TCP Bandwidth Delay Product Begrenzung gleicht TCP/Vegas von NetBSD. Die Begrenzung wird aktiviert, indem Sie die sysctl-Variable net.inet.tcp.inflight.enable auf den Wert 1 setzen. Das System wird dann versuchen, für jede Verbindung, das Produkt aus der Übertragungsrate und der Verzögerungszeit zu bestimmen. Dieses Produkt begrenzt die Datenmenge, die für einen optimales Durchsatz zwischengespeichert werden muss. Diese Begrenzung ist nützlich, wenn Sie Daten über Verbindungen mit einem hohen Produkt aus Übertragungsrate und Verzögerungszeit wie Modems, Gigabit-Ethernet oder schnellen WANs, zur Verfügung stellen. Insbesondere wirkt sich die Begrenzung aus, wenn die Verbindung die TCP-Option Window-scaling verwendet oder große Sende-Fenster (send window) benutzt. Schalten Sie die Debug-Meldungen aus, wenn Sie die Begrenzung aktiviert haben. Dazu setzen Sie die Variable net.inet.tcp.inflight.debug auf 0. Auf Produktions-Systemen sollten Sie zudem die Variable net.inet.tcp.inflight.min mindestens auf den Wert 6144 setzen. Allerdings kann ein zu hoher Wert, abhängig von der Verbindung, die Begrenzungsfunktion unwirksam machen. Die Begrenzung reduziert die Datenmenge in den Queues von Routern und Switches, sowie die Datenmenge in der Queue der lokalen Netzwerkkarte. Die Verzögerungszeit (Round Trip Time) für interaktive Anwendungen sinkt, da weniger Pakete zwischengespeichert werden. Dies gilt besonders für Verbindungen über langsame Modems. Die Begrenzung wirkt sich allerdings nur auf das Versenden von Daten aus (Uploads, Server). Auf den Empfang von Daten (Downloads) hat die Begrenzung keine Auswirkungen. Die Variable net.inet.tcp.inflight.stab sollte nicht angepasst werden. Der Vorgabewert der Variablen beträgt 20, das heißt es werden maximal zwei Pakete zu dem Produkt aus Übertragungsrate und Verzögerungszeit addiert. Dies stabilisiert den Algorithmus und verbessert die Reaktionszeit auf Veränderungen. Bei langsamen Verbindungen können sich aber die Laufzeiten der Pakete erhöhen (ohne diesen Algorithmus wären sie allerdings noch höher). In solchen Fällen können Sie versuchen, den Wert der Variablen auf 15, 10 oder 5 zu erniedrigen. Gleichzeitig müssen Sie vielleicht auch net.inet.tcp.inflight.min auf einen kleineren Wert (beispielsweise 3500) setzen. Ändern Sie diese Variablen nur ab, wenn Sie keine anderen Möglichkeiten mehr haben. Virtueller Speicher (<foreignphrase>Virtual Memory</foreignphrase>) <varname>kern.maxvnodes</varname> Ein vnode ist die interne Darstellung einer Datei oder eines Verzeichnisses. Die Erhöhung der Anzahl der für das Betriebssystem verfügbaren vnodes verringert also die Schreib- und Lesezugriffe auf Ihre Festplatte. vnodes werden im Normalfall vom Betriebssystem automatisch vergeben und müssen nicht von Ihnen angepasst werden. In einigen Fällen stellt der Zugriff auf eine Platte allerdings einen Flaschenhals dar, daher sollten Sie in diesem Fall die Anzahl der möglichen vnodes erhöhen, um dieses Problem zu beheben. Beachten Sie dabei aber die Größe des inaktiven und freien Hauptspeichers. Um die Anzahl der derzeit verwendeten vnodes zu sehen, geben Sie Folgendes ein: &prompt.root; sysctl vfs.numvnodes vfs.numvnodes: 91349 Die maximal mögliche Anzahl der vnodes erhalten Sie durch die Eingabe von: &prompt.root; sysctl kern.maxvnodes kern.maxvnodes: 100000 Wenn sich die Anzahl der genutzten vnodes dem maximal möglichen Wert nähert, sollten Sie den Wert kern.maxvnodes zuerst um etwa 1.000 erhöhen. Beobachten Sie danach die Anzahl der vom System genutzten vfs.numvnodes. Nähert sich der Wert wiederum dem definierten Maximum, müssen Sie kern.maxvnodes nochmals erhöhen. Sie sollten nun eine Änderung Ihres Speicherverbrauches (etwa über &man.top.1;) registrieren können und über mehr aktiven Speicher verfügen. Hinzufügen von Swap-Bereichen Egal wie vorausschauend Sie planen, manchmal entspricht ein System einfach nicht Ihren Erwartungen. Es ist leicht, mehr Swap-Bereiche hinzuzufügen. Dazu stehen Ihnen drei Wege offen: Sie können eine neue Platte einbauen, den Swap-Bereich über NFS ansprechen oder eine Swap-Datei auf einer existierenden Partition einrichten. Für Informationen zur Verschlüsselung von Swap-Partitionen, zu den dabei möglichen Optionen sowie zu den Gründen für eine Verschlüsselung des Auslagerungsspeichers lesen Sie bitte des Handbuchs. Swap auf einer neuen Festplatte Der einfachste Weg, zusätzlich einen Swap-Bereich einzurichten, ist der Einbau einer neuen Platte, die Sie sowieso gebrauchen können. Die Anordnung von Swap-Bereichen wird in des Handbuchs besprochen. Swap-Bereiche über NFS Swap-Bereiche über NFS sollten Sie nur dann einsetzen, wenn Sie über keine lokale Platte verfügen, da es durch die zur Verfügung stehende Bandbreite limitiert wird und außerdem den NFS-Server zusätzlich belastet. Swap-Dateien Sie können eine Datei festgelegter Größe als Swap-Bereich nutzen. Im folgenden Beispiel werden wir eine 64 MB große Datei mit Namen /usr/swap0 benutzen, Sie können natürlich einen beliebigen Namen für den Swap-Bereich benutzen. Erstellen einer Swap-Datei Stellen Sie sicher, dass der Kernel RAM-Disks (&man.md.4;) unterstützt. Dies ist in der GENERIC-Konfiguration voreingestellt. device md # Memory "disks" Legen Sie die Swap-Datei /usr/swap0 an: &prompt.root; dd if=/dev/zero of=/usr/swap0 bs=1024k count=64 Setzen Sie die richtigen Berechtigungen für /usr/swap0: &prompt.root; chmod 0600 /usr/swap0 Aktivieren Sie die Swap-Datei /etc/rc.conf: swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired. Um die Swap-Datei zu aktivieren, führen Sie entweder einen Neustart durch oder geben das folgende Kommando ein: &prompt.root; mdconfig -a -t vnode -f /usr/swap0 -u 0 && swapon /dev/md0 Hiten Pandya Verfasst von Tom Rhodes Energie- und Ressourcenverwaltung - Es ist sehr wichtig, Hardware effizient einzusetzen. Vor der + Es ist wichtig, Hardware effizient einzusetzen. Vor der Einführung des Advanced Configuration and Power - Interface (ACPI) konnten der - Stromverbrauch und die Wärmeabgabe eines Systems nur sehr - schlecht von Betriebssystemen gesteuert werden. Die Hardware wurde - mit BIOS-Funktionen, wie Plug and Play BIOS - (PNPBIOS) oder Advanced Power Management - (APM), gesteuert. Das Betriebssystem soll aber das System - überwachen können und auf Ereignisse, beispielsweise einen - unerwarteten Temperaturanstieg, reagieren können. + Interface (ACPI) konnten + Stromverbrauch und Wärmeabgabe eines Systems nur + schlecht von Betriebssystemen gesteuert werden. Die Hardware + wurde vom BIOS gesteuert, was die Kontrolle + der Energieverwaltung für den Anwender erschwerte. Das + Advanced Power Management (APM) erlaubte + es lediglich, einige wenige Funktionen zu steuern, obwohl die + Überwachung von Energie- und Ressourcenverbrauch zu den + wichtigsten Aufgaben eines Betriebssystems gehört, um auf + verschiedene Ereignisse, beispielsweise einen unerwarteten + Temperaturanstieg, reagieren können. Dieser Abschnitt erklärt das Advanced Configuration and Power Interface (ACPI). Was ist ACPI? ACPI APM Advanced Configuration and Power Interface (ACPI) ist ein Standard verschiedener Hersteller, der die Verwaltung von Hardware und Energiesparfunktionen festlegt. Die ACPI-Funktionen können von einem Betriebssystem gesteuert werden. Der Vorgänger des ACPI, Advanced Power Management (APM), erwies sich in modernen Systemen als unzureichend. Mängel des Advanced Power Managements (APM) Das Advanced Power Management (APM) steuert den Energieverbrauch eines Systems auf Basis der Systemaktivität. Das APM-BIOS wird von dem Hersteller des Systems zur Verfügung gestellt und ist auf die spezielle Hardware angepasst. Der APM-Treiber des Betriebssystems greift auf das APM Software Interface zu, das den - Energieverbrauch regelt. + Energieverbrauch regelt. APM findet sich in der Regel + nur noch in Systemen, die vor 2001 produziert + wurden. Das APM hat hauptsächlich vier Probleme. Erstens läuft die Energieverwaltung unabhängig vom Betriebssystem in einem (herstellerspezifischen) BIOS. Beispielsweise kann das APM-BIOS die Festplatten nach einer konfigurierbaren Zeit ohne die Zustimmung des Betriebssystems herunterfahren. Zweitens befindet sich die ganze APM-Logik im BIOS; das Betriebssystem hat gar keine APM-Komponenten. Bei Problemen mit dem APM-BIOS muss das Flash-ROM aktualisiert werden. Diese Prozedur ist gefährlich, da sie im Fehlerfall das System unbrauchbar machen kann. Zum Dritten ist APM eine Technik, die herstellerspezifisch ist und nicht koordiniert wird. Fehler im BIOS eines Herstellers werden nicht unbedingt im BIOS anderer Hersteller korrigiert. Das letzte Problem ist, dass im APM-BIOS nicht genügend Platz vorhanden ist, um eine durchdachte oder eine auf den Zweck der Maschine zugeschnittene Energieverwaltung zu implementieren. Das Plug and Play BIOS (PNPBIOS) war ebenfalls unzureichend. Das PNPBIOS verwendet eine 16-Bit-Technik. Damit das Betriebssystem das PNPBIOS ansprechen kann, muss es in einer 16-Bit-Emulation laufen. Der APM-Treiber von &os; ist in der Hilfeseite &man.apm.4; beschrieben. Konfiguration des <acronym>ACPI</acronym> Das Modul acpi.ko wird standardmäßig beim Systemstart vom &man.loader.8; geladen und sollte daher nicht fest in den Kernel eingebunden werden. Dadurch kann acpi.ko ohne einen Neubau des Kernels ersetzt werden und das Modul ist leichter zu testen. Wenn Sie in der Ausgabe von &man.dmesg.8; das Wort ACPI sehen, - ist das Modul geladen worden. Es ist nicht sinnvoll, das Modul - im laufenden Betrieb zu laden, dies kann sogar manchmal fatale - Folgen haben. - + ist das Modul geladen worden. Das ACPI-Modul im laufenden + Betrieb zu laden, führt oft nicht zum gewünschten + Ergebnis. Treten bei Ihrem System Probleme auf, können + Sie ACPI auch komplett deaktivieren. + Dazu definieren Sie die Variable + hint.acpi.0.disabled="1" in der Datei + /boot/loader.conf. Alternativ können + Sie die Variable auch am &man.loader.8;-Prompt eingeben. Das Modul kann im laufenden Betrieb nicht entfernt werden, - da es zur Kommunikation mit der Hardware verwendet wird. - Mit &man.acpiconf.8; können Sie das ACPI - konfigurieren (unter anderem können Sie damit auch die - Energieverwaltung deaktivieren). + da es zur Kommunikation mit der Hardware verwendet wird. ACPI und APM können nicht zusammen verwendet werden. Das zuletzt geladene Modul beendet sich, sobald es bemerkt, dass das andere Modul geladen ist. Mit &man.acpiconf.8; können Sie das System in einen Ruhemodus (sleep mode) versetzen. Es gibt verschiedene Modi (von 1 bis 5), die Sie auf der Kommandozeile mit angeben können. Für die meisten - Anwender ist der Modus 1 völlig - ausreichend. Der Modus 5 schaltet das System - aus (Soft-off) und entspricht dem - Ausführen des folgenden Befehls: + Anwender sind die Modi 1 und + 3 völlig ausreichend. Der Modus + 5 schaltet das System + aus (Soft-off) und entspricht + dem folgenden Befehl: &prompt.root; halt -p - Weitere Informationen entnehmen Sie bitte der Hilfeseite - &man.acpiconf.8;. + Verschiedene Optionen können als + &man.sysctl.8;-Variablen gesetzt werden. Lesen Sie dazu + die Manualpages zu &man.acpi.4; sowie &man.acpiconf.8;. Nate Lawson Verfasst von Peter Schultz Mit Beiträgen von Tom Rhodes <acronym>ACPI</acronym>-Fehlersuche ACPI Probleme mit ACPI ist ein gänzlich neuer Weg, um Geräte aufzufinden und deren Stromverbrauch zu regulieren. Weiterhin bietet ACPI einen einheitlichen Zugriff auf Geräte, die vorher vom BIOS verwaltet wurden. Es werden zwar Fortschritte gemacht, dass ACPI auf allen Systemen läuft, doch tauchen immer wieder Fehler auf: fehlerhafter Bytecode der ACPI-Machine-Language (AML) einiger Systemplatinen, ein unvollständiges &os;-Kernel-Subsystem oder Fehler im ACPI-CA-Interpreter von &intel;. Dieser Abschnitt hilft Ihnen, zusammen mit den Betreuern des &os;-ACPI-Subsystems, Fehlerquellen zu finden und Fehler zu beseitigen. Danke, dass Sie diesen Abschnitt lesen; hoffentlich hilft er, Ihre Systemprobleme zu lösen. Fehlerberichte einreichen Bevor Sie einen Fehlerbericht einreichen, stellen Sie bitte sicher, dass Ihr BIOS und die Firmware Ihres Controllers aktuell sind. Wenn Sie sofort einen Fehlerbericht einsenden wollen, schicken Sie bitte die folgenden Informationen an die Mailingliste freebsd-acpi: Beschreiben Sie den Fehler und alle Umstände, unter denen der Fehler auftritt. Geben Sie ebenfalls den Typ und das Modell Ihres Systems an. Wenn Sie einen neuen Fehler entdeckt haben, versuchen Sie möglichst genau zu beschreiben, wann der Fehler das erste Mal aufgetreten ist. Die Ausgabe von &man.dmesg.8; nach der Eingabe von boot -v. Geben Sie auch alle Fehlermeldungen an, die erscheinen, wenn Sie den Fehler provozieren. Die Ausgabe von &man.dmesg.8; nach der Eingabe von boot -v und mit deaktiviertem ACPI, wenn das Problem ohne ACPI nicht auftritt. Die Ausgabe von sysctl hw.acpi. Dieses Kommando zeigt die vom System unterstützten ACPI-Funktionen an. Die URL, unter der die ACPI-Source-Language (ASL) liegt. Schicken Sie bitte nicht die ASL an die Mailingliste, da die ASL sehr groß sein kann. Eine Kopie der ASL erstellen Sie mit dem nachstehenden Befehl: - &prompt.root; acpidump -t -d > name-system.asl + &prompt.root; acpidump -td > name-system.asl Setzen Sie bitte für name den Namen Ihres Kontos und für system den Hersteller und das Modell Ihres Systems ein. Zum Beispiel: njl-FooCo6000.asl. Obwohl die meisten Entwickler die Mailingliste &a.current.name; lesen, sollten Sie Fehlerberichte an die Liste &a.acpi.name; schicken. Seien Sie bitte geduldig; wir haben alle Arbeit außerhalb des Projekts. Wenn der Fehler nicht offensichtlich ist, bitten wir Sie vielleicht, einen offiziellen Fehlerbericht (PR) mit &man.send-pr.1; einzusenden. Geben Sie im Fehlerbericht bitte dieselben Informationen wie oben an. Mithilfe der PRs verfolgen und lösen wir Probleme. Senden Sie bitte keinen PR ein, ohne vorher den Fehlerbericht an die Liste &a.acpi.name; zu senden. Wir benutzen die PRs als Erinnerung an bestehende Probleme und nicht zum Sammeln aller Probleme. Es kann sein, dass der Fehler schon von jemand anderem gemeldet wurde. <acronym>ACPI</acronym>-Grundlagen ACPI ACPI gibt es in allen modernen Rechnern der ia32- (x86), ia64- (Itanium) und amd64- (AMD) Architektur. Der vollständige Standard bietet Funktionen zur Steuerung und Verwaltung der CPU-Leistung, der Stromversorgung, von Wärmebereichen, Batterien, eingebetteten Controllern und Bussen. Auf den meisten Systemen wird nicht der vollständige Standard implementiert. Arbeitsplatzrechner besitzen meist nur Funktionen zur Verwaltung der Busse, während Notebooks Funktionen zur Temperaturkontrolle und Ruhezustände besitzen. Ein ACPI konformes System besitzt verschiedene Komponenten. Die BIOS- und Chipsatz-Hersteller stellen mehrere statische Tabellen bereit (zum Beispiel die Fixed-ACPI-Description-Table, FADT). Die Tabellen enthalten beispielsweise die mit SMP-Systemen benutzte APIC-Map, Konfigurationsregister und einfache Konfigurationen. Zusätzlich gibt es die Differentiated-System-Description-Table (DSDT), die Bytecode enthält. Die Tabelle ordnet Geräte und Methoden in einem baumartigen Namensraum an. Ein ACPI-Treiber muss die statischen Tabellen einlesen, einen Interpreter für den Bytecode bereitstellen und die Gerätetreiber im Kernel so modifizieren, dass sie mit dem ACPI-Subsystem kommunizieren. Für &os;, Linux und NetBSD hat &intel; den Interpreter ACPI-CA, zur Verfügung gestellt. Der Quelltext zu ACPI-CA befindet sich im Verzeichnis src/sys/contrib/dev/acpica. Die Schnittstelle von ACPI-CA zu &os; befindet sich unter src/sys/dev/acpica/Osd. Treiber, die verschiedene ACPI-Geräte implementieren, befinden sich im Verzeichnis src/sys/dev/acpica. Häufige Probleme ACPI Probleme mit Damit ACPI richtig funktioniert, müssen alle Teile funktionieren. Im Folgenden finden Sie eine Liste mit Problemen und möglichen Umgehungen oder Fehlerbehebungen. Die Liste ist nach der Häufigkeit, mit der die Probleme auftreten, sortiert. Mausprobleme Es kann vorkommen, dass die Maus nicht mehr funktioniert, wenn Sie nach einem Suspend weiterarbeiten wollen. Ist dies bei Ihnen der Fall, reicht es meistens aus, den Eintrag hint.psm.0.flags="0x3000" in Ihre /boot/loader.conf aufzunehmen. Besteht das Problem weiterhin, sollten Sie einen Fehlerbericht an das FreeBSD Project senden. Suspend/Resume ACPI kennt drei Suspend-to-RAM-Zustände (STR): S1-S3. Es gibt einen Suspend-to-Disk-Zustand: S4. Der Zustand S5 wird Soft-Off genannt. In diesem Zustand befindet sich ein Rechner, wenn die Stromversorgung angeschlossen ist, der Rechner aber nicht hochgefahren ist. Der Zustand S4 kann auf zwei Arten implementiert werden: S4BIOS und S4OS. Im ersten Fall wird der Suspend-to-Disk-Zustand durch das BIOS hergestellt im zweiten Fall alleine durch das Betriebssystem. Die Suspend-Zustände sind Ruhezustände, in denen der Rechner weniger Energie als im Normalbetrieb benötigt. Resume bezeichnet die Rückkehr zum Normalbetrieb. Die Suspend-Zustände können Sie mit dem Kommando sysctl hw.acpi ermitteln. Das Folgende könnte beispielsweise ausgegeben werden: hw.acpi.supported_sleep_state: S3 S4 S5 hw.acpi.s4bios: 0 Diese Ausgabe besagt, dass mit dem Befehl acpiconf -s die Zustände S3, S4OS und S5 eingestellt werden können. Hätte den Wert 1, gäbe es den Zustand S4BIOS anstelle von S4OS. Wenn Sie die Suspend- und Resume-Funktionen testen, fangen Sie mit dem S1-Zustand an, wenn er angeboten wird. Dieser Zustand wird am ehesten funktionieren, da der Zustand wenig Treiber-Unterstützung benötigt. Der Zustand S2 ist ähnlich wie S1, allerdings hat ihn noch niemand implementiert. Als nächstes sollten Sie den Zustand S3 ausprobieren. Dies ist der tiefste STR-Schlafzustand. Dieser Zustand ist auf massive Treiber-Unterstützung angewiesen, um die Geräte wieder richtig zu initialisieren. Wenn Sie Probleme mit diesem Zustand haben, können Sie die Mailingliste &a.acpi.name; anschreiben. Erwarten Sie allerdings nicht zu viel: Es gibt viele Treiber und Geräte, an denen noch gearbeitet und getestet wird. Um das Problem einzugrenzen, entfernen Sie soviele Treiber wie möglich aus dem Kernel. Sie können das Problem isolieren, indem Sie einen Treiber nach dem anderen laden, bis der Fehler wieder auftritt. Typischerweise verursachen binäre Treiber wie nvidia.ko, X11-Grafiktreiber und USB-Treiber die meisten Fehler, hingegen laufen Ethernet-Treiber für gewöhnlich sehr zuverlässig. Wenn ein Treiber zuverlässig geladen und entfernt werden kann, können Sie den Vorgang automatisieren, indem Sie die entsprechenden Kommandos in die Dateien /etc/rc.suspend und /etc/rc.resume einfügen. In den Dateien finden Sie ein deaktiviertes Beispiel, das einen Treiber lädt und wieder entfernt. Ist die Bildschirmanzeige bei der Wiederaufnahme des Betriebs gestört, setzen Sie bitte die Variable auf 0. Versuchen Sie auch, die Variable auf kürzere Zeitspannen zu setzen. Die Suspend- und Resume-Funktionen können Sie auch auf einer neuen Linux-Distribution mit ACPI testen. Wenn es mit Linux funktioniert, liegt das Problem wahrscheinlich bei einem &os;-Treiber. Es hilft uns, das Problem zu lösen, wenn Sie feststellen können, welcher Treiber das Problem verursacht. Beachten Sie bitte, dass die ACPI-Entwickler normalerweise keine anderen Treiber pflegen (beispielsweise Sound- oder ATA-Treiber). Es ist wohl das beste, die Ergebnisse der Fehlersuche an die Mailingliste &a.current.name; und den Entwickler des Treibers zu schicken. Wenn Ihnen danach ist, versuchen Sie, den Fehler in der Resume-Funktion zu finden, indem Sie einige &man.printf.3;-Anweisungen in den Code des fehlerhaften Treibers einfügen. Schließlich können Sie ACPI noch abschalten und stattdessen APM verwenden. Wenn die Suspend- und Resume-Funktionen mit APM funktionieren, sollten Sie vielleicht besser APM verwenden (insbesondere mit alter Hardware von vor dem Jahr 2000). Die Hersteller benötigten einige Zeit, um ACPI korrekt zu implementieren, daher gibt es mit älterer Hardware oft ACPI-Probleme. Temporäre oder permanente Systemhänger Die meisten Systemhänger entstehen durch verlorene Interrupts oder einen Interrupt-Sturm. Probleme werden verursacht durch die Art, in der das BIOS Interrupts vor dem Systemstart konfiguriert, durch eine fehlerhafte APIC-Tabelle und durch die Zustellung des System-Control-Interrupts (SCI). Interrupt-Sturm Anhand der Ausgabe des Befehls vmstat -i können Sie verlorene Interrupts von einem Interrupt-Sturm unterscheiden. Untersuchen Sie die Ausgabezeile, die acpi0 enthält. Ein Interrupt-Sturm liegt vor, wenn der Zähler öfter als ein paar Mal pro Sekunde hochgezählt wird. Wenn sich das System aufgehangen hat, versuchen Sie mit der Tastenkombination Ctrl Alt Esc in den Debugger DDB zu gelangen. Geben Sie dort den Befehl show interrupts ein. APIC deaktivieren Wenn Sie Interrupt-Probleme haben, ist es vorerst wohl am besten, APIC zu deaktivieren. Tragen Sie dazu die Zeile hint.apic.0.disabled="1" in loader.conf ein. Abstürze (Panics) Panics werden so schnell wie möglich behoben; mit ACPI kommt es aber selten dazu. Zuerst sollten Sie die Panic reproduzieren und dann versuchen einen backtrace (eine Rückverfolgung der Funktionsaufrufe) zu erstellen. Richten Sie dazu den DDB über die serielle Schnittstelle (siehe ) oder eine gesonderte &man.dump.8;-Partition ein. In DDB können Sie den backtrace mit dem Kommando tr erstellen. Falls Sie den backtrace vom Bildschirm abschreiben müssen, schreiben Sie bitte mindestens die fünf ersten und die fünf letzten Zeile der Ausgabe auf. Versuchen Sie anschließend, das Problem durch einen Neustart ohne ACPI zu beseitigen. Wenn das funktioniert hat, können Sie versuchen, das verantwortliche ACPI-Subsystem durch Setzen der Variablen herauszufinden. Die Hilfeseite &man.acpi.4; enthält dazu einige Beispiele. Nach einem Suspend oder einem Stopp startet das System wieder Setzen Sie zuerst in &man.loader.conf.5; die Variable auf 0. Damit wird verhindert, dass ACPI während des Systemabschlusses die Bearbeitung verschiedener Ereignisse deaktiviert. Auf manchen Systemen muss die Variable den Wert 1 besitzen (die Voreinstellung). Normalerweise wird der unerwünschte Neustart des Systems durch Setzen dieser Variablen behoben. Andere Probleme Wenn Sie weitere Probleme mit ACPI haben (Umgang mit einer Docking-Station, nicht erkannte Geräte), schicken Sie bitte eine Beschreibung an die Mailingliste. Allerdings kann es sein, dass einige Probleme von noch unvollständigen Teilen des ACPI-Subsystems abhängen und es etwas dauern kann bis diese Teile fertig sind. Seien Sie geduldig und rechnen Sie damit, dass wir Ihnen Fehlerbehebungen zum Testen senden. <acronym>ASL</acronym>, <command>acpidump</command> und <acronym>IASL</acronym> ACPI ASL Ein häufiges Problem ist fehlerhafter Bytecode des BIOS-Herstellers. Dies erkennen Sie an Kernelmeldungen auf der Konsole wie die folgende: ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.LPC0.FIGD._STA] \\ (Node 0xc3f6d160), AE_NOT_FOUND Oft können Sie das Problem dadurch lösen, dass Sie eine aktuelle BIOS-Version einspielen. Die meisten Meldungen auf der Konsole sind harmlos, wenn aber beispielsweise der Batteriestatus falsch angezeigt wird, können Sie in den Meldungen nach Problemen mit der AML-Machine-Language (AML) suchen. Der Bytecode der AML wird aus der ACPI-Source-Language (ASL) übersetzt und in einer Tabelle, der DSDT, abgelegt. Eine Kopie der ASL können Sie mit dem Befehl &man.acpidump.8; erstellen. Verwenden Sie mit diesem Befehl sowohl die Option (die Inhalte der statischen Tabellen anzeigen) als auch die Option (die AML in ASL zurückübersetzen). Ein Beispiel für die Syntax finden Sie im Abschnitt Fehlerberichte einreichen. Sie können einfach prüfen, ob sich die ASL übersetzen lässt. Für gewöhnlich können Sie Warnungen während des Übersetzens ignorieren. Fehlermeldungen führen normal dazu, dass ACPI fehlerhaft arbeitet. Ihre ASL übersetzen Sie mit dem nachstehenden Kommando: &prompt.root; iasl ihre.asl Die <acronym>ASL</acronym> reparieren ACPI ASL Auf lange Sicht ist es unser Ziel, dass ACPI ohne Eingriffe des Benutzers läuft. Zurzeit entwickeln wir allerdings noch Umgehungen für Fehler der BIOS-Hersteller. Der µsoft;-Interpreter (acpi.sys und acpiec.sys) prüft die ASL nicht streng gegen den Standard. Daher reparieren BIOS-Hersteller, die ACPI nur unter &windows; testen, ihre ASL nicht. Wir hoffen, dass wir das vom Standard abweichende Verhalten des µsoft;-Interpreters dokumentieren und in &os; replizieren können. Dadurch müssen Benutzer ihre ASL nicht selbst reparieren. Sie können Ihre ASL selbst reparieren, wenn Sie ein Problem umgehen und uns helfen möchten. Senden Sie uns bitte die mit &man.diff.1; erstellte Differenz zwischen alter und neuer ASL. Wir werden versuchen, den Interpreter ACPI-CA zu korrigieren, damit die Fehlerbehebung nicht mehr erforderlich ist. ACPI Fehlermeldungen Die nachfolgende Liste enthält häufige Fehlermeldungen, deren Ursache und eine Beschreibung, wie die Fehler korrigiert werden: Abhängigkeiten vom Betriebssystem Einige AMLs gehen davon aus, dass die Welt ausschließlich aus verschiedenen &windows;-Versionen besteht. &os; kann vorgeben, irgendein Betriebssystem zu sein. Versuchen Sie das Betriebssystem, das Sie in der ASL finden, in der Datei /boot/loader.conf anzugeben: hw.acpi.osname="Windows 2001". Fehlende Return-Anweisungen Einige Methoden verzichten auf die vom Standard vorgeschriebene Rückgabe eines Wertes. Obwohl der Interpreter ACPI-CA dies nicht beheben kann, besitzt &os; die Möglichkeit, den Rückgabewert implizit zu setzen. Wenn Sie wissen, welcher Wert zurückgegeben werden muss, können Sie die fehlenden Return-Anweisungen selbst einsetzen. Die Option zwingt iasl, die ASL zu übersetzen. Überschreiben der vorgegebenen <acronym>AML</acronym> Nachdem Sie Ihre ASL in der Datei ihre.asl angepasst haben, übersetzen Sie die ASL wie folgt: &prompt.root; iasl ihre.asl Mit der Option erzwingen Sie das Erstellen der AML auch wenn während der Übersetzung Fehler auftreten. Beachten Sie, dass einige Fehler, wie fehlende Return-Anweisungen, automatisch vom Interpreter umgangen werden. In der Voreinstellung erstellt der Befehl iasl die Ausgabedatei DSDT.aml. Wenn Sie diese Datei anstelle der fehlerhaften Kopie des BIOS laden wollen, editieren Sie /boot/loader.conf wie folgt: acpi_dsdt_load="YES" acpi_dsdt_name="/boot/DSDT.aml" Stellen Sie bitte sicher, dass sich die Datei DSDT.aml im Verzeichnis /boot befindet. <acronym>ACPI</acronym>-Meldungen zur Fehlersuche erzeugen ACPI Probleme mit ACPI Fehlersuche Der ACPI-Treiber besitzt flexible Möglichkeiten zur Fehlersuche. Sie können sowohl die zu untersuchenden Subsysteme als auch die zu erzeugenden Ausgaben festlegen. Die zu untersuchenden Subsysteme werden als so genannte layers angegeben. Die Subsysteme sind in ACPI-CA-Komponenten (ACPI_ALL_COMPONENTS) und ACPI-Hardware (ACPI_ALL_DRIVERS) aufgeteilt. Welche Meldungen ausgegeben werden, wird über level gesteuert. level reicht von ACPI_LV_ERROR (es werden nur Fehler ausgegeben) bis zu ACPI_LV_VERBOSE (alles wird ausgegeben). level ist eine Bitmaske, sodass verschiedene Stufen auf einmal (durch Leerzeichen getrennt) angegeben werden können. Die erzeugte Ausgabemenge passt vielleicht nicht in den Konsolenpuffer. In diesem Fall sollten Sie die Ausgaben mithilfe einer seriellen Konsole sichern. Die möglichen Werte für layers und level werden in der Hilfeseite &man.acpi.4; beschrieben. Die Ausgaben zur Fehlersuche sind in der Voreinstellung nicht aktiviert. Wenn ACPI im Kernel enthalten ist, fügen Sie options ACPI_DEBUG zur Kernelkonfigurationsdatei hinzu. Sie können die Ausgaben zur Fehlersuche global aktivieren, indem Sie in der Datei /etc/make.conf die Zeile ACPI_DEBUG=1 einfügen. Das Modul acpi.ko können Sie wie folgt neu übersetzen: &prompt.root; cd /sys/modules/acpi/acpi && make clean && make ACPI_DEBUG=1 Installieren Sie anschließend acpi.ko im Verzeichnis /boot/kernel. In der Datei loader.conf stellen Sie level und layer ein. Das folgende Beispiel aktiviert die Ausgabe von Fehlern für alle ACPI-CA-Komponenten und alle ACPI-Hardwaretreiber (wie CPU, LID): debug.acpi.layer="ACPI_ALL_COMPONENTS ACPI_ALL_DRIVERS" debug.acpi.level="ACPI_LV_ERROR" Wenn ein Problem durch ein bestimmtes Ereignis, beispielsweise den Start nach einem Ruhezustand, hervorgerufen wird, können Sie die Einstellungen für level und layer auch mit dem Kommando sysctl vornehmen. In diesem Fall müssen Sie die Datei loader.conf nicht editieren. Auf der sysctl-Kommandozeile geben Sie dieselben Variablennamen wie in loader.conf an. ACPI-Informationsquellen Weitere Informationen zu ACPI erhalten Sie an den folgenden Stellen: die &a.acpi; Mailingliste, die Archive der ACPI-Mailingliste: , die alten Archive der ACPI-Mailingliste: , die ACPI-Spezifikation (Version 2.0): , in den nachstehenden &os;-Hilfeseiten: &man.acpi.4;, &man.acpi.thermal.4;, &man.acpidump.8;, &man.iasl.8; und &man.acpidb.8;, DSDT debugging resource (als Beispiel wird Compaq erläutert, die Ressource ist aber dennoch nützlich). diff --git a/de_DE.ISO8859-1/books/handbook/install/chapter.sgml b/de_DE.ISO8859-1/books/handbook/install/chapter.sgml index 54d0f6787e..935a9a2e2a 100644 --- a/de_DE.ISO8859-1/books/handbook/install/chapter.sgml +++ b/de_DE.ISO8859-1/books/handbook/install/chapter.sgml @@ -1,5855 +1,5851 @@ Jim Mock Überarbeitet und teilweise neu geschrieben von Randy Pratt Der Gang durch sysinstall und alle Bildschirmabzüge von Martin Heinen Übersetzt von &os; installieren Übersicht Installation &os; wird mit dem textorientierten Programm sysinstall installiert. Distributoren können ein anderes Installationsprogramm verwenden, voreingestellt ist jedoch sysinstall. Dieses Kapitel zeigt Ihnen, wie Sie mithilfe von sysinstall &os; installieren. Dieses Kapitel behandelt folgende Punkte: Das Erzeugen von &os;-Startdisketten. Wie &os; Platten anspricht und aufteilt. Wie sysinstall ausgeführt wird. Die Menüs von sysinstall und die erforderlichen Eingaben in den Menüs. Bevor Sie dieses Kapitel lesen, sollten Sie Die Hardware-Notes der &os;-Release, die Sie installieren wollen, lesen und sicherstellen, dass Ihre Hardware unterstützt wird. Diese Installationsanleitung gilt für Rechner mit &i386;-Architektur (PC-kompatible Rechner). Abweichende Anweisungen für andere Plattformen (beispielsweise Alpha) werden wo notwendig gegeben. Obwohl diese Anleitung so aktuell wie möglich ist, kann das Installationsverfahren von dem hier gezeigten geringfügig abweichen. Legen Sie bitte daher diese Anleitung nicht wortwörtlich aus, sondern lassen Sie sich von diesem Kapitel durch den Installationsprozess leiten. Hardware-Anforderungen Minimalkonfiguration Die zur Installation von &os; erforderliche Minimalkonfiguration hängt von der zu installierenden &os;-Version sowie von der Hardware-Architektur ab. Informationen zur jeweiligen Minimalkonfiguration finden Sie in Installation Notes auf der Unterseite Release Information der &os;-Internetseiten. Die folgenden Abschnitte fassen diese Informationen zusammen. Je nachdem, wie Sie &os; installieren, benötigen Sie eventuell auch ein Diskettenlaufwerk, ein unterstütztes CD-ROM-Laufwerk, oder auch eine Netzwerkkarte. des Handbuchs enthält weitere Informationen zu den verschiedenen Installationsarten. Die i386- und pc98-Architektur Sowohl &os;/i386 als auch &os;/pc98 benötigen jeweils mindestens einen 486-Prozessor sowie mindestens 24 MB RAM. Außerdem benötigen Sie für eine Minimalinstallation mindestens 150 MB freien Platz auf Ihrer Festplatte. In den meisten derartigen Konfigurationen ist es besser, für mehr RAM und mehr Plattenplatz zu sorgen, statt einen schnelleren Prozessor einzubauen. Die Alpha-Architektur Um &os;/alpha zu installieren, benötigen Sie eine unterstützte Plattorm (lesen Sie dazu auch des Handbuchs) sowie eine seperate Festplatte für die &os;-Installation. Es ist nicht derzeit möglich, die Platte mit einem weiteren Betriebssystem zu teilen. Diese seperate Platte muss an einen SCSI-Controller angeschlossen sein, der von der SRM-Firmware unterstützt wird. Alternativ können Sie auch eine IDE-Platte verwenden, wenn Ihr SRM das Starten von IDE-Platten unterstützt. Für die &os;-Installation benötigen Sie die SRM-Konsolen-Firmware für Ihre Plattform. Manchmal ist es möglich, zwischen der AlphaBIOS-Firmware (auch ARC genannt) und SRM zu wechseln. Ist dies bei Ihnen nicht möglich, müssen Sie sich die neue Firmware von der Internetseite Ihres Herstellers herunterladen. Die amd64-Architektur &os;/amd64 benötigt für den Betrieb mindestens einen AMD Athlon 64-, AMD Athlon 64-FX-, oder einen AMD Opteron-Prozessor. Wenn Sie einen auf dem Chipsatz nVidia nForce3 Pro-150 basierenden Rechner haben, müssen Sie im BIOS das IO-APIC deaktivieren. Erlaubt ihr BIOS dies nicht, müssen Sie stattdessen ACPI deaktivieren. Der Grund dafür sind Fehler im Pro-150-Chipsatz, die bis jetzt nicht behoben werden konnten. Die &sparc64;-Architektur Um &os;/&sparc64; zu installieren, benötigen Sie eine unterstützte Plattform (lesen Sie dazu auch des Handbuchs). Sie benötigen außerdem eine seperate Festplatte, wenn Sie &os;/&sparc64; installieren wollen, da es derzeit leider noch nicht möglich ist, die Platte mit einem weiteren Betriebssystem zu teilen. Unterstützte Hardware Die Hardware-Notes, die mit jedem &os;-Release ausgeliefert werden, enthalten eine Liste lauffähiger Hardware. Die Hardware-Notes befinden sich üblicherweise in der Datei HARDWARE.TXT im Wurzelverzeichnis der Distribution (CD-ROM oder FTP). Sie können die Hardware-Notes außerdem im Dokumentationsmenü von sysinstall oder auf der Webseite Release Information lesen. Vor der Installation Erstellen Sie eine Geräteliste Bevor Sie &os; installieren, erfassen Sie die Komponenten Ihres Rechners. Die &os;-Installation wird die Komponenten (Festplatten, Netzwerkkarten, CD-ROM-Laufwerke) zusammen mit der Modellbezeichnung und des Herstellers anzeigen. &os; wird auch versuchen, die richtige Konfiguration der Geräte zu ermitteln. Dazu gehören die benutzten Interrupts (IRQ) und IO-Ports. Wegen der Unwägbarkeiten von PC-Hardware kann die Konfiguration der Geräte allerdings fehlschlagen. In diesem Fall müssen Sie die von &os; ermittelte Konfiguration korrigieren. Wenn Sie schon ein anderes Betriebssystem, wie &windows; oder Linux installiert haben, können Sie die Hardware-Konfiguration mit den Mitteln dieses Betriebssystems bestimmen. Wenn Sie nicht sicher sind, welche Einstellungen eine Erweiterungskarte besitzt, sehen Sie auf der Karte selbst nach. Manchmal sind die Einstellungen dort aufgedruckt. Gebräuchliche IRQs sind 3, 5 und 7. Die Adressen von IO-Ports werden normalerweise hexadezimal, zum Beispiel 0x330, angegeben. Halten Sie die Gerätekonfiguration vor der Installation in einer Tabelle wie der nachstehenden fest: Gerätekonfiguration Gerät IRQ IO-Ports Anmerkung erste Festplatte - - 40 GB, Seagate, erster IDE-Master CD-ROM - - erster IDE-Slave zweite Festplatte - - 20 GB, IBM, zweiter IDE-Master erster IDE-Controller 14 0x1f0 Netzwerkkarte - - &intel; 10/100 Modem - - &tm.3com; 56K Faxmodem, an COM1
Nachdem Sie wissen, über welche Hardware Ihr Rechner verfügt, müssen Sie diese Informationen mit den Hardwareanforderungen der zu installierenden &os;-Version abgleichen.
Sichern Sie Ihre Daten Wenn der Rechner, auf dem Sie &os; installieren wollen, wichtige Daten enthält, sichern Sie bitte diese Daten. Prüfen Sie auch, dass Sie die Daten aus der Sicherung wiederherstellen können, bevor Sie &os; installieren. Die &os;-Installation fragt zwar nach, bevor Sie Daten auf Ihre Festplatte schreibt, Ihre Daten sind allerdings unwiderruflich verloren, wenn der Installationsvorgang einmal angelaufen ist. Den Installationsort von &os; festlegen Wenn Sie die gesamte Festplatte für &os; verwenden wollen, müssen Sie sich an dieser Stelle keine weiteren Gedanken machen – lesen Sie bitte im nächsten Abschnitt weiter. Wenn Sie allerdings &os; neben anderen Betriebssystemen betreiben wollen, müssen Sie wissen, wie Daten auf einer Festplatte abgelegt werden und welche Auswirkungen dies hat. Platteneinteilung von &i386;-Systemen Eine PC-Festplatte wird in einzelne Bereiche unterteilt, die Partitionen heißen. Auf einer PC-Festplatte können maximal vier Partitionen, die primäre Partitionen genannt werden, angelegt werden. Eine erweiterte Partition hebt diese Beschränkung auf. Eine Festplatte kann nur eine erweiterte Partition enthalten, die wiederum weitere so genannte logische Partitionen enthalten kann. Jede Partition besitzt eine Partitions-ID – eine Zahl, die den Typ der Partition festlegt. &os;-Partitionen tragen die Partitions-ID 165. Üblicherweise kennzeichnen Betriebssysteme Partitionen in einer besonderen Art und Weise. Beispielsweise werden jeder primären und logischen Partition unter DOS und dem verwandten &windows; Laufwerksbuchstaben beginnend mit C: zugewiesen. &os; muss auf einer primären Partition installiert werden. In dieser Partition hält &os; alle Daten einschließlich der Dateien, die Sie anlegen. Verfügt das System über mehrere Festplatten, können Sie auf allen oder einigen Platten eine &os;-Partition einrichten. Zur Installation von &os; benötigen Sie eine freie Partition: Dies kann eine extra für die Installation eingerichtete Partition sein oder eine existierende Partition, die nicht mehr benötigte Daten enthält. Wenn auf allen Platten bereits sämtliche Partitionen benutzt werden, müssen Sie eine der Partitionen für &os; frei machen. Benutzen Sie dazu die Werkzeuge des eingesetzten Betriebssystems (fdisk unter DOS oder &windows;). Verfügt das System über eine freie Partition, benutzen Sie diese Partition. Es kann allerdings sein, dass Sie eine oder mehrere der vorhandenen Partitionen vorher verkleinern müssen. Eine minimale &os;-Installation benötigt nur 100 MB Plattenplatz. Diese Installation ist allerdings sehr begrenzt und lässt wenig Platz für Ihre eigenen Dateien. Realistischer sind 250 MB für &os; ohne graphische Benutzeroberfläche und 350 MB für &os; mit einer graphischen Benutzeroberfläche. Sie benötigen weiteren Platz für die Installation zusätzlicher Software. Um die Partitionen zu verkleinern, können Sie beispielsweise das kommerzielle &partitionmagic; oder das freie GParted benutzen. Alternativ enthält das Verzeichnis tools der CD-ROM für diesen Zweck bereits die freien Werkzeuge FIPS und PResizer. Die Dokumentation zu beiden Werkzeugen befindet sich ebenfalls in diesem Verzeichnis. FIPS und PResizer können nur die Größen von FAT16- und FAT32-Partitionen verändern, während GParted und &partitionmagic; auch NTFS-Partitionen verändern können. Der falsche Gebrauch dieser Werkzeuge kann Daten auf der Festplatte löschen. Vor dem Einsatz dieser Werkzeuge stellen Sie bitte sicher, dass Sie frische, funktionierende Datensicherungen besitzen. Eine bestehende Partition verwenden Nehmen wir an, Sie haben einen Rechner mit einer 4 GB Festplatte auf der schon eine Version von &windows; installiert ist. Weiterhin haben Sie die Platte in zwei Laufwerke C: und D: unterteilt, die jeweils 2 GB groß sind. Auf C: wird 1 GB benutzt und 0,5 GB von Laufwerk D: werden benutzt. Sie haben also eine Festplatte mit zwei Partitionen und könnten alle Daten von Laufwerk D: auf das Laufwerk C: kopieren. Damit wäre die zweite Partition für &os; frei. Eine bestehende Partition verkleinern Nehmen wir an, Sie haben einen Rechner mit einer 4 GB Festplatte auf der schon eine Version von &windows; installiert ist. Während der Installation von &windows; haben sie eine große Partition C: angelegt, die 4 GB groß ist. Von den 4 GB werden 1,5 GB benutzt und Sie wollen 2 GB für &os; verwenden. Sie haben zwei Möglichkeiten, &os; zu installieren: Sichern Sie die Daten der &windows;-Partition und installieren Sie &windows; erneut auf einer 2 GB großen Partition. Verkleinern Sie die &windows;-Partition mit einem der oben aufgeführten Werkzeuge. Platteneinteilung von Alpha-Systemen Alpha Auf einer Alpha müssen Sie &os; auf einer eigenen Festplatte installieren. Zurzeit können Sie diese Festplatte nicht mit einem anderen Betriebssystem zusammen benutzen. Abhängig von der Alpha-Maschine, die Sie besitzen, können Sie eine SCSI- oder eine IDE-Festplatte verwenden; Voraussetzung ist, dass Sie das System von der gewählten Platte starten können. Entsprechend den Konventionen der Handbücher von Digital/Compaq werden Eingaben im SRM in Großbuchstaben dargestellt. Der SRM beachtet Groß- und Kleinschreibung nicht. Das SRM-Kommando SHOW DEVICE zeigt die Art und die Namen der Laufwerke des Systems an. Geben Sie das Kommando an der SRM-Eingabeaufforderung ein: >>>SHOW DEVICE dka0.0.0.4.0 DKA0 TOSHIBA CD-ROM XM-57 3476 dkc0.0.0.1009.0 DKC0 RZ1BB-BS 0658 dkc100.1.0.1009.0 DKC100 SEAGATE ST34501W 0015 dva0.0.0.0.1 DVA0 ewa0.0.0.3.0 EWA0 00-00-F8-75-6D-01 pkc0.7.0.1009.0 PKC0 SCSI Bus ID 7 5.27 pqa0.0.0.4.0 PQA0 PCI EIDE pqb0.0.1.4.0 PQB0 PCI EIDE Die Ausgabe stammt von einer Digital Personal Workstation 433au und zeigt drei an das System angeschlossene Laufwerke. Das erste Laufwerk ist ein CD-ROM mit dem Namen DKA0, die anderen beiden sind Festplatten mit den Namen DKC0 und DKC100. Laufwerke mit Namen wie DKx sind SCSI-Laufwerke. Der Name DKA100 zeigt ein SCSI-Laufwerk mit der SCSI-ID 1 auf dem ersten SCSI-Bus (A) an. DKC300 zeigt ein SCSI-Laufwerk mit der SCSI-ID 3 auf dem dritten SCSI-Bus (C) an. SCSI Host-Bus-Adapter werden mit dem Namen PKx bezeichnet. Wie in der Ausgabe von SHOW DEVICE gezeigt, werden SCSI-CD-ROM-Laufwerke wie andere SCSI-Festplatten behandelt. IDE-Laufwerke werden mit DQx bezeichnet, der dazugehörige IDE-Controller heißt PQx. Netzwerkparameter ermitteln Wird während der Installation ein Netzwerk benötigt (weil Sie über FTP oder von einem NFS-Server installieren wollen), müssen Sie die Konfiguration des Netzwerks kennen. Während der Installation werden Netzwerkparameter abgefragt, damit sich &os; mit dem Netzwerk verbinden und die Installation abschließen kann. Verbindung über Ethernet oder ein Kabel/DSL-Modem Wenn Sie sich mit einem Ethernet verbinden oder eine Internet-Verbindung mit einem Ethernet-Adapter über Kabel oder DSL herstellen, benötigen Sie die nachstehenden Daten: IP-Adresse IP-Adresse des Default-Gateways Hostname IP-Adressen der DNS-Server Subnetzmaske Wenn Sie die Daten nicht besitzen, fragen Sie bitte Ihren Systemadministrator oder Ihren Service-Provider. Können die Daten über DHCP bezogen werden, merken Sie sich diese Tatsache. Verbindung über ein Modem Auch wenn Sie sich mit einem normalen Modem bei einem ISP einwählen, können Sie &os; aus dem Internet installieren. Die Installation über ein Modem dauert nur sehr lange. Sie benötigen die nachstehenden Daten: Die Telefonnummer des ISPs. Die COM-Schnittstelle, an der das Modem angeschlossen ist. Den Benutzernamen und das Passwort für Ihr Konto. Lesen Sie die &os;-Errata Auch wenn das &os;-Project bemüht ist, ein Release so stabil wie möglich herzustellen, treten ab und an Fehler auf. In seltenen Fällen betrifft ein Fehler die Installations-Prozedur. Die Fehler und deren Behebungen werden in den &os;-Errata festgehalten. Lesen Sie bitte die Errata bevor Sie &os; installieren, damit Sie nicht in frisch entdeckte Probleme laufen. Dokumentation zu jedem Release, inklusive der Errata zu jedem Release, finden Sie im Release-Abschnitt des FreeBSD Webauftritts.. Die Installationsdateien beschaffen &os; kann von Dateien aus irgendeiner der nachstehenden Quellen installiert werden: Lokale Medien von einer CD-ROM oder einer DVD von einer DOS-Partition auf demselben Rechner von einem SCSI- oder QIC-Bandlaufwerk von Disketten Netzwerk von einem FTP-Server, wenn erforderlich auch durch eine Firewall oder durch einen HTTP-Proxy von einem NFS-Server über eine feste serielle oder eine feste parallele Verbindung Wenn Sie eine &os;-CD oder &os;-DVD gekauft haben, besitzen Sie schon alles, was Sie zur Installation benötigen. Lesen Sie bitte im nächsten Abschnitt () weiter. Wenn Sie sich die &os;-Installationsdateien noch nicht besorgt haben, lesen Sie bitte zuerst den . Dort werden die notwendigen Vorbereitungen für eine Installation von den eben genannten Medien beschrieben. Wenn Sie den Abschnitt durchgearbeitet haben, lesen Sie bitte in weiter. Das Startmedium vorbereiten Um &os; zu installieren, müssen Sie Ihren Rechner mit einem speziellen Startmedium hochfahren, das die Installationsroutine startet. Sie können das Installationsprogramm nicht unter einem anderen Betriebssystem ausführen. Ein Rechner startet normalerweise das auf der Festplatte installierte Betriebssystem, er kann aber auch von Disketten gestartet werden. Heutige Rechner können ebenfalls mit einer CD-ROM gestartet werden. Wenn Sie eine &os; CD-ROM oder DVD besitzen (gekauft oder selbst erstellt) und Ihr Rechner von CD-ROM oder DVD starten kann (üblicherweise können Sie das mit der BIOS-Option einstellen), können Sie diesen Abschnitt überspringen. Eine &os; CD-ROM oder DVD lässt sich direkt starten; Sie können damit &os; ohne weitere Vorbereitungen installieren. Um Startdisketten zu erzeugen, benutzen Sie die nachstehende Anleitung: Abbilder der Startdisketten besorgen Die Abbilder Startdisketten befinden sich auf dem Installationsmedium im Verzeichnis floppies/; sie können auch aus dem Internet heruntergeladen werden: ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/<arch>/<version>-RELEASE/floppies/. Ersetzen Sie <arch> und <version> durch die passende Architektur und die passende Version. Beispielsweise stehen die Startdisketten von &os; &rel.current;-RELEASE für &i386; unter . Die Abbilder besitzen die Dateinamenerweiterung .flp. Im Verzeichnis floppies/ befinden sich verschiedene Abbilder; welches Sie benutzen, hängt von der zu installierenden &os;-Version und in einigen Fällen vom Zielrechner ab. In den meisten Fällen werden Sie drei Disketten benötigen: boot.flp, kern1.flp, sowie kern2.flp. Lesen Sie bitte die Datei README.TXT im Verzeichnis floppies/, sie enthält aktuelle Informationen über die Abbilder. Für 5.X-Systeme vor &os; 5.3 sind eventuell zusätzliche Treiber erforderlich. Diese Treiber sind im Abbild drivers.flp enthalten. Wenn Sie die Abbilder aus dem Internet herunterladen, benutzen Sie bitte den Binärmodus des FTP-Programms. Einige Web-Browser verwenden den Textmodus (oder ASCII-Modus), was dazu führt, dass sich die erstellten Disketten nicht starten lassen. Die Disketten vorbereiten Pro Abbild benötigen Sie eine Diskette. Es ist wichtig, dass die verwendeten Disketten fehlerfrei sind. Sie können dies sicherstellen, indem Sie die Disketten selbst formatieren, verlassen Sie sich bitte nicht auf vorformatierte Disketten. Das Formatierprogramm von &windows; zeigt fehlerhafte Blöcke nicht an, es markiert die Blöcke einfach als fehlerhaft und ignoriert sie dann. Benutzen Sie neue Disketten, wenn Sie diese Installationsart verwenden. Wenn Sie &os; installieren und das Installationsprogramm abstürzt, einfriert oder sich merkwürdig verhält, sind oft fehlerbehaftete Disketten die Ursache. Schreiben Sie die Abbilder auf neue Disketten und versuchen Sie, noch mal zu installieren. Die Abbilder auf Disketten schreiben Die .flp-Dateien sind keine normalen Dateien, die Sie auf eine Diskette kopieren. Sie können die Abbilder nicht von einem Laufwerk auf ein anderes Laufwerk kopieren. Die Abbilder werden mit einem speziellen Werkzeug direkt auf die Diskette geschrieben. DOS Wenn Sie die Startdisketten unter &ms-dos; oder &windows; erstellen, können Sie das mitgelieferte Werkzeug fdimage verwenden. Wenn Sie die Abbilder auf der CD-ROM verwenden und das CD-ROM-Laufwerk den Laufwerksbuchstaben E: besitzt, führen Sie den nachstehenden Befehl aus: E:\> tools\fdimage floppies\kern.flp A: Führen Sie das Kommando für jede .flp-Datei aus. Wechseln Sie bitte jedes Mal die Diskette und beschriften Sie die Diskette mit dem Namen der kopierten Datei. Falls Sie die Abbilder an anderer Stelle liegen haben, passen Sie bitte die Kommandozeile an. Wenn Sie keine CD-ROM besitzen, können Sie fdimage aus dem Verzeichnis tools des &os;-FTP-Servers herunterladen. Wenn Sie Startdisketten auf einem &unix; System (zum Beispiel einem anderen &os; System) erstellen, schreiben Sie die Abbilder mit dem Befehl &man.dd.1; direkt auf die Disketten. Auf einem &os;-System lautet die Kommandozeile: &prompt.root; dd if=kern.flp of=/dev/fd0 Unter &os; spricht /dev/fd0 das erste Diskettenlaufwerk an (das Laufwerk A:), /dev/fd1 spricht das Laufwerk B: an. Andere &unix; Varianten verwenden unter Umständen andere Gerätenamen, die in der Dokumentation des jeweiligen Systems beschrieben sind. Nun ist alles für die &os;-Installation vorbereitet.
Die Installation starten Die Installationsprozedur lässt die Daten auf Ihren Laufwerken solange unverändert bis die nachstehende Meldung erscheint: Last Chance: Are you SURE you want continue the installation? If you're running this on a disk with data you wish to save then WE STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding! We can take no responsibility for lost disk contents! Vor dieser Meldung kann die Installationsprozedur jederzeit abgebrochen werden, ohne die Daten auf der Festplatte zu verändern. Wenn Sie meinen, etwas falsch konfiguriert zu haben, können Sie vor diesem Zeitpunkt einfach den Rechner ausschalten. Der Systemstart Systemstart von &i386;-Systemen Schalten Sie zunächst Ihren Rechner aus. Schalten Sie den Rechner ein. Während des Starts sollte angezeigt werden, wie Sie das Systemeinstellungsmenü (oder BIOS) erreichen. Meist drücken Sie dazu die Tasten F2, F10, Del oder Alt S . Benutzen Sie die angezeigte Tastenkombination. Viele Rechner zeigen beim Systemstart eine Grafik an. Typischerweise können Sie die Grafik mit der Taste Esc entfernen und so die angezeigten Meldungen lesen. Suchen Sie Option, die einstellt von welchem Gerät der Rechner startet. Normalerweise wird die Option genannt und zeigt eine Geräteliste, beispielsweise Floppy, CD-ROM, First Hard Disk an. Wenn Sie Startdisketten erstellt haben, wählen Sie Floppy aus, wenn Sie von CD-ROM starten, stellen Sie sicher, dass die CD-ROM ausgewählt ist. Wenn Sie nicht sicher sind, lesen Sie bitte im Handbuch des Rechners oder im Handbuch der Systemplatine nach. Stellen Sie das gewünschte Startmedium ein und sichern Sie die Einstellungen. Der Rechner sollte dann neu starten. Wenn Sie, wie in beschrieben, Startdisketten vorbereitet haben, benötigen Sie nun die erste Diskette, die kern.flp enthält. Legen Sie diese Diskette in das Diskettenlaufwerk ein. Wenn Sie den Rechner von einer CD-ROM starten, legen Sie die CD-ROM so früh wie möglich in das Laufwerk ein. Wenn Ihr Rechner wie normal startet und das existierende Betriebssystem lädt, kann das folgende Ursachen haben: Das Startmedium (Diskette, CD-ROM) ist nicht schnell genug eingelegt worden. Belassen Sie das Startmedium im Laufwerk und starten Sie Ihren Rechner neu. Die BIOS-Einstellungen sind falsch vorgenommen worden. Wiederholen Sie diesen Schritt, bis Sie die richtige Einstellung gefunden haben. Das verwendete BIOS kann nicht von dem gewünschten Medium starten. &os; startet jetzt. Wenn Sie von einer CD-ROM starten, sehen Sie die folgenden Meldungen (Versionsangaben entfernt): Verifying DMI Pool Data ........ Boot from ATAPI CD-ROM : 1. FD 2.88MB System Type-(00) Uncompressing ... done BTX loader 1.00 BTX version is 1.01 Console: internal video/keyboard BIOS drive A: is disk0 BIOS drive B: is disk1 BIOS drive C: is disk2 BIOS drive D: is disk3 BIOS 639kB/261120kB available memory FreeBSD/i386 bootstrap loader, Revision 0.8 /kernel text=0x277391 data=0x3268c+0x332a8 | | Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 9 seconds... _ Wenn Sie mit Startdisketten hochfahren, sehen Sie folgende Meldungen (Versionsangaben entfernt): Verifying DMI Pool Data ........ BTX loader 1.00 BTX version is 1.01 Console: internal video/keyboard BIOS drive A: is disk0 BIOS drive C: is disk1 BIOS 639kB/261120kB available memory FreeBSD/i386 bootstrap loader, Revision 0.8 /kernel text=0x277391 data=0x3268c+0x332a8 | Please insert MFS root floppy and press enter: Folgen Sie der Anweisung und entfernen Sie die - kern.flp-Diskette, + boot.flp-Diskette, anschließend legen Sie die - mfsroot.flp-Diskette ein + kern1.flp-Diskette ein und drücken Enter. - Wie oben - beschrieben, gibt es unter &os; 5.3 andere - Disketten. Starten Sie das System mit der ersten + Starten Sie das System mit der ersten Diskette und legen Sie, wenn Sie dazu aufgefordert werden, die anderen Disketten ein. Unabhängig davon, ob Sie von Disketten oder von CD-ROM gestartet haben, wird folgende Meldung erscheinen: Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 9 seconds... _ Warten Sie entweder zehn Sekunden oder drücken Sie Enter. Systemstart von Alpha-Systemen Alpha Schalten Sie zunächst Ihren Rechner aus. Schalten Sie den Rechner ein und warten Sie auf die Eingabeaufforderung des Boot-Monitors. - Wenn Sie, wie in beschrieben, Startdisketten vorbereitet haben, benötigen Sie nun die erste Diskette, - die kern.flp enthält. + die boot.flp enthält. Legen Sie diese Diskette in das Diskettenlaufwerk ein. Das nachstehende Kommando startet den Rechner von der Diskette (falls nötig, passen Sie den Gerätenamen der Diskette an): >>>BOOT DVA0 -FLAGS '' -FILE '' Wenn Sie den Rechner von einer CD-ROM starten, legen Sie die CD-ROM in das Laufwerk ein und führen das folgende Kommando aus (wenn nötig, passen Sie den Gerätenamen des CD-ROM-Laufwerks an): >>>BOOT DKA0 -FLAGS '' -FILE '' &os; wird jetzt starten. Wenn Sie den Rechner mit einer Diskette gestartet haben, wird irgendwann die nachstehende Meldung erscheinen: - Please insert MFS root floppy and press enter: + Insert disk labelled "Kernel floppy 1" and press any key... Folgen Sie der Anweisung und entfernen Sie die - kern.flp-Diskette, + boot.flp-Diskette, anschließend legen Sie die - mfsroot.flp-Diskette ein + kern1.flp-Diskette ein und drücken Enter. Unabhängig davon, ob Sie von Disketten oder von CD-ROM gestartet haben, wird folgende Meldung erscheinen: Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 9 seconds... _ Warten Sie entweder zehn Sekunden oder drücken Sie Enter, danach erscheint das Kernelkonfigurationsmenü. Die Geräteerkennung prüfen Die letzten paar Hundert Zeilen der Bildschirmausgabe werden gesichert und können geprüft werden. Um sich den Bildschirmpuffer anzusehen, drücken Sie die Taste Scroll-Lock. Im Puffer können Sie mit den Pfeiltasten oder den Tasten PageUp und PageDown blättern. Um zur normalen Bildschirmausgabe zurückzukehren, drücken Sie nochmals die Taste Scroll-Lock. Prüfen Sie mit diesem Verfahren nun die Ausgaben der Geräteerkennung. Sie werden einen Text ähnlich wie in sehen. Die genauen Ausgaben sind abhängig von den in Ihrem System installierten Geräten.
Ausgabe der Geräteerkennung avail memory = 253050880 (247120K bytes) Preloaded elf kernel "kernel" at 0xc0817000. Preloaded mfs_root "/mfsroot" at 0xc0817084. md0: Preloaded image </mfsroot> 4423680 bytes at 0xc03ddcd4 md1: Malloc disk Using $PIR table, 4 entries at 0xc00fde60 npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 pcib1:<VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 pci1: <Matrox MGA G200 AGP graphics accelerator> at 0.0 irq 11 isab0: <VIA 82C586 PCI-ISA bridge> at device 7.0 on pci0 isa0: <iSA bus> on isab0 atapci0: <VIA 82C586 ATA33 controller> port 0xe000-0xe00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0 <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 7.2 on pci 0 usb0: <VIA 83572 USB controller> on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr1 uhub0: 2 ports with 2 removable, self powered pci0: <unknown card> (vendor=0x1106, dev=0x3040) at 7.3 dc0: <ADMtek AN985 10/100BaseTX> port 0xe800-0xe8ff mem 0xdb000000-0xeb0003ff ir q 11 at device 8.0 on pci0 dc0: Ethernet address: 00:04:5a:74:6b:b5 miibus0: <MII bus> on dc0 ukphy0: <Generic IEEE 802.3u media interface> on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ed0: <NE2000 PCI Ethernet (RealTek 8029)> port 0xec00-0xec1f irq 9 at device 10. 0 on pci0 ed0 address 52:54:05:de:73:1b, type NE2000 (16 bit) isa0: too many dependant configs (8) isa0: unexpected small tag 14 orm0: <Option ROM> at iomem 0xc0000-0xc7fff on isa0 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq1 on atkbdc0 kbd0 at atkbd0 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model Generic PS/@ mouse, device ID 0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 pppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/15 bytes threshold plip0: <PLIP network interface> on ppbus0 ad0: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata0-master UDMA33 acd0: CD-RW <LITE-ON LTR-1210B> at ata1-slave PIO4 Mounting root from ufs:/dev/md0c /stand/sysinstall running as init on vty0
Prüfen Sie die Ausgabe der Geräteerkennung sorgfältig und stellen Sie sicher, dass &os; alle erwarteten Geräte gefunden hat. Wenn ein Gerät nicht gefunden wurde, wird es nicht angezeigt. Wurde der Gerätetreiber mit IRQ und Port-Adressen konfiguriert, prüfen Sie, ob die Werte richtig angezeigt werden. Wenn Sie noch Änderungen an der Kernelkonfiguration vornehmen müssen, können Sie sysinstall leicht verlassen und wieder neu anfangen. Das ist auch eine gute Übung, um sich mit dem Ablauf vertraut zu machen.
sysinstall beenden
Wählen Sie mit den Pfeiltasten den Punkt Exit Install des Hauptmenüs aus. Nach der Auswahl wird die folgende Meldung angezeigt: User Confirmation Requested Are you sure you wish to exit? The system will reboot (be sure to remove any floppies from the drives). [ Yes ] No Wenn Sie die Auswahl mit &gui.yes; bestätigen, wird das Installationsprogramm erneut starten, falls sich die CD-ROM noch im Laufwerk befindet. Wenn Sie mit Disketten gestartet haben, müssen - Sie vor dem Neustart die mfsroot.flp-Diskette - gegen die kern.flp-Diskette tauschen. + Sie vor dem Neustart die + boot.flp-Diskette entfernen.
Das Werkzeug sysinstall Zum Installieren von &os; stellt das &os;-Project das Werkzeug sysinstall zur Verfügung. Das Werkzeug arbeitet textorientiert und bietet eine Reihe von Menüs und Bildschirmen, um den Installationsprozess zu konfigurieren und zu steuern. Die Menüs von sysinstall werden mit Tasten wie den Pfeiltasten, Enter oder Space bedient. Eine ausführliche Beschreibung der Tastenbelegung ist in der Gebrauchsanweisung von sysinstall enthalten. Die Gebrauchsanweisung können Sie lesen, indem Sie den Menüpunkt Usage auswählen. Stellen Sie sicher, dass die Schaltfläche [Select], wie in gezeigt, aktiviert ist und drücken Sie die Taste Enter. Es erscheinen Anweisungen wie das Menüsystem zu bedienen ist. Wenn Sie diese gelesen haben, drücken Sie Enter, um in das Hauptmenü zurückzukehren.
Die Gebrauchsanweisung von sysinstall auswählen
Die Dokumentation abrufen Aus dem Hauptmenü wählen Sie mit den Pfeiltasten Doc aus und drücken Enter.
Die Dokumentation abrufen
Es wird das Dokumentationsmenü angezeigt.
Das Dokumentationsmenü von sysinstall
Lesen Sie bitte unbedingt die mitgelieferte Dokumentation. Um ein Dokument zu lesen, wählen Sie das Dokument mit den Pfeiltasten aus und drücken Enter. Wenn Sie das Dokument gelesen haben, kommen Sie mit der Taste Enter in das Dokumentationsmenü zurück. Um in das Hauptmenü zurückzukommen, wählen Sie mit den Pfeiltasten Exit aus und drücken die Taste Enter.
Die Tastaturbelegung ändern Um die Tastaturbelegung zu ändern, wählen Sie den Menüpunkt Keymap und drücken Enter. Dies ist nur erforderlich wenn Sie eine nicht standard-konforme Tastatur oder eine andere als eine amerikanische Tastatur einsetzen.
Das Hauptmenü von sysinstall
Eine andere Tastaturbelegung können Sie mit den Pfeiltasten markieren und der Taste Space auswählen. Wenn Sie die Taste Space nochmals drücken wird die Auswahl aufgehoben. Haben Sie eine Tastaturbelegung ausgewählt, markieren Sie mit den Pfeiltasten &gui.ok; und drücken Sie Enter. Der Bildschirmabzug zeigt nur einen der verfügbaren Belegungen an. Mit der Taste Tab markieren Sie die Schaltfläche &gui.cancel;, die mit der Vorgabe-Belegung wieder in das Hauptmenü zurückführt.
Sysinstall Keymap Menu
Installationsoptionen einstellen Wählen Sie Options aus und rücken die Taste Enter.
Das Hauptmenü von sysinstall
Optionen von sysinstall
Für die meisten Benutzer sind die voreingestellten Werte völlig ausreichend und brauchen daher nicht geändert werden. Der Name des Releases variiert mit der zu installierenden Version von &os;. Eine Beschreibung der ausgewählten Option erscheint blau hervorgehoben am unteren Ende des Bildschirms. Mit der Option Use Defaults können Sie alle Optionen auf die Vorgabewerte zurückstellen. Wenn Sie die Hilfeseite zu den verschiedenen Optionen lesen wollen, drücken Sie die Taste F1. Die Taste Q führt in das Hauptmenü zurück.
Eine Standard-Installation starten Die Standard-Installation sollte von allen &unix;- oder &os;-Anfängern benutzt werden. Markieren Sie mit den Pfeiltasten Standard und drücken Sie Enter, um die Installation zu starten.
Die Standard-Installation starten
Plattenplatz für &os; bereitstellen Ihre erste Aufgabe ist, &os; Plattenplatz bereitzustellen und den Plattenplatz für sysinstall kenntlich zu machen (label). Sie müssen daher wissen, wie &os; mit Platten umgeht. Nummerierung der Laufwerke im BIOS Bevor Sie &os; installieren und konfigurieren, sollten Sie Sie einen wichtigen Punkt beachten, besonders wenn Sie mehrere Festplatten besitzen. DOS Microsoft Windows In einem PC, der unter einem vom BIOS abhängigen Betriebssystem, wie &ms-dos; oder µsoft.windows; läuft, kann das BIOS die normale Reihenfolge der Laufwerke verändern und das Betriebssystem beachtet diese Änderung. Mit dieser Funktion kann der Rechner von einem anderen Laufwerk als dem so genannten primären Laufwerk gestartet werden. Die Funktion ist sehr zweckmäßig für Benutzer, die Datensicherungen auf einer zweiten Platte erstellen und dafür Werkzeuge wie Ghost oder xcopy einsetzen. Wenn die erste Platte ausfällt, von einem Virus befallen wird oder durch einen Fehler des Betriebssystems verunstaltet wird, können die Platten im BIOS logisch getauscht werden. Es sieht so aus, als wären die Laufwerke, ohne Öffnen des Gehäuses getauscht worden. SCSI BIOS Teurere Systeme mit SCSI-Controllern haben oft BIOS Erweiterungen, mit denen die Reihenfolge von bis zu sieben SCSI-Platten in ähnlicher Weise verändert werden kann. Ein Benutzer, der es gewohnt ist, diese BIOS-Funktionen zu benutzen, mag überrascht sein, dass &os; sich nicht wie erwartet verhält. &os; verwendet das BIOS nicht und weiß daher nichts von der logischen Plattenordnung im BIOS. Dies kann zu sehr verwirrenden Situationen führen, insbesondere wenn die Platten identische Geometrien besitzen und Kopien voneinander sind. Vor der Installation von &os; sollte im BIOS die normale Nummerierung der Laufwerke eingestellt und so belassen werden. Ist es nötig, die Reihenfolge der Laufwerke zu verändern, so sollte das immer auf dem schweren Weg, also durch Öffnen des Gehäuses und Verändern der Jumper und Kabel, erfolgen. Von Bills und Freds ungewöhnlichen Abenteuern Bill macht aus einer älteren Wintel Kiste ein neues &os;-System für Fred. Auf einer SCSI-Platte, die er mit der SCSI-ID 0 konfiguriert, installiert Bill &os;. Nachdem Fred das System einige Tage benutzt hat, bemerkt er, dass die ältere SCSI-Platte viele Fehler meldet und beschwert sich bei Bill. Nach einigen Tagen entschließt sich Bill, die Sache in die Hand zu nehmen. Er schnappt sich eine identische SCSI-Platte aus dem Lager im Hinterzimmer und baut diese, nachdem Sie einen Oberflächenscan überstanden hat, mit der SCSI-ID 4 ein. Anschließend kopiert er die Daten von der Platte mit der SCSI-ID 0 auf die Platte mit der SCSI-ID 4. Da die neue Platte zufriedenstellend läuft, stellt Bill im SCSI-BIOS die Reihenfolge der Platten so um, dass das System von der neuen Platte startet. Nach einem problemlosen Start von &os; läuft das System und Fred ist zufrieden. Nach einiger Zeit haben Bill und Fred Lust auf ein weiteres Abenteuer – Sie wollen das System auf eine neue &os;-Version aktualisieren. Bill ersetzt die angeschlagene Platte mit der SCSI-ID 0 durch eine gleiche Platte aus dem Lager. Auf der ausgetauschten Platte installiert er problemlos mithilfe von Freds Startdisketten die neue Version von &os;. Fred braucht ein paar Tage, um die neue &os;-Version zu testen und entscheidet, dass Sie für den produktiven Einsatz geeignet ist. Nun müssen die Daten von der alten Platte (mit der SCSI-ID 4) kopiert werden. Fred hängt dazu die alte Platte ein und stellt bestürzt fest, dass alle Daten verschwunden sind. Wo sind die Daten hin? Bill kopierte die Daten von der Platte mit der SCSI-ID 0 auf die Platte mit der SCSI-ID 4. Als Bill die Startreihenfolge im SCSI-BIOS änderte, führte er sich nur selbst an der Nase herum. &os; lief weiterhin auf der Platte mit der SCSI-ID 0. Durch die Änderung der Startreihenfolge wurde nur ein Teil des Boot- und Loader-Codes von der Platte mit der SCSI-ID 4 geladen. Die Kernel-Treiber von &os; ignorieren die BIOS-Einstellungen und benutzen die normale Nummerierung. Das System lief also weiterhin auf der Platte mit der SCSI-ID 0 und alle Daten von Fred befanden sich auf dieser Platte. Es schien nur so, als würde das System auf der Platte mit der SCSI-ID 4 laufen. Wir sind erleichtert zu bemerken, dass keine Daten verloren gingen oder verändert wurden. Die alte Platte wurde im Müll wiedergefunden und Freds Daten konnten wiederhergestellt werden (Bill weiß jetzt, dass er noch viel zu lernen hat). Obwohl in diesem Beispiel SCSI-Platten verwendet wurden, gelten die Konzepte gleichermaßen für IDE-Platten. Slices mit Fdisk erstellen Zu diesem Zeitpunkt werden noch keine Änderungen auf die Festplatte ausgeschrieben. Sie können daher sysinstall jederzeit verlassen, und erneut beginnen, wenn Sie denken, einen Fehler gemacht zu haben. Sie können sysinstall über die Menüs verlassen, die Taste U drücken oder die Option Undo wählen. Wenn Sie einmal nicht wissen, wie Sie ein Menü verlassen, können Sie den Rechner auch einfach ausschalten. Nachdem Sie in sysinstall die Standard-Installation ausgewählt haben, werden Sie folgende Meldung sehen: Message In the next menu, you will need to set up a DOS-style ("fdisk") partitioning scheme for your hard disk. If you simply wish to devote all disk space to FreeBSD (overwriting anything else that might be on the disk(s) selected) then use the (A)ll command to select the default partitioning scheme followed by a (Q)uit. If you wish to allocate only free space to FreeBSD, move to a partition marked "unused" and use the (C)reate command. [ OK ] [ Press enter or space ] Drücken Sie, wie angegeben, Enter. Im nächsten Bildschirm werden alle Festplatten angezeigt, die der Kernel während der Geräteerkennung gefunden hat. zeigt ein Beispiel von einem System mit zwei IDE-Platten, die als ad0 und ad2 erkannt wurden.
Ein Laufwerk für Fdisk aussuchen
Sie fragen sich vielleicht, warum ad1 nicht angezeigt wird. Wurde die Platte vielleicht nicht erkannt? Stellen Sie sich ein System mit zwei IDE-Platten vor. Eine Platte ist als Master am ersten Controller, die andere als Master am zweiten Controller angeschlossen. Wenn &os; die Platten in der Reihenfolge, in der sie gefunden werden, nummerieren würde, hießen die Platten ad0 und ad1 und alles würde funktionieren. Wenn Sie nun am ersten IDE-Controller eine dritte Platte als Slave anschließen würden, wäre diese Platte ad1. Die vorher ad1 genannte Platte würde nun ad2 heißen. Dateisysteme werden auf Geräten wie ad1s1a angelegt. Daher könnte es passieren, dass auf einmal Dateisysteme nicht mehr gefunden werden und Sie &os; umkonfigurieren müssten. Um diese Probleme zu umgehen, kann der Kernel so eingestellt werden, dass er Platten nach ihrem Anschlussort anstelle der gefundenen Reihenfolge benennt. Nach diesem Schema ist die Master-Platte am zweiten IDE-Controller immer ad2, auch wenn es die Geräte ad0 oder ad1 gar nicht gibt. Dieses Verhalten ist in &os; voreingestellt und der Grund warum im Beispiel die Geräte ad0 und ad2 angezeigt werden. Der Rechner, von dem die gezeigte Ausgabe stammt, hatte zwei IDE-Platten, die beide als Master konfiguriert waren, und keine Slave-Platten. Wählen Sie die Platte aus, auf die Sie &os; installieren wollen und drücken Sie &gui.ok;. Anschließend startet Fdisk und zeigt einen Bildschirm wie den in . Der Bildschirm von Fdisk ist in drei Abschnitte unterteilt. Der erste Abschnitt umfasst die ersten beiden Zeilen der Anzeige. Er enthält Einzelheiten über die aktuell ausgewählte Platte, unter anderem den &os;-Gerätenamen, die Plattengeometrie und die Kapazität der Platte. Der zweite Abschnitt zeigt die auf der Platte befindlichen Slices. Angezeigt wird der Anfang und das Ende der Slice, die Größe der Slice, der &os;-Gerätename, eine Beschreibung und der Subtyp. Im Beispiel sehen Sie zwei unbenutzte Slices, die durch die Plattenbelegung auf PCs entstehen. Weiterhin sehen Sie eine große FAT-Slice, die ziemlich sicher unter &ms-dos;/&windows; als Laufwerk C: auftaucht und eine erweiterte Slice, die unter &ms-dos;/&windows; weitere Laufwerke enthalten kann. Im dritten Abschnitt sind die Kommandos von Fdisk zusammengefasst.
Typischer Fdisk-Bildschirm vor dem Editieren
Die nächsten Schritte hängen von der beabsichtigten Einteilung der Festplatte ab. Wenn Sie die gesamte Festplatte für &os; verwenden wollen, drücken Sie die Taste A (entspricht dem Menüpunkt Use Entire Disk). Später im Installationsverlauf müssen Sie diese Auswahl bestätigen, danach werden alle bisherigen Daten von der Festplatte gelöscht. Diese Auswahl löscht vorher vorhandene Slices und ersetzt sie durch einen kleinen unbenutzten Bereich (der wieder durch das PC-Design bedingt ist) und eine große Slice für &os;. Wählen Sie dann die neu erstellte Slice mit den Pfeiltasten aus und drücken Sie die Taste S, um die Slice als startfähig (bootbar) zu markieren. zeigt den Bildschirm zu diesem Zeitpunkt. Beachten Sie das A in der Spalte Flags. Dies zeigt an, dass die Slice aktiv ist und das System von dieser Slice starten wird. Um Platz für &os; zu schaffen, können Sie auch bestehende Slices löschen. Markieren Sie dazu die Slice mit den Pfeiltasten und drücken Sie die Taste D. Danach legen Sie eine neue Slice mit der Taste C an. Sie werden nach der Größe der zu erstellenden Slice gefragt; der Vorgabewert entspricht der größten Slice, die angelegt werden kann (entspricht entweder dem größten freien Bereich auf der Festplatte oder der ganzen Festplatte). Wenn Sie schon Platz für &os; geschaffen haben (beispielsweise mit &partitionmagic;), können Sie eine neue Slice direkt mit der Taste C anlegen. Sie werden wieder nach der Größe der anzulegenden Slice gefragt.
Eine Partition über die gesamte Platte
Drücken Sie die Taste Q, wenn Sie fertig sind. Sysinstall merkt sich die Änderungen, schreibt sie aber noch nicht auf die Festplatte.
Einen Boot-Manager installieren Sie können nun einen Boot-Manager installieren. Unter folgenden Umständen sollten Sie den &os;-Boot-Manager installieren: Das System besitzt mehr als ein Laufwerk und &os; ist auf einem anderen Laufwerk als dem ersten Laufwerk installiert. &os; teilt sich das Laufwerk mit einem anderen Betriebssystem. Beim Systemstart wollen Sie auswählen, welches Betriebssystem gestartet wird. Wird der Rechner ausschließlich mit &os; betrieben und &os; ist auf dem ersten Laufwerk installiert, dann genügt der Standard-Boot-Manager. Wenn Sie einen anderen Boot-Manager benutzen, der &os; starten kann, wählen Sie bitte None aus. Nachdem Sie die Auswahl getroffen haben, drücken Sie die Taste Enter.
Sysinstall Boot-Manager-Menü
In der Hilfe, die Sie mit der Taste F1 aufrufen, werden Probleme beschrieben, die entstehen können, wenn sich zwei Betriebssysteme ein Laufwerk teilen.
Slices auf einem anderen Laufwerk anlegen Wenn das System mehr als ein Laufwerk besitzt, kehrt die Installationsprozedur nach der Auswahl des Boot-Managers zum Bildschirm Select Drives zurück. Sie können hier ein anderes Laufwerk auswählen und auf diesem Laufwerk mit Fdisk weitere Slices anlegen. Wenn Sie &os; auf einem anderen Laufwerk als dem ersten Laufwerk installieren, müssen Sie den &os;-Boot-Manager auf beiden Laufwerken installieren.
Die Laufwerksauswahl verlassen
Die Taste Tab wechselt zwischen dem zuletzt ausgewählten Laufwerk und den Schaltflächen &gui.ok; und &gui.cancel;. Drücken Sie einmal die Taste Tab, um &gui.ok; auszuwählen und drücken Sie anschließend Enter um die Installation weiterzuführen.
Partitionen mit <application>Bsdlabel</application> anlegen In jeder angelegten Slice müssen Sie Partitionen anlegen. Die Partitionen werden mit Buchstaben von a bis h gekennzeichnet. Die Buchstaben b, c und d haben eine besondere Bedeutung, die Sie beachten sollten. Einige Anwendungen profitieren von einer besonderen Aufteilung der Partitionen, insbesondere wenn das System mehr als ein Laufwerk besitzt. Bei der ersten &os;-Installation sollten Sie sich allerdings nicht zu viele Gedanken über die Partitionen machen. Wichtiger ist, dass Sie &os; installieren und benutzen. Wenn Sie mehr Erfahrung mit &os; gesammelt haben, können Sie &os; jederzeit mit anderen Partitionen installieren. Das folgende Schema legt vier Partitionen an: Eine Partition für den Auslagerungsbereich (swap space) und drei Partitionen für Dateisysteme. Partitionen auf dem ersten Laufwerk Partition Dateisystem Größe Beschreibung a / 100 MB Das Root-Dateisystem. Jedes andere Dateisystem wird irgendwo unterhalb von diesem Dateisystem eingehangen. 100 MB ist eine vernünftige Größe für dieses Dateisystem. Sie werden hier wenig Daten speichern und &os; benötigt ungefähr 40 MB Platz auf diesem Dateisystem. Der Rest ist für temporäre Daten und die Reserve, falls künftige Versionen von &os; mehr Platz in / benötigen. b N/A 2-3 x RAM Der Auslagerungsbereich. Es ist schon fast eine Kunst, die Größe des Auslagerungsbereichs richtig zu bestimmen. Eine gute Daumenregel ist, den Auslagerungsbereich zwei bis dreimal größer als den Hauptspeicher (RAM) anzulegen. Sie sollten mindestens 64 MB für den Auslagerungsbereich vorsehen. Wenn das System also weniger als 32 MB Hauptspeicher besitzt, richten Sie einen 64 MB großen Auslagerungsbereich ein. Besitzt das System mehr als ein Laufwerk, können Sie auf jedem Laufwerk Auslagerungsbereiche anlegen. Da &os; alle Auslagerungsbereiche benutzt, wird der Vorgang des Auslagerns durch mehrere Bereiche beschleunigt. Berechnen Sie in diesem Fall die Größe des benötigten Auslagerungsbereichs, beispielsweise 128 MB, und teilen Sie die Größe durch die Anzahl der Laufwerke. Dies gibt die Größe des Auslagerungsbereichs auf jedem Laufwerk. Mit zwei Platten ergibt das in diesem Beispiel 64 MB Auslagerungsbereich pro Platte. e /var 50 MB Das Verzeichnis /var enthält Dateien, die sich dauernd ändern (Protokolldateien und Dateien für Verwaltungszwecke) und auf die im Normalbetrieb oft zugegriffen wird. Liegen diese Dateien in einem gesonderten Dateisystem, kann &os; den Zugriff auf die Dateien optimieren, ohne den Zugriff auf Dateien mit einem anderen Zugriffmuster zu stören. f /usr Der Rest des Laufwerks Alle anderen Dateien werden normalerweise im Verzeichnis /usr oder einem Unterverzeichnis von /usr abgelegt.
Wenn Sie &os; auf mehr als einem Laufwerk installieren, müssen Sie noch weitere Partitionen in den Slices auf den anderen Laufwerken anlegen. Am einfachsten legen Sie pro Laufwerk zwei Partitionen an: eine für den Auslagerungsbereich und eine andere für ein Dateisystem. Partitionen auf weiteren Laufwerken Partition Dateisystem Größe Beschreibung b - - Wie schon besprochen, können Sie den Auslagerungsbereich auf mehrere Platten verteilen. Auch wenn die a-Partition frei ist, sollte der Auslagerungsbereich entsprechend der Konvention auf der b-Partition angelegt werden. e /diskn Der Rest des Laufwerks Der Rest der Platte wird von einer großen Partition eingenommen. Sie könnten für diese Partition die a-Partition anstelle der e-Partition benutzen. Allerdings ist die a-Partition per Konvention für das Root-Dateisystem (/) reserviert. Sie brauchen die Konvention nicht zu beachten, da aber sysinstall die Konvention beachtet, ist die Installation sauberer, wenn Sie das auch tun. Sie können das Dateisystem irgendwo einhängen. Das Beispiel schlägt die Verzeichnisse /diskn vor, wobei n die Laufwerke nummeriert. Sie können ein anderes Schema verwenden, wenn Sie möchten.
Wenn Sie die Aufteilung der Partitionen festgelegt haben, können Sie die Partitionen mit sysinstall anlegen. Es erscheint die nachstehende Meldung: Message Now, you need to create BSD partitions inside of the fdisk partition(s) just created. If you have a reasonable amount of disk space (200MB or more) and don't have any special requirements, simply use the (A)uto command to allocate space automatically. If you have more specific needs or just don't care for the layout chosen by (A)uto, press F1 for more information on manual layout. [ OK ] [ Press enter or space ] Drücken Sie Enter, um den &os;-Partitionseditor, der Disklabel heißt, zu starten. zeigt den Einstiegsbildschirm von Disklabel. Der Bildschirm ist in drei Bereiche geteilt. Die ersten Zeilen zeigen den Namen des Laufwerks, das Sie gerade bearbeiten und die Slice, die die erstellten Partitionen enthält (Disklabel spricht hier von Partitionen anstatt von Slices). Der freie Platz einer Slice, der noch keiner Partition zugeordnet ist, wird ebenfalls angezeigt. In der Mitte des Bildschirms werden die angelegten Partitionen, der Name des Dateisystems, das sich in der Partition befindet, dessen Größe und die Optionen zum Erstellen des Dateisystems angezeigt. Das untere Drittel des Bildschirms zeigt die in Disklabel gültigen Tastenkombinationen.
Sysinstall Disklabel-Editor
Disklabel kann für Sie automatisch Partitionen mit vorgegebenen Größen erstellen. Probieren Sie das bitte jetzt aus und drücken Sie die Taste A. Der Bildschirm sieht danach ähnlich wie in aus. Abhängig von der Größe des Laufwerks können die Vorgabewerte richtig oder falsch sein. Da Sie die Vorgaben nicht akzeptieren müssen, spielt das keine Rolle. &os; legt das Verzeichnis /tmp in einer eigenen Partition an. Dies verhindert, dass sich die Root-Partition mit temporären Dateien füllt.
Sysinstall Disklabel-Editor mit automatischen Vorgaben
Wollen Sie die vorgegebenen Partitionen nicht verwenden und durch eigene ersetzen, markieren Sie mit den Pfeiltasten die erste Partition und drücken Sie die Taste D, um die Partition zu löschen. Wiederholen Sie dies für alle vorgegebenen Partitionen. Um die erste Partition (a), die als / eingehangen wird, zu erstellen, drücken Sie die Taste C. Stellen Sie dabei sicher, dass die richtige Slice im oberen Teil des Bildschirms markiert ist. Wie in , erscheint ein Fenster, in dem Sie die Größe der Partition angeben müssen. Sie können die Größe in Blöcken oder einer Zahl gefolgt von M für Megabyte, G für Gigabyte oder C für Zylinder angeben. Ab &os; 5.X gibt es den Menüpunkt Custom Newfs (Taste Z). Sie können dort Dateisysteme vom Typ UFS2 anlegen (dies ist ab &os; 5.1 die Vorgabe), die Einstellungen von mit Auto Defaults angelegten Dateisystemen ändern oder die Option für zu erstellende Dateisysteme voreinstellen. Vergessen Sie nicht, Soft Updates mit der Option zu aktivieren.
Die Größe einer Partition festlegen
Die vorgegebene Größe erstellt eine Partition, die den Rest der Slice ausfüllt. Wenn Sie die Größen aus dem früheren Beispiel verwenden, löschen Sie die vorgeschlagene Größe mit der Taste Backspace und tragen Sie die neue Größe, wie in gezeigt, ein. Drücken Sie anschließend &gui.ok;.
Die Größe einer Partition ändern
Nachdem Sie die Größe der Partition festgelegt haben, werden Sie gefragt, ob die Partition ein Dateisystem oder einen Auslagerungsbereich enthalten soll (siehe ). Die erste Partition enthält ein Dateisystem, wählen Sie FS aus und drücken Sie die Taste Enter.
Den Partitionstyp festlegen
Abschließend müssen Sie, weil Sie ein Dateisystem erstellen, angeben, wo das Dateisystem eingehangen wird. Die Eingabe ist in dargestellt. Das Root-Dateisystem wird in / eingehangen, geben Sie daher / ein und drücken Sie die Taste Enter.
Den Mountpoint festlegen
Auf dem Bildschirm wird jetzt die neu angelegte Partition angezeigt. Wiederholen Sie diese Prozedur für die restlichen Partitionen. Beim Anlegen des Auslagerungsbereichs werden Sie nicht nach einem Mountpoint gefragt, da ein Auslagerungsbereich nie eingehangen wird. Wenn Sie die letzte Partition anlegen, /usr, können Sie die vorgeschlagene Größe stehen lassen. Das Dateisystem wird dann den Rest der Slice einnehmen. Der letzte Bildschirm von Disklabel sieht wie in aus (Ihre Werte werden von den gezeigten Werten abweichen). Drücken Sie die Taste Q, um Disklabel zu verlassen.
Sysinstall Disklabel-Editor
Den Installationsumfang bestimmen Die Distribution auswählen Welche Software Sie installieren, hängt hauptsächlich vom Zweck des Rechners und dem zur Verfügung stehenden Plattenplatz ab. Die vorgegebenen Distributionen reichen von der minimalen Installation bis hin zu einer kompletten Installation. Anfänger sollten eine der vorgegebenen Distributionen auswählen, erfahrene Benutzer können die zu installierende Distribution anpassen. Die Taste F1 führt zu einem Hilfebildschirm, der die Distributionen und deren Inhalte beschreibt. Drücken Sie Enter, um die Hilfe zu verlassen und zur Auswahl der Distribution zurückzukehren. Wenn Sie eine graphische Benutzeroberfläche installieren wollen, sollten Sie eine Distribution auswählen, deren Name mit X anfängt. Die Konfiguration des X-Servers und die Auswahl der Benutzeroberfläche ist Teil der Nacharbeiten. Die Konfiguration des X-Servers wird in besprochen. Welche Version von X11 installiert wird, hängt von der &os;-Version ab, die Sie installieren. Vor &os; 5.3 wird &xfree86; 4.X installiert, ab &os; 5.3 wird &xorg; installiert. Prüfen Sie auf der &xfree86; Website, ob Ihre Grafikkarte unterstützt wird. Falls Ihre Karte von der &xfree86;-Version, die &os; installiert, nicht unterstützt wird, wählen Sie bitte eine Distribution ohne X. Nach der Installation können Sie über die Ports-Sammlung eine &xfree86;-Version installieren, die Ihre Karte unterstützt. Wenn Sie einen angepassten Kernel erstellen wollen, wählen Sie eine Distribution aus, die den Quellcode (source code) enthält. Warum und wie Sie einen angepassten Kernel erstellen, erfahren Sie in . Natürlich ist das flexibelste System das, auf dem alles installiert ist. Wenn das System über ausreichend Plattenplatz verfügt, wählen Sie mit den Pfeiltasten die Option All aus (siehe ) und drücken die Taste Enter. Wenn Sie Bedenken haben, dass der Plattenplatz nicht ausreicht, wählen Sie eine Distribution, die weniger Software enthält. Machen Sie sich keine unnötigen Sorgen um die richtige Distribution, ausgelassene Distribution können später nachinstalliert werden.
Die Distribution auswählen
Die Ports-Sammlung installieren Nach der Auswahl der Distribution haben Sie Gelegenheit, die &os;-Ports-Sammlung zu installieren. Mit der Ports-Sammlung lässt sich Software Dritter auf einfache Art und Weise installieren. Der Quellcode der zu installierenden Software ist nicht in der Ports-Sammlung enthalten. Stattdessen enthält die Ports-Sammlung Dateien, die den Installationsprozess (herunterladen, übersetzen und installieren) automatisieren. Die Ports-Sammlung wird in besprochen. Der Installationsprozess prüft nicht, ob ausreichend Platz für die Ports-Sammlung vorhanden ist. Wählen Sie die Ports-Sammlung bitte nur aus, wenn das System über ausreichenden Platz verfügt. In &os; &rel.current; nimmt die Ports-Sammlung ungefähr &ports.size; Plattenplatz in Anspruch. Neuere Versionen von &os; benötigen mit Sicherheit noch mehr Platz. User Confirmation Requested Would you like to install the FreeBSD ports collection? This will give you ready access to over &os.numports; ported software packages, at a cost of around &ports.size; of disk space when "clean" and possibly much more than that if a lot of the distribution tarballs are loaded (unless you have the extra CDs from a FreeBSD CD/DVD distribution available and can mount it on /cdrom, in which case this is far less of a problem). The ports collection is a very valuable resource and well worth having on your /usr partition, so it is advisable to say Yes to this option. For more information on the ports collection & the latest ports, visit: http://www.FreeBSD.org/ports [ Yes ] No Wählen Sie mit den Pfeiltasten &gui.yes; aus, um die Ports-Sammlung zu installieren. Wählen Sie &gui.no; aus, um die Ports-Sammlung auszulassen. Drücken Sie danach die Taste Enter, es erscheint wieder das Distributionsmenü.
Die Distributionen bestätigen
Wenn Sie mit den ausgewählten Optionen zufrieden sind, wählen Sie mit den Pfeiltasten Exit aus (stellen Sie sicher, dass &gui.ok; aktiv ist) und drücken Sie die Taste Enter.
Das Installationsmedium auswählen Wenn Sie von einer CD-ROM oder einer DVD installieren, wählen Sie bitte Install from a FreeBSD CD/DVD aus. Stellen Sie sicher, dass &gui.ok; aktiv ist und drücken Sie dann die Taste Enter, um mit der Installation fortzufahren. Wenn Sie ein anderes Installationsmedium benutzen, wählen Sie die passende Option aus und folgen den angezeigten Anweisungen. Die Hilfeseiten über Installationsmedien erreichen Sie mit der Taste F1. Drücken Sie Enter, um zur Auswahl des Installationsmediums zurückzukehren.
Das Installationsmedium auswählen
FTP-Installationsmodi Installation FTP Sie können zwischen drei FTP-Installationsmodi wählen: Active-FTP, Passive-FTP oder über einen HTTP-Proxy. FTP Active: Install from an FTP server Diese Option führt alle FTP-Operationen im Active-Mode aus. Dieser Modus funktioniert nicht durch Firewalls, er funktioniert aber mit alten FTP-Servern, die den Passive-Mode nicht beherrschen. Wenn die Verbindung im Passive-Mode (das ist die Vorgabe) hängt, versuchen Sie den Active-Mode. FTP Passive: Install from an FTP server through a firewall FTP Passive-Mode Mit dieser Option benutzt sysinstall den Passive-Mode für alle FTP-Operationen. In diesem Modus funktionieren Verbindungen durch Firewalls, die einkommende Pakete auf beliebigen TCP-Ports blockieren. FTP via a HTTP proxy: Install from an FTP server through a http proxy FTP über einen HTTP-Proxy Diese Option weist sysinstall an, alle FTP-Operationen mit HTTP über einen Proxy (wie ein Web-Browser) durchzuführen. Der Proxy leitet die Anfragen an den richtigen FTP-Server weiter. Mit dieser Option passieren Sie eine Firewall, die FTP-Verbindungen verbietet, aber einen HTTP-Proxy anbietet. Neben dem FTP-Server müssen Sie in diesem Fall den Proxy-Server angeben. Bei einem FTP-Proxy-Server müssen Sie normalerweise den Ziel-FTP-Server als Teil des Benutzernamens hinter dem Klammeraffen (@) angeben. Der Proxy-Server übernimmt die Kommunikation mit dem Ziel-FTP-Server. Nehmen wir an, Sie wollen von ftp.FreeBSD.org über den FTP-Proxy foo.example.com auf Port 1234 installieren. Wählen Sie das Menü Options aus und setzen Sie dort den FTP-Benutzernamen (username) auf ftp@ftp.FreeBSD.org. Als Passwort geben Sie bitte Ihre E-Mail-Adresse an. Setzen Sie das Installationsmedium auf Active-FTP oder Passive-FTP, je nachdem welchen Modus der Proxy-Server unterstützt. Für die URL geben Sie ftp://foo.example.com:1234/pub/FreeBSD an. Der Proxy-Server foo.example.com leitet Zugriffe auf das Verzeichnis /pub/FreeBSD an den Server ftp.FreeBSD.org weiter. Daher können foo.example.com als FTP-Server angeben.
Die Installation festschreiben Wenn Sie wünschen, kann die Installation nun beginnen. Dies ist die letzte Gelegenheit, die Installation abzubrechen und Änderungen auf der Festplatte zu vermeiden. User Confirmation Requested Last Chance! Are you SURE you want to continue the installation? If you're running this on a disk with data you wish to save then WE STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding! We can take no responsibility for lost disk contents! [ Yes ] No Wählen Sie &gui.yes; aus und drücken Sie Enter, um weiter zu machen. Die Installationsdauer hängt von den ausgewählten Distributionen, dem Installationsmedium und der Geschwindigkeit des Rechners ab. Während der Installation wird der Fortgang mit Statusmeldungen angezeigt. Die Installation ist beendet, wenn die folgende Meldung erscheint: Message Congratulations! You now have FreeBSD installed on your system. We will now move on to the final configuration questions. For any option you do not wish to configure, simply select No. If you wish to re-enter this utility after the system is up, you may do so by typing: /stand/sysinstall . [ OK ] [ Press enter to continue ] Drücken Sie die Taste Enter, um die Nacharbeiten durchzuführen. Wenn Sie &gui.no; auswählen und Enter drücken wird die Installation abgebrochen und das System wird nicht verändert. Die nachstehende Meldung wird angezeigt: Message Installation complete with some errors. You may wish to scroll through the debugging messages on VTY1 with the scroll-lock feature. You can also choose "No" at the next prompt and go back into the installation menus to retry whichever operations have failed. [ OK ] Die Meldung wird angezeigt, weil nichts installiert wurde. Drücken Sie Enter, um in das Hauptmenü zurückzukehren. Dort können Sie die Installationsprozedur verlassen. Arbeiten nach der Installation Nach einer erfolgreichen Installation wird das System konfiguriert. Sie können das System direkt konfigurieren oder nach einem Neustart. Nach einem Neustart rufen Sie sysinstall (vor &os; 5.2 /stand/sysinstall) auf und wählen den Menüpunkt Configure. Netzwerkkonfiguration Wenn Sie schon PPP für eine FTP-Installation konfiguriert haben, erscheint dieser Bildschirm nicht. Sie können die Konfiguration später in sysinstall vornehmen. Netzwerke und die Konfiguration von &os; als Gateway oder Router werden eingehend im Kapitel Weiterführende Netzwerkthemen behandelt. User Confirmation Requested Would you like to configure any Ethernet or SLIP/PPP network devices? [ Yes ] No Wenn Sie eine Netzwerkkarte konfigurieren wollen, wählen Sie &gui.yes; aus und drücken Sie die Taste Enter. Wählen Sie &gui.no;, um die Netzwerkkonfiguration zu überspringen.
Eine Netzwerkkarte auswählen
Wählen Sie die zu konfigurierende Karte mit den Pfeiltasten aus und drücken Sie die Taste Enter. User Confirmation Requested Do you want to try IPv6 configuration of the interface? Yes [ No ] Für das gezeigte Installationsbeispiel genügte das momentan verwendete Internet-Protokoll (IPv4). Daher wurde mit den Pfeiltasten &gui.no; ausgewählt und mit der Taste Enter bestätigt. Wenn Sie durch einen RA-Server mit einem IPv6-Netzwerk verbunden sind, wählen Sie bitte &gui.yes; und drücken die Taste Enter. Die Suche nach den RA-Servern dauert einige Sekunden. User Confirmation Requested Do you want to try DHCP configuration of the interface? Yes [ No ] Falls Sie das Dynamic Host Configuration Protocol (DHCP) nicht verwenden, wählen Sie &gui.no; aus und drücken Sie Enter. Wenn Sie &gui.yes; auswählen, wird das Programm dhclient ausgeführt und bei Erfolg die Netzwerkkarte konfiguriert. Mehr über DHCP können Sie in nachlesen. Der nächste Bildschirmabzug zeigt die Netzwerkkonfiguration eines Systems, das Gateway für das lokale Netz ist.
Die Netzwerkkarte ed0 konfigurieren
Tragen Sie in die Felder, die Sie mit der Taste Tab auswählen können, die richtige Konfiguration ein. Host Der vollständige Rechnername (fully-qualified hostname), wie in diesem Beispiel k6-2.example.com. Domain Der Domain-Name, in dem sich der Rechner befindet. Im Beispiel ist das example.com. IPv4 Gateway Die IP-Adresse des Rechners, der Pakete an entfernte Netze weiterleitet. Sie müssen dieses Feld ausfüllen, wenn der sich der Rechner in einem Netzwerk befindet. Lassen Sie das Feld leer, wenn der Rechner der Gateway in das Internet ist. Der IPv4-Gateway wird auch default gateway oder default route genannt. Name server Die IP-Adresse des lokalen DNS-Servers. Im Beispiel gibt es keinen lokalen DNS-Server, daher wurde der DNS-Server des Providers (208.163.10.2) benutzt. IPv4 address Die IP-Adresse der Netzwerkkarte (192.168.0.1). Netmask (Netzmaske) Im Beispiel werden Adressen aus einem Klasse C Netz (192.168.0.0 bis 192.168.0.255) benutzt. Standardmäßig besitzt ein Klasse C Netz die Netzmaske 255.255.255.0. Extra options to ifconfig (Optionen für ifconfig) Zusätzliche Optionen für den Befehl ifconfig, die spezifisch für die verwendete Netzwerkkarte sind. Im Beispiel sind keine Optionen angegeben. Wenn Sie alle Werte eingegeben haben, wählen Sie mit Tab &gui.ok; aus und drücken Sie Enter. User Confirmation Requested Would you like to Bring Up the ed0 interface right now? [ Yes ] No Wenn Sie &gui.yes; auswählen und Enter drücken, wird die Netzwerkkonfiguration aktiviert. Allerdings bringt dies zu diesem Zeitpunkt nicht viel, da der Rechner noch neu gestartet werden muss.
Gateway einrichten User Confirmation Requested Do you want this machine to function as a network gateway? [ Yes ] No Wählen Sie &gui.yes;, wenn der Rechner ein Gateway für ein lokales Netz ist und Pakete an andere Netze weiterleitet. Wenn der Rechner ein normaler Netzknoten ist, wählen Sie &gui.no; aus. Bestätigen Sie die auswahl mit der Taste Enter. IP-Dienste einrichten User Confirmation Requested Do you want to configure inetd and the network services that it provides? Yes [ No ] Wenn &gui.no; ausgewählt wird, werden Dienste wie telnetd nicht aktiviert. Benutzer können sich dann von entfernten Rechnern nicht mit telnet an dieser Maschine anmelden. Lokale Benutzer können aber auf entfernte Rechner mit telnet zugreifen. Die Dienste können Sie nach der Installation aktivieren, indem Sie die Datei /etc/inetd.conf editieren. Dies wird in beschrieben. Wenn Sie jetzt weitere Dienste aktivieren möchten, wählen Sie &gui.yes; aus. Es erscheint die nachstehende Rückfrage: User Confirmation Requested The Internet Super Server (inetd) allows a number of simple Internet services to be enabled, including finger, ftp and telnetd. Enabling these services may increase risk of security problems by increasing the exposure of your system. With this in mind, do you wish to enable inetd? [ Yes ] No Bestätigen Sie die Rückfrage mit &gui.yes;. User Confirmation Requested inetd(8) relies on its configuration file, /etc/inetd.conf, to determine which of its Internet services will be available. The default FreeBSD inetd.conf(5) leaves all services disabled by default, so they must be specifically enabled in the configuration file before they will function, even once inetd(8) is enabled. Note that services for IPv6 must be separately enabled from IPv4 services. Select [Yes] now to invoke an editor on /etc/inetd.conf, or [No] to use the current settings. [ Yes ] No Wenn Sie &gui.yes; auswählen, können Sie Dienste aktivieren, in dem Sie das Zeichen # am Zeilenanfang entfernen.
<filename>inetd.conf</filename> editieren
Wenn Sie die gewünschten Dienste aktiviert haben, drücken Sie die Taste Esc. Es erscheint ein Menü, in dem Sie die Änderungen abspeichern und den Editor verlassen können.
Anonymous-FTP FTP anonymous User Confirmation Requested Do you want to have anonymous FTP access to this machine? Yes [ No ] Anonymous-FTP verbieten Wenn Sie die vorgegebene Auswahl &gui.no; mit der Taste Enter bestätigen, können Benutzer, die ein Konto und ein Passwort auf dem System besitzen, immer noch mit FTP auf das System zugreifen. Anonymous-FTP erlauben Wenn Sie Anonymous-FTP erlauben, darf jeder auf Ihr System zugreifen. Bedenken Sie die Folgen für die Systemsicherheit (siehe ) bevor Sie diese Option aktivieren. Um Anonymous-FTP zu aktivieren, wählen Sie mit den Pfeiltasten &gui.yes; aus und drücken Sie die Taste Enter. Es erscheint ein ähnlicher Bildschirm wie der folgende:
Anonymous-FTP konfigurieren
Mit der Taste F1 rufen Sie die Hilfe auf: This screen allows you to configure the anonymous FTP user. The following configuration values are editable: UID: The user ID you wish to assign to the anonymous FTP user. All files uploaded will be owned by this ID. Group: Which group you wish the anonymous FTP user to be in. Comment: String describing this user in /etc/passwd FTP Root Directory: Where files available for anonymous FTP will be kept. Upload subdirectory: Where files uploaded by anonymous FTP users will go. Das FTP-Wurzelverzeichnis wird per Voreinstellung in /var angelegt. Wenn in /var zu wenig Platz vorhanden ist, können Sie das FTP-Wurzelverzeichnis beispielsweise nach /usr/ftp verlegen. Wenn Sie mit den Einstellungen zufrieden sind, drücken Sie die Taste Enter. User Confirmation Requested Create a welcome message file for anonymous FTP users? [ Yes ] No Wenn Sie &gui.yes; auswählen und mit Enter bestätigen, können Sie die Begrüßungsmeldung des FTP-Servers in einem Editor ändern.
Begrüßungsmeldung des FTP-Servers editieren
Der Editor, in dem Sie sich befinden, heißt ee. Folgen Sie den Anweisungen, um die Meldung zu editieren. Sie können die Meldung auch später in einem Editor Ihrer Wahl editieren. Merken Sie sich dazu den Dateinamen, der im Editor unten angezeigt wird. Wenn Sie die Taste Esc drücken, erscheint ein Menü, in dem a) leave editor vorgewählt ist. Drücken Sie die Taste Enter, um den Editor zu verlassen. Falls Sie Änderungen vorgenommen haben, bestätigen Sie die Änderungen nochmals mit Enter.
Network-File-System einrichten Mit dem Network-File-System (NFS) können Sie über ein Netzwerk auf Dateien zugreifen. Ein Rechner kann NFS-Server, NFS-Client oder beides sein. NFS wird in besprochen. NFS-Server einrichten User Confirmation Requested Do you want to configure this machine as an NFS server? Yes [ No ] Wenn Sie keinen NFS-Server benötigen, wählen Sie &gui.no; aus und bestätigen Sie mit Enter. Wenn Sie &gui.yes; auswählen, erscheint der Hinweis, dass die Datei exports angelegt werden muss. Message Operating as an NFS server means that you must first configure an /etc/exports file to indicate which hosts are allowed certain kinds of access to your local filesystems. Press [Enter] now to invoke an editor on /etc/exports [ OK ] Drücken Sie Enter und es wird ein Editor gestartet, in dem Sie die Datei exports editieren können.
<filename>exports</filename> editieren
Folgen Sie den Anweisungen, um Dateisysteme zu exportieren. Sie können die Datei auch später in einem Editor Ihrer Wahl editieren. Merken Sie sich dazu den Dateinamen, der im Editor unten angezeigt wird. Drücken Sie die Taste Esc und es erscheint ein Menü, in dem a) leave editor vorgewählt ist. Drücken Sie die Taste Enter, um den Editor zu verlassen.
<acronym>NFS</acronym>-Client einrichten Mit einem NFS-Client können Sie auf NFS-Server zugreifen. User Confirmation Requested Do you want to configure this machine as an NFS client? Yes [ No ] Wählen Sie entweder &gui.yes; oder &gui.no; aus und drücken Sie Enter.
Die Systemkonsole einrichten Sie können verschiedene Merkmale der Systemkonsole anpassen. User Confirmation Requested Would you like to customize your system console settings? [ Yes ] No Wenn Sie die Merkmale der Systemkonsole anpassen wollen, wählen Sie &gui.yes; aus und drücken Sie die Taste Enter.
Merkmale der Systemkonsole
Oft wird ein Bildschirmschoner auf der Konsole aktiviert. Wälen Sie mit den Pfeiltasten Saver aus und drücken Sie die Taste Enter.
Bildschirmschoner auswählen
Wählen Sie den gewünschten Bildschirmschoner mit den Pfeiltasten aus und drücken Sie Enter. Das Konfigurationsmenü der Systemkonsole erscheint wieder. In der Voreinstellung wird der Bildschirmschoner nach 300 Sekunden aktiviert. Um diese Zeitspanne zu ändern, wählen Sie wieder Saver aus. Mit den Pfeiltasten wählen Sie dann Timeout aus und drücken Enter. Es erscheint ein Eingabefenster:
Den Bildschirmschoner einstellen
Ändern Sie die Zeitspanne und wählen Sie &gui.ok; aus. Mit Enter kehren Sie in das Konfigurationsmenü der Systemkonsole zurück.
Die Konfiguration der Systemkonsole verlassen
Um die Nacharbeiten fortzuführen, wählen Sie Exit aus und drücken Sie Enter.
Die Zeitzone einstellen Wenn Sie die Zeitzone richtig einstellen, kann Ihr Rechner automatisch regional bedingte Zeitumstellungen ausführen und andere von der Zeitzone abhängige Funktionen handhaben. Das folgende Beispiel gilt für den Osten der USA. Ihre Auswahl hängt vom geographischen Standort Ihres Rechners ab. User Confirmation Requested Would you like to set this machine's time zone now? [ Yes ] No Um die Zeitzone einzustellen, wählen Sie &gui.yes; und drücken Enter. User Confirmation Requested Is this machine's CMOS clock set to UTC? If it is set to local time or you don't know, please choose NO here! Yes [ No ] Je nachdem ob die Systemzeit die Zeitzone UTC verwendet, wählen Sie &gui.yes; oder &gui.no; aus. Bestätigen Sie die Auswahl mit der Taste Enter.
Das Gebiet auswählen
Wählen Sie mit den Pfeiltasten das richtige Gebiet aus und drücken Sie Enter.
Das Land auswählen
Wählen Sie mit den Pfeiltasten das richtige Land aus und drücken Sie Enter.
Die Zeitzone auswählen
Wählen Sie mit den Pfeiltasten die richtige Zeitzone aus drücken Sie Enter. Confirmation Does the abbreviation 'EDT' look reasonable? [ Yes ] No Wenn die angezeigte Abkürzung der Zeitzone richtig ist, bestätigen Sie diese mit der Taste Enter.
Linux-Kompatibilität User Confirmation Requested Would you like to enable Linux binary compatibility? [ Yes ] No Wenn Sie &gui.yes; auswählen und Enter drücken, können Sie Linux-Software auf &os; laufen lassen. Später wird dazu die notwendige Software installiert. Wenn Sie über FTP installieren, müssen Sie mit dem Internet verbunden sein. Einige FTP-Server bieten nicht alle verfügbare Software an. Es kann sein, dass die nötige Software für die Linux-Kompatibilität nicht installiert werden kann, dies können Sie später jedoch nachholen. Die Maus konfigurieren Mit einer 3-Tasten-Maus können Sie Texte auf der Konsole und in Programmen markieren und einfügen (cut and paste). Wenn Sie eine 2-Tasten-Maus besitzen, können Sie eine 3-Tasten-Maus emulieren. Lesen Sie dazu nach der Installation die Hilfeseite &man.moused.8;. Das folgende Beispiel zeigt die Konfiguration einer nicht-USB-Maus (PS/2 oder serielle Maus): User Confirmation Requested Does this system have a non-USB mouse attached to it? [ Yes ] No Wählen Sie &gui.no; für eine USB-Maus und &gui.yes; für eine andere Maus aus und drücken Sie Enter.
Das Mausprotokoll festlegen
Markieren Sie mit den Pfeiltasten Type und drücken Sie press Enter.
Das Mausprotokoll festlegen
Im Beispiel wurde eine PS/2-Maus verwendet, sodass die Vorgabe Auto passend war. Sie können das Protokoll mit den Pfeiltasten ändern. Stellen Sie sicher, dass &gui.ok; aktiviert ist und verlassen Sie das Menü mit der Taste Enter.
Den Mausport einstellen
Wählen Sie mit den Pfeiltasten Port und drücken Sie die Taste Enter.
Den Mausport einstellen
Im Beispiel wurde eine PS/2-Maus verwendet, sodass die Vorgabe PS/2 richtig war. Sie können den Port mit den Pfeiltasten ändern. Bestätigen Sie die Auswahl mit der Taste Enter.
Den Mouse-Daemon aktivieren
Wählen Sie nun mit den Pfeiltasten Enable aus und drücken Sie die Taste Enter, um den Mouse-Daemon zu aktivieren und zu testen.
Den Mouse-Daemon testen
Bewegen Sie die Maus hin und her und prüfen Sie, dass sich der Mauszeiger entsprechend bewegt. Wenn alles in Ordnung ist, wählen Sie &gui.yes; aus und drücken Sie Enter. Wenn sich die Maus nicht richtig verhält, wurde sie nicht korrekt konfiguriert. Wählen Sie in diesem Fall &gui.no; und versuchen Sie, die Einstellungen zu korrigieren. Um mit den Nacharbeiten fortzufahren, wählen Sie mit den Pfeiltasten Exit aus und drücken Sie Enter.
Tom Rhodes Beigetragen von Weitere Netzwerkdienste einrichten Anfänger ohne Vorwissen finden das Einrichten von Netzwerkdiensten oft deprimierend. Netzwerke und das Internet sind für moderne Betriebssysteme von entscheidender Bedeutung. Es ist daher wichtig, die Netzwerkfunktionen von &os; zu kennen. Die von &os; angebotenen Netzwerkdienste können Sie während der Installation kennen lernen. Netzwerkdienste sind Programme, die Eingaben aus dem Netzwerk entgegennehmen. Es wird große Mühe darauf verwendet, dass diese Programme keinen Schaden verursachen. Leider können auch Programmierern Fehler unterlaufen und es gibt Fälle, in denen Fehler in Netzwerkdiensten von Angreifern ausgenutzt wurden. Es ist daher wichtig, dass Sie nur Dienste aktivieren, die Sie benötigen. Im Zweifallsfall sollten Sie einen Dienst solange nicht aktivieren, bis Sie herausfinden, dass Sie den Dienst benötigen. Einen Dienst können Sie später immer noch mit sysinstall oder in der Datei /etc/rc.conf aktivieren. Wählen Sie den Menüpunkt Networking und es erscheint ein Menü wie das nachstehende:
Netzwerkdienste – obere Hälfte
Die erste Option, Interfaces, wurde schon in konfiguriert. Sie können daher diesen Punkt überspringen. Der Punkt AMD aktiviert einen Dienst, der automatisch Dateisysteme einhängt. Normalerweise wird der Dienst zusammen mit dem NFS-Protokoll (siehe unten) verwendet, um automatisch entfernte Dateisysteme einzuhängen. Dieser Menüpunkt erfordert keine weitere Konfiguration. Der nächste Menüpunkt ist AMD Flags. Wenn Sie den Punkt auswählen, erscheint ein Fenster, in dem Sie AMD-spezifische Optionen eingeben können. Die nachstehenden Optionen sind schon vorgegeben: -a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map Die Option legt das Verzeichnis fest (hier /.amd_mnt), unter dem Dateisysteme eingehangen werden. Die Option legt die Protokolldatei fest. Wenn syslogd verwendet wird, werden alle Meldungen an den Daemon syslogd gesendet. Das Verzeichnis /host dient zum Zugriff auf exportierte Verzeichnisse von entfernten Rechnern, das Verzeichnis /net dient zum Zugriff auf exportierte Verzeichnisse von entfernten IP-Adressen. Die Datei /etc/amd.map enthält die Einstellungen für von AMD verwaltete Dateisysteme. FTP anonymous Die Auswahl Anon FTP erlaubt Anonymous-FTP-Verbindungen. Wählen Sie diese Option, wenn Sie einen Anonymous-FTP-Server einrichten wollen. Seien Sie sich über die Sicherheitsrisiken bewusst, wenn Sie Anonymous-FTP erlauben. Die Sicherheitsrisiken und die Konfiguration von Anonymous-FTP werden in einem gesonderten Fenster erklärt, das aufgeht, wenn Sie diese Option auswählen. Der Menüpunkt Gateway konfiguriert das System, wie vorher erläutert, als Gateway. Wenn Sie während der Installation den Rechner aus Versehen als Gateway konfiguriert haben, können Sie dies hier wieder rückgängig machen. Der Menüpunkt Inetd konfiguriert, wie schon oben besprochen, den Daemon &man.inetd.8;. Die Auswahl Mail konfiguriert den Mail Transfer Agent (MTA) des Systems. Wenn Sie diesen Punkt auswählen, erscheint das folgende Menü:
Den <acronym>MTA</acronym> festlegen
In diesem Menü wählen Sie aus, welcher MTA installiert und benutzt wird. Ein MTA ist ein Mail-Server, der E-Mails an lokale Empfänger oder an Empfänger im Internet ausliefert. Die Auswahl Sendmail installiert das verbreitete sendmail (in &os; die Voreinstellung). Die Auswahl Sendmail local verwendet sendmail als MTA, deaktiviert aber den Empfang von E-Mails aus dem Internet. Postfix und Exim sind ähnlich wie Sendmail. Beide Programme liefern E-Mails aus und einige Anwender verwenden lieber eines der beiden Programme als MTA. Nachdem Sie einen MTA ausgewählt haben (oder beschlossen haben, keinen MTA zu benutzen), erscheint wieder das Menü Netzwerkdienste. Der nächste Menüpunkt ist NFS client. Die Auswahl NFS client erlaubt es dem System, mit einem NFS-Server zu kommunizieren. Ein NFS-Server stellt mithilfe des NFS-Protokolls Dateisysteme für andere Systeme auf dem Netzwerk bereit. Wenn der Rechner alleine für sich steht, können Sie diesen Menüpunkt auslassen. Wahrscheinlich müssen Sie noch weitere Einstellungen vornehmen; der beschreibt die Einstellungen für NFS-Server und NFS-Clients. Der Menüpunkt NFS server richtet einen NFS-Server auf dem Rechner ein. Durch die Auswahl dieses Punktes werden die für Remote-Procedure-Call (RPC) benötigten Dienste gestartet. Mit RPC werden Routinen auf entfernten Rechnern aufgerufen. Der nächste Punkt, Ntpdate, konfiguriert die Zeitsynchronisation. Wenn Sie diesen Punkt auswählen, erscheint das folgende Menü:
Ntpdate konfigurieren
Wählen Sie aus diesem Menü einen nahe liegenden Server aus. Die Zeitsynchronisation mit einem nahe liegenden Server ist, wegen der geringeren Latenzzeit, genauer als die Synchronisation mit einem weiter entfernten Server. Der nächste Menüpunkt ist PCNFSD. Wenn Sie diesen Punkt auswählen, wird net/pcnfsd aus der Ports-Sammlung installiert. Dieses nützliche Werkzeug stellt NFS-Authentifizierungsdienste für Systeme bereit, die diese Dienste nicht anbieten (beispielsweise Microsofts &ms-dos;). Um die nächsten Menüpunkte zu sehen, müssen Sie herunterblättern:
Netzwerkdienste – untere Hälfte
Die Programme &man.rpcbind.8;, &man.rpc.statd.8; und &man.rpc.lockd.8; werden für Remote-Procedure-Calls (RPC) benutzt. Das Programm rpcbind verwaltet die Kommunikation zwischen NFS-Servern und NFS-Clients und ist für den Betrieb eines NFS-Servers erforderlich. Der Daemon rpc.statd hält zusammen mit dem Daemon rpc.statd des entfernten Rechners den Status der Verbindung. Der Status einer Verbindung wird normalerweise in der Datei /var/db/statd.status festgehalten. Der nächste Menüpunkt ist rpc.lockd, der Dateisperren (file locks) bereitstellt. rpc.lockd wird normalerweise zusammen mit dem Daemon rpc.statd benutzt, der festhält welche Rechner Sperren anfordern und wie oft Sperren angefordert werden. Beide Dienste sind wunderbar zur Fehlersuche geeignet, doch werden Sie zum Betrieb von NFS-Servern und NFS-Clients nicht benötigt. Der nächste Punkt in der Auswahl ist Routed, der Routing-Daemon. Das Programm &man.routed.8; verwaltet die Routing-Tabelle, entdeckt Multicast-Router und stellt die Routing-Tabelle auf Anfrage jedem mit dem Netz verbundenen Rechner zur Verfügung. Der Daemon wird hauptsächlich auf Gateways eines lokalen Netzes eingesetzt. Wenn Sie den Punkt auswählen müssen Sie den Ort des Programms angeben. Die Vorgabe können Sie mit der Taste Enter übernehmen. Anschließend werden Sie nach den Kommandozeilenoptionen für routed gefragt. Vorgegeben ist die Option . Der nächste Menüpunkt ist Rwhod. Wenn Sie diesen Punkt auswählen, wird während des Systemstarts der Daemon &man.rwhod.8; gestartet. Das Kommando rwhod schickt Broadcast-Meldungen in das Netz oder empfängt diese im Consumer-Mode. Die Funktion der Werkzeuge wird in den Hilfeseiten &man.ruptime.1; und &man.rwho.1; beschrieben. Der vorletzte Menüpunkt aktiviert den Daemon &man.sshd.8;, den OpenSSH Secure-Shell-Server. Wo möglich sollte SSH anstelle von telnet und FTP eingesetzt werden. Der Secure-Shell-Server erstellt verschlüsselte und daher sichere Verbindungen zwischen zwei Rechnern. TCP Extensions ist der letzte Menüpunkt. Diese Auswahl aktiviert die TCP-Erweiterungen aus RFC 1323 und RFC 1644. Obwohl dies auf vielen Rechnern die Verbindungsgeschwindigkeit erhöht, können durch diese Option auch Verbindungsabbrüche auftreten. Auf Servern sollte diese Option nicht aktiviert werden, auf Einzelmaschinen kann diese Option nützlich sein. Wenn Sie die Netzwerkdienste eingerichtet haben, blättern Sie zum Menüpunkt Exit hoch, um die Nacharbeiten fortzusetzen.
Den X-Server einrichten Seit &os; 5.3-RELEASE ist die Konfiguration des X-Servers nicht mehr in sysinstall enthalten. Daher können Sie den X-Server erst nach der erfolgreichen Installation von &os; einrichten. Weitere Informationen zur Installation und Konfiguration des X-Servers enthält des Handbuchs. Sie können diesen Abschnitt überspringen, wenn Sie eine ältere Version als &os; 5.3-RELEASE installieren. Wenn Sie eine graphische Benutzeroberfläche, wie KDE oder GNOME verwenden wollen, müssen Sie einen X-Server einrichten. Damit &xfree86; unter einem anderen Benutzer als root läuft, muss das Paket x11/wrapper installiert sein. Ab &os; 4.7 wird das Paket in der Voreinstellung installiert, in früheren &os;-Versionen müssen Sie das Paket extra installieren. Prüfen Sie auf der Website von &xfree86;, ob Ihre Grafikkarte unterstützt wird. User Confirmation Requested Would you like to configure your X server at this time? [ Yes ] No Sie müssen die Spezifikationen Ihres Monitors und Ihrer Grafikkarte kennen. Wenn Sie falsche Werte eingeben, können die Geräte beschädigt werden. Wenn Sie die Spezifikationen nicht kennen, wählen Sie &gui.no; aus. Wenn Sie die nötigen Informationen haben, können Sie den X-Server nachträglich einrichten. Führen Sie dazu sysinstall (vor &os; 5.2 /stand/sysinstall) aus und wählen Configure und dann XFree86. Eine fehlerhafte Konfiguration des X-Servers kann dazu führen, dass der Rechner hängen bleibt. Daher wird oft empfohlen, den X-Server erst nach Abschluss der Installation einzurichten. Wenn Sie die Spezifikationen Ihres Monitors und Ihrer Grafikkarte kennen, wählen Sie &gui.yes; aus. Um den X-Server einzurichten, drücken Sie Enter.
Die Konfigurationsmethode auswählen
Es gibt verschiedene Methoden, den X-Server einzurichten. Wählen Sie mit den Pfeiltasten eine Methode aus und drücken Sie Enter. Lesen Sie die Anweisungen bitte sorgfältig. Bei den Methoden xf86cfg und xf86cfg -textmode kann der Bildschirm kurzfristig dunkel werden. Der Start dauert vielleicht einige Sekunden, seien Sie bitte geduldig. Im folgenden Beispiel wird das Werkzeug xf86config verwendet. Die Eingaben sind abhängig von der Hardware; Ihre Eingaben werden sich wahrscheinlich von den gezeigten unterscheiden. Message You have configured and been running the mouse daemon. Choose "/dev/sysmouse" as the mouse port and "SysMouse" or "MouseSystems" as the mouse protocol in the X configuration utility. [ OK ] [ Press enter to continue ] Dieser Bildschirm zeigt an, dass der vorher konfigurierte Maus-Daemon gefunden wurde. Um fortzufahren, drücken Sie die Taste Enter. Das Programm xf86config zeigt eine kurze Einführung an: This program will create a basic XF86Config file, based on menu selections you make. The XF86Config file usually resides in /usr/X11R6/etc/X11 or /etc/X11. A sample XF86Config file is supplied with XFree86; it is configured for a standard VGA card and monitor with 640x480 resolution. This program will ask for a pathname when it is ready to write the file. You can either take the sample XF86Config as a base and edit it for your configuration, or let this program produce a base XF86Config file for your configuration and fine-tune it. Before continuing with this program, make sure you know what video card you have, and preferably also the chipset it uses and the amount of video memory on your video card. SuperProbe may be able to help with this. Press enter to continue, or ctrl-c to abort. Nachdem Sie Enter gedrückt haben, können Sie die Maus einrichten. Folgen Sie den Anweisungen und wählen Sie für das Mausprotokoll Mouse Systems aus. Der Mausport ist /dev/sysmouse, auch wenn Sie eine PS/2-Maus benutzen. First specify a mouse protocol type. Choose one from the following list: 1. Microsoft compatible (2-button protocol) 2. Mouse Systems (3-button protocol) & FreeBSD moused protocol 3. Bus Mouse 4. PS/2 Mouse 5. Logitech Mouse (serial, old type, Logitech protocol) 6. Logitech MouseMan (Microsoft compatible) 7. MM Series 8. MM HitTablet 9. Microsoft IntelliMouse If you have a two-button mouse, it is most likely of type 1, and if you have a three-button mouse, it can probably support both protocol 1 and 2. There are two main varieties of the latter type: mice with a switch to select the protocol, and mice that default to 1 and require a button to be held at boot-time to select protocol 2. Some mice can be convinced to do 2 by sending a special sequence to the serial port (see the ClearDTR/ClearRTS options). Enter a protocol number: 2 You have selected a Mouse Systems protocol mouse. If your mouse is normally in Microsoft-compatible mode, enabling the ClearDTR and ClearRTS options may cause it to switch to Mouse Systems mode when the server starts. Please answer the following question with either 'y' or 'n'. Do you want to enable ClearDTR and ClearRTS? n You have selected a three-button mouse protocol. It is recommended that you do not enable Emulate3Buttons, unless the third button doesn't work. Please answer the following question with either 'y' or 'n'. Do you want to enable Emulate3Buttons? y Now give the full device name that the mouse is connected to, for example /dev/tty00. Just pressing enter will use the default, /dev/mouse. On FreeBSD, the default is /dev/sysmouse. Mouse device: /dev/sysmouse Als Nächstes wird die Tastatur konfiguriert. Im Beispiel wurde Generic 101-key PC ausgewählt. Die Frage nach der Variante können Sie mit einem beliebigen Namen beantworten. Um die voreingestellte Variante zu übernehmen, drücken Sie einfach die Taste Enter. Please select one of the following keyboard types that is the better description of your keyboard. If nothing really matches, choose 1 (Generic 101-key PC) 1 Generic 101-key PC 2 Generic 102-key (Intl) PC 3 Generic 104-key PC 4 Generic 105-key (Intl) PC 5 Dell 101-key PC 6 Everex STEPnote 7 Keytronic FlexPro 8 Microsoft Natural 9 Northgate OmniKey 101 10 Winbook Model XP5 11 Japanese 106-key 12 PC-98xx Series 13 Brazilian ABNT2 14 HP Internet 15 Logitech iTouch 16 Logitech Cordless Desktop Pro 17 Logitech Internet Keyboard 18 Logitech Internet Navigator Keyboard 19 Compaq Internet 20 Microsoft Natural Pro 21 Genius Comfy KB-16M 22 IBM Rapid Access 23 IBM Rapid Access II 24 Chicony Internet Keyboard 25 Dell Internet Keyboard Enter a number to choose the keyboard. 1 Please select the layout corresponding to your keyboard 1 U.S. English 2 U.S. English w/ ISO9995-3 3 U.S. English w/ deadkeys 4 Albanian 5 Arabic 6 Armenian 7 Azerbaidjani 8 Belarusian 9 Belgian 10 Bengali 11 Brazilian 12 Bulgarian 13 Burmese 14 Canadian 15 Croatian 16 Czech 17 Czech (qwerty) 18 Danish Enter a number to choose the country. Press enter for the next page 1 Please enter a variant name for 'us' layout. Or just press enter for default variant us Please answer the following question with either 'y' or 'n'. Do you want to select additional XKB options (group switcher, group indicator, etc.)? n Als Nächstes wird der Monitor konfiguriert. Überschreiten Sie die Werte Ihres Monitors nicht, da der Monitor sonst Schaden nehmen könnte. Im Zweifelsfall verschieben Sie die Konfiguration solange, bis Sie die richtigen Werte kennen. Now we want to set the specifications of the monitor. The two critical parameters are the vertical refresh rate, which is the rate at which the whole screen is refreshed, and most importantly the horizontal sync rate, which is the rate at which scanlines are displayed. The valid range for horizontal sync and vertical sync should be documented in the manual of your monitor. If in doubt, check the monitor database /usr/X11R6/lib/X11/doc/Monitors to see if your monitor is there. Press enter to continue, or ctrl-c to abort. You must indicate the horizontal sync range of your monitor. You can either select one of the predefined ranges below that correspond to industry- standard monitor types, or give a specific range. It is VERY IMPORTANT that you do not specify a monitor type with a horizontal sync range that is beyond the capabilities of your monitor. If in doubt, choose a conservative setting. hsync in kHz; monitor type with characteristic modes 1 31.5; Standard VGA, 640x480 @ 60 Hz 2 31.5 - 35.1; Super VGA, 800x600 @ 56 Hz 3 31.5, 35.5; 8514 Compatible, 1024x768 @ 87 Hz interlaced (no 800x600) 4 31.5, 35.15, 35.5; Super VGA, 1024x768 @ 87 Hz interlaced, 800x600 @ 56 Hz 5 31.5 - 37.9; Extended Super VGA, 800x600 @ 60 Hz, 640x480 @ 72 Hz 6 31.5 - 48.5; Non-Interlaced SVGA, 1024x768 @ 60 Hz, 800x600 @ 72 Hz 7 31.5 - 57.0; High Frequency SVGA, 1024x768 @ 70 Hz 8 31.5 - 64.3; Monitor that can do 1280x1024 @ 60 Hz 9 31.5 - 79.0; Monitor that can do 1280x1024 @ 74 Hz 10 31.5 - 82.0; Monitor that can do 1280x1024 @ 76 Hz 11 Enter your own horizontal sync range Enter your choice (1-11): 6 You must indicate the vertical sync range of your monitor. You can either select one of the predefined ranges below that correspond to industry- standard monitor types, or give a specific range. For interlaced modes, the number that counts is the high one (e.g. 87 Hz rather than 43 Hz). 1 50-70 2 50-90 3 50-100 4 40-150 5 Enter your own vertical sync range Enter your choice: 2 You must now enter a few identification/description strings, namely an identifier, a vendor name, and a model name. Just pressing enter will fill in default names. The strings are free-form, spaces are allowed. Enter an identifier for your monitor definition: Hitachi Im nächsten Schritt müssen Sie einen Treiber für Ihre Grafikkarte auswählen. Wenn Sie Ihre Karte in der Liste überschlagen haben, drücken Sie weiter Enter; die Anzeige kehrt zum Anfang der Liste zurück. Nachstehend sehen Sie einen Auszug der Liste: Now we must configure video card specific settings. At this point you can choose to make a selection out of a database of video card definitions. Because there can be variation in Ramdacs and clock generators even between cards of the same model, it is not sensible to blindly copy the settings (e.g. a Device section). For this reason, after you make a selection, you will still be asked about the components of the card, with the settings from the chosen database entry presented as a strong hint. The database entries include information about the chipset, what driver to run, the Ramdac and ClockChip, and comments that will be included in the Device section. However, a lot of definitions only hint about what driver to run (based on the chipset the card uses) and are untested. If you can't find your card in the database, there's nothing to worry about. You should only choose a database entry that is exactly the same model as your card; choosing one that looks similar is just a bad idea (e.g. a GemStone Snail 64 may be as different from a GemStone Snail 64+ in terms of hardware as can be). Do you want to look at the card database? y 288 Matrox Millennium G200 8MB mgag200 289 Matrox Millennium G200 SD 16MB mgag200 290 Matrox Millennium G200 SD 4MB mgag200 291 Matrox Millennium G200 SD 8MB mgag200 292 Matrox Millennium G400 mgag400 293 Matrox Millennium II 16MB mga2164w 294 Matrox Millennium II 4MB mga2164w 295 Matrox Millennium II 8MB mga2164w 296 Matrox Mystique mga1064sg 297 Matrox Mystique G200 16MB mgag200 298 Matrox Mystique G200 4MB mgag200 299 Matrox Mystique G200 8MB mgag200 300 Matrox Productiva G100 4MB mgag100 301 Matrox Productiva G100 8MB mgag100 302 MediaGX mediagx 303 MediaVision Proaxcel 128 ET6000 304 Mirage Z-128 ET6000 305 Miro CRYSTAL VRX Verite 1000 Enter a number to choose the corresponding card definition. Press enter for the next page, q to continue configuration. 288 Your selected card definition: Identifier: Matrox Millennium G200 8MB Chipset: mgag200 Driver: mga Do NOT probe clocks or use any Clocks line. Press enter to continue, or ctrl-c to abort. Now you must give information about your video card. This will be used for the "Device" section of your video card in XF86Config. You must indicate how much video memory you have. It is probably a good idea to use the same approximate amount as that detected by the server you intend to use. If you encounter problems that are due to the used server not supporting the amount memory you have (e.g. ATI Mach64 is limited to 1024K with the SVGA server), specify the maximum amount supported by the server. How much video memory do you have on your video card: 1 256K 2 512K 3 1024K 4 2048K 5 4096K 6 Other Enter your choice: 6 Amount of video memory in Kbytes: 8192 You must now enter a few identification/description strings, namely an identifier, a vendor name, and a model name. Just pressing enter will fill in default names (possibly from a card definition). Your card definition is Matrox Millennium G200 8MB. The strings are free-form, spaces are allowed. Enter an identifier for your video card definition: Jetzt wird die Auflösung eingestellt. Üblich verwendete Auflösungen sind 640x480, 800x600 und 1024x768. Die verwendete Auflösung hängt von den Fähigkeiten der Grafikkarte, der Monitorgröße und Ihren Sehgewohnheiten ab. Wenn Sie eine Farbtiefe festlegen, wählen Sie die höchste aus, die von der Grafikkarte unterstützt wird. For each depth, a list of modes (resolutions) is defined. The default resolution that the server will start-up with will be the first listed mode that can be supported by the monitor and card. Currently it is set to: "640x480" "800x600" "1024x768" "1280x1024" for 8-bit "640x480" "800x600" "1024x768" "1280x1024" for 16-bit "640x480" "800x600" "1024x768" "1280x1024" for 24-bit Modes that cannot be supported due to monitor or clock constraints will be automatically skipped by the server. 1 Change the modes for 8-bit (256 colors) 2 Change the modes for 16-bit (32K/64K colors) 3 Change the modes for 24-bit (24-bit color) 4 The modes are OK, continue. Enter your choice: 2 Select modes from the following list: 1 "640x400" 2 "640x480" 3 "800x600" 4 "1024x768" 5 "1280x1024" 6 "320x200" 7 "320x240" 8 "400x300" 9 "1152x864" a "1600x1200" b "1800x1400" c "512x384" Please type the digits corresponding to the modes that you want to select. For example, 432 selects "1024x768" "800x600" "640x480", with a default mode of 1024x768. Which modes? 432 You can have a virtual screen (desktop), which is screen area that is larger than the physical screen and which is panned by moving the mouse to the edge of the screen. If you don't want virtual desktop at a certain resolution, you cannot have modes listed that are larger. Each color depth can have a differently-sized virtual screen Please answer the following question with either 'y' or 'n'. Do you want a virtual screen that is larger than the physical screen? n For each depth, a list of modes (resolutions) is defined. The default resolution that the server will start-up with will be the first listed mode that can be supported by the monitor and card. Currently it is set to: "640x480" "800x600" "1024x768" "1280x1024" for 8-bit "1024x768" "800x600" "640x480" for 16-bit "640x480" "800x600" "1024x768" "1280x1024" for 24-bit Modes that cannot be supported due to monitor or clock constraints will be automatically skipped by the server. 1 Change the modes for 8-bit (256 colors) 2 Change the modes for 16-bit (32K/64K colors) 3 Change the modes for 24-bit (24-bit color) 4 The modes are OK, continue. Enter your choice: 4 Please specify which color depth you want to use by default: 1 1 bit (monochrome) 2 4 bits (16 colors) 3 8 bits (256 colors) 4 16 bits (65536 colors) 5 24 bits (16 million colors) Enter a number to choose the default depth. 4 Schließlich müssen die Einstellungen gesichert werden. Speichern Sie die Einstellungen in der Datei /etc/X11/XF86Config. I am going to write the XF86Config file now. Make sure you don't accidently overwrite a previously configured one. Shall I write it to /etc/X11/XF86Config? y Eine fehlgeschlagene Konfiguration können Sie wiederholen, indem Sie [ Yes ] auswählen, wenn die nachstehende Meldung erscheint: User Confirmation Requested The XFree86 configuration process seems to have failed. Would you like to try again? [ Yes ] No Wenn Sie Schwierigkeiten haben, &xfree86; einzurichten, wählen Sie [ No ] und drücken Sie Enter, um mit den Nacharbeiten fortzufahren. Die Konfiguration können Sie später vornehmen, indem Sie das Kommando xf86cfg -textmode oder das Kommando xf86config als Benutzer root ausführen. Eine weitere Konfigurationsmethode wird in beschrieben. Wenn Sie &xfree86; jetzt nicht einrichten wollen, gelangen Sie zur Paketauswahl. Den X-Server können Sie jederzeit mit der Tastenkombination Ctrl Alt Backspace beenden. Benutzen Sie die Tastenkombination um Geräteschäden durch falsche Einstellungen zu vermeiden. Mit den Tastenkombinationen CtrlAlt+ oder CtrlAlt- können Sie die Auflösung eines laufenden X-Servers verändern. Nach der Installation können Sie, wenn &xfree86; läuft, mit xvidtune die Bildschirmhöhe und Bildschirmbreite einstellen und den Bildschirm zentrieren. Beachten Sie, dass falsche Einstellungen Ihre Geräte beschädigen können. Wenn Sie Zweifel haben, führen Sie xvidtune nicht aus und nehmen die Einstellungen am Monitor selbst vor. Dadurch kann zwar der Textmodus verstellt werden, aber Geräteschäden werden auf jeden Fall vermieden. Lesen Sie bitte die Hilfeseite &man.xvidtune.1; bevor Sie Einstellungen treffen. Nach der erfolgreichen &xfree86;-Konfiguration folgt die Auswahl der Arbeitsoberfläche.
Die X-Arbeitsoberfläche auswählen Seit &os; 5.3-RELEASE ist die Konfiguration der Arbeitsoberfläche nicht mehr in sysinstall enthalten. Daher können Sie die Arbeitsoberfläche erst nach der erfolgreichen Installation von &os; einrichten. Weitere Informationen zur Installation und Konfiguration der Arbeitsoberfläche enthält des Handbuchs. Sie können diesen Abschnitt überspringen, wenn Sie eine ältere Version als &os; 5.3-RELEASE installieren. Es existieren viele verschiedene Arbeitsoberflächen: von einfachen Arbeitsumgebungen bis zu voll ausgereiften Arbeitsoberflächen mit zahlreichen Programmen. Einige Oberflächen benötigen nur wenig Plattenplatz und Speicher, andere Oberflächen mit mehr Funktionen benötigen mehr Ressourcen. Probieren Sie einige der Oberflächen aus, um herauszufinden, welche Oberfläche Ihnen am besten gefällt. Die Oberflächen befinden sich in der Ports-Sammlung oder liegen als Paket vor und können nach der &os;-Installation hinzugefügt werden. Sie können eine Oberfläche als Standardoberfläche festlegen. Mit dieser Oberfläche können Sie sofort nach Abschluss der Installation arbeiten.
Die Standardoberfläche festlegen
Wählen Sie mit den Pfeiltasten eine Oberfläche aus und drücken Sie die Taste Enter. Die ausgewählte Oberfläche wird danach installiert.
Pakete installieren Pakete (packages) sind schon übersetzte Programme und sind ein zweckmäßiger Weg, Programme zu installieren. Beispielhaft wird im Folgenden die Installation eines Paketes gezeigt. In diesem Schritt können auch weitere Pakete installiert werden. Nach der Installation können Sie mit sysinstall (vor &os; 5.2 /stand/sysinstall) zusätzliche Pakete installieren. User Confirmation Requested The FreeBSD package collection is a collection of hundreds of ready-to-run applications, from text editors to games to WEB servers and more. Would you like to browse the collection now? [ Yes ] No Nachdem Sie [ Yes ] ausgewählt und Enter gedrückt haben, gelangen Sie in die Paketauswahl:
Die Paketkategorie aussuchen
Es stehen nur die Pakete zur Auswahl, die sich auf dem momentanen Installationsmedium befinden. Wenn Sie All auswählen, werden alle Pakete angezeigt. Sie können die Anzeige auf die Pakete einer Kategorie beschränken. Wählen Sie mit den Pfeiltasten die Kategorie aus und drücken Sie die Taste Enter. Ein Menü mit allen Paketen der ausgewählten Kategorie erscheint:
Pakete auswählen
Im gezeigten Bildschirm ist das Paket bash ausgewählt. Sie können weitere Pakete auswählen, indem Sie die Pakete mit den Pfeiltasten markieren und die Taste Space drücken. In der unteren linken Ecke des Bildschirms wird eine Kurzbeschreibung des ausgewählten Pakets angezeigt. Die Taste Tab wechselt zwischen dem zuletzt ausgesuchten Paket, &gui.ok; und &gui.cancel;. Wenn Sie die zu installierenden Pakete ausgewählt haben, drücken Sie einmal Tab, um &gui.ok; zu markieren. Drücken Sie dann Enter, um wieder in die Paketauswahl zu gelangen. Die rechte und die linke Pfeiltaste wechseln ebenfalls zwischen &gui.ok; und &gui.cancel;. Mit diesen Tasten können Sie auch &gui.ok; auswählen und dann mit Enter zur Paketauswahl zurückkehren.
Pakete installieren
Benutzen Sie die Taste Tab und die Pfeiltasten um [ Install ] auszuwählen. Drücken Sie anschließend die Taste Enter. Sie müssen jetzt die Installation der Pakete bestätigen:
Paketinstallation bestätigen
Die Paketinstallation wird gestartet, wenn Sie &gui.ok; auswählen und Enter drücken. Den Verlauf der Installation können Sie anhand der angezeigten Meldungen verfolgen; achten Sie dabei auf Fehlermeldungen. Nach der Paketinstallation können Sie die Nacharbeiten fortsetzen. Wenn Sie keine Pakete ausgewählt haben und die Nacharbeiten fortsetzen möchten, wählen Sie trotzdem [ Install ] aus.
Benutzer und Gruppen anlegen Während der Installation sollten Sie mindestens ein Benutzerkonto anlegen, sodass Sie das System ohne das Konto root benutzen können. Normalerweise ist die Root-Partition recht klein und läuft schnell voll, wenn Sie Anwendungen unter dem root-Konto laufen lassen. Vor der größten Gefahr warnt der nachstehende Hinweis: User Confirmation Requested Would you like to add any initial user accounts to the system? Adding at least one account for yourself at this stage is suggested since working as the "root" user is dangerous (it is easy to do things which adversely affect the entire system). [ Yes ] No Der Bildschirm auf Deutsch: Bestätigung erforderlich Wollen Sie Benutzerkonten anlegen? Wir empfehlen, mindestens ein Konto für sich selbst anzulegen, da es gefährlich ist, unter "root" zu arbeiten (es ist leicht, Befehle einzugeben, die das System nachhaltig beeinträchtigen). [ Yes ] No Um ein Benutzerkonto anzulegen, wählen Sie &gui.yes; aus und drücken Enter.
Benutzerkonto auswählen
Markieren Sie User mit den Pfeiltasten und drücken Sie die Taste Enter.
Benutzerkonto anlegen
Wählen Sie die Felder zum Ausfüllen mit der Taste Tab aus. Zur Hilfe werden die nachstehenden Beschreibungen werden im unteren Teil des Bildschirms angezeigt: Login ID Der Name des Benutzerkontos (verpflichtend). UID Die numerische ID dieses Kontos. Wenn Sie das Feld leer lassen, wird eine ID automatisch zugeteilt. Group Die diesem Konto zugeordnete Login-Gruppe. Wenn Sie das Feld leer lassen, wird automatisch eine Gruppe zugeteilt. Password Das Passwort des Benutzerkontos. Füllen Sie dieses Feld sehr sorgfätig aus. Full name Der vollständige Name des Benutzers (Kommentarfeld). Member groups Die Gruppen, in denen dieses Konto Mitglied ist (das Konto erhält Zugriffsrechte auf Dateien dieser Gruppe). Home directory Das Heimatverzeichnis des Benutzerkontos. Wenn Sie das Feld leer lassen, wird das Verzeichnis automatisch festgelegt. Login shell Die Login-Shell des Kontos. Wenn Sie das Feld leer lassen, wird /bin/sh als Login-Shell festgesetzt. Im Beispiel wurde die Login-Shell von /bin/sh zu der vorher installierten /usr/local/bin/bash geändert. Tragen Sie keine Shell ein, die nicht existiert, da sich sonst nicht anmelden können. In der BSD-Welt wird häufig die C-Shell benutzt, die Sie mit /bin/tcsh angeben können. Damit ein Wechsel auf den Superuser root möglich ist, wurde dem Benutzerkonto die Gruppe wheel zugeordnet. Wenn Sie zufrieden sind, drücken Sie &gui.ok;. Es erscheint wieder das Benutzer-Menü:
Benutzermenü verlassen
Weitere Gruppen können, wenn Sie die Anforderungen schon kennen, zu diesem Zeitpunkt angelegt werden. Nach der Installation können Sie Gruppen mit dem Werkzeug sysinstall (vor &os; 5.2 /stand/sysinstall) anlegen. Wenn Sie alle Benutzer angelegt haben, wählen Sie mit den Pfeiltasten Exit aus und drücken Sie die Taste Enter.
Das <username>root</username>-Passwort festlegen Message Now you must set the system manager's password. This is the password you'll use to log in as "root". [ OK ] [ Press enter to continue ] Um das root-Passwort festzulegen, drücken Sie die Taste Enter. Sie müssen das Passwort zweimal eingeben. Stellen Sie sicher, dass Sie das Passwort nicht vergessen. Beachten Sie, dass bei der Eingabe das Passwort weder ausgegeben wird noch Sterne angezeigt werden. Changing local password for root. New password : Retype new password : Nach der erfolgreichen Eingabe des Passworts kann die Installation fortgesetzt werden. Die Installation beenden Wenn Sie noch weitere Netzwerkkarten konfigurieren oder weitere Einstellungen vornehmen wollen, können Sie das jetzt tun. Sie können die Einstellungen auch nach der Installation mit sysinstall (/stand/sysinstall vor &os; 5.2) vornehmen. User Confirmation Requested Visit the general configuration menu for a chance to set any last options? Yes [ No ] Um in das Hauptmenü zurückzukehren, wählen Sie mit den Pfeiltasten &gui.no; aus und drücken Sie Enter.
Die Installation beenden
Wählen Sie mit den Pfeiltasten [X Exit Install] aus und drücken Sie die Taste Enter. Sie müssen das Beenden der Installation bestätigen: User Confirmation Requested Are you sure you wish to exit? The system will reboot (be sure to remove any floppies from the drives). [ Yes ] No Wählen Sie &gui.yes; aus und entfernen Sie die Diskette aus dem Laufwerk, wenn Sie von einer Diskette gestartet haben. Das CD-Laufwerk ist bis zum Neustart des Systems verriegelt. Entfernen Sie die CD zügig wenn der Rechner startet. Achten Sie beim Neustart des Systems auf eventuell auftauchende Fehlermeldungen.
&os; starten Start von &os; auf einem &i386; Wenn alles funktioniert hat, laufen viele Meldungen über den Bildschirm und schließlich erscheint ein Anmeldeprompt. Um sich die Meldungen anzusehen. drücken Sie die Taste Scroll-Lock. Sie können dann mit den Tasten PgUp und PgDn blättern. Wenn Sie erneut Scroll-Lock drücken, kehren Sie zum Anmeldeprompt zurück. Es kann sein, dass der Puffer zu klein ist, um alle Meldungen anzuzeigen. Nachdem Sie sich angemeldet haben, können Sie sich mit dem Kommando dmesg alle Meldungen ansehen. Melden Sie sich bitte mit dem Benutzerkonto an (rpratt im Beispiel), das Sie während der Installation eingerichtet haben. Arbeiten Sie mit root nur dann wenn es erforderlich ist. Die nachfolgende Abbildung zeigt typische Startmeldungen (Versionsangaben entfernt): Copyright (c) 1992-2002 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. Timecounter "i8254" frequency 1193182 Hz CPU: AMD-K6(tm) 3D processor (300.68-MHz 586-class CPU) Origin = "AuthenticAMD" Id = 0x580 Stepping = 0 Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX> AMD Features=0x80000800<SYSCALL,3DNow!> real memory = 268435456 (262144K bytes) config> di sn0 config> di lnc0 config> di le0 config> di ie0 config> di fe0 config> di cs0 config> di bt0 config> di aic0 config> di aha0 config> di adv0 config> q avail memory = 256311296 (250304K bytes) Preloaded elf kernel "kernel" at 0xc0491000. Preloaded userconfig_script "/boot/kernel.conf" at 0xc049109c. md0: Malloc disk Using $PIR table, 4 entries at 0xc00fde60 npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 pcib1: <VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 pci1: <Matrox MGA G200 AGP graphics accelerator> at 0.0 irq 11 isab0: <VIA 82C586 PCI-ISA bridge> at device 7.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <VIA 82C586 ATA33 controller> port 0xe000-0xe00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 7.2 on pci0 usb0: <VIA 83C572 USB controller> on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered chip1: <VIA 82C586B ACPI interface> at device 7.3 on pci0 ed0: <NE2000 PCI Ethernet (RealTek 8029)> port 0xe800-0xe81f irq 9 at device 10.0 on pci0 ed0: address 52:54:05:de:73:1b, type NE2000 (16 bit) isa0: too many dependant configs (8) isa0: unexpected small tag 14 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <keyboard controller (i8042)> at port 0x60-0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model Generic PS/2 mouse, device ID 0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: <System console> at flags 0x1 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/15 bytes threshold ppbus0: IEEE1284 device found /NIBBLE Probing for PnP devices on ppbus0: plip0: <PLIP network interface> on ppbus0 lpt0: <Printer> on ppbus0 lpt0: Interrupt-driven port ppi0: <Parallel I/O> on ppbus0 ad0: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata0-master using UDMA33 ad2: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata1-master using UDMA33 acd0: CDROM <DELTA OTC-H101/ST3 F/W by OIPD> at ata0-slave using PIO4 Mounting root from ufs:/dev/ad0s1a swapon: adding /dev/ad0s1b as swap device Automatic boot in progress... /dev/ad0s1a: FILESYSTEM CLEAN; SKIPPING CHECKS /dev/ad0s1a: clean, 48752 free (552 frags, 6025 blocks, 0.9% fragmentation) /dev/ad0s1f: FILESYSTEM CLEAN; SKIPPING CHECKS /dev/ad0s1f: clean, 128997 free (21 frags, 16122 blocks, 0.0% fragmentation) /dev/ad0s1g: FILESYSTEM CLEAN; SKIPPING CHECKS /dev/ad0s1g: clean, 3036299 free (43175 frags, 374073 blocks, 1.3% fragmentation) /dev/ad0s1e: filesystem CLEAN; SKIPPING CHECKS /dev/ad0s1e: clean, 128193 free (17 frags, 16022 blocks, 0.0% fragmentation) Doing initial network setup: hostname. ed0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255 inet6 fe80::5054::5ff::fede:731b%ed0 prefixlen 64 tentative scopeid 0x1 ether 52:54:05:de:73:1b lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8 inet6 ::1 prefixlen 128 inet 127.0.0.1 netmask 0xff000000 Additional routing options: IP gateway=YES TCP keepalive=YES routing daemons:. additional daemons: syslogd. Doing additional network setup:. Starting final network daemons: creating ssh RSA host key Generating public/private rsa1 key pair. Your identification has been saved in /etc/ssh/ssh_host_key. Your public key has been saved in /etc/ssh/ssh_host_key.pub. The key fingerprint is: cd:76:89:16:69:0e:d0:6e:f8:66:d0:07:26:3c:7e:2d root@k6-2.example.com creating ssh DSA host key Generating public/private dsa key pair. Your identification has been saved in /etc/ssh/ssh_host_dsa_key. Your public key has been saved in /etc/ssh/ssh_host_dsa_key.pub. The key fingerprint is: f9:a1:a9:47:c4:ad:f9:8d:52:b8:b8:ff:8c:ad:2d:e6 root@k6-2.example.com. setting ELF ldconfig path: /usr/lib /usr/lib/compat /usr/X11R6/lib /usr/local/lib a.out ldconfig path: /usr/lib/aout /usr/lib/compat/aout /usr/X11R6/lib/aout starting standard daemons: inetd cron sshd usbd sendmail. Initial rc.i386 initialization:. rc.i386 configuring syscons: blank_time screensaver moused. Additional ABI support: linux. Local package initialization:. Additional TCP options:. FreeBSD/i386 (k6-2.example.com) (ttyv0) login: rpratt Password: Das Erzeugen der RSA- und DSA-Schlüssel kann auf langsamen Maschinen lange dauern. Die Schlüssel werden nur beim ersten Neustart erzeugt, spätere Neustarts sind schneller. Wenn der X-Server konfiguriert ist und eine Oberfläche ausgewählt wurde, können Sie X mit dem Kommando startx starten. Start von &os; auf einer Alpha Alpha Nach der Installation können Sie &os; von der SRM-Eingabeaufforderung mit einem Befehl wie dem folgenden starten: >>>BOOT DKC0 Der Befehl weist die Firmware an, von dem angegebenen Laufwerk zu starten. Damit &os; künftig automatisch startet, geben Sie die folgenden Befehle ein: >>> SET BOOT_OSFLAGS A >>> SET BOOT_FILE '' >>> SET BOOTDEF_DEV DKC0 >>> SET AUTO_ACTION BOOT Beim Start von &os; erscheinen ähnliche Meldungen, wie beim Start von &os; auf einem &i386;-System. &os; herunterfahren Es ist wichtig, dass Sie das Betriebssystem richtig herunterfahren. Wechseln Sie zunächst mit dem Befehl su zum Superuser; Sie müssen dazu das root-Passwort eingeben. Der Wechsel auf den Superuser gelingt nur, wenn der Benutzer ein Mitglied der Gruppe wheel ist. Ansonsten melden Sie sich direkt als Benutzer root an. Der Befehl shutdown -h now hält das System an. The operating system has halted. Please press any key to reboot. Sie können den Rechner ausschalten, nachdem die Meldung Please press any key to reboot erschienen ist. Wenn Sie stattdessen eine Taste drücken, startet das System erneut. Sie können das System auch mit der Tastenkombination Ctrl Alt Del neu starten. Sie sollten diese Tastenkombination allerdings nicht gewohnheitsmäßig benutzen.
Fehlersuche Installation Fehlersuche Dieser Abschnitt behandelt häufig auftretende Installationsprobleme. Weiterhin enthält er Hinweise wie &os; parallel mit &ms-dos; betrieben wird. Wenn etwas schief geht Aufgrund der Beschränkungen der PC-Architektur ist eine zuverlässige Geräteerkennung nicht möglich. Falls die Geräteerkennung fehlschlägt, können Sie einige Dinge versuchen. Prüfen Sie in den Hardware-Notes Ihrer &os;-Version, dass die Hardware lauffähig ist. Wenn Ihre Hardware unterstützt wird und sich der Installationsprozess aufhängt oder sonstige Probleme auftauchen, starten Sie den Rechner neu. Im Kernelkonfigurationsmenü können Sie Ihre Hardware einstellen. Der Kernel auf den Startdisketten verwendet die Werkseinstellungen für IRQs, IO-Adressen und DMA-Kanäle. Geänderte Einstellungen müssen Sie im Kernelkonfigurationsmenü eingeben, damit &os; die Geräte erkennt. Es ist auch möglich, dass die Suche nach einem nicht vorhandenen Gerät dazu führt, dass die Erkennung eines vorhandenen Geräts fehlschlägt. In diesem Fall sollten Sie nicht vorhandene Geräte, deren Einstellungen sich mit vorhandenen Geräten überschneiden, deaktivieren. Einige Installationsprobleme können Sie vermeiden oder umgehen, indem Sie die Firmware der Hardware, insbesondere die Firmware der Systemplatine, aktualisieren. Die Firmware der Systemplatine ist das BIOS. Die meisten Hardware-Hersteller bieten aktuelle Firmware und Anleitungen zur Aktualisierung der Firmware auf dem Internet an. Viele Hersteller raten davon ab, ohne guten Grund das BIOS zu aktualisieren. Die Aktualisierung kann fehlschlagen und den BIOS-Chip dauerhaft beschädigen. Deaktivieren Sie keine Treiber, die während der Installation benötigt werden (beispielsweise den Bildschirmtreiber sc0). Wenn die Installation aus unerklärlichen Gründen nach Verlassen des Kernelkonfigurationsmenüs fehlschlägt, haben Sie vielleicht eine Einstellung geändert oder entfernt, die Sie in Ruhe lassen sollten. Versuchen Sie es nach einem Neustart nochmal. Im Kernelkonfigurationsmenü können Sie die im Kernel enthaltenen Treiber ansehen, Treiber für nicht vorhandene Hardware deaktivieren, die IRQs, DRQs und IO-Adressen eines Treibers ändern. Nachdem Sie die Hardwareeinstellungen in den Kernel konfiguriert haben, drücken Sie Q, um den Installationsprozess mit den neuen Einstellungen zu starten. Nach der Installation sind die Einstellungen weiterhin wirksam und müssen daher nicht bei jedem Neustart vorgenommen werden. Wahrscheinlich wollen Sie einen angepassten Kernel erstellen. Vorhandene &ms-dos;-Partitionen bearbeiten Partitionen &ms-dos; Viele Benutzer wollen &os; auf PCs installieren, auf denen sich schon ein µsoft;-Betriebssystem befindet. Bei diesem Vorhaben unterstützt das Werkzeug FIPS. Das Werkzeug befindet sich auf der Installations-CD-ROM im Verzeichnis tools oder kann von den &os;-Spiegeln heruntergeladen werden. Das Werkzeug FIPS teilt eine bestehende &ms-dos;-Partition auf. Der erste Teil enthält die Daten der alten Partition, der zweite Teil steht für die Installation von &os; zur Verfügung. Vorher muss die &ms-dos;-Partition defragmentiert werden. Klicken Sie im Explorer mit der rechten Maustaste das Laufwerk an und wählen Sie Defragmentieren aus. Alternativ können Sie die Norton Disk Tools benutzen. Nachdem das Laufwerk defragmentiert ist, können Sie FIPS aufrufen. Folgen Sie einfach den Anweisungen des Werkzeugs. Nach einem Neustart können Sie &os; in die freie Slice installieren. Den Platzbedarf der Installation können Sie im Menü Distributions von sysinstall abschätzen. Von PowerQuest stammt das nützliche Werkzeug &partitionmagic;. Diese Anwendung bietet weit mehr Funktionen als FIPS. Benutzen Sie &partitionmagic;, wenn Sie die verwendeten Betriebssysteme oft wechseln wollen. Das Produkt kostet allerdings Geld; wenn Sie &os; installieren und beibehalten wollen, ist wahrscheinlich FIPS das Richtige für Sie. &ms-dos;- und &windows;-Dateisysteme benutzen Mit Double Space™ komprimierte Dateisysteme werden zurzeit von &os; nicht unterstützt. Damit &os; auf die Daten zugreifen kann, müssen Sie das Dateisystem daher dekomprimieren. Rufen Sie dazu den Compression Agent aus dem Menü Start > Programs > System Tools auf. Unter &os; hängen Sie &ms-dos;-Dateisysteme mit dem Kommando &man.mount.msdosfs.8; ein. Dazu ein Beispiel: &prompt.root; mount_msdosfs /dev/ad0s1 /mnt Das &ms-dos;-Dateisystem befindet sich hier auf der ersten Partition der primären Platte. Dies kann bei Ihnen anders sein. Die Anordnung der Partitionen entnehmen Sie den Ausgaben von dmesg und mount. Erweiterte &ms-dos;-Partitionen werden für gewöhnlich hinter die &os;-Partitionen gelegt: Die Nummern der von &ms-dos; benutzten Slices ist höher als die der Slices von &os;. Beispielsweise kann /dev/ad0s1 die erste &ms-dos; Partition sein, /dev/ad0s2 die &os;-Partition sein und /dev/ad0s3 eine erweiterte &ms-dos;-Partition. Einige Anfänger verwirrt diese Situation zunächst. Analog werden NTFS-Partitionen mit dem Kommando &man.mount.ntfs.8; eingehangen. Fragen und Antworten für Alpha-Benutzer Alpha Dieser Abschnitt beantwortet häufig gestellte Fragen zur &os;-Installation auf Alpha-Systemen. Kann ich &os; von der ARC- oder Alpha-BIOS-Konsole starten? ARC Alpha-BIOS SRM Nein, wie Compaq Tru64 und VMS startet &os; nur von der SRM-Konsole. Hilfe, ich habe keinen Platz! Muss ich zuerst alles löschen? Leider ja. Kann ich Compaq Tru64- oder VMS-Dateisysteme einhängen? Zurzeit nicht. Valentino Vaschetto Beigetragen von Anspruchsvollere Installationen Dieser Abschnitt beschreibt die Installation von &os; in besonderen Situationen. &os; auf einem System ohne Monitor oder Tastatur installieren Installation headless (serielle Konsole) serielle Konsole Diese Methode wird als headless install (kopflose Installation) bezeichnet, da die Maschine, auf die &os; installiert werden soll, entweder keinen Monitor angeschlossen hat oder über keine VGA-Karte verfügt. Wie kann &os; dennoch installiert werden? Eben mithilfe einer seriellen Konsole. Im Wesentlichen ist eine serielle Konsole eine andere Maschine, die Ein- und Ausgaben für eine andere Maschine bereitstellt. Um über eine serielle Konsole zu installieren, erstellen Sie zunächst die Startdisketten, wie in beschrieben. Damit ein Systemstart mit der seriellen Konsole möglich ist, müssen die Disketten entsprechend der nachstehenden Anleitung angepasst werden: Die Startdisketten für eine serielle Konsole anpassen mount Wenn Sie ein System mit den frisch erstellten Disketten starten, läuft der normale &os;-Installationsprozess an. Diese Installation soll aber über die serielle Konsole gesteuert werden. Hängen Sie mit dem Kommando &man.mount.8; die Diskette kern.flp ein: &prompt.root; mount /dev/fd0 /mnt Wechseln Sie in das Verzeichnis /mnt: &prompt.root; cd /mnt In diesem Verzeichnis können Sie den Start über eine serielle Konsole einstellen. Erstellen Sie die Datei boot.config mit dem Inhalt /boot/loader -h. Diese Zeile weist den Bootloader an, mit der seriellen Konsole zu starten. &prompt.root; echo "/boot/loader -h" > boot.config Nachdem Sie die Diskette angepasst haben, hängen Sie die Diskette mit dem Kommando &man.umount.8; wieder aus: &prompt.root; cd / &prompt.root; umount /mnt Sie können die Diskette nun aus dem Laufwerk entfernen. Das Nullmodemkabel anschließen Nullmodemkabel Sie müssen beide Maschinen mit einem Nullmodemkabel verbinden. Schließen Sie das Nullmodemkabel an die seriellen Schnittstellen beider Maschinen an. Sie können kein direktes serielles Kabel verwenden, Nullmodemkabel besitzen gekreuzte Leitungen. Die Installation starten Sie können die Installation jetzt starten. Legen Sie die kern.flp-Diskette in das Laufwerk der Maschine ein, auf der Sie &os; installieren wollen. Schalten Sie anschließend die Maschine ein. Die Verbindung mit der zur installierenden Maschine herstellen cu Mit dem Kommando &man.cu.1; verbinden Sie sich mit der zu installierenden Maschine: &prompt.root; cu -l /dev/cuaa0 Fertig! Über die cu-Sitzung können Sie nun die zu installierende Maschine steuern. Sie erhalten die Aufforderung die Diskette mfsroot.flp einzulegen. Anschließend legen Sie den Terminaltyp fest. Wählen Sie die FreeBSD color console aus und fahren wie gewohnt mit der Installation fort. Eigene Installationsmedien herstellen Im Folgenden ist mit Installations-CD eine CD-ROM oder DVD gemeint, die Sie gekauft oder selbst hergestellt haben. Oft müssen Sie eigene Installationsmedien erzeugen. Dies können physische Medien wie Bänder sein oder Installationsquellen sein, aus denen sysinstall Dateien herunterlädt, beispielsweise ein lokaler FTP-Server oder eine &ms-dos;-Partition. Beispiele: Im lokalen Netzwerk befinden sich viele Maschinen, Sie besitzen allerdings nur eine Installations-CD. Den Inhalt der Installations-CD wollen Sie auf einem lokalem FTP-Server bereitstellen. Zur Installation wird der lokale FTP-Server anstelle eines Internet-Servers benutzt. Sie haben eine Installations-CD, allerdings erkennt &os; im Gegensatz zu &ms-dos;/&windows; das CD- oder DVD-Laufwerk nicht. Sie können die Installationsdateien auf eine DOS-Partition desselben Rechners kopieren und &os; von der DOS-Partition installieren. Der Rechner, auf dem Sie &os; installieren wollen, besitzt kein CD- oder DVD-Laufwerk. Ein anderer Rechner, zu dem eine serielle oder parallele Verbindung besteht, besitzt allerdings ein CD- oder DVD-Laufwerk. Sie wollen ein Band erzeugen, mit dem Sie &os; installieren können. Eine Installations-CD-ROM erzeugen Mit jeder Release stellt das &os;-Project zwei CD-Abbilder (ISO-Images) zur Verfügung. Wenn Sie einen CD-Brenner besitzen, können Sie diese Abbilder brennen und damit &os; installieren. Wenn Sie einen CD-Brenner besitzen und über eine gute Internet-Verbindung verfügen, ist das die preiswerteste Art, &os; zu installieren. Das richtige Abbild herunterladen Die ISO-Abbilder für jedes Releases können Sie von ftp://ftp.FreeBSD.org/pub/FreeBSD/ISO-IMAGES-arch/version oder einem nahe gelegenen Spiegel herunterladen. Ersetzen Sie arch und version durch passende Werte. Das Verzeichnis enthält die folgenden Abbilder: &os; 4.<replaceable>X</replaceable>-ISO-Abbilder Dateiname Inhalt Version-RELEASE-Architektur-miniinst.iso Enthält alles, was Sie für eine &os;-Installation benötigen. Version-RELEASE-Architektur-disc1.iso Enthält alles, was Sie für eine &os;-Installation benötigen. Das Medium enthält zusätzlich so viel Software Dritter wie möglich. Version-disc2.iso Ein Live-Dateisystem, das von sysinstall aus zur Reparatur eines Systems eingesetzt wird. Enthält weiterhin eine Kopie des &os;-CVS-Baums und zusätzlich so viel Software Dritter wie möglich.
FreeBSD 5.<replaceable>X</replaceable> sowie 6.<replaceable>X</replaceable>-ISO-Abbilder Dateiname Inhalt Version-RELEASE-Architektur-bootonly.iso Enthält alles, was Sie benötigen, um um den FreeBSD-Kernel zu laden und die Installationsoberfläche zu starten. Die zu installierenden Dateien müssen über FTP oder eine andere geeignete Quelle bezogen werden. version-RELEASE-Architektur-disc1.iso Alles, was Sie für die Installation von FreeBSD benötigen. Zusätzlich ist ein Live-Dateisystem enthalten, das gemeinsam mit der Repair-Funktion von sysinstall verwendet werden kann. version-RELEASE-Architektur-disc2.iso Die &os;-Dokumentation und so viele Pakete Dritter, wie auf dem Installationsmedium Platz hatten.
Sie benötigen nur eines der beiden Abbilder mini.iso (falls es für Ihre &os;-Version verfügbar ist) oder disc1.iso. Laden Sie bitte nicht beide Abbilder herunter, das disc1.iso-Abbild enthält alles, was das mini.iso-Abbild enthält. Benutzen Sie das miniinst.iso-Abbild, wenn Sie eine preiswerte Internet-Anbindung besitzen. Mit diesem Abbild können Sie &os; installieren. Software Dritter können Sie anschließend mithilfe des Ports-Systems () herunterladen. Benutzen Sie das disc1.iso-Abbild, wenn Sie &os; installieren wollen und das Installationsmedium eine angemessene Auswahl an Software Dritter enthalten soll. Die zusätzlichen Abbilder sind nützlich aber nicht notwendig, insbesondere wenn Sie eine schnelle Internet-Verbindung besitzen.
Die CDs brennen Sie müssen die Abbilder auf eine CD brennen. Das Brennen von CDs unter &os; wird in erläutert (sehen Sie sich insbesondere und an). Wenn Sie die CDs unter einem anderen Betriebssystem erstellen, benutzen Sie die entsprechenden Werkzeuge des Betriebssystems. Die Abbilder sind Standard-ISO-Abbilder und können von vielen Brennprogrammen verarbeitet werden.
Wenn Sie eine angepasste Version von FreeBSD erstellen wollen, sollten Sie den Release Engineering Article lesen.
Einen lokalen FTP-Server einrichten Installation Netzwerkinstallation FTP Die Dateien auf der Installations-CD sind genauso angeordnet wie auf den &os;-FTP-Servern. Daher ist es einfach, einen lokalen FTP-Server für die &os;-Installation über ein Netzwerk einzurichten. Hängen Sie auf dem FTP-Server die CD-ROM in das Verzeichnis /cdrom ein: &prompt.root; mount /cdrom Legen Sie ein Konto für Anonymous-FTP an. Dazu editieren Sie die Datei /etc/passwd mit dem Kommando &man.vipw.8; und fügen die nachstehende Zeile hinzu: ftp:*:99:99::0:0:FTP:/cdrom:/nonexistent Stellen Sie sicher, dass der FTP-Dienst in der Datei /etc/inetd.conf aktiviert ist. Jeder, der Ihren Rechner über das Netzwerk erreicht, kann nun &os; über FTP installieren. In sysinstall wird dazu FTP als Installationsmedium wählt. Der FTP-Server wird durch die Auswahl Other (andere als die vorgegebenen Server) und anschließende Eingabe von ftp://Ihr Rechner festgelegt. Wenn die Version der für die FTP-Installation Ihrer Clients verwendeten Bootmedien (normalerweise Disketten) nicht exakt der von Ihnen auf Ihrem lokalen FTP-Server angebotenen Version entspricht, ist sysinstall nicht in der Lage, die Installation abzuschließen. Sind die Versionsnummern unterschiedlich, können Sie durch das Aufrufen des Punktes Options sysinstall dazu zwingen, die Installation dennoch abzuschließen. Dazu setzen Sie den Namen der Distribution auf any. Diese Vorgehensweise ist in Ihrem lokalen Netzwerk, das durch eine Firewall geschützt ist, völlig in Ordnung. Wenn Sie FTP für Rechner auf dem Internet (und nicht für lokale Rechner) anbieten, zieht Ihr Server die Aufmerksamkeit von Crackern und andere Unannehmlichkeiten auf sich. Achten Sie in diesem Fall darauf, dass Sie gute Sicherheitsverfahren anwenden. Installationsdisketten erstellen Installation Disketten Wenn Sie, was wir nicht empfehlen, von Disketten installieren müssen, weil Disketten das einzig unterstützte Installationsmedium sind oder Sie es sich einfach schwer machen wollen, müssen Sie zunächst einige Disketten vorbereiten. Sie müssen mindestens den Inhalt des Verzeichnisses bin auf 1.44 MB oder 1.2 MB Disketten kopieren. Wenn Sie die Disketten unter &ms-dos; erstellen, müssen Sie die Disketten mit dem DOS-Kommando format formatieren. Unter &windows; können Sie Disketten mithilfe des Explorers formatieren (klicken Sie mit der rechten Maustaste auf das A:-Laufwerk und wählen Sie Format aus). Vertrauen Sie vorformatierten Disketten nicht; formatieren Sie die Disketten zur Sicherheit immer selbst. In der Vergangenheit waren vorformatierte Disketten der Verursacher vieler Probleme. Falls Sie die Disketten auf einer &os;-Maschine erstellen, sollten Sie immer noch formatieren. Allerdings brauchen Sie kein DOS-Dateisystem auf den Disketten anzulegen. Mit den Kommandos bsdlabel und newfs können Sie das Dateisystem UFS verwenden, wie im nachstehenden Beispiel für 3.5" 1.44 MB Disketten gezeigt: &prompt.root; fdformat -f 1440 fd0.1440 &prompt.root; bsdlabel -w fd0.1440 floppy3 &prompt.root; newfs -t 2 -u 18 -l 1 -i 65536 /dev/fd0 Für 5.25" 1.2 MB Disketten benutzen Sie das Gerät fd0.1200. Anschließend können Sie die Disketten wie ein normales Dateisystem einhängen und beschreiben. Nachdem Sie die Disketten formatiert haben, kopieren Sie die Dateien der Distribution auf die Disketten. Die Dateien der Distribution sind in Stücke geteilt, sodass fünf Dateien auf eine 1.44 MB Diskette passen. Kopieren Sie die gewünschten Distribution auf Disketten, wobei Sie so viele Dateien wie möglich auf eine Diskette kopieren. Jede Distribution wird auf der Diskette in einem eigenen Verzeichnis abgelegt, beispielsweise a:\bin\bin.aa, a:\bin\bin.ab. Im Installationsprozess wählen Sie als Installationsmedium Floppy aus. Folgen Sie dann den gegebenen Anweisungen. Von einer &ms-dos;-Partition installieren Installation von einer &ms-dos;-Partition Um eine Installation von einer &ms-dos;-Partition vorzubereiten, kopieren Sie Dateien der Distributionen in das Verzeichnis freebsd direkt unterhalb des Wurzelverzeichnisses (zum Beispiel c:\freebsd). In diesem Verzeichnis muss sich dieselbe Verzeichnisstruktur wie auf dem Installationsmedium befinden. Wenn Sie die Dateien von einer Installations-CD kopieren, empfehlen wir den DOS-Befehl xcopy. Das nachstehende Beispiel bereitet eine minimale Installation von &os; vor: C:\> md c:\freebsd C:\> xcopy e:\bin c:\freebsd\bin\ /s C:\> xcopy e:\manpages c:\freebsd\manpages\ /s Im Beispiel wurde angenommen, dass auf Laufwerk C: ausreichend Platz vorhanden ist und die CD-ROM Laufwerk E: ist. Wenn Sie kein CD-Laufwerk besitzen, können Sie die Distributionen von ftp.FreeBSD.org herunterladen. Jede Distribution liegt in einem eigenen Verzeichnis. Beispielsweise liegt die Base-Distribution im Verzeichnis &rel.current;/base/. Kopieren Sie jede Distribution, die Sie von einer &ms-dos;-Partition installieren wollen (und für die Platz ist) in das Verzeichnis c:\freebsd. Für eine minimale Installation benötigen Sie nur die Base-Distribution. Ein Installationsband erstellen Installation von einem QIC/SCSI-Band Falls Sie nicht über FTP oder von einer CD-ROM installieren können, ist die Installation von Band wahrscheinlich die einfachste Methode. Das Installationsprogramm erwartet, dass sich die Distributionen im tar-Format auf dem Band befinden. Von den Distributions-Dateien erstellen Sie das Installationsband einfach mit dem Kommando tar: &prompt.root; cd /freebsd/distdir &prompt.root; tar cvf /dev/rwt0 dist1 ... dist2 Stellen Sie während der Installation sicher, dass Sie über genügend freien Platz in einem temporären Verzeichnis (das Sie festlegen können) verfügen. Das temporäre Verzeichnis muss den gesamten Inhalt des Bands aufnehmen können. Da auf Bänder nicht wahlfrei zugegriffen werden kann, benötigt diese Installationsmethode temporär sehr viel Platz. Das Band muss sich vor dem Neustart mit der Startdiskette im Laufwerk befinden. Ansonsten wird das Band während der Geräteerkennung vielleicht nicht erkannt. Eine Netzwerkinstallation vorbereiten Installation Netzwerkinstallation seriell (SLIP oder PPP) Installation Netzwerkinstallation parallel (PLIP) Installation Netzwerkinstallation Ethernet Sie können drei Verbindungsarten für eine Netzwerkinstallation benutzen: Eine serielle Verbindung (SLIP oder PPP), eine parallele Verbindung (PLIP, Laplink-Kabel) oder eine Ethernet-Verbindung (mit Standard-Netzwerkkarten einschließlich PCMCIA-Karten). Die SLIP-Unterstützung ist recht einfach und auf feste Verbindungen, beispielsweise ein serielles Kabel zwischen einem Laptop und einem anderen Rechner, beschränkt. Die Verbindung muss fest sein, da die Installation mit SLIP keine Einwahl unterstützt. Eine Einwahl ist mit PPP möglich, das Sie, wenn möglich, gegenüber SLIP bevorzugen sollten. Wenn Sie ein Modem benutzen, ist PPP ziemlich sicher die einzige Wahl. Stellen Sie sicher, dass Sie die Daten Ihres Service Providers bereitliegen haben, da Sie während der Installation die Daten früh benötigen. Wenn Sie PAP oder CHAP benutzen, um sich mit Ihrem ISP zu verbinden (wenn Sie unter &windows; kein Skript benötigen, um die Verbindung herzustellen), brauchen Sie an der ppp-Eingabeaufforderung nur das Kommando dial abzusetzen. Ansonsten müssen Sie sich mit Modem-spezifischen AT-Kommandos bei Ihrem ISP einwählen (PPP stellt nur einen einfachen Terminal-Emulator zur Verfügung). Weiteres über PPP erfahren Sie im Abschnitt User-PPP des Handbuchs und im PPP-Abschnitt der FAQ. Bei Problemen können Sie mit dem Kommando set log local Meldungen auf den Bildschirm umleiten. Wenn eine feste Verbindung zu einer anderen &os;-Maschine besteht (2.0 Release oder neuer), sollten Sie ein paralleles Laplink-Kabel in Betracht ziehen. Über eine parallele Verbindung sind höhrere Geschwindigkeiten als über eine serielle Verbindung (typischerweise bis zu 50 kByte/s) möglich. Daher ist die Installation über eine parallele Verbindung schneller als eine Installation über eine serielle Verbindung. Die schnellste Netzwerkinstallation ist natürlich mit einer Netzwerkkarte möglich. &os; unterstützt die meisten der üblichen Netzwerkkarten. Eine Liste der unterstützten Netzwerkkarten ist in den Hardware-Notes jedes Releases enthalten. Wenn Sie eine unterstützte PCMCIA-Netzwerkkarte benutzen, stellen Sie sicher, dass die Karte eingesteckt ist, bevor der Laptop eingeschaltet wird. Leider unterstützt &os; das Einstecken von PCMCIA-Karten während der Installation noch nicht. Für eine Netzwerkinstallation müssen Sie Ihre IP-Adresse, die Netzwerkmaske und den Namen Ihres Rechner kennen. Wenn Sie über eine PPP-Verbindung installieren und keine feste IP-Adresse besitzen, braucht Sie der vorgehende Satz nicht zu beunruhigen. Sie können eine IP-Adresse dynamisch von Ihrem ISP beziehen. Fragen Sie Ihren Systemadministrator nach den richtigen Netzwerkeinstellungen. Wenn Sie andere Rechner über Namen anstatt über IP-Adressen erreichen wollen, brauchen Sie zudem einen Nameserver und möglicherweise die Adresse eines Gateways (mit PPP ist das die Adresse des ISPs), über den Sie den Nameserver erreichen. Wenn Sie von einem FTP-Server über einen HTTP-Proxy installieren wollen, benötigen Sie außerdem noch die Adresse des Proxy-Servers. Wenn Sie nicht alle oder zumindest die meisten der benötigten Daten kennen, sollten Sie wirklich vor der Installation mit Ihrem Systemadministrator oder ISP reden! Eine NFS-Installation vorbereiten Installation Netzwerkinstallation NFS Eine NFS-Installation ist unkompliziert. Kopieren Sie einfach die Distributionen auf einen NFS-Server und wählen Sie NFS als Installationsmedium aus. Wenn der NFS-Server nur Verbindungen über privilegierte Ports (Ports kleiner 1024) annimmt, setzen Sie vor der Installation die Option NFS Secure im Menü Options. Wenn Sie eine schlechte Netzwerkkarte besitzen, die sehr langsam ist, wählen Sie die Option NFS Slow. Damit die NFS-Installation funktioniert, muss der NFS-Server auch Unterverzeichnisse von exportierten Verzeichnissen zum Einhängen freigeben. Wenn beispielsweise die Distribution von &os; &rel.current; unter ziggy:/usr/archive/stuff/FreeBSD liegt, muss der Rechner ziggy erlauben, das Verzeichnis /usr/archive/stuff/FreeBSD einzuhängen. Es reicht nicht, dass ziggy erlaubt das Verzeichnis /usr oder /usr/archive/stuff einzuhängen. Unter &os; werden diese Freigaben in der Datei /etc/exports mit der Option eingestellt. Die nötigen Einstellungen können auf einem anderen NFS-Server unterschiedlich sein. Wenn Sie vom NFS-Server die Fehlermeldung permission denied erhalten, dann haben Sie wahrscheinlich die Freigaben nicht richtig konfiguriert.
diff --git a/de_DE.ISO8859-1/books/handbook/jails/chapter.sgml b/de_DE.ISO8859-1/books/handbook/jails/chapter.sgml index 9da2c704ca..172249d244 100644 --- a/de_DE.ISO8859-1/books/handbook/jails/chapter.sgml +++ b/de_DE.ISO8859-1/books/handbook/jails/chapter.sgml @@ -1,31 +1,31 @@ Jails (noch nicht übersetzt) Dieses Kapitel ist noch nicht übersetzt. Lesen Sie bitte das Original in englischer Sprache. Wenn Sie helfen wollen, dieses Kapitel zu übersetzen, senden Sie bitte eine E-Mail an die Mailingliste &a.de.translators;. diff --git a/de_DE.ISO8859-1/books/handbook/l10n/chapter.sgml b/de_DE.ISO8859-1/books/handbook/l10n/chapter.sgml index 80083d4f0a..311a2c8b36 100644 --- a/de_DE.ISO8859-1/books/handbook/l10n/chapter.sgml +++ b/de_DE.ISO8859-1/books/handbook/l10n/chapter.sgml @@ -1,1036 +1,1036 @@ Andrey Chernov Beigesteuert von Michael C. Wu Überarbeitet von Alexander Langer Übersetzt von Martin Heinen Lokalisierung – I18N/L10N einrichten und benutzen Übersicht FreeBSD ist ein über die ganze Welt verteiltes Projekt. Dieses Kapitel behandelt die Internationalisierung und Lokalisierung von FreeBSD, mit denen nicht englisch sprechende Benutzer FreeBSD an ihre Bedürfnisse anpassen können. Die Internationalisierung betrifft sowohl die System- als auch die Anwendungsebene, daher wird im Laufe des Texts auf genauere Anwendungsdokumentationen verwiesen. Nachdem Sie dieses Kapitel durchgearbeitet haben, werden Sie wissen wie verschiedene Sprachen und Lokalisierungen in modernen Betriebssystemen codiert werden, wie Sie die Locale Ihrer Login-Shell setzen, wie Sie die Konsole für nicht-englische Sprachen konfigurieren, wie Sie das X Window System mit verschiedenen Sprachen benutzen, wo Sie mehr Informationen über das Erstellen von I18N-konformen Anwendungen erhalten. Bevor Sie dieses Kapitel lesen, sollten Sie wissen, wie Sie zusätzliche Anwendungen installieren (). Grundlagen Was ist I18N/L10N? Internationalisierung Lokalisierung Lokalisierung Entwickler kürzen das Wort internationalization (englisch für Internationalisierung) mit I18N ab, weil sich zwischen dem ersten und letzten Buchstaben des Worts 18 Buchstaben befinden. L10N benutzt die gleiche Namensgebung und ist eine Abkürzung des Worts localization (englisch für Lokalisierung). Mit I18N/L10N-Methoden, -Protokollen und -Anwendungen können Benutzer eine Sprache ihrer Wahl verwenden. I18N-Anwendungen werden mit Hilfe von I18N-Bibliotheken programmiert. Diese erlauben es Entwicklern, eine einfache Sprachdatei zu schreiben und Menüs und Texte an jede Sprache anzupassen. Wir möchten Programmierern empfehlen, für ihre eigenen Anwendungen auf diese Techniken zurückzugreifen. Wieso soll ich I18N/L10N benutzen? I18N/L10N wird immer dann benutzt, wenn Sie Daten in anderen Sprachen als Englisch anzeigen, eingeben oder verarbeiten möchten. Welche Sprachen werden von I18N unterstützt? I18N und L10N sind nichts FreeBSD spezifisches. Momentan können Sie unter den meisten der verbreitetsten Sprachen der Welt wählen, unter anderen Chinesisch, Japanisch, Koreanisch, Französisch, Russisch und Deutsch. Lokale Anpassungen benutzen In seiner ganzen Schönheit ist L10N nichts, was auf FreeBSD alleine beschränkt ist, im Gegenteil, es ist eine Konvention, an die sich viele Programme für verschiedene Betriebssysteme halten. Wir möchten Sie anregen, FreeBSD bei der Unterstützung dieser Konvention zu helfen. Locale Lokale Anpassungen werden durch die Angabe von drei Werten erreicht: dem Sprachcode, dem Ländercode und der Codierung. Die Zusammenfassung dieser Werte wird Locale genannt und sieht wie folgt aus: Sprachcode_Ländercode.Codierung Sprach- und Ländercodes Sprachcodes Ländercodes Um FreeBSD (oder ein anderes &unix; System, das I18N unterstützt) an lokale Gegebenheiten und Sprachen anzupassen, muss der Benutzer herausfinden, welche Codes für sein Land und seine Sprache benutzt werden. Ländercodes geben den Anwendungen dabei vor, welche Variation einer bestimmten Sprache zu benutzen ist. Eine Variation von Deutsch wäre zum Beispiel de_CH, das eine lokale Anpassung an das in der Schweiz gesprochene Deutsch meint. Außerdem benutzen Webbrowser, SMTP/POP Server, Webserver usw. diese, um Entscheidungen über die Sprache zu fällen. Im Folgenden sind einige Beispiele für Sprach- und Ländercodes aufgelistet: Sprachcode/Ländercode Beschreibung en_US Englisch - USA ru_RU Russisch für Russland zh_TW Traditionelles Chinesisch für Taiwan Codierungen Codierungen ASCII Einige Sprachen benutzen Codierungen, die nicht dem 7-Bit breitem ASCII-Standard entsprechen, wie 8-Bit Codierungen, Wide- oder Multibyte Zeichen (&man.multibyte.3; geht darauf näher ein). Ältere Anwendungen erkennen diese Zeichen nicht und halten sie fälschlicherweise für Steuerzeichen. Neuere Anwendungen erkennen für gewöhnlich 8-Bit Zeichen. Es hängt allerdings von der Implementierung ab, ob man eine Anwendung neu kompilieren muss, um in den Genuss von lokalen Zeichensätzen zu kommen, oder ob man es sie nur nachträglich konfigurieren muss. Um es möglich zu machen, Wide- oder Multibyte-Zeichen einzugeben und zu verarbeiten, unterstützt die FreeBSD-Ports-Sammlung verschiedene Sprachen für diverse Programme. Bitte konsultieren Sie die I18N-Dokumentation des entsprechenden FreeBSD-Ports. In den meisten Fällen muss der Benutzer in die Dokumentation des Programms schauen, um herauszufinden, wie man es entsprechend für die eigene Sprache und den eigenen Zeichensatz konfiguriert, oder welche Optionen beim Übersetzen anzugeben sind. Einige Dinge, die man im Hinterkopf behalten sollte, sind: Sprachbezogene C-char Zeichensätze Mit C-char Zeichensätzen werden Zeichensätze bezeichnet, die zur Codierung den C-Datentyp char verwenden. (siehe &man.multibyte.3;), zum Beispiel ISO8859-1, ISO8859-15, KOI8-R, CP437. Wide- oder Multibyte-Codierungen, zum Beispiel EUC, Big5. Eine aktuelle Liste der Zeichensätze ist in der IANA Registry. verfügbar. Ab &os; 4.5 werden X11-kompatible Codierungen verwendet. I18N-Anwendungen Im FreeBSD-Ports- und Paket-System werden I18N-Anwendungen mit einem I18N im Namen gekennzeichnet, damit man sie leicht identifizieren kann. Trotzdem kann es vorkommen, dass die benötigte Sprache nicht immer unterstützt wird. Einstellen der Locale Zum Aktivieren der Lokalisierung reicht es, die Umgebungsvariable LANG in Ihrer Login-Shell auf den Wert der Locale zu setzen und die Variable zu exportieren. Dies geschieht normalerweise in Ihrer ~/.login_conf oder der Startdatei Ihrer Shell (~/.profile, ~/.bashrc, ~/.cshrc). Wenn LANG gesetzt ist, brauchen die speziellen Variablen wie LC_CTYPE oder LC_CTIME in der Regel nicht gesetzt zu werden. Sie sollten sprachbezogene FreeBSD-Dokumentation zu Rate ziehen, wenn Sie mehr Informationen wünschen. Setzen Sie die zwei folgenden Umgebungsvariablen in Ihren Konfigurationsdateien: POSIX LANG für Funktionen der &posix; &man.setlocale.3; Familie MIME MM_CHARSET gibt den den MIME Zeichensatz von Anwendungen an Damit ist die Locale für die Shell, jede Anwendung und X11 eingestellt. Verfahren zum Einstellen der Locale Locale Login-Klasse Es gibt zwei Wege, die Locale zu setzen, die im Folgenden beschrieben werden. Die erste und empfohlene Methode ist, die Umgebungsvariablen in der Login-Klasse zu setzen, die zweite ist, sie in den Startdateien der Shell zu setzen. Lokalisierung in der Login-Klasse Wenn Sie diese Methode verwenden, werden die Umgebungsvariablen für die Locale und den MIME Zeichensatz einmal für alle Shells, anstatt einzeln für jede Shell, gesetzt. Die Lokalisierung kann von einem Benutzer selbst oder von einem Administrator mit Superuser-Rechten für alle eingestellt werden. Einrichten als Benutzer .login_conf im Heimatverzeichnis eines Benutzers sollte mindestens die folgenden Einträge enthalten, damit beide Variablen für den Gebrauch der Latin-1 Codierung gesetzt werden: me:\ :charset=ISO-8859-1:\ :lang=de_DE.ISO8859-1: traditionelles Chinesisch BIG-5 Codierung Damit traditionelles Chinesisch (BIG-5 Codierung) verwendet werden kann, sind in .login_conf die nachstehenden Ergänzungen vorzunehmen. Einige Programme behandeln die Lokalisierung für Chinesisch, Japanisch und Koreanisch falsch, daher müssen mehr Variablen als üblich gesetzt werden: #Users who do not wish to use monetary units or time formats #of Taiwan can manually change each variable me:\ :lang=zh_TW.Big5:\ - :lc_all=zh_TW.Big:\ - :lc_collate=zh_TW.Big5:\ - :lc_ctype=zh_TW.Big5:\ - :lc_messages=zh_TW.Big5:\ - :lc_monetary=zh_TW.Big5:\ - :lc_numeric=zh_TW.Big5:\ - :lc_time=zh_TW.Big5:\ + :setenv=LC_ALL=zh_TW.Big:\ + :setenv=LC_COLLATE=zh_TW.Big5:\ + :setenv=LC_CTYPE=zh_TW.Big5:\ + :setenv=LC_MESSAGES=zh_TW.Big5:\ + :setenv=LC_MONETARY=zh_TW.Big5:\ + :setenv=LC_NUMERIC=zh_TW.Big5:\ + :setenv=LC_TIME=zh_TW.Big5:\ :charset=big5:\ - :xmodifiers="@im=xcin": #Setting the XIM Input Server + :xmodifiers="@im=gcin": #Set gcin as the XIM Input Server Weitere Informationen entnehmen Sie bitte &man.login.conf.5;. Einrichten als Administrator Stellen Sie sicher, dass in der Login-Klasse der Benutzer in /etc/login.conf die richtige Sprache eingestellt ist. Die folgenden Einstellungen müssen in /etc/login.conf vorgenommen werden: Sprache:Beschreibung:\ :charset=MIME_Zeichensatz:\ :lang=Locale:\ :tc=default: Die für Latin-1 erforderlichen Einträge sehen wie folgt aus: german:German Users Accounts:\ :charset=ISO-8859-1:\ :lang=de_DE.ISO8859-1:\ :tc=default: Bevor Sie die Login-Klasse eines Benutzers ändern, müssen Sie den folgenden Befehl ausführen: &prompt.root; cap_mkdb /etc/login.conf Erst danach werden Ihre Änderungen in /etc/login.conf im System sichtbar. Ändern der Login-Klasse mit &man.vipw.8; vipw Wenn Sie neue Accounts mit vipw anlegen, erstellen Sie Einträge in folgender Art: user:password:1111:11:Sprache:0:0:Benutzername:/home/user:/bin/sh Ändern der Login-Klasse mit &man.adduser.8; adduser Login-Klasse Wenn Sie neue Accounts mit adduser anlegen, stehen Ihnen die folgenden Möglichkeiten zur Verfügung: Geben Sie in /etc/adduser.conf mit defaultclass = Sprache eine Sprache vor. In diesem Fall müssen Sie für Benutzer anderer Sprachen eine andere Login-Klasse angeben. Geben Sie die Sprache jedes Mal ein, wenn Sie dazu von &man.adduser.8; aufgefordert werden: Enter login class: default []: Sie können die Login-Klasse auch auf der Kommandozeile von &man.adduser.8; übergeben: &prompt.root; adduser -class Sprache Ändern der Login-Klasse mit &man.pw.8; pw Wenn Sie neue Accounts mit &man.pw.8; anlegen, benutzen Sie die folgende Kommandozeile: &prompt.root; pw useradd Account -L Sprache Lokalisierung in den Startdateien der Shells Da Sie jede Shell unterschiedlich einrichten müssen, sollten Sie diese Methode nicht verwenden. Benutzen Sie stattdessen bitte Login-Klassen. MIME Locale Um die Locale und den MIME Zeichensatz anzugeben, setzen Sie die unten aufgeführten Variablen in den Startdateien der Shells (/etc/profile und /etc/csh.login). In den folgenden Beispielen verwenden wir die deutsche Sprache. Einstellungen in /etc/profile: LANG=de_DE.ISO8859-1; export LANG MM_CHARSET=ISO-8859-1; export MM_CHARSET Einstellungen in /etc/csh.login: setenv LANG de_DE.ISO8859-1 setenv MM_CHARSET ISO-8859-1 Alternativ können Sie die Einstellungen in den Vorgabedateien der Shells vornehmen. Die oben gezeigten Einstellungen aus /etc/profile tragen Sie dann in /usr/share/skel/dot.profile und die Einstellungen aus /etc/csh.login in /usr/share/skel/dot.login ein. Die Einstellungen für X11 in $HOME/.xinitrc sind von der verwendeten Login-Shell abhängig. Mit Bourne Shells verwenden Sie den folgenden Eintrag: LANG=de_DE.ISO8859-1; export LANG Mit C-Shells verwenden Sie den nachstehenden Eintrag: setenv LANG de_DE.ISO8859-1 Einrichten der Konsole Wenn Sie C-char Zeichensätze verwenden, müssen Sie die richtigen Zeichensätze für die gewählte Sprache in /etc/rc.conf angeben: font8x16=Zeichensatz font8x14=Zeichensatz font8x8=Zeichensatz Dabei ist Zeichensatz der Name der passenden Datei aus /usr/share/syscons/fonts ohne die Endung .fnt. sysinstall keymap screenmap Stellen Sie sicher, dass Sie die richtige Tasten- und Bildschirmzuordnung (keymap und screenmap) verwenden. Dies können Sie in sysinstall (vor &os; 5.2 /stand/sysinstall) einstellen, indem Sie Configure und dann Console wählen. Sie können die Zuordnungen aber auch direkt in /etc/rc.conf angeben: scrnmap=screenmap_name keymap=keymap_name keychange="fkey_number sequence" screenmap_name ist der Name einer Datei aus /usr/share/syscons/scrnmaps ohne die Endung .scm. Eine Bildschirmzuordnung und der zugehörige Zeichensatz verbreitert die Zeichenmatrix von VGA Karten im Pseudographik Modus von 8 Bit auf 9 Bit. Sie wird benötigt, wenn der Zeichensatz des Bildschirms 8 Bit verwendet. Lesen Sie den nächsten Absatz, wenn Sie in /etc/rc.conf den moused Dæmon mit der nachstehenden Anweisung aktiviert haben: moused_enable="YES" moused Der Mauszeiger des &man.syscons.4; Treibers belegt in der Voreinstellung den Bereich von 0xd0 bis 0xd3 des Zeichensatzes. Wenn dieser Bereich ebenfalls von der eingestellten Sprache benötigt wird, müssen Sie den Mauszeiger verschieben. Dazu fügen Sie die folgende Zeile in Ihre Kernelkonfigurationsdatei ein: mousechar_start=3 keymap_name ist der Name einer Datei aus /usr/share/syscons/keymaps ohne die Endung .kbd. Welche Tastenzuordnung Sie benutzen müssen, können Sie ohne einen Neustart mit &man.kbdmap.1; ausprobieren. Mit keychange können die Funktionstasten so programmiert werden, dass Sie zu dem ausgesuchten Terminal passen. Die Sequenzen der Funktionstasten können nicht in Tastenzuordnungen definiert werden. Stellen Sie sicher, dass der richtige Terminaltyp für die ttyv* Konsolen in /etc/ttys angegeben ist. Momentan sind die folgenden Terminaltypen definiert: Zeichensatz Terminaltyp ISO8859-1 oder ISO8859-15 cons25l1 ISO8859-2 cons25l2 ISO8859-7 cons25l7 KOI8-R cons25r KOI8-U cons25u CP437 (VGA default) cons25 US-ASCII cons25w Mit Wide- oder Multibyte-Zeichensätzen müssen Sie den richtigen Port aus dem Verzeichnis /usr/ports/Sprache verwenden. Einige Ports erscheinen als Konsolen werden aber vom System als serielle vtty's betrachtet. Achten Sie daher darauf, dass Sie genügend vtty's für X11 und die Pseudo-seriellen Konsolen definiert haben. Nachstehend finden Sie eine unvollständige Liste der Ports, die eine andere Sprache als Englisch auf der Konsole verwenden: Sprache Port traditionelles Chinesisch (BIG-5) chinese/big5con Japanisch japanese/kon2-16dot oder japanese/mule-freewnn Koreanisch korean/han Einrichten von X11 Obwohl X11 nicht Teil des FreeBSD-Projekts ist, stellen wir hier einige Hinweise für FreeBSD-Benutzer zusammen. Weitere Details entnehmen Sie bitte der &xorg; Website oder der Dokumentation Ihres X11 Servers. Anwendungsspezifische I18N-Einstellungen (Zeichensätze, Menüs, usw.) können Sie in ~/.Xresources vornehmen. Zeichensätze X11 True Type Font-Server Installieren Sie den &xorg;-Server (x11-servers/xorg-server) oder den &xfree86;-Server (x11-servers/XFree86-4-Server) und die &truetype; Zeichensätze Ihrer Sprache. Wenn Sie die Locale gesetzt haben, sollten die Menüs in Ihrer Sprache erscheinen. Eingabe von nicht-englischen Zeichen X11 Input Method (XIM) Das X11 Input Method (XIM) Protokoll ist ein neuer Standard für alle X11-Clients. Jede X11-Anwendung sollte als XIM-Client, der Eingaben von einem XIM-Server entgegen nimmt, implementiert sein. XIM-Server sind für verschiedene Sprachen erhältlich. Einrichten eines Druckers Drucker verfügen normalerweise schon über einige C-char Zeichensätze. Wide- oder Multibyte-Zeichensätze müssen gesondert eingerichtet werden. Wir empfehlen Ihnen, dazu apsfilter zu benutzen. Weiterhin können Sie mit sprachspezifischen Konvertern Ihre Dokumente auch in &postscript; oder PDF umwandeln. Kernel und Dateisysteme Das FreeBSD-Dateisystem (FFS) unterstützt 8-Bit, so dass es mit C-char Zeichensätzen (siehe &man.multibyte.3;) verwendet werden kann. Der Zeichensatz wird allerdings nicht im Dateisystem gespeichert, das heißt es werden nur die 8-Bit Werte gespeichert und die Codierung wird nicht berücksichtigt. Offiziell werden Wide- oder Multibyte-Zeichensätze noch nicht unterstützt, für einige Zeichensätze existieren Patche, die eine solche Unterstützung aktivieren. Sie sind allerdings nicht im Quelltext enthalten, da sie nur schwer pflegbare Übergangslösungen sind. Die Patche und weitere Informationen erhalten Sie auf den Webseiten der betreffenden Sprache. DOS Unicode Das &ms-dos; Dateisystem von FreeBSD kann von &ms-dos;- und Unicode-Zeichensätzen nach frei wählbaren FreeBSD Zeichensätzen konvertieren. Weitere Details entnehmen Sie bitte &man.mount.msdosfs.8;. I18N-Programme übersetzen Viele FreeBSD-Ports besitzen I18N-Unterstützung, einige davon enthalten -I18N im Namen. Für diese und viele andere Programme ist keine spezielle Konfiguration notwendig. MySQL Einige Anwendungen wie MySQL müssen allerdings speziell für einen Zeichensatz konfiguriert werden. Normalerweise wird dazu das Makefile angepasst oder configure mit einem speziellen Parameter aufgerufen. Lokalisierung für einzelne Sprachen Andrey Chernov Beigetragen von Russisch (KOI8-R Codierung) Lokalisierung russisch Weitere Informationen über die KOI8-R Codierung erhalten Sie auf der Webseite KOI8-R References (Russian Net Character Set). Einrichten der Locale Fügen Sie die folgenden Zeilen in ~/.login_conf ein: me:My Account:\ :charset=KOI8-R:\ :lang=ru_RU.KOI8-R: Weitere Erklärungen finden Sie in Einstellen der Locale. Einrichten der Konsole Fügen Sie folgende Zeile in /etc/rc.conf ein: mousechar_start=3 Nehmen Sie zusätzlich die folgenden Einstellungen in /etc/rc.conf auf: keymap="ru.koi8-r" scrnmap="koi8-r2cp866" font8x16="cp866b-8x16" font8x14="cp866-8x14" font8x8="cp866-8x8" Benutzen Sie cons25r als Terminaltyp für jeden ttyv* Eintrag in /etc/ttys. Weitere Beispiele finden Sie in Einrichten der Konsole. Einrichten eines Druckers Drucker Die meisten Drucker mit russischen Zeichen besitzen die Codetabelle CP866, so dass ein spezielles Programm zur Übersetzung von KOI8-R nach CP866 benötigt wird. Zu diesem Zweck ist /usr/libexec/lpr/ru/koi2alt im Basissystem enthalten. Der Eintrag für einen Drucker mit russischer Sprachunterstützung in /etc/printcap sieht wie folgt aus: lp|Russian local line printer:\ :sh:of=/usr/libexec/lpr/ru/koi2alt:\ :lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs: Näheres erfahren Sie in &man.printcap.5;. &ms-dos; Dateisystem und russische Dateinamen Russische Dateinamen auf &ms-dos; Dateisystemen werden mit dem folgenden Eintrag in /etc/fstab erkannt: /dev/ad0s2 /dos/c msdos rw,-Wkoi2dos,-Lru_RU.KOI8-R 0 0 Die Option legt die Locale fest. Die Option legt die Zeichenumwandlung fest. Stellen Sie sicher, dass /usr eingehangen ist, bevor Sie die &ms-dos;-Partition einhängen, da die Tabellen zur Zeichenumwandlung in /usr/libdata/msdosfs liegen. Weitere Informationen erhalten Sie in der Hilfeseite &man.mount.msdosfs.8;. Einrichten von X11 Richten Sie zunächst die normale Lokalisierung ein. Wenn Sie &xorg; verwenden, installieren Sie den Port x11-fonts/xorg-fonts-cyrillic. Im Abschnitt "Files" von /etc/X11/xorg.conf fügen Sie die folgenden Einträge vor allen anderen FontPath Einträgen ein: FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/misc" FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/100dpi" Wenn Sie eine hohe Auflösung benutzen, vertauschen Sie bitte die Einträge für 75 dpi und 100 dpi. Zusätzliche kyrillische Schriftarten finden Sie in der Ports-Sammlung. Die Unterstützung für eine russische Tastatur aktivieren Sie im "Keyboard" Abschnitt von xorg.conf: Option "XkbLayout" "us,ru" Option "XkbOptions" "grp:toggle" Stellen Sie zudem sicher, dass XkbDisable deaktiviert (auskommentiert) ist. Beim Einsatz von grp:caps_toggle können Sie mit Right Alt (Alt Gr) zwischen dem RUS- und LAT-Modus wechseln, verwenden Sie hingegen grp:ctrl_shift_toggle, so erfolgt der Wechsel mit Ctrl Shift . Die alte Funktion von CapsLock steht nur im LAT-Modus mit der Tastenkombination Shift CapsLock zur Verfügung. Verwenden Sie hingegen grp:toggle, wechseln Sie mit Right Alt (Alt Gr)zwischen dem RUS- und LAT-Modus, da grp:caps_toggle aus unbekannten Gründen unter &xorg; nicht funktioniert. Wenn Ihre Tastatur &windows;-Tasten besitzt und nicht-alphanumerische Tasten im RUS-Modus nicht funktionieren, fügen Sie die folgende Zeile in xorg.conf ein: Option "XkbVariant" ",winkeys" Die russische XKB-Tastatur funktioniert vielleicht nicht mit nicht-lokalisierten Anwendungen. Lokalisierte Anwendungen sollten mindestens die Funktion XtSetLanguageProc (NULL, NULL, NULL); frühzeitig aufrufen. Weitere Informationen über die Lokalisierung von X11-Anwendungen erhalten Sie auf der Webseite KOI8-R for X Window. Traditionell chinesische Lokalisierung für Taiwan Lokalisierung traditionell chinesisch Das taiwanesische FreeBSD-Projekt stellt ein Tutorium unter zur Verfügung, das viele chinesische Anwendungen benutzt. Der Editor des FreeBSD Chinese HOWTOs ist Shen Chuan-Hsing statue@freebsd.sinica.edu.tw. Chuan-Hsing Shen statue@freebsd.sinica.edu.tw hat mithilfe des Tutoriums die Chinese FreeBSD Collection (CFC) geschaffen. Die Pakete und Skripten stehen unter . Deutsche Lokalisierung (für alle ISO 8859-1 Sprachen) Lokalisierung deutsch Von Slaven Rezic eserte@cs.tu-berlin.de stammt ein Tutorium, das die Benutzung von Umlauten mit FreeBSD beschreibt. Das Tutorium ist in Deutsch verfasst und unter erhältlich. Japanische und koreanische Lokalisierung Lokalisierung japanisch Lokalisierung koreanisch Informationen über die japanische Lokalisierung entnehmen Sie bitte , Informationen über die koreanische Lokalisierung erhalten Sie unter . Nicht-englische FreeBSD-Dokumentation Teile von FreeBSD wurden in andere Sprachen übersetzt. Folgen Sie bitte den Links auf der FreeBSD-Webseite oder schauen Sie in /usr/share/doc nach. diff --git a/de_DE.ISO8859-1/books/handbook/mirrors/chapter.sgml b/de_DE.ISO8859-1/books/handbook/mirrors/chapter.sgml index bd61506b1b..9a9c144217 100644 --- a/de_DE.ISO8859-1/books/handbook/mirrors/chapter.sgml +++ b/de_DE.ISO8859-1/books/handbook/mirrors/chapter.sgml @@ -1,3370 +1,3394 @@ Bezugsquellen für FreeBSD CD-ROM und DVD Verleger FreeBSD-Pakete FreeBSD-Pakete (FreeBSD-CDs, zusätzliche Software und gedruckte Dokumentation) erhalten Sie von mehreren Händlern:
CompUSA WWW:
Frys Electronics WWW:
FreeBSD-CDs und -DVDs Die FreeBSD-CDs und -DVDs werden von vielen Online-Händlern angeboten:
BSD Mall by Daemon News PO Box 161 Nauvoo, IL 62354 USA Telefon: +1 866 273-6255 Fax: +1 217 453-9956 E-Mail: sales@bsdmall.com WWW:
BSD-Systems E-Mail: info@bsd-systems.co.uk WWW:
FreeBSD Mall, Inc. 3623 Sanford Street Concord, CA 94520-1405 USA Telefon: +1 925 674-0783 Fax: +1 925 674-0821 E-Mail: info@freebsdmall.com WWW:
Dr. Hinner EDV St. Augustinus-Str. 10 D-81825 München Germany Telefon: (089) 428 419 WWW:
Ikarios 22-24 rue Voltaire 92000 Nanterre France WWW:
JMC Software Ireland Telefon: 353 1 6291282 WWW:
Linux CD Mall Private Bag MBE N348 Auckland 1030 New Zealand Telefon: +64 21 866529 WWW:
The Linux Emporium Hilliard House, Lester Way Wallingford OX10 9TA United Kingdom Telefon: +44 1491 837010 Fax: +44 1491 837016 WWW:
Linux+ DVD Magazine Lewartowskiego 6 Warsaw 00-190 Poland Telefon: +48 22 860 18 18 E-Mail: editors@lpmagazine.org WWW:
Linux System Labs Australia 21 Ray Drive Balwyn North VIC - 3104 Australia Telefon: +61 3 9857 5918 Fax: +61 3 9857 8974 WWW:
LinuxCenter.Ru Galernaya Street, 55 Saint-Petersburg 190000 Russia Telefon: +7-812-3125208 E-Mail: info@linuxcenter.ru WWW:
Lieferanten Wenn Sie FreeBSD-CD-ROM-Produkte weiterverkaufen möchten, kontaktieren Sie einen der folgenden Lieferanten:
Cylogistics 809B Cuesta Dr., #2149 Mountain View, CA 94040 USA Telefon: +1 650 694-4949 Fax: +1 650 694-4953 E-Mail: sales@cylogistics.com WWW:
Ingram Micro 1600 E. St. Andrew Place Santa Ana, CA 92705-4926 USA Telefon: 1 (800) 456-8000 WWW:
Kudzu, LLC 7375 Washington Ave. S. Edina, MN 55439 USA Telefon: +1 952 947-0822 Fax: +1 952 947-0876 E-Mail: sales@kudzuenterprises.com
LinuxCenter.Ru Galernaya Street, 55 Saint-Petersburg 190000 Russia Telefon: +7-812-3125208 E-Mail: info@linuxcenter.ru WWW:
Navarre Corp 7400 49th Ave South New Hope, MN 55428 USA Telefon: +1 763 535-8333 Fax: +1 763 535-0341 WWW:
FTP-Server Die offiziellen Quellen von FreeBSD sind mit anonymous FTP über ein weltweites Netz von FTP-Spiegeln erhältlich. Obwohl über eine gute Anbindung verfügt, sollten Sie einen Spiegel in Ihrer Nähe verwenden (insbesondere, wenn Sie selber einen Spiegel einrichten wollen). Die Datenbank der FreeBSD-Spiegel ist aktueller als die folgende Liste, da sie im Gegensatz zu einer statischen Liste die Informationen aus dem DNS erhält. Sie können FreeBSD auch über anonymous FTP von den folgenden Spiegeln beziehen. Wenn Sie FreeBSD über anonymous FTP beziehen wollen, wählen Sie bitte einen Spiegel in Ihrer Nähe. Die unter Haupt-Spiegel aufgeführten Spiegel stellen normalerweise das komplette FreeBSD-Archiv (alle momentan erhältlichen Versionen für jede unterstützte Architektur) zur Verfügung. Wahrscheinlich geht es aber schneller, wenn Sie einen Spiegel in Ihrer Nähe benutzen. Die Länder-Spiegel stellen die neusten Versionen für die beliebtesten Architekturen bereit, sie stellen aber unter Umständen nicht das komplette FreeBSD-Archiv bereit. Auf alle Server kann mit anonymous FTP zugegriffen werden, einige Server bieten auch andere Zugriffsmethoden an. Die zur Verfügung stehenden Zugriffsmethoden sind bei jedem Server in Klammern angegeben. &chap.mirrors.ftp.inc; Anonymous CVS <anchor id="anoncvs-intro">Einführung CVS anonymous Anonymous CVS (oder anoncvs) dient zum Synchronisieren mit entfernten Repositories und steht mit den CVS Werkzeugen, die im FreeBSD Basissystem enthalten sind, zur Verfügung. Benutzer von FreeBSD können damit unter anderem lesende Operationen auf den Anoncvs Servern des FreeBSD-Projekts durchführen, ohne über besondere Berechtigungen zu verfügen. Um es zu benutzen, setzen Sie einfach die CVSROOT Umgebungsvariable auf einen Anoncvs Server und geben beim Login mit cvs login das Passwort anoncvs an. Danach können Sie mit &man.cvs.1; wie auf jedes lokale Repository (allerdings nur lesend) zugreifen. cvs login speichert Passwörter zur Authentifizierung an einem CVS Server in der Datei .cvspass in Ihrem HOME-Verzeichnis. Wenn diese Datei beim ersten Benutzen von cvs login nicht existiert, erhalten Sie vielleicht eine Fehlermeldung. In diesem Fall legen Sie einfach eine leere .cvspass Datei an und melden sich erneut an. CVSup und Anoncvs bieten dieselbe Funktionalität, die folgenden Kriterien helfen Ihnen zu entscheiden, welche Methode Sie benutzen sollen. CVSup geht wesentlich effizienter mit Netzwerk-Ressourcen um und ist auch technisch ausgereifter. Allerdings müssen Sie zuerst einen speziellen Client installieren und konfigurieren, bevor Sie CVSup benutzen können. Weiterhin können Sie mit CVSup nur relativ große Teile der Quellen, die Sammlungen genannt werden, synchronisieren. Im Gegensatz dazu können Sie mit Anoncvs jede beliebige Datei oder indem Sie einfach den CVS Namen des Moduls angeben, ein beliebiges Programm, wie ls oder grep, bearbeiten. Natürlich können Sie mit Anoncvs nur lesend auf ein CVS Repository zugreifen. Wenn Sie lokal mit dem FreeBSD-Repository entwickeln wollen, dann ist CVSup die einzige Wahl. <anchor id="anoncvs-usage">Benutzen von Anonymous CVS Setzen Sie einfach die CVSROOT Umgebungsvariable, um &man.cvs.1; das CVS Repository eines FreeBSD Anoncvs-Servers bekannt zu geben. Zurzeit stehen folgende Server zur Verfügung: Deutschland: :pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs (Benutzen Sie cvs login und das Passwort anoncvs.) Deutschland: :pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs (rsh, pserver, ssh, ssh/2022) Frankreich: :pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs (Das Passwort für pserver ist anoncvs, ssh-Zugriffe verwenden kein Passwort.) Japan: :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs (Benutzen Sie cvs login und das Passwort anoncvs.) Österreich: :pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs (Benutzen Sie cvs login und ein beliebiges Passwort.) Taiwan: :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs (Benutzen Sie cvs login und ein beliebiges Passwort.) USA: freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs (nur ssh ohne Passwort). SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub USA: anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (nur ssh ohne Passwort). SSH2 HostKey: 2048 53:1f:15:a3:72:5c:43:f6:44:0e:6a:e9:bb:f8:01:62 /etc/ssh/ssh_host_dsa_key.pub Mit CVS können Sie praktisch jede Version von FreeBSD, die schon einmal existiert hat (oder in manchen Fällen existieren wird) auschecken. Sie sollten daher damit vertraut sein, wie Sie mit Tags unter &man.cvs.1; arbeiten (die Option). Zudem müssen Sie die Namen der Tags im FreeBSD-Repository kennen. Es gibt zwei verschiedene TagsTags sind symbolische Namen, die im Repository vergeben werden. : Tags, die Revisionen bezeichnen und Tags, die Zweige bezeichnen. Die Ersten sind statisch und fest an eine Revision gebunden. Ein Tag, das einen Zweig bezeichnet, bezieht sich dagegen zu einem gegebenen Zeitpunkt immer auf die aktuellste Revision. Da ein Tag eines Zweiges nicht an eine bestimmte Revision gebunden ist, kann sich dessen Bedeutung von heute auf morgen ändern. In finden Sie eine Liste der gültigen Tags. Beachten Sie bitte, dass keines der Tags auf die Ports-Sammlung anwendbar ist, da diese nicht über Zweige verfügt. Wenn Sie ein Tag eines Zweiges verwenden, erhalten Sie die aktuellsten Dateien dieses Entwicklungszweiges. Wenn Sie eine frühere Revision erhalten möchten, können Sie zum Beispiel einen Zeitpunkt mit der Option angeben. Weitere Informationen dazu entnehmen Sie bitte &man.cvs.1;. Beispiele Im Folgenden finden Sie einige Beispiele für den Umgang mit Anonymous CVS. Sie sollten sich aber die Manualpage von &man.cvs.1; sorgfältig durchlesen, bevor Sie anfangen. &man.ls.1; von -CURRENT auschecken &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs &prompt.user; cvs login Wenn Sie dazu aufgefordert werden, benutzen Sie das Passwort anoncvs. &prompt.user; cvs co ls Den <filename>src/</filename>-Baum über SSH auschecken &prompt.user; cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be establiestablished. DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts. &man.ls.1; aus dem 6-STABLE-Zweig auschecken &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs &prompt.user; cvs login Wenn Sie dazu aufgefordert werden, benutzen Sie das Passwort anoncvs. &prompt.user; cvs co -rRELENG_6 ls Änderungen in &man.ls.1; zwischen 5.3 RELEASE und 5.4 RELEASE (als unified diff) &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs &prompt.user; cvs login Wenn Sie dazu aufgefordert werden, benutzen Sie das Passwort anoncvs. &prompt.user; cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls Gültige Modulnamen herausfinden &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs &prompt.user; cvs login Wenn Sie dazu aufgefordert werden, benutzen Sie das Passwort anoncvs. &prompt.user; cvs co modules &prompt.user; more modules/modules Weitere Ressourcen Die folgenden Ressourcen sind nützlich, um den Umgang mit CVS zu lernen: CVS Tutorial von Cal Poly. CVS Home, die Homepage des CVS-Projekts. CVSweb das Web Interface zu CVS des FreeBSD Projekts. CTM CTM Mit CTM Abkürzung für CVS Through eMail können Sie einen entfernten Verzeichnisbaum mit einem zentralen Baum synchronisieren. Es wurde extra zum Synchronisieren der FreeBSD Quellen entwickelt, obwohl es mit der Zeit vielleicht auch andere Anwendungen geben wird. Zurzeit existiert leider so gut wie keine Dokumentation zum Erstellen der Deltas. Wenn Sie Hilfe benötigen oder CTM für andere Zwecke einsetzen wollen, wenden Sie sich bitte an die Mailingliste &a.ctm-users.name;. Warum soll ich <application>CTM</application> benutzen? Mit CTM erhalten Sie eine lokale Kopie des FreeBSD-Quellbaums, den es in mehreren Varianten gibt. Sie können das ganze Repository oder nur einen Zweig spiegeln. Wenn Sie ein aktiver FreeBSD-Entwickler mit einer schlechten oder gar keiner TCP/IP Verbindung sind, oder die Änderungen einfach automatisch zugesandt bekommen wollen, dann ist CTM das Richtige für Sie. Für die Zweige mit der meisten Aktivität müssen Sie sich täglich bis zu drei Deltas beschaffen, Sie sollten allerdings erwägen, die Deltas automatisch über E-Mail zu beziehen. Die Größe der Updates wird so klein wie möglich gehalten. Normalerweise sind sie kleiner als 5 kB, manchmal sind sie 10-50 kB groß (etwa jedes 10. Update) und ab und an werden Sie auch einmal ein Update mit 100 kB oder mehr erhalten. Sie sollten sich über die Vorbehalte gegen die Verwendung der Quellen anstelle eines offiziellen Releases bewusst sein. Das trifft besonders auf &os.current; zu, lesen Sie dazu bitte den Abschnitt &os.current;. Was brauche ich, um <application>CTM</application> zu benutzen? Zwei Sachen: Das CTM Programm und die initialen Deltas, von denen aus Sie auf die aktuellen Stände kommen. CTM ist schon seit der Version 2.0 Teil des FreeBSD-Basissystems. Sie finden es in /usr/src/usr.sbin/ctm, wenn Sie eine Kopie der Quellen besitzen. Die Deltas, die CTM verarbeitet, können Sie über FTP oder E-Mail beziehen. Wenn Sie über einen FTP Zugang zum Internet verfügen, erhalten Sie die Deltas unter der folgenden URL: Die Deltas werden auch von CTM Spiegeln bereitgehalten. Wechseln Sie in das passende Verzeichnisse zum Beispiel src-cur für &os.current; und laden Sie sich von dort die Deltas herunter. Sie können die Deltas auch über E-Mail beziehen. Abonnieren Sie dazu eine der CTM-Verteilerlisten. Über &a.ctm-cvs-cur.name; erhalten Sie den kompletten CVS-Baum, über &a.ctm-src-cur.name; erhalten Sie &os.current; und über &a.ctm-src-4.name; erhalten Sie den FreeBSD 4.X-Zweig. Wenn Sie nicht wissen, wie Sie eine der Mailinglisten abonnieren, folgen Sie einem der Verweise von oben oder besuchen Sie die Seite &a.mailman.lists.link;. Weitere Informationen erhalten Sie, wenn Sie dort auf die gewünschte Liste klicken. Benutzen Sie ctm_rmail, um die CTM Updates, die Sie per E-Mail empfangen, auszupacken und anzuwenden. Wenn Sie diesen Prozess automatisiert ablaufen lassen möchten, können Sie dazu einen Eintrag in /etc/aliases verwenden. Genauere Informationen finden Sie in der Manualpage von ctm_rmail. Sie sollten die Mailingliste &a.ctm-announce.name; abonnieren, egal wie Sie die CTM-Deltas erhalten. Ankündigungen, die den Betrieb des CTM-Systems betreffen, werden nur auf dieser Liste bekannt gegeben. Klicken Sie auf den Namen der Liste oder besuchen Sie die Seite &a.mailman.lists.link;, um diese Liste zu abonnieren. Initialisieren von <application>CTM</application> Bevor Sie die CTM Deltas benutzen können, brauchen Sie einen Startpunkt, auf den die nachfolgenden Deltas angewendet werden. Sie können natürlich mit einem leeren Verzeichnis beginnen. In diesem Fall benötigen Sie ein XEmpty-Delta, mit dem Sie den CTM-Verzeichnisbaum initialisieren. Wenn Sie Glück haben, finden Sie ein XEmpty-Delta, mit dem sie beginnen können, auf einer der CDs Ihrer Distribution. Da die Verzeichnisbäume mehrere Megabyte groß sind, sollten Sie nach Möglichkeit etwas schon vorhandenes benutzen. Wenn Sie eine -RELEASE CD besitzen, können Sie die Quellen von dieser CD benutzen. Sie ersparen sich damit das Übertragen großer Datenmengen. Die Deltas, mit denen Sie beginnen können, enthalten ein X in ihrem Namen, wie in src-cur.3210XEmpty.gz. Hinter dem X wird der Startpunkt der Deltas angegeben, in diesem Fall steht Empty für ein leeres Verzeichnis. Nach etwa 100 Deltas wird ein neues XEmpty-Delta erstellt. Mit ungefähr 75 Megabyte komprimierter Daten sind diese XEmpty-Deltas übrigens sehr groß. Nachdem Sie Ihren Startpunkt festgelegt haben, benötigen Sie alle Deltas mit einer höheren Nummer. Benutzen von <application>CTM</application> Um ein Delta einzuspielen, benutzen Sie das folgende Kommando: &prompt.root; cd /Pfad/zu/den/Quellen &prompt.root; ctm -v -v /Pfad/zu/den/Deltas/src-xxx.* CTM kann mit Deltas arbeiten, die mit gzip komprimiert wurden. Sie brauchen die Deltas vorher nicht mit gunzip zu dekomprimieren und sparen damit Plattenplatz. Ihr Quellbaum wird erst dann verändert, wenn CTM die Deltas sauber verarbeiten kann. Die Integrität der Deltas und ihre Anwendbarkeit auf den Quellbaum lassen sich durch die Angabe des Schalters -c überprüfen, CTM ändert in diesem Fall Ihren Quellbaum nicht. CTM verfügt über weitere Kommandozeilenoptionen, Informationen dazu finden Sie in der Manualpage oder dem Quellcode. Das war schon alles. Um Ihre Quellen aktuell zu halten, verwenden Sie CTM jedes Mal, wenn Sie neue Deltas bekommen. Löschen Sie die Deltas nicht, wenn Sie diese nur schwer wieder beschaffen können. Behalten Sie sie für den Fall, das etwas passiert. Auch wenn Sie nur Disketten besitzen, sollten Sie erwägen, die Deltas mit fdwrite zu sichern. Umgang mit lokalen Änderungen Entwickler wollen mit den Dateien im Quellbaum experimentieren und diese verändern. In beschränkter Weise werden lokale Änderungen von CTM unterstützt. Wenn CTM die Datei foo bearbeiten will, überprüft es zuerst ob die Datei foo.ctm existiert. Wenn diese Datei existiert, werden Änderungen in ihr anstatt in foo vorgenommen. Mit diesem Verfahren ist eine leichte Handhabung lokaler Änderungen möglich. Kopieren Sie die Dateien, die Sie ändern möchten, in Dateien, die das Suffix .ctm tragen. Sie können dann ungestört mit dem Quellcode arbeiten, während CTM die .ctm Dateien aktualisiert. Weitere <application>CTM</application>-Optionen Was wird aktualisiert? Eine Liste der Änderungen, die CTM an Ihrem Quellbaum vornehmen wird, erhalten Sie, wenn Sie die Option angeben. Das ist nützlich, wenn Sie Logs über die Änderungen führen wollen, geänderte Dateien vor- oder nachbearbeiten wollen, oder einfach ein bisschen paranoid sind. Sicherungen vor einer Aktualisierung erstellen Sie wollen vielleicht die Dateien, die durch eine CTM Aktualisierung verändert werden, sichern. Mit weisen Sie CTM an, alle Dateien, die durch ein CTM Delta verändert würden, nach backup-file zu sichern. Dateien ausschließen Manchmal wollen Sie nur bestimmte Teile aktualisieren oder nur bestimmte Dateien aus einer Folge von Deltas extrahieren. Sie können die Liste der Dateien, mit denen CTM arbeitet, einschränken, indem Sie reguläre Ausdrücke mit den Optionen und angeben. Wenn Sie eine aktuelle Kopie von lib/libc/Makefile aus den gesicherten CTM Deltas erhalten wollen, setzen Sie das folgende Kommando ab: &prompt.root; cd /wo/Sie/es/auspacken/wollen/ &prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.* Die Optionen und werden in der Reihenfolge angewandt, in der sie auf der Kommandozeile angegeben wurden. Eine Datei wird nur dann von CTM verarbeitet, wenn dies nach der Anwendung der Optionen und noch erlaubt ist. Pläne für <application>CTM</application> Mehrere: Hinzufügen eines Authentifizierungsmechanismus, damit gefälschte CTM-Deltas erkannt werden können. Aufräumen der CTM-Optionen, die mit der Zeit unübersichtlich und irreführend wurden. Verschiedenes Es gibt Deltas für die Ports-Sammlung, die aber nicht intensiv genutzt werden. CTM-Spiegel Die CTM-Deltas können Sie mit anonymous FTP von den folgenden Spiegeln beziehen. Versuchen Sie bitte einen Spiegel in Ihrer Nähe zu benutzen. Bei Problemen wenden Sie sich bitte an die Mailingliste &a.ctm-users.name;. Kalifornien, Bay Area, Offizieller Server Südafrika, Backup-Server für alte Deltas Taiwan/R.O.C. Wenn die Liste keinen Spiegel in Ihrer Nähe enthält oder Sie Probleme mit dem ausgewählten Spiegel haben, versuchen Sie einen Spiegel mit einer Suchmaschine, wie alltheweb, zu finden. Benutzen von CVSup Einführung CVSup ist eine Anwendung, die Verzeichnisbäume von einem entfernten CVS-Server bereitstellt und aktualisiert. Die Quellen von FreeBSD werden in einem CVS-Repository auf einer Entwicklungsmaschine in Kalifornien gepflegt. Mit CVSup können sich FreeBSD-Benutzer den eigenen Quellbaum auf aktuellem Stand halten. Zum Aktualisieren benutzt CVSup die Pull-Methode, bei der die Aktualisierungen vom Client angefragt werden. Der Server wartet dabei passiv auf Anfragen von Clients, das heißt er verschickt nicht unaufgefordert Aktualisierungen. Somit gehen alle Anfragen vom Client aus und die Benutzer müssen CVSup entweder manuell starten oder einen cron Job einrichten, um regelmäßig Aktualisierungen zu erhalten. CVSup in genau dieser Schreibweise bezeichnet die Anwendung, die aus dem Client cvsup und dem Server cvsupd besteht. cvsup läuft auf den Maschinen der Benutzer, cvsupd läuft auf jedem der FreeBSD-Spiegel. Wenn Sie die FreeBSD-Dokumentation und die Mailinglisten lesen, werden Sie oft auf Sup, dem Vorgänger von CVSup stoßen. CVSup wird in gleicher Weise wie Sup benutzt und verfügt sogar über Konfigurationsdateien, die kompatibel zu denen von Sup sind. Da CVSup schneller und flexibler als Sup ist, wird Sup vom FreeBSD-Projekt nicht mehr benutzt. Mit csup gibt es in inzwischen auch eine in C geschriebene Neuimplementierung von CVSup. Der größte Vorteil dieser neuen Version ist neben einer höheren Geschwindigkeit der, dass dieses Programm nicht von der Sprache Modula-3 abhängig ist und Sie daher dieses Paket nicht mitinstallieren müssen. Ab &os; 6.2 ist csup bereits im Basissystem enthalten und kann sofort verwendet werden. Verwenden Sie hingegen eine ältere &os;-Version, können Sie &man.csup.1; über den Port net/csup installieren. Alternativ können Sie zur Installation auch ein vorkompiliertes Paket (Package) verwenden. csup unterstützt allerdings keinen CVS-Modus. Wollen Sie komplette Repositories spiegeln, müssen Sie also weiterhin CVSup einsetzen. Wollen Sie künftig csup einsetzen, überspringen Sie in den folgenden Ausführungen einfach den Abschnitt zur Installation von CVSup und ersetzen alle Vorkommen von CVSup durch csup. Installation von <application>CVSup</application> CVSup können Sie leicht installieren, wenn Sie das vorkompilierte Paket net/cvsup aus der Ports-Sammlung benutzen. Alternativ können Sie net/cvsup auch ausgehend von den Quellen bauen, doch seien Sie gewarnt: net/cvsup hängt vom Modula-3 System ab, das viel Zeit und Platz zum Herunterladen und Bauen braucht. Wenn Sie CVSup auf einer Maschine ohne &xfree86; oder &xorg;, beispielsweise einem Server, benutzen, stellen Sie sicher, dass Sie den Port ohne das CVSup-GUI, net/cvsup-without-gui verwenden. Wollen Sie csup unter &os; 6.1 oder älter installieren, können Sie dazu das vorkompilierte Paket net/csup oder den Port net/csup (zur Installation aus den Quellen) verwenden. Konfiguration von CVSup Das Verhalten von CVSup wird mit einer Konfigurationsdatei gesteuert, die supfile genannt wird. Beispiele für Konfigurationsdateien finden Sie in dem Verzeichnis . Ein supfile enthält die folgenden Informationen: Welche Dateien Sie erhalten wollen. Welche Versionen der Dateien Sie benötigen. Woher Sie die Dateien beziehen wollen. Wo Sie die erhaltenen Dateien speichern. Wo Sie die Status-Dateien aufbewahren wollen. In den folgenden Abschnitten erstellen wir ein typisches supfile indem wir nach und nach diese Punkte klären. Zuerst beschreiben wir aber den Aufbau dieser Konfigurationsdatei. Ein supfile ist eine Textdatei. Kommentare beginnen mit einem # und gelten bis zum Zeilenende. Leerzeilen und Zeilen, die nur Kommentare enthalten, werden ignoriert. Die anderen Zeilen legen die Dateien fest, die ein Benutzer erhalten will. Der Server organisiert verschiedene Dateien in einer Sammlung, deren Name auf einer Zeile angegeben wird. Nach dem Namen der Sammlung können mehrere durch Leerzeichen getrennte Felder folgen, die die oben angesprochenen Informationen festlegen. Es gibt zwei Arten von Feldern: Felder, die Optionen festlegen und Felder mit Parametern. Optionen bestehen aus einem Schlüsselwort, wie oder und stehen alleine. Ein Parameterfeld beginnt mit einem Schlüsselwort, dem = und ein Parameter, wie in , folgt. Dieses Feld darf keine Leerzeichen enthalten. In einem supfile werden normalerweise mehrere Sammlungen angefordert. Die erforderlichen Felder können explizit für jede Sammlung angegeben werden, dann werden jedoch die Zeilen ziemlich lang. Außerdem ist dieses Vorgehen sehr unhandlich, da die meisten Felder für alle Sammlungen gleich sind. CVSup bietet die Möglichkeit, Vorgaben für die Felder der Sammlungen festzulegen. Zeilen, die mit der Pseudo-Sammlung *default beginnen, legen Optionen und Parameter für nachfolgende Sammlungen im supfile fest. Der Vorgabewert kann in der Zeile einer bestimmten Sammlung überschrieben werden. Durch Hinzufügen weiterer *default Zeilen können die Vorgaben auch mitten im supfile überschrieben oder erweitert werden. Mit diesem Wissen können wir nun ein supfile erstellen, das den Quellbaum von FreeBSD-CURRENT anfordert und aktualisiert. Welche Dateien wollen Sie empfangen? Dateien werden von CVSup in Sammlungen organisiert. Die erhältlichen Sammlungen werden später beschrieben. Wir wollen den Quellbaum von FreeBSD empfangen, der in der Sammlung src-all enthalten ist. Das supfile enthält pro Zeile eine Sammlung, in diesem Fall also nur eine einzige Zeile: src-all Welche Versionen der Dateien werden benötigt? Mit CVSup können Sie jede Version der Quellen bekommen, da der cvsupd-Server seine Daten direkt aus dem CVS-Repository bezieht. Sie können die benötigten Versionen in den Parameterfeldern tag= und angeben. Achten Sie darauf, dass Sie das richtige tag=-Feld angeben. Einige Tags sind nur für spezielle Sammlungen gültig. Wenn Sie ein falsches Tag angeben oder sich verschreiben, wird CVSup Dateien löschen, die Sie wahrscheinlich gar nicht löschen wollten. Achten Sie insbesondere bei den ports-*-Sammlungen darauf, ausschließlich tag=. zu verwenden. Mit tag= wird ein symbolischer Name aus dem Repository angegeben. Es gibt zwei verschiedene Tags: Tags, die Revisionen bezeichnen und Tags, die Zweige bezeichnen. Die ersteren sind statisch und fest an eine Revision gebunden. Ein Tag, das einen Zweig bezeichnet, bezieht sich dagegen zu einem gegebenen Zeitpunkt immer auf die aktuellste Revision. Da ein Tag eines Zweiges nicht an eine bestimmte Revision gebunden ist, kann sich dessen Bedeutung von heute auf morgen ändern. zählt für Benutzer relevante Tags auf. Wenn Sie in der Konfigurationsdatei ein Tag, wie RELENG_4, angeben, müssen Sie diesem tag= vorstellen: tag=RELENG_4. Denken Sie daran, dass es für die Ports-Sammlung nur tag=. gibt. Achten Sie darauf, dass Sie den Namen eines Tags richtig angeben. CVSup kann nicht zwischen richtigen und falschen Tags unterscheiden. Wenn Sie sich bei der Angabe eines Tags vertippen, nimmt CVSup an, Sie hätten ein gültiges Tag angegeben, dem nur keine Dateien zugeordnet sind. Die Folge davon ist, dass Ihre vorhandenen Quellen gelöscht werden. Wenn Sie ein Tag angeben, das sich auf einen Zweig bezieht, erhalten Sie die aktuellsten Revisionen der Dateien auf diesem Zweig. Wenn Sie eine frühere Revision erhalten möchten, können Sie diese im Feld angeben. Einzelheiten dazu finden Sie in der Manualpage von cvsup. Wir möchten gerne FreeBSD-CURRENT beziehen und fügen die folgende Zeile am Anfang der Konfigurationsdatei ein: *default tag=. Eine wichtige Ausnahme ist wenn Sie weder ein tag=-Feld noch ein date=-Feld angeben. In diesem Fall erhalten Sie anstelle einer speziellen Revision die wirklichen RCS-Dateien aus dem CVS-Repository des Servers. Diese Vorgehensweise wird von Entwicklern bevorzugt, da sie mit einem eigenen Repository leicht die Entwicklungsgeschichte und Veränderungen von Dateien verfolgen können. Dieser Vorteil muss allerdings mit sehr viel Plattenplatz bezahlt werden. Woher sollen die Dateien bezogen werden? Im host=-Feld wird angegeben, woher cvsup die Dateien holen soll. Sie können hier jeden der CVSup-Spiegel angeben, doch sollten Sie einen Server in Ihrer Nähe auswählen. Für dieses Beispiel wollen wir den erfundenen Server cvsup99.FreeBSD.org verwenden: *default host=cvsup99.FreeBSD.org Bevor Sie CVSup laufen lassen, sollten Sie hier einen existierenden Server einsetzen. Den zu verwendenden Server können Sie auf der Kommandozeile mit überschreiben. Wo sollen die Dateien gespeichert werden? Im prefix=-Feld teilen Sie cvsup mit, wo die Dateien gespeichert werden sollen. In diesem Beispiel werden wir die Quelldateien direkt im Verzeichnisbaum für Quellen /usr/src ablegen. Das Verzeichnis src ist schon in der Sammlung, die wir beziehen enthalten, so dass wir die folgende Zeile angeben: *default prefix=/usr Wo sollen die Statusinformationen von cvsup gespeichert werden? cvsup legt in einem Verzeichnis Statusinformationen ab, die festhalten, welche Versionen schon empfangen wurden. Wir verwenden das Verzeichnis /var/db: *default base=/var/db Wenn das Verzeichnis für die Statusinformationen nicht existiert, sollten Sie es jetzt anlegen, da cvsup ohne dieses Verzeichnis nicht startet. Verschiedene Einstellungen: Eine weitere Zeile sollte normalerweise in jedem supfile sein: *default release=cvs delete use-rel-suffix compress Mit release=cvs wird angegeben, dass der Server das FreeBSD-Haupt-Repository abfragen soll, was praktisch immer der Fall ist (die Ausnahmen werden in diesem Text nicht diskutiert). delete erlaubt es CVSup, Dateien zu löschen. Diese Option sollten Sie immer angeben, damit CVSup Ihren Quellbaum auch wirklich aktuell halten kann. CVSup löscht nur Dateien für die es auch verantwortlich ist. Andere Dateien, die sich in einem Baum unter Kontrolle von CVSup befinden, werden nicht verändert. Wenn Sie wirklich etwas über das obskure use-rel-suffix erfahren wollen, lesen Sie bitte in der Manualpage nach, ansonsten geben Sie es einfach an und vergessen es. Wenn Sie compress angeben, werden Daten auf dem Kommunikationskanal komprimiert. Wenn Sie über eine T1-Leitung oder eine schnellere Netzanbindung verfügen, brauchen Sie diese Option vielleicht nicht. In allen anderen Fällen beschleunigt sie aber den Ablauf. Zusammenfassung: Das vollständige supfile unseres Beispiels sieht nun so aus: *default tag=. *default host=cvsup99.FreeBSD.org *default prefix=/usr *default base=/var/db *default release=cvs delete use-rel-suffix compress src-all Die <filename>refuse</filename> Datei CVSup benutzt die Pull-Methode, das heißt wenn sich ein Client mit einem Server verbindet, erhält er eine Liste der verfügbaren Sammlungen und wählt aus diesen die herunterzuladenden Dateien aus. In der Voreinstellung wählt der Client alle Dateien aus, die zu einer gegebenen Sammlung und zu einem gegebenen Tag passen. Dieses Verhalten ist aber nicht immer erwünscht, besonders wenn Sie die doc, ports oder www Verzeichnisbäume synchronisieren. Die wenigsten Leute beherrschen vier oder fünf Sprachen und benötigen Dateien mit speziellen Anpassungen für eine Sprache. Wenn Sie die Ports-Sammlung synchronisieren, können Sie anstelle von ports-all einzelne Ports, wie ports-astrology oder ports-biology angeben. Die doc und www Verzeichnisbäume verfügen aber nicht über Sammlungen für spezielle Sprachen. In diesem Fall müssen Sie eines der vielen eleganten Merkmale von CVSup benutzen: Die refuse Datei. Mit einer refuse Datei können Sie bestimmte Dateien einer Sammlung von der Übertragung ausschließen. Der Ort der refuse ist base/sup/refuse, wobei base in Ihrem supfile festgelegt wurde. Wir verwenden das Verzeichnis /var/db, der Ort der refuse Datei ist daher /var/db/sup/refuse. Das Format der refuse Datei ist einfach: Sie enthält eine Liste der Dateien und Verzeichnisse, die Sie nicht herunterladen wollen. Wenn Sie zum Beispiel die Dokumentation nicht in anderen Sprachen als Englisch lesen wollen, könnte Ihre refuse-Datei wie folgt aussehen: doc/bn_* doc/da_* doc/de_* doc/el_* doc/es_* doc/fr_* doc/it_* doc/ja_* doc/nl_* doc/no_* doc/pl_* doc/pt_* doc/ru_* doc/sr_* doc/tr_* doc/zh_* Die Aufzählung setzt sich für andere Sprachen fort. Eine vollständige Liste finden Sie im FreeBSD CVS Repository. Die refuse Datei spart Anwendern von CVSup, die über eine langsame Internetanbindung verfügen oder deren Internetverbindung zeitlich abgerechnet wird, wertvolle Zeit, da sie Dateien, die sie nicht benötigen, nicht mehr herunterladen müssen. Weitere Informationen zu refuse Dateien und anderen Eigenschaften von CVSup entnehmen Sie bitte der Manualpage. Ausführen von <application>CVSup</application> Wir können nun eine Aktualisierung mit der folgenden Kommandozeile starten: &prompt.root; cvsup supfile supfile gibt dabei das eben erstelle supfile an. Wenn Sie X11 benutzen, wird cvsup ein GUI starten. Drücken Sie go und schauen Sie zu. Das Beispiel aktualisiert die Dateien im Verzeichnisbaum /usr/src. Sie müssen cvsup als root starten, damit Sie die nötigen Rechte haben, die Dateien zu aktualisieren. Sie sind vielleicht ein bisschen nervös weil Sie das Programm zum ersten Mal anwenden und möchten zuerst einmal einen Testlauf durchführen. Legen Sie dazu ein temporäres Verzeichnis an und übergeben es auf der Kommandozeile von cvsup: &prompt.root; mkdir /var/tmp/dest &prompt.root; cvsup supfile /var/tmp/dest Aktualisierungen werden dann nur in dem angegebenen Verzeichnis vorgenommen. CVSup untersucht die Dateien in /usr/src, wird aber keine dieser Dateien verändern. Die veränderten Dateien finden Sie stattdessen in /var/tmp/dest/usr/src. Die Statusdateien von CVSup werden ebenfalls nicht geändert, sondern in dem angegebenen Verzeichnis abgelegt. Wenn Sie Leseberechtigung in /usr/src haben, brauchen Sie das Programm noch nicht einmal unter root laufen zu lassen. Wenn Sie X11 nicht benutzen wollen oder keine GUIs mögen, sollten Sie cvsup wie folgt aufrufen: &prompt.root; cvsup -g -L 2 supfile verhindert den Start des GUIs. Wenn Sie kein X11 laufen haben, passiert das automatisch, ansonsten müssen Sie diesen Schalter angeben. Mit gibt CVSup Einzelheiten zu jeder Aktualisierung aus. Die Wortfülle der Meldungen können Sie von bis einstellen. In der Voreinstellung werden nur Fehlermeldungen ausgegeben. Eine Zusammenfassung der Optionen von CVSup erhalten Sie mit cvsup -H. Genauere Informationen finden Sie in der Manualpage von CVSup. Wenn Sie mit dem Ablauf der Aktualisierung zufrieden sind, können Sie CVSup regelmäßig aus &man.cron.8; ausführen. In diesem Fall sollten Sie natürlich nicht das GUI benutzen. <application>CVSup</application> Sammlungen Die CVSup Sammlungen sind hierarchisch organisiert. Es gibt wenige große Sammlungen, die in kleinere Teilsammlungen unterteilt sind. Wenn Sie eine große Sammlung beziehen, entspricht das dem Beziehen aller Teilsammlungen. Der Hierarchie der Sammlung wird in der folgenden Aufzählung durch Einrückungen dargestellt. Die am häufigsten benutzen Sammlungen sind src-all und ports-all. Die anderen Sammlungen werden von wenigen Leuten zu speziellen Zwecken benutzt und es kann sein, dass diese nicht auf allen Spiegeln zur Verfügung stehen. cvs-all release=cvs Das FreeBSD-Haupt-Repository einschließlich der Kryptographie-Module. distrib release=cvs Dateien, die zum Verteilen und Spiegeln von FreeBSD benötigt werden. doc-all release=cvs Quellen des FreeBSD-Handbuchs und weiterer Dokumentation. Diese Sammlung enthält nicht die FreeBSD-Webseite. ports-all release=cvs Die FreeBSD-Ports-Sammlung. Wenn Sie nicht die gesamte Ports-Sammlung (ports-all) aktualisieren wollen, sondern nur eine der nachstehend aufgeführten Teilsammlungen, aktualisieren Sie immer die Teilsammlung ports-base. Diese Teilsammlung enthält das Bausystem der Ports. Immer wenn ports-base geändert wird, ist es so gut wie sicher, dass diese Änderung auch tatsächlich von einem Port benutzt wird. Der Bau eines Ports, der auf Änderungen im Bausystem angewiesen wird, wird fehlschlagen, wenn das Bausystem noch auf einem alten Stand ist. Aktualisieren Sie vor allen Dingen ports-base, wenn Sie bei einem Bau merkwürdige Fehlermeldungen erhalten und kein aktuelles Bausystem benutzen. Wenn Sie die Datei ports/INDEX selbst erzeugen, brauchen Sie unbedingt die Sammlung ports-all (den ganzen Ports-Baum). Es ist nicht möglich, ports/INDEX nur mit einem Teilbaum zu erstellen. Lesen Sie dazu bitte die FAQ. ports-accessibility release=cvs Werkzeuge für behinderte Benutzer. ports-arabic release=cvs Arabische Sprachunterstützung. ports-archivers release=cvs Werkzeuge zum Archivieren. ports-astro release=cvs Astronomie-Programme. ports-audio release=cvs Audio-Programme. ports-base release=cvs Das Bausystem der Ports-Sammlung. Dazu gehören verschiedene Dateien in den Unterverzeichnissen Mk/ und Tools/ von /usr/ports. Aktualisieren Sie diese Teilsammlung jedes Mal, wenn Sie einen Teil der Ports-Sammlung aktualisieren. Lesen Sie dazu auch den obigen Hinweis zur Ports-Sammlung. ports-benchmarks release=cvs Benchmarks. ports-biology release=cvs Biologie. ports-cad release=cvs Computer Aided Design Werkzeuge. ports-chinese release=cvs Chinesische Sprachunterstützung. ports-comms release=cvs Programme zur Datenkommunikation. ports-converters release=cvs Zeichensatz Konvertierer. ports-databases release=cvs Datenbanken. ports-deskutils release=cvs Sachen, die sich vor dem Computer-Zeitalter auf dem Schreibtisch befanden. ports-devel release=cvs Werkzeuge für Entwickler. ports-dns release=cvs Software für DNS. ports-editors release=cvs Editoren. ports-emulators release=cvs Programme, die andere Betriebssysteme emulieren. ports-finance release=cvs Finanz-Anwendungen. ports-ftp release=cvs Werkzeuge für FTP Clients und Server. ports-games release=cvs Spiele. ports-german release=cvs Deutsche Sprachunterstützung. ports-graphics release=cvs Graphik-Programme. ports-hebrew release=cvs Hebräische Sprachunterstützung. ports-hungarian release=cvs Ungarische Sprachunterstützung. ports-irc release=cvs Internet Relay Chat Werkzeuge. ports-japanese release=cvs Japanische Sprachunterstützung. ports-java release=cvs &java; Werkzeuge. ports-korean release=cvs Koreanische Sprachunterstützung. ports-lang release=cvs Programmiersprachen. ports-mail release=cvs E-Mail Programme. ports-math release=cvs Programme zur numerischen Mathematik. ports-mbone release=cvs MBone Anwendungen. ports-misc release=cvs Verschiedene Werkzeuge. ports-multimedia release=cvs Multimedia-Anwendungen. ports-net release=cvs Netzwerk-Programme. ports-net-im release=cvs Diverse Instant-Messenger. ports-net-mgmt release=cvs Software zum Verwalten von Netzwerken. ports-net-p2p release=cvs Software für die Nutzung von Peer-to-Peer-Netzwerken. ports-news release=cvs USENET News Werkzeuge. ports-palm release=cvs Programme für den Palm. ports-polish release=cvs Polnische Sprachunterstützung. ports-ports-mgmt release=cvs Werkzeuge zum Management von Ports und Paketen. ports-portuguese release=cvs Portugiesische Sprachunterstützung. ports-print release=cvs Druckprogramme. ports-russian release=cvs Russische Sprachunterstützung. ports-science release=cvs Wissenschaft. ports-security release=cvs Werkzeuge zum Thema Sicherheit. ports-shells release=cvs Kommandozeilen-Shells. ports-sysutils release=cvs System-Werkzeuge. ports-textproc release=cvs Programme zur Textverarbeitung (ohne Desktop Publishing). ports-ukrainian release=cvs Ukrainische Sprachunterstützung. ports-vietnamese release=cvs Vietnamesische Sprachunterstützung. ports-www release=cvs Software rund um das World Wide Web. ports-x11 release=cvs X-Window Programme. ports-x11-clocks release=cvs X11-Uhren. ports-x11-fm release=cvs X11-Dateiverwalter. ports-x11-fonts release=cvs X11-Zeichensätze und Werkzeuge dazu. ports-x11-toolkits release=cvs X11-Werkzeuge. ports-x11-servers release=cvs X11-Server. ports-x11-themes release=cvs X11-Themes. ports-x11-wm release=cvs X11-Fensterverwalter. projects-all release=cvs Quelltexte der verschiedenen FreeBSD-Projekte. src-all release=cvs Die FreeBSD-Quellen einschließlich der Kryptographie-Module. src-base release=cvs Verschiedene Dateien unter /usr/src. src-bin release=cvs Benutzer-Werkzeuge die im Einzelbenutzermodus gebraucht werden (/usr/src/bin). + + src-cddl + release=cvs + + + Werkzeuge und Bibliotheken, die der + CDDL-Lizenz unterliegen + (/usr/src/cddl). + + + src-contrib release=cvs Werkzeuge und Bibliotheken, die nicht aus dem FreeBSD-Projekt stammen und wenig verändert übernommen werden. (/usr/src/contrib). src-crypto release=cvs Kryptographische Werkzeuge und Bibliotheken, die nicht aus dem FreeBSD-Projekt stammen und wenig verändert übernommen werden. (/usr/src/crypto). src-eBones release=cvs Kerberos und DES (/usr/src/eBones). Wird in aktuellen Releases von FreeBSD nicht benutzt. src-etc release=cvs Konfigurationsdateien des Systems (/usr/src/etc). src-games release=cvs Spiele (/usr/src/games). src-gnu release=cvs Werkzeuge, die unter der GNU Public License stehen (/usr/src/gnu). src-include release=cvs Header Dateien (/usr/src/include). src-kerberos5 release=cvs Kerberos5 (/usr/src/kerberos5). src-kerberosIV release=cvs KerberosIV (/usr/src/kerberosIV). src-lib release=cvs Bibliotheken (/usr/src/lib). src-libexec release=cvs Systemprogramme, die von anderen Programmen ausgeführt werden (/usr/src/libexec). src-release release=cvs Dateien, die zum Erstellen eines FreeBSD Releases notwendig sind (/usr/src/release). + + src-rescue + release=cvs + + + Statisch gelinkte Programme zur + Wiederherstellung eines defekten Systems. + Lesen Sie dazu auch die Manualpage + &man.rescue.8; + (/usr/src/rescue). + + + src-sbin release=cvs Werkzeuge für den Einzelbenutzermodus (/usr/src/sbin). src-secure release=cvs Kryptographische Bibliotheken und Befehle (/usr/src/secure). src-share release=cvs Dateien, die von mehreren Systemen gemeinsam benutzt werden können (/usr/src/share). src-sys release=cvs Der Kernel (/usr/src/sys). src-sys-crypto release=cvs Kryptographie Quellen des Kernels (/usr/src/sys/crypto). src-tools release=cvs Verschiedene Werkzeuge zur Pflege von FreeBSD (/usr/src/tools). src-usrbin release=cvs Benutzer-Werkzeuge (/usr/src/usr.bin). src-usrsbin release=cvs System-Werkzeuge (/usr/src/usr.sbin). www release=cvs Die Quellen der FreeBSD-WWW-Seite. distrib release=self Die Konfigurationsdateien des CVSup Servers. Diese werden von den CVSup benutzt. gnats release=current Die GNATS Datenbank, in der Problemberichte verwaltet werden. mail-archive release=current Das Archiv der FreeBSD-Mailinglisten. www release=current Die formatierten Dateien der FreeBSD-WWW-Seite (nicht die Quellen). Diese werden von den WWW-Spiegeln benutzt. Weiterführende Informationen Die CVSup FAQ und weitere Informationen über CVSup finden Sie auf The CVSup Home Page. FreeBSD spezifische Diskussionen über CVSup finden auf der Mailingliste &a.hackers; statt. Dort und auf der Liste &a.announce; werden neue Versionen von CVSup angekündigt. Fragen und Problemberichte sollten an den Autor des Programms cvsup-bugs@polstra.com weitergeleitet werden. CVSup-Server Die folgende Aufzählung enthält CVSup Server für FreeBSD: &chap.mirrors.cvsup.inc; Portsnap einsetzen Einführung Bei Portsnap handelt es sich um ein System für die sichere Distribution der &os;-Ports-Sammlung. Dazu wird in der Regel stündlich ein Snapshot des Ports-Baumes erzeugt, der anschließend komprimiert und kryptografisch signiert wird. Die dabei erzeugten Dateien werden danach über HTTP verteilt. Analog zu CVSup verwendet auch auch Portsnap das Pull-Prinzip, um die Ports-Sammlung zu aktualisieren: Der komprimierte und signierte Ports-Baum wird auf einem Webserver abgelegt, der danach passiv auf Client-Anforderungen wartet. Ein Anwender muss daher &man.portsnap.8; manuell starten, um seine Ports-Sammlung zu aktualisieren. Eine Alternative ist das Erstellen eines &man.cron.8; -Jobs, der den Ports-Baum regelmäßig automatisch aktualisiert. Beachten Sie, dass Portsnap nicht mit der echten Ports-Sammlung unter /usr/ports/, sondern mit einer komprimierten Kopie des Ports-Baumes arbeitet, die in der Voreinstellung unter /var/db/portsnap/ angelegt wird. Diese komprimierte Version wird danach dazu verwendet, den tatsächlichen Ports-Baum zu aktualisieren. Haben Sie Portsnap über die &os;-Ports-Sammlung installiert, wird der komprimierte Ports-Baum statt unter /var/db/portsnap/ unter /usr/local/portsnap/ angelegt. Installation Seit &os; 6.0 ist Portsnap im &os;-Basissystem enthalten. Verwenden Sie eine ältere &os;-Version, können Sie zur Installation den Port ports-mgmt/portsnap verwenden. <application>portsnap</application> konfigurieren portsnap kann über die Datei /etc/portsnap.conf konfiguriert werden. In der Regel kann allerdings die Standardkonfiguration unverändert übernommen werden. Wollen Sie die Datei dennoch anpassen, sollten Sie zuvor &man.portsnap.conf.5; lesen. Wurde Portsnap über die &os;-Ports-Sammlung installiert, so wird statt /etc/portsnap.conf /usr/local/etc/portsnap.conf als Konfigurationsdatei verwendet. Diese Datei wird während der Installation nicht angelegt, allerdings wird eine Beispielkonfigurationsdatei mitgeliefert, die Sie in dieses Verzeichnis kopieren können: &prompt.root; cd /usr/local/etc && cp portsnap.conf.sample portsnap.conf Der erste Aufruf von <application>portsnap</application> Wenn Sie &man.portsnap.8; das erste Mal aufrufen, müssen Sie einen komprimierten Snapshot des kompletten Ports-Baumes nach /var/db/portsnap/ herunterladen (oder nach /usr/local/portsnap/ Sie Portsnap über die Ports-Sammlung installiert haben). Die ungefähre Größe des komprimierten Ports-Baumes beträgt derzeit (Anfang 2006) etwa 41 MB. &prompt.root; portsnap fetch Nachdem der komprimierte Snapshot heruntergeladen wurde, kann eine Live-Version des Ports-Baumes nach /usr/ports/ extrahiert werden. Dieser Schritt ist selbst dann nötig, wenn sich bereits ein Ports-Baum in diesem Verzeichnis befindet (der beispielsweise von CVSup angelegt wurde), weil portsnap einen Ausgangszustand des Ports-Baumes benötigt, um festzustellen, welche Teile des Baums aktualisiert werden müssen: &prompt.root; portsnap extract Bei einer &os;-Standardinstallation wird das Verzeichnis /usr/ports nicht angelegt. Verwenden Sie &os; 6.0-RELEASE, sollten Sie dies vor der ersten Ausführung von portsnap nachholen. Verwenden Sie hingegen eine aktuellere &os;-Version oder eine aktuellere Version von Portsnap, wird dies beim ersten Aufruf von portsnap automatisch erledigt. Den Ports-Baum aktualisieren Nachdem der originale komprimierte Snapshot des Ports-Baumes heruntergeladen und nach /usr/ports/ extrahiert wurde, können Sie den Ports-Baum aktualisieren. Dazu sind zwei Schritte nötig: Mit fetch laden Sie Aktualisierungen herunter, mit update aktualisieren Sie die Live-Version des Ports-Baumes. Beide Parameter können gleichzeitig an portsnap übergeben werden: &prompt.root; portsnap fetch update Einige ältere portsnap-Versionen unterstützen diese Syntax nicht. In diesem Fall gehen Sie wie folgt vor: &prompt.root; portsnap fetch &prompt.root; portsnap update Portsnap als cron-Job starten Um eine Überlastung der Portsnap-Server zu vermeiden, kann portsnap fetch nicht als normaler &man.cron.8;-Job ausgeführt werden. Als Alternative gibt es den Befehl portsnap cron, der eine zufällige Zeitspanne (bis zu 3600 Sekunden) wartet, bevor Aktualisierungen heruntergeladen werden. portsnap update sollte ebenfalls nicht als cron-Job ausgeführt werden, da es zu massiven Problemen kann, wenn parallel zur Aktualisierung ein Port gebaut oder installiert wird. Die Aktualisierung des Portsindex stellt hingegen kein Problem dar. Um die INDEX-Datei zu aktualisieren, übergeben Sie zusätzlich die Option an portsnap. (Wenn Sie portsnap -I update als cron-Job definiert haben, müssen Sie portsnap update ohne die Option aufrufen, um den Rest des Ports-Baumes zu aktualisieren.) Wenn Sie die folgende Zeile in /etc/crontab aufnehmen, aktualisiert portsnap den komprimierten Snapshot sowie die INDEX-Dateien unter /usr/ports/ und verschickt eine E-Mail, wenn Ihre installierten Ports veraltet sind: 0 3 * * * root portsnap -I cron update && pkg_version -vIL= Ist Ihre Systemuhr nicht auf Ihre lokale Zeitzone eingestellt, ersetzen Sie bitte 3 durch eine beliebige Zahl zwischen 0 und 23, damit die Last der Portsnap-Server gleichmäßiger verteilt wird. Einige ältere portsnap-Versionen unterstützen die Angabe von mehreren Befehlen (etwa cron update) für einen einzigen portsnap-Aufruf nicht. Ist dies bei Ihnen der Fall, ersetzen Sie bitte portsnap -I cron update durch portsnap cron && portsnap -I update. CVS-Tags Wenn Sie Quellen mit CVS oder CVSup erhalten oder aktualisieren wollen, müssen Sie ein Tag angeben. Ein Tag kann einen bestimmten &os;-Zweig oder einen bestimmten Zeitpunkt (Release-Tag) bestimmen. Tags für Zweige Mit Ausnahme von HEAD (das immer ein gültiges Tag ist), können die folgenden Tags nur im src/-Quellbaum verwendet werden. Die Quellbäume ports/, doc/ und www/ sind nicht verzweigt. HEAD Symbolischer Name für den Hauptzweig, auch &os.current; genannt. Dies ist die Vorgabe, wenn keine Revision angegeben wird. In CVSup wird dieses Tag mit einem . (Punkt) bezeichnet. In CVS ist das die Vorgabe, wenn Sie kein Tag oder eine Revision angeben. Außer Sie wollen einen -STABLE Rechner auf -CURRENT aktualisieren, ist es nicht ratsam, die -CURRENT Quellen auf einem -STABLE Rechner einzuspielen. RELENG_6 Der Entwicklungszweig für FreeBSD-6.X, auch als FreeBSD 6-STABLE bekannt. RELENG_6_2 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 6.1 durchgeführt werden. RELENG_6_1 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 6.1 durchgeführt werden. RELENG_6_0 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 6.0 durchgeführt werden. RELENG_5 Der &os; 5.X Entwicklungszweig, der auch &os; 5-STABLE genannt wird. RELENG_5_5 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.5 durchgeführt werden. RELENG_5_4 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.4 durchgeführt werden. RELENG_5_3 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.3 durchgeführt werden. RELENG_5_2 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.2 und &os; 5.2.1 durchgeführt werden. RELENG_5_1 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.1 durchgeführt werden. RELENG_5_0 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 5.0 durchgeführt werden. RELENG_4 Der &os; 4.X Entwicklungszweig, der auch &os; 4-STABLE genannt wird. RELENG_4_11 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.11 durchgeführt werden. RELENG_4_10 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.10 durchgeführt werden. RELENG_4_9 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.9 durchgeführt werden. RELENG_4_8 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.8 durchgeführt werden. RELENG_4_7 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.7 durchgeführt werden. RELENG_4_6 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.6 und FreeBSD 4.6.2 durchgeführt werden. RELENG_4_5 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.5 durchgeführt werden. RELENG_4_4 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.4 durchgeführt werden. RELENG_4_3 Der Zweig, auf dem sicherheitsrelevante oder kritische Fehlerbehebungen für FreeBSD 4.3 durchgeführt werden. RELENG_3 Der FreeBSD-3.X Entwicklungszweig, der auch 3.X-STABLE genannt wird. RELENG_2_2 Der FreeBSD-2.2.X Entwicklungszweig, der auch 2.2-STABLE genannt wird. Release-Tags Diese Tags geben den Zeitpunkt an, an dem eine bestimme &os;-Version veröffentlicht wurde. Das Erstellen einer Release ist in den Dokumenten Release Engineering Information und Release Process beschrieben. Der src-Baum benutzt Tags, deren Namen mit RELENG_ anfangen. Die Bäume ports und doc benutzen Tags, deren Namen mit RELEASE anfangen. Im Baum www werden keine Release-Tags verwendet. RELENG_6_2_0_RELEASE FreeBSD 6.2 RELENG_6_1_0_RELEASE FreeBSD 6.1 RELENG_6_0_0_RELEASE FreeBSD 6.0 RELENG_5_5_0_RELEASE FreeBSD 5.5 RELENG_5_4_0_RELEASE FreeBSD 5.4 RELENG_4_11_0_RELEASE FreeBSD 4.11 RELENG_5_3_0_RELEASE FreeBSD 5.3 RELENG_4_10_0_RELEASE FreeBSD 4.10 RELENG_5_2_1_RELEASE FreeBSD 5.2.1 RELENG_5_2_0_RELEASE FreeBSD 5.2 RELENG_4_9_0_RELEASE FreeBSD 4.9 RELENG_5_1_0_RELEASE FreeBSD 5.1 RELENG_4_8_0_RELEASE FreeBSD 4.8 RELENG_5_0_0_RELEASE FreeBSD 5.0 RELENG_4_7_0_RELEASE FreeBSD 4.7 RELENG_4_6_2_RELEASE FreeBSD 4.6.2 RELENG_4_6_1_RELEASE FreeBSD 4.6.1 RELENG_4_6_0_RELEASE FreeBSD 4.6 RELENG_4_5_0_RELEASE FreeBSD 4.5 RELENG_4_4_0_RELEASE FreeBSD 4.4 RELENG_4_3_0_RELEASE FreeBSD 4.3 RELENG_4_2_0_RELEASE FreeBSD 4.2 RELENG_4_1_1_RELEASE FreeBSD 4.1.1 RELENG_4_1_0_RELEASE FreeBSD 4.1 RELENG_4_0_0_RELEASE FreeBSD 4.0 RELENG_3_5_0_RELEASE FreeBSD-3.5 RELENG_3_4_0_RELEASE FreeBSD-3.4 RELENG_3_3_0_RELEASE FreeBSD-3.3 RELENG_3_2_0_RELEASE FreeBSD-3.2 RELENG_3_1_0_RELEASE FreeBSD-3.1 RELENG_3_0_0_RELEASE FreeBSD-3.0 RELENG_2_2_8_RELEASE FreeBSD-2.2.8 RELENG_2_2_7_RELEASE FreeBSD-2.2.7 RELENG_2_2_6_RELEASE FreeBSD-2.2.6 RELENG_2_2_5_RELEASE FreeBSD-2.2.5 RELENG_2_2_2_RELEASE FreeBSD-2.2.2 RELENG_2_2_1_RELEASE FreeBSD-2.2.1 RELENG_2_2_0_RELEASE FreeBSD-2.2.0 AFS-Server Die folgende Aufzählung enthält AFS Server für FreeBSD: Schweden Die Dateien sind unter dem Pfad /afs/stacken.kth.se/ftp/pub/FreeBSD/ erreichbar. stacken.kth.se # Stacken Computer Club, KTH, Sweden 130.237.234.43 #hot.stacken.kth.se 130.237.237.230 #fishburger.stacken.kth.se 130.237.234.3 #milko.stacken.kth.se Betreuer ftp@stacken.kth.se rsync-Server rsync wird ähnlich wie &man.rcp.1; verwendet, besitzt aber mehr Optionen und verwendet das rsync remote-update Protokoll, das nur geänderte Dateien überträgt und damit viel schneller als ein normaler Kopiervorgang ist. rsync ist sehr nützlich, wenn Sie einen FreeBSD-FTP-Spiegel oder einen CVS-Spiegel betreiben. Das Programm ist für viele Betriebssysteme erhältlich, mit FreeBSD können Sie den Port net/rsync oder das fertige Paket benutzen. Die folgenden Server stellen FreeBSD über das rsync Protokoll zur Verfügung: Deutschland rsync://grappa.unix-ag.uni-kl.de/ Verfügbare Sammlungen: freebsd-cvs: Das vollständige CVS-Repository von &os;. Neben anderen Repositories spiegelt diese Maschine auch die Repositories der NetBSD- und OpenBSD-Projekte. Großbritannien rsync://rsync.mirror.ac.uk/ Verfügbare Sammlungen: ftp.FreeBSD.org: Kompletter Spiegel des FreeBSD-FTP-Servers. Niederlande rsync://ftp.nl.FreeBSD.org/ Verfügbare Sammlungen: vol/4/freebsd-core: Kompletter Spiegel des FreeBSD-FTP-Servers. Taiwan rsync://ftp.tw.FreeBSD.org/ rsync://ftp2.tw.FreeBSD.org/ rsync://ftp6.tw.FreeBSD.org/ Verfügbare Sammlungen: FreeBSD: Kompletter Spiegel des FreeBSD-FTP-Servers. Tschechische Republik rsync://ftp.cz.FreeBSD.org/ Verfügbare Sammlungen: ftp: Unvollständiger Spiegel des FreeBSD-FTP-Servers. FreeBSD: Vollständiger Spiegel des FreeBSD-FTP-Servers. USA rsync://ftp-master.FreeBSD.org/ Dieser Server darf nur von primären Spiegeln benutzt werden. Verfügbare Sammlungen: FreeBSD: Das Hauptarchiv des FreeBSD FTP Servers. acl: Die primäre ACL-Liste. rsync://ftp13.FreeBSD.org/ Verfügbare Sammlungen: FreeBSD: Kompletter Spiegel des FreeBSD-FTP-Servers.
diff --git a/de_DE.ISO8859-1/books/handbook/preface/preface.sgml b/de_DE.ISO8859-1/books/handbook/preface/preface.sgml index a99b668cab..f35de133e0 100644 --- a/de_DE.ISO8859-1/books/handbook/preface/preface.sgml +++ b/de_DE.ISO8859-1/books/handbook/preface/preface.sgml @@ -1,708 +1,736 @@ Vorwort Über dieses Buch Der erste Teil dieses Buchs führt &os;-Einsteiger durch den Installationsprozess und stellt leicht verständlich Konzepte und Konventionen vor, die &unix; zu Grunde liegen. Sie müssen nur neugierig sein und bereitwillig neue Konzepte aufnehmen, wenn diese vorgestellt werden, um diesen Teil durchzuarbeiten. Wenn Sie den ersten Teil bewältigt haben, bietet der umfangreichere zweite Teil eine verständliche Darstellung vieler Themen, die für &os;-Administratoren relevant sind. Wenn Kapitel auf anderen Kapiteln aufbauen, wird das in der Übersicht am Anfang eines Kapitels erläutert. Weitere Informationsquellen entnehmen Sie bitte . Änderungen gegenüber der zweiten Auflage Die dritte Auflage des Handbuchs ist das Ergebnis der über zwei Jahre dauernden engagierten Arbeit des &os; Documentation Projects. Die wichtigsten Änderungen dieser Auflage sind: , Konfiguration und Tuning, enthält neue Abschnitte über ACPI, Energie- und Ressourcenverwaltung und das Werkzeug cron. , Sicherheit, erläutert nun Virtual Private Networks (VPNs), Zugriffskontrolllisten (ACLs) und Sicherheitshinweise. , Mandatory Access Control (MAC), ist ein neues Kapitel, das vorgeschriebene Zugriffskontrollen vorstellt und erklärt, wie &os;-Systeme mit MACs abgesichert werden können. , Vinum, ist ebenfalls ein neues Kapitel in dieser Auflage. Dieses Kapitel beschreibt den Logical-Volume-Manager Vinum, der geräteunabhängige logische Platten und RAID-0, RAID-1 sowie RAID-5 auf Software-Ebene bereitstellt. Zum Kapitel , PPP und SLIP, wurde ein Abschnitt über Fehlersuche hinzugefügt. , Elektronische Post (E-Mail), wurde um Abschnitte über andere Transport-Agenten (MTAs), SMTP-Authentifizierung, UUCP, fetchmail, procmail und weitere Themen erweitert. , Netzwerkserver, ist ein weiteres neues Kapitel dieser Auflage. Das Kapitel beschreibt, wie der Apache HTTP-Server, ftpd und ein Samba-Server für µsoft; &windows;-Clients eingerichtet werden. Einige Abschnitte aus dem , Weiterführende Netzwerkthemen, befinden sich nun, wegen des thematischen Zusammenhangs, in diesem Kapitel. Das , Weiterführende Netzwerkthemen, beschreibt nun den Einsatz von &bluetooth;-Geräten unter &os; und das Einrichten von drahtlosen Netzwerken sowie ATM-Netzwerken. Neu hinzugefügt wurde ein Glossar, das die im Buch verwendeten technischen Ausdrücke definiert. Das Erscheinungsbild der Tabellen und Abbildungen im Buch wurde verbessert. Änderungen gegenüber der ersten Auflage Die zweite Auflage ist das Ergebnis der engagierten Arbeit der Mitglieder des &os; Documentation Projects über zwei Jahre. Die wichtigsten Änderungen gegenüber der ersten Auflage sind: Ein Index wurde erstellt. Alle ASCII-Darstellungen wurden durch Grafiken ersetzt. Jedes Kapitel wird durch eine Übersicht eingeleitet, die den Inhalt des Kapitels zusammenfasst und die Voraussetzungen für ein erfolgreiches Durcharbeiten des Kapitels darstellt. Der Inhalt wurde in die logischen Abschnitte Erste Schritte, Systemadministration und Anhänge unterteilt. (&os; installieren) wurde komplett neu geschrieben und mit Abbildungen versehen, die Einsteigern das Verständnis des Texts erleichtern. (Grundlagen des &unix; Betriebssystems) wurde um den Abschnitt Dämonen, Signale und Stoppen von Prozessen erweitert. Das (Installieren von Anwendungen) behandelt nun auch Pakete. (Das X Window System) wurde neu geschrieben. Der Schwerpunkt liegt auf modernen Benutzeroberflächen unter &xfree86; 4.X wie KDE und GNOME. Das (&os;s Bootvorgang) wurde erweitert. (Speichermedien) ist aus den beiden Kapiteln Laufwerke und Sicherungen entstanden. Die in den beiden Kapiteln diskutierten Themen sind so leichter zu verstehen. Hinzugekommen ist ein Abschnitt über Software- und Hardware-RAID. Das (Serielle Datenübertragung) wurde umorganisiert und auf &os; 4.X/5.X angepasst. Das (PPP und SLIP) wurde aktualisiert. (Weiterführende Netzwerkthemen) wurde um viele neue Abschnitte erweitert. (Electronic Mail) wurde um einen Abschnitt über die Konfiguration von sendmail erweitert. (&linux; Compatibility) behandelt zusätzlich die Installation von &oracle; und &sap.r3;. Neu hinzugekommen sind: Konfiguration und Tuning () und Multimedia (). Gliederung Dieses Buch ist in fünf Abschnitte unterteilt. Der erste Abschnitt, Erste Schritte, behandelt die Installation und die Grundlagen von &os;. Dieser Abschnitt sollte in der vorgegebenen Reihenfolge durchgearbeitet werden, schon Bekanntes darf aber übersprungen werden. Der zweite Abschnitt, Oft benutzte Funktionen, behandelt häufig benutzte Funktionen von &os;. Dieser Abschnitt sowie alle nachfolgenden Abschnitte können in beliebiger Reihenfolge gelesen werden. Jeder Abschnitt beginnt mit einer kurzen Übersicht, die das Thema des Abschnitts und das nötige Vorwissen erläutert. Die Übersichten helfen dem Leser, interessante Kapitel zu finden und erleichtern das Stöbern im Handbuch. Der dritte Abschnitt, Systemadministration, behandelt die Administration eines &os;-Systems. Der vierte Abschnitt, Netzwerke, bespricht Netzwerke und Netzwerkdienste. Der fünfte Abschnitt enthält Anhänge und Verweise auf weitere Informationen. , Einführung Dieses Kapitel macht Einsteiger mit &os; vertraut. Es behandelt die Geschichte, die Ziele und das Entwicklungsmodell des &os;-Projekts. , Installation Beschreibt den Ablauf der Installation. Spezielle Installationsmethoden, wie die Installation mit einer seriellen Konsole, werden ebenfalls behandelt. , Grundlagen des &unix; Betriebssystems Erläutert die elementaren Kommandos und Funktionen von &os;. Wenn Sie schon mit &linux; oder einem anderen &unix; System vertraut sind, können Sie dieses Kapitel überspringen. , Installieren von Anwendungen Zeigt wie mit der innovativen Ports-Sammlung oder mit Paketen Software von Fremdherstellern installiert wird. , Das X Window System Beschreibt allgemein das X Window System und geht speziell auf X11 unter &os; ein. Weiterhin werden grafische Benutzeroberflächen wie KDE und GNOME behandelt. , Desktop-Anwendungen Enthält eine Aufstellung verbreiteter Anwendungen wie Browser, Büroanwendungen und Office-Pakete und beschreibt wie diese Anwendungen installiert werden. , Multimedia Erklärt, wie Sie auf Ihrem System Musik und Videos abspielen können. Beispielhaft werden auch Anwendungen aus dem Multimedia-Bereich beleuchtet. , Konfiguration des &os;-Kernels Erklärt, warum Sie einen angepassten Kernel erzeugen sollten und gibt ausführliche Anweisungen wie Sie einen angepassten Kernel konfigurieren, bauen und installieren. , Drucken Beschreibt, wie Sie Drucker unter &os; verwalten. Diskutiert werden Deckblätter, das Einrichten eines Druckers und ein Abrechnungssystem für ausgedruckte Seiten. , &linux;-Binärkompatibilität Beschreibt die binäre Kompatibilität zu &linux;. Weiterhin werden ausführliche Installationsanleitungen für &oracle;, &sap.r3; und Mathematica gegeben. , Konfiguration und Tuning Beschreibt die Einstellungen, die ein Systemadministrator vornehmen kann, um die Leistungsfähigkeit eines &os; Systems zu verbessern. In diesem Kapitel werden auch verschiedene Konfigurationsdateien besprochen. , &os;s Bootvorgang Erklärt den Bootprozess von &os; und beschreibt die Optionen, mit denen sich der Bootprozess beeinflussen lässt. , Benutzer und grundlegende Account-Verwaltung Beschreibt, wie Benutzer-Accounts angelegt, verändert und verwaltet werden. Weiterhin wird beschrieben, wie dem Benutzer zur Verfügung stehende Ressourcen beschränkt werden können. , Sicherheit Beschreibt die Werkzeuge mit denen Sie Ihr &os;-System absichern. Unter Anderem werden Kerberos, IPsec und OpenSSH besprochen. + + , Jails + + Dieses Kapitel beschreibt das Jails-Framework sowie die + Vorteile von Jails gegenüber der traditionellen + chroot-Unterstützung von &os;. + + + , Mandatory Access Control Erklärt vorgeschriebene Zugriffskontrollen (MACs) und wie mit ihrer Hilfe &os;-Systeme gesichert werden. + + , Security Event Auditing + + Beschreibt, was &os; Event Auditing ist, wie Sie diese + Funktion installieren und konfigurieren und die damit + erzeugten Audit-Trails überwachen und auswerten + können. + + + , Speichermedien Erläutert den Umgang mit Speichermedien und Dateisystemen. Behandelt werden Plattenlaufwerke, RAID-Systeme, optische Medien, Bandlaufwerke, RAM-Laufwerke und verteilte Dateisysteme. , GEOM Beschreibt das GEOM-Framework von FreeBSD sowie die Konfiguration der verschiedenen unterstützten RAID-Level. , Vinum Beschreibt den Vinum Volume Manager, der virtuelle Laufwerke, RAID-0, RAID-1 und RAID-5 auf Software-Ebene bereitstellt. + + , Virtualization + + Dieses Kapitel beschreibt verschiedene + Virtualisierungslösungen und wie diese mit + &os; zusammenarbeiten. + + + , Lokalisierung Zeigt wie Sie &os; mit anderen Sprachen als Englisch einsetzen. Es wird sowohl die Lokalisierung auf der System-Ebene wie auch auf der Anwendungs-Ebene betrachtet. , Das Neueste und Beste Erklärt die Unterschiede zwischen &os;-STABLE, &os;-CURRENT und &os;-Releases. Das Kapitel enthält Kriterien anhand derer Sie entscheiden können, ob es sich lohnt, ein Entwickler-System zu installieren und aktuell zu halten. Die Vorgehensweise dazu wird ebenfalls beschrieben. , Serielle Datenübertragung Erläutert, wie Sie Terminals und Modems an Ihr &os;-System anschließen und sich so ein- und auswählen können. , PPP und SLIP Erklärt wie Sie mit PPP, SLIP oder PPP über Ethernet ein &os;-System mit einem entfernten System verbinden. , Elektronische Post (E-Mail) Erläutert die verschiedenen Bestandteile eines E-Mail Servers und zeigt einfache Konfigurationen für sendmail, dem meist genutzten E-Mail-Server. , Netzwerkserver Bietet ausführliche Informationen und Beispielkonfigurationen, die es Ihnen ermöglichen, Ihren &os;-Rechner als Network File System Server, Domain Name Server, Network Information Server, oder als Zeitsynchronisationsserver einzurichten. , Firewalls Erklärt die Philosophie hinter softwarebasierten Firewalls und bietet ausführliche Informationen zur Konfiguration der verschiedenen, für FreeBSD verfügbaren Firewalls. , Weiterführende Netzwerkthemen Behandelt viele Netzwerkthemen, beispielsweise das Verfügbarmachen einer Internetverbindung für andere Rechner eines LANs, Routing, drahtlose Netzwerke, &bluetooth;, IPv6, ATM und andere mehr. , Bezugsquellen für &os; Enthält eine Aufstellung der Quellen von denen Sie &os; beziehen können: CD-ROM, DVD sowie Internet-Sites. , Bibliografie Dieses Buch behandelt viele Themen und kann nicht alle Fragen erschöpfend beantworten. Die Bibliografie enthält weiterführende Bücher, die im Text zitiert werden. , Ressourcen im Internet Enthält eine Aufstellung der Foren, die &os; Benutzern für Fragen und Diskussionen zur Verfügung stehen. , PGP Schlüssel Enthält PGP-Fingerabdrücke von etlichen &os; Entwicklern. Konventionen in diesem Buch Damit der Text einheitlich erscheint und leicht zu lesen ist, werden im ganzen Buch die nachstehenden Konventionen beachtet: Typographie Kursiv Für Dateinamen, URLs, betonte Teile eines Satzes und das erste Vorkommen eines Fachbegriffs wird ein kursiver Zeichensatz benutzt. Fixschrift Fehlermeldungen, Kommandos, Umgebungsvariablen, Namen von Ports, Hostnamen, Benutzernamen, Gruppennamen, Gerätenamen, Variablen und Code-Ausschnitte werden in einer Fixschrift dargestellt. Fett Fett kennzeichnet Anwendungen, Kommandozeilen und Tastensymbole. Benutzereingaben Tasten werden fett dargestellt, um sie von dem umgebenden Text abzuheben. Tasten, die gleichzeitig gedrückt werden müssen, werden durch ein + zwischen den einzelnen Tasten dargestellt: Ctrl Alt Del Im gezeigten Beispiel soll der Benutzer die Tasten Ctrl, Alt und Del gleichzeitig drücken. Tasten, die nacheinander gedrückt werden müssen, sind durch Kommas getrennt: Ctrl X , Ctrl S Das letzte Beispiel bedeutet, dass die Tasten Ctrl und X gleichzeitig betätigt werden und danach die Tasten Ctrl und S gleichzeitig gedrückt werden müssen. Beispiele Beispiele, die durch E:\> eingeleitet werden, zeigen ein &ms-dos; Kommando. Wenn nichts Anderes angezeigt wird, können diese Kommandos unter neuen Versionen von µsoft.windows; auch in einem DOS-Fenster ausgeführt werden. E:\> tools\fdimage floppies\kern.flp A: Beispiele, die mit &prompt.root; beginnen, müssen unter &os; mit Superuser-Rechten ausgeführt werden. Dazu melden Sie sich entweder als root an oder Sie wechseln von Ihrem normalen Account mit &man.su.1; zu dem Benutzer root. &prompt.root; dd if=kern.flp of=/dev/fd0 Beispiele, die mit &prompt.user; anfangen, werden unter einem normalen Benutzer-Account ausgeführt. Sofern nichts Anderes angezeigt wird, verwenden die Beispiele die Syntax der C-Shell. &prompt.user; top Danksagung Dieses Buch ist aus Beiträgen von vielen Leuten aus allen Teilen der Welt entstanden. Alle eingegangen Beiträge, zum Beispiel Korrekturen oder vollständige Kapitel, waren wertvoll. Einige Firmen haben dieses Buch dadurch unterstützt, dass Sie Autoren in Vollzeit beschäftigt und die Veröffentlichung des Buchs finanziert haben. Besonders BSDi, das später von Wind River Systems übernommen wurde, beschäftigte Mitglieder des &os; Documentation Projects, mit dem Ziel dieses Buch zu verbessern. Dadurch wurde die erste (englische) gedruckte Auflage im März 2000 möglich (ISBN 1-57176-241-8). Wind River Systems bezahlte dann weitere Autoren, die die zum Drucken nötige Infrastruktur verbesserten und zusätzliche Kapitel beisteuerten. Das Ergebnis dieser Arbeit ist die zweite (englische) Auflage vom November 2001 (ISBN 1-57176-303-1). Zwischen 2003 und 2004 bezahlte FreeBSD Mall, Inc mehrere Mitarbeiter für die Vorbereitung der gedruckten dritten Auflage. diff --git a/de_DE.ISO8859-1/books/handbook/jails/chapter.sgml b/de_DE.ISO8859-1/books/handbook/virtualization/chapter.sgml similarity index 70% copy from de_DE.ISO8859-1/books/handbook/jails/chapter.sgml copy to de_DE.ISO8859-1/books/handbook/virtualization/chapter.sgml index 9da2c704ca..f18128d833 100644 --- a/de_DE.ISO8859-1/books/handbook/jails/chapter.sgml +++ b/de_DE.ISO8859-1/books/handbook/virtualization/chapter.sgml @@ -1,31 +1,31 @@ - + - Jails (noch nicht übersetzt) + Virtualisierung (noch nicht übersetzt) Dieses Kapitel ist noch nicht übersetzt. Lesen Sie bitte + url="&url.books.handbook.en;/virtualization.html"> das Original in englischer Sprache. Wenn Sie helfen wollen, dieses Kapitel zu übersetzen, senden Sie bitte eine E-Mail an die Mailingliste &a.de.translators;.