aboutsummaryrefslogtreecommitdiff
path: root/de_DE.ISO8859-1/books/faq/book.sgml
diff options
context:
space:
mode:
Diffstat (limited to 'de_DE.ISO8859-1/books/faq/book.sgml')
-rw-r--r--de_DE.ISO8859-1/books/faq/book.sgml12390
1 files changed, 0 insertions, 12390 deletions
diff --git a/de_DE.ISO8859-1/books/faq/book.sgml b/de_DE.ISO8859-1/books/faq/book.sgml
deleted file mode 100644
index bac5de6098..0000000000
--- a/de_DE.ISO8859-1/books/faq/book.sgml
+++ /dev/null
@@ -1,12390 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
-<!DOCTYPE book PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
- "../../../share/sgml/freebsd42.dtd" [
-<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//DE" "../../share/sgml/entities.ent">
-%entities;
-<!ENTITY bibliography SYSTEM "../../share/sgml/bibliography.sgml">
-<!ENTITY rel.head "<emphasis>10-CURRENT</emphasis>">
-<!ENTITY rel.head.relx "10.<replaceable>X</replaceable>">
-<!ENTITY rel.head.releng "<symbol>HEAD</symbol>">
-<!ENTITY rel.head.packages "packages-10-current">
-<!ENTITY rel.relx "9.<replaceable>X</replaceable>">
-<!ENTITY rel.stable "<emphasis>9-STABLE</emphasis>">
-<!ENTITY rel.releng "<symbol>RELENG_9</symbol>">
-<!ENTITY rel.relengdate "September 2011">
-<!ENTITY rel.packages "packages-9-stable">
-<!ENTITY rel2.relx "8.<replaceable>X</replaceable>">
-<!ENTITY rel2.stable "<emphasis>8-STABLE</emphasis>">
-<!ENTITY rel2.releng "<symbol>RELENG_8</symbol>">
-<!ENTITY rel2.relengdate "August 2009">
-<!ENTITY rel2.packages "packages-8-stable">
-<!ENTITY rel3.current "7.4">
-<!ENTITY rel3.relx "7.<replaceable>X</replaceable>">
-<!ENTITY rel3.stable "<emphasis>7-STABLE</emphasis>">
-<!ENTITY rel3.releng "<symbol>RELENG_7</symbol>">
-<!ENTITY rel3.relengdate "October 2007">
-<!ENTITY rel3.packages "packages-7-stable">
-]>
-
-<!--
- The FreeBSD Documentation Project
- The FreeBSD German Documentation Project
-
-$FreeBSD$
-$FreeBSDde$
-
- basiert auf: r39057
-
--->
-
-<book id="faq" lang="de">
- <bookinfo>
- <title>Häufig gestellte Fragen zu &os;
- &rel3.relx;, &rel2.relx; und &rel.relx;</title>
-
- <subtitle>Frequently Asked Questions zu &os;
- &rel3.relx;, &rel2.relx; und &rel.relx;</subtitle>
-
- <authorgroup>
- <corpauthor>The &os; German Documentation
- Project</corpauthor>
-
- <collab>
- <collabname>Deutsche Übersetzung von Robert S. F.
- Drehmel, Dirk Gouders, Udo Erdelhoff, Johann Kois
- und Benedict Reuschling</collabname>
- </collab>
- </authorgroup>
-
- <copyright>
- <year>1995</year>
- <year>1996</year>
- <year>1997</year>
- <year>1998</year>
- <year>1999</year>
- <year>2000</year>
- <year>2001</year>
- <year>2002</year>
- <year>2003</year>
- <year>2004</year>
- <year>2005</year>
- <year>2006</year>
- <year>2007</year>
- <year>2008</year>
- <year>2009</year>
- <year>2010</year>
- <year>2011</year>
- <year>2012</year>
- <holder>The &os; Documentation Project</holder>
- </copyright>
-
- <copyright>
- <year>2000 - 2011</year>
-
- <holder>The &os; German Documentation Project</holder>
- </copyright>
-
- &legalnotice;
-
- <legalnotice id="trademarks" role="trademarks">
- &tm-attrib.freebsd;
- &tm-attrib.3com;
- &tm-attrib.adobe;
- &tm-attrib.creative;
- &tm-attrib.cvsup;
- &tm-attrib.ibm;
- &tm-attrib.ieee;
- &tm-attrib.intel;
- &tm-attrib.iomega;
- &tm-attrib.linux;
- &tm-attrib.microsoft;
- &tm-attrib.mips;
- &tm-attrib.netscape;
- &tm-attrib.opengroup;
- &tm-attrib.oracle;
- &tm-attrib.sgi;
- &tm-attrib.sparc;
- &tm-attrib.sun;
- &tm-attrib.usrobotics;
- &tm-attrib.general;
- </legalnotice>
-
- <releaseinfo>$FreeBSD$</releaseinfo>
-
- <abstract>
- <para>Dies ist die FAQ für die &os;-Versionen &rel3.relx;
- &rel2.relx; und &rel.relx;. Alle Einträge sollten
- für &os; ab Version &rel3.relx; relevant sein,
- andernfalls wird darauf explizit hingewiesen. Falls Sie daran
- interessiert sein sollten, an diesem Projekt mitzuarbeiten,
- senden Sie eine Mail an die Mailingliste &a.de.translators;. Die
- aktuelle Version dieses Dokuments ist ständig auf dem <ulink
- url="http://www.FreeBSD.org/">&os; World-Wide-Web-Server</ulink>
- verfügbar. Sie kann aber auch als eine einzige große <ulink
- url="book.html">HTML</ulink>-Datei, als Textdatei, als &postscript;-
- oder PDF-Datei sowie in verschiedenen anderen Formaten vom <ulink
- url="ftp://ftp.de.FreeBSD.org/pub/FreeBSD/doc/">&os; FTP-Server</ulink>
- heruntergeladen werden. Alternativ können Sie die FAQ auch <ulink
- url="&url.base;/search/search.html"> durchsuchen</ulink>.</para>
- </abstract>
- </bookinfo>
-
- <chapter id="introduction">
- <title>Einleitung</title>
-
- <para>Willkommen zur &os; &rel3.relx;-&rel2.relx;- und &rel.relx;
- FAQ!</para>
-
- <para>Wie auch bei den Usenet FAQs üblich, wird mit diesem
- Dokument beabsichtigt, die am häufigsten gestellten Fragen
- bezüglich des Betriebssystems &os; zu erfassen und sie
- natürlich auch zu beantworten. Obwohl FAQs
- ursprünglich lediglich dazu dienen sollten, die
- Netzbelastung zu reduzieren und das ständige Wiederholen
- derselben Fragen zu vermeiden, haben sie sich als wertvolle
- Informationsquellen etabliert.</para>
-
- <para>Wir haben uns die größte Mühe gegeben, diese
- FAQ so lehrreich wie möglich zu gestalten; falls Sie
- irgendwelche Vorschläge haben, wie sie verbessert werden
- kann, senden Sie diese bitte an die Mailingliste des
- &a.de.translators;.</para>
-
- <qandaset>
- <qandaentry>
- <question id="what-is-FreeBSD">
- <para>Was ist &os;?</para>
- </question>
-
- <answer>
- <para>&os; ist, kurz gesagt, ein &unix;&nbsp;ähnliches
- Betriebssystem für die Plattformen AMD64
- sowie &intel; EM64T, &i386;, IA-64, &arm;, &powerpc;, PC-98
- und &ultrasparc;,
- das auf der <quote>4.4BSD-Lite</quote>-Release
- der University of California at Berkeley (UCB) basiert;
- außerdem flossen einige Erweiterungen aus der
- <quote>4.4BSD-Lite2</quote>-Release mit ein. Es basiert
- außerdem indirekt auf der von William Jolitz unter
- dem Namen <quote>386BSD</quote> herausgebrachten
- Portierung der <quote>Net/2</quote>-Release der UCB auf
- die &i386;-Plattform - allerdings ist nur wenig vom
- 386BSD-Code übriggeblieben. Eine umfassendere
- Beschreibung darüber, was &os; ist und wie Sie es
- für Ihre Zwecke verwenden können, finden Sie auf
- den Internetseiten des <ulink
- url="&url.base;/de/index.html"> &os; Projects</ulink>.</para>
-
- <para>Unternehmen, Internet Service Provider, Forscher,
- Computerfachleute, Studenten und Privatnutzer auf der
- ganzen Welt benutzen &os; für die Arbeit, die
- Ausbildung oder zur Freizeitgestaltung.</para>
-
- <para>Ausführlichere Informationen zu &os;, finden
- Sie im <ulink
- url="&url.books.handbook;/index.html">&os; Handbuch</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="FreeBSD-goals">
- <para>Welches Ziel hat das &os; Project?</para>
- </question>
-
- <answer>
- <para>Die Ziel von &os; ist es, Software zur Nutzung
- für beliebige Zwecke, bedingungslos zur
- Verfügung zu stellen. Viele von uns haben
- erheblich zur Erstellung des Codes (und zum Projekt)
- beigetragen und hätten jetzt oder in Zukunft
- sicherlich nichts gegen einen geringen finanziellen
- Ausgleich einzuwenden, aber wir beabsichtigen definitiv
- nicht, darauf zu bestehen. Wir sind der Meinung,
- dass unsere <quote>Mission</quote> zuerst und
- vorderst darin besteht, allen und jedem Kommenden Code
- für welchen Zweck auch immer zur Verfügung zu
- stellen, damit der Code möglichst weit eingesetzt
- wird und den größtmöglichen Nutzen
- liefert. Das ist, so glauben wir, eines der
- fundamentalsten Ziele von freier Software und eines, das
- wir enthusiastisch unterstützen.</para>
-
- <para>Der Code in unserem Quellbaum, der der <ulink
- url="http://www.FreeBSD.org/copyright/COPYING">GNU General
- Public License (GPL)</ulink> oder der <ulink
- url="http://www.FreeBSD.org/copyright/COPYING.LIB">GNU
- Library General Public License (LGPL)</ulink> unterliegt,
- ist mit zusätzlichen, geringfügigen Bedingungen
- verknüpft, jedoch handelt es sich dabei lediglich um
- erzwungene Bereitstellung statt des sonst üblichen
- Gegenteils. Auf Grund der zusätzlichen
- Komplexität, die durch den kommerziellen Einsatz von
- GPL Software entstehen kann, bemühen wir uns jedoch,
- solche Software, wo möglich, durch solche, die der
- etwas lockereren <ulink
- url="http://www.FreeBSD.org/copyright/freebsd-license.html">&os;
- Lizenz</ulink> unterliegt, zu ersetzen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="bsd-license-restrictions">
- <para>Beinhaltet das &os;-Copyright irgendwelche
- Einschränkungen?</para>
- </question>
-
- <answer>
- <para>Ja. Diese Einschränkungen regeln aber nicht, wie
- Sie mit dem Sourcecode umgehen, sondern betreffen nur den
- Umgang mit dem &os; Project an sich. Wenn Sie sich
- ernsthaft damit auseinandersetzen wollen, lesen Sie
- einfach die <ulink
- url="http://www.FreeBSD.org/copyright/freebsd-license.html">
- &os;-Lizenz</ulink>. Wenn Sie einfach nur neugierig
- sind, sollte diese Zusammenfassung ausreichen:</para>
-
- <itemizedlist>
- <listitem>
- <para>Behaupten Sie nicht, Sie hätten es
- geschrieben.</para>
- </listitem>
-
- <listitem>
- <para>Verklagen Sie uns nicht, wenn irgend etwas nicht
- funktioniert.</para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="replace-current-OS">
- <para>Kann &os; mein bisher verwendetes Betriebssystem
- ersetzen?</para>
- </question>
-
- <answer>
- <para>In den meisten Fällen lautet die Antwort ja.
- Allerdings ist diese Frage nicht ganz so einfach, wie sie
- scheint.</para>
-
- <para>Die meisten Anwender benutzen kein Betriebssystem,
- sondern Anwendungen. Die Anwendungen sind es, die das
- Betriebssystem benutzen. &os; ist dazu gedacht, eine
- stabile und vielfältige Umgebung für Anwendungen
- bereitzustellen. Es unterstützt viele
- unterschiedliche Web-Browser, Büroanwendungen,
- E-Mail-Programme, Grafik-Programme, Entwicklungsumgebungen,
- Netzwerk-Server, und so ziemlich alles andere, was Sie sich
- wünschen können. Die meisten dieser Anwendungen
- sind in der <ulink
- url="http://www.FreeBSD.org/ports/">Ports-Sammlung</ulink>
- verfügbar.</para>
-
- <para>Wenn Sie Anwendung benutzen müssen, die es nur
- für ein bestimmtes Betriebssystem gibt, dann kommen
- Sie an diesem Betriebssystem nicht vorbei. Allerdings
- stehen die Chancen nicht schlecht, dass es eine
- vergleichbare Anwendung für &os; gibt. Wenn Sie
- einen verläßlichen Server für ihr
- Büro oder das Internet brauchen, oder eine stabilen
- Arbeitsplatz, oder einfach nur die Fähigkeit, ihre
- Arbeit ohne dauernde Abstürze machen zu können,
- dann kann &os; genau das sein. Viele Anwender auf der
- ganzen Welt, vom Anfänger bis zum erfahrenen
- Administrator, benutzen an Ihren Arbeitsplätzen
- ausschließlich &os;.</para>
-
- <para>Wenn Sie von einem anderen &unix; System zu &os;
- wechseln, dürfte Ihnen vieles bekannt vorkommen.
- Wenn Ihr Hintergrund ein Grafik-orientiertes
- Betriebssystem wie &windows; oder ein älteres &macos;
- ist, werden Sie zusätzliche Zeit investieren
- müssen, um den &unix; Stil zu verstehen. Dieser FAQ
- und das <ulink url="&url.books.handbook;/index.html">&os;
- Handbuch</ulink> sind die besten Startpunkte.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="why-called-FreeBSD">
- <para>Warum heißt es &os;?</para>
- </question>
-
- <answer>
- <itemizedlist>
- <listitem>
- <para>Es darf kostenlos genutzt werden - sogar von
- kommerziellen Benutzern.</para>
- </listitem>
-
- <listitem>
- <para>Der komplette Quellcode für das
- Betriebssystem ist frei verfügbar und die
- Benutzung, Verbreitung und Einbindung in andere
- (kommerzielle und nicht-kommerzielle) Arbeiten sind
- mit den geringstmöglichen Einschränkungen
- versehen worden.</para>
- </listitem>
-
- <listitem>
- <para>Jedem ist es freigestellt, Code für
- Verbesserungen oder die Behebung von Fehlern
- einzusenden und ihn zum Quellbaum hinzufügen zu
- lassen (dies ist natürlich Gegenstand von ein
- oder zwei offensichtlichen Klauseln).</para>
- </listitem>
- </itemizedlist>
-
- <para>Es wird darauf hingewiesen, dass das englische
- Wort <quote>free</quote> hier in den Bedeutungen
- <quote>umsonst</quote> und <quote>Sie können tun, was
- immer Sie möchten</quote> genutzt wird. Abgesehen
- von ein oder zwei Dingen, die Sie mit dem &os;-Code
- <emphasis>nicht</emphasis> tun können (z.B. vorgeben,
- ihn geschrieben zu haben), können Sie damit
- tatsächlich tun, was auch immer Sie möchten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="differences-to-other-bsds">
- <para>Wie unterschieden sich &os;, NetBSD, OpenBSD
- und andere Open-Source BSD-Systeme?</para>
- </question>
-
- <answer>
- <para>James Howards Artikel, genannt <ulink
- url="http://www.freebsdworld.gr/freebsd/bsd-family-tree.html">The
- BSD Family Tree</ulink>, beschreibt sehr gut die Geschichte
- und die Unterschiede der BSD-Varianten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="latest-version">
- <para>Welches ist die aktuelle &os;-Version?</para>
- </question>
-
-<!--
- This answer is a hack to deal with the fact that for now there are
- multiple "latest" versions of FreeBSD.
--->
-
- <answer>
- <para>Momentan gibt es zwei Entwicklungszweige,
- die für die Erstellung von Releases verwendet werden.
- Die &rel.relx;-RELEASEs werden auf dem &rel.stable;-Zweig erstellt,
- die &rel2.relx;-RELEASEs auf dem &rel2.stable;-Zweig.</para>
-
- <para>Bis zur Veröffentlichung von &os;&nbsp;8.0 galt
- die &rel3.relx;-Serie als <emphasis>-STABLE</emphasis>. Seither
- gibt es für den Zweig &rel3.relx; nur mehr
- eine <quote>erweiterte Unterstützung</quote> in der Form
- von Korrekturen von größeren Problemen, wie
- neu entdeckten Sicherheitsheitslücken. Aus dem Zweig
- &rel3.stable; werden zwar noch RELEASEs erzeugt, er gilt aber
- als <quote>ausgereift</quote>. Aktive Weiterentwicklungen
- konzentrieren sich daher auf den Zweig &rel.stable; und
- &rel2.stable;.</para>
-
- <para>Version <ulink
- url="ftp://ftp.de.FreeBSD.org/pub/FreeBSD/releases/i386/i386/&rel.current;-RELEASE/">&rel.current;</ulink>
- ist das aktuelle Release des &rel.stable;-Zweigs und ist im
- Januar 2009 <!--&rel.current.date;--> erschienen.
- Version <ulink
- url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel2.current;-RELEASE/">&rel2.current;</ulink>
- ist das aktuelle Release aus dem
- &rel2.stable;-Zweig und ist im
- November 2008 <!--&rel2.current.date;--> erschienen.</para>
-
- <para>Kurz gesagt, <emphasis>-STABLE</emphasis> ist
- für ISPs und andere Benutzer gedacht, die mehr Wert
- auf Stabilität und eine niedrige
- Änderungsfrequenz als auf die neuesten und
- möglicherweise unstabilen Features im
- aktuellen <emphasis>-CURRENT</emphasis> Snapshot legen.
- Releases können aus jedem Zweig entstehen, Sie
- sollten <emphasis>-CURRENT</emphasis> allerdings nur dann
- benutzen, wenn Sie auf ein erhöhtes Fehlverhalten
- im Vergleich zu <emphasis>-STABLE</emphasis> auch
- vorbereitet sind.</para>
-
- <para>Releases entstehen nur <link
- linkend="release-freq">alle paar Monate</link>. Viele
- Leute halten ihre Systeme aktueller (lesen Sie die Fragen
- zu <link linkend="current">&os;-CURRENT</link> und
- <link linkend="stable">&os;-STABLE</link>), aber das
- erfordert ein erhöhtes Engagement, da die Sourcen
- sich ständig verändern.</para>
-
- <para>Weitere Informationen über &os;-Releases entnehmen
- Sie der Seite <ulink
- url="http://www.FreeBSD.org/releng/index.html">Release
- Engineering</ulink> des &os; Webauftritts.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="current">
- <para>Was ist <emphasis>&os;-CURRENT</emphasis>?</para>
- </question>
-
- <answer>
- <para><ulink
- url="&url.books.handbook;/current-stable.html#CURRENT">
- &os;-CURRENT</ulink> ist die Entwicklungsversion des
- Betriebssystems, aus der zu gegebener Zeit &os.stable;
- werden wird. Als solche ist sie lediglich für
- Entwickler, die am System mitarbeiten und für
- unentwegte Bastler von Interesse. Details zum Betrieb von
- <emphasis>-CURRENT</emphasis> finden Sie im <ulink
- url="&url.books.handbook;/current-stable.html#CURRENT">
- entsprechenden Abschnitt</ulink> des <ulink
- url="&url.books.handbook;/index.html">Handbuchs</ulink>.</para>
-
- <para>Falls Sie nicht mit dem Betriebssystem vertraut sind
- oder nicht in der Lage sein sollten, den Unterschied
- zwischen einen echten und einem temporären Problem zu
- erkennen, sollten Sie &os.current; nicht verwenden.
- Dieser Zweig entwickelt sich manchmal sehr schnell weiter
- und kann gelegentlich nicht installierbar sein. Von Personen, die
- &os.current; verwenden, wird erwartet, dass Sie
- dazu in der Lage sind, Probleme zu analysieren und nur
- dann von ihnen berichten, wenn es sich um Fehler und nicht
- um <quote>kurzzeitige Störungen</quote> handelt.
- Fragen wie <quote>make world produziert Fehlermeldungen
- bezüglich Gruppen</quote> werden in der &a.current;
- Mailingliste manchmal nicht beachtet.</para>
-
- <para>Jeden Monat wird der aktuelle Entwicklungsstand in den
- Zweigen <emphasis>-CURRENT</emphasis> und
- <emphasis>-STABLE</emphasis> in einer <ulink
- url="&url.base;/snapshots/">Snapshot</ulink>
- Release festgehalten. Die Ziele dieser Snapshot
- Releases sind:</para>
-
- <itemizedlist>
- <listitem>
- <para>Die aktuelle Version der Installationssoftware zu
- testen.</para>
- </listitem>
-
- <listitem>
- <para>Personen, die <emphasis>-CURRENT</emphasis> oder
- <emphasis>-STABLE</emphasis> benutzen
- möchten, aber nicht über die nötige
- Zeit oder Bandbreite verfügen, um
- tagesaktuell zu bleiben, soll eine bequeme
- Möglichkeit geboten werden, es auf ihr System zu
- bringen.</para>
- </listitem>
-
- <listitem>
- <para>Die Erhaltung von Referenzpunkten des fraglichen
- Codes, für den Fall, dass wir später
- einmal ernsthaften Schaden anrichten sollten - obwohl
- CVS verhindern sollte, dass solche Situationen
- entstehen.</para>
- </listitem>
-
- <listitem>
- <para>Sicherzustellen, dass alle zu testenden, neuen
- Merkmale und Fehlerbehebungen zu möglichst vielen
- potentiellen Testern gelangen.</para>
- </listitem>
- </itemizedlist>
-
- <para>Von keinem <emphasis>-CURRENT</emphasis> Snapshot kann
- <quote>Produktionsqualität</quote> für beliebige
- Zwecke erwartet werden. Wenn Sie eine stabile und
- ausgetestete Version benötigen, sollten Sie eine
- vollständige Release oder einen <emphasis>-STABLE</emphasis>
- Snapshot verwenden.</para>
-
- <para>Snapshot-Releases sind auf der <ulink
- url="&url.base;/snapshots/">Snapshots</ulink>-Seite
- verfügbar.</para>
-
- <para>Offizielle Snapshots werden in der Regel jeden Monat für
- jeden aktiven Zweig erstellt. Es gibt auch täglich erstellte
- Snapshots der populären &arch.i386; und &arch.amd64; Zweige,
- die auf <ulink
- url="http://snapshots.us.freebsd.org/"></ulink> bereitliegen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="stable">
- <para>Was ist das Konzept von <emphasis>&os;-STABLE</emphasis>?</para>
- </question>
-
- <answer>
- <para>Zur der Zeit, als &os; 2.0.5 herausgegeben wurde,
- wurde entschieden, die Entwicklung von &os; zweizuteilen.
- Ein Zweig wurde <ulink
- url="&url.books.handbook;/current-stable.html#STABLE">-STABLE</ulink>,
- der andere <ulink
- url="&url.books.handbook;/cutting-edge.html#CURRENT">-CURRENT</ulink>
- genannt. <emphasis>&os;-STABLE</emphasis> ist für Anbieter
- von Internetdiensten und andere kommerzielle Unternehmen
- gedacht, für die plötzliche Veränderungen
- und experimentelle Features unerwünscht sind.
- In diesem Zweige werden nur ausgetestete
- Fehlerbehebungen und kleine, inkrementelle Änderungen
- aufgenommen. <emphasis>&os;-CURRENT</emphasis> ist eine
- ununterbrochene Linie seitdem die Version&nbsp;2.0 herausgegeben
- worden ist. Sie führt zu &rel.current;-RELEASE (und darüber
- hinaus). Weitere Informationen zu diesen Zweigen finden Sie unter
- <quote><ulink
- url="&url.articles.releng.en;/release-proc.html#REL-BRANCH">
- &os; Release Engineering: Creating the Release
- Branch</ulink></quote>, der Status der Zweige und der Zeitplan zur
- anstehenden Veröffentlichung kann unter der Seite <ulink
- url="http://www.FreeBSD.org/releng">Release Engineering
- Information</ulink> gefunden werden.</para>
-
- <para>Der Zweig 2.2-STABLE wurde mit der
- Veröffentlichung der Version 2.2.8 eingestellt. Der
- Zweig 3-STABLE endete mit Version 3.5.1, der letzten
- 3.<replaceable>X</replaceable>-Version, der Zweig
- 4.<replaceable>X</replaceable> endete mit der Version 4.11,
- der letzten 4.<replaceable>X</replaceable>-Version. Änderungen
- in diesen Zweigen beschränken sich im allgemeinen auf die
- Korrektur von sicherheitsrelevanten Fehlern. Der Zweig 5-STABLE
- wurde mit 5.5, der letzten 5.<replaceable>X</replaceable> Version,
- beendet. &rel3.stable; wird noch unterstützt, die
- Unterstützung beschränkt sich allerdings auf das
- Schließen von neu entdeckten Sicherheitslücken und die
- Behebung von anderen ernsten Problemen.</para>
-
- <para>&rel.current;-STABLE ist der Zweig, auf den sich die
- Entwicklung von <emphasis>-STABLE</emphasis> zur Zeit konzentriert.
- Das neueste Release aus dem &rel.current;-STABLE-Zweig ist
- &rel.current;-RELEASE und ist im Januar 2007
- <!--&rel.current.date;-->
- erschienen.</para>
-
- <para>Aus dem &rel.head;-Zweig entsteht die nächste
- &os;-Generation. Weitere Informationen über diesen
- Zweig finden Sie unter <link
- linkend="current">Was ist &os;-CURRENT?</link>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="release-freq">
- <para>Wann werden &os;-Versionen erstellt?</para>
- </question>
-
- <answer>
- <para>Im Schnitt gibt das &a.re; alle 18 Monate eine neue
- Haupt-Version und etwa alle 8 Monate eine Unter-Version frei.
- Das Erscheinungsdatum einer neuer Version wird frühzeitig
- bekanntgegeben, damit die am System arbeitenden Personen wissen,
- bis wann ihre Projekte abgeschlossen und ausgetestet sein
- müssen. Vor jedem Release gibt es eine Testperiode um
- sicherzustellen, dass die neu hinzugefügten Features
- nicht die Stabilität des Releases beeinträchtigen.
- Viele Benutzer halten dies für einen
- großen Vorteil von &os;, obwohl es manchmal
- frustrierend sein kann, so lange auf die
- Verfügbarkeit der aktuellsten Leckerbissen zu
- warten.</para>
-
- <para>Weitere Informationen über die Entwicklung von
- Releases, sowie eine Übersicht über kommende Releases,
- erhalten Sie auf den <ulink
- url="http://www.FreeBSD.org/releng/index.html">Release
- Engineering</ulink> Seiten der &os; Webseite.</para>
-
- <para>Für diejenigen, die ein wenig mehr Spannung
- brauchen (oder möchten), werden täglich
- Snapshots herausgegeben, wie oben beschrieben.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="responsible">
- <para>Wer ist für &os; verantwortlich?</para>
- </question>
-
- <answer>
- <para>Schlüsseldiskussionen, die das &os; Project
- betreffen, wie z.B. über die generelle Ausrichtung
- des Projekts und darüber, wem es erlaubt sein soll,
- Code zum Quellbaum hinzuzufügen, werden innerhalb
- eines <ulink
- url="&url.base;/de/administration.html#t-core">Core
- Teams</ulink> von 9 Personen geführt. Es gibt
- ein weitaus größeres Team von über 350
- <ulink
- url="&url.articles.contributors.en;/article.html#STAFF-COMMITTERS">Committern</ulink>,
- die dazu autorisiert sind, Änderungen am &os;
- Quellbaum durchzuführen.</para>
-
- <para>Jedoch werden die meisten nicht-trivialen
- Änderungen zuvor in den <link
- linkend="mailing">Mailinglisten</link> diskutiert und es
- bestehen keinerlei Einschränkungen darüber, wer
- sich an diesen Diskussionen beteiligen darf.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="where-get">
- <para>Wie kann ich &os; beziehen?</para>
- </question>
-
- <answer>
- <para>Jede bedeutende Ausgabe von &os; ist per
- Anonymous-FTP vom <ulink
- url="ftp://ftp.de.FreeBSD.org/pub/FreeBSD/">&os; FTP
- Server</ulink> erhältlich:</para>
-
- <itemizedlist>
- <listitem>
- <para>Das aktuelle &rel.stable;-Release, &rel.current;-RELEASE,
- finden Sie im Verzeichnis <ulink
- url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/i386/&rel.current;-RELEASE/">&rel.current;-RELEASE</ulink>.</para>
- </listitem>
-
- <listitem>
- <para><ulink
- url="&url.base;/snapshots/">Snapshots</ulink>-Releases werden
- monatlich aus dem <link
- linkend="current">-CURRENT</link>-Zweig sowie aus dem <link
- linkend="current">-STABLE</link>-Zweig erzeugt.
- Sie sollten aber nur von Entwicklern und sehr erfahrenen
- Testern verwendet werden.</para>
- </listitem>
-
- <listitem>
- <para>Das aktuelle Release von &rel2.stable;,
- &rel2.current;-RELEASE finden Sie im Verzeichnis <ulink
- url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/i386/&rel2.current;-RELEASE/">&rel2.current;-RELEASE</ulink>.</para>
- </listitem>
-
- <listitem>
- <para>Das aktuelle Release von &rel3.stable;,
- &rel3.current;-RELEASE finden Sie im Verzeichnis <ulink
- url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/i386/&rel3.current;-RELEASE/">&rel3.current;-RELEASE</ulink>.</para>
- </listitem>
- </itemizedlist>
-
- <para>Wo und wie Sie &os; auf CD, DVD, und anderen Medien
- beziehen können, erfahren Sie im <ulink
- url="&url.books.handbook;/mirrors.html">Handbuch</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="access-pr">
- <para>Wie greife ich auf die Datenbank mit Problemberichten
- zu?</para>
- </question>
-
- <answer>
- <para>Die Datenbank mit Problemberichten (PR,
- <foreignphrase>problem report</foreignphrase>) und
- Änderungsanfragen von Benutzern kann
- über die webbasierte <ulink
- url="http://www.de.FreeBSD.org/cgi/query-pr.cgi?query">
- PR-Abfrage</ulink>-Schnittstelle abgefragt werden.</para>
-
- <para>Mit dem Programm &man.send-pr.1; können Sie
- Problemberichte oder Änderungsanträge per E-Mail
- einsenden. Alternativ können Sie Problemberichte
- auch über Ihren Browser und die
- <ulink
- url="http://www.freebsd.org/send-pr.html">webbasierte
- PR-Eingabe</ulink>-Schnittstelle erstellen.</para>
-
- <para>Bevor Sie einen Fehler melden, sollten Sie sich zuerst
- den Artikel <ulink
- url="&url.articles.problem-reports.en;/article.html">Writing
- &os; Problem Reports</ulink> durchlesen, damit Sie
- wissen, wie Sie eine gute Fehlermeldung verfassen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="other-info-sources">
- <para>Gibt es weitere Informationsquellen?</para>
- </question>
-
- <answer>
- <para>Sie finden eine umfassende Liste unter <ulink
- url="http://www.FreeBSD.org/docs.html">Documentation</ulink>
- auf der <ulink
- url="http://www.FreeBSD.org">&os;-Webseite</ulink>.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="support">
- <title>Dokumentation und Support</title>
-
- <qandaset>
- <qandaentry>
- <question id="books">
- <para>Gibt es gute Bücher über &os;?</para>
- </question>
-
- <answer>
- <para>Im Zuge des &os; Projekts sind diverse gute
- Dokumente entstanden, die unter der
- folgenden URL abgerufen werden können: <ulink
- url="http://www.FreeBSD.org/docs.html"></ulink>. Zusätzlich
- enthält <link
- linkend="bibliography">die Bibliographie</link> am Ende
- dieser FAQ und <ulink
- url="&url.books.handbook;/bibliography.html">diejenige im
- Handbuch</ulink> Verweise auf weitere empfohlene Bücher.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="doc-formats">
- <para>Ist die Dokumentation auch in anderen Formaten
- verfügbar? Zum Beispiel als einfacher Text (ASCII)
- oder als &postscript;?</para>
- </question>
-
- <answer>
- <para>Ja. Werfen Sie einen Blick auf das Verzeichnis <ulink
- url="ftp://ftp.de.FreeBSD.org/pub/FreeBSD/doc/">/pub/FreeBSD/doc/</ulink>
- auf dem &os; FTP-Server. Dort finden sie Dokumentation
- in vielen verschiedenen Format.</para>
-
- <para>Die Dokumentation wurde nach vielen verschiedenen
- Kriterien sortiert. Die Kriterien sind:</para>
-
- <itemizedlist>
- <listitem>
- <para>Der Name des Dokumentes, z.B.
- <literal>FAQ</literal> oder
- <literal>Handbuch</literal>.</para>
- </listitem>
-
- <listitem>
- <para>Die Sprache und der Zeichensatz, die in dem
- Dokument verwendet werden. Diese entsprechen den
- Anpassungen, die Sie auf Ihrem &os;-System im
- Verzeichnis <filename
- class="directory">/usr/share/locale</filename>
- finden. Zurzeit werden die folgenden Sprachen und
- Zeichensätze benutzt:</para>
-
- <informaltable frame="none" pgwide="1">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Name</entry>
-
- <entry>Bedeutung</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry><literal>bn_BD.ISO10646-1</literal></entry>
-
- <entry>Bengalisch oder Bangla (Bangladesh) </entry>
- </row>
-
- <row>
- <entry><literal>da_DK.ISO8859-1</literal></entry>
-
- <entry>Dänisch (Dänemark)</entry>
- </row>
-
- <row>
- <entry><literal>de_DE.ISO8859-1</literal></entry>
-
- <entry>Deutsch (Deutschland)</entry>
- </row>
-
- <row>
- <entry><literal>en_US.ISO8859-1</literal></entry>
-
- <entry>Englisch (Vereinigte Staaten)</entry>
- </row>
-
- <row>
- <entry><literal>el_GR.ISO8859-7</literal></entry>
-
- <entry>Griechisch (Griechenland)</entry>
- </row>
-
- <row>
- <entry><literal>es_ES.ISO8859-1</literal></entry>
-
- <entry>Spanisch (Spanien)</entry>
- </row>
-
- <row>
- <entry><literal>fr_FR.ISO8859-1</literal></entry>
-
- <entry>Französisch (Frankreich)</entry>
- </row>
-
- <row>
- <entry><literal>it_IT.ISO8859-15</literal></entry>
-
- <entry>Italienisch (Italien)</entry>
- </row>
-
- <row>
- <entry><literal>hu_HU.ISO8859-2</literal></entry>
-
- <entry>Ungarisch (Ungarn)</entry>
- </row>
-
- <row>
- <entry><literal>ja_JP.eucJP</literal></entry>
-
- <entry>Japanisch (Japan, EUC-kodiert)</entry>
- </row>
-
- <row>
- <entry><literal>mn_MN.UTF-8</literal></entry>
-
- <entry>Mongolisch (Mongolei, UTF-8-kodiert)</entry>
- </row>
-
- <row>
- <entry><literal>nl_NL.ISO8859-1</literal></entry>
-
- <entry>Niederländisch (Holland)</entry>
- </row>
-
- <row>
- <entry><literal>no_NO.ISO8859-1</literal></entry>
-
- <entry>Norwegisch (Norwegen)</entry>
- </row>
-
- <row>
- <entry><literal>pl_PL.ISO8859-2</literal></entry>
-
- <entry>Polnisch (Polen)</entry>
- </row>
-
- <row>
- <entry><literal>pt_BR.ISO8859-1</literal></entry>
-
- <entry>Brasilianisches Portugiesisch (Brasilien)</entry>
- </row>
-
- <row>
- <entry><literal>ru_RU.KOI8-R</literal></entry>
-
- <entry>Russisch (Russland, KOI8-R-kodiert)</entry>
- </row>
-
- <row>
- <entry><literal>sr_YU.ISO8859-2</literal></entry>
-
- <entry>Serbisch (Serbien)</entry>
- </row>
-
- <row>
- <entry><literal>tr_TR.ISO8859-9</literal></entry>
-
- <entry>Türkisch (Türkei)</entry>
- </row>
-
- <row>
- <entry><literal>zh_CN.GB2312</literal></entry>
-
- <entry>Vereinfachtes Chinesisch (China,
- GB2312-kodiert)</entry>
- </row>
-
- <row>
- <entry><literal>zh_TW.Big5</literal></entry>
-
- <entry>Chinesisch (Taiwan, Big5-kodiert)</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
-
- <note>
- <para>Einige Dokumente sind nicht in allen Sprachen
- verfügbar.</para>
- </note>
- </listitem>
-
- <listitem>
- <para>Das Format des Dokumentes. Die Dokumentation wird
- in verschiedenen Formaten erzeugt, von denen jedes seine
- eigenen Vor- und Nachteile hat. Einige Formate lassen sich
- gut an einem Bildschirm lesen, während andere Formate
- dafür gedacht sind, ein ansprechendes Druckbild zu
- erzeugen. Das die Dokumentation in verschiedenen Formaten
- verfügbar ist, stellt sicher, dass unsere Leser
- die für sie relevanten Teile unabhängig vom
- Ausgabemedium (Bildschirm oder Papier) lesen können.
- Derzeit werden die folgenden Formate
- unterstützt:</para>
-
- <informaltable frame="none" pgwide="1">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Format</entry>
-
- <entry>Erklärung</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry><literal>html-split</literal></entry>
-
- <entry>Viele kleine HTML-Dateien, die sich
- gegenseitig referenzieren.</entry>
- </row>
-
- <row>
- <entry><literal>html</literal></entry>
-
- <entry>Eine große HTML-Datei, die das
- komplette Dokument enthält.</entry>
- </row>
-
- <row>
- <entry><literal>pdf</literal></entry>
-
- <entry>Adobe's Portable Document Format</entry>
- </row>
-
- <row>
- <entry><literal>ps</literal></entry>
-
- <entry>&postscript;</entry>
- </row>
-
- <row>
- <entry><literal>rtf</literal></entry>
-
- <entry>Microsoft's Rich Text Format</entry>
- </row>
-
- <row>
- <entry><literal>txt</literal></entry>
-
- <entry>Ganz normaler Text</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
-
- <note>
- <para>Die Seitennummern werden nicht automatisch aktualisiert,
- wenn Sie das Rich Text Format in Word laden. Wenn Sie das
- Dokument geladen haben, müssen Sie Sie <keycombo
- action="simul"><keycap>Ctrl</keycap><keycap>A</keycap></keycombo>,
- <keycombo
- action="simul"><keycap>Ctrl</keycap><keycap>End</keycap></keycombo>,
- <keycap>F9</keycap> eingeben, um die Seitennummern
- aktualisieren zu lassen.</para>
- </note>
- </listitem>
-
- <listitem>
- <para>Das zur Komprimierung verwendete Programm. Zur
- Zeit werden drei verschiedene Methoden
- benutzt.</para>
-
- <orderedlist>
- <listitem>
- <para>Wenn die Dokumentation im Format
- <literal>html-split</literal> vorliegt, werden die
- Dateien mit &man.tar.1; zusammengefasst. Die
- so entstandene <filename>.tar</filename> Datei
- wird dann mit einer der unten genannten Methoden
- komprimiert.</para>
- </listitem>
-
- <listitem>
- <para>Bei allen anderen Formaten existiert nur eine
- Datei mit dem Namen
- <filename><replaceable>type</replaceable>.<replaceable>format</replaceable></filename>
- (z.B. <filename>article.pdf</filename>,
- <filename>book.html</filename>, und so
- weiter).</para>
-
- <para>Diese Dateien werden mit zwei verschiedenen
- Programmen komprimiert.</para>
-
- <informaltable frame="none" pgwide="1">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Programm</entry>
-
- <entry>Beschreibung</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry><literal>zip</literal></entry>
-
- <entry>Das <literal>zip</literal>-Format. Wenn Sie
- diese Dateien unter &os; entpacken wollen,
- müssen sie vorher den Port
- <filename
- role="package">archivers/unzip</filename>
- installieren.</entry>
- </row>
-
- <row>
- <entry><literal>bz2</literal></entry>
-
- <entry>Das <literal>bzip2</literal>-Format. Es wird
- seltener als das <literal>zip</literal>-Format
- benutzt, erzeugt aber normalerweise kleinere
- Archive. Sie müssen den Port <filename
- role="package">archivers/bzip2</filename>
- installieren, um diese Dateien entpacken
- zu können.</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
-
- <para>Ein Beispiel: Die mit <literal>bzip2</literal> gepackte
- Version des Handbuchs im &postscript;-Format hat den Namen
- <filename>book.ps.bz2</filename> und ist im Verzeichnis
- <filename
- class="directory">handbook/</filename> zu finden.</para>
- </listitem>
- </orderedlist>
- </listitem>
- </itemizedlist>
-
- <para>Nachdem Sie das Format und das Kompressionsverfahren
- ausgewählt haben, müssen Sie die komprimierten Dateien
- selber herunterladen, entpacken und an die richtigen Stellen
- kopieren.</para>
-
- <para>Wenn Sie zum Beispiel die mit &man.bzip2.1; gepackte
- <quote>split HTML</quote>Version der englischen FAQ
- herunterladen und installieren wollten, bräuchten
- Sie die Datei
- <filename>doc/en_US.ISO8859-1/books/faq/book.html-split.tar.bz2</filename>.
- Um diese Datei herunterzuladen und auszupacken, wären
- die folgenden Schritte notwendig.</para>
-
- <screen>&prompt.root; <userinput>fetch ftp://ftp.de.FreeBSD.org/pub/FreeBSD/doc/en_US.ISO8859-1/books/faq/book.html-split.tar.bz2</userinput>
-&prompt.root; <userinput>gzip -d book.html-split.tar.bz2</userinput>
-&prompt.root; <userinput>tar xvf book.html-split.tar</userinput></screen>
-
- <para>Danach haben Sie eine Sammlung vieler kleiner
- <filename>.html</filename> Datei. Die wichtigste Datei
- hat Namen <filename>index.html</filename> und enthält
- das Inhaltsverzeichnis, eine Einleitung und Verweise auf
- die anderen Teile des Dokumentes. Falls notwendig,
- können Sie die diversen Dateien jetzt an ihren
- endgültigen Bestimmungsort verschieben oder
- kopieren.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="mailing">
- <para>Woher bekomme ich Informationen zu den &os;
- Mailinglisten?</para>
- </question>
-
- <answer>
- <para>Vollständige Informationen finden Sie im <ulink
- url="&url.books.handbook;/eresources.html#ERESOURCES-MAIL">Handbucheintrag
- über Mailinglisten</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="newsgroups">
- <para>Welche Newsgruppen existieren zu &os;?</para>
- </question>
-
- <answer>
- <para>Sie finden alle Informationen hierzu im <ulink
- url="&url.books.handbook;/eresources-news.html">Handbucheintrag zu
- Newsgruppen</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="irc">
- <para>Gibt es &os; IRC (Internet Relay Chat)
- Kanäle?</para>
- </question>
-
- <answer>
- <para>Ja, die meisten großen IRC Netze bieten einen
- &os; Chat-Channel:</para>
-
- <itemizedlist>
- <listitem>
- <para>Channel <literal>FreeBSD</literal> im <ulink
- url="http://www.efnet.org/index.php">EFNet</ulink> ist
- ein &os;-Forum, aber gehen Sie nicht dorthin, um
- technische Unterstützung zu suchen, oder, um zu
- versuchen, die Leute dort dazu zu bringen, Ihnen dabei
- zu helfen, das mühselige Lesen von Manuals zu
- ersparen oder eigene Nachforschungen zu betreiben. Es
- ist in erster Linie ein Chat-Channel und die Themen
- dort umfassen Sex, Sport oder Kernwaffen ebensogut,
- wie &os;. Sie wurden gewarnt! Der Channel ist auf
- dem Server <hostid>irc.efnet.org</hostid>
- verfügbar.</para>
- </listitem>
-
- <listitem>
- <para>Der Channel <literal>#FreeBSDhelp</literal> im
- <ulink
- url="http://www.efnet.org/index.php">EFNet</ulink> hat
- sich dagegen auf die Unterstützung der Benutzer
- von &os; spezialisiert. In diesem Channel sind
- Fragen deutlich willkommener als im Channel
- <literal>#FreeBSD</literal>.</para>
- </listitem>
-
- <listitem>
- <para>Der Channel <literal>##FreeBSD</literal> auf
- <ulink
- url="http://freenode.net/">Freenode</ulink> bietet allgemeine
- Hilfe zu &os;-Themen. Es sind immer viele Benutzer online.
- Zwar werden auch nicht-&os;-spezifische Themen diskutiert, den
- Hauptteil der Diskussionen dreht sich aber um die Lösung
- der Probleme von &os;-Anwendern. Die Teilnehmer dieses
- Channels helfen Ihnen auch bei Fragen zu elementaren Dingen und
- zeigen Ihnen auch, wo Sie die entsprechenden Erklärungen
- im &os;-Handbuch oder anderen Ressourcen finden können.
- Obwohl die Teilnehmer des Channels über die ganze Welt
- verstreut sind, werden alle Diskussionen auf Englisch
- geführt. Wollen Sie die Diskussion in Ihrer Sprache
- führen, sollten Sie Ihre Frage trotzdem auf Englisch
- stellen und danach gegebenenfalls einen neuen Channel in der
- Form
- <literal>##freebsd-<replaceable>Ihre_Sprache</replaceable></literal>
- eröffnen.</para>
- </listitem>
-
- <listitem>
- <para>Der Channel <literal>#FreeBSD</literal> im <ulink
- url="http://www.dal.net/">DALNET</ulink> ist in den
- USA unter <hostid>irc.dal.net</hostid> und in Europa
- unter <hostid>irc.eu.dal.net</hostid>
- verfügbar.</para>
- </listitem>
-
- <listitem>
- <para>Der Channel <literal>#FreeBSD</literal> im <ulink
- url="http://www.undernet.org/">UNDERNET</ulink> ist in
- den USA unter <hostid>us.undernet.org</hostid> und in
- Europa unter <hostid>eu.undernet.org</hostid>
- verfügbar. Es handelt sich hierbei um einen
- Hilfe-Channel, man wird Sie daher auf Dokumente
- verweisen, die Sie selbst lesen müssen.</para>
- </listitem>
-
- <listitem>
- <para>Der Channel <literal>#FreeBSD</literal> im <ulink
- url="http://www.rusnet.org.ru/">RUSNET</ulink> ist ein
- russischsprachiger Channel, der sich der Unterstützung von
- &os;-Anwendern verschrieben hat. Er ist auch ein guter
- Startpunkt für nichttechnische Diskussionen.</para>
- </listitem>
-
- <listitem>
- <para>Der Channel <literal>#bsdchat</literal> auf <ulink
- url="http://freenode.net/">Freenode</ulink>
- (Sprache: traditionelles Chinesisch, UTF-8-kodiert)
- hat sich der Unterstützung von &os;-Anwendern verschrieben.
- Er ist auch ein guter Startpunkt für
- nichttechnische Diskussionen.</para>
- </listitem>
- </itemizedlist>
-
- <para>Alle diese Kanäle unterscheiden sich voneinander
- und sind nicht miteinander verbunden. Ebenso
- unterscheiden sich Ihre Chat-Stile, weshalb es sein kann,
- dass Sie zunächst alle Kanäle ausprobieren
- müssen, um den zu Ihrem Chat-Stil passenden zu
- finden. Hier gilt, was für <emphasis>jeden</emphasis>
- IRC-Verkehr gilt: falls sie sich leicht angegriffen fühlen
- oder nicht mit vielen jungen (und einigen älteren) Leuten,
- verbunden mit dem nutzlosen Gezanke umgehen können, dann
- ziehen Sie es gar nicht erst in Erwägung.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="forums">
- <para>Gibt es irgendwelche webbasierten Foren, in denen &os;
- diskutiert wird?</para>
- </question>
-
- <answer>
- <para>Die offiziellen &os; Foren befinden sich unter <ulink
- url="http://forums.FreeBSD.org/">http://forums.FreeBSD.org/</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="training">
- <para>Gibt es Firmen, die Training und Support für
- &os; anbieten?</para>
- </question>
-
- <answer>
- <para><ulink
- url="http://www.ixsystems.com">iXsystems, Inc.</ulink>,
- die Muttergesellschaft der <ulink
- url="http://www.freebsdmall.com/">&os; Mall</ulink>,
- bietet kommerziellen Software-<ulink
- url="http://www.ixsystems.com/bsdsupport">Support</ulink>
- für &os; und PC-BSD sowie &os;-spezische
- Softwareentwicklung und Hilfe bei Optimierung Ihrer
- vorhandenen Installationen.</para>
-
- <para>Die BSD Certification Group, Inc. bietet Zertifizierungen zur
- Systemadministration für DragonFly&nbsp;BSD, &os;, NetBSD und
- OpenBSD. Wenn Sie daran interessiert sind, besuchen Sie
- deren <ulink
- url="http://www.BSDCertification.org">Webseite</ulink>.</para>
-
- <para>Wenn Ihre Firma oder Organisation ebenfalls Training
- und Support anbietet und hier genannt werden möchte,
- wenden Sie sich bitte an das &os; Project.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="install">
- <chapterinfo>
- <author>
- <firstname>Nik</firstname>
-
- <surname>Clayton</surname>
-
- <affiliation>
- <address><email>nik@FreeBSD.org</email></address>
- </affiliation>
- </author>
- </chapterinfo>
-
- <title>Installation</title>
-
- <qandaset>
- <qandaentry>
- <question id="floppy-download">
- <para>Welche Dateien muss ich herunterladen, um &os;
- zu bekommen?</para>
- </question>
-
- <answer>
- <para>Sie benötigen drei Floppy-Images:
- <filename>floppies/boot.flp</filename>,
- <filename>floppies/kern1.flp</filename> sowie
- <filename>floppies/kern2.flp</filename>. Diese Images
- müssen mit Hilfe von Werkzeugen wie
- <command>fdimage</command> oder &man.dd.1; auf Disketten
- kopiert werden.</para>
-
- <para>Falls Sie selbst die einzelnen Distributionen
- herunterladen müssen (um z.B. von einem
- DOS-Dateisystem aus zu installieren), empfehlen wir, sich
- die folgenden Distributionen zu besorgen:</para>
-
- <itemizedlist>
- <listitem>
- <para>base/</para>
- </listitem>
-
- <listitem>
- <para>manpages</para>
- </listitem>
-
- <listitem>
- <para>compat*</para>
- </listitem>
-
- <listitem>
- <para>doc</para>
- </listitem>
-
- <listitem>
- <para>src/ssys.*</para>
- </listitem>
- </itemizedlist>
-
- <para>Vollständige Instruktionen für dieses
- Vorgehen und ein wenig mehr zur Installation generell
- finden Sie im <ulink
- url="&url.books.handbook;/install.html">Handbucheintrag zur
- Installation von &os;</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="floppy-image-too-large">
- <para>Was soll ich tun, wenn das Floppy-Image nicht auf eine
- Diskette passt?</para>
- </question>
-
- <answer>
- <para>Eine 3,5-Zoll (1,44&nbsp;MB) Diskette kann 1.474.560&nbsp;Byte
- an Daten fassen und das Boot-Image ist exakt 1.474.560&nbsp;Byte
- groß.</para>
-
- <para>Häufige Fehler bei der Erstellung der
- Boot-Diskette sind:</para>
-
- <itemizedlist>
- <listitem>
- <para>Bei der Benutzung von <acronym>FTP</acronym> das
- Floppy-Image nicht im
- <emphasis>Binär</emphasis>-Modus
- herunterzuladen.</para>
-
- <para>Einige FTP-Clients benutzen als Voreinstellung den
- <emphasis>ASCII</emphasis>-Modus und versuchen, alle
- Zeilenendezeichen an das Zielsystem anzupassen.
- Dadurch wird das Boot-Image in jedem Fall unbrauchbar.
- Überprüfen Sie die Größe des
- heruntergeladenen Boot-Images: falls sie nicht
- <emphasis>exakt</emphasis> mit der auf dem Server
- übereinstimmt, hat das Herunterladen nicht
- richtig funktioniert.</para>
-
- <para>Abhilfe: geben Sie <emphasis>binary</emphasis> an
- der FTP-Eingabeaufforderung ein, nach dem Sie mit dem
- Server verbunden sind und bevor Sie das Image
- herunterladen.</para>
- </listitem>
-
- <listitem>
- <para>Die Benutzung des DOS-Befehls
- <command>copy</command> (oder eines entsprechendes
- Werkzeugs der grafischen Benutzeroberfläche), um
- das Boot-Image auf die Diskette zu
- übertragen.</para>
-
- <para>Programme wie <command>copy</command> sind hier
- unbrauchbar, weil das Image zur direkten
- Übertragung erstellt wurde. Das Image stellt den
- gesamten Disketteninhalt dar, Spur für Spur, und
- nicht eine gewöhnliche Datei. Sie müssen es
- <quote>roh</quote> mit speziellen Werkzeugen (z.B.
- <command>fdimage</command> oder
- <command>rawrite</command>) übertragen, wie es in
- der <ulink
- url="&url.books.handbook;/install.html">Installationsanleitung
- zu &os;</ulink> beschrieben ist.</para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="install-instructions-location">
- <para>Wo befinden sich die Instruktionen zur Installation
- von &os;?</para>
- </question>
-
- <answer>
- <para>Installationsanleitungen finden Sie im <ulink
- url="&url.books.handbook;/install.html">Handbucheintrag zur
- Installation von &os;</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="need-to-run">
- <para>Was benötige ich zum Betrieb von &os;?</para>
- </question>
-
- <answer>
- <para>Der Betrieb von &os; und neuer erfordert
- mindestens einen 486er Prozessor mit mindestens 24&nbsp;MB
- RAM sowie mindestens 150&nbsp;MB an Festplattenspeicher.</para>
-
- <para>Alle &os;-Versionen laufen mit einer einfachen
- MDA-Grafikkarte, für &xorg; benötigen Sie allerdings
- eine VGA- oder eine bessere Videokarte.</para>
-
- <para>Lesen Sie auch den <link linkend="hardware">Abschnitt
- Hardwarekompatibilität</link>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="custom-boot-floppy">
- <para>Wie kann ich eine angepasste
- Installationsdiskette erstellen?</para>
- </question>
-
- <answer>
- <para>Zurzeit gibt es keine Möglichkeit,
- <emphasis>nur</emphasis> die angepassten
- Installationsdisketten zu erstellen. Sie müssen sich
- eine ganz neues Release erstellen, das Ihre
- Installationsdiskette enthält.</para>
-
- <para>Wenn Sie eine modifizierte Ausgabe erstellen wollen,
- finden Sie eine Anleitung im Artikel <ulink
- url="&url.articles.releng.en;/article.html">
- &os; Release Engineering</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="windows-coexist">
- <para>Kann &windows; neben &os; existieren?</para>
- </question>
-
- <answer>
- <para>Installieren Sie zuerst &windows;, dann &os;.
- Der Bootmanager von &os; kann dann entweder &windows;
- oder &os; booten. Falls Sie &windows; nach &os;
- installieren, wird es, ohne zu fragen, Ihren Bootmanager
- überschreiben. Lesen Sie den nächsten
- Abschnitt, falls das passieren sollte.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="win95-damaged-boot-manager">
- <para>&windows; hat meinen Bootmanager zerstört!
- Wie stelle ich ihn wieder her?</para>
- </question>
-
- <answer>
- <para>Es gibt drei Möglichkeiten, den
- &os;-Bootmanager neu zu installieren:</para>
-
- <itemizedlist>
- <listitem>
- <para>Unter DOS wechseln Sie in das Verzeichnis
- <filename
- class="directory">tools/</filename> Ihrer &os;-Distribution und
- suchen nach <filename>bootinst.exe</filename>. Rufen sie es so
- auf:</para>
-
- <screen><prompt>...\TOOLS&gt;</prompt> <userinput>bootinst.exe boot.bin</userinput></screen>
-
- <para>und der Bootmanager wird neu installiert.</para>
- </listitem>
-
- <listitem>
- <para>Booten Sie &os; wieder mit der Bootdiskette und
- wählen Sie den Menüeintrag <guimenuitem>Custom
- Installation</guimenuitem>.
- Wählen Sie <guimenuitem>Partition</guimenuitem>.
- Wählen Sie das Laufwerk, auf dem sich der Bootmanager befand
- (wahrscheinlich der erste Eintrag) und wenn Sie in den
- Partitioneditor gelangen, drücken Sie als aller
- erstes (nehmen Sie z.B. keine Änderungen vor)
- (<keycap>W</keycap>)rite. Sie werden nach einer Bestätigung
- gefragt, wählen Sie &gui.yes; und vergessen Sie nicht, in der
- Bootmanager-Auswahl den <application>&os; Boot
- Manager</application> auszuwählen. Hierdurch wird der
- Bootmanager wieder auf die Festplatte geschrieben. Verlassen
- Sie nun das Installationsmenü und rebooten wie
- gewöhnlich von der Festplatte.</para>
- </listitem>
-
- <listitem>
- <para>Booten Sie &os; wieder mit der Bootdiskette
- (oder der CD-ROM) und wählen Sie den
- Menüpunkt <guimenuitem>Fixit</guimenuitem>. Wählen
- Sie die für Sie passende Option, entweder die
- Fixit-Diskette oder die CD-ROM Nummer 2 (die Option
- <quote>live</quote> Filesystem). Wechseln Sie zur
- Fixit-Shell und geben Sie den folgenden Befehl
- ein:</para>
-
- <screen><prompt>Fixit#</prompt> <userinput>fdisk -B -b /boot/boot0 <replaceable>bootdevice</replaceable></userinput></screen>
-
- <para>Als <replaceable>bootdevice</replaceable>
- müssen Sie das von Ihrem System verwendete
- Gerät angeben, z.B. <devicename>ad0</devicename>
- (erste IDE-Platte), <devicename>ad4</devicename>
- (erste IDE-Platte an einem zusätzlichen
- Controller), <devicename>da0</devicename> (erste
- SCSI-Platte), usw.</para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="boot-on-thinkpad">
- <para>Mein IBM Thinkpad Modell A, T oder X, hängt sich
- auf, wenn ich &os; zum ersten Mal starte. Was soll ich
- machen?</para>
- </question>
-
- <answer>
- <para>Ein Fehler in den ersten BIOS-Versionen dieser
- Geräte führt dazu, dass sie die von &os;
- genutzte Partition für eine Suspend-To-Disk-Partition
- halten. Wenn das BIOS dann versucht, diese Partition
- auszuwerten, hängt sich das System auf.</para>
-
- <para>Laut IBM
- <footnote>
- <para>In einer Mail von Keith Frechette
- <email>kfrechet@us.ibm.com</email>.</para>
- </footnote>
- wurde der Fehler wurde in den folgenden BIOS-Versionen
- behoben:</para>
-
- <informaltable frame="none" pgwide="1">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Gerät</entry>
-
- <entry>BIOS Version</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>T20</entry>
-
- <entry>IYET49WW oder neuer</entry>
- </row>
-
- <row>
- <entry>T21</entry>
-
- <entry>KZET22WW oder neuer</entry>
- </row>
-
- <row>
- <entry>A20p</entry>
-
- <entry>IVET62WW oder neuer</entry>
- </row>
-
- <row>
- <entry>A20m</entry>
-
- <entry>IWET54WW oder neuer</entry>
- </row>
-
- <row>
- <entry>A21p</entry>
-
- <entry>KYET27WW oder neuer</entry>
- </row>
-
- <row>
- <entry>A21m</entry>
-
- <entry>KXET24WW oder neuer</entry>
- </row>
-
- <row>
- <entry>A21e</entry>
-
- <entry>KUET30WW</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
-
- <para>Es ist möglich, dass neuere Version des IBM
- BIOS den Fehler wieder enthalten. <ulink
- url="http://docs.freebsd.org/cgi/mid.cgi?20010427133759.A71732">
- Dieser Beitrag</ulink> von &a.nectar; auf der
- Mailingliste &a.mobile; beschreibt eine Technik,
- die Ihnen weiterhelfen könnte, wenn Ihr IBM Laptop
- mit &os; nicht bootet und Sie eine neuere oder
- ältere BIOS-Version einspielen können.</para>
-
- <para>Wenn Ihr Thinkpad über eine ältere
- BIOS-Version verfügt und Sie das BIOS nicht
- aktualisieren können, ist eine der möglichen
- Lösungen, &os; zu installieren, die Partitions-ID
- zu ändern und danach neue Bootblocks zu installieren,
- die mit der geänderten ID umgehen
- können.</para>
-
- <para>Zunächst müssen Sie die Maschine so weit
- wiederherstellen, dass sie über den Selbst-Test
- hinauskommt. Dazu ist es erforderlich, dass das
- System beim Start keine Partitions-ID auf seiner
- primären Festplatte findet. Eine Variante ist, die
- Platte auszubauen und vorübergehend in einem
- älteren Thinkpad (z.B. dem Thinkpad 600) oder (mit
- einem passenden Adapter) in einen normalen PC einzubauen.
- Sobald dies erfolgt ist, können Sie die
- &os;-Partition löschen und die Festplatte wieder
- in das Thinkpad einbauen. Das Thinkpad sollte jetzt
- wieder starten können.</para>
-
- <para>Danach können Sie mit der nachfolgend
- beschriebenen Anleitung eine funktionsfähige
- &os;-Installation erhalten.</para>
-
- <procedure>
- <step>
- <para>Beschaffen Sie sich <filename>boot1</filename> und
- <filename>boot2</filename> von <ulink
- url="http://people.FreeBSD.org/~bmah/ThinkPad/"></ulink>.
- Legen Sie diese Dateien so ab, dass Sie
- während der Installation darauf zugreifen
- können.</para>
- </step>
-
- <step>
- <para>Installieren Sie ganz wie gewohnt &os; auf dem
- Thinkpad. Allerdings dürfen Sie den
- <quote>Dangerously Dedicated</quote>-Modus
- <emphasis>nicht benutzen</emphasis>. Nach dem
- Abschluss der Installation dürfen Sie die
- Maschine <emphasis>nicht neu
- starten</emphasis>.</para>
- </step>
-
- <step>
- <para>Wechseln Sie zur <quote>Emergency Holographic
- Shell</quote> (<keycombo
- action="simul">
- <keycap>Alt</keycap>
- <keycap>F4</keycap>
- </keycombo>)
- oder starten Sie eine <quote>fixit</quote>
- Shell.</para>
- </step>
-
- <step>
- <para>Benutzen Sie &man.fdisk.8;, um die Partitions-ID
- von &os; von <literal>165</literal> in
- <literal>166</literal> zu ändern (dieser Wert
- wird von OpenBSD benutzt).</para>
- </step>
-
- <step>
- <para>Kopieren Sie die Dateien
- <filename>boot1</filename> und
- <filename>boot2</filename> auf die lokale
- Festplatte.</para>
- </step>
-
- <step>
- <para>Installieren Sie
- <filename>boot1</filename> und
- <filename>boot2</filename> mit &man.disklabel.8; auf
- die &os;-Slice.</para>
-
- <screen>&prompt.root; <userinput>disklabel -B -b boot1 -s boot2 ad0s<replaceable>n</replaceable></userinput></screen>
-
- <para>Setzen Sie für <replaceable>n</replaceable>
- die Nummer der Slice ein, auf der sie FreeBSD
- installiert haben.</para>
- </step>
-
- <step>
- <para>Starten Sie das System neu. Am Boot-Prompt
- sollten Sie die Auswahl <literal>OpenBSD</literal>
- erhalten. Damit wird in Wirklichkeit &os;
- gestartet.</para>
- </step>
- </procedure>
-
- <para>Was Sie machen müssen, wenn Sie &os; und
- OpenBSD parallel installieren wollen, sollten Sie zu
- Übungszwecken einfach einmal selbst
- herausfinden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="install-bad-blocks">
- <para>Kann ich &os; auf einer Festplatte mit
- beschädigten Blöcken installieren?</para>
- </question>
-
- <answer>
- <para>Prinzipiell ja. Allerdings ist das keine gute
- Idee.</para>
-
- <para>Wenn Ihnen bei einer modernen IDE-Platte defekte
- Sektoren gemeldet werden, wird die Platte mit großer
- Wahrscheinlichkeit innerhalb kurzer Zeit vollständig
- ausfallen, da die Meldung ein Zeichen dafür ist,
- dass die für die Korrektur reservierten Sektoren
- bereits verbraucht wurden. Wir raten Ihnen, die Platte
- auszutauschen.</para>
-
- <para>Falls Sie ein SCSI-Laufwerk mit beschädigten
- Blöcken besitzen, lesen Sie <link
- linkend="awre">diese Antwort</link>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="boot-floppy-strangeness">
- <para>Wenn ich von der Installationsdiskette boote,
- geschehen merkwürdige Dinge! Was sollte ich
- tun?</para>
- </question>
-
- <answer>
- <para>Falls Sie beobachten, dass ihr Rechner sich bis
- zum Stillstand abmüht oder spontan rebootet,
- während Sie versuchen, von der Installationsdiskette
- zu booten, sollten Sie sich drei Fragen stellen:</para>
-
- <orderedlist>
- <listitem>
- <para>Haben Sie eine brandneue, frisch formatierte,
- fehlerfreie Diskette benutzt (günstigerweise eine
- brandneue, direkt aus dem Karton und nicht eine
- Diskette aus einem Magazin, das schon seit drei Jahren
- unter Ihrem Bett lag)?</para>
- </listitem>
-
- <listitem>
- <para>Haben Sie das Floppy-Image im Binär- (oder
- Image) Modus heruntergeladen? (Schämen Sie sich
- nicht. Sogar die besten unter uns haben wenigstens
- einmal Binärdateien versehentlich im ASCII-Modus
- heruntergeladen!)</para>
- </listitem>
-
- <listitem>
- <para>Falls Sie &windows;&nbsp;95 oder &windows;&nbsp;98
- benutzen, haben Sie es heruntergefahren und
- <command>fdimage</command> bzw.
- <command>rawrite</command> in einfachem, reinem DOS
- neu gestartet? Es scheint, dass diese
- Betriebssysteme Programme stören, die direkt auf
- Hardware schreiben, wie es das Erstellungsprogramm
- für die Diskette tut; selbst bei der
- Ausführung des Programms in einem DOS-Fenster in
- der grafischen Benutzeroberfläche kann dieses
- Problem auftreten.</para>
- </listitem>
- </orderedlist>
-
- <para>Es wurde auch darüber berichtet, dass
- &netscape; Probleme beim Herunterladen der Bootdisketten
- verursacht. Es ist also wahrscheinlich besser, einen
- anderen FTP-Client zu benutzen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="no-install-cdrom">
- <para>Ich habe zur Installation von meinem ATAPI CD-ROM
- gebootet, aber das Installationsprogramm sagt mir,
- dass es kein CD-ROM gefunden hat. Was geht hier
- ab?</para>
- </question>
-
- <answer>
- <para>Dieses Problem wird üblicherweise durch ein
- falsch konfiguriertes CD-ROM verursacht. Bei vielen PCs
- ist das CD-ROM der Slave am zweiten IDE-Controller, ein
- Master ist nicht vorhanden. Laut Spezifikation ist diese
- Konfiguration ungültig, aber &windows; verletzt die
- Spezifikation und das BIOS ignoriert sie, wenn es von
- einem CD-ROM booten soll. Daher konnten Sie zwar vom
- CD-ROM booten, während &os; es nicht für die
- Installation benutzen kann.</para>
-
- <para>Um dieses Problem zu lösen, müssen Sie
- entweder das CD-ROM als Master an den IDE-Controller
- anschließen oder dafür sorgen, dass an dem
- vom CD-ROM genutzten IDE-Controller das CD-ROM als Slave
- und ein anderes Gerät als Master angeschlossen
- ist.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="install-PLIP">
- <para>Kann ich auf meinem Laptop per PLIP (Parallel Line IP)
- installieren?</para>
- </question>
-
- <answer>
- <para>Ja, Sie brauchen dazu nur ein ganz normales
- Laplink-Kabel. Weitere Informationen zum Thema Netzwerke
- am Druckerport finden sie im Kapitel <ulink
- url="&url.books.handbook;/network-plip.html">PLIP</ulink> des
- Handbuchs.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="geometry">
- <para>Welche Geometrie sollte ich für ein
- Festplattenlaufwerk verwenden?</para>
- </question>
-
- <answer>
- <note>
- <para>Unter der <quote>Geometrie</quote> einer Festplatte
- verstehen wir die Anzahl Zylinder,
- Schreib-/Leseköpfen und Sektoren/Spur auf einer
- Festplatte. Im folgenden wird dafür der
- Übersichtlichkeit halber der Begriff C/H/S
- verwendet. Das BIOS des PCs berechnet mit diesen
- Angaben, auf welche Bereiche der Festplatte es für
- Schreib-/Lesezugriffe zugreifen muss).</para>
- </note>
-
- <para>Aus einigen Gründen scheint dies gerade bei
- frischgebackenen Systemadministratoren für sehr viel
- Verwirrung zu sorgen. Zunächst einmal ist die
- <emphasis>physikalische</emphasis> Geometrie eines
- SCSI-Laufwerks vollkommen irrelevant, da &os; mit
- Blöcken arbeitet. Tatsächlich gibt es
- <quote>die</quote> physikalische Geometrie nicht, da die
- Sektordichte auf einer Festplatte variiert. Was die
- Hersteller als die <quote>wahre</quote> physikalische
- Geometrie bezeichnen, ist im allgemeinen die Geometrie,
- die aufgrund ihrer Ergebnisse im geringsten ungenutzten
- Speicher resultiert. Bei IDE-Platten arbeitet &os; mit
- C/H/S-Angaben, aber alle modernen Laufwerke wandeln diese
- intern ebenfalls in Blocknummern um.</para>
-
- <para>Wichtig ist nur die <emphasis>logische</emphasis>
- Geometrie. Das BIOS kann die logische Geometrie der
- Festplatte abfragen; die erhaltenen Daten werden dann vom
- BIOS bei Zugriffen auf die Festplatte genutzt. Da &os;
- das BIOS benutzt, während es bootet, ist es sehr
- wichtig, dass diese Angaben richtig sind.
- Insbesondere müssen alle Betriebssysteme mit
- derselben Geometrie arbeiten, falls Sie mehr als ein
- Betriebssystem auf einer Festplatte haben. Andernfalls
- werden Sie ernsthafte Bootprobleme bekommen!</para>
-
- <para>Bei SCSI-Festplatten hängt die zu verwendende
- Geometrie davon ab, ob der Extended Translation Support
- auf Ihrem Controller eingeschaltet ist (oft auch als
- <quote>Unterstützung für DOS-Platten
- &gt;1GB</quote> oder ähnlich bezeichnet). Falls sie
- ausgeschaltet ist, benutzen Sie
- <replaceable>N</replaceable> Zylinder, 64 Köpfe und
- 32 Sektoren/Spur, wobei <replaceable>N</replaceable> die
- Kapazität der Festplatte in MB ist. Zum Beispiel
- sollten für eine 2&nbsp;GB Festplatte 2048 Zylinder, 64
- Köpfe und 32 Sektoren/Spur angegeben werden.</para>
-
- <para>Falls sie <emphasis>eingeschaltet</emphasis> ist (was
- oft der Fall ist, um bestimmte Einschränkungen von
- &ms-dos; zu umgehen) und die Plattenkapazität mehr als
- 1&nbsp;GB beträgt, benutzen Sie M Zylinder, 63
- Sektoren/Spur (<emphasis>nicht</emphasis> 64) und 255
- Köpfe, wobei <replaceable>M</replaceable> der
- Plattenkapazität in MB, dividiert durch 7,844238
- entspricht (!). Also würde unsere 2&nbsp;GB Beispielplatte
- 261 Zylinder, 63 Sektoren/Spur und 255 Köpfe haben.</para>
-
- <para>Falls Sie sich hier nicht sicher sind oder &os;
- während der Installation die Geometrie nicht richtig
- erkennt, hilft es normalerweise, eine kleine DOS-Partition
- auf der Festplatte anzulegen. Das BIOS sollte dann in der
- Lage sein, die richtige Geometrie zu erkennen. Sie
- können die Partition jederzeit im Partitioneditor
- entfernen, falls Sie sie nicht behalten möchten.
- Allerdings kann Sie ganz nützlich sein, um
- Netzwerkkarten zu programmieren und
- ähnliches.</para>
-
- <para>Alternativ können Sie das frei verfügbare
- Programm <filename>pfdisk.exe</filename> verwenden. Sie
- finden es im Unterverzeichnis
- <filename class="directory">tools</filename> auf der &os; CD-ROM
- und allen &os; FTP-Servern). Mit diesem Programm können
- Sie herausfinden, welche Geometrie die anderen Betriebssysteme auf
- der Festplatte verwenden. Diese Geometrie können Sie im
- Partitioneditor eingeben.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="disk-divide-restrictions">
- <para>Gibt es irgendwelche Einschränkungen, wie ich die
- Festplatte aufteilen darf?</para>
- </question>
-
- <answer>
- <para>Ja. Sie müssen sicherstellen, dass Ihre
- Rootpartition innerhalb der ersten 1024 Zylinder liegt, damit
- das BIOS den Kernel von Ihr booten kann. (Beachten Sie,
- dass es sich um eine Einschränkung durch das
- BIOS des PCs handelt und nicht durch &os;).</para>
-
- <para>Für ein SCSI-Laufwerk bedeutet dies
- normalerweise, dass sich die Rootpartition in den
- ersten 1024&nbsp;MB befindet (oder in den ersten 4096&nbsp;MB,
- falls die Extended Translation eingeschaltet ist - siehe die
- vorherige Frage). Der entsprechende Wert für IDE ist
- 504&nbsp;MB.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="disk-manager">
- <para>Verträgt sich &os; mit Plattenmanagern?</para>
- </question>
-
- <answer>
- <para>&os; erkennt den <application>Ontrack Disk
- Manager</application> und berücksichtigt ihn. Andere
- Plattenmanager werden nicht unterstützt.</para>
-
- <para>Falls Sie die Festplatte nur mit &os; benutzen
- wollen, brauchen Sie keinen Plattenmanager. Wenn Sie Sie
- die Platte einfach in der vom BIOS maximal
- unterstützten Größe (normalerweise
- 504&nbsp;Megabyte) konfigurieren, sollte &os; erkennen, wie viel
- Platz Sie tatsächlich haben. Falls Sie eine alte
- Festplatte mit einem MFM-Controller verwenden, könnte
- es sein, dass Sie &os; explizit angeben
- müssen, wie viele Zylinder es benutzen soll.</para>
-
- <para>Falls Sie die Festplatte mit &os; und einem anderen
- Betriebssystem benutzen wollen, sollten Sie auch in der Lage
- sein, ohne einen Plattenmanager auszukommen: stellen sie
- einfach sicher, dass sich die Bootpartition von
- &os; und der Bereich für das andere Betriebssystem
- in den ersten 1024 Zylindern befinden. Eine 20&nbsp;Megabyte
- Bootpartition sollte völlig genügen, wenn Sie
- einigermaßen sorgfältig arbeiten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="missing-os">
- <para>Beim ersten Booten von &os; erscheint
- <errorname>Missing Operating System</errorname>. Was ist
- passiert?</para>
- </question>
-
- <answer>
- <para>Dies ist ein klassischer Fall von Konflikten bei den
- verwendeten <link
- linkend="geometry">Plattengeometrien</link> von &os;
- und DOS oder anderen Betriebssystemen. Sie werden &os;
- neu installieren müssen. Bei Beachtung obiger
- Instruktionen wird in den meisten Fällen alles
- funktionieren.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="stop-at-boot-manager">
- <para>Wieso komme ich nicht weiter als bis zum
- <literal>F?</literal>-Prompt des Bootmanagers?</para>
- </question>
-
- <answer>
- <para>Dies ist ein weiteres Symptom für das bereits in
- der vorherigen Frage beschriebene Problem. Ihre
- Einstellungen zur Geometrie im BIOS und in &os; stimmen
- nicht überein! Falls Ihr Controller oder BIOS
- Zylinderumsetzung (oft als <quote>&gt;1GB drive
- support</quote> bezeichnet), probieren Sie eine Umsetzung
- dieser Einstellung und Neuinstallation von &os;.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="need-complete-sources">
- <para>Muss ich den vollständigen Quellcode
- installieren?</para>
- </question>
-
- <answer>
- <para>Im allgemeinen nicht. Wir empfehlen jedoch dringend
- die Installation des <literal>base</literal> Source-Kit,
- das viele der hier erwähnten Dateien enthält und
- des <literal>sys</literal> (Kernel) Source-Kit, das den
- Quellcode für den Kernel enthält. Außer
- dem Programm zur Konfiguration des Kernels
- (&man.config.8;) gibt es im System nichts, zu dessen
- Funktion der Quellcode erforderlich ist. Mit Ausnahme der
- Kernelquellen ist unsere Build-Struktur so aufgebaut,
- dass Sie den Quellcode von überall her per NFS
- read-only mounten und dennoch neue Binaries erstellen
- können. (Wegen der Einschränkung bezüglich
- der Kernelquellen empfehlen wir, diese nicht direkt nach
- <filename
- class="directory">/usr/src</filename> zu mounten, sondern
- irgendwo anders hin mit passenden symbolischen Links, um
- die Toplevel-Struktur des Quellbaumes zu duplizieren.)</para>
-
- <para>Die Quellen verfügbar zu haben und zu wissen, wie
- man ein System mit ihnen erstellt, wird es Ihnen
- wesentlich einfacher machen, zu zukünftigen Ausgaben
- von &os; zu wechseln.</para>
-
- <para>Um einen Teil der Quellen auszuwählen, verwenden
- Sie den Menüpunkt <guimenuitem>Custom</guimenuitem>, wenn Sie
- sich im Menü <guimenuitem>Distributions</guimenuitem> des
- Systeminstallationstools befinden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="need-kernel">
- <para>Muss ich einen Kernel erstellen?</para>
- </question>
-
- <answer>
- <para>Ursprünglich war die Erstellung eines neuen
- Kernels bei fast jeder Installation von &os;
- erforderlich, aber neuere Ausgaben haben von der
- Einführung weitaus benutzerfreundlicherer
- Kernelkonfigurationswerkzeuge profitiert. Die Kernelkonfiguration
- erfolgt in der Regel durch die die deutlich flexibleren
- <quote>hints</quote>, die am Loader-Prompt eingegeben werden
- können.</para>
-
- <para>Es kann dennoch sinnvoll sein, einen neuen Kernel
- zu erstellen, der nur die benötigten Treiber
- enthält, um ein wenig Hauptspeicher zu sparen,
- für die meisten Systeme ist dies aber nicht mehr
- länger erforderlich.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="password-encryption">
- <para>Soll ich DES, Blowfish oder MD5 zur Verschlüsselung der
- Passwörter benutzen?</para>
- </question>
-
- <answer>
- <para>&os; benutzt standardmäßig
- <emphasis>MD5</emphasis> zur Verschlüsselung der
- Passwörter. Es wird angenommen, dass diese
- Methode sicherer ist als das traditionell benutzte
- Verfahren, das auf dem <emphasis>DES</emphasis>
- Algorithmus basierte. Es ist immer noch möglich,
- DES-Passwörter zu benutzen, wenn Sie die Datei
- mit den Passwörtern mit älteren System
- austauschen müssen. &os; erlaubt es Ihnen, auch das sichere
- Blowfish-Verfahren für die Verschlüsselung der
- Passwörter einzusetzen. Das für neue Passwörter
- benutzte Verschlüsselungsverfahren wird über die
- Einstellung <literal>passwd_format</literal> in
- <filename>/etc/login</filename> festgelegt. Die
- möglichen Werte sind entweder <literal>des</literal>,
- <literal>blf</literal> (falls sie zur Verfügung stehen)
- oder <literal>md5</literal>. Weitere
- Informationen über die Einstellungen für den
- Login erhalten Sie in &man.login.conf.5;.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="boot-floppy-hangs">
- <para>Woran kann es liegen, dass ich zwar von der
- Diskette booten kann, aber nicht weiter als bis zur
- Meldung <literal>Probing Devices...</literal>
- komme?</para>
- </question>
-
- <answer>
- <para>Falls Sie ein IDE &iomegazip;- oder &jaz;-Laufwerk
- eingebaut haben, entfernen Sie es und versuchen Sie es erneut.
- Solche Laufwerke könnten dem Bootvorgang stören.
- Nach der Installation des Systems können Sie das
- Laufwerk wieder einbauen. Dieser Fehler wird hoffentlich
- in einer späteren Version behoben werden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="panic-on-install-reboot">
- <para>Wieso wird mit der Fehler <errorname>panic: cant mount
- root</errorname> gemeldet, wenn ich das System nach der
- Installation reboote?</para>
- </question>
-
- <answer>
- <para>Dieser Fehler beruht auf Unstimmigkeiten zwischen den
- Festplatteninformationen im Bootblock und denen im Kernel.
- Der Fehler tritt normalerweise auf IDE-Systemen mit zwei
- Festplatten auf, bei denen die Festplatten als Master-
- oder Single-Device auf separaten IDE-Controllern
- angeschlossen sind und &os; auf der Platte am zweiten
- Controller installiert wurde. Der Bootblock vermutet,
- dass das System auf <devicename>ad0</devicename>
- (der zweiten BIOS-Platte)
- installiert ist, während der Kernel der ersten Platte
- auf dem zweiten Controller die Gerätekennung
- <devicename>ad2</devicename> zuteilt. Der Kernel versucht
- nach der Geräteüberprüfung die vom Bootblock
- angenommene Bootdisk <devicename>ad0</devicename> zu mounten,
- obwohl sie in Wirklichkeit <devicename>ad2</devicename>
- heißt - und scheitert.</para>
-
- <para>Tun Sie folgendes, um dieses Problem zu
- beheben:</para>
-
- <orderedlist>
- <listitem>
- <para>Rebooten Sie das System und drücken
- Sie <keycap>Enter</keycap>, wenn die
- Meldung <literal>Booting kernel in 10 seconds; hit
- [Enter] to interrupt</literal> erscheint. Dadurch
- gelangen Sie in den Boot Loader.</para>
-
- <para>Geben Sie nun
- <userinput>set root_disk_unit="<replaceable>disk_number</replaceable>"</userinput>
- ein. <literal>disk_number</literal> hat den Wert
- <literal>0</literal>, wenn &os; auf dem Master des
- ersten IDE-Controllers installiert wurde;
- <literal>1</literal>, wenn &os; auf dem Slave des
- ersten IDE-Controllers installiert wurde;
- <literal>2</literal>, wenn &os; auf dem Master des
- zweiten IDE-Controllers installiert wurde; und
- <literal>3</literal>, wenn &os; auf dem Slave des
- zweiten IDE-Controllers installiert wurde.</para>
-
- <para>Nach der Eingabe von <userinput>boot</userinput>
- sollte Ihr System jetzt korrekt starten.</para>
-
- <para>Damit Sie dieses Ritual nicht bei jedem Start des
- Systems durchführen müssen, sollten Sie die
- Zeile
- <userinput>root_disk_unit="<replaceable>disk_number</replaceable>"</userinput>
- in die Datei
- <filename>/boot/loader.conf.local</filename>
- eintragen.</para>
- </listitem>
-
- <listitem>
- <para>Stellen Sie eine ununterbrochene Folge der
- Festplatten her, indem Sie die &os;-Platte am
- ersten IDE-Controller anschließen.</para>
- </listitem>
- </orderedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="memory-limits">
- <para>Gibt es eine Hauptspeicherbegrenzung?</para>
- </question>
-
- <answer>
- <para>Hauptspeicherbegrenzung sind von der verwendeten Plattform
- abhängig. Bei einer &i386;-Standardinstallation werden
- maximal 4&nbsp;GB Hauptspeicher unterstützt, mehr Speicher
- ist mittels &man.pae.4; verfügbar. Lesen Sie dazu die <link
- linkend="memory-i386-over-4gb">Anleitung, um 4&nbsp;GB oder mehr
- Speicher auf &i386; zu verwenden</link>.</para>
-
- <para>&os;/pc98 unterstützt maximal 4&nbsp;GB Hauptspeicher,
- daher kann PAE auf diesen Systemen nicht verwendet werden.
- Sonstige von &os; unterstützte Architekturen haben
- ein sehr viel höheres theoretisches Speicherlimit
- (viele Terabytes).</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ffs-limits">
- <para>Wo liegen die Grenzen für FFS-Dateisysteme?</para>
- </question>
-
- <answer>
- <para>Theoretisch liegt das Limit für FFS-Dateisysteme
- bei 8&nbsp;Terabyte (2&nbsp;G-Blöcke) oder 16&nbsp;TB für
- die Standard-Blockgröße von 8&nbsp;KB. In der Praxis
- setzt die Software das Limit auf 1&nbsp;TB herab, aber
- durch Modifikationen sind auch Dateisysteme mit 4&nbsp;TB
- möglich (und existieren auch).</para>
-
- <para>Die maximale Größe einer einzelnen
- FFS-Datei liegt bei ungefähr 1&nbsp;G Blöcken (4&nbsp;TB,
- falls die Blockgröße 4&nbsp;KB beträgt).</para>
-
- <table>
- <title>Maximale Dateigröße</title>
-
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Blockgröße</entry>
-
- <entry>Geht</entry>
-
- <entry>Sollte Gehen</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>4&nbsp;KB</entry>
-
- <entry>&gt;&nbsp;4&nbsp;GB</entry>
-
- <entry>4&nbsp;TB&nbsp;-&nbsp;1</entry>
- </row>
-
- <row>
- <entry>8&nbsp;KB</entry>
-
- <entry>&gt;&nbsp;32&nbsp;GB</entry>
-
- <entry>32&nbsp;TB&nbsp;-&nbsp;1</entry>
- </row>
-
- <row>
- <entry>16&nbsp;KB</entry>
-
- <entry>&gt;&nbsp;128&nbsp;GB</entry>
-
- <entry>32&nbsp;TB&nbsp;-&nbsp;1</entry>
- </row>
-
- <row>
- <entry>32&nbsp;KB</entry>
-
- <entry>&gt;&nbsp;512&nbsp;GB</entry>
-
- <entry>64&nbsp;TB&nbsp;-&nbsp;1</entry>
- </row>
-
- <row>
- <entry>64&nbsp;KB</entry>
-
- <entry>&gt;&nbsp;2048&nbsp;GB</entry>
-
- <entry>128&nbsp;TB&nbsp;-&nbsp;1</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
-
- <para>Wenn die im Dateisystem verwendete
- Blockgröße 4&nbsp;KB beträgt, wird mit dreifacher
- Indirektion gearbeitet und die Limitierung sollte durch
- die höchste Blocknummer erfolgen, die mit dreifacher
- Indirektion dargestellt werden kann (ungefähr
- 1024<superscript>3</superscript>&nbsp;+&nbsp;1024<superscript>2</superscript>&nbsp;+&nbsp;1024).
- In Wirklichkeit liegt das Limit aber bei der (falschen) Anzahl von
- 1&nbsp;G&nbsp;-&nbsp;1 Blocknummern im Dateisystem.
- Die maximale Anzahl der Blocknummern müsste
- 2&nbsp;G&nbsp;-&nbsp;1 sein. Es gibt einige Fehler für
- Blocknummern nahe 2&nbsp;G&nbsp;-&nbsp;1, aber solche Blocknummern
- sind bei einer Blockgröße von 4&nbsp;KB
- unerreichbar.</para>
-
- <para>Bei Blocknummern von 8&nbsp;KB und größer sollte
- das Limit bei 2&nbsp;G&nbsp;-&nbsp;1 Blocknummern liegen,
- tatsächlich liegt es aber bei 1&nbsp;G&nbsp;-&nbsp;1
- Blocknummern. Die Verwendung der korrekten Grenze von
- 2&nbsp;G&nbsp;-&nbsp;1 verursacht Probleme.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="archsw-readin-failed-error">
- <para>Wieso erhalte ich die Fehlermeldung
- <errorname>archsw.readin.failed</errorname> beim Start des
- Systems, nachdem ich einen neuen Kernel erstellt
- habe?</para>
- </question>
-
- <answer>
- <para>Ihr System und Ihr Kernel sind nicht synchron - dies
- ist nicht erlaubt. Sie müssen Ihren Kernel mit
- <command>make <maketarget>buildworld</maketarget></command> und
- <command>make <maketarget>buildkernel</maketarget></command>
- aktualisieren.</para>
-
- <para>Sie können den zu bootenden Kernel direkt im
- zweiten Schritt angeben, indem Sie eine beliebige Taste
- drücken, wenn das <literal>|</literal> erscheint und bevor
- der Loader startet.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="boot-acpi">
- <para>Mein System stürzt beim Booten ab! Was kann ich
- tun?</para>
- </question>
-
- <answer>
- <para>Deaktivieren Sie die ACPI-Unterstützung. Dazu
- drücken Sie beim Start des Bootloaders die
- <keycap>Leertaste</keycap>. Das System zeigt folgendes an:</para>
-
- <screen>OK</screen>
-
- <para>Geben Sie nun</para>
-
- <screen><userinput>unset acpi_load</userinput></screen>
-
- <para>und danach</para>
-
- <screen><userinput>boot</userinput></screen>
-
- <para>ein.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="hardware">
- <title>Hardware-Kompatibilität</title>
-
- <sect1 id="compatibility-general">
- <title>Allgemeines</title>
-
- <qandaset>
- <qandaentry>
- <question id="which-hardware-to-get">
- <para>Ich will mir neue Hardware für mein
- &os;-System zulegen, was soll ich kaufen? </para>
- </question>
-
- <answer>
- <para>Diese Frage wird ständig auf den
- &os;-Mailinglisten diskutiert. Da sich die Hardware
- ständig ändert, ist das allerdings keine
- Überraschung. <emphasis>Trotzdem</emphasis> sollten
- Sie unbedingt die Hardware-Informationen von &os;
- (<ulink
- url="&rel.current.hardware;">&rel.current;</ulink> oder
- <ulink
- url="&rel2.current.hardware;">&rel2.current;</ulink>) und die
- <ulink
- url="http://www.FreeBSD.org/search/#mailinglists">
- Archive</ulink> der Mailinglisten durchsehen, bevor Sie
- nach der neuesten/besten Hardware fragen. Normalerweise
- gab es kurz zuvor eine Diskussion über genau die
- Hardware, die Sie sich zulegen wollen.</para>
-
- <para>Wenn Sie sich einen Laptop zulegen wollen, sollten Sie
- einen Blick in das Archiv der Mailingliste &a.mobile;
- werfen. Ansonsten empfiehlt sich ein Blick in das Archiv
- von &a.questions; oder auch einer spezialisierte
- Mailingliste für diese Art von Hardware.</para>
- </answer>
- </qandaentry>
- </qandaset>
-
- </sect1>
-
- <sect1 id="compatibility-memory">
- <title>Hauptspeicher</title>
-
- <qandaset>
- <qandaentry>
- <question id="memory-upper-limitation">
- <para>Unterstützt &os; mehr als 4&nbsp;GB Speicher
- (RAM)? Mehr als 16&nbsp;GB? Mehr als 48&nbsp;GB?</para>
- </question>
-
- <answer>
- <para>Ja. Generell unterstützt &os; als
- Betriebssystem so viel physischen Speicher (RAM), wie
- die Plattform auf der es läuft. Achten Sie darauf,
- dass verschiedene Plattformen unterschiedliche
- Speichergrenzen besitzen. So wird z.B. &i386; ohne
- <acronym>PAE</acronym> höchstens 4&nbsp;GB Speicher
- (normalerweise weniger als das wegen des
- PCI-Addressraums), dagegen wird &i386; mit PAE
- höchstens 64&nbsp;GB Speicher bereitstellen.
- Momentan erhältliche AMD64 Plattformen können
- bis zu 1&nbsp;TB physischen Speicher ansprechen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="memory-i386-over-4gb">
- <para>Warum zeigt &os; weniger als 4&nbsp;GB Speicher an,
- wenn es auf einer &i386; Maschine installiert
- wird?</para>
- </question>
-
- <answer>
- <para>Der Gesamtadressraum beträgt auf &i386;
- Maschinen 32-Bit, was bedeutet, dass maximal
- 4&nbsp;GB Speicher addressiert (verwaltet) werden
- kann. Weiterhin sind viele Adressen in diesem Bereich
- von der Hardware für bestimmte Aufgaben reserviert,
- um z.B. PCI-Geräte zu benutzen und zu steuern, auf
- Videospeicher zuzugreifen und so weiter. Aus diesem
- Grund ist die Gesamtmenge an Speicher, die vom
- Betriebssystem für den Kernel und Anwendungen
- verwendet werden kann, auf wesentlich weniger als
- 4&nbsp;GB begrenzt. Normalerweise sind 3.2&nbsp;GB bis
- 3.7&nbsp;GB das Maximum an verfügbarem Speicher in
- dieser Konfiguration.</para>
-
- <para>Um auf mehr als 3.2&nbsp;GB bis 3.7&nbsp;GB
- des installierten Speichers (was bis zu 4&nbsp;GB, aber
- aber auch mehr als 4&nbsp;GB bedeuten kann)
- zuzugreifen, muss eine spezielle Manipulation, genannt
- <acronym>PAE</acronym>, benutzt werden. PAE steht
- für Physical Address Extension und ist eine
- Möglichkeit für 32-Bit x86-CPUs mehr als
- 4&nbsp;GB Speicher zu addressieren. Es organisiert
- den Speicher, der andererseits wegen
- Addressreservierungen für Hardwaregeräte
- oberhalb der 4&nbsp;GB Grenze liegt, um und benutzt
- diesen als zusätzlichen physischen Speicher (lesen
- Sie dazu &man.pae.4;). Der Einsatz von PAE ist mit ein
- paar Nachteilen verbunden: diese Speicherzugriffsmethode
- ist ein bisschen langsamer als die normale Methode (ohne
- PAE) und ladbare Module (beschrieben in &man.kld.4;)
- werden nicht unterstützt. Das bedeutet, dass alle
- Treiber in den Kernel eingebaut sein müssen.</para>
-
- <para>Die am häufigsten verwendete Vorgehensweise,
- PAE zu aktivieren ist die, einen neuen Kernel mit der
- speziell dafür vorgesehenen
- Kernelkonfigurationsdatei, <filename>PAE</filename>
- genannt, zu bauen, die bereits so eingestellt ist, dass
- ein funktionierender Kernel erstellt wird. Beachten
- Sie, dass manche Einträge in dieser
- Kernelkonfigurationsdatei zu konservativ eingestellt
- sind und dass manche Treiber, die nicht für den
- Einsatz mit PAE vorgesehen sind, trotzdem funktionieren.
- Als Faustregel kann man sagen, dass wenn der Treiber
- auf 64-Bit Architekturen (like AMD64) läuft, er
- auch mit PAE lauffähig ist. Wenn Sie ihre eigene
- Kernelkonfigurationsdatei erstellen möchten,
- können Sie PAE aktivieren, indem Sie die folgende
- Zeile zu ihrer Konfiguration hinzufügen:</para>
-
- <programlisting>options PAE</programlisting>
-
- <para>PAE wird heutzutage nicht sehr häufig
- angewendet, da die Mehrzahl an neuer x86-Hardware auch
- den Betrieb im 64-Bit Modus erlaubt, auch als AMD64 oder
- &intel;&nbsp;64 bekannt. Es hat viel mehr Adressraum
- und benötigt solche Manipulationen nicht. &os;
- unterstützt AMD64 und es wird empfohlen, diese
- &os; Version anstatt der &i386; Version einzusetzen,
- wenn 4&nbsp;GB oder mehr Speicher gebraucht
- werden.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </sect1>
-
- <sect1 id="compatibility-processors">
- <title>Architekturen und Prozessoren</title>
-
- <qandaset>
- <qandaentry>
- <question id="architectures">
- <para>Unterstützt &os; neben x86 auch andere
- Architekturen?</para>
- </question>
-
- <answer>
- <para>Ja. &os; ist zurzeit für die Intel x86 und
- AMD64 Architekturen verfügbar.
- Intel EM64T, IA-64, &arm;, &powerpc; und &sparc64;
- werden ebenfalls unterstützt. Die Neuzugänge
- auf der Liste der in Zukunft unterstützten Plattformen
- sind &mips; und &s390;. Abonnieren Sie die Mailingliste
- &a.mips;, wenn Sie mehr über
- den Stand der Entwicklung erfahren wollen. Schließen
- Sie sich der Mailingliste &a.platforms; an, wenn Sie an
- grundsätzlichen Diskussionen über neue Architekturen
- interessiert sind.</para>
-
- <para>Falls Ihre Maschine eine andere Architektur aufweist
- und Sie unbedingt sofort etwas benötigen, schlagen
- wir vor, dass Sie sich einmal <ulink
- url="http://www.netbsd.org/">NetBSD</ulink> oder <ulink
- url="http://www.openbsd.org/">OpenBSD</ulink>
- ansehen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="smp-support">
- <para>Unterstützt &os; Symmetric-Multiproccessing
- (SMP)?</para>
- </question>
-
- <answer>
- <para>Symmetric-Multiproccessing (SMP) Systeme werden generell
- von &os; unterstützt, obwohl in manchen Fällen durch
- Fehler im BIOS oder Mainboard Probleme auftreten.</para>
-
- <para>&os; nutzt die Vorteile von HyperThreading (HTT)
- Unterstützung von Intel-Prozessoren, die diese Eigenschaft
- besitzen. Ein Kernel mit der <literal>options SMP</literal>
- Zeile wird automatisch die zusätzlichen logischen
- Prozessoren erkennen. Der Standard &os;-Scheduler behandelt die
- logischen Prozessoren auf die gleiche Weise wie zusätzliche
- physische Prozessoren. Mit anderen Worten, es wird nicht der
- Versuch unternommen, die Entscheidungen des Schedulers zu
- optimieren, da sich die logischen Prozessoren innerhalb der
- gleichen CPU die Ressourcen teilen. Weil diese naive Planung
- in schlechterer Leistung resultieren kann, ist es unter
- Umständen hilfreich, die logischen Prozessoren über die
- sysctl Variable <varname>machdep.hlt_logical_cpus</varname> zu
- deaktivieren. Es ist auch möglich, jede CPU in der
- Warteschleife mit der sysctl Variable
- <varname>machdep.hlt_cpus</varname> anzuhalten. Weitere
- Informationen finden Sie in der Manualpage &man.smp.4;.</para>
- </answer>
- </qandaentry>
- </qandaset>
-
- </sect1>
-
- <sect1 id="compatibility-drives">
- <title>Festplatten, Bandlaufwerke, sowie CD- und DVD-Laufwerke</title>
-
- <qandaset>
- <qandaentry>
- <question id="supported-hard-drives">
- <para>Welche Arten von Festplatten werden von &os;
- unterstützt?</para>
- </question>
-
- <answer>
- <para>&os; unterstützt EIDE-, SATA-, SCSI- und
- SAS-Laufwerke (mit
- kompatiblen Controllern - siehe folgenden Abschnitt),
- sowie alle Laufwerke, die die original <quote>Western
- Digital</quote>-Schnittstelle (MFM, RLL, ESDI und
- natürlich IDE) benutzen. Ein paar Controller mit
- proprietären Schnittstellen könnten nicht
- laufen: halten Sie sich an WD1002/3/6/7-Schnittstellen und
- Clones.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="supported-scsi-controllers">
- <para>Welche SCSI- oder SAS-Controller werden
- unterstützt?</para>
- </question>
-
- <answer>
- <para>Sie finden eine vollständige und aktuelle Liste
- in den Hardware-Informationen zu &os;
- (<ulink
- url="&rel.current.hardware;">&rel.current;</ulink> oder <ulink
- url="&rel2.current.hardware;">&rel2.current;</ulink>).</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="tape-support">
- <para>Welche Arten von Bandlaufwerken werden
- unterstützt?</para>
- </question>
-
- <answer>
- <para>&os; unterstützt SCSI-, QIC-36- (mit
- QIC-02-Schnittstelle) und QIC-40/80-Bandlaufwerke
- (diskettenbasiert). Hierzu gehören auch 8-mm (aka
- Exabyte) und DAT-Laufwerke. Die QIC-40/80-Laufwerke sind
- bekanntlich sehr langsam.</para>
-
- <para>Einige der frühen 8-mm-Laufwerke sind nicht
- besonders kompatibel zu SCSI-2 und könnten unter
- &os; nicht einwandfrei funktionieren.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="tape-changer-support">
- <para>Unterstützt &os; Bandwechsler?</para>
- </question>
-
- <answer>
- <para>Das Gerät &man.ch.4; und das Kommando
- <command>chio</command> unterstützen Bandwechsler.
- Details zum Betrieb des Wechslers finden Sie in der
- Hilfeseite &man.chio.1;.</para>
-
- <para>Falls Sie nicht <application>AMANDA</application> oder
- ein anderes Produkt benutzen, das den Wechsler bereits
- kennt, bedenken Sie, dass die Programme nur wissen,
- wie sie ein Band von einem Punkt zu einem anderen bewegen
- müssen. Sie selbst müssen sich also merken, in
- welchem Einschub sich ein Band befindet und zu welchem
- Einschub das Band, das sich gerade im Laufwerk befindet,
- zurück muss.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="supported-cdrom-drives">
- <para>Welche CD-ROM-Laufwerke werden von &os;
- unterstützt?</para>
- </question>
-
- <answer>
- <para>Jedes an einem unterstützten Controller
- angeschlossene SCSI-Laufwerk wird
- unterstützt.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="supported-cdrw-drives">
- <para>Welche CD-Brenner werden von &os; unterstützt?</para>
- </question>
-
- <answer>
- <para>&os; unterstützt alle ATAPI-kompatiblen IDE
- CD-R und CD-RW Brenner. Lesen Sie dazu auch
- &man.burncd.8;.</para>
-
- <para>&os; unterstützt ebenfalls SCSI CD-R und CD-RW
- Brenner. Installieren und benutzen Sie das Paket
- <command>cdrecord</command> aus der Ports-Sammlung. Dazu
- müssen Sie allerdings das Gerät
- <devicename>pass</devicename> mit in Ihren Kernel
- aufnehmen.</para>
- </answer>
- </qandaentry>
- </qandaset>
-
- </sect1>
-
- <sect1 id="compatibility-kbd-mice">
- <title>Tastaturen und Mäuse</title>
-
- <qandaset>
- <qandaentry>
- <question id="usbkbd">
- <para>Unterstützt &os; meine Tastatur mit
- USB-Anschluss?</para>
- </question>
-
- <answer>
- <para>Ja. &os; unterstützt USB-Tastaturen.</para>
-
- <para>Wenn Sie die Unterstützung für USB-Tastaturen
- konfiguriert haben, ist die AT-Tastatur
- als <devicename>/dev/kbd0</devicename> und die USB-Tastatur
- als <devicename>/dev/kbd1</devicename> verfügbar. Dies
- gilt natürlich nur, wenn beide Tastaturen
- angeschlossen sind; falls nur die USB-Tastatur
- angeschlossen ist, ist diese als
- <devicename>/dev/ukbd0</devicename> verfügbar.</para>
-
- <para>Wenn Sie die USB-Tastatur an der Systemkonsole
- benutzen wollen, müssen Sie dies dem System explizit
- mitteilen. Dazu muss das folgende Kommando
- während des Systemstarts ausgeführt
- werden:</para>
-
- <screen>&prompt.root; <userinput>kbdcontrol -k /dev/kbd1 &lt; /dev/console &gt; /dev/null</userinput></screen>
-
- <para>Wenn Sie nur die USB-Tastatur angeschlossen haben, ist
- diese als <devicename>/dev/ukbd0</devicename> verfügbar;
- daher muss in diesem Fall das folgende Kommando
- benutzt werden:</para>
-
- <screen>&prompt.root; <userinput>kbdcontrol -k /dev/ukbd0 &lt; /dev/console &gt; /dev/null</userinput></screen>
-
- <note>
- <para>Um diese Änderung auch noch nach dem Neustarten
- verfügbar zu haben, nehmen Sie den Eintrag
- <literal>keyboard="/dev/ukbd0"</literal> in die Datei
- <filename>/etc/rc.conf</filename> auf.</para>
- </note>
-
- <para>Sobald Sie diese Schritte durchgeführt haben,
- sollte die USB-Tastatur ohne weitere Änderungen auch
- unter X benutzbar sei.</para>
-
- <para>Benutzen Sie dieses Kommando, wenn Sie wieder zur
- Standardtastatur wechseln wollen:</para>
-
- <screen>&prompt.root; <userinput>kbdcontrol -k /dev/kbd0 &gt; /dev/null</userinput></screen>
-
- <para>Um die gleichzeitige Verwendung der zweiten USB-Tastatur und
- der AT-Tastatur auf der selben Konsole mittels des &man.kbdmux.4;
- Treibers zu ermöglichen, geben Sie folgendes ein:</para>
-
- <screen>&prompt.root; <userinput>kbdcontrol -K &lt; /dev/console &gt; /dev/null</userinput>
-&prompt.root; <userinput>kbdcontrol -a atkbd0 &lt; /dev/kbdmux0 &gt; /dev/null</userinput>
-&prompt.root; <userinput>kbdcontrol -a ukbd1 &lt; /dev/kbdmux0 &gt; /dev/null</userinput>
-&prompt.root; <userinput>kbdcontrol -k /dev/kbdmux0 &lt; /dev/console &gt; /dev/null</userinput></screen>
-
- <para>Lesen Sie die &man.ukbd.4;, &man.kbdcontrol.1; und
- &man.kbdmux.4; Manualpages, um weitere Informationen zu
- erhalten.</para>
-
- <note>
- <para>Zurzeit kann es noch Probleme geben, wenn Sie eine
- USB-Tastatur im laufenden Betrieb einstecken oder
- abziehen. Um Probleme zu vermeiden, sollten Sie die
- Tastatur anschließen, bevor Sie das System
- anschalten und die Tastatur nicht abziehen, solange das
- System noch läuft.</para>
- </note>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="busmouse">
- <para>Ich habe eine unübliche Busmaus. Wie muss
- ich sie konfigurieren?</para>
- </question>
-
- <answer>
- <para>&os; unterstützt die Busmaus und
- InPort-Busmaus von Herstellern wie Microsoft, Logitech und
- ATI. Der Gerätetreiber ist im
- <filename>GENERIC</filename>-Kernel allerdings nicht eingebunden.
- Wenn Sie den Bus-Gerätetreiber benötigen, müssen Sie
- daher einen angepassten Kernel erstellen. Dazu fügen Sie die
- folgende Zeile in Ihre Kernelkonfigurationsdatei ein:</para>
-
- <programlisting>device mse0 at isa? port 0x23c irq5</programlisting>
-
- <para>Die Busmaus wird üblicherweise zusammen mit einer
- speziellen Karte ausgeliefert. Sie könnte es Ihnen
- ermöglichen, andere Werte für die Port-Adresse
- und den Interrupt zu setzen. Weitere Informationen finden
- Sie in Handbuch zu Ihrer Maus und in der &man.mse.4;
- Manualpage.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ps2mouse">
- <para>Wie benutze ich meine PS/2 (<quote>Mouse-Port</quote>
- oder <quote>Tastatur</quote>)-Maus?</para>
- </question>
-
- <answer>
- <para>PS/2 Mäuse werden von &os; unterstützt.
- Der notwendige Gerätetreiber,
- <devicename>psm</devicename>, ist bereits im
- <filename>GENERIC</filename>-Kernel enthalten.</para>
-
- <para>Wenn Sie einen angepassten Kernel ohne diesen Treiber
- benutzen, müssen Sie folgende Zeile in Ihre
- Kernelkonfigurationsdatei einfügen und den Kernel neu
- kompilieren:</para>
-
- <programlisting>device psm0 at atkbdc? irq 12</programlisting>
-
- <para>Wenn der Kernel das Gerät
- <devicename>psm0</devicename> beim Booten korrekt erkennt,
- stellen Sie sicher, dass sich im Verzeichnis
- <filename>/dev</filename> ein Eintrag für
- <devicename>psm0</devicename> befindet.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="moused">
- <para>Kann man die Maus irgendwie außerhalb des X
- Window Systems benutzen?</para>
- </question>
-
- <answer>
- <para>Falls Sie den normalen Konsolentreiber &man.syscons.4; benutzen,
- können Sie den Mauszeiger auf Textkonsolen zum
- Kopieren und Einfügen von Text verwenden. Starten
- Sie den Mausdämon &man.moused.8; und schalten Sie den
- Mauszeiger auf der virtuellen Konsole ein:</para>
-
- <screen>&prompt.root; <userinput>moused -p /dev/<replaceable>xxxx</replaceable> -t <replaceable>yyyy</replaceable></userinput>
-&prompt.root; <userinput>vidcontrol -m on</userinput></screen>
-
- <para><replaceable>xxxx</replaceable> ist der
- Gerätename der Maus und
- <replaceable>yyyy</replaceable> ist das Protokoll.
- Der Mausdämon erkennt die Protokolle der meisten
- Mäuse (mit Ausnahme alter serieller Mäuse)
- automatisch, wenn Sie <literal>auto</literal> für
- das Protokoll angeben. Falls das Protokoll nicht
- automatisch erkannt wird, finden Sie die
- unterstützten Protokolle in der
- &man.moused.8; Manualpage.</para>
-
- <para>Wenn Sie eine PS/2-Maus besitzen und diese beim
- Systemstart aktivieren wollen, tragen Sie die Zeile
- <literal>moused_enable="YES"</literal> in die Datei
- <filename>/etc/rc.conf</filename> ein. Falls Sie den
- Mausdämon auf allen virtuellen Bildschirmen anstatt
- nur auf der Konsole benutzen wollen, tragen Sie außerdem
- <literal>allscreens_flags="-m on"</literal> in
- <filename>/etc/rc.conf</filename> ein.</para>
-
- <para>Während der Mausdämon läuft, muss
- der Zugriff auf die Maus zwischen dem Mausdämon und
- anderen Programmen, wie X Windows, koordiniert werden.
- Die FAQ <link
- linkend="x-and-moused">Warum funktioniert meine meine Maus unter X
- nicht?</link> enthält weitere Details.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="text-mode-cut-paste">
- <para>Wie funktioniert das Kopieren und Einfügen von
- Text mit der Maus auf einer Textkonsole?</para>
- </question>
-
- <answer>
- <para>Wenn Sie es geschafft haben, den Mausdämon zu
- starten (wie im <link
- linkend="moused">vorherigen Abschnitt</link> gezeigt), halten Sie
- die linke Maustaste gedrückt und bewegen Sie die Maus, um einen
- Textabschnitt zu markieren. Dann drücken Sie die
- mittlere Maustaste, um den Text an der
- Cursorposition einzufügen.</para>
-
- <para>Wenn Sie keine 3-Tasten-Maus besitzen, können
- Sie die mittlere Maustaste mit einer Tastenkombination
- emulieren oder die Funktion der mittleren Taste auf
- eine andere Taste legen. Einzelheiten dazu enthält
- die Hilfeseite &man.moused.8;.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="mouse-wheel-buttons">
- <para>Meine Maus hat ein neumodisches Rad und mehr
- Knöpfe. Kann ich sie in &os; benutzen?</para>
- </question>
-
- <answer>
- <para>Unglücklicherweise lautet die Antwort:
- <quote>Vielleicht</quote>. Solche Mäuse mit
- zusätzlichen Extras erfordern in den meisten
- Fällen spezielle Treiber. Wenn der
- Gerätetreiber für die Maus oder das
- Anwendungsprogramm keine spezielle Unterstützung
- für die Maus bietet, wird sie sich wie eine
- gewöhnliche Maus mit zwei oder drei Knöpfen
- verhalten.</para>
-
- <para>Ob und wie Sie das Rad unter X benutzen können,
- können Sie im <link
- linkend="x-and-wheel">passenden Abschnitt</link> der FAQ
- erfahren.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="laptop-mouse-trackball">
- <para>Wie benutze ich Maus/Trackball/Touchpad auf meinem
- Laptop?</para>
- </question>
-
- <answer>
- <para>Bitte lesen Sie <link
- linkend="ps2mouse">die Antwort zur vorherigen Frage</link>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="keyboard-delete-key">
- <para>Wie kann ich die Delete-Taste in der <command>sh</command> und
- <command>csh</command> einsetzen?</para>
- </question>
-
- <answer>
- <para>Für die <application>Bourne Shell</application>
- fügen Sie die folgende Zeile in die Datei
- <filename>.shrc</filename> ein (lesen Sie dazu auch die
- Manualpages &man.sh.1; sowie &man.editrc.5;).</para>
-
- <programlisting>bind ^? ed-delete-next-char # for console
-bind ^[[3~ ed-delete-next-char # for xterm</programlisting>
-
- <para>Für die <application>C Shell</application> nehmen
- Sie hingegen die folgende Zeile in die Datei
- <filename>.cshrc</filename> auf (lesen Sie dazu auch die
- Manualpage &man.csh.1;).</para>
-
- <programlisting>bindkey ^? delete-char # for console
-bindkey ^[[3~ delete-char # for xterm</programlisting>
-
- <para>Weitere Informationen zu diesem Thema finden sich auch
- <ulink
- url="http://www.ibb.net/~anne/keyboard.html">hier</ulink>.</para>
- </answer>
- </qandaentry>
- </qandaset>
-
- </sect1>
-
- <sect1 id="compatibility-networking">
- <title>Netzkarten und serielle Geräte</title>
-
- <qandaset>
- <qandaentry>
- <question id="network-cards">
- <para>Welche Netzwerkkarten unterstützt &os;?</para>
- </question>
-
- <answer>
- <para>In den Hardware Informationen zu jedem &os; Release
- werden die unterstützten Karten aufgezählt.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="support-broadcom">
- <para>Gibt es einen &os;-Treiber für die Karten der
- Serie 43xx von Broadcom?</para>
- </question>
-
- <answer>
- <para>Ja. Zahlreiche Broadcom 43xx-Karten werden von den Treibern
- &man.bwn.4; sowie &man.bwi.4; unterstützt.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="multiport-serial-support">
- <para>Welche seriellen Multi-Port-Karten werden von &os;
- unterstützt?</para>
- </question>
-
- <answer>
- <para>Es existiert eine Liste der unterstützten Karten
- im Abschnitt <ulink
- url="&url.books.handbook;/serial.html">Serielle
- Datenübertragung</ulink> des Handbuchs.</para>
-
- <para>Von einigen NoName-Nachbauten ist ebenfalls
- bekannt, dass sie funktionieren, speziell von den
- AST-kompatiblen.</para>
-
- <para>In &man.sio.4; finden Sie weitere Informationen zur
- Konfiguration solcher Karten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="serial-console-prompt">
- <para>Wie kann ich den boot:-Prompt auf einer seriellen
- Konsole erscheinen lassen?</para>
- </question>
-
- <answer>
- <para>Lesen Sie <ulink
- url="&url.books.handbook;/serialconsole-setup.html">
- diesen Abschnitt</ulink> des Handbuchs.</para>
- </answer>
- </qandaentry>
- </qandaset>
-
- </sect1>
-
- <sect1 id="compatibility-sound">
- <title>Soundkarten</title>
-
- <qandaset>
- <qandaentry>
- <question id="sound-card-support">
- <para>Welche Soundkarten werden von &os; unterstützt?</para>
- </question>
-
- <answer>
- <para>&os; unterstützt verschiedene Soundkarten.
- Lesen Sie die <ulink url="&url.base;/de/releases/">
- &os; Release Informationen</ulink> sowie &man.snd.4;,
- wenn Sie genauere Informationen benötigen. MPU-401
- und kompatible MIDI-Karten werden begrenzt unterstützt.
- Ebenso unterstützt werden Karten, die der &microsoft;
- Sound System-Spezifikation entsprechen.</para>
-
- <note>
- <para>Das gilt nur für Sound! Dieser Treiber
- unterstützt keine CD-ROMs, SCSI oder Joysticks auf
- diesen Karten, außer der &soundblaster;. Die
- &soundblaster;-SCSI-Schnittstelle und einige
- Nicht-SCSI-CD-ROMs werden unterstützt, Sie
- können von diesen Geräten aber nicht
- booten.</para>
- </note>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="es1370-silent-pcm">
- <para>Abhilfen für fehlenden Sound bei Verwendung des
- &man.pcm.4;-Treibers?</para>
- </question>
-
- <answer>
- <para>Einige Soundkarten setzen die Lautstärke bei jedem
- Systemstart auf 0. In diesem Fall müssen Sie nach jedem
- Bootvorgang den folgenden Befehl ausführen:</para>
-
- <screen>&prompt.root; <userinput>mixer pcm 100 vol 100 cd 100</userinput></screen>
- </answer>
- </qandaentry>
- </qandaset>
-
- </sect1>
-
- <sect1 id="compatibility-other">
- <title>Sonstige Hardware</title>
-
- <qandaset>
- <qandaentry>
- <question id="power-management-support">
- <para>Unterstützt &os; Power-Management auf meinem
- Laptop?</para>
- </question>
-
- <answer>
- <para>&os; unterstützt <acronym>APM</acronym>
- auf einigen Systemen. Lesen Sie dazu auch &man.apm.4;.</para>
-
- <para>&os; unterstützt einen Großteil der
- <acronym>ACPI</acronym>-Funktionen moderner Hardware.
- Lesen Sie dazu auch &man.acpi.4;.
- Unterstützt Ihr System sowohl <acronym>APM</acronym>
- als auch <acronym>ACPI</acronym>, können Sie beide
- Systeme testen und sich für das System entscheiden,
- das Ihren Anforderungen am besten entspricht.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="disable-acpi">
- <para>Wie kann ich ACPI deaktivieren?</para>
- </question>
-
- <answer>
- <para>Fügen Sie die Zeile
- <screen>hint.acpi.0.disabled="1"</screen> in die Datei
- <filename>/boot/device.hints</filename> ein.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="micron-hang-boot">
- <para>Wieso hängt sich mein Micron-System beim Booten
- auf?</para>
- </question>
-
- <answer>
- <para>Lesen Sie <link
- linkend="micron-hang-boot">die vorherige Antwort</link>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="asusk7v-boot-failure">
- <para>Wenn ich ein System mit einem ASUS K7V Mainboard von
- der Bootdiskette starte, hängt sich das System auf.
- Wie kann ich dieses Problem lösen?</para>
- </question>
-
- <answer>
- <para>Schalten Sie im BIOS die Option <quote>boot virus
- protection</quote> aus.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="micron-3comnic-failure">
- <para>Warum arbeitet meine &tm.3com; PCI-Netzwerkkarte in meinem
- Micron-Computer nicht?</para>
- </question>
-
- <answer>
- <para>Einige Micron Motherboards besitzen eine
- nicht-konforme PCI-BIOS-Implementierung, die die
- PCI-Geräte nicht an den angegebenen Adressen
- konfiguriert. Hierdurch entstehen Probleme, wenn &os;
- bootet.</para>
-
- <para>Deaktivieren Sie die Option <quote>Plug and Play
- Operating System</quote> im BIOS, um das Problem zu
- umgehen.</para>
- </answer>
- </qandaentry>
- </qandaset>
-
- </sect1>
-
- </chapter>
-
- <chapter id="troubleshoot">
- <title>Fehlerbehebung</title>
-
- <qandaset>
- <qandaentry>
- <question id="pae">
- <para>Warum zeigt &os; eine falsche Speichergröße auf
- &i386; Hardware an?</para>
- </question>
-
- <answer>
- <para>Das liegt sehr wahrscheinlich an den Unterschieden zwischen
- physikalischen und virtuellen Speicheraddressen.</para>
-
- <para>Bei moderner PC-Hardware ist es üblich, den
- Speicherbereich zwischen 3,5 und 4&nbsp;Gigabyte für
- spezielle Aufgaben (normalerweise für PCI) zu
- reservieren. Dieser Adressbereich wird dabei dazu
- verwendet, um auf PCI-Hardware zuzugreifen. Dadurch
- kann in diesem Speicherbereich kein physikalischer
- Speicher verwaltet werden.</para>
-
- <para>Was mit dem in diesen Bereich gehörenden
- physikalischen Speicher passiert, hängt von der von
- Ihnen eingesetzten Hardware ab. Unglücklicherweise
- gibt es noch immer Hardware, die hier gar nichts macht.
- In diesem Fall ist Ihr System nicht in der Lage, auf diese
- 500&nbsp;Megabyte des RAMs zuzugreifen.</para>
-
- <para>Ein Großteil der heute existierenden Hardware
- ist aber inzwischen in der Lage, diesen Speicherbereich
- in einen höheren Speicherbereich umzulenken, damit
- Sie weiterhin darauf zugreifen können. Allerdings
- kann es durch dieses Umlenken zu verwirrende Meldungen
- während des Systemstarts kommen.</para>
-
- <para>Unter 32-Bit-Versionen von &os; scheint dieser
- Speicherbereich nicht verfügbar zu sein, da er in einen
- Bereich oberhalb von 4&nbsp;Gigabyte übertragen wurde, auf den
- ein 32-Bit-Kernel allerdings nicht zugreifen kann. Ist dies
- bei Ihnen der Fall, müssen Sie die PAE-Unterstützung
- in Ihren Kernel kompilieren. Lesen Sie dazu auch die
- entsprechenden <link
- linkend="memory-limits">Einträge über
- Speicherbegrenzungen</link> und <link
- linkend="memory-upper-limitation">unterschiedliche
- Speicherbegrenzungen auf verschiedenen Plattformen</link>.</para>
-
- <para>Verwenden Sie hingegen eine 64-Bit-Version von &os;
- oder einen 32-Bit-Kernel mit aktivierter
- PAE-Unterstützung, ist &os; in der Lage, diesen
- Speicherbereich korrekt zu erkennen und umzulenken, damit Sie
- weiterhin darauf zugreifen können. Allerdings wird, aufgrund
- der beschriebenen Umbelegung, in diesem Fall beim Systemstart mehr
- Speicher angezeigt, als tatsächlich auf Ihrem System vorhanden
- ist. Dies ist aber normal und wird nach dem Ende des Systemstarts
- automatisch korrigiert.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="awre">
- <para>Was sollte ich tun, wenn auf meiner Festplatte
- fehlerhafte Blöcke sind?</para>
- </question>
-
- <answer>
- <para>SCSI-Laufwerke sollten in der Lage sein, diese
- automatisch zu verlagern. Bei einigen Laufwerken ist
- diese Eigenschaft jedoch aus unerfindlichen Gründen
- bei der Auslieferung ausgeschaltet...</para>
-
- <para>Um sie einzuschalten, müssen Sie den Page-Mode
- des ersten Gerätes editieren. Unter &os;
- können Sie das (als <username>root</username>) mit
- folgendem Befehl tun</para>
-
- <screen>&prompt.root; <userinput>camcontrol modepage sd0 -m 1 -e -P 3</userinput></screen>
-
- <para>und die Werte für AWRE und ARRE von 0 auf 1
- ändern:</para>
-
- <programlisting>
-AWRE (Auto Write Reallocation Enbld): 1
-ARRE (Auto Read Reallocation Enbld): 1
- </programlisting>
-
- <para>Moderne IDE-Controller sind in der Lage, fehlerhafte
- Blöcke automatisch zu verlagern. Diese Funktionen
- sind bereits ab Werk aktiviert.</para>
-
- <para>Werden dennoch fehlerhafte Blöcke gemeldet (egal
- auf welchem Laufwerk), sollten Sie über den Kauf einer
- neuen Platte nachdenken. Zwar könnte es Ihnen mit
- Diagnoseprogrammen des Plattenherstellers gelingen, diese
- fehlerhaften Blöcke zu sperren. Allerdings können
- Sie damit den endgültigen Ausfall der Platte bestenfalls
- hinauszögern.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="hpnetserver-scsi-failure">
- <para>Wieso wird der SCSI-Controller meines HP Netserver nicht
- erkannt?</para>
- </question>
-
- <answer>
- <para>Hierbei handelt es sich um ein bekanntes Problem. Der
- auf dem Board befindliche EISA-SCSI-Controller auf dem HP
- Netserver belegt die EISA-Slotnummer 11, wodurch sich alle
- <quote>wirklichen</quote> EISA-Slots vor ihm befinden.
- Leider kollidiert der Adressraum von EISA-Slots
- &gt;=10 mit dem Adressraum, der PCI zugeordnet ist und
- die Autokonfiguration von &os; kann mit dieser
- Situation derzeit nicht besonders gut umgehen.</para>
-
- <para>Die einfachste Alternative ist, diese Kollision
- einfach zu leugnen. Setzen Sie dazu die Kerneloption
- <literal>EISA_SLOTS</literal> auf den Wert 12.
- Konfigurieren und kompilieren Sie den Kernel, wie im <ulink
- url="&url.books.handbook;/kernelconfig.html">Handbucheintrag
- zur Kernelkonfiguration</ulink> beschrieben.</para>
-
- <para>Dies bringt Ihnen natürlich das klassische
- Huhn-Ei-Problem, wenn Sie auf einer solchen Maschine
- installieren wollen. Um dieses Problem zu umgehen,
- existiert ein spezieller Hack in
- <emphasis>UserConfig</emphasis>. Benutzen Sie nicht die
- <quote>visuelle</quote> Schnittstelle, sondern die rohe
- Kommandozeilenschnittstelle. Geben Sie einfach den folgenden
- Befehl am Prompt ein und Sie können Ihr System ganz
- normal installieren:</para>
-
- <programlisting>eisa 12
-quit
- </programlisting>
-
- <para>Sie sollten auf jeden Fall einen angepassten Kernel zu
- kompilieren und installieren.</para>
-
- <para>Zukünftige Versionen werden hoffentlich eine
- passende Lösung für dieses Problem
- beinhalten.</para>
-
- <note>
- <para>Sie können keine <literal>dangerously
- dedicated</literal> Platte auf einem HP Netserver
- verwenden. Lesen Sie weitere Informationen finden Sie
- in <link linkend="dedicate">diesem
- Hinweis</link>.</para>
- </note>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ed1-timeout">
- <para>Was bedeuten die ständigen Meldungen
- <literal>ed1: timeout</literal>?</para>
- </question>
-
- <answer>
- <para>Dies wird meistens durch einen Interruptkonflikt
- verursacht (z.B., wenn zwei Karten den selben Interrupt
- benutzen). Booten Sie mit der Option <option>-c</option>
- und ändern Sie die Einträge zu
- <devicename>ed0</devicename>/<devicename>de0</devicename>/...
- (d.h. Ihrem Board entsprechend).</para>
-
- <para>Wenn Sie den BNC-Anschluss Ihrer Netzwerkkarte
- benutzen, könnte es auch sein, dass es sich
- Geräte-Timeouts aufgrund fehlerhafter Terminierung
- handelt. Um dies zu überprüfen, verbinden Sie
- einen Terminator direkt mit der Netzwerkkarte (ohne Kabel)
- und beobachten Sie, ob die Fehlermeldungen
- verschwinden.</para>
-
- <para>Einige NE2000 kompatible Karten melden diesen Fehler,
- wenn keine Verbindung am UTP-Eingang existiert oder wenn
- das Kabel nicht eingesteckt ist.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="bad-3c509">
- <para>Warum funktioniert meine &tm.3com; 3C509 plötzlich
- nicht mehr?</para>
- </question>
-
- <answer>
- <para>Diese Karte ist dafür berüchtigt, ihre
- Konfiguration zu vergessen. Sie müssen die Karte mit
- dem DOS-Programm <command>3c5x9.exe</command> neu
- konfigurieren.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="printer-slow">
- <para>Mein an der parallel Schnittstelle angeschlossener
- Drucker ist unglaublich langsam. Was kann ich
- tun?</para>
- </question>
-
- <answer>
- <para>Falls das einzige Problem ist, dass er
- schrecklich langsam ist, dann sollte Sie versuchen, die
- <ulink
- url="&url.books.handbook;/printing-intro-setup.html#PRINTING-PARALLEL-PORT-MODE">
- Kommunikationseinstellungen der parallelen Schnittstellen</ulink>
- zu ändern, wie es im Kapitel <ulink
- url="&url.books.handbook;/printing.html">Drucken</ulink>
- des Handbuchs beschrieben ist.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="signal11">
- <para>Wieso brechen meine Programme gelegentlich mit
- <errorname>Signal 11</errorname>-Fehlern ab?</para>
- </question>
-
- <answer>
- <para>Das Signal 11 wird generiert, wenn ein Prozess
- versucht, auf Speicher zuzugreifen, obwohl er vom
- Betriebssystem dazu nicht befugt wurde. Wenn Ihnen das
- scheinbar zufällig immer wieder passiert, sollten Sie
- der Sache einmal auf der Grund gehen.</para>
-
- <para>Das Problem hat in der Regel eine der folgenden
- Ursachen:</para>
-
- <orderedlist>
- <listitem>
- <para>Wenn das Problem nur in einer bestimmten
- Anwendung auftritt, die Sie selbst entwickeln, dann
- ist es wahrscheinlich ein Fehler in Ihren
- Sourcen.</para>
- </listitem>
-
- <listitem>
- <para>Wenn das Problem in einem Teil von &os;
- auftritt, könnte es natürlich auch ein
- Fehler sein; aber in den meisten
- Fällen werden diese Probleme gefunden und behoben,
- bevor die typischen Leser der FAQ (wir) diese Teile
- der Sourcen benutzen können (dafür gibt es
- schließlich -CURRENT).</para>
- </listitem>
- </orderedlist>
-
- <para>Wenn der Fehler auftritt, wenn Sie ein Programm
- compilieren aber dabei immer wieder an anderer Stelle
- auftritt, dann ist das ein ganz eindeutiger Hinweis,
- dass das Problem <emphasis>nicht</emphasis> bei
- &os; liegt.</para>
-
- <para>Nehmen wir zum Beispiel an, dass Sie <command>make
- <maketarget>buildworld</maketarget></command>
- ausführen und die Compilierung von
- <filename>ls.c</filename> in <filename>ls.o</filename>
- abbricht. Wenn Sie nochmal <command>make
- <maketarget>buildworld</maketarget></command>
- durchführen und die Compilierung an der gleichen
- Stelle abbricht, handelt es sich um einen Fehler in den
- Sourcen. Aktualisieren Sie Ihre Sourcen und versuchen Sie
- es noch einmal. Wenn der Fehler jedoch an einer anderen
- Stelle auftritt, liegt das Problem mit an Sicherheit
- grenzender Wahrscheinlichkeit bei Ihrer Hardware.</para>
-
- <para>Was Sie tun sollten:</para>
-
- <para>Im ersten Fall können Sie einen Debugger wie z.B.
- &man.gdb.1; benutzen, um die Stelle im Programm zu finden,
- an der auf eine falsche Adresse zugegriffen wird und danach
- den Fehler beheben.</para>
-
- <para>Im zweiten Fall müssen Sie sicherstellen,
- dass das Problem nicht von Ihrer Hardware verursacht
- wird.</para>
-
- <para>Typische Ursachen dafür sind unter
- anderem:</para>
-
- <orderedlist>
- <listitem>
- <para>Es könnte sein, dass Ihren Festplatten
- zu warm werden: Überprüfen Sie, ob die
- Lüfter in Ihrem Gehäuse noch funktionieren,
- damit Ihre Festplatten (und andere Hardware) nicht
- heißlaufen.</para>
- </listitem>
-
- <listitem>
- <para>Der Prozessor überhitzt, weil Sie Ihn
- übertaktet haben oder der CPU-Kühler
- ausgefallen ist. Sie müssen sicherstellen,
- dass Sie Ihre Hardware unter den Bedingungen
- betreiben, für die sie spezifiziert ist,
- zumindest während Sie versuchen, das Problem
- zu lösen. Mit anderen Worten: Betreiben Sie
- Ihre CPU mit der normalen Taktfrequenz.</para>
-
- <para>Wenn Sie übertakten, sollten Sie daran
- denken, dass ein langsames System deutlich
- billiger ist als ein defektes System. Die große
- Masse hat nicht sehr häufig Mitgefühl mit
- Problemen bei übertakteten System, auch wenn Sie
- es für ungefährlich halten.</para>
- </listitem>
-
- <listitem>
- <para>Unzuverlässiger Speicher: Wenn Sie mehr als
- ein SIMM/DIMM installiert haben, sollten Sie sie alle
- ausbauen und die Maschine testweise mit jedem SIMM
- oder DIMM einzeln betreiben. So können Sie
- feststellen, ob die Ursache ein einzelnes SIMM/DIMM
- oder auch eine Kombination von Modulen ist.</para>
- </listitem>
-
- <listitem>
- <para>Zu optimistische Einstellung des Mainboards: In
- Ihrem BIOS und mit den Jumpern auf dem Mainboard
- können Sie diverse Timings ändern. In den
- meisten Fällen reichen die Defaults aus, aber
- manchmal kann es durch zu wenig wait states, die
- Einstellung <quote>RAM Speed: Turbo</quote> oder
- ähnliches zu merkwürdigen Problemen kommen.
- Ein möglicher Ansatz ist, die BIOS defaults zu
- laden, allerdings könnte es sinnvoll sein, die
- aktuellen Einstellungen vorher zu notieren.</para>
- </listitem>
-
- <listitem>
- <para>Schlechte oder fehlerhafte Stromversorgung des
- Mainboards: Wenn Sie unbenutzte Steckkarten, Platten
- oder CD-ROMs in Ihrem System haben, sollten Sie sie
- testweise ausbauen oder die Stromversorgung abziehen.
- Dadurch können Sie prüfen, ob Ihr Netzteil
- eventuell mit einer geringeren Last besser
- zurechtkommt. Sie können auch testweise ein
- anderes, am besten ein leistungsfähigeres,
- Netzteil ausprobieren. Wenn Sie zurzeit ein
- 250&nbsp;W-Netzteil benutzen, sollten Sie testweise ein
- 300&nbsp;W-Netzteil einbauen.</para>
- </listitem>
- </orderedlist>
-
- <para>Die sollten ebenfalls die SIG11 FAQ (unten
- aufgeführt) lesen, da sie gute Erklärungen
- für alle diese Probleme enthält (allerdings aus
- &linux;-Sicht). Sie erklärt ebenfalls, warum sowohl
- Programme als auch Geräte zur Speicherprüfung
- fehlerhaften Speicher teilweise nicht erkennen.</para>
-
- <para>Wenn alle diese Schritte nicht helfen, ist es
- möglich, dass Sie einen Fehler in &os;
- gefunden haben. Folgen Sie einfach den Anweisungen
- für die Erstellung eines Problem Reports.</para>
-
- <para>Es existiert eine ausführliche FAQ hierzu unter
- <ulink url="http://www.bitwizard.nl/sig11/">der
- SIG11-Problem-FAQ</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="trap-12-panic">
- <para>Mein System stürzt mit der Meldung
- <errorname>Fatal trap 12: page fault in kernel
- mode</errorname> oder <errorname>panic:</errorname> ab und
- gibt eine Menge zusätzlicher Informationen aus. Was
- kann ich tun?</para>
- </question>
-
- <answer>
- <para>Die Entwickler von &os; interessieren sich für
- solchen Meldungen, allerdings brauchen Sie deutlich mehr
- Informationen als die, die Ihnen angezeigt werden.
- Kopieren Sie die komplette Meldungen und lesen Sie nun den
- FAQ-Eintrag über <link
- linkend="kernel-panic-troubleshooting">kernel panics</link>.
- Erzeugen sie einen Kernel mit den zusätzlichen Daten
- zur Fehlersuche, und dann einen backtrace. Das hört
- sich komplizierter an, als es ist. Sie brauchen keine
- Programmier-Erfahrung, Sie müssen einfach nur den
- Anweisungen folgen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="screen-loses-sync">
- <para>Wieso wird beim Booten der Bildschirm schwarz und reagiert
- nicht mehr?</para>
- </question>
-
- <answer>
- <para>Dies ist ein bekanntes Problem mit der ATI&nbsp;Mach64
- Videokarte. Das Problem besteht darin, dass diese
- Karte die Adresse <literal>2e8</literal> benutzt und die
- vierte serielle Schnittstelle ebenfalls. Aufgrund eines
- Fehlers (einer Besonderheit?) im &man.sio.4;-Treiber wird
- diese Schnittstelle angesprochen, auch wenn Sie gar keine
- vierte serielle Schnittstelle besitzen und
- <emphasis>sogar</emphasis>, wenn Sie
- <devicename>sio3</devicename> (die vierte Schnittstelle),
- die normalerweise diese Adresse verwendet, deaktivieren.</para>
-
- <para>Bis der Fehler behoben ist, können Sie folgende
- Abhilfe verwenden:</para>
-
- <orderedlist>
- <listitem>
- <para>Geben Sie am Bootprompt <option>-c</option> ein.
- (Dies bringt den Kernel in den
- Konfigurationsmodus).</para>
- </listitem>
-
- <listitem>
- <para>Deaktivieren Sie <devicename>sio0</devicename>,
- <devicename>sio1</devicename>,
- <devicename>sio2</devicename> und
- <devicename>sio3</devicename> (alle). Auf diese Weise
- wird der &man.sio.4;-Treiber nicht aktiviert und das
- Problem tritt nicht mehr auf.</para>
- </listitem>
-
- <listitem>
- <para>Geben Sie exit ein, um den Bootvorgang
- fortzusetzen.</para>
- </listitem>
- </orderedlist>
-
- <para>Falls sie in der Lage sein wollen Ihre seriellen
- Schnittstellen zu benutzen, müssen Sie einen neuen
- Kernel mit folgenden Modifikationen erstellen: suchen Sie
- in <filename>/usr/src/sys/sio/sio.c</filename> (oder in
- <filename>/usr/src/sys/pc98/cbus/sio.c</filename> für pc98)
- nach der Zeichenkette <literal>0x2e8</literal> und löschen
- Sie sie und das vorhergehende Komma (nicht das folgende
- Komma). Nun folgen Sie der normalen Prozedur zur
- Erstellung eines neuen Kernels.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="reallybigram">
- <para>Wieso verwendet &os; nur 64&nbsp;MB Hauptspeicher,
- obwohl in meinem Rechner 128&nbsp;MB sind?</para>
- </question>
-
- <answer>
- <para>Aufgrund der Art und Weise, wie &os; die
- Hauptspeichergröße vom BIOS mitgeteilt bekommt,
- kann es lediglich 16-Bit Werte in kByte-Größe
- (65535&nbsp;kByte = 64&nbsp;MB) erkennen (oder weniger... einige
- BIOSe setzen die Hauptspeichergröße auf 16&nbsp;MB).
- Falls Sie mehr als 64&nbsp;MB besitzen, wird &os; versuchen,
- das zu erkennen, was aber nicht immer
- funktioniert.</para>
-
- <para>Um dieses Problem zu umgehen, müssen Sie die
- untenstehende Kerneloption verwenden. Es gibt einen Weg,
- vollständige Hauptspeicherinformationen vom BIOS zu
- erhalten, aber in den Bootblöcken ist nicht
- genügend Platz dafür vorhanden. Wenn der
- Platzmangel in den Bootblöcken eins Tages behoben
- ist, werden wir die erweiterten BIOS-Funktionen dazu
- nutzen, die vollständigen Hauptspeicherinformationen
- zu erhalten... aber zurzeit sind wir auf die Kerneloption
- angewiesen.</para>
-
- <programlisting>options MAXMEM=<replaceable>n</replaceable></programlisting>
-
- <para>Hierbei ist <literal>n</literal> Ihre
- Hauptspeichergröße in Kilobyte. Bei einer
- 128&nbsp;MB-Maschine müßten Sie
- <literal>131072</literal> benutzen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="kmem-map-too-small">
- <para>Ich habe mehr als 1&nbsp;GB RAM. Trotzdem stürzt
- mein System mit der Meldung
- <errorname>kmem_map too small</errorname> ab. Was läuft hier
- schief?</para>
- </question>
-
- <answer>
- <para>Im Normalfall bestimmt &os; einige Kernelparameter,
- darunter die maximale Anzahl der Dateien, die gleichzeitig
- geöffnet sein können, aus der Größe
- des im System installierten Hauptspeichers. Auf Systemen
- mit mindestens 1&nbsp;GB Hauptspeicher kann dieser
- <quote>auto sizing</quote>-Mechanismus diese Werte
- fälschlicherweise zu hoch ansetzen: Beim Systemstart
- fordert der Kernel dann verschiedene Tabellen und andere
- Strukturen an, die den Großteil des verfügbaren
- Kernelspeichers verbrauchen. Dies führt dazu, dass
- der Kernel während des Betriebs keine dynamischen
- Speicheranforderungen mehr ausführen kann und mit
- einer Kernelpanik abstürzt.</para>
-
- <para>Bauen Sie in diesem Fall Ihren eigenen Kernel. Dazu
- setzen Sie <option>VM_KMEM_SIZE_MAX</option>
- in Ihrer Kernelkonfigurationsdatei auf 400&nbsp;MB
- (<option>options VM_KMEM_SIZE_MAX=419430400</option>).
- 400&nbsp;MB sollten für Maschinen bis 6&nbsp;GB
- Hauptspeicher ausreichend sein.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="panic-kmemmap-too-small">
- <para>Ich habe weniger als 1&nbsp;GB Hauptspeicher. Dennoch
- stürzt mein System mit der Meldung
- <errorname>kmem_map too small</errorname> ab!</para>
- </question>
-
- <answer>
- <para>Diese Meldung zeigt an, dass der virtuelle
- Speicher für Netzwerkpuffer (spezieller mbuf-Cluster)
- aufgebraucht ist. Sie können die für mbuf
- verfügbare Größe an VM erhöhen, indem
- Sie den Anweisungen des Abschnitts <ulink
- url="&url.books.handbook;/configtuning-kernel-limits.html#NMBCLUSTERS">
- Netzwerk-Limits</ulink> des Handbuchs folgen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="proc-table-full">
- <para>Wieso erhalte ich die Meldung <errorname>kernel:
- proc: table is full</errorname>?</para>
- </question>
-
- <answer>
- <para>Der &os;-Kernel beschränkt die Anzahl der
- gleichzeitig laufenden Prozesse. Die Anzahl errechnet
- sich aus dem Wert der Variablen
- <literal>MAXUSERS</literal> in der Konfigurationsdatei des
- Kernels. Auch andere Einstellungen wie die Anzahl der
- Puffer für Netzwerkoperationen (Details dazu
- finden Sie in <link
- linkend="panic-kmemmap-too-small">diesem
- Abschnitt</link>). werden durch
- <varname>MAXUSERS</varname> beeinflusst. Wenn Ihr
- System stark belastet ist, sollten Sie den Wert von
- <varname>MAXUSERS</varname> erhöhen. Dadurch werden
- diverse Einstellung des Systems angepasst und die
- maximale Anzahl gleichzeitig laufender Prozesse
- erhöht.</para>
-
- <para>Um den Wert von <varname>MAXUSERS</varname> anzupassen,
- folgen Sie den Anweisungen des Abschnitts <ulink
- url="&url.books.handbook;/configtuning-kernel-limits.html#KERN-MAXFILES">
- Datei- und Prozesslimits</ulink> des Handbuchs. Dieser
- Abschnitt spricht zwar nur von Dateien, für Prozesse
- gelten aber die gleichen Beschränkungen.</para>
-
- <para>Wenn Ihr System nicht besonders stark ausgelastet ist
- und Sie einfach nur mehr gleichzeitig laufende Prozesse
- erlauben wollen, können Sie den Wert der Variable
- <varname>kern.maxproc</varname> in der Datei
- <filename>/boot/loader.conf</filename> anpassen. Um die
- Änderung zu aktivieren, müssen Sie Ihr System
- neu starten. Wollen Sie Ihr System zusätzlich
- optimieren, sollten Sie &man.loader.conf.5; und
- &man.sysctl.conf.5; lesen.
- Wenn diese Prozesse von einem einzigen Benutzer
- ausgeführt werden, müssen Sie den Wert von
- <varname>kern.maxprocperuid</varname> ebenfalls
- erhöhen. Dieser Wert muss immer mindestens um
- eins geringer sein als der Wert von
- <varname>kern.maxproc</varname> (der Grund
- für diese Einschränkung ist, dass ein
- Systemprogramm, &man.init.8;, immer ausgeführt werden
- muss).</para>
-
- <para>Damit Änderungen einer sysctl-Variable dauerhaft
- erhalten bleiben, nehmen Sie diese in
- <filename>/etc/sysctl.conf</filename> auf. Weitere
- Informationen zur Optimierung Ihres Systems finden Sie im
- Abschnitt <ulink
- url="&url.books.handbook;/configtuning-sysctl.html">
- Einstellungen mit sysctl</ulink> des Handbuchs.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="cmap-busy-panic">
- <para>Wieso erhalte ich die Meldung <errorname>CMAP busy
- panic</errorname>, wenn ich mein System mit einem neuen
- Kernel starte?</para>
- </question>
-
- <answer>
- <para>Die Logik, die versucht, veraltete
- <filename>/var/db/kvm_*.db</filename>-Dateien zu erkennen,
- versagt manchmal und die Benutzung einer unpassenden Datei
- kann zu Paniksituationen führen.</para>
-
- <para>Falls das passiert, rebooten Sie in den Single-User-Modus
- und löschen Sie die Dateien:</para>
-
- <screen>&prompt.root; <userinput>rm /var/db/kvm_*.db</userinput></screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="brkadrint-illegal-host-access">
- <para>Was soll mir die Meldung <errorname>ahc0: brkadrint,
- Illegal Host Access at seqaddr 0x0</errorname>
- sagen?</para>
- </question>
-
- <answer>
- <para>Dies ist ein Konflikt mit einem Ultrastor SCSI
- Hostadapter.</para>
-
- <para>Rufen Sie während des Bootprozesses das
- Kernelkonfigurationsmenü auf und deaktivieren Sie
- <devicename>uha0</devicename>, welches das Problem
- verursacht.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="aci0-illegal-cable">
- <para>Wenn ich mein System starte, erhalte ich die Meldung
- <errorname>ahc0: illegal cable configuration</errorname>,
- obwohl die Verkabelung korrekt ist. Woran liegt
- das?</para>
- </question>
-
- <answer>
- <para>Auf Ihrem Mainboard fehlen ein paar Logikbausteine,
- die für die Unterstützung der automatischen
- Terminierung notwendig sind. Stellen Sie in Ihrem
- SCSI-BIOS manuell die korrekte Terminierung für Ihr
- System ein, anstatt sich auf die automatische Terminierung
- zu verlassen. Der &man.ahc.4;-Treiber kann nicht
- erkennen, ob die externen Logikbausteine für die
- Erkennung der Kabel (und damit automatische Terminierung)
- vorhanden sind. Der Treiber muss sich darauf
- verlassen, dass diese vorhanden sind, wenn in der
- Konfiguration <quote>automatische Terminierung</quote>
- eingestellt ist. Ohne die externen Bausteine ist es sehr
- wahrscheinlich, dass der Treiber die Terminierung
- falsch einstellt, was die Zuverlässigkeit des
- SCSI-Busses herabsetzen kann.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="mail-loopback">
- <para>Wieso meldet <application>sendmail</application>
- <errorname>mail loops back to myself</errorname>?</para>
- </question>
-
- <answer>
- <para>Sie finden eine detaillierte Antwort auf diese Frage im
- <ulink
- url="&url.books.handbook;/mail-trouble.html#Q29.6.2.">Handbuch</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="remote-fullscreen">
- <para>Wieso funktionieren bildschirmorientierte Anwendungen beim
- Zugriff über ein Netzwerk nicht richtig?</para>
- </question>
-
- <answer>
- <para>Die entfernte Maschine scheint den Terminaltyp auf
- etwas anderes als den Typ <literal>cons25</literal>, der
- von &os; verlangt wird, zu setzen.</para>
-
- <para>Es gibt mehrere mögliche Abhilfen für dieses
- Problem:</para>
-
- <itemizedlist>
- <listitem>
- <para>Setzen Sie die Shell-Variable <envar>TERM</envar>
- nach dem Einloggen auf der entfernten Maschine auf
- <literal>ansi</literal> oder <literal>sco</literal>,
- sofern die entfernte Maschine diese Terminaltypen
- kennt.</para>
- </listitem>
-
- <listitem>
- <para>Benutzen Sie einen VT100-Emulator wie
- <application>screen</application> auf der
- &os;-Konsole. <application>screen</application>
- bietet Ihnen die Möglichkeit, mehrere
- gleichzeitige Sitzungen von einem Bildschirm aus
- laufen zu lassen. Es ist ein sehr nettes Programm.
- Jedes <application>screen</application>-Fenster
- verhält sich, wie ein VT100-Terminal, weshalb die
- Variable <envar>TERM</envar> am entfernten Ende auf
- <literal>vt100</literal> gesetzt werden
- sollte.</para>
- </listitem>
-
- <listitem>
- <para>Installieren Sie den Eintrag
- <literal>cons25</literal> in der Bildschirmdatenbank
- der entfernten Maschine. Wie das zu geschehen hat,
- hängt vom Betriebssystem der entfernten Maschine
- ab. Das Systemadministrationshandbuch für das
- entfernte System sollte Ihnen hierbei helfen
- können.</para>
- </listitem>
-
- <listitem>
- <para>Starten Sie einen X-Server auf der &os;-Seite
- und benutzen Sie einen X-basierten Terminalemulator
- wie <command>xterm</command> oder
- <command>rxvt</command>, um sich auf der entfernten
- Maschine einzuloggen. Die Variable <envar>TERM</envar>
- auf dem entfernten Host sollte auf <literal>xterm</literal>
- oder <literal>vt100</literal> gesetzt werden.</para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="pnp-not-found">
- <para>Warum wird meine PnP-Karte nicht (oder nur noch als
- <literal>unknown</literal>) erkannt?</para>
- </question>
-
- <answer>
- <para>Die Gründe für dieses Verhalten werden in
- der unten zitierten Mail von &a.peter;
- erklärt. Diese Mail stammt von der Mailingliste
- &a.questions; und war eine Antwort auf eine Frage
- bezüglich eines internen Modem, das nach dem Update
- auf &os; 4.<replaceable>X</replaceable> nicht mehr
- erkannt wurde.</para>
-
- <note>
- <para>Die mit <literal>[]</literal> gekennzeichneten Kommentare
- wurden eingefügt, um an einigen Stellen die Bezüge
- klarzustellen.</para>
- </note>
-
- <blockquote>
- <para>Das PnP-BIOS hat es [das Modem] vorkonfiguriert und
- es dann im Adressraum liegenlassen, daher haben es
- die alten ISA-Erkennungsroutinen [in
- 3.<replaceable>X</replaceable>] <quote>gefunden</quote>.</para>
-
- <para>In 4.0 sind die ISA-Routinen deutlich
- PnP-orientierter. Es war möglich [in
- 3.<replaceable>X</replaceable>], dass eine ISA-Erkennungsroutine
- ein <quote>zugelaufenes</quote> Gerät fand;
- während die PnP-Treiber zwar die ID erkannten, das
- Gerät aber wegen des Ressourcekonfliktes nicht
- benutzen konnten. Daher werden die programmierbaren
- Karten zunächst einmal abgeschaltet, um diese
- doppelte Erkennung vermeiden zu können. Das
- bedeutet allerdings auch, dass die Treiber die
- PnP-ID kennen muss, um PnP-Hardware
- unterstützen zu können. Wir haben uns
- vorgenommen, den Benutzern eine einfachere
- Möglichkeit zur Manipulation dieser Informationen
- zur Verfügung zu stellen.</para>
- </blockquote>
-
- <para>Damit Ihr Gerät wieder funktioniert, müssen
- Sie seine PnP-ID herausfinden und die ID in die Listen
- eintragen, die zur Erkennung von PnP-Geräten
- genutzten werden. Zu diesem Zweck wird das Gerät mit
- &man.pnpinfo.8; analysiert. Das Beispiel zeigt die
- Ausgaben von &man.pnpinfo.8; für ein internes
- Modem:</para>
-
- <screen>&prompt.root; <userinput>pnpinfo</userinput>
-Checking for Plug-n-Play devices...
-
-Card assigned CSN #1
-Vendor ID PMC2430 (0x3024a341), Serial Number 0xffffffff
-PnP Version 1.0, Vendor Version 0
-Device Description: Pace 56 Voice Internal Plug &amp; Play Modem
-
-Logical Device ID: PMC2430 0x3024a341 #0
- Device supports I/O Range Check
-TAG Start DF
- I/O Range 0x3f8 .. 0x3f8, alignment 0x8, len 0x8
- [16-bit addr]
- IRQ: 4 - only one type (true/edge)</screen>
-
- <para>[weitere TAG Zeilen gestrichen]</para>
-
- <screen>TAG End DF
-End Tag
-
-Successfully got 31 resources, 1 logical fdevs
--- card select # 0x0001
-
-CSN PMC2430 (0x3024a341), Serial Number 0xffffffff
-
-Logical device #0
-IO: 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8
-IRQ 5 0
-DMA 4 0
-IO range check 0x00 activate 0x01</screen>
-
- <para>Sie benötigen die Information aus der Zeile
- <literal>Vendor ID</literal> ganz am Anfang. Die in Klammern
- ausgegebene hexadezimale Zahl (<literal>0x3024a341</literal> in
- diesem Beispiel) ist die PnP ID und die unmittelbar davor
- stehende Zeichenkette (<literal>PMC2430</literal>) ist eine
- eindeutige Herstellerkennung.</para>
-
- <para>Benutzen Sie &man.pciconf.8; wenn &man.pnpinfo.8; die Karte
- nicht anzeigt. Der Teil der Ausgabe von
- <command>pciconf -vl</command> für eine auf dem
- Motherboard integrierte Soundkarte sieht zum Beispiel so
- aus:</para>
-
- <screen>&prompt.root; <userinput>pciconf -vl</userinput>
-chip1@pci0:31:5: class=0x040100 card=0x00931028 chip=0x24158086 rev=0x02 hdr=0x00
- vendor = 'Intel Corporation'
- device = '82801AA 8xx Chipset AC'97 Audio Controller'
- class = multimedia
- subclass = audio</screen>
-
- <para>Sie benötigen die Chip-ID <literal>0x24158086</literal>,
- die hinter <varname>chip</varname> aufgeführt ist.</para>
-
- <para>Die <literal>Vendor ID</literal> oder
- <varname>chip</varname>-ID müssen in die
- Datei <filename>/usr/src/sys/dev/sio/sio_isa.c</filename>
- eingetragen werden.</para>
-
- <para>Sie sollten zunächst ein Backup von
- <filename>sio_isa.c</filename> anlegen, falls etwas schief
- gehen sollte. Sie werden auch einen Patch erzeugen
- müssen, um ihn zusammen mit Ihrem PR einzusenden.
- (Sie wollten doch einen PR schreiben, oder etwa nicht?)
- Öffnen Sie nun <filename>sio_isa.c</filename> mit einem
- Editor und suchen Sie nach der Zeile:</para>
-
- <programlisting>static struct isa_pnp_id sio_ids[] = {</programlisting>
-
- <para>Blättern Sie dann nach unten, um die passende
- Stelle für Ihr Gerät zu finden. Unten finden
- Sie Beispiel für die Einträge, diese sind nach
- der Herstellerkennung sortiert. Diese sollte in dem
- Kommentar auf der rechten Seite aufgenommen werden, dazu
- kommt die Gerätebeschreibung (<emphasis>Device
- Description</emphasis>) aus der Ausgabe von
- &man.pnpinfo.8;:</para>
-
- <programlisting>
-{0x0f804f3f, NULL}, /* OZO800f - Zoom 2812 (56k Modem) */
-{0x39804f3f, NULL}, /* OZO8039 - Zoom 56k flex */
-{0x3024a341, NULL}, /* PMC2430 - Pace 56 Voice Internal Modem */
-{0x1000eb49, NULL}, /* ROK0010 - Rockwell ? */
-{0x5002734a, NULL}, /* RSS0250 - 5614Jx3(G) Internal Modem */
- </programlisting>
-
- <para>Fügen Sie die hexadezimale Gerätekennung an
- der richtigen Stelle ein, speichern Sie die Datei ab,
- erzeugen Sie einen neuen Kernel und starten Sie Ihr System
- neu. Ihr Gerät sollte nun als
- <devicename>sio</devicename> Gerät erkannt werden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="nlist-failed">
- <para>Warum erhalte ich die Meldung <errorname>nlist
- failed</errorname>, wenn ich Programme wie
- <command>top</command> oder <command>systat</command>
- benutze?</para>
- </question>
-
- <answer>
- <para>Das Programm sucht nach einem speziellen Symbol im
- Kernel, kann es aber aus irgendeinem Grunde nicht finden.
- Dieser Fehler wird von einem dieser Probleme
- verursacht:</para>
-
- <itemizedlist>
- <listitem>
- <para>Ihr Kernel und die sonstigen Programme (das
- <quote>Userland</quote>) sind nicht mehr auf dem
- gleichen Stand. Mit anderen Worten, Sie haben zwar
- einen neuen Kernel erzeugt, aber kein
- <maketarget>installworld</maketarget> (oder
- umgekehrt); darum weicht die Symboltabelle von dem
- ab, was die Anwendung erwartet. Wenn dies der Fall ist,
- müssen Sie lediglich die noch fehlenden Schritte
- des Upgrades durchführen. Die richtige
- Vorgehensweise kann
- <filename>/usr/src/UPDATING</filename> entnommen
- werden.</para>
- </listitem>
-
- <listitem>
- <para>Um Ihren Kernel zu laden, benutzen Sie nicht
- <command>/boot/loader</command>, sondern laden ihn
- direkt mit <filename>boot2</filename> (siehe
- &man.boot.8;). Es ist zwar nicht immer ein Fehler,
- <command>/boot/loader</command> zu umgehen; allerdings
- ist er in der Regel besser dazu geeignet, die Symbole des
- Kernels für normale Anwendungen verfügbar zu
- machen.</para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="connection-delay">
- <para>Wieso dauert es so lange, bis eine Verbindung
- (&man.ssh.1; oder &man.telnet.1;) aufgebaut wird?</para>
- </question>
-
- <answer>
- <para>Das Symptom: Nach dem Aufbau des TCP-Verbindung
- vergeht einige Zeit, bis endlich die Abfrage des
- Passwortes (bzw. der Login-Prompt bei Telnet)
- erscheint.</para>
-
- <para>Das Problem: In den meisten Fällen versucht der
- Server in der Zwischenzeit, die IP-Adresse des Clients in
- einen Rechnernamen zu übersetzen. Viele Server
- (darunter die <application>Telnet</application>- und
- <application>SSH</application>-Server von &os;) machen
- das, um den Hostnamen z.B. für spätere
- Verwendung durch den Systemadministrator in eine
- Protokolldatei schreiben zu können.</para>
-
- <para>Die Lösung: wenn das Problem bei jedem Server
- auftritt, den Sie von Ihrem Computer (dem Client)
- ansprechen, dann wird das Problem vom Client verursacht.
- Wenn das Problem aber nur auftritt, wenn jemand Ihren
- Rechner (den Server) anspricht, dann liegt die Ursache
- beim Server.</para>
-
- <para>Wenn das Problem vom Client verursacht wird,
- müsssen Sie die Einträge im DNS korrigieren,
- damit der Server Ihre IP-Adresse übersetzen kann.
- Wenn das Problem in Ihrem lokalen Netzwerk auftritt,
- sollten Sie es als Problem des Servers behandeln und
- weiterlesen; wenn es allerdings im Internet auftritt,
- werden Sie sich wahrscheinlich an Ihrem ISP wenden
- müssen, damit dieser das Problem für Sie
- korrigiert.</para>
-
- <para>Wenn das Problem vom Server verursacht wird und Sie
- sich in einem lokalen Netzwerk befinden, dann müssen
- Sie Ihren Server so konfigurieren, dass er die lokal
- genutzten IP-Adressen in Rechnernamen übersetzen kann.
- Weitere Informationen erhalten Sie in den Onlinehilfen zu
- &man.hosts.5; und &man.named.8;. Wenn dieses Problem im
- Internet auftritt, könnte die Ursache auch darin
- liegen, dass die Namensauflösung auf dem Server
- nicht funktioniert. Versuchen Sie, einen anderen
- Hostnamen wie z.B. <hostid>www.yahoo.com</hostid>
- aufzulösen. Wenn das nicht funktioniert, liegt das
- Problem bei Ihrem System.</para>
-
- <para>Haben Sie &os; gerade erst installiert, kann es auch
- sein, dass die Domänen- und Nameserverinformationen
- noch nicht in <filename>/etc/resolv.conf</filename>
- vorhanden sind. Dadurch kommt es häufig zu
- Verzögerungen beim Einsatz von
- <application>SSH</application>, weil die Option
- <literal>UseDNS</literal> in der Voreinstellung auf
- <literal>yes</literal> gesetzt ist (in der Datei
- <filename>sshd_config</filename> im Verzeichnis <filename
- class="directory">/etc/ssh</filename>). Ist dies bei
- Ihnen der Fall, müssen Sie entweder die fehlenden
- Informationen in <filename>/etc/resolv.conf</filename> eintragen
- oder als temporäre Maßnahme <literal>UseDNS</literal>
- auf <literal>no</literal> setzen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="stray-irq">
- <para>Was bedeutet <errorname>stray IRQ</errorname>?</para>
- </question>
-
- <answer>
- <para>Stray IRQs sind ein Zeichen für Probleme bei der
- Behandlung von Hardware-IRQs. Sie werden meistens von
- Geräten verursacht, die ihren Interrupt Request
- zurückziehen, obwohl gerade der interrupt request
- acknowledge-Zyklus läuft.</para>
-
- <para>Sie können drei Dinge tun:</para>
-
- <itemizedlist>
- <listitem>
- <para>Ertragen Sie die Warnungen. Sie erhalten nur die
- ersten 5 für jeden IRQ, alle anderen werden
- unterdrückt.</para>
- </listitem>
-
- <listitem>
- <para>Eliminieren Sie die Meldungen, indem Sie den Wert von
- <varname>MAX_STRAY_LOG</varname> von <literal>5</literal>
- auf <literal>0</literal> in der für ihre Plattform
- (z.B. &i386;) zuständigen Datei
- <filename>intr_machdep.c</filename> ändern. Bauen Sie
- anschliessend den Kernel neu, um alle Meldungen zu
- unterdrücken.</para>
- </listitem>
-
- <listitem>
- <para>Eliminieren Sie die Meldungen, indem Sie Hardware
- für den Parallelport installieren, die IRQ&nbsp;7
- nutzt und vom PPP Treiber verwendet wird (das passiert
- auf den meisten Systemen), und installieren Sie eine
- IDE-Platte oder andere Hardware sowie einen dazu
- passenden Treiber, um IRQ&nbsp;15 zu nutzen.</para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="file-table-full">
- <para>Warum sehe ich in der Ausgabe von &man.dmesg.8; häufig
- die Meldung <errorname>file: table is full</errorname>?</para>
- </question>
-
- <answer>
- <para>Diese Fehlermeldung besagt, dass Sie die zur
- Verfügung stehenden File-Handles des Systems
- verbraucht haben. Was das genau bedeutet und wie Sie
- dieses Problem lösen können, steht im Abschnitt
- <ulink
- url="&url.books.handbook;/configtuning-kernel-limits.html#KERN-MAXFILES">
- kern.maxfiles</ulink> im Kapitel <ulink
- url="&url.books.handbook;/configtuning-kernel-limits.html">Anpassung
- der Kernelkonfiguration</ulink> des Handbuchs.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="calcru-negative-runtime">
- <para>Warum werden ständig Meldungen wie
- <errorname>calcru: negative runtime</errorname> oder
- <errorname>calcru: runtime went backwards</errorname> auf die
- Konsole geschrieben?</para>
- </question>
-
- <answer>
- <para>Es existiert ein bekanntes Problem wenn &intel; Enhanced
- SpeedStep im BIOS aktiviert wird. Das führt dazu, dass der
- Kernel <errorname>calcru</errorname>-Nachrichten wie die folgende
- ausgibt:</para>
-
- <screen>calcru: runtime went backwards from 6 usec to 3 usec for pid 37 (pagezero)
-calcru: runtime went backwards from 6 usec to 3 usec for pid 36 (vmdaemon)
-calcru: runtime went backwards from 170 usec to 138 usec for pid 35 (pagedaemon)
-calcru: runtime went backwards from 553 usec to 291 usec for pid 15 (swi6: task queue)
-calcru: runtime went backwards from 15521 usec to 10366 usec for pid 2 (g_event)
-calcru: runtime went backwards from 25 usec to 12 usec for pid 11 (swi1: net)
-calcru: runtime went backwards from 4417 usec to 3960 usec for pid 1 (init)
-calcru: runtime went backwards from 2084385 usec to 1793542 usec for pid 1 (init)
-calcru: runtime went backwards from 408 usec to 204 usec for pid 0 (swapper)</screen>
-
- <para>Der Grund dafür besteht darin, dass &intel; SpeedStep
- (EIST) in manchen Mainboards inkompatibel ist.</para>
-
- <para>Abhilfe: Deaktivieren Sie die EIST-Eigenschaft im BIOS. Sie
- können trotzdem noch ihre Prozessorfrequenz ACPI-basiert
- mittels &man.powerd.8; drosseln.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="computer-clock-skew">
- <para>Warum ist die Uhrzeit auf meinem Computer immer
- falsch?</para>
- </question>
-
- <answer>
- <para>Ihr Computer verfügt über mehr als eine Uhr
- und &os; benutzt leider die falsche.</para>
-
- <para>Starten Sie &man.dmesg.8; und achten Sie auf die
- Zeilen, in denen das Wort <literal>Timecounter</literal>
- vorkommt. Die von &os; benutzte Uhr findet sich in der Zeile
- mit dem höchsten quality-Wert.</para>
-
- <screen>&prompt.root; <userinput>dmesg | grep Timecounter</userinput>
- Timecounter "i8254" frequency 1193182 Hz quality 0
- Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
- Timecounter "TSC" frequency 2998570050 Hz quality 800
- Timecounters tick every 1.000 msec</screen>
-
- <para>Sie können das überprüfen, indem Sie
- den Wert der Systemvariablen
- <varname>kern.timecounter.hardware</varname>
- abfragen.</para>
-
- <screen>&prompt.root; <userinput>sysctl kern.timecounter.hardware</userinput>
- kern.timecounter.hardware: ACPI-fast</screen>
-
- <para>Es kann sich um einen defekten ACPI Timer handeln. Die
- einfachste Lösung besteht darin, den ACPI Timer in
- <filename>/boot/loader.conf</filename> zu deaktivieren:</para>
-
- <programlisting>debug.acpi.disabled="timer"</programlisting>
-
- <para>Es ist aber auch durchaus möglich, dass das BIOS die
- TSC Uhr ändert, um beispielsweise den CPU-Takt zu
- während des Batteriebetrieb zu ändern, oder im
- Stromsparmodus; leider bemerkt &os; diese
- Änderungen nicht und daher scheint die Uhr falsch zu
- gehen.</para>
-
- <para>In diesem Beispiel ist die Uhr
- <literal>i8254</literal> ebenfalls verfügbar; um sie
- auszuwählen, muss ihr Name in die Systemvariable
- <varname>kern.timecounter.hardware</varname> geschrieben
- werden.</para>
-
- <screen>&prompt.root; <userinput>sysctl -w kern.timecounter.hardware=i8254</userinput>
- kern.timecounter.hardware: TSC -&gt; i8254</screen>
-
- <para>Die Uhrzeit Ihres Computers sollte nun genauer
- funktionieren.</para>
-
- <para>Damit diese Änderung automatisch beim Start des
- Systems durchgeführt wird, müssen Sie die
- folgende Zeile in die
- <filename>/etc/sysctl.conf</filename> eintragen.</para>
-
- <programlisting>kern.timecounter.hardware=i8254</programlisting>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="null-null">
- <para>Warum erkennt mein Laptop PC-Cards nicht?</para>
- </question>
-
- <answer>
- <para>Dieses Problem tritt häufig auf Laptops mit mehreren
- Betriebssystemen auf. Einige nicht-BSD Betriebssysteme lassen
- die Hardware in einem inkonsistenten Zustand. Die Karte wird
- dann von &man.pccardd.8; als
- <errorname>"(null)""(null)"</errorname> anstelle des
- tatsächlichen Modells gefunden.</para>
-
- <para>Um dies zu beheben, müssen Sie die Hardware
- zurücksetzen, das heißt der PC-Card Einschub
- muss stromlos sein. Gehen Sie dazu nicht in den Standby-
- oder Suspend-Modus und stellen Sie sicher, dass der Laptop
- wirklich ausgeschaltet ist. Warten Sie einen Moment und booten
- dann, Ihre PC-Card sollte jetzt funktionieren.</para>
-
- <para>Einige Laptops schalten sich nicht wirklich aus. Wenn der
- obige Vorschlag nichts genutzt hat, entfernen Sie bitte die
- Batterie, warten einen Moment und booten erneut.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="boot-read-error">
- <para>Wieso hängt sich &os; nach dem BIOS-Bildschirm
- mit der Meldung <errorname>Read error</errorname>
- auf?</para>
- </question>
-
- <answer>
- <para>Der Bootloader von &os; erkennt die Geometrie Ihrer
- Festplatte nicht richtig. Sie müssen die Geometrie
- manuell festlegen, wenn sie mit &man.fdisk.8; &os;-Bereiche
- erzeugen oder ändern.</para>
-
- <para>Die richtigen Werte für die Geometrie können
- Sie im BIOS des Rechners ablesen. Achten Sie auf die
- Anzahl der Zylinder, Köpfe und Sektoren für Ihre
- Festplatte.</para>
-
- <para>Im fdisk von &man.sysinstall.8; müssen Sie
- <keycap>G</keycap> eingeben, um die Geometrie zu
- definieren.</para>
-
- <para>Sie erhalten eine Dialogbox, in der Sie die Anzahl der
- Zylinder, Köpfe und Sektoren eingeben können.
- Verwenden Sie die Angaben des BIOS und setzen Sie
- Schrägstriche zwischen die Zahlen. 5000 Zylinder,
- 250 Köpfe und 60 Sektoren würden also als
- <userinput>5000/250/60</userinput> eingegeben.</para>
-
- <para>Schließen Sie die Eingabe mit <keycap>Enter</keycap>
- ab und drücken Sie <keycap>W</keycap>, um die neue
- Partitionstabelle auf die Festplatte schreiben zu
- lassen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="bootmanager-restore">
- <para>Ein anderes Betriebssystem hat meinen Bootmanager
- zerstört. Wie kann ich ihn wiederherstellen?</para>
- </question>
-
- <answer>
- <para>Starten Sie &man.sysinstall.8; und wählen Sie
- <guimenuitem>Configure</guimenuitem>, dann
- <guimenuitem>Fdisk</guimenuitem>. Wählen Sie die
- Platte, auf der sich der Boot Manager befand, mit der
- <keycap>Leertaste</keycap> aus. Drücken Sie
- <keycap>W</keycap>, um die Änderungen auf die Platten
- schreiben zu lassen. Nun erscheint eine Abfrage, welcher
- Bootmanager installiert werden soll. Wählen Sie
- diesen an und er wird wieder installiert.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="indefinite-wait-buffer">
- <para>Was soll mir die Meldung <errorname>swap_pager: indefinite
- wait buffer:</errorname> sagen?</para>
- </question>
-
- <answer>
- <para>Ein Programm wollte Speicher auf Platte auslagern, und
- dieser Vorgang konnte nicht innerhalb von 20 Sekunden
- durchgeführt werden. Mögliche Gründe sind
- defekte Blöcke auf der Platte, falsche oder
- fehlerhafte Verkabelung sowie Probleme mit anderen
- Komponenten, die am Zugriff auf die Festplatte beteiligt
- sind. Wenn die Festplatte selbst fehlerhaft sind, sollten
- Sie entsprechende Meldungen in
- <filename>/var/log/messages</filename> und den Ausgaben
- von <command>dmesg</command> finden. Andernfalls sollten
- Sie die Kabel und Verbindungen überprüfen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="udma-icrc">
- <para>Was sind <errorname>UDMA ICRC</errorname> Fehler und
- wie behebe ich sie?</para>
- </question>
-
- <answer>
- <para>Der &man.ata.4;-Treiber meldet <errorname>UDMA ICRC</errorname>
- Fehler wenn eine DMA-Übertragung zu oder von einem
- Laufwerk fehlgeschlagen ist. Der Treiber versucht die
- Übertragung mehrmals durchzuführen und schaltet,
- wenn die Versuche fehlschlagen, vom DMA-Modus auf den
- langsameren PIO-Modus um.</para>
-
- <para>Der Fehler kann viele Ursachen haben, häufig ist ein
- Kabel kaputt oder die Geräte sind falsch verkabelt.
- Prüfen Sie, ob die ATA-Kabel unbeschädigt sind und
- für den verwendeten Ultra-DMA-Modus tauglich sind. Ebenso
- müssen Wechselrahmen für den verwendeten Modus geeignet
- sein. Stellen Sie sicher, dass alle Kabel fest
- angeschlossen sind. Es gab auch schon Probleme, wenn ein altes
- Laufwerk zusammen mit einem Ultra-DMA-66 oder einem schnelleren
- Laufwerk auf einem Kanal betrieben wurde. Es kann aber auch
- sein, dass das Laufwerk kaputt ist. Die meisten Hersteller
- stellen Test-Programme für ihre Laufwerke zur
- Verfügung. Überprüfen Sie damit Ihr Laufwerk und
- wenn nötig, sichern Sie Ihre Daten und ersetzen das
- Laufwerk.</para>
-
- <para>&man.atacontrol.8; zeigt für jedes ATA-Gerät den
- verwendeten DMA- oder PIO-Modus an. Das Kommando
- <command>atacontrol mode
- <replaceable>Kanal</replaceable></command>
- zeigt die auf einem Kanal verwendeten Modi (die Kanäle
- werden von <literal>0</literal> an nummeriert).</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="lock-order-reversal">
- <para>Was ist ein <errorname>lock order
- reversal</errorname>?</para>
- </question>
-
- <answer>
- <para>Eine Antwort auf diese Frage findet sich im &os;-Glossar
- unter <ulink
- url="&url.books.handbook;/freebsd-glossary.html#LOR-GLOSSARY">LOR</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="called-with-non-sleepable-locks-held">
- <para>Warum erhalte ich die Meldung <errorname>Called ... with
- the following non-sleepable locks held</errorname>?</para>
- </question>
-
- <answer>
- <para>Diese Meldung erscheint, wenn eine Funktion, die sich
- im Ruhemodus befindet, aufgerufen wird, während ein
- Mutex oder eine andere (nicht in den Ruhemodus versetzbare)
- Sperre aktiv war.</para>
-
- <para>Der Grund dafür ist, dass ein Mutex nicht für
- längere Zeitspannen aktiv sein soll, sondern nur
- für die Synchronisation von Gerätetreibern mit
- dem Rest des Kernels während eines Interrupts. Unter
- &os; dürfen Interrupts nicht in den Ruhemodus
- versetzt werden. Daher ist es von entscheidender Bedeutung,
- dass während des Bestehens eines Mutex kein
- Kernelsubsystem für einen längeren Zeitraum
- blockiert ist.</para>
-
- <para>Um solche Fehler abzufangen, können Sicherungen
- (<foreignphrase>Assertions</foreignphrase>) in den Kernel
- eingebaut werden, die danach mit dem &man.witness.4;-Subsystem
- interagieren. Dadurch wird (in Abhängigkeit von Ihrer
- Systemkonfiguration) eine Warnung oder eine Fehlermeldung
- ausgegeben, falls der Aufruf einer Funktion während
- des Bestehens eines Mutex zu einer Blockierung führen
- kann.</para>
-
- <para>Zusammenfassend kann man sagen, dass diese Warnungen
- in der Regel zwar nicht bedrohlich sind. Unter bestimmten
- Umständen kann es aber dennoch zu unerwünschten
- Nebenwirkungen, angefangen von einer Erhöhung der
- Reaktionszeit bis hin zu einem kompletten Einfrieren des
- Systems kommen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="touch-not-found">
- <para>Warum bricht
- <maketarget>buildworld</maketarget>/<maketarget>installworld</maketarget>
- mit der Meldung <errorname>touch: not found</errorname> ab?</para>
- </question>
-
- <answer>
- <para>Dieser Fehler bedeutet nicht, dass &man.touch.1; nicht
- auf Ihrem System vorhanden ist. Vielmehr sind Dateien die
- Ursache, deren Erzeugungsdatum in der Zukunft liegt. Wenn
- Ihre CMOS-Uhr auf Ihre lokale Zeit eingestellt ist,
- müssen Sie <command>adjkerntz&nbsp;-i</command>
- verwenden, um die Kerneluhr anzupassen, wenn Sie in den
- Single-User-Modus booten.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="commercial">
- <title>Kommerzielle Anwendungen</title>
-
- <note>
- <para>Dieser Abschnitt ist immer noch sehr dürftig, aber
- wir hoffen natürlich, dass Unternehmen einen Beitrag
- leisten werden! :) Die &os;-Gruppe hat keinerlei
- finanzielle Interessen an einem der hier aufgelisteten
- Unternehmen, sondern listet sie lediglich als
- öffentlichen Service auf (und ist der Meinung, dass
- ein kommerzielles Interesse an &os; sehr positiven
- Einfluss auf ein langfristiges Bestehen von &os; haben
- kann). Wir möchten Anbieter kommerzieller Software dazu
- aufrufen, ihren Eintrag hier aufnehmen zu lassen. Auf der
- <ulink
- url="&url.base;/commercial/commercial.html">Anbieter-Seite</ulink>
- finden Sie eine längere Liste.</para>
- </note>
-
- <qandaset>
- <qandaentry>
- <question id="officesuite">
- <para>Wo bekomme ich &os;-Versionen der klassischen
- Büro-Anwendungen?</para>
- </question>
-
- <answer>
- <para>Die als Open Source verfügbaren Office-Pakete
- <application><ulink
- url="http://www.openoffice.org">OpenOffice.org</ulink></application>
- und <application><ulink
- url="http://www.libreoffice.org">LibreOffice</ulink></application>
- laufen nativ unter &os;. Die um zusätzliche
- Funktionen erweiterte kommerzielle OpenOffice.org-Version
- <application><ulink
- url="http://www.oracle.com/us/products/applications/open-office/index.html">
- Oracle Open Office</ulink></application>
- läuft in der &linux;-Version ebenfalls problemlos
- unter &os;.</para>
-
- <para>In der Ports-Sammlung sind weitere
- Textbearbeitungsprogramme, Tabellenkalkulationen und
- Zeichenprogramme enthalten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="motif">
- <para>Woher kann ich <application>&motif;</application> für
- &os; bekommen?</para>
- </question>
-
- <answer>
- <para>Der Quelltext für <application>&motif;&nbsp;2.2.2</application>
- wurde von der <quote>Open Group</quote> herausgegeben. Sie können
- entweder das Package <filename
- role="package">x11-toolkits/open-motif</filename>
- installieren oder es mit dem entsprechenden Port selbst
- compilieren. Weitere Informationen über die
- Benutzung der Ports erhalten Sie im <ulink
- url="&url.books.handbook;/ports.html">Kapitel Ports des
- Handbuchs</ulink>.</para>
-
- <note>
- <para>Die <application>Open &motif;</application> Distribution darf
- nur weitergegeben werden, wenn sie auf einem <ulink
- url="http://www.opensource.org">Open Source</ulink>
- Betriebssystem benutzt wird.</para>
- </note>
-
- <para>Weiterhin gibt es auch kommerzielle
- <application>&motif;</application>-Pakete, die zwar nicht kostenlos
- sind, aber dafür auch mit <quote>closed source</quote> Software
- benutzt werden dürfen. Um die günstigste
- ELF-<application>&motif;&nbsp;2.1.20</application> Distribution
- für &os; (&i386;) zu bekommen, wenden Sie sich bitte an <link
- linkend="apps2go">Apps2go</link>.<anchor id="apps2go"/></para>
-
- <para>Es gibt zwei Distributionen, die <quote>development
- edition</quote> und die <quote>runtime edition</quote>
- (wesentlich günstiger). Diese Distributionen
- enthalten:</para>
-
- <itemizedlist>
- <listitem>
- <para><application>OSF/&motif; manager</application>,
- <application>xmbind</application>, <application>panner</application>,
- <application>wsm</application>.</para>
- </listitem>
-
- <listitem>
- <para>Development-Kit mit uil, mrm, xm, xmcxx, Include-
- und Imake-Dateien.</para>
- </listitem>
-
- <listitem>
- <para>Statische und dynamische ELF-Bibliotheken.</para>
- </listitem>
-
- <listitem>
- <para>Demonstrations-Applets.</para>
- </listitem>
- </itemizedlist>
-
- <para>Achten Sie darauf, dass Sie bei der Bestellung
- angeben, dass Sie die &os;-Version von &motif;
- möchten (vergessen Sie auch nicht, die Architektur
- anzugeben)! Von <emphasis>Apps2go</emphasis> werden auch
- Versionen für NetBSD und OpenBSD verkauft. Dieses
- Produkt ist zurzeit nur zum Download per FTP
- verfügbar.</para>
-
- <variablelist>
- <varlistentry>
- <term>Weitere Informationen</term>
-
- <listitem>
- <para><ulink
- url="http://www.apps2go.com/">Apps2go Web-Seite</ulink></para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>oder</term>
-
- <listitem>
- <para><email>sales@apps2go.com</email> oder
- <email>support@apps2go.com</email></para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>oder</term>
-
- <listitem>
- <para>Telefon (817)&nbsp;431&nbsp;8775 oder
- +1&nbsp;817&nbsp;431-8775</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="cde">
- <para>Woher kann ich <application>CDE</application> für
- &os; bekommen?</para>
- </question>
-
- <answer>
- <para><emphasis>Xi Graphics</emphasis> hat einmal
- <application>CDE</application> für &os; verkauft,
- tut es aber nicht mehr.</para>
-
- <para><ulink
- url="http://www.kde.org/"><application>KDE</application></ulink>
- ist ein Open-Source X11-Desktop, der <application>CDE</application>
- in vielen Punkten ähnelt. Eventuell gefällt Ihnen auch
- das "Look and Feel" von <ulink
- url="http://www.xfce.org/"><application>xfce</application></ulink>.
- KDE und xfce sind über die <ulink
- url="&url.base;/de/ports/index.html">Ports-Sammlung</ulink>
- von &os; verfügbar.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="database-systems">
- <para>Gibt es irgendwelche Datenbanksysteme für
- &os;?</para>
- </question>
-
- <answer>
- <para>Ja! Lesen Sie den Abschnitt <ulink
- url="&url.base;/commercial/software_bycat.html#CATEGORY_DATABASE">
- kommerzielle Anbieter</ulink> auf der &os;-Web-Seite.</para>
-
- <para>Schauen Sie auch im Abschnitt <ulink
- url="&url.base;/de/ports/databases.html">Datenbanken</ulink>
- der Ports-Sammlung nach.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="oracle-support">
- <para>Kann ich &oracle; unter &os; laufen lassen?</para>
- </question>
-
- <answer>
- <para>Ja. Informationen zur Installation von
- &linux;-<application>&oracle;</application> unter &os;
- finden Sie unter <ulink
- url="http://www.shadowcom.net/freebsd-oracle9i/">http://www.shadowcom.net/freebsd-oracle9i/</ulink>.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="applications">
- <title>Benutzerprogramme</title>
-
- <qandaset>
- <qandaentry>
- <question id="user-apps">
- <para>Nun, wo sind die ganzen Benutzerprogramme?</para>
- </question>
-
- <answer>
- <para>Werfen Sie bitte einen Blick auf <ulink
- url="&url.base;/de/ports/index.html">die Ports-Seite</ulink>,
- um Informationen über die nach &os;
- portierten Softwarepakete zu erhalten. Die Liste
- enthält zurzeit &os.numports; Einträge und
- wächst täglich. Informieren Sie sich daher
- regelmäßig auf dieser Seite oder abonnieren
- Sie die Mailingliste &a.announce;, um sich über
- Änderungen zu informieren.</para>
-
- <para>Die meisten Ports sollten auf den &rel3.relx;, &rel2.relx;
- und &rel.relx;-Systemen laufen. Jedes Mal, wenn ein
- &os;-Release erstellt wird, wird auch ein Snapshot des Port-Baumes
- vom Zeitpunkt des Releases in das Verzeichnis <filename
- class="directory">ports/</filename> eingefügt.</para>
-
- <para>Wir unterstützen auch das Konzept von
- <quote>Packages</quote> - im Grunde genommen nicht mehr
- als komprimierte Binärdistributionen mit ein wenig
- zusätzlicher Intelligenz zur Ermöglichung
- angepasster Installationen. Ein Package kann leicht
- installiert und wieder deinstalliert werden, ohne,
- dass man etwas über wissen muss, welche
- Dateien es enthält.</para>
-
- <para>Benutzen Sie das <guimenuitem>Packages</guimenuitem> Menü
- in &man.sysinstall.8; (unter dem Menüpunkt
- <guimenuitem>post-configuration</guimenuitem>) oder führen Sie
- den Befehl &man.pkg.add.1; mit den speziellen
- Paketdateien aus, die Sie installieren möchten.
- Paketdateien können für gewöhnlich an der
- Endung <filename>.tgz</filename> oder
- <filename>.tbz</filename> erkannt werden und
- diejenigen, die über eine CD-ROM-Distribution
- verfügen, haben auf ihrer CD ein Verzeichnis <filename
- class="directory">packages/All</filename>, das solche Dateien
- enthält. Für verschiedene &os;-Versionen
- können sie von folgenden Adressen auch über das
- Netz heruntergeladen werden:</para>
-
- <variablelist>
- <varlistentry>
- <term>für &rel3.relx;-RELEASE/&rel3.stable;</term>
-
- <listitem>
- <para><ulink
- url="ftp://ftp.de.FreeBSD.org/pub/FreeBSD/ports/i386/&rel3.packages;/">
- ftp://ftp.de.FreeBSD.org/pub/FreeBSD/ports/i386/packages-6-stable</ulink></para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>für &rel2.relx;-RELEASE/&rel2.stable;</term>
-
- <listitem>
- <para><ulink
- url="ftp://ftp.de.FreeBSD.org/pub/FreeBSD/ports/i386/&rel2.packages;/">
- ftp://ftp.de.FreeBSD.org/pub/FreeBSD/ports/i386/packages-7-stable</ulink></para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>für &rel.relx;-RELEASE/&rel.stable;</term>
-
- <listitem>
- <para><ulink
- url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/&rel.packages;/">
- ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-8-stable</ulink></para>
- </listitem>
- </varlistentry>
- </variablelist>
-
- <para>oder von Ihrem nächstgelegenen Mirror.</para>
-
- <para>Beachten Sie, dass nicht alle Ports als Package
- verfügbar sind, da ständig neue hinzugefügt
- werden. Es ist immer eine gute Idee, sich
- regelmäßig auf der <ulink
- url="ftp://ftp.de.FreeBSD.org/pub/FreeBSD/">ftp.de.FreeBSD.org</ulink>
- Masterseite darüber zu informieren, welche Packages
- verfügbar sind.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="configure-inn">
- <para>Wie konfiguriere ich INN (Internet News) für
- meine Maschine?</para>
- </question>
-
- <answer>
- <para>Ein idealer Startpunkt nach der Installation des
- Packages oder Ports <filename
- role="package">news/inn</filename> ist <ulink
- url="http://www.eyrie.org/~eagle/faqs/inn.html">Dave Barr's
- INN-Seite</ulink>, wo Sie die INN-FAQ finden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="java">
- <para>Unterstützt &os; &java;?</para>
- </question>
-
- <answer>
- <para>Ja. Informieren Sie sich bitte unter <ulink
- url="&url.base;/de/java/">http://www.de.FreeBSD.org/java/</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ports-4x">
- <para>Warum kann ich manche Ports auf meiner
- &rel3.relx;, &rel2.relx; oder
- &rel.relx;-STABLE-Maschine nicht erstellen?</para>
- </question>
-
- <answer>
- <para>Wenn Sie eine &os;-Version benutzen, die deutlich
- älter als das aktuelle <emphasis>-CURRENT</emphasis>
- oder <emphasis>-STABLE</emphasis> ist, könnte es sein,
- dass Sie vorher Ihre Ports-Sammlung
- aktualisieren müssen. Lesen Sie dazu den Abschnitt
- <ulink
- url="&url.books.porters-handbook.en;/keeping-up.html">
- Keeping Up</ulink> des Porters-Handbuch. Ist Ihre
- Ports-Sammlung aktuell, könnte es sein, dass jemand
- eine Änderung am Port durchgeführt hat, die
- für <emphasis>-CURRENT</emphasis> funktioniert, den Port
- für <emphasis>-STABLE</emphasis> aber unbrauchbar gemacht hat.
- Bitte senden Sie einen Fehlerbericht mit dem
- Befehl &man.send-pr.1;. Von der Ports-Sammlung
- wird nämlich erwartet, dass sie sowohl auf
- <emphasis>-CURRENT</emphasis> als auch auf
- <emphasis>-STABLE</emphasis> funktioniert.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="make-index">
- <para>Ich habe gerade versucht, <filename>INDEX</filename>
- mit <command>make <maketarget>index</maketarget></command> zu
- bauen, und es hat nicht geklappt. Woran liegt das?</para>
- </question>
-
- <answer>
- <para>Stellen Sie zuerst sicher, dass Ihre Ports-Sammlung
- aktuell ist. Fehler, die einen Bau von
- <filename>INDEX</filename> aus einer aktuellen Ports-Sammlung
- verhindern, sind sofort sichtbar und werden daher fast immer
- umgehend behoben.</para>
-
- <para>Ist Ihre Ports-Sammlung jedoch aktuell, haben Sie
- vielleicht ein anderes Problem.
- <command>make <maketarget>index</maketarget></command> hat einen
- Bug im Umgang mit unvollständigen Kopien der Ports-Sammlung.
- Es nimmt an, dass Sie über eine lokale Kopie aller Ports
- verfügen, von denen jeder lokale Port abhängt.
- Wenn Sie also beispielsweise eine Kopie von
- <filename>foo/bar</filename> auf Ihrem System haben, und
- <filename>foo/bar</filename> ist von
- <filename>baz/quux</filename> abhängig, dann muss auch
- eine Kopie von <filename>baz/quux</filename> auf Ihrem
- System vorhanden sein, sowie eine Kopie aller Ports, von
- denen <filename>baz/quux</filename> abhängt.
- Anderenfalls ist <command>make
- <maketarget>index</maketarget></command> aufgrund
- fehlender Informationen nicht in der Lage, den
- Abhängigkeitsbaum zu erzeugen.</para>
-
- <para>Dieses Problem tritt vor allem dann auf, wenn
- &os;-Benutzer &man.csup.1; (oder &man.csup.1;) verwenden, um die
- Ports-Sammlung zu aktualisieren und dabei verschiedene Kategorien
- durch die Datei <filename>refuse</filename> von der Aktualisierung
- ausschließen. Theoretisch ist es zwar möglich,
- Kategorien auszuschließen, in der Praxis gibt es aber
- zu viele Ports, die von Ports in anderen Kategorien
- abhängen. Wenn Sie also <filename>INDEX</filename>
- bauen wollen, <emphasis>müssen</emphasis> Sie über
- eine komplette Kopie der Ports-Sammlung verfügen.</para>
-
- <para>Es gibt seltene Fälle, in denen
- <filename>INDEX</filename> nicht gebaut werden kann, wenn
- bestimmte
- <makevar>WITH_<replaceable>*</replaceable></makevar> oder
- <makevar>WITHOUT_<replaceable>*</replaceable></makevar>
- Variablen in <filename>make.conf</filename> gesetzt sind.
- Wenn Sie dieses Problem haben, sollten Sie diese
- make-Variablen deaktivieren und <filename>INDEX</filename>
- erneut bauen, bevor Sie das Problem an &a.ports;
- melden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="cvsup-in-base">
- <para>Warum ist <application>CVSup</application> nicht im
- &os;-Basisquellbaum enthalten?</para>
- </question>
-
- <answer>
- <para>Das Basissystem von &os; soll <quote>selbstverwaltend</quote>
- sein. Es soll also möglich sein, das komplette Betriebssystem
- mit einer beschränkten Anzahl von Werkzeugen zu starten.
- Daher werden die zum Bau von &os; nötigen Werkzeuge mit
- dem Quelltext gekoppelt. Zu diesen Werkzeugen gehören
- ein C-Compiler (&man.gcc.1;), &man.make.1;, &man.awk.1; und
- andere.</para>
-
- <para>Da <application>CVSup</application> in Modula-3 geschrieben
- wurde, müsste ein Modula-3-Compiler ins Basissystem
- aufgenommen und auch gewartet werden. Dies würde einen
- gestiegenen Speicherbedarf für die &os;-Quellen sowie
- einen erhöhten Wartungsaufwand verursachen. Daher ist es
- sowohl für Entwickler als auch Benutzer einfacher,
- CVSup bei Bedarf als Port oder als Paket von einer
- Installations-CD zu installieren.</para>
-
- <para>Wie dem auch sei, &os;-Benutzer müssen seit
- &os;&nbsp;6.2-RELEASE nicht mehr ohne einen kompatiblen
- <application>CVSup</application>-Client auskommen. Dank &a.mux;
- wurde <application>CVSup</application> als &man.csup.1; in C neu
- geschrieben und ist mittlerweile Teil des Basissystems. Obwohl zur
- Zeit noch nicht alle Eigenschaften von
- <application>CVSup</application> implementiert sind, ist es gut
- genug (und sehr schnell!) darin, ihre Quellen zu synchronisieren.
- Für &os;-Systeme vor 6.2 kann es als Port oder Paket
- (siehe <filename
- role="package">net/csup</filename>) installiert werden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ports-update">
- <para>Ich habe die Sourcen aktualisiert, wie aktualisiere
- ich jetzt die installierten Ports?</para>
- </question>
-
- <answer>
- <para>&os; enthält zwar kein Programm, das die
- installierten Ports aktualisiert, allerdings existieren
- diverse Programme, die diesen Prozess etwas
- vereinfachen. Weiterhin können Sie zusätzliche
- Programme installieren, die Sie dabei
- unterstützen, siehe <ulink
- url="&url.books.handbook;/ports-using.html">Ports
- aktualisieren</ulink> im &os; Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ports-major-upgrade">
- <para>Muss ich nach der Aktualisierung einer &os;-Hauptversionsnummer
- jedes Mal alle Ports neu erstellen lassen?</para>
- </question>
-
- <answer>
- <para>Auf jeden Fall! Während ein aktuelles System mit Software
- für eine ältere Version funktionieren wird, werden Sie
- mit zufälligen Abstürzen und nicht funktionierenden Ports
- zurückbleiben, sobald Sie anfangen, andere Ports zu
- installieren oder diejenigen, die Sie bereits haben, aktualisieren
- möchten.</para>
-
- <para>Wenn das System aktualisiert wird, werden verschiedene
- Shared-Libraries, ladbare Module und andere Systembestandteile
- mit neueren Versionen ersetzt. Anwendungen, die gegen die älteren Versionen gelinkt sind, werden nicht starten oder in anderen
- Fällen nicht korrekt funktionieren.</para>
-
- <para>Für weitere Informationen, lesen Sie <ulink
- url="&url.books.handbook;/updating-upgrading-freebsdupdate.html#FREEBSDUPDATE-UPGRADE">den Abschnitt über
- Betriebssystemupgrades</ulink> im &os; Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ports-minor-upgrade">
- <para>Muss ich nach der Aktualisierung einer &os;-Unterversionsnummer
- jedes Mal alle Ports neu erstellen lassen?</para>
- </question>
-
- <answer>
- <para>Generell nicht. Die &os;-Entwickler tun ihr möglichstes,
- um die Binärkompatibilität über alle
- Veröffentlichungen mit der gleichen Hauptversionsnummer zu
- garantieren. Ausnahmen werden in den Release Notes dokumentiert
- und die darin enthaltenen Hinweise sollten befolgt werden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="minimal-sh">
- <para>Warum ist <command>/bin/sh</command> so spartanisch?
- Warum benutzt &os; nicht die <command>bash</command>
- oder eine ähnliche Shell?</para>
- </question>
-
- <answer>
- <para>Weil der &posix;-Standard definiert, dass es so
- eine Shell geben muss.</para>
-
- <para>Die ausführlichere Antwort: Viele Leute
- müssen Shell-Programme schreiben, die auf vielen
- verschiedenen Systemen nutzbar sein müssen. Aus
- diesem Grund enthält der &posix;-Standard eine sehr
- detaillierte Definition der Shell und der Hilfsprogramme.
- Die meisten Programme werden für die Bourne Shell
- geschrieben; außerdem nutzen mehrere wichtige
- Schnittstellen (&man.make.1;, &man.system.3;,
- &man.popen.3; und ihre Entsprechungen in höheren
- Programmiersprachen wie Perl und Tcl) die Bourne Shell, um
- Befehle auszuführen. Da die Bourne Shell an so
- vielen Stellen und so häufig genutzt wird, muss
- sie die folgenden Anforderungen erfüllen: Schneller
- Start, ein klar definiertes Verhalten und ein
- möglichst geringer Speicherverbrauch.</para>
-
- <para>Wir haben bei der vorliegenden Implementierung
- versucht, möglichst viele dieser Anforderungen zu
- erfüllen. Um <command>/bin/sh</command> nicht zu
- groß werden zu lassen, haben wir viele der
- Annehmlichkeiten der anderen Shells weggelassen. Aus
- diesem Grund gibt es in den Ports die luxuriöseren
- Shells wie <command>bash</command>, <command>scsh</command>,
- <command>tcsh</command> und <command>zsh</command>. Vergleichen Sie
- einfach mal den Speicherverbrauch der verschiedenen
- Shells, indem Sie <command>ps <option>-u</option></command> aufrufen
- und sich die Angaben in den Spalten <quote>VSZ</quote> und
- <quote>RSS</quote> ansehen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="netscape-slow-startup">
- <para>Wieso dauert es so lange, bis &netscape; und Opera
- starten?</para>
- </question>
-
- <answer>
- <para>In den meisten Fällen liegt es daran, dass
- Ihre DNS-Einstellungen fehlerhaft sind. Sowohl
- <application>&netscape;</application> als auch
- <application>Opera</application> stellen Anfragen an DNS,
- wenn Sie gestartet werden. Das Fenster des Browsers erscheint
- erst, wenn das Programm eine Antwort erhalten hat oder es
- festgestellt hat, dass Ihr System nicht an ein Netzwerk
- angeschlossen ist.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ports-base-update">
- <para>Ich habe die Ports-Sammlung mit
- <application>CVSup</application> aktualisiert. Viele
- Ports lassen sich danach nicht mehr bauen und geben
- seltsame Fehlermeldungen aus. Was ist passiert? Ist
- die Ports-Sammlung kaputt?</para>
- </question>
-
- <answer>
- <para>Sie sollten <emphasis>immer</emphasis> die Teilsammlung
- <literal>ports-base</literal> aktualisieren, wenn Sie
- nur Teile der Ports-Sammlung mit Hilfe der
- <application>CVSup</application>-Teilsammlungen
- aktualisieren. Die Erklärung dazu finden Sie im <ulink
- url="&url.books.handbook;/cvsup.html#CVSUP-COLLEC-PBASE-WARN">Handbuch</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="midi-sound-files">
- <para>Wie erzeuge ich Audio-CDs aus MIDI-Dateien?</para>
- </question>
-
- <answer>
- <para>Installieren Sie zuerst den Port <filename
- role="package">audio/timidity++</filename>. Danach müssen Sie
- manuell die GUS-Patche von Eric&nbsp;A.&nbsp;Welsh von <ulink
- url="http://alleg.sourceforge.net/digmid.html"></ulink>
- installieren. Wenn <application>TiMidity++</application>
- richtig installiert wurde, können Sie mit dem folgenden
- Kommando MIDI-Dateien in das WAV-Format konvertieren:</para>
-
- <screen>&prompt.user; <userinput>timidity -Ow -s 44100 -o <replaceable>/tmp/juke/01.wav</replaceable> <replaceable>01.mid</replaceable></userinput></screen>
-
- <para>Die WAV-Dateien können dann in andere Formate
- konvertiert werden oder (wie im <ulink
- url="&url.books.handbook;/creating-cds.html">&os;-Handbuch</ulink>
- beschrieben) auf Audio-CDs gebrannt werden.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="kernelconfig">
- <title>Kernelkonfiguration</title>
-
- <qandaset>
- <qandaentry>
- <question id="make-kernel">
- <para>Ich möchte meinen Kernel anpassen. Ist das
- schwierig?</para>
- </question>
-
- <answer>
- <para>Überhaupt nicht! Lesen Sie den <ulink
- url="&url.books.handbook;/kernelconfig.html">Abschnitt zur
- Kernelkonfiguration im Handbuch</ulink>.</para>
-
- <note>
- <para>Der neue <filename>kernel</filename> wird zusammen mit seinen
- Modulen im Verzeichnis <filename
- class="directory">/boot/kernel</filename> installiert werden.
- Der alte Kernel und dessen Module wird in das Verzeichnis
- <filename class="directory">/boot/kernel.old</filename>
- verschoben, damit Sie, wenn Sie einen Fehler beim
- herumexperimentieren mit Ihrer Konfiguration gemacht haben, die
- vorherige Version Ihres Kernels starten können.</para>
- </note>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="missing-hw-float">
- <para>Was kann ich machen, wenn meine Kernel-Kompilierungen
- fehlschlagen, weil <literal>_hw_float</literal>
- fehlt?</para>
- </question>
-
- <answer>
- <para>Sie haben wahrscheinlich
- <devicename>npx0</devicename> aus Ihrer
- Kernelkonfigurationsdatei entfernt, weil Sie keinen
- mathematischen Co-Prozessor besitzen. Die Gerätedatei
- <devicename>npx0</devicename> ist allerdings
- <emphasis>VERPFLICHTEND</emphasis>. Ihre Hardware
- unterstützt Gleitkommaoperationen, selbst wenn dafür
- kein eigenes Bauteil (wie bei den 386er-Prozessoren) mehr
- verwendet wird. Daher <emphasis>müssen</emphasis> Sie
- die Gerätedatei <devicename>npx0</devicename> einbinden.
- Selbst wenn es Ihnen gelingen sollte, einen Kernel ohne
- <devicename>npx0</devicename>-Unterstützung zu bauen,
- werden Sie diesen nicht booten können.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="why-kernel-big">
- <para>Warum ist mein Kernel so groß (über 10&nbsp;MByte)?</para>
- </question>
-
- <answer>
- <para>Sie haben Ihren Kernel wahrscheinlich im
- <emphasis>Debug Modus</emphasis> erstellt. Ein
- Debug-Kernel enthält viele zusätzliche
- Informationen für die Fehlersuche, daher ist er so
- groß. Bitte beachten Sie, dass die Verwendung
- eines Debug-Kernels
- die Performance des Systems nicht oder nur minimal
- reduziert; außerdem ist es für den Fall einer
- system panic sehr praktisch, einen Debug-Kernel zur Hand
- zu haben.</para>
-
- <para>Wenn Ihnen allerdings der Plattenplatz ausgeht oder
- Sie einfach rein prinzipiell keinen Debug-Kernel benutzen
- wollen, müssen die beiden folgenden Bedingungen
- erfüllt sein:</para>
-
- <itemizedlist>
- <listitem>
- <para>Die Konfigurationsdatei für Ihren Kernel darf
- die folgende Zeile nicht enthalten:</para>
-
- <programlisting>makeoptions DEBUG=-g</programlisting>
- </listitem>
-
- <listitem>
- <para>Sie dürfen &man.config.8; nicht mit dem
- Parameter <option>-g</option> starten.</para>
- </listitem>
- </itemizedlist>
-
- <para>Sollten Sie sich nicht an diese Einschränkungen
- halten, wird Ihr Kernel im Debug-Modus erstellt. Solange
- Sie sich an diese Einschränkungen halten, können
- Sie Ihren Kernel ganz normal erstellen und die
- Größe des Kernels sollte deutlich sinken. Ein
- normaler Kernel ist nur 1.5&nbsp;MByte bis 2&nbsp;MByte
- groß.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="multiport-serial-interrupts">
- <para>Wieso erhalte ich Meldungen über Interrupt-Konflikte,
- wenn ich eine Karte mit mehreren seriellen Schnittstellen
- einsetzen will?</para>
- </question>
-
- <answer>
- <para>Wenn ich einen Kernel mit Unterstützung für
- serielle Multi-Port-Schnittstellen kompiliere, bekomme ich
- den Hinweis, dass nur der erste Port geprüft
- wird und die restlichen auf Grund von Interrupt-Konflikten
- übersprungen werden. Wie kann ich das
- Beheben?</para>
-
- <para>Das Problem besteht darin, dass in &os; Code
- integriert ist, um den Kernel vor Abstürzen aufgrund
- von Hardware- oder Software-Konflikten zu bewahren.
- Behoben wird es, indem die IRQ-Angaben für alle
- Ports, bis auf einen ausgelassen werden. Hier ist ein
- Beispiel:</para>
-
- <programlisting>
-#
-# Multiport high-speed serial line - 16550 UARTS
-#
-device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr
-device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr
-device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr
-device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr
- </programlisting>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="generic-kernel-build-failure">
- <para>Wieso kann ich nicht einmal den Standard-Kernel
- (<filename>GENERIC</filename>) bauen?</para>
- </question>
-
- <answer>
- <para>Es gibt eine Reihe von möglichen Ursachen
- für dieses Problem:</para>
-
- <itemizedlist>
- <listitem>
- <para>Sie benutzen die neuen Kommandos <command>make
- <maketarget>buildkernel</maketarget></command> und
- <command>make <maketarget>installkernel</maketarget></command>
- nicht, obwohl die Sourcen auf Ihrem System nicht zum laufenden
- System passen (z.B. benutzen Sie die Sourcen von
- &rel.current;-RELEASE auf einem System mit
- &rel2.current;-RELEASE). Wenn Sie ein Upgrade
- durchführen wollen, sollten Sie
- <filename>/usr/src/UPDATING</filename> lesen, beachten
- Sie insbesondere den Abschnitt <quote>COMMON
- ITEMS</quote> gegen Ende des Dokuments.</para>
- </listitem>
-
- <listitem>
- <para>Sie benutzen zwar <command>make
- <maketarget>buildkernel</maketarget></command> und
- <command>make <maketarget>installkernel</maketarget></command>,
- aber Sie haben nicht darauf geachtet, dass vorher ein
- komplettes <command>make
- <maketarget>buildworld</maketarget></command> durchgelaufen
- sein muss. Um seine Arbeit erledigen zu können,
- benötigt <command>make
- <maketarget>buildkernel</maketarget></command>
- Dateien, die von <command>make
- <maketarget>buildworld</maketarget></command>
- erzeugt werden.</para>
- </listitem>
-
- <listitem>
- <para>Auch wenn Sie <link
- linkend="stable">&os;-STABLE</link> verwenden, ist
- es durchaus möglich, dass Sie die Sourcen
- genau zum falschen Zeitpunkt aktualisiert haben:
- Während Sie gerade modifiziert wurden oder
- kurzzeitig fehlerhaft waren. Eine absolute und
- vollständige Garantie, dass Sie die Sourcen
- compilieren können, gibt es nur für die
- Releases, bei <link
- linkend="stable">&os;-STABLE</link> ist das nicht
- immer so. Wenn Sie es noch nicht versucht haben,
- sollten Sie ihre Source nochmals aktualisieren. Es
- ist denkbar, dass der von Ihnen genutzte Server
- zurzeit Probleme hat, benutzen Sie daher testweise
- auch einmal einen anderen Server.</para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="scheduler-in-use">
- <para>Wie kann ich prüfen, welchen Scheduler das
- System benutzt?</para>
- </question>
-
- <answer>
- <para>Überprüfen Sie dazu, ob auf Ihrem System die
- sysctl-Variable <varname>kern.sched.quantum</varname>
- existiert. Ist dies bei Ihnen der Fall, werden Sie eine
- Ausgabe ähnlich der folgenden sehen:</para>
-
- <screen>&prompt.user; sysctl <replaceable>kern.sched.quantum</replaceable>
-kern.sched.quantum: 99960</screen>
-
- <para>Wenn die sysctl-Variable <varname>kern.sched.quantum</varname>
- existiert, dann verwenden Sie den 4BSD-Scheduler
- (&man.sched.4bsd.4;). Existiert sie nicht, erzeugt &man.sysctl.8;
- eine Fehlermeldung (die Sie aber ignorieren können):</para>
-
- <screen>&prompt.user; sysctl <replaceable>kern.sched.quantum</replaceable>
-sysctl: unknown oid 'kern.sched.quantum'</screen>
-
- <para>Seit &os;&nbsp;5.3-RELEASE wird der Name des verwendeten
- Schedulers direkt als Wert der sysctl-Variable
- <literal>kern.sched.name</literal> ausgegeben:</para>
-
- <screen>&prompt.user; sysctl <replaceable>kern.sched.name</replaceable>
-kern.sched.name: 4BSD</screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="scheduler-kern-quantum">
- <para>Was bedeutet <varname>kern.sched.quantum</varname>?</para>
- </question>
-
- <answer>
- <para><varname>kern.sched.quantum</varname> ist die maximale
- Anzahl Ticks, die ein Prozess ununterbrochen laufen kann.
- Die Variable ist charakteristisch für den
- 4BSD&nbsp;Scheduler, somit kann der verwendete Scheduler
- über die Existenz dieser Variablen bestimmt werden.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="disks">
- <title>Platten, Dateisysteme und Boot Loader</title>
-
- <qandaset>
- <qandaentry>
- <question id="adding-disks">
- <para>Wie kann ich meine neue Festplatte in mein
- &os;-System einbinden?</para>
- </question>
-
- <answer>
- <para>Lesen Sie den Abschnitt <ulink
- url="&url.books.handbook;/disks-adding.html">Hinzufügen
- von Laufwerken</ulink> im Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="new-huge-disk">
- <para>Wie verschiebe ich mein System auf meine neue,
- große Platte?</para>
- </question>
-
- <answer>
- <para>Die beste Methode ist, das Betriebssystem auf der
- neuen Platte neu zu installieren und danach die Daten zu
- verschieben. Wenn Sie <emphasis>-STABLE</emphasis>
- über eine Release hinaus genutzt haben oder eine Release
- aktualisiert haben, ist das sehr empfehlenswert. Sie
- können auf beiden Platten &man.boot0cfg.8; installieren
- und die beiden Versionen so lange parallel betreiben, bis Ihnen
- die neue Konfiguration gefällt. Wenn Sie dies tun wollen,
- können Sie im übernächsten Absatz erfahren,
- wie sie Ihre Daten verschieben können.</para>
-
- <para>Falls Sie sich entscheiden, das nicht zu tun,
- müssen Sie Ihre neue Platte partitionieren und
- labeln. Benutzen Sie dafür entweder
- &man.sysinstall.8; oder &man.fdisk.8;
- und &man.disklabel.8;. Weiterhin sollten Sie mit
- &man.boot0cfg.8; auf beiden Platten booteasy installieren,
- damit Sie in der Lage sind, das alte und das neue System
- abwechselnd zu starten, nachdem der Kopiervorgang
- abgeschlossen ist.</para>
-
- <para>Nachdem Sie die neue Platte eingerichtet haben,
- können Sie Ihre Daten verschieben. Dummerweise
- können Sie die Daten nicht einfach kopieren. Dinge wie
- Gerätedateien (in <filename class="directory">/dev</filename>),
- erweiterte Dateiattribute und symbolische Links führen
- dazu, dass das in die Hose geht. Sie müssen
- ein Programm benutzen, das damit umgehen kann, und das
- ist &man.dump.8;. Es wird oft empfohlen, die Daten im
- Single-User-Modus zu verschieben, aber das ist nicht
- unbedingt notwendig.</para>
-
- <para>Sie sollten auf gar keinen Fall etwas anderes als
- &man.dump.8; und &man.restore.8; benutzen, um Ihr Root-Filesystem
- zu verschieben. Es könnte auch mit
- &man.tar.1; funktionieren - oder auch nicht. Sie sollten
- ebenfalls &man.dump.8; und &man.restore.8; benutzen, wenn
- Sie eine komplette Partition auf eine andere, leere
- Partition verschieben wollen. Um die Daten einer Partition mit
- <command>dump</command> auf eine andere Partition zu verschieben,
- müssen Sie die folgenden Schritte ausführen:</para>
-
- <procedure>
- <step>
- <para>Richten Sie in der neuen Partition mit
- <command>newfs</command> ein Dateisystem ein.</para>
- </step>
-
- <step>
- <para>Mounten Sie die Partition temporär an einer
- geeigneten Stelle.</para>
- </step>
-
- <step>
- <para>Wechseln Sie mit <command>cd</command> in dieses
- Verzeichnis.</para>
- </step>
-
- <step>
- <para>Lesen Sie die alte Partition mit <command>dump</command>
- aus und lenken Sie die Ausgabe auf die neue Partition um.</para>
- </step>
- </procedure>
-
- <para>Wenn Sie zum Beispiel <username>root</username> auf
- <devicename>/dev/<replaceable>ad1s1a</replaceable></devicename>
- verschieben wollen und diese derzeit auf <filename
- class="directory"><replaceable>/mnt</replaceable></filename>
- gemountet ist, bedeutet das:</para>
-
- <screen>&prompt.root; <userinput>newfs /dev/<replaceable>ad1s1a</replaceable></userinput>
-&prompt.root; <userinput>mount /dev/<replaceable>ad1s1a</replaceable> <replaceable>/mnt</replaceable></userinput>
-&prompt.root; <userinput>cd <replaceable>/mnt</replaceable></userinput>
-&prompt.root; <userinput>dump 0af - / | restore rf -</userinput></screen>
-
- <para>Wenn Sie Ihre Partitionen mit &man.dump.8;
- umorganisieren wollen, steht Ihnen etwas mehr Arbeit
- bevor. Wenn Sie eine Partition wie <filename
- class="directory">/var</filename> in die übergeordnete
- Partition verschieben wollen, müssen Sie zunächst eine
- neue Partition erzeugen, die die beiden alten Partitionen
- aufnehmen kann. Der zweite Schritt ist, wie oben
- beschrieben die übergeordnete Partition in die neue
- Partition zu verschieben. Im dritten und letzten Schritt
- verschieben Sie dann die untergeordnete Partition in das
- leere Verzeichnis, das im zweiten Schritt entstanden
- ist:</para>
-
- <screen>&prompt.root; <userinput>newfs /dev/<replaceable>ad1s1a</replaceable></userinput>
-&prompt.root; <userinput>mount /dev/<replaceable>ad1s1a</replaceable> <replaceable>/mnt</replaceable></userinput>
-&prompt.root; <userinput>cd <replaceable>/mnt</replaceable></userinput>
-&prompt.root; <userinput>dump 0af - / | restore rf -</userinput>
-&prompt.root; <userinput>cd var</userinput>
-&prompt.root; <userinput>dump 0af - /var | restore rf -</userinput></screen>
-
- <para>Wenn Sie ein Verzeichnis aus einer Partition
- herauslösen wollen, also z.B.
- <filename>/var</filename> auf eine eigene Partition
- verlegen wollen, dann müssen Sie zunächst beide
- Partitionen anlegen. Danach müssen Sie die
- untergeordnete Partition im passenden Verzeichnis
- unterhalb des temporären mount points mounten und zum
- Abschluß die alte Partition verschieben:</para>
-
- <screen>&prompt.root; <userinput>newfs /dev/<replaceable>ad1s1a</replaceable></userinput>
-&prompt.root; <userinput>newfs /dev/<replaceable>ad1s1d</replaceable></userinput>
-&prompt.root; <userinput>mount /dev/<replaceable>ad1s1a</replaceable> <replaceable>/mnt</replaceable></userinput>
-&prompt.root; <userinput>mkdir <replaceable>/mnt</replaceable>/var</userinput>
-&prompt.root; <userinput>mount /dev/<replaceable>ad1s1d</replaceable> <replaceable>/mnt</replaceable>/var</userinput>
-&prompt.root; <userinput>cd <replaceable>/mnt</replaceable></userinput>
-&prompt.root; <userinput>dump 0af - / | restore rf -</userinput></screen>
-
- <para>Eventuell sagen Ihnen für Benutzerdaten
- &man.cpio.1;, &man.pax.1; oder &man.tar.1; eher zu als
- &man.dump.8;. Allerdings haben alle diese Programme den
- Nachteil, dass sie die erweiterten Dateiattribute
- nicht verstehen, daher sollten Sie bei ihrem Einsatz
- aufpassen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="dangerously-dedicated">
- <para>Gefährdet eine <quote>dangerously
- dedicated</quote> Festplatte meine Gesundheit?</para>
- </question>
-
- <answer>
- <para><anchor id="dedicate"/>Die Installationsprozedur bietet
- Ihnen zwei verschiedene Methoden, Ihre Festplatte(n) zu
- partitionieren. Die Standardmethode macht sie kompatibel
- zu anderen Betriebssystemen auf derselben Maschine, indem
- &man.fdisk.8;-Tabelleneinträge (unter &os;
- <quote>slices</quote> genannt) mit einem &os;-Eintrag,
- in dem eigene Partitionen untergebracht werden, benutzt
- werden. Optional kann ausgewählt werden, ob ein
- Boot-Selektor installiert werden soll, um zwischen den
- möglichen Betriebssystemen auf der/den Platte(n)
- wechseln zu können. Bei der zweiten Methode wird die
- gesamte Platte für &os; genutzt und nicht
- versucht, kompatibel zu anderen Betriebssystemen zu
- sein.</para>
-
- <para>Nun, warum wird es <quote>gefährlich</quote>
- genannt? Eine Platte in diesem Modus enthält nichts,
- was von normalen PC-Hilfsprogrammen als gültige
- &man.fdisk.8;-Tabelle betrachtet werden würde.
- Abhängig von der Qualität ihres Designs werden sie
- sich bei Ihnen beschweren, sobald sie mit einer solchen Platte
- in Kontakt kommen, oder noch schlimmer, sie könnten den
- Bootstrap von &os; beschädigen, ohne Sie zu fragen
- oder darauf hinzuweisen. Hinzu kommt, dass vom
- Layout von <quote>dangerously dedicated</quote> Platten
- bekannt ist, dass es viele BIOSe verwirrt,
- einschließlich solcher von AWARD (wie es z.B. im HP
- Netserver oder Micronics-Systemen, sowie vielen anderen zu
- finden ist) und Symbios/NCR (für die bekannte
- 53C8xx-Reihe von SCSI-Controllern). Dies ist keine
- vollständige Liste - es gibt weitere. Symptome
- für diese Verwirrung sind <errorname>read
- error</errorname>-Meldungen, die vom &os;-Bootstrap
- ausgegeben werden, wenn es sich selbst nicht finden kann,
- sowie Systemabstürze beim Booten.</para>
-
- <para>Warum gibt es diesen Modus dann überhaupt? Es
- spart ein paar kByte an Plattenplatz und kann echte
- Probleme verursachen, die zu einer Neuinstallation
- führen. Die Ursprünge des <quote>Dangerously
- dedicated</quote> Modus liegen in der Absicht, eines der
- häufigsten Probleme, das Erstinstallierer von &os;
- plagt, zu verhindern - die BIOS-Werte für die
- <quote>Geometrie</quote> einer Festplatte auf der
- Festplatte selbst anzupassen.</para>
-
- <para><quote>Geometrie</quote> ist ein veraltetes Konzept,
- das aber immer noch die Grundlage für die Interaktion
- zwischen dem PC-BIOS und den Festplatten ist. Wenn das
- Installationsprogramm von &os; Slices erstellt,
- muss es sich die Lage dieser Slices auf der
- Festplatte in einer Art merken, die damit
- übereinstimmt, wie das BIOS erwartet, sie zu finden.
- Wenn das falsch geschieht, werden Sie nicht in der Lage
- sein, zu booten.</para>
-
- <para>Durch den <quote>Dangerously dedicated</quote> Modus
- wird versucht, dies zu umgehen, indem das Problem
- vereinfacht wird. In einigen Fällen klappt das zwar,
- aber er ist eher als allerletzter Ausweg gedacht - in 99
- von 100 Fällen gibt es bessere Möglichkeiten,
- das Problem zu lösen.</para>
-
- <para>Wie vermeiden Sie also die Notwendigkeit zum
- <quote>DD</quote> Modus, wenn Sie installieren? Beginnen
- Sie, indem Sie sich notieren, welche Geometrie das BIOS
- für Ihre Platten benutzt. Sie können erreichen,
- dass der Kernel sie beim Booten ausgibt, indem Sie
- <option>-v</option> an der Eingabeaufforderung
- <literal>boot:</literal> angeben, oder <command>boot
- -v</command> im Loader verwenden. Kurz bevor das
- Installationsprogramm startet, wird der Kernel eine Liste
- mit den BIOS-Geometrien ausgeben. Keine Panik - warten
- Sie, bis das Installationsprogramm gestartet wurde und
- benutzen Sie Scrollback, um die Zahlen zu lesen.
- Typischerweise befinden sich die BIOS-Platten in derselben
- Reihenfolge, wie &os; Ihre Platten auflistet - zuerst
- IDE, dann SCSI.</para>
-
- <para>Wenn Sie Ihre Festplatte in Slices unterteilen,
- überprüfen Sie, ob die Plattengeometrie, die im
- FDISK-Menü angegeben ist, korrekt ist (das heißt
- mit den Einstellungen im BIOS übereinstimmen). Falls
- die Werte nicht stimmen, benutzen Sie <keycap>G</keycap>, um
- sie zu korrigieren. Diese Schritte sind nötig, wenn
- sich absolut nichts auf der Festplatte befindet, oder,
- wenn die Festplatte vorher in einem anderen System benutzt
- worden ist. Beachten Sie, dass dies nur für die
- Festplatte nötig ist, von der Sie booten wollen. Mit
- weiteren vorhandenen Platten wird &os; sich problemlos
- zurechtfinden.</para>
-
- <para>Wenn Sie es geschafft haben, dass das BIOS und
- &os; in der Festplattengeometrie übereinstimmen,
- dann sind Ihre Probleme ziemlich sicher vorüber -
- ohne, dass es nötig gewesen wäre, den
- <quote>DD</quote>-Modus zu benutzen. Falls sie jedoch
- immer noch mit der gefürchteten <errorname>read
- error</errorname>-Meldung begrüßt werden sollten,
- wenn Sie versuchen, zu booten, wird es Zeit, dass Sie
- Ihre Finger kreuzen und es einfach versuchen - es gibt
- nichts mehr zu verlieren.</para>
-
- <para>Um eine <quote>dangerously dedicated</quote>
- Festplatte wieder für einen normalen PC brauchbar zu
- machen, gibt es zwei Möglichkeiten. Die erste ist,
- ausreichend viele NULL-Bytes in den MBR zu schreiben, um
- irgendwelche nachfolgenden Installation glauben zu machen,
- dass es sich um eine leere Festplatte handelt. Sie
- können das zum Beispiel mit diesem Befehl tun:</para>
-
- <screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/<replaceable>rda0</replaceable> count=15</userinput></screen>
-
- <para>Alternativ installiert der undokumentierte
- DOS-Befehl</para>
-
- <screen><prompt>C:\&gt;</prompt> <userinput>fdisk /mbr</userinput></screen>
-
- <para>einen neuen Master-Boot-Record, das heißt der
- BSD-Bootstrap wird zerstört.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="safe-softupdates">
- <para>Auf welchen Partitionen kann ich problemlos
- Soft Updates einsetzen? Ich habe gehört, das der
- Einsatz von Soft Updates auf <filename
- class="directory">/</filename> Probleme verursachen kann.</para>
- </question>
-
- <answer>
- <para>Die schnelle Antwort: Sie können Soft Updates
- bedenkenlos auf alle Partitionen benutzen.</para>
-
- <para>Die ausführliche Antwort: Es gab lange Zeit
- Bedenken, was den Einsatz von Soft Updates auf der
- root-Partition betrifft. Der Grund sind zwei
- Charakteristika der Soft Updates: Zum einen kann es bei
- einem Absturz des System auf einer Partition mit
- Soft Updates zum Datenverlust kommen. Die Partition ist
- zwar noch brauchbar, aber einige Daten können
- verloren gehen. Weiterhin kann es durch Soft Updates zu
- einem zeitweisen Mangel an Plattenplatz kommen.</para>
-
- <para>Bei der Benutzung von Soft Updates kann es bis zu
- dreißig Sekunden dauern, bis der Kernel
- Änderungen auf das physikalische Speichermedium
- schreibt. Wenn Sie eine große Datei löschen,
- ist diese Datei noch auf der Platte vorhanden, bis der
- Kernel die Löschoperation tatsächlich
- durchführt. Das kann zu einem sehr einfachen Problem
- führen: Stellen Sie sich vor, Sie löschen eine
- große Datei und legen gleich darauf eine andere
- große Datei an. Da die erste Datei noch nicht
- wirklich gelöscht wurde, ist eventuell nicht genug
- Platz für die zweite große Datei. Sie erhalten
- die Fehlermeldung, dass nicht genug freier Platz
- vorhanden ist, obwohl Sie ganz genau wissen, dass Sie
- gerade eben Platz geschaffen haben. Wenn Sie die
- Operation ein paar Sekunden später wiederholen,
- funktioniert alles wie von Geisterhand. Dieser Effekt hat
- mehr als einen Benutzer verwirrt und Zweifel an seiner
- geistigen Stabilität oder dem &os;-Dateisystem
- aufkommen lassen.</para>
-
- <para>Wenn der Kernel ein Datenpaket annimmt und das System
- abstürzt, bevor er dies Daten auf die Platte
- geschrieben hat, kann es zum Verlust oder zur
- Zerstörung von Daten kommen. Dieses Risiko ist nur
- sehr gering und normalerweise tragbar. Wenn Sie
- allerdings einen IDE-Write-Cache verwenden, steigt das
- Risiko; daher wird normalerweise empfohlen, auf den
- Einsatz dieser Technik zu verzichten, wenn Sie Soft Updates
- benutzen.</para>
-
- <para>Diese beiden Probleme betreffen alle Partitionen, die
- Soft Updates verwenden. Was bedeutet das für die
- Root-Partition?</para>
-
- <para>Die wichtigen Daten auf der Root-Partition ändern
- sich nur sehr selten. Dateien wie
- <filename>/boot/kernel/kernel</filename> und der Inhalt <filename
- class="directory">/etc</filename> werden nur bei der Wartung des
- Systems geändert, oder wenn Benutzer ihre
- Passwörter ändern. Wenn das System in den
- 30 Sekunden nach einer solchen Änderung
- abstürzt, ist es möglich, das Daten verloren
- gehen. Dieses Risiko ist in den meisten Fällen
- unerheblich, aber es ist vorhanden. Wenn das zu viel
- Risiko ist, dann sollten Sie Soft Updates nicht auf der
- Root-Partition einsetzen.</para>
-
- <para><filename class="directory">/</filename> war schon immer eine
- der kleinsten Partitionen. Wenn Sie das Verzeichnis
- <filename class="directory">/tmp</filename> direkt auf
- <filename class="directory">/</filename> und in Ihrem
- <filename class="directory">/tmp</filename> viel Betrieb ist, kann
- es gelegentlich zu den oben beschriebenen Platzproblemen
- kommen. Um das Problem zu lösen, sollten sie einen
- symbolischen Link von <filename class="directory">/tmp</filename>
- nach <filename class="directory">/var/tmp</filename> legen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="inappropriate-ccd">
- <para>Was stimmt mit meinem &man.ccd.4; nicht?</para>
- </question>
-
- <answer>
- <para>Das Symptom hierfür ist:</para>
-
- <screen>&prompt.root; <userinput>ccdconfig -C</userinput>
-ccdconfig: ioctl (CCDIOCSET): /dev/<replaceable>ccd0c</replaceable>: Inappropriate file type or format</screen>
-
- <para>Das geschieht für gewöhnlich, wenn Sie
- versuchen, die <literal>c</literal> Partitionen, die
- standardmäßig vom Typ
- <literal>unbenutzt</literal> sind, zu verbinden. Der
- &man.ccd.4;-Treiber verlangt Partitionen vom Typ
- <literal>FS_BSDFFS</literal>. Editieren Sie den
- Plattenlabel der Platten, die Sie zu
- verknüpfen versuchen und ändern Sie die Typen
- der Partitionen in <literal>4.2BSD</literal>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ccd-disk-label">
- <para>Warum kann ich den Plattenlabel meines &man.ccd.4; nicht
- editieren?</para>
- </question>
-
- <answer>
- <para>Das Symptom hierfür ist:</para>
-
- <screen>&prompt.root; <userinput>disklabel <replaceable>ccd0</replaceable></userinput>
-(hier wird etwas vernünftiges ausgegeben; versuchen wir nun, es zu editieren)
-&prompt.root; <userinput>disklabel -e <replaceable>ccd0</replaceable></userinput>
-(editieren, speichern, beenden)
-disklabel: ioctl DIOCWDINFO: No disk label on disk;
-use "disklabel -r" to install initial label</screen>
-
- <para>Der Grund ist, dass der von &man.ccd.4;
- zurückgelieferte Plattenlabel ein
- <quote>vorgetäuschter</quote> ist, der sich nicht
- wirklich auf der Platte befindet. Sie können das
- Problem beheben, indem Sie ihn explizit
- zurückschreiben, wie z.B. hier:</para>
-
- <screen>&prompt.root; <userinput>disklabel <replaceable>ccd0</replaceable> &gt; <replaceable>/tmp/disklabel.tmp</replaceable></userinput>
-&prompt.root; <userinput>disklabel -Rr <replaceable>ccd0</replaceable> <replaceable>/tmp/disklabel.tmp</replaceable></userinput>
-&prompt.root; <userinput>disklabel -e <replaceable>ccd0</replaceable></userinput>
-(nun wird es funktionieren)</screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="mount-foreign-fs">
- <para>Kann ich andere fremde Dateisysteme unter &os;
- mounten?</para>
- </question>
-
- <answer>
- <para>&os; unterstützt verschiedene fremde
- Dateisysteme.</para>
-
- <variablelist>
- <varlistentry>
- <term>UFS</term>
-
- <listitem>
- <para>UFS-CD-ROMs können unter &os; direkt
- gemountet werden. Das Mounten von Partitionen von
- Digital &unix; und anderen Systemen, die UFS
- unterstützen, könnte schwieriger sein,
- abhängig von den Details der
- Plattenpartitionierung des betreffenden
- Betriebssystems.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>ext2/ext3</term>
-
- <listitem>
- <para>&os; unterstützt
- <literal>ext2fs</literal> und
- <literal>ext3fs</literal>-Partitionen. Unter
- &man.mount.ext2fs.8; finden Sie weitere
- Informationen.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>NTFS</term>
-
- <listitem>
- <para>Ein NTFS-Treiber, der nur Lesezugriffe gestattet,
- ist Teil von &os;. Weitere Informationen entnehmen
- Sie bitte der Hilfeseite &man.mount.ntfs.8;. Ein Port von
- <ulink
- url="http://www.tuxera.com/community/"><application>ntfs-3g</application></ulink>
- unterstützt Schreiboperationen auf NTFS (siehe <filename
- role="package">sysutils/fusefs-ntfs</filename>).</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>FAT</term>
-
- <listitem>
- <para>&os; enthält ein FAT-Treiber, der Lese-
- und Schreibzugriffe ermöglicht. Weitere
- Informationen entnehmen Sie bitte der Hilfeseite
- &man.mount.msdosfs.8;.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>ZFS</term>
-
- <listitem>
- <para>Zum jetzigen Zeitpunkt enthält &os; eine
- Portierung von &sun;s ZFS Treiber. Die aktuelle Empfehlung
- ist, es nur auf &arch.amd64; Plattformen mit ausreichend
- Hauptspeicher zu verwenden. Mehr Informationen
- finden Sie in der Manualpage &man.zfs.8;.</para>
- </listitem>
- </varlistentry>
- </variablelist>
-
- <para>&os; unterstützt auch verschiedene
- Netzwerk-Dateisysteme, wie NFS (&man.mount.nfs.8;), NetWare
- (&man.mount.nwfs.8;), sowie die SMB-Dateisysteme von
- Microsoft (&man.mount.smbfs.8;). In Ports die auf FUSE
- (<filename
- role="package">sysutils/fusefs-kmod</filename>) basieren,
- können Sie viele weitere Dateisysteme finden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="mount-dos">
- <para>Wie mounte ich eine erweiterte DOS-Partition?</para>
- </question>
-
- <answer>
- <para>Die erweiterten DOS-Partitionen befinden sich hinter
- <emphasis>allen</emphasis> primären Partitionen. Wenn sich
- zum Beispiel eine Partition <quote>E</quote> als sekundäre
- DOS-Partition auf Ihrem zweiten SCSI-Laufwerk befindet,
- wird eine Gerätedatei für
- <quote>Slice 5</quote> im Verzeichnis <filename
- class="directory">/dev</filename> erstellt, also mounten Sie diese
- einfach:</para>
-
- <screen>&prompt.root; <userinput>mount -t msdosfs /dev/da1s5 /dos/e</userinput></screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="crypto-file-system">
- <para>Gibt es ein verschlüsselndes Dateisystem
- für &os;?</para>
- </question>
-
- <answer>
- <para>Ja. Sie können entweder &man.gbde.8; oder &man.geli.8;
- einsetzen. Lesen Sie dazu auch den Abschnitt
- <ulink
- url="&url.books.handbook;/disks-encrypting.html">Partitionen
- verschlüsseln</ulink> des Handbuchs.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="nt-bootloader">
- <para>Wie kann ich den &windowsnt;-Loader zum Booten von
- &os; verwenden?</para>
- </question>
-
- <answer>
- <para>Das grundsätzliche Vorgehen besteht darin,
- dass Sie den ersten Sektor Ihrer eigentlichen
- &os;-Rootpartition in eine Datei auf der
- DOS/&windowsnt;-Partition kopieren. Angenommen, sie nennen
- die Datei etwa <filename>c:\bootsect.bsd</filename> (durch
- <filename>c:\bootsect.dos</filename> inspiriert), dann
- können Sie die Datei <filename>c:\boot.ini</filename>
- etwa wie folgt editieren:</para>
-
- <programlisting>
-[boot loader]
-timeout=30
-default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
-[operating systems]
-multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT"
-C:\BOOTSECT.BSD="&os;"
-C:\="DOS"
- </programlisting>
-
- <para>Falls &os; auf derselben Platte, wie die
- &windowsnt;-Bootpartition installiert ist, kopieren Sie
- einfach <filename>/boot/boot1</filename> nach
- <filename>C:\BOOTSECT.BSD</filename>. Falls &os; auf
- einer anderen Platte installiert ist, wird
- <filename>/boot/boot1</filename> nicht funktionieren; Sie
- brauchen in diesem Fall
- <filename>/boot/boot0</filename>.</para>
-
- <para><filename>/boot/boot0</filename> muss mit
- &man.sysinstall.8; installiert werden. Wählen Sie dazu den
- &os;-Bootmanager aus, wenn Sie gefragt werden, ob sie
- einen Bootmanager installieren wollen. Dieser Schritt ist
- notwendig, weil <filename>/boot/boot0</filename> eine
- leere Partitionstabelle enthält, die von &man.sysinstall.8;
- mit NULL-Zeichen ausgefüllt wird, bevor
- <filename>/boot/boot0</filename> in den MBR kopiert
- wird.</para>
-
- <warning>
- <para><emphasis>Sie dürfen auf gar keinen Fall einfach
- <filename>/boot/boot0</filename> statt
- <filename>/boot/boot1</filename> kopieren. Wenn Sie das
- doch tun sollten, wird Ihre Partitionstabelle
- überschrieben und Ihr Rechner wird nicht mehr
- starten!</emphasis></para>
- </warning>
-
- <para>Wenn der Bootmanager von &os; gestartet wird, merkt
- er sich das zuletzt gestartet Betriebssystem, indem er
- dessen Partition als aktiv markiert. Danach kopiert er
- sich selbst (alle 512 Bytes) in den MBR. Wenn Sie also
- einfach <filename>/boot/boot0</filename> nach
- <filename>C:\BOOTSECT.BSD</filename> kopieren, würde
- der Bootmanager eine leere Partitionstabelle (mit einem
- als aktiv markiertem Eintrag) in den MBR kopieren.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="lilo-bootloader">
- <para>Wie boote ich &os; und &linux; mit LILO?</para>
- </question>
-
- <answer>
- <para>Falls sich &os; und &linux; auf derselben Platte
- befinden, folgen Sie einfach den Installationsanweisungen
- von LILO zum Booten eines Nicht-&linux;-Betriebssystems.
- Ganz knapp sind dies:</para>
-
- <para>Booten Sie &linux; und fügen Sie die folgenden
- Zeilen in die Datei <filename>/etc/lilo.conf</filename>
- ein:</para>
-
- <programlisting>other=/dev/hda2
-table=/dev/hda
-label=&os;</programlisting>
-
- <para>(hierbei wird angenommen, dass Ihre
- &os;-Partition &linux; unter
- <devicename>/dev/hda2</devicename> bekannt ist; ändern
- Sie dies entsprechend Ihren Einstellungen). Führen
- Sie nun als <username>root</username> den Befehl
- <command>lilo</command> aus und Sie sind fertig.</para>
-
- <para>Falls &os; sich auf einer anderen Platte befindet,
- müssen Sie <literal>loader=/boot/chain.b</literal> zu
- den LILO-Angaben hinzufügen. Zum Beispiel:</para>
-
- <programlisting>other=/dev/dab4
-table=/dev/dab
-loader=/boot/chain.b
-label=&os;</programlisting>
-
- <para>In einigen Fällen könnte es sein, dass
- Sie beim &os;-Bootloader die BIOS-Laufwerksnummer
- angeben müssen, um von der zweiten Platte booten zu
- können. Wenn Ihre &os;-SCSI-Platte vom BIOS zum
- Beispiel als BIOS-Platte 1 erkannt wird, müssen Sie
- am Prompt des &os;-Bootloaders eingeben:</para>
-
- <screen>Boot: <userinput>1:da(0,a)/boot/kernel/kernel</userinput></screen>
-
- <para>Sie können &man.boot.8; so
- konfigurieren, dass das beim Booten automatisch
- geschieht.</para>
-
- <para>Das <ulink
- url="http://tldp.org/HOWTO/mini/Linux+FreeBSD.html">
- &linux;+FreeBSD mini-HOWTO</ulink> ist ein guter Ratgeber bei
- Fragen zur Interaktion von &os; und &linux;.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="grub-loader">
- <para>Wie boote ich &os; und &linux; mit GRUB?</para>
- </question>
-
- <answer>
- <para>Es ist sehr einfach, GRUB zum Starten von &os;
- einzusetzen. Dazu müssen Sie lediglich die folgenden
- Zeilen in die Konfigurationsdatei
- <filename>/boot/grub/menu.lst</filename> (oder
- <filename>/boot/grub/grub.conf</filename> bei manchen Systemen wie
- z.B. Red Hat Linux und dessen Abkömmlinge) aufnehmen.</para>
-
- <programlisting>title &os; 6.1
- root <replaceable>(hd0,a)</replaceable>
- kernel /boot/loader
- </programlisting>
-
- <para>Dabei steht <replaceable>hd0,a</replaceable> für die
- root-Partition Ihrer ersten Festplatte. Benötigen
- Sie auch die Slice-Nummer, so verwenden Sie einen Eintrag
- der Form <replaceable>(hd0,2,a)</replaceable>. In der
- Voreinstellung ist die Angabe der Slice-Nummer aber nicht
- nötig, da GRUB automatisch das erste Slice (das die
- Bezeichnung <literal>a</literal> hat) nutzt.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="booteasy-loader">
- <para>Wie boote ich &os; und &linux; mit
- <application>BootEasy?</application></para>
- </question>
-
- <answer>
- <para>Installieren Sie LILO am Anfang Ihrer
- &linux;-Bootpartition, anstatt im Master Boot Record. Sie
- können LILO dann von <application>BootEasy</application>
- aus booten.</para>
-
- <para>Wenn Sie &windows; und &linux; benutzen, wird das
- ohnehin empfohlen, um es einfacher zu machen, &linux; wieder
- zu booten, wenn es nötig werden sollte, dass Sie
- &windows; neu installieren (&windows; ist ein
- eifersüchtiges Betriebssystem, das kein anderes
- Betriebssystem im Master Boot Sektor duldet).</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="changing-bootprompt">
- <para>Wie kann ich das <literal>???</literal> des
- Boot-Managers durch etwas Sinnvolles ersetzen?</para>
- </question>
-
- <answer>
- <para>Solange Sie den Boot-Manager nicht komplett neu
- schreiben, gar nicht. Allerdings gibt es in der Kategorie
- <filename class="directory">sysutils</filename> der Ports diverse
- Boot-Manager, die diese Funktionalität bieten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="removable-drives">
- <para>Ich habe ein Wechsellaufwerk. Wie benutze ich
- es?</para>
- </question>
-
- <answer>
- <para>Ob es sich um ein Wechsellaufwerk handelt, um ein
- &iomegazip; oder ein EZ-Laufwerk (oder sogar ein
- Diskettenlaufwerk, wenn Sie es auf diese Weise benutzen
- möchten), oder um eine neue Festplatte - wenn es
- einmal installiert und vom System erkannt ist und Sie Ihre
- Kassette/Diskette/was_auch_immer eingelegt haben, ist das
- Vorgehen bei allen Geräten ziemlich
- ähnlich.</para>
-
- <para>(dieser Abschnitt basiert auf <ulink
- url="http://www.vmunix.com/mark/FreeBSD/ZIP-FAQ.html">Mark
- Mayo's ZIP-FAQ</ulink>)</para>
-
- <para>Wenn es sich um ein ZIP- oder Diskettenlaufwerk
- handelt, und sich bereits ein DOS-Dateisystem darauf
- befindet, können Sie einen Befehl wie diesen für
- eine Diskette benutzen:</para>
-
- <screen>&prompt.root; <userinput>mount -t msdosfs /dev/fd0c /floppy</userinput></screen>
-
- <para>oder diesen:</para>
-
- <screen>&prompt.root; <userinput>mount -t msdosfs /dev/da2s4 /zip</userinput></screen>
-
- <para>für eine ZIP-Disk mit der
- Herstellerkonfiguration.</para>
-
- <para>Benutzen Sie bei anderen Platten &man.fdisk.8; oder
- &man.sysinstall.8;, um herauszufinden, wie sie
- konfiguriert sind.</para>
-
- <para>Die restlichen Beispiele sind für ein
- ZIP-Laufwerk unter <devicename>da2</devicename>,
- der dritten SCSI-Platte.</para>
-
- <para>Wenn es sich nicht um eine Diskette oder eine
- Wechselplatte handelt, die Sie mit anderen Leuten
- austauschen wollen, ist es wahrscheinlich besser, ein
- BSD-Dateisystem darauf zu installieren. Hierdurch
- bekommen Sie Unterstützung für lange Dateinamen,
- eine mindestens doppelt so hohe Leistungsausnutzung und
- wesentlich höhere Stabilität. Zunächst
- müssen Sie die Partitionen/Dateisysteme auf DOS-Ebene
- nochmals erstellen. Sie können entweder
- &man.fdisk.8; oder &man.sysinstall.8;
- benutzen, oder, bei einem kleinen Laufwerk, dem Sie eine
- Unterstützung für mehrere Betriebssysteme nicht
- zumuten wollen, entfernen Sie einfach die komplette FAT
- Partitionstabelle (Slices) und benutzen Sie einfach die
- BSD-Partitionierung:</para>
-
- <screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rda2 count=2</userinput>
-&prompt.root; <userinput>disklabel -Brw da2 auto</userinput></screen>
-
- <para>Sie können &man.disklabel.8; oder
- &man.sysinstall.8; benutzen, um mehrere
- BSD-Partitionen zu erstellen. Dies werden Sie sicherlich
- bei einer fest eingebauten Platte wollen, aber bei einem
- Wechsellaufwerk wie einem ZIP ist das wahrscheinlich
- irrelevant.</para>
-
- <para>Zum Schluß erstellen Sie ein neues Dateisystem -
- dieses befindet sich auf unserem ZIP-Laufwerk und belegt
- die gesamte Platte:</para>
-
- <screen>&prompt.root; <userinput>newfs /dev/rda2c</userinput></screen>
-
- <para>anschließend mounten Sie es:</para>
-
- <screen>&prompt.root; <userinput>mount /dev/da2c /zip</userinput></screen>
-
- <para>Und sicherlich ist es keine schlechte Idee, eine Zeile
- ähnlich der folgenden in die Datei
- <filename>/etc/fstab</filename> einzufügen, damit Sie
- in Zukunft nur <command>mount /zip</command> einzugeben
- brauchen:</para>
-
- <programlisting>/dev/da2c /zip ffs rw,noauto 0 0</programlisting>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="mount-cd-superblock">
- <para>Wieso erhalte ich die Meldung <errorname>Incorrect
- super block</errorname> beim Mounten einer CD-ROM?</para>
- </question>
-
- <answer>
- <para>Sie müssen &man.mount.8; mitteilen, was für
- ein Gerät Sie mounten wollen. Genauere Informationen
- dazu finden Sie im Kapitel <ulink
- url="&url.books.handbook;/creating-cds.html">Optische
- Speichermedien</ulink> des Handbuch, genauer gesagt im
- Abschnitt <ulink
- url="&url.books.handbook;/creating-cds.html#MOUNTING-CD">Benutzung
- von Daten-CDs</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="cdrom-not-configured">
- <para>Wieso erhalte ich die Meldung <errorname>Device not
- configured</errorname>, wenn ich eine CD-ROM
- mounte?</para>
- </question>
-
- <answer>
- <para>Das bedeutet im allgemeinen, dass sich keine
- CD-ROM im Laufwerk befindet, oder, dass das Laufwerk
- auf dem Bus nicht sichtbar ist. Dieses Problem wird im
- Kapitel <ulink
- url="&url.books.handbook;/creating-cds.html#MOUNTING-CD">Benutzung
- von Daten-CDs</ulink> des Handbuchs ausführlich
- diskutiert.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="cdrom-unicode-filenames">
- <para>Wieso werden alle Sonderzeichen in den Dateinamen auf
- meinen CDs durch <quote>?</quote> ersetzt, wenn ich die CD
- unter &os; benutze?</para>
- </question>
-
- <answer>
- <para>Wahrscheinlich werden auf der CD-ROM die
- <quote>Joliet</quote> Erweiterungen für die
- Speicherung von Datei- und Verzeichnisnamen benutzt.
- Werfen Sie einen Blick in das Kapitel <ulink
- url="&url.books.handbook;/creating-cds.html">Erzeugung von
- CD-ROMs</ulink> im Handbuch, speziell in den Abschnitt
- über <ulink
- url="&url.books.handbook;/creating-cds.html#MOUNTING-CD">Benutzung
- von Daten-CDs</ulink>.</para>
-
- <para>[Anmerkung des Übersetzers: Es geht hier nicht um
- die deutschen Sonderzeichen, da diese schon im normalen
- ISO8859-1 enthalten sind. Die Probleme treten auf, wenn
- man z.B. russische CDs (ISO8859-5) verwendet.]</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="burncd-isofs">
- <para>Ich habe eine CD mit &os; gebrannt und kann sie
- nicht mit anderen Betriebssystemen lesen. Warum?</para>
- </question>
-
- <answer>
- <para>Sie haben wahrscheinlichste eine Datei direkt auf CD
- geschrieben, statt ein ISO&nbsp;9660-Dateisystem erzeugt zu
- haben. Werfen Sie einen Blick in das Kapitel <ulink
- url="&url.books.handbook;/creating-cds.html">Erzeugung von
- CD-ROMs</ulink> im Handbuch, speziell in den Abschnitt
- über <ulink
- url="&url.books.handbook;/creating-cds.html#RAWDATA-CD">reine
- Daten-CDs</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="copy-cd">
- <para>Wie kann ich ein Image einer Daten-CD erzeugen?</para>
- </question>
-
- <answer>
- <para>Diese Information finden Sie im Abschnitt <ulink
- url="&url.books.handbook;/creating-cds.html#IMAGING-CD">Kopieren
- von CD-ROMs</ulink> des Handbuchs. Weitere Informationen
- über die Arbeit mit CD-ROMs finden Sie im Abschnitt
- <ulink url="&url.books.handbook;/creating-cds.html">Erzeugen von
- CD-ROMs</ulink> im Kapitel Speichermedien des
- Handbuchs.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="mount-audio-CD">
- <para>Wieso kommt <command>mount</command> nicht meiner
- Audio-CD zurecht?</para>
- </question>
-
- <answer>
- <para>Wenn Sie versuchen sollten, eine Audio-CD zu mounten,
- erhalten Sie die Meldung <errorname>cd9660: /dev/acd0c:
- Invalid argument</errorname>. Der Grund dafür ist,
- dass <command>mount</command> nur für
- Dateisysteme vorgehen ist. Audio CDs habe kein
- Dateisystem, sondern nur Daten. Wenn Sie eine Audio CD
- auslesen wollen, brauchen Sie ein entsprechendes Programm
- wie z.B. <filename
- role="package">audio/xmcd</filename> aus den Ports.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="multi-session-CD">
- <para>Wie nutze ich <command>mount</command> für eine
- Multi-Session CD?</para>
- </question>
-
- <answer>
- <para>Standardmäßig benutzt &man.mount.8; den
- letzten (aktuellsten) Daten-Track der CD. Wenn Sie eine
- ältere Session benutzen wollen, müssen Sie diese
- mit der Option <option>-s</option> definieren. Weitere
- Informationen finden Sie in der Onlinehilfe zu
- &man.mount.cd9660.8;</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="user-floppymount">
- <para>Wie lasse ich normale Benutzer Disketten, CD-ROMs und
- andere Wechseldatenträger mounten?</para>
- </question>
-
- <answer>
- <para>Normale Benutzer können dazu berechtigt werden,
- Geräte zu mounten. Das geht so:</para>
-
- <procedure>
- <step>
- <para>Setzen Sie als <username>root</username> die
- sysctl-Variable <varname>vfs.usermount</varname> auf
- <literal>1</literal>:</para>
-
- <screen>&prompt.root; <userinput>sysctl -w vfs.usermount=1</userinput></screen>
- </step>
-
- <step>
- <para>Ordnen Sie als <username>root</username> den
- Block-Geräten, die den Wechsellaufwerken
- zugeordnet sind, die entsprechenden Zugriffsrechte
- zu.</para>
-
- <para>Wenn Sie zum Beispiel den Benutzer den Zugriff auf
- das erste Diskettenlaufwerk zu erlauben
- wollen:</para>
-
- <screen>&prompt.root; <userinput>chmod 666 /dev/fd0</userinput></screen>
-
- <para>Um den Mitgliedern der Gruppe
- <groupname>operator</groupname> den Zugriff auf das
- CD-ROM zu gestatten:</para>
-
- <screen>&prompt.root; <userinput>chgrp operator /dev/acd0c</userinput>
-&prompt.root; <userinput>chmod 640 /dev/acd0c</userinput></screen>
- </step>
-
- <step>
- <para>Sie müssen
- zusätzlich <filename>/etc/devfs.conf</filename>
- anpassen, weil diese Einstellungen ansonsten beim
- Systemneustart verloren gehen.</para>
-
- <para>Damit normale Benutzer beispielsweise das erste
- Diskettenlaufwerk mounten können, fügen Sie
- als <username>root</username> folgende Zeilen in
- <filename>/etc/devfs.conf</filename> ein:</para>
-
- <programlisting># Allen Benutzern erlauben, das erste Diskettenlaufwerk zu mounten.
-own /dev/fd0 root:operator
-perm /dev/fd0 0666</programlisting>
-
- <para>Damit alle Mitglieder der Gruppe
- <groupname>operator</groupname> das CD-ROM-Laufwerk
- mounten können, die folgenden Zeilen:</para>
-
- <programlisting># Alle Mitglieder der Gruppe operator dürfen CD-ROMs mounten.
-own /dev/acd0 root:operator
-perm /dev/acd0 0660</programlisting>
- </step>
-
- <step>
- <para>Fügen Sie zum Abschluss die Zeile
- <literal><varname>vfs.usermount=</varname>1</literal>
- in die Datei <filename>/etc/sysctl.conf</filename>
- ein, damit die Einstellung bei einem Neustart des
- Systems automatisch erhalten bleibt.</para>
- </step>
- </procedure>
-
- <para>Alle Benutzer können nun
- <devicename>/dev/fd0</devicename> auf ein Verzeichnis, das
- ihnen gehört, mounten:</para>
-
- <screen>&prompt.user; <userinput> mkdir <replaceable>~/my-mount-point</replaceable></userinput>
-&prompt.user; <userinput> mount -t msdosfs /dev/fd0 <replaceable>~/my-mount-point</replaceable></userinput></screen>
-
- <para>Die zur Gruppe <groupname>operator</groupname>
- gehörenden Benutzer können nun
- <devicename>/dev/acd0c</devicename> auf ein Verzeichnis, das
- ihnen gehört, mounten:</para>
-
- <screen>&prompt.user; <userinput> mkdir <replaceable>~/my-mount-point</replaceable></userinput>
-&prompt.user; <userinput> mount -t cd9660 /dev/acd0c <replaceable>~/my-mount-point</replaceable></userinput></screen>
-
- <para>Das Unmounten des Gerätes ist simpel:</para>
-
- <screen>&prompt.user; <userinput>umount <replaceable>~/my-mount-point</replaceable></userinput></screen>
-
- <para>Die Aktivierung von <varname>vfs.usermount</varname>
- hat jedoch negative Auswirkungen auf Sicherheitsaspekte.
- Ein besserer Weg, um auf &ms-dos;-formatierte
- Datenträger zuzugreifen, ist die Benutzung des
- Packages <filename
- role="package">emulators/mtools</filename>.</para>
-
- <note>
- <para>Denken Sie daran, dass Sie die Gerätenamen in
- diesen Beispielen an Ihre Konfiguration anpassen
- müssen.</para>
- </note>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="du-vs-df">
- <para>Wieso geben die Befehle <command>du</command> und
- <command>df</command> unterschiedliche Werte für den
- freien Plattenplatz aus?</para>
- </question>
-
- <answer>
- <para>Der Grund ist die Funktionsweise von
- <command>du</command> und <command>df</command>.
- <command>du</command> geht durch einen Dateibaum,
- ermittelt die Größe jeder einzelnen Datei, und
- gibt die Summe aus. <command>df</command> fragt lediglich
- das Dateisystem wie viel Platz noch frei ist. Das
- scheint zwar auf den ersten Blick sehr ähnlich zu
- sein; allerdings wird sich ein leeres Verzeichnis auf die
- Ausgabe von <command>df</command> auswirken, während
- es auf das Ergebnis von <command>du</command> keinen
- Einfluss hat.</para>
-
- <para>Wenn Sie eine Datei löschen, während sie von
- einem Programm genutzt wird, wird diese Datei erst
- gelöscht, wenn sie vom Programm freigegeben wird.
- Allerdings wird die Datei sofort aus dem Verzeichnis
- entfernt. Sie können dieses Verhalten mit einem
- Programm wie <command>more</command> sehr einfach
- nachvollziehen. Dazu brauchen Sie nur eine Datei, die
- groß genug ist, um die Ausgabe von
- <command>du</command> und <command>df</command> zu
- beeinflussen. Bei der Größe aktueller Platten
- muss diese Datei schon <emphasis>sehr</emphasis>
- groß sein! Wenn Sie diese Datei löschen,
- während Sie sie sich in <command>more</command>
- anzeigen lassen, hat <command>more</command> kein Problem.
- Der Eintrag für die Datei wird lediglich aus dem
- Verzeichnis entfernt, damit kein anderes Programm mehr
- darauf zugreifen kann. Laut <command>du</command> ist die
- Datei verschwunden &ndash; es hat das Verzeichnis
- untersucht und die Datei nicht gefunden. Laut
- <command>df</command> ist die Datei aber vorhanden, da sie
- im Dateisystem immer noch Platz belegt. Sobald Sie
- <command>more</command> beenden, werden die Ergebnisse von
- <command>du</command> und <command>df</command> wieder
- übereinstimmen.</para>
-
- <para>Bitte beachten Sie, dass die Freigabe des
- Plattenplatzes durch die Soft Updates um bis zu 30 Sekunden
- verzögert werden kann.</para>
-
- <para>Die oben beschriebene Situation tritt sehr häufig
- auf Web-Servern auf. Viele Anwender installieren einen
- &os; Web-Server und vergessen die Rotation der
- Logfiles, bis irgendwann die Partition <filename
- class="directory">/var</filename> überläuft. Der
- Administrator löscht die Datei, aber das System
- beschwert sich immer noch über fehlenden
- Plattenplatz. Die Datei wird erst freigegeben, wenn der
- Web-Server beendet und neu gestartet wird; dadurch kann
- das System den Plattenplatz freigeben. Um solche und
- ähnliche Unfälle zu verhindern, sollten Sie
- &man.newsyslog.8; einsetzen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="add-swap-space">
- <para>Wie kann ich den Swap-Bereich
- vergrößern?</para>
- </question>
-
- <answer>
- <para>Im Kapitel <ulink
- url="&url.books.handbook;/config-tuning.html">Konfiguration und
- Tuning</ulink> des Handbuches gibt es einen <ulink
- url="&url.books.handbook;/adding-swap-space.html">Abschnitt</ulink>
- mit einer Schritt-für-Schritt Anleitung.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="manufacturer-disk-size">
- <para>Warum ist meine Festplatte unter &os; kleiner, als sie
- laut Hersteller sein soll?</para>
- </question>
-
- <answer>
- <para>Festplattenhersteller definieren ein Gigabyte als eine
- Milliarde Bytes, für &os; ist ein Gigabyte hingegen
- 1.073.741.824&nbsp;Bytes groß. Aus diesem Grund wird
- für eine Platte, die laut Herstellerangaben
- 80&nbsp;GB groß ist, während des Bootvorgangs
- eine Größe von 76.319&nbsp;MB angezeigt.</para>
-
- <para>Beachten Sie auch, dass &os; (in der Voreinstellung)
- 8&nbsp;% des Plattenplatzes für sich
- <link linkend="disk-more-than-full">reserviert</link>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="disk-more-than-full">
- <para>Warum kann eine Partition zu mehr als 100% gefüllt
- sein?</para>
- </question>
-
- <answer>
- <para>Ein Teil jeder UFS Partition, in der Vorgabe sind das 8%,
- ist für das Betriebssystem und den Benutzer
- <username>root</username> reserviert. &man.df.1; rechnet
- diesen Teil bei der Ausgabe der <literal>Capacity</literal>
- Spalte nicht ein, so dass dort Werte über 100%
- angezeigt werden können. Die Anzahl der Blöcke in
- der <literal>blocks</literal> Spalte ist ebenfalls um 8%
- größer als die Summe der benutzten und
- verfügbaren Blöcke (die Spalten
- <literal>Used</literal> und <literal>Avail</literal>).</para>
-
- <para>Wie viel Platz reserviert wird, können Sie mit der
- <option>-m</option> Option von &man.tunefs.8; einstellen.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="admin">
- <title>Systemadministration</title>
-
- <qandaset>
- <qandaentry>
- <question id="startup-config-files">
- <para>Wo befinden sich die Konfigurationsdateien für
- den Systemstart?</para>
- </question>
-
- <answer>
- <para><filename>/etc/defaults/rc.conf</filename> (siehe
- &man.rc.conf.5;) ist die primäre Konfigurationsdatei.
- Die Startskripten des Systems, wie
- <filename class="directory">/etc/rc</filename> und
- <filename class="directory">/etc/rc.d</filename> (siehe &man.rc.8;)
- inkludieren diese Datei.
- <emphasis>Ändern Sie diese Datei nicht!</emphasis>
- Wenn Sie den Wert einer der in
- <filename>/etc/defaults/rc.conf</filename> gesetzten
- Variablen ändern wollen, fügen Sie die
- entsprechende Zeile in die Datei
- <filename>/etc/rc.conf</filename> ein und ändern
- die Zeile dort.</para>
-
- <para>Wenn Sie zum Beispiel den mitgelieferten DNS-Server
- &man.named.8 aktivieren wollen, müssen Sie lediglich
- das folgende Kommando eingeben:</para>
-
- <screen>&prompt.root; <userinput>echo 'named_enable="YES"' &gt;&gt; /etc/rc.conf</userinput></screen>
-
- <para>Wenn Sie lokale Server starten wollen, müssen
- Sie passende Shellskripten im Verzeichnis <filename
- class="directory">/usr/local/etc/rc.d/</filename> ablegen. Die
- Dateien müssen als ausführbar markiert sein und
- die Dateiberechtigungen <literal>555</literal> besitzen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="adding-users">
- <para>Wie kann ich am Einfachsten einen Benutzer
- hinzufügen?</para>
- </question>
-
- <answer>
- <para>Benutzen Sie den Befehl &man.adduser.8; und für
- kompliziertere Fälle den Befehl &man.pw.8;.</para>
-
- <para>Benutzen Sie den Befehl &man.rmuser.8;, um einen
- Benutzer wieder zu löschen. Sie können, wenn
- nötig. auch &man.pw.8; benutzen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="root-not-found-cron-errors">
- <para>Warum erhalte ich Meldungen wie <errorname>root: not
- found</errorname>, nachdem ich meine
- <filename>crontab</filename> geändert habe?</para>
- </question>
-
- <answer>
- <para>Die übliche Ursache dieses Problems ist,
- dass Sie die crontab des Systems
- (<filename>/etc/crontab</filename>) geändert und dann
- mit &man.crontab.1; installiert haben:</para>
-
- <screen>&prompt.root; <userinput>crontab /etc/crontab</userinput></screen>
-
- <para>Diese Vorgehensweise ist falsch. Die crontab des
- Systems hat ein anderes Format als die crontabs für
- die einzelnen Benutzer, die mit &man.crontab.1;
- aktualisiert werden (genauere Informationen über die
- Unterschiede erhalten Sie in &man.crontab.5;).</para>
-
- <para>Wenn Sie so vorgegangen sind, ist die zweite crontab
- einfach nur eine Kopie von
- <filename>/etc/crontab</filename>, allerdings im falschen
- Format. Löschen Sie sie mit dem folgenden
- Befehl:</para>
-
- <screen>&prompt.root; <userinput>crontab -r</userinput></screen>
-
- <para>Wenn Sie <filename>/etc/crontab</filename> wieder
- ändern müssen, sollten Sie einfach gar nichts
- tun, um &man.cron.8; über die Änderung zu
- informieren, er erkennt die Änderung
- automatisch.</para>
-
- <para>Wenn Sie ein Kommando jeden Tag, jede Woche oder jeden
- Monat ausführen lassen wollen, ist es wahrscheinlich
- einfacher, wenn Sie entsprechende Shell-Scripte in <filename
- class="directory">/usr/local/etc/periodic</filename> ablegen.
- Diese werden dann von &man.periodic.8; zusammen mit den
- anderen regelmäßigen <command>cron</command>
- Tätigkeiten ausgeführt.</para>
-
- <para>Der eigentliche Grund für den Fehler ist die
- Tatsache, dass die crontab des Systems ein
- zusätzliches Feld enthält; dieses Feld gibt an,
- mit welcher Benutzerkennung der Befehl ausgeführt
- werden soll. In der mitgelieferten crontab ist das bei
- allen Einträgen die Benutzerkennung
- <username>root</username>. Wenn diese Datei als die
- crontab des Benutzers <username>username</username> (die
- <emphasis>nicht</emphasis> mit der crontab des Systems
- identisch ist) verwendet wird, hält &man.cron.8; die
- Zeichenkette <literal>root</literal> für den Namen
- des zu startenden Programmes, aber dieses Programm gibt es
- nicht.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="su-wheel-group">
- <para>Wieso meldet mir &man.su.1; <errorname>you are not in
- the correct group to su root</errorname>, wenn ich mit
- <command>su</command> <username>root</username> werden will?</para>
- </question>
-
- <answer>
- <para>Das ist ein Sicherheits-Feature. Wenn Sie mit
- <command>su</command> zum Account <username>root</username> (oder
- jedem anderen Account mit Super-User-Privilegien) wechseln
- wollen, müssen Sie ein Mitglied der Gruppe
- <groupname>wheel</groupname> sein. Wenn es dieses Feature
- nicht gäbe, könnte jeder, der einen Account auf
- dem System hat und zufällig das Passwort
- für <username>root</username> erfährt, mit
- Super-User-Rechten auf das System zugreifen. Durch dieses
- Feature ist die Lage anders, wenn Sie nicht Mitglied von
- <groupname>wheel</groupname> sind, können Sie nicht
- einmal versuchen, dass Passwort
- einzugeben.</para>
-
- <para>Um einem Benutzer zu erlauben, mit <command>su</command>
- <username>root</username> zu werden, müssen Sie ihn
- nur in die Gruppe <groupname>wheel</groupname>
- eintragen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="rcconf-readonly">
- <para>Ich habe einen Fehler in der
- <filename>rc.conf</filename> oder einer der anderen
- Dateien für den Systemstart und jetzt kann ich sie
- nicht ändern, weil das Dateisystem
- <quote>read-only</quote> ist. Was kann ich tun?</para>
- </question>
-
- <answer>
- <para>Starten Sie das System mittels <userinput>boot -s</userinput>
- an der Loader-Eingabeaufforderung neu, um in den Single-User-Modus
- zu gelangen. Wenn Sie aufgefordert werden, den Pfadnamen
- der Shell einzugeben, drücken Sie einfach
- <keycap>Enter</keycap>. Geben Sie danach <command>mount -urw
- /</command> ein, um das Root-Dateisystem im
- Schreib/Lese-Modus zu mounten. Sie werden wahrscheinlich
- auch <command>mount -a -t ufs</command> ausführen
- müssen, um das Dateisystem mit Ihrem Lieblingseditor
- zu mounten. Wenn Ihr Lieblingseditor auf einem
- Netzwerklaufwerk liegt, müssen Sie entweder das
- Netzwerk von Hand konfigurieren oder einen Editor
- benutzen, der auf einem lokalen Laufwerk vorhanden ist,
- z.B. &man.ed.1;.</para>
-
- <para>Wenn Sie einen bildschirmorientierten Editor wie zum
- Beispiel &man.vi.1; oder &man.emacs.1; benutzen wollen,
- werden Sie auch den Befehl <command>export
- TERM=cons25</command> ausführen müssen, damit
- diese Editoren die richtigen Einstellungen aus der
- Datenbank &man.termcap.5; übernehmen.</para>
-
- <para>Sobald Sie diese Schritte ausgeführt, können
- Sie den Fehler in der <filename>/etc/rc.conf</filename>
- ganz normal beheben. Die Fehlermeldungen, die Ihnen
- unmittelbar nach den Startmeldungen des Kernels angezeigt
- wurden, sollten Ihnen die Nummer der Zeile mit dem Fehler
- melden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="printer-setup">
- <para>Wieso habe ich habe Probleme, meinen Drucker
- einzurichten?</para>
- </question>
-
- <answer>
- <para>Lesen sie den <ulink
- url="&url.books.handbook;/printing.html">Handbucheintrag über
- Drucker</ulink>. Es sollte die meisten Ihrer Probleme
- behandeln.</para>
-
- <para>Einige Drucker benötigen einen auf dem Rechner
- laufenden Treiber, um drucken zu können. Diese
- so genannten <quote>WinPrinter</quote> oder
- <quote>GDI-Drucker</quote> werden von &os; nicht
- unterstützt und an diesem Zustand wird sich wohl auch
- nichts ändern. Wenn Ihr Drucker nicht unter DOS oder
- &windows; verwendet werden kann, handelt es sich um
- einen <quote>WinPrinter</quote> und wird in der Regel auch
- nicht unter &os; funktionieren. Ihre einzige Chance,
- einen dieser Drucker benutzen können, ist der Port
- <filename
- role="package">ports/print/pnm2ppa</filename>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="keyboard-mappings">
- <para>Wie kann ich die Tastaturbelegung meines Systems
- korrigieren?</para>
- </question>
-
- <answer>
- <para>Informationen dazu finden Sie im Kapitel <ulink
- url="&url.books.handbook;/using-localization.html">länderspezifische
- Einstellungen</ulink> des Handbuchs, insbesondere im
- Abschnitt <ulink
- url="&url.books.handbook;/using-localization.html#SETTING-CONSOLE">Konfiguration
- der Konsole</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="pnp-resources">
- <para>Wieso erhalte ich beim Start des Systems Meldungen wie
- <errorname>unknown: &lt;PNP0303&gt; can't assign
- resources</errorname>?</para>
- </question>
-
- <answer>
- <para>Die nachfolgende Erklärung stammt aus einer Mail
- auf der Mailingliste &a.current;.</para>
-
- <blockquote>
- <attribution>&a.wollman;, 24 April 2001</attribution>
-
- <para>Die Geräte, für die <quote>can't assign
- resources</quote>-Meldungen ausgegeben werden, sind
- <quote>Legacy ISA</quote>Geräte, für die ein nicht
- PNP-fähiger Treiber in den Kernel eingebunden
- wurde. Dabei handelt es sich um Geräte wie den
- Tastaturkontroller, den programmierbaren
- Interrupt-Kontroller und diverse andere
- Standardkomponenten. Die Ressourcen können nicht
- zugewiesen werden, weil es schon einen Treiber gibt, der
- diese Ressourcen benutzt.</para>
- </blockquote>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="user-quotas">
- <para>Wieso funktionieren die Benutzer-Quotas nicht
- richtig?</para>
- </question>
-
- <!-- XXX
- This may be the worst answer in the entire document.
- -->
-
- <answer>
- <orderedlist>
- <listitem>
- <para>Es kann sein, dass Ihr Kernel nicht für den
- Einsatz von Quotas konfiguriert ist. Damit Sie mit
- Quotas arbeiten können, müssen Sie folgende
- Zeile in Ihre Kernelkonfigurationsdatei aufnehmen und
- den Kernel neu bauen:</para>
-
- <programlisting>options QUOTA</programlisting>
-
- <para>Weitere Informationen zum Einsatz von Quotas
- finden Sie im entsprechenden
- <ulink
- url="&url.books.handbook;/quotas.html">Abschnitt</ulink>
- des Handbuchs.</para>
- </listitem>
-
- <listitem>
- <para>Benutzen Sie keine Quotas für <filename
- class="directory">/</filename>.</para>
- </listitem>
-
- <listitem>
- <para>Erstellen Sie die Quotas-Datei in dem Dateisystem,
- für das die Quotas gelten sollen, z.B.:</para>
-
- <informaltable frame="none" pgwide="1">
- <tgroup cols="2">
- <thead>
- <row>
- <entry>File System</entry>
-
- <entry>Quota file</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry><filename class="directory">/usr</filename></entry>
-
- <entry><filename>/usr/admin/quotas</filename></entry>
- </row>
-
- <row>
- <entry><filename
- class="directory">/home</filename></entry>
-
- <entry><filename>/home/admin/quotas</filename></entry>
- </row>
-
- <row>
- <entry>&hellip;</entry>
-
- <entry>&hellip;</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </listitem>
- </orderedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="sysv-ipc">
- <para>Unterstützt &os; IPC-Grundfunktionen von
- System V?</para>
- </question>
-
- <answer>
- <para>Ja, &os; unterstützt IPC im Stil von System V
- einschließlich gemeinsamen Speicher, Nachrichten und
- Semaphoren bereits mit dem
- <filename>GENERIC</filename>-Kernel. Wenn Sie einen
- angepassten Kernel verwenden, müssen Sie die folgenden
- Zeilen in Ihre Kernelkonfigurationsdatei einfügen:</para>
-
- <programlisting>
-options SYSVSHM
-options SYSVSHM # enable shared memory
-options SYSVSEM # enable for semaphores
-options SYSVMSG # enable for messaging
- </programlisting>
-
- <para>Danach kompilieren und installieren Sie den neuen
- Kernel.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="sendmail-alternative">
- <para>Welchen Mail-Server kann ich an Stelle von
- <application>sendmail</application> benutzen?</para>
- </question>
-
- <answer>
- <para><ulink url="http://www.sendmail.org/">
- <application>sendmail</application></ulink>
- ist zwar der Mail-Server, der bei &os;
- standardmäßig installiert wird, aber Sie
- können Ihn problemlos durch einen anderen MTA (z.B.
- aus den Ports) ersetzen.</para>
-
- <para>In der Port-Sammlung gibt es bereits viele
- verschiedene MTAs, <filename
- role="package">mail/exim</filename>,
- <filename role="package">mail/postfix</filename>,
- <filename role="package">mail/qmail</filename>, sowie
- <filename role="package">mail/zmailer</filename>
- sind einige der beliebteren Alternativen.</para>
-
- <para>Konkurrenz belebt das Geschäft und die Tatsache,
- dass Sie die Qual der Wahl haben, ist ein Vorteil.
- Daher sollten Sie Fragen wie <quote>Ist
- <application>sendmail</application>
- besser als <application>qmail</application>?</quote> besser nicht
- auf den Mailinglisten stellen. Wenn Sie dieses Thema interessiert,
- sollten sie zunächst die Archive durchsehen. Die Vorteile und
- Nachteile jedes einzelnen der verfügbaren MTAs sind
- schon mehrere Male bis zur Erschöpfung diskutiert
- worden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="forgot-root-pw">
- <para>Was kann ich machen, wenn ich das Rootpasswort
- vergessen habe?</para>
- </question>
-
- <answer>
- <para>Keine Panik! Starten Sie Ihr System neu und
- geben Sie <userinput>boot -s</userinput> an der
- Eingabeaufforderung <literal>Boot:</literal> ein, um in den
- Single-User-Modus zu gelangen. Bei der Frage danach,
- welche Shell benutzt werden soll, drücken Sie einfach
- <keycap>Enter</keycap>. Nun erscheint die Eingabeaufforderung
- &prompt.root;. Geben Sie <command>mount -urw /</command>
- ein, um Ihr Root-Dateisystem für Lese- und
- Schreibzugriffe zu remounten und dann <command>mount
- -a</command>, um alle Dateisysteme zu remounten. Mit
- <command>passwd root</command> können Sie das
- Rootpasswort ändern und mit &man.exit.1;
- können Sie mit dem Booten fortfahren.</para>
-
- <note>
- <para>Wenn Sie immer noch dazu aufgefordert werden, das
- <username>root</username> Passwort beim Betreten des
- Single-User-Modus einzugeben, bedeutet das, dass die Konsole
- als <literal>insecure</literal> in
- <filename>/etc/ttys</filename> markiert wurde. In diesem Fall
- ist es notwendig, von einem &os; Installationsmedium zu booten,
- die <guimenuitem>Fixit</guimenuitem>-Shell auszuwählen und
- die oben beschriebenen Befehle einzugeben.</para>
- </note>
-
- <note>
- <para>Wenn Sie ihre root Partition im Single-User-Modus
- nicht mounten können, liegt es möglicherweise
- daran, dass die Partionen verschlüsselt sind und es
- damit unmöglich ist, sie ohne die
- dazugehörigen Schlüssel zu mounten. Ihre
- Chancen hängen von der jeweiligen Implementierung
- ab. Für weitere Informationen lesen Sie den
- Abschnittt über verschlüsselte Partitionen im
- &os; <ulink
- url="&url.books.handbook;/disks-encrypting.html">Handbuch</ulink>.</para>
- </note>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="CAD-reboot">
- <para>Wie verhindere ich, dass das System mit <keycombo
- action="simul">
- <keycap>Ctrl</keycap>
- <keycap>Alt</keycap>
- <keycap>Delete</keycap>
- </keycombo>
- rebootet werden kann?</para>
- </question>
-
- <answer>
- <para>Falls Sie &man.syscons.4; (der Standard-Treiber für die
- Konsole) benutzen, fügen Sie folgende Zeile in Ihre
- Kernelkonfigurationsdatei ein:</para>
-
- <programlisting>options SC_DISABLE_REBOOT</programlisting>
-
- <para>Alternativ können Sie auch die folgende
- &man.sysctl.8;-Variable setzen (die aktiviert wird, ohne dass Sie
- Ihr System dazu neu starten oder einen angepassten Kernel
- erstellen müssen):</para>
-
- <screen>&prompt.root; <userinput>sysctl hw.syscons.kbd_reboot=0</userinput></screen>
-
- <note>
- <para>Die beiden oben genannten Methoden schliessen sich
- gegenseitig aus: &man.sysctl.8; existiert nicht, wenn Sie ihren
- Kernel mit der Option <literal>SC_DISABLE_REBOOT</literal>
- bauen.</para>
- </note>
-
- <para>Falls Sie den &man.pcvt.4; Konsolentreiber verwenden, fügen
- Sie die folgende Zeile in die Kernelkonfigurationsdatei hinzu und
- bauen Sie einen neuen Kernel:</para>
-
- <programlisting>options PCVT_CTRL_ALT_DEL</programlisting>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="dos-to-unix-txt">
- <para>Wie kann ich Textdateien von DOS Systemen auf &unix;
- Systemen verwenden?</para>
- </question>
-
- <answer>
- <para>Benutzen Sie diesen Perl-Befehl:</para>
-
- <screen>&prompt.user; <userinput>perl -i.bak -npe 's/\r\n/\n/g' <replaceable>file(s)</replaceable></userinput></screen>
-
- <para>Wobei <replaceable>file(s)</replaceable> eine oder mehrere
- zu verarbeitende(n) Datei(en) ist/sind. Die Änderungen
- erfolgen in der Originaldatei, die zuvor mit der Erweiterung
- <filename>.bak</filename> gesichert wird.</para>
-
- <para>Alternativ können Sie den Befehl &man.tr.1;
- benutzen:</para>
-
- <screen>&prompt.user; <userinput>tr -d '\r' &lt; <replaceable>dos-text-file</replaceable> &gt; <replaceable>unix-file</replaceable></userinput></screen>
-
- <para><replaceable>dos-text-file</replaceable> ist die
- Datei, die den Text im DOS-Format enthält und
- <replaceable>unix-file</replaceable> wird die konvertierte
- Ausgabe enthalten. Diese Möglichkeit könnte
- etwas schneller sein, als die Benutzung von
- <command>perl</command>.</para>
-
- <para>Die Verwendung des Ports <filename
- role="package">converters/dosunix</filename> aus der Ports-Sammlung
- stellt eine weitere Möglichkeit dar, DOS-Textdateien neu zu
- formatieren. Konsultieren Sie die Dokumentation für weitere
- Informationen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="kill-by-name">
- <para>Wie beende ich Prozesse namentlich?</para>
- </question>
-
- <answer>
- <para>Benutzen Sie &man.pkill.1;.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="root-acl">
- <para>Warum nervt &man.su.1; mich damit, dass ich nicht in der
- ACL von <username>root</username> bin?</para>
- </question>
-
- <answer>
- <para>Der Fehler stammt vom verteilten
- Authentifizierungssystem <application>Kerberos</application>.
- Das Problem ist nicht ernsthaft, aber störend. Sie
- können entweder su mit der Option <option>-K</option>
- benutzen, oder <application>Kerberos</application> deinstallieren,
- wie in der nächsten Frage beschrieben.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="uninstall-kerberos">
- <para>Wie deinstalliere ich
- <application>Kerberos</application>?</para>
- </question>
-
- <answer>
- <para>Um <application>Kerberos</application> aus dem System zu
- entfernen, müssen Sie die <literal>base</literal>-Distribution
- der von Ihnen benutzten RELEASE neu installieren. Wenn Sie die
- CD-ROM besitzen, können Sie sie mounten (wir nehmen an, unter
- <filename class="directory">/cdrom</filename>) und folgende Befehle
- ausführen:</para>
-
- <screen>&prompt.root; <userinput>cd /cdrom/base</userinput>
-&prompt.root; <userinput>./install.sh</userinput></screen>
-
- <para>Alternativ können Sie mit der Option
- <makevar>NO_KERBEROS</makevar> in der
- <filename>/etc/make.conf</filename> ein make world
- durchführen.</para>
- </answer>
- </qandaentry>
- <qandaentry>
- <question id="add-pty">
- <para>Wie füge ich Pseudo-Terminals zum System
- hinzu?</para>
- </question>
-
- <answer>
- <para>Wenn Sie viele Benutzer von <command>telnet</command>,
- <command>ssh</command>, X oder <command>screen</command> haben,
- werden Ihnen eventuell die Pseudo-Terminals ausgehen.
- Standardmässig unterstützt &os;&nbsp;6.2 und vorherige
- Versionen 256 Pseudo-Terminals, während &os;&nbsp;6.3 und
- höher 512 Pseudo-Terminals zur Verfügung stellt.</para>
-
- <tip>
- <para>Wenn nötig, können mehr Pseudo-Terminals
- hinzugefügt werden. Allerdings muss dafür die
- C-Blibliothek, der Kernel und <filename>/etc/ttys</filename>
- erweitert werden. Zum Beispiel erhöht <ulink
- url="http://www.freebsd.org/~jhb/patches/pty_1152.patch"></ulink>
- die Anzahl an Pseudo-Terminals auf 1152. Beachten Sie, dass die
- Erweiterung nur für &os;&nbsp;6.3 oder höher problemlos
- funktioniert.</para>
- </tip>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="reread-rc">
- <para>Wie lade ich <filename>/etc/rc.conf</filename> und
- starte <filename>/etc/rc</filename> neu, ohne zu
- rebooten?</para>
- </question>
-
- <answer>
- <para>Gehen Sie in den Single-User-Modus und dann
- zurück in den Multi-User-Modus.</para>
-
- <para>Geben Sie auf der Konsole folgendes ein:</para>
-
- <screen>&prompt.root; <userinput>shutdown now</userinput>
-(Hinweis: ohne -r oder -h)
-&prompt.root; <userinput>return</userinput>
-&prompt.root; <userinput>exit</userinput></screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="release-candidate">
- <para>Ich wollte auf das aktuelle <emphasis>-STABLE</emphasis>
- updaten, und plötzlich läuft hier ein
- <emphasis>-BETA<replaceable>x</replaceable></emphasis>,
- <emphasis>-RC</emphasis> oder <emphasis>-PRERELEASE</emphasis>!
- Was ist passiert?</para>
- </question>
-
- <answer>
- <para>Kurze Antwort: Das ist nur ein anderer Name.
- <emphasis>RC</emphasis> ist die Abkürzung für
- <quote>Release Candidate</quote>. Es bedeutet, dass eine neue
- Release bevorsteht. Und <emphasis>-PRERELEASE</emphasis> bedeutet
- bei &os; normalerweise, dass die Sourcen zur Vorbereitung auf eine
- Release <quote>eingefroren</quote> wurden (in einigen
- Releases wurde <emphasis>-BETA</emphasis> anstelle von
- <emphasis>-PRERELEASE</emphasis> verwendet).</para>
-
- <para>Ausführliche Antwort: Bei &os; gibt es zwei
- Quellen für Releases. Die Major Releases wie
- 7.0-RELEASE und 8.0-RELEASE werden aus dem aktuellen Stand
- des Hauptzweiges der Entwicklung (besser und kürzer
- als <link linkend="current">-CURRENT</link> bekannt)
- erzeugt. Minor Releases wie 6.3-RELEASE oder 5.2-RELEASE
- stammen aus dem aktiven <link
- linkend="stable">-STABLE</link> Zweig. Seit 4.3-RELEASE
- gibt es es nun auch einen eigenen Zweig für jede
- Release, der für die Leute gedacht ist, die ein sehr
- konservativ weiterentwickeltes System benötigen (im
- Normalfall also nur Updates aus dem Bereich
- Sicherheit).</para>
-
- <para>Bevor in einem Zweig eine Release erfolgt, muss
- in diesem Zweig ein bestimmter Prozess ablaufen. Ein
- Teil dieses Prozesses ist der <quote>code freeze</quote>,
- der Stop der Weiterentwicklung. Sobald dieser Schritt
- erfolgt ist, wird der Name des Zweiges geändert, um
- anzuzeigen, dass demnächst eine Release erfolgen
- wird. Wenn der Zweig zum Beispiel 6.2-STABLE genannt
- wurde, wird der Name in 6.3-PRERELEASE geändert, um
- dies zu verdeutlichen. Weiterhin ist das ein Zeichen, dass
- jetzt besonders intensiv getestet werden sollte. In
- dieser Phase können Fehler im Sourcecode noch
- korrigiert werden. Wenn der Sourcecode so weit
- <quote>gereift</quote> ist, dass eine Release
- erstellt werden kann, wird der Name in 6.3-RC
- geändert, um genau dies anzuzeigen. In dieser Phase
- können nur noch extrem wichtige Korrekturen
- aufgenommen werden. Sobald die Release (in diesem Beispiel
- 6.3-RELEASE) erfolgt ist, wird der Zweig in 6.3-STABLE
- umbenannt.</para>
-
- <para>Weitere Informationen über Versionsnummern und die
- verschiedenen Entwicklungszweige enthält der Artikel
- <ulink
- url="&url.articles.releng.en;/article.html">Release
- Engineering</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="kernel-chflag-failure">
- <para>Als ich versucht habe, einen neuen Kernel zu
- installieren, ist das &man.chflags.1; fehlgeschlagen. Was mache
- ich jetzt?</para>
- </question>
-
- <answer>
- <para>Kurze Antwort: Ihre Sicherheitseinstellung (der
- <literal>securelevel</literal>) ist wahrscheinlich
- größer als 0. Sie müssen das System neu starten
- und den Kernel im Single-User-Modus installieren.</para>
-
- <para>Ausführliche Antwort: Wenn die
- Sicherheitseinstellung größer als 0 ist,
- erlaubt Ihnen &os; nicht, die Systemflags zu
- ändern. Um den aktuellen Securelevel zu ermitteln,
- können Sie das folgende Kommando benutzen:</para>
-
- <screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen>
-
- <para>Sie können die Sicherheitseinstellung nicht
- verringern. Sie müssen das System neu starten und den
- Kernel im Single-User-Modus installieren oder die
- Sicherheitseinstellung in
- <filename>/etc/rc.conf</filename> ändern und dann das
- System neu starten. Weitere Details zu
- <literal>securelevel</literal> erhalten Sie in &man.init.8;,
- weitere Informationen zur rc.conf erhalten Sie in
- <filename>/etc/defaults/rc.conf</filename> und
- &man.rc.conf.5;.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="kernel-securelevel-time">
- <para>Ich kann die Systemzeit nicht um mehr als eine Sekunde
- verstellen. Was mache ich jetzt?</para>
- </question>
-
- <answer>
- <para>Kurze Antwort: Ihre Sicherheitseinstellung (der
- <literal>securelevel</literal>) ist wahrscheinlich
- größer als 1. Sie müssen das System neu starten
- und die Systemzeit im Single-User-Modus verstellen.</para>
-
- <para>Ausführliche Antwort: Wenn die
- Sicherheitseinstellung größer als 1 ist,
- erlaubt Ihnen &os; nicht, die Systemzeit zu
- ändern. Um den aktuellen Securelevel zu ermitteln,
- können Sie das folgende Kommando benutzen:</para>
-
- <screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen>
-
- <para>Sie können die Sicherheitseinstellung nicht
- verringern, Sie müssen das System neu starten und die
- Systemzeit im Single-User-Modus ändern oder die
- Sicherheitseinstellung in
- <filename>/etc/rc.conf</filename> ändern und dann das
- System neu starten. Weitere Details zu
- <literal>securelevel</literal> erhalten Sie in &man.init.8;,
- weitere Informationen zur <filename>rc.conf</filename> erhalten Sie
- in <filename>/etc/defaults/rc.conf</filename> und
- &man.rc.conf.5;.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="statd-mem-leak">
- <para>Warum braucht &man.rpc.statd.8; 256&nbsp;MB
- Speicher?</para>
- </question>
-
- <answer>
- <para>Nein, das Programm hat keinen Fehler und es verbraucht
- auch nicht 256&nbsp;MB Speicher. <command>rpc.statd</command>
- projiziert nur einen übertrieben großen
- Speicherbereich in seinen eigenen Adressraum.
- Von einem rein technischen Standpunkt aus
- ist das nichts verwerfliches, allerdings verwirrt es
- Programme wie &man.top.1; und &man.ps.1;.</para>
-
- <para>&man.rpc.statd.8; projiziert seine Statusdatei (die in
- <filename class="directory">/var</filename> liegt) in seinen
- Adressraum. Um die Probleme zu vermeiden, die bei
- einer Vergrößerung dieser Projektion entstehen
- könnten, wird gleich ein möglichst großer
- Speicherbereich benutzt. Dies kann man sehr schön im
- Sourcecode sehen: Die Längenangabe beim Aufruf von
- &man.mmap.2; ist <literal>0x10000000</literal>, ein
- sechzehntel des Adressraums bei IA32, oder genau
- 256&nbsp;MByte.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="unsetting-schg">
- <para>Warum kann ich das Dateiattribut
- <literal>schg</literal> nicht löschen?</para>
- </question>
-
- <answer>
- <para>Sie betreiben Ihr System mit einer erhöhten
- Sicherheitsstufe. Senken Sie die Sicherheitsstufe und
- versuchen Sie es dann noch einmal. Weitere Informationen
- erhalten Sie im <link linkend="securelevel">FAQ Eintrag
- über Sicherheitsstufen</link> und in der Online-Hilfe
- &man.init.8;.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ssh-shosts">
- <para>Warum funktioniert die <filename>.shosts</filename>
- Authentifizierung von <application>SSH</application> in neueren
- Versionen von &os; nicht mehr?</para>
- </question>
-
- <answer>
- <para>Die <filename>.shosts</filename>
- Authentifizierung funktioniert nicht mehr, weil
- &man.ssh.1; in neueren Versionen von &os; nicht mehr
- SUID-<username>root</username> installiert wird. Um dieses
- Problem zu <quote>lösen</quote>, gibt es die folgenden
- Möglichkeiten:</para>
-
- <itemizedlist>
- <listitem>
- <para>Um das Problem für immer zu lösen,
- müssen Sie in <filename>/etc/make.conf</filename>
- die Variable <makevar>ENABLE_SUID_SSH</makevar> auf
- <literal>true</literal> setzen und danach &man.ssh.1; neu
- übersetzen (oder <command>make
- <maketarget>world</maketarget></command>) ausführen.</para>
- </listitem>
-
- <listitem>
- <para>Übergangsweise können Sie auch die
- Dateirechte von <filename>/usr/bin/ssh</filename> auf
- <literal>4555</literal> setzen, indem Sie den Befehl
- <command>chmod 4555 /usr/bin/ssh</command> als
- <username>root</username> ausführen. Fügen
- Sie anschließend
- <literal><makevar>ENABLE_SUID_SSH</makevar> =true</literal> in
- die Datei <filename>/etc/make.conf</filename> ein, damit diese
- Änderung erhalten bleibt, wenn Sie das nächste Mal
- <command>make <maketarget>world</maketarget></command>
- ausführen.</para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="vnlru">
- <para>Was ist <literal>vnlru</literal>?</para>
- </question>
-
- <answer>
- <para><literal>vnlru</literal> schreibt vnodes auf Platte
- und gibt sie wieder frei, falls das System die Grenzwert
- <varname>kern.maxvnodes</varname> erreicht. Dieser Thread
- des Kernel tut meistens gar nichts und wird nur aktiv,
- wenn Sie extrem viel RAM haben und gleichzeitig auf viele
- zehntausende kleine Dateien zugreifen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="top-memory-states">
- <para>Was bedeuten die Zustände, die
- <command>top</command> für Speicherseiten ausgibt?</para>
- </question>
- <!-- Provided by John Dyson via Usenet -->
- <answer>
- <para>Speicherseiten werden vom Kernel in
- verschiedenen Listen verwaltet:</para>
-
- <itemizedlist>
- <listitem><para><literal>Active</literal>: Seiten, die vor
- Kurzem benutzt wurden.</para></listitem>
-
- <listitem><para><literal>Inactive</literal>: Seiten, die
- länger nicht benutzt wurden.</para></listitem>
-
- <listitem><para><literal>Cache</literal>: Meistens
- Seiten, die vorher im Zustand <literal>Inactive</literal>
- waren und noch gültige Daten enthalten. Diese
- Seiten können sofort in ihrem alten Kontext oder
- in einem neuen Kontext verwendet werden. Wenn eine
- Seite unverändert
- (<literal>clean</literal>) ist, kann
- ein Zustandswechsel direkt von <literal>Active</literal>
- nach <literal>Cache</literal> erfolgen.
- Ob dieser Zustandswechsel möglich ist, wird durch
- die Seitenersetzungsstrategie bestimmt, die der
- Entwickler des VM-Systems festgelegt hat.</para></listitem>
-
- <listitem><para><literal>Free</literal>: Seiten, die
- keine Daten enthalten. Diese Seiten können
- sofort benutzt werden, wenn Seiten im Zustand
- <literal>Cache</literal> nicht benutzt werden
- können. Seiten im Zustand <literal>Free</literal>
- können auch während eines Interrupts
- angefordert werden.</para></listitem>
-
- <listitem><para><literal>Wired</literal>: Seiten, die
- fest im Speicher liegen und nicht ausgelagert werden
- können. Normalerweise werden solche Seiten vom
- Kernel benutzt, manchmal werden Sie aber auch für
- spezielle Zwecke von Prozessen verwendet.</para></listitem>
- </itemizedlist>
-
- <para>Seiten im Zustand <literal>Inactive</literal>
- werden oft auf Plattenspeicher geschrieben (sozusagen
- ein <command>sync</command> des VM-Systems). Wenn
- die CPU erkennen kann, das eine Seite unmodifiziert
- (<literal>clean</literal>) ist, kann
- auch eine <literal>Active</literal>-Seite auf den
- Plattenspeicher ausgeschrieben werden. In bestimmten
- Situationen ist es von Vorteil, wenn ein Block von
- VM-Seiten, unabhängig von seinem Zustand,
- ausgeschrieben werden kann. Die
- <literal>Inactive</literal>-Liste enthält wenig
- benutzte Seiten, die ausgeschrieben werden könnten.
- Seiten im Zustand <literal>Cached</literal> sind
- schon ausgeschrieben und stehen Prozessen für
- die Verwendung im alten oder in einem neuen Kontext
- zur Verfügung. Seiten im Zustand
- <literal>Cache</literal> sind nicht ausreichend
- geschützt und können während Unterbrechungen
- nicht benutzt werden.</para>
-
- <para>Die eben beschriebene Behandlung von Speicherseiten
- kann durch weitere Zustände (wie das
- das Busy-Flag) verändert werden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="free-memory-amount">
- <para>Wie viel freien Speicher hat mein System?</para>
- </question>
- <!-- Provided by John Dyson via Usenet -->
- <answer>
- <para>Es gibt verschiedene Arten von <quote>freiem
- Speicher</quote>. Eine Art ist die Speichermenge,
- die sofort, ohne etwas auszulagern, zur Verfügung
- steht. Der gesamte <acronym>VM</acronym>-Bereich
- ist eine weitere Art des <quote>freien Speichers</quote>.
- Die Betrachtung ist komplex, hängt aber von
- der Größe des Swap-Bereichs und der
- Größe des Arbeitsspeichers ab. Es gibt
- weitere Definitionen für <quote>freien Speicher</quote>,
- die aber alle relativ nutzlos sind. Wichtig ist
- hingegen, dass wenig Seiten ausgelagert
- werden (<foreignphrase>paging</foreignphrase>) und der
- Swap-Bereich ausreichend groß ist.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="var-empty">
- <para>Ich kann <filename class="directory">/var/empty</filename>
- nicht löschen!</para>
- </question>
- <answer>
- <para>Das Verzeichnis <filename
- class="directory">/var/empty</filename> wird von &man.sshd.8;
- benötigt, wenn es mit <quote>Privilege Separation</quote>
- läuft. Das Verzeichnis <filename
- class="directory">/var/empty</filename> ist
- leer, gehört <username>root</username> und
- ist durch das Dateiattribut <literal>schg</literal>
- geschützt.</para>
-
- <para>Wir empfehlen Ihnen, das Verzeichnis zu belassen.
- Sollten Sie es aber trotzdem löschen wollen,
- müssen Sie zuerst das <literal>schg</literal>-Attribut
- entfernen. Schauen Sie sich dazu die Hilfeseite
- &man.chflags.1; an und beachten Sie die Antwort auf
- die Frage <link
- linkend="unsetting-schg">wie das <literal>schg</literal>-Attribut
- entfernt wird.</link></para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="x">
- <title>Das X Window System und virtuelle Konsolen</title>
-
- <qandaset>
- <qandaentry>
- <question id="whatis-X">
- <para>Was ist das X Window System?</para>
- </question>
-
- <answer>
- <para>Das X Window System (oder auch nur <literal>X11</literal>)
- ist das am häufigsten verwendete
- Window System für &unix;- und &unix;-ähnliche Systeme,
- zu denen auch &os; gehört.
- Der <ulink
- url="http://en.wikipedia.org/wiki/X_Window_System_core_protocol">X&nbsp;
- Protokollstandard</ulink> wird von der
- <ulink url= "http://www.x.org/wiki/">X.org Foundation</ulink>
- definiert und liegt
- aktuell in Version 11 Release &xorg.version; vor und wird
- häufig auch nur als <literal>X11</literal> bezeichnet.</para>
-
- <para>Das X Window System wurde für viele verschiedene
- Architekturen und Betriebssysteme implementiert. Eine
- serverseitige Implementierung wird dabei als
- <literal>X-Server</literal> bezeichnet.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="running-X">
- <para>Ich möchte X benutzen, was muss ich tun?</para>
- </question>
-
- <answer>
- <para>Wenn Sie X auf einem existierenden System installieren
- wollen, sollten Sie entweder den Meta-Port
- <filename
- role="package">x11/xorg</filename> verwenden, der alle
- benötigen Komponenten baut und installiert, oder
- Sie installieren die &os; &xorg;-Pakete:</para>
-
- <screen><userinput>&prompt.root; pkg_add -r xorg</userinput></screen>
-
- <para>Es ist auch möglich, &xorg; aus &man.sysinstall.8; heraus
- zu installieren, indem Sie <guimenuitem>Configure</guimenuitem>,
- dann <guimenuitem>Distributions</guimenuitem> und anschliessend
- <guimenuitem>The X.Org Distribution</guimenuitem> aufrufen.</para>
-
- <para>Lesen Sie nach erfolgreicher Installation von &xorg; den
- Abschnitt <ulink url="&url.books.handbook;/x-config.html">X11
- konfigurieren</ulink> im &os; Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="running-X-securelevels">
- <para>Ich habe <emphasis>versucht</emphasis>, X zu starten,
- aber wenn ich <command>startx</command> eingebe, erhalte
- ich die Fehlermeldung <errorname>KDENABIO failed
- (Operation not permitted)</errorname>. Was soll ich jetzt
- machen?</para>
- </question>
-
- <answer>
- <para>Das System läuft auf einer erhöhten
- Sicherheitsstufe (<literal>securelevel</literal>).
- X kann auf einer erhöhten Sicherheitsstufe nicht
- gestartet werden, weil X dazu Schreibzugriff auf
- &man.io.4; benötigt. Lesen Sie dazu
- auch &man.init.8;.</para>
-
- <para>Die Frage ist also eigentlich, was Sie anders machen
- sollten. Sie haben zwei Möglichkeiten: Setzen Sie
- die Sicherheitsstufe wieder zurück auf 0 (die
- Einstellung erfolgt in der Regel in
- <filename>/etc/rc.conf</filename>) oder starten Sie
- &man.xdm.1; während des Starts des Systems, bevor die
- Sicherheitsstufe erhöht wird.</para>
-
- <para>Der Abschnitt <xref
- linkend="xdm-boot"/> enthält Informationen darüber, wie
- Sie &man.xdm.1; beim Start des Systems starten können.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="x-and-moused">
- <para>Warum funktioniert meine Maus unter X nicht?</para>
- </question>
-
- <answer>
- <para>Wenn Sie &man.syscons.4; (den Standard-Konsolentreiber)
- benutzen, können Sie &os; so konfigurieren,
- dass auf jedem virtuellen Bildschirm ein Mauszeiger
- unterstützt wird. Um Konflikte mit X zu vermeiden,
- unterstützt &man.syscons.4; ein virtuelles Gerät mit dem
- Namen <devicename>/dev/sysmouse</devicename>. Alle Mausbewegungen
- und Mausklicks werden in das &man.sysmouse.4; Gerät über
- &man.moused.8; geschrieben. Falls Sie Ihre Maus auf einer oder
- mehreren virtuellen Konsolen <emphasis>und</emphasis> X
- benutzen wollen, sollten Sie zunächst <xref
- linkend="moused" remap="diesen Abschnitt"/> lesen und dann
- &man.moused.8; installieren.</para>
-
- <para>Die Datei <filename>/etc/X11/xorg.conf</filename> sollte
- die folgenden Einträge enthalten:</para>
-
- <programlisting>Section "InputDevice"
- Option "Protocol" "SysMouse"
- Option "Device" "/dev/sysmouse"
-.....</programlisting>
-
- <para>Beginnend mit &xorg;&nbsp;7.4 werden Angaben im Abschnitt
- <literal>InputDevice</literal> von
- <filename>xorg.conf</filename> ignoriert. Stattdessen wird
- die automatisch detektierten Werte zurückgegriffen. Um
- das alte Verhalten zu reaktivieren, fügen Sie die
- folgende Zeile entweder in den Abschnitt
- <literal>ServerLayout</literal> oder
- <literal>ServerFlags</literal> ein:</para>
-
- <programlisting>Option "AutoAddDevices" "false"</programlisting>
-
- <para>Einige Leute ziehen es vor, unter X
- <devicename>/dev/mouse</devicename> zu benutzen. Hierzu
- sollte <devicename>/dev/mouse</devicename> nach
- <devicename>/dev/sysmouse</devicename>
- (lesen Sie &man.sysmouse.4;) gelinkt werden, indem Sie die folgende
- Zeile in <filename>/etc/devfs.conf</filename> (siehe auch
- &man.devfs.conf.5;) hinzufügen:</para>
-
- <programlisting>link sysmouse mouse</programlisting>
-
- <para>Die Verknüpfung kann durch Neustart von &man.devfs.5;
- über das folgende Kommando (als <username>root</username>)
- erzeugt werden:</para>
-
- <screen>&prompt.root; <userinput>/etc/rc.d/devfs restart</userinput></screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="x-and-wheel">
- <para>Kann ich meine Rad-Maus auch unter X benutzen?</para>
- </question>
-
- <answer>
- <para>Ja.</para>
-
- <para>Dazu müssen Sie X nur mitteilen, dass Sie eine
- Maus mit 5 Tasten haben. Dazu fügen Sie die Zeilen
- <literal>Buttons 5</literal> sowie
- <literal>ZAxisMapping 4 5</literal> in den Abschnitt
- <quote>InputDevice</quote> der Datei
- <filename>/etc/X11/xorg.conf</filename> ein. Das
- Beispiel zeigt, wie ein solcher Abschnitt aussehen
- könnte.</para>
-
- <example>
- <title>Abschnitt <quote>InputDevice</quote> für
- Rad-Mäuse in der Konfigurationsdatei von
- &xorg;</title>
-
- <programlisting>Section "InputDevice"
- Identifier "Mouse1"
- Driver "mouse"
- Option "Protocol" "auto"
- Option "Device" "/dev/sysmouse"
- Option "Buttons" "5"
- Option "ZAxisMapping" "4 5"
-EndSection </programlisting>
- </example>
-
- <example>
- <title><quote>.emacs</quote> Beispiel für
- seitenweises Blättern mit einer
- Rad-Maus (optional)</title>
-
- <programlisting>;; wheel mouse
-(global-set-key [mouse-4] 'scroll-down)
-(global-set-key [mouse-5] 'scroll-up)</programlisting>
- </example>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="no-remote-x11">
- <para>X verbietet Verbindungen von entfernten Systemen!</para>
- </question>
-
- <answer>
- <para>Aus Sicherheitsgründen verbietet der X-Server
- in der Voreinstellung Verbindungen von entfernten
- Systemen.</para>
-
- <para>Starten Sie den X-Server mit der Option
- <option>-listen_tcp</option>, wenn Sie Verbindungen von
- entfernten Systemen erlauben wollen:</para>
-
- <screen>&prompt.user;
-<userinput>startx -listen_tcp</userinput>
- </screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="virtual-console">
- <para>Was ist eine virtuelle Konsole und wie erstelle ich
- mehr?</para>
- </question>
-
- <answer>
- <para>Mit virtuellen Konsolen können Sie mehrere
- simultane Sitzungen auf einer Maschine laufen lassen, ohne
- so komplizierte Dinge wie die Einrichtung eines Netzwerkes
- oder die Benutzung von X zu benötigen.</para>
-
- <para>Wenn das System startet, wird es nach der Anzeige
- aller Bootmeldungen eine Eingabeaufforderung auf dem
- Bildschirm anzeigen. Sie können dann auf der ersten
- virtuellen Konsole Ihren Benutzernamen und das Passwort
- eingeben und anfangen, zu arbeiten (oder zu
- spielen!).</para>
-
- <para>Gelegentlich möchten Sie möglicherweise eine
- weitere Sitzung starten wollen, vielleicht, um die
- Dokumentation zu einem Programm, das Sie gerade benutzen,
- einzusehen, oder, um Ihre Mails zu lesen, während Sie
- auf das Ende einer FTP-Übertragung warten.
- Drücken Sie einfach <keycombo
- action="simul"><keycap>Alt</keycap><keycap>F2</keycap></keycombo>
- (halten Sie die <keycap>Alt</keycap>-Taste gedrückt und
- drücken Sie die Taste <keycap>F2</keycap>)
- und Sie gelangen zur Anmelde-Aufforderung auf der zweiten
- <quote>virtuellen Konsole</quote>! Wenn Sie zurück
- zur ersten Sitzung möchten, drücken Sie <keycombo
- action="simul"><keycap>Alt</keycap><keycap>F1</keycap>
- </keycombo>.</para>
-
- <para>Die Standardinstallation von &os; bietet acht
- aktivierte virtuelle Konsolen. Mit <keycombo
- action="simul"><keycap>Alt</keycap><keycap>F1</keycap></keycombo>,
- <keycombo
- action="simul"><keycap>Alt</keycap><keycap>F2</keycap></keycombo>,
- <keycombo
- action="simul"><keycap>Alt</keycap><keycap>F3</keycap></keycombo>
- und so weiter wechseln Sie zwischen diesen virtuellen
- Konsolen.</para>
-
- <para>Um mehr von ihnen zu aktivieren, editieren Sie
- <filename>/etc/ttys</filename> (siehe &man.ttys.5;) und fügen
- Einträge für <devicename>ttyv8</devicename> bis
- zu <devicename>ttyvc</devicename> nach dem Kommentar zu
- <quote>virtuellen Terminals</quote> ein:</para>
-
- <programlisting>
-# Edit the existing entry for ttyv8 in /etc/ttys and change
-# "off" to "on".
-ttyv8 "/usr/libexec/getty Pc" cons25 on secure
-ttyv9 "/usr/libexec/getty Pc" cons25 on secure
-ttyva "/usr/libexec/getty Pc" cons25 on secure
-ttyvb "/usr/libexec/getty Pc" cons25 on secure
- </programlisting>
-
- <para>Benutzen Sie so wenig oder so viele, wie Sie
- möchten. Je mehr virtuelle Terminals Sie benutzen,
- desto mehr Ressourcen werden gebraucht; das kann wichtig
- sein, wenn Sie 8&nbsp;MB RAM oder weniger besitzen. Sie
- können auch <literal>secure</literal> in
- <literal>insecure</literal> ändern.</para>
-
- <important>
- <para>Wenn Sie einen X-Server benutzen möchten,
- <emphasis>müssen</emphasis> Sie mindestens ein
- virtuelles Terminal unbenutzt (oder ausgeschaltet)
- lassen damit der Server es benutzen kann. Das
- heißt, dass Sie Pech haben, wenn Sie für
- jede Ihrer 12 Alt-Funktionstasten eine
- Anmeldeaufforderung haben möchten - Sie können
- das nur für elf von ihnen tun, wenn Sie einen
- X-Server auf derselben Maschine laufen lassen
- möchten.</para>
- </important>
-
- <para>Der einfachste Weg, eine Konsole zu deaktivieren, ist,
- sie auszuschalten. Wenn Sie zum Beispiel die oben
- erwähnte volle Zuordnung aller 12 Terminals
- hätten, müssten Sie die Einstellung
- für das virtuelle Terminal 12 von:</para>
-
- <programlisting>ttyvb "/usr/libexec/getty Pc" cons25 on secure</programlisting>
-
- <para>in:</para>
-
- <programlisting>ttyvb "/usr/libexec/getty Pc" cons25 off secure</programlisting>
-
- <para>ändern.</para>
-
- <para>Wenn Ihre Tastatur nur über zehn Funktionstasten
- verfügt, bedeutet das:</para>
-
- <programlisting>
-ttyv9 "/usr/libexec/getty Pc" cons25 off secure
-ttyva "/usr/libexec/getty Pc" cons25 off secure
-ttyvb "/usr/libexec/getty Pc" cons25 off secure
- </programlisting>
-
- <para>(Sie können diese Zeilen auch einfach
- löschen.)</para>
-
- <para>Die einfachste (und sauberste) Möglichkeit, die
- virtuellen Konsolen zu aktivieren, ist, zu rebooten. Wenn
- Sie jedoch auf keinen Fall rebooten möchten,
- können Sie auch einfach das X Window System
- herunterfahren und als <username>root</username></para>
-
- <screen>&prompt.root; <userinput>kill -HUP 1</userinput></screen>
-
- <para>ausführen.</para>
-
- <para>Es ist unbedingt erforderlich, dass Sie das X
- Window System vollständig herunterfahren, falls es
- läuft. Falls Sie es nicht tun, könnte es sein,
- dass sich ihr System nach der Eingabe des
- <command>kill</command>-Befehls aufhängt.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="vty-from-x">
- <para>Wie greife ich von X aus auf virtuelle Konsolen
- zu?</para>
- </question>
-
- <answer>
- <para>Benutzen Sie <keycombo
- action="simul"><keycap>Ctrl</keycap><keycap>Alt</keycap>
- <keycap>F<replaceable>n</replaceable></keycap>
- </keycombo>
- um auf eine virtuelle Konsole umzuschalten. Mit <keycombo
- action="simul"><keycap>Ctrl</keycap><keycap>Alt</keycap>
- <keycap>F1</keycap></keycombo> würden Sie zur ersten
- virtuellen Konsole umschalten.</para>
-
- <para>Sobald Sie auf eine virtuelle Konsole umgeschaltet
- haben, können Sie ganz normal <keycombo
- action="simul"><keycap>Alt</keycap>
- <keycap>F<replaceable>n</replaceable></keycap>
- </keycombo> benutzen, um zwischen den einzelnen virtuellen
- Konsolen umzuschalten.</para>
-
- <para>Um zu Ihrer X-Sitzung zurückzukehren, müssen
- Sie auf die virtuelle Konsole umschalten, auf der X
- läuft. Wenn Sie X über der Eingabeaufforderung
- gestartet haben (z.B. mit <command>startx</command>),
- benutzt X die nächste freie virtuelle Konsole und
- nicht die Konsole, von der es gestartet wurde. Wenn Sie
- acht aktive virtuelle Konsole haben, dann wird X die
- neunte benutzen und Sie können mit <keycombo
- action="simul"><keycap>Alt</keycap><keycap>F9</keycap></keycombo>
- umschalten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="xdm-boot">
- <para>Wie starte ich <application>XDM</application> beim
- Booten?</para>
- </question>
-
- <answer>
- <para>Es gibt zwei Denkansätze, wie
- &man.xdm.1; zu starten ist. Bei dem einen wird
- <command>xdm</command> unter Nutzung des mitgelieferten
- Beispiels über <filename>/etc/ttys</filename>
- (&man.ttys.5;) gestartet, während beim zweiten Ansatz
- <filename class="directory">rc.local</filename> (&man.rc.8;) oder
- das Skript <filename>X</filename> im Verzeichnis <filename
- class="directory">/usr/local/etc/rc.d</filename> verwendet wird.
- Beide Ansätze sind gleichwertig und der eine
- wird in Situationen funktionieren, in denen der andere es
- nicht tut. In beiden Fällen ist das Ergebnis das
- gleiche: X liefert eine graphische
- Anmeldeaufforderung.</para>
-
- <para>Die &man.ttys.5;-Methode hat den Vorteil, dass
- dokumentiert ist, auf welchem vty X gestartet wird und der
- Neustart des X-Servers beim Abmelden an &man.init.8;
- übergeben wird. Die &man.rc.8;-Methode erleichtert
- den Aufruf von <command>kill</command> <command>xdm</command>,
- falls Probleme beim Start des X-Servers auftreten sollten.</para>
-
- <para>Beim Laden von &man.rc.8; sollte <command>xdm</command>
- ohne irgendwelche Argumente (das heißt als Daemon)
- gestartet werden. Das Kommando <command>xdm</command> muss
- gestartet werden <emphasis>nachdem</emphasis> &man.getty.8;
- läuft, andernfalls entsteht ein Konflikt zwischen
- <command>getty</command> und <command>xdm</command> und die Konsole
- bleibt gesperrt. Der beste Weg, um dies zu vermeiden, ist, das
- Skript für etwa zehn Sekunden anzuhalten und dann
- <command>xdm</command> zu starten.</para>
-
- <para>Wenn Sie <command>xdm</command> durch einen Eintrag in
- <filename>/etc/ttys</filename> starten lassen, kann es zu
- einem Konflikt zwischen <command>xdm</command> und
- &man.getty.8; kommen. Um dieses Problem zu
- vermeiden, sollten Sie die Nummer des
- <literal>vt</literal> in die Datei
- <filename>/usr/local/lib/X11/xdm/Xservers</filename>
- eintragen:</para>
-
- <programlisting>:0 local /usr/local/bin/X vt4</programlisting>
-
- <para>Diese Zeile führt dazu, dass der X Server
- <devicename>/dev/ttyv3</devicename> nutzt. Die beiden Zahlen
- weichen voneinander ab: Der X-Server beginnt die
- Zählung der vty bei 1, während der
- &os;-Kernel bei 0 beginnt.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="xconsole-failure">
- <para>Wieso erhalte ich die Meldung <errorname>Couldn't open
- console</errorname>, wenn ich <command>xconsole</command>
- benutze?</para>
- </question>
-
- <answer>
- <para>Wenn Sie <application>X</application> mit
- <command>startx</command> starten, werden die
- Zugriffsrechte für
- <devicename>/dev/console</devicename> leider
- <emphasis>nicht</emphasis> geändert, was dazu
- führt, dass Dinge wie <command>xterm
- -C</command> und <command>xconsole</command> nicht
- funktionieren.</para>
-
- <para>Das hängt damit zusammen, wie die Zugriffsrechte
- für die Konsole standardmäßig gesetzt
- sind. Auf einem Mehrbenutzersystem möchte man nicht
- unbedingt, dass jeder Benutzer einfach auf die
- Systemkonsole schreiben kann. Für Benutzer, die sich
- auf einer Maschine direkt mit einem VTY anmelden,
- existiert die Datei &man.fbtab.5;, um
- derartige Probleme zu lösen.</para>
-
- <para>In Kürze: sorgen Sie dafür, dass sich
- in der Datei <filename>/etc/fbtab</filename> eine nicht
- auskommentierte Zeile der folgenden Art befindet:</para>
-
- <programlisting>/dev/ttyv0 0600 /dev/console</programlisting>
-
- <para>Das sorgt dafür, dass wer auch immer sich auf
- <devicename>/dev/ttyv0</devicename> anmeldet, auch die Konsole
- besitzt.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="xfree86-root">
- <para>Früher konnte ich &xorg; als normaler User
- starten. Warum sagt mir das System jetzt, dass ich
- <username>root</username> sein muss?</para>
- </question>
-
- <answer>
- <para>Alle X-Server müssen mit der ID
- <username>root</username> laufen, um direkt auf die
- Videohardware zuzugreifen.</para>
-
- <para>Es gibt zwei Möglichkeiten, um X auch als
- normaler Benutzer starten zu können. Die erste ist
- die Verwendung von <command>xdm</command> oder eines
- ähnlichen Programms; die zweite ist die Benutzer von
- <command>Xwrapper</command>.</para>
-
- <para><command>xdm</command> ist ein ständig laufendes
- Programm, mit dem Logins über eine graphische
- Benutzeroberfläche sind. Es wird normalerweise beim
- Systemstart initialisiert und für die
- Authentifizierung der Benutzer und den Start ihrer
- Sitzungen verantwortlich. Es ist also die graphische
- Entsprechung von &man.getty.8; und &man.login.1;.
- Weitere Informationen zum Thema <command>xdm</command>
- finden Sie in der <ulink
- url="http://www.x.org/wiki/UserDocumentation">&xorg;
- Dokumentation</ulink> und dem entsprechenden <link
- linkend="xdm-boot">FAQ-Eintrag</link>.</para>
-
- <para><command>Xwrapper</command> ist eine
- <quote>Hülle</quote> für den X-Server. Mit
- diesem kleinen Utility ist es möglich, manuell den
- X-Server zu starten und weiterhin eine annehmbare
- Sicherheit zu haben. Das Tools prüft, ob die per
- Kommandozeile übergebenen Argumente halbwegs sinnvoll
- sind. Wenn dies der Fall ist, startet es den
- entsprechenden X-Server. Wenn Sie (aus welchem Grund auch
- immer) keine graphische Anmeldung wollen, ist
- <command>Xwrapper</command> die optimale Lösung.
- Wenn Sie die vollständige Ports-Sammlung installiert
- haben, finden Sie das Tool im Verzeichnis
- <filename
- role="package">x11/wrapper</filename>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ps2-x">
- <para>Warum funktioniert meine PS/2-Maus nicht richtig?</para>
- </question>
-
- <answer>
- <para>Ihre Maus und der Maustreiber sind etwas aus der
- Synchronisation geraten.</para>
-
- <para>In seltenen Fällen kann es jedoch sein,
- dass der Treiber fälschlicherweise
- Synchronisationsprobleme meldet und Sie in den
- Kernelmeldungen folgendes sehen:</para>
-
- <programlisting>psmintr: out of sync (xxxx != yyyy)</programlisting>
-
- <para>und Ihre Maus nicht richtig zu funktionieren
- scheint.</para>
-
- <para>Falls das passiert, deaktivieren Sie den Code zur
- Überprüfung der Synchronisation, indem Sie die
- Treiberangaben für den PS/2-Maustreiber auf
- <literal>0x100</literal> setzen. Rufen Sie
- <emphasis>UserConfig</emphasis> durch Angabe der Option
- <option>-c</option> am Boot-Prompt auf:</para>
-
- <screen>boot: <userinput>-c</userinput></screen>
-
- <para>Geben sie dann in der Kommandozeile von
- <emphasis>UserConfig</emphasis> folgendes ein:</para>
-
- <screen>UserConfig&gt; <userinput>flags psm0 0x100</userinput>
-UserConfig&gt; <userinput>quit</userinput></screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ps2-mousesystems">
- <para>Meine PS/2-Maus von MouseSystems scheint nicht zu
- funktionieren.</para>
- </question>
-
- <answer>
- <para>Es wurde berichtet, dass einige Modelle der
- PS/2-Mäuse von MouseSystems nur funktionieren, wenn
- sie im <quote>hochauflösenden</quote> Modus betrieben
- werden. Andernfalls springt der Mauszeiger sehr oft in
- die linke obere Ecke des Bildschirms.</para>
-
- <para>Das Flag <literal>0x04</literal> des Maustreibers bringt die
- Maus in den hochauflösenden Modus. Rufen Sie
- <emphasis>UserConfig</emphasis> durch Angabe der Option
- <option>-c</option> am Boot-Prompt auf:</para>
-
- <screen>boot: <userinput>-c</userinput></screen>
-
- <para>Geben sie dann in der Kommandozeile von
- <emphasis>UserConfig</emphasis> folgendes ein:</para>
-
- <screen>UserConfig&gt; <userinput>flags psm0 0x04</userinput>
-UserConfig&gt; <userinput>quit</userinput></screen>
-
- <para>Lesen Sie den vorigen Abschnitt über eine andere
- mögliche Ursache für Probleme mit der
- Maus.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="mouse-button-reverse">
- <para>Wie vertausche ich die Maustasten?</para>
- </question>
-
- <answer>
- <para>Benutzen Sie den Befehl <command>xmodmap -e "pointer =
- 3 2 1"</command> in Ihrer <filename>.xinitrc</filename>
- oder <filename>.xsession</filename>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="install-splash">
- <para>Wie installiere ich einen Splash-Screen und wo finde
- ich sie?</para>
- </question>
-
- <answer>
- <para>Die detaillierte Antwort auf diese Frage können Sie im
- Abschnitt <ulink
- url="&url.books.handbook;/boot-blocks.html#BOOT-SPLASH">Splash-Screens
- während des Systemstarts</ulink> des Handbuchs
- nachlesen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="windows-keys">
- <para>Kann ich die <keycap>Windows</keycap>-Tasten unter X
- benutzen?</para>
- </question>
-
- <answer>
- <para>Ja, Sie müssen lediglich mit &man.xmodmap.1;
- festlegen, welche Aktion diese Tasten auslösen
- sollen.</para>
-
- <para>Unter der Annahme, dass alle <quote>Windows</quote>
- Tastaturen dem Standard entsprechen, lauten die Keycodes
- für die drei Tasten wie folgt:</para>
-
- <itemizedlist>
- <listitem>
- <para><keycode>115</keycode> - <keycap>Windows</keycap>-Taste
- zwischen den <keycap>Ctrl</keycap>- und
- <keycap>Alt</keycap>-Tasten auf der linken Seite</para>
- </listitem>
-
- <listitem>
- <para><keycode>116</keycode> - <keycap>Windows</keycap>-Taste
- rechts von der <keycap>AltGr</keycap>-Taste</para>
- </listitem>
-
- <listitem>
- <para><keycode>117</keycode> - <keycap>Menü</keycap>-Taste,
- links von der rechten <keycap>Strg</keycap>-Taste</para>
- </listitem>
- </itemizedlist>
-
- <para>Nach der folgenden Anweisung erzeugt die linke
- <keycap>Windows</keycap>-Taste ein Komma.</para>
-
- <screen>&prompt.root; <userinput>xmodmap -e "keycode 115 = comma"</userinput></screen>
-
- <para>Sie werden Ihren Window Manager wahrscheinlich neu
- starten müssen, damit diese Einstellung wirksam
- wird.</para>
-
- <para>Um die neue Belegung der <keycap>Windows</keycap>-Tasten
- automatisch beim Start von X zu erhalten, könnten Sie
- entsprechende <command>xmodmap</command> Anweisungen in
- ihre <filename>~/.xinitrc</filename> einfügen. Die
- bevorzugte Variante ist aber, eine Datei mit dem Namen
- <filename>~/.xmodmaprc</filename> zu erzeugen, die nur die
- Parameter für den Aufruf von
- <command>xmodmap</command> enthält. Wenn Sie mehrere
- Tasten umdefinieren wollen, muss jede Definition in
- eine eigene Zeile gesetzt werden. Weiterhin müssen
- Sie in Ihrer <filename>~/.xinitrc</filename> noch die
- folgende Zeile einfügen:</para>
-
- <programlisting>xmodmap $HOME/.xmodmaprc</programlisting>
-
- <para>Sie könnten die drei Tasten zum Beispiel mit den
- Funktionen <keycap>F13</keycap>, <keycap>F14</keycap> und
- <keycap>F15</keycap> belegen. Dadurch ist es sehr
- einfach, diese Tasten mit nützlichen Funktionen eines
- Programmes oder Desktops zu verknüpfen.</para>
-
- <para>Falls Sie das auch tun wollen, sollten in Ihrer
- <filename>~/.xmodmaprc</filename> die folgenden
- Anweisungen stehen.</para>
-
- <programlisting>
-keycode 115 = F13
-keycode 116 = F14
-keycode 117 = F15
- </programlisting>
-
- <para>Falls Sie zum Beispiel den <filename
- role="package">x11-wm/fvwm2</filename> Port benutzen, können
- Sie ihn so einstellen, dass <keycap>F13</keycap> das Fenster unter
- dem Mauszeiger minimiert bzw. maximiert. <keycap>F14</keycap> holt
- das Fenster unter dem Mauszeiger in den Vordergrund bzw.
- ganz nach hinten, wenn es bereits im Vordergrund ist.
- <keycap>F15</keycap> öffnet das Arbeitsplatz
- (Programme) Menü, auch wenn der Cursor nicht auf den
- Hintergrund zeigt. Dies ist extrem praktisch, wenn der
- gesamte Bildschirm von Fenster belegt wird; als kleiner
- Bonus gibt es sogar einen Zusammenhang zwischen dem Symbol
- auf der Taste und der durchgeführten Aktion.</para>
-
- <para>Dieses Verhalten kann man mit den folgenden
- Einträgen in der Datei <filename>~/.fvwmrc</filename>
- erhalten:</para>
-
- <programlisting>
-Key F13 FTIWS A Iconify
-Key F14 FTIWS A RaiseLower
-Key F15 A A Menu Workplace Nop
- </programlisting>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="x-3d-acceleration">
- <para>Wird 3D Hardware Beschleunigung für &opengl;
- unterstützt?</para>
- </question>
-
- <answer>
- <para>Dies hängt davon ab, welche Version von &xorg; und welche
- Grafikkarte Sie verwenden. Wenn Sie eine Karte mit NVIDIA-Chipsatz
- besitzen, benutzen Sie die binären Treiber für &os;,
- indem Sie einen der folgenden Ports installieren:</para>
-
- <itemizedlist>
- <listitem>
- <para>Die aktuelle Version von NVIDIA-Karten wird durch den Port
- <filename
- role="package">x11/nvidia-driver</filename>
- unterstützt.</para>
- </listitem>
- <listitem>
- <para>NVIDIA Karten wie die GeForce2&nbsp;MX/3/4 Serie wird durch
- die 96XX Treiber unterstützt, die im <filename
- role="package">x11/nvidia-driver-96xx</filename> Port
- bereitgestellt werden.</para>
- </listitem>
- <listitem>
- <para>Sogar ältere Karten wie die GeForce und RIVA&nbsp;TNT
- sind durch die 71XX Treiberserie verfügbar, die im Port
- <filename
- role="package">x11/nvidia-driver-71xx</filename> enthalten
- ist.</para>
- </listitem>
- </itemizedlist>
-
- <para>Tatsächlich liefert NVIDIA detaillierte Informationen
- darüber, welche Karte von welchem Treiber unterstützt
- wird. Diese Information finden Sie auf der Website von NVIDIA:
- <ulink
- url="http://www.nvidia.com/object/IO_32667.html"></ulink>.</para>
-
- <para>Für Matrox&nbsp;G200/400 sehen Sie sich den Port <filename
- role="package">x11-servers/mga_hal</filename> an.</para>
-
- <para>Bei ATI&nbsp;Rage&nbsp;128 und Radeon lesen Sie die
- Anleitungen &man.ati.4x;, &man.r128.4x; und &man.radeon.4x;.</para>
-
- <para>Fü 3dfx Vodoo&nbsp;3, 4, 5 und Banshee Karten gibt es einen
- <filename
- role="package">x11-servers/driglide</filename> Port.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="networking">
- <title>Netzwerke</title>
-
- <qandaset>
- <qandaentry>
- <question id="diskless-booting">
- <para>Woher kann ich Informationen über <quote>Diskless
- Booting</quote> bekommen?</para>
- </question>
-
- <answer>
- <para><quote>Diskless Booting</quote> bedeutet, dass
- die &os;-Maschine über ein Netzwerk gebootet wird
- und die notwendigen Dateien von einem Server anstatt von
- der Festplatte liest. Vollständige Details finden
- Sie im <ulink
- url="&url.books.handbook;/network-diskless.html">Handbucheintrag
- über den plattenlosen Betrieb</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="router">
- <para>Kann eine &os;-Maschine als Netzwerkrouter genutzt
- werden?</para>
- </question>
-
- <answer>
- <para>Ja. Genaue Informationen zu diesem Thema finden Sie
- im Abschnitt
- <ulink url="&url.books.handbook;/network-routing.html">
- Gateways und Routen</ulink> des Handbuchkapitels
- <ulink url="&url.books.handbook;/advanced-networking.html">
- Weiterführende Netzwerkthemen</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="win95-connection">
- <para>Kann ich meine &windows;-Maschine über &os; ans
- Internet anbinden?</para>
- </question>
-
- <answer>
- <para>Personen, die diese Frage stellen, haben
- typischerweise zwei PCs zu Hause: einen mit &os; und
- einen mit einer &windows;-Variante. Die Idee ist, die
- &os;-Maschine an das Internet anzubinden, um in der
- Lage zu sein, von der &windows;-Maschine über die
- &os;-Maschine auf das Internet zuzugreifen. Das
- ist tatsächlich nur ein Spezialfall der vorherigen
- Frage.</para>
-
- <para>Das User-Mode &man.ppp.8; von &os; kennt die Option
- <option>-nat</option>. Wenn Sie &man.ppp.8; mit der Option
- <option>-nat</option> starten, in
- <filename>/etc/rc.conf</filename> die Variable
- <literal>gateway_enable</literal> auf
- <literal>YES</literal> setzen und Ihre &windows;-Maschine
- korrekt konfigurieren, sollte das hervorragend
- funktionieren. Weitere Informationen erhalten Sie
- in der Hilfeseite &man.ppp.8; oder im
- <ulink url="&url.books.handbook;/userppp.html">Abschnitt
- User-PPP des Handbuchs</ulink>.</para>
-
- <para>Wenn Sie Kernel-Mode PPP verwenden oder ihre
- Verbindung zum Internet über Ethernet erstellt
- wurde, müssen Sie &man.natd.8; verwenden. Weitere
- Informationen dazu finden Sie im <ulink
- url="&url.books.handbook;/network-natd.html">natd-Abschnitt</ulink>
- des Handbuchs.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="slip-ppp-support">
- <para>Unterstützt &os; SLIP und PPP?</para>
- </question>
-
- <answer>
- <para>Ja. Lesen Sie die Manualpages &man.slattach.8;,
- &man.sliplogin.8;, &man.pppd.8; und &man.ppp.8;.
- &man.ppp.8; und &man.pppd.8; liefern Unterstützung
- sowohl für eingehende, als auch ausgehende
- Verbindungen. &man.sliplogin.8; behandelt
- ausschließlich eingehende Verbindungen und
- &man.slattach.8; behandelt ausschließlich ausgehende
- Verbindungen.</para>
-
- <para>Diese Programme werden im Abschnitt <ulink
- url="&url.books.handbook;/ppp-and-slip.html">PPP und SLIP</ulink>
- des Handbuchs beschrieben.</para>
-
- <para>Falls Sie nur durch einen <quote>Shell-Account</quote>
- Zugang zum Internet haben, sehen Sie sich einmal das
- Package <filename
- role="package">net/slirp</filename> an.
- Es kann Ihnen (eingeschränkten) Zugang zu Diensten
- wie ftp und http direkt von Ihrer lokalen Maschine aus
- ermöglichen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="natd">
- <para>Unterstützt &os; NAT oder Masquerading?</para>
- </question>
-
- <answer>
- <para>Ja. Wenn Sie NAT über eine User-PPP-Verbindung
- einsetzen wollen, lesen Sie bitte den <ulink
- url="&url.books.handbook;/userppp.html">User-PPP Abschnitt</ulink>
- des Handbuchs. Wollen Sie NAT über eine andere
- Verbindung einsetzen, lesen Sie bitte den <ulink
- url="&url.books.handbook;/network-natd.html">NATD-Abschnitt</ulink>
- des Handbuchs.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="parallel-connect">
- <para>Wie verbinde ich zwei &os;-Maschinen mit PLIP
- über die parallele Schnittstelle?</para>
- </question>
-
- <answer>
- <para>Dieses Thema wird im Handbuch-Kapitel <ulink
- url="&url.books.handbook;/network-plip.html">PLIP</ulink>
- behandelt.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ethernet-aliases">
- <para>Wie kann ich Ethernet-Aliase einrichten?</para>
- </question>
-
- <answer>
- <para>Wenn sich die zweite Adresse im gleichen Subnetz
- befindet wie eine der Adressen, die bereits auf dem
- Interface konfiguriert sind, benutzen Sie <literal>netmask
- 0xffffffff</literal> in Ihrer &man.ifconfig.8;
- Befehlszeile, wie z.B.:</para>
-
- <screen>&prompt.root; <userinput>ifconfig <replaceable>ed0</replaceable> alias <replaceable>192.0.2.2</replaceable> netmask 0xffffffff</userinput></screen>
-
- <para>Andernfalls geben sie die Adresse und die Netzmaske so
- an, wie sie es bei einem normalen Interface auch tun
- würden:</para>
-
- <screen>&prompt.root; <userinput>ifconfig <replaceable>ed0</replaceable> alias <replaceable>172.16.141.5</replaceable> netmask 0xffffff00</userinput></screen>
-
- <para>Sie können mehr darüber im &os; <ulink
- url="&url.books.handbook;/configtuning-virtual-hosts.html">Handbuch</ulink>
- nachlesen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="port-3c503">
- <para>Wie bringe ich meine 3C503 dazu, den anderen
- Anschluss zu benutzen?</para>
- </question>
-
- <answer>
- <para>Wenn Sie die anderen Anschlüsse benutzen
- möchten, müssen Sie einen zusätzlichen
- Parameter in der &man.ifconfig.8;-Befehlszeile
- spezifizieren. Der Standard-Anschluss ist
- <literal>link0</literal>. Um den AUI-Anschluss
- anstelle des BNC-Anschlusses zu verwenden, benutzen Sie
- <literal>link2</literal>. Diese Angaben sollten durch
- Benutzung der Variablen ifconfig_* in der Datei
- <filename>/etc/rc.conf</filename> spezifiziert
- werden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="nfs">
- <para>Warum habe ich Probleme mit NFS und &os;?</para>
- </question>
-
- <answer>
- <para>Gewisse PC-Netzwerkkarten sind (um es gelinde
- auszudrücken) besser als andere und können
- manchmal Probleme mit netzwerkintensiven Anwendungen wie
- NFS verursachen.</para>
-
- <para>Weitere Informationen zu diesem Thema finden Sie <ulink
- url="&url.books.handbook;/network-nfs.html">im Handbucheintrag zu
- NFS</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="nfs-linux">
- <para>Warum kann ich per NFS nicht von einer &linux;-Maschine
- mounten?</para>
- </question>
-
- <answer>
- <para>Einige Versionen des NFS-Codes von &linux; akzeptieren
- Mount-Requests nur von einem privilegierten Port.
- Versuchen Sie den folgenden Befehl:</para>
-
- <screen>&prompt.root; <userinput>mount -o -P <replaceable>linuxbox:/blah</replaceable> <replaceable>/mnt</replaceable></userinput></screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="nfs-sun">
- <para>Warum kann ich per NFS nicht von einer &sun;-Maschine
- mounten?</para>
- </question>
-
- <answer>
- <para>Sun Workstations mit
- &sunos;&nbsp;4.<replaceable>X</replaceable> akzeptieren
- Mount-Requests nur von einem privilegierten Port.
- Versuchen Sie dieses Kommando:</para>
-
- <screen>&prompt.root; <userinput>mount -o -P <replaceable>sunbox:/blah</replaceable> <replaceable>/mnt</replaceable></userinput></screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="exports-errors">
- <para>Warum meldet mir <command>mountd</command> auf meinem
- &os; NFS-Server ständig <errorname>can't change
- attributes</errorname> und <errorname>bad exports
- list</errorname>?</para>
- </question>
-
- <answer>
- <para>Die häufigste Ursache für dieses Problem
- ist, dass Sie den Aufbau der &man.exports.5; nicht
- oder nicht richtig verstanden haben. Überprüfen
- Sie Ihre &man.exports.5; und lesen das Kapitel <ulink
- url="&url.books.handbook;/network-nfs.html">NFS</ulink> im
- Handbuch, speziell den Abschnitt <ulink
- url="&url.books.handbook;/network-nfs.html#CONFIGURING-NFS">
- Konfiguration</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-nextstep">
- <para>Warum habe ich Probleme, per PPP mit NeXTStep-Maschinen zu
- kommunizieren?</para>
- </question>
-
- <answer>
- <para>Versuchen Sie, die TCP-Erweiterung in
- <filename>/etc/rc.conf</filename> zu deaktivieren, indem
- Sie die folgende Variable auf <literal>NO</literal> setzen:</para>
-
- <programlisting>tcp_extensions=NO</programlisting>
-
- <para>Xylogic's Annex-Maschinen arbeiten hier auch
- fehlerhaft und Sie müssen die obige Änderung
- benutzen, um über Sie Verbindungen
- herzustellen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ip-multicast">
- <para>Wie aktiviere ich die Unterstützung für
- IP-Multicast?</para>
- </question>
-
- <answer>
- <para>Multicast-Host-Funktionen werden standardmäßig
- von &os; unterstützt. Wenn Sie Ihre Maschine als
- Multicast-Router betreiben wollen, müssen Sie Ihren Kernel mit
- der Option <literal>MROUTING</literal> neu kompilieren und
- &man.mrouted.8; starten. Wenn Sie die Variable
- <literal>mrouted_enable</literal> in der Datei
- <filename>/etc/rc.conf</filename> auf
- <literal>YES</literal> setzen, wird &man.mrouted.8;
- während des &os;-Systemstarts automatisch gestartet.</para>
-
- <note>
- <para>In aktuellen Versionen von &os; sind die Programme
- &man.mrouted.8;, der Multicast Routing Dienst, &man.map-mbone.8;
- und &man.mrinfo.8; nicht mehr im Basissystem enthalten. In der
- &os; Ports-Sammlung sind diese Programme unter <filename
- role="package">net/mrouted</filename> erhältlich.</para>
- </note>
-
- <para>MBONE-Tools sind in ihrer eigenen Ports-Kategorie
- <ulink
- url="http://www.FreeBSD.org/ports/mbone.html">mbone</ulink>
- verfügbar. Schauen Sie dort nach, wenn Sie die
- Konferenztools <command>vic</command> und
- <command>vat</command> suchen!</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="dec-pci-chipset">
- <para>Welche Netzwerkkarten basieren auf dem
- DEC-PCI-Chipsatz?</para>
- </question>
-
- <answer>
- <para>Hier ist eine von Glen Foster
- <email>gfoster@driver.nsta.org</email> zusammengetragene
- Liste mit einigen aktuellen Ergänzungen:</para>
-
- <table>
- <title>Netzwerkkarten mit DEC-PCI-Chipsatz</title>
-
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Vendor</entry>
-
- <entry>Model</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>ASUS</entry>
-
- <entry>PCI-L101-TB</entry>
- </row>
-
- <row>
- <entry>Accton</entry>
-
- <entry>ENI1203</entry>
- </row>
-
- <row>
- <entry>Cogent</entry>
-
- <entry>EM960PCI</entry>
- </row>
-
- <row>
- <entry>Compex</entry>
-
- <entry>ENET32-PCI</entry>
- </row>
-
- <row>
- <entry>D-Link</entry>
-
- <entry>DE-530</entry>
- </row>
-
- <row>
- <entry>Dayna</entry>
-
- <entry>DP1203, DP2100</entry>
- </row>
-
- <row>
- <entry>DEC</entry>
-
- <entry>DE435, DE450</entry>
- </row>
-
- <row>
- <entry>Danpex</entry>
-
- <entry>EN-9400P3</entry>
- </row>
-
- <row>
- <entry>JCIS</entry>
-
- <entry>Condor JC1260</entry>
- </row>
-
- <row>
- <entry>Linksys</entry>
-
- <entry>EtherPCI</entry>
- </row>
-
- <row>
- <entry>Mylex</entry>
-
- <entry>LNP101</entry>
- </row>
-
- <row>
- <entry>SMC</entry>
-
- <entry>EtherPower 10/100 (Modell 9332)</entry>
- </row>
-
- <row>
- <entry>SMC</entry>
-
- <entry>EtherPower (Model 8432)</entry>
- </row>
-
- <row>
- <entry>TopWare</entry>
-
- <entry>TE-3500P</entry>
- </row>
-
- <row>
- <entry>Znyx (2.2.X)</entry>
-
- <entry>ZX312, ZX314, ZX342, ZX345, ZX346,
- ZX348</entry>
- </row>
-
- <row>
- <entry>Znyx (3.X)</entry>
-
- <entry>ZX345Q, ZX346Q, ZX348Q, ZX412Q, ZX414, ZX442,
- ZX444, ZX474, ZX478, ZX212, ZX214
- (10mbps/hd)</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="fqdn-hosts">
- <para>Warum muss ich für Hosts auf meiner Site den
- FQDN benutzen?</para>
- </question>
-
- <answer>
- <para>Lesen Sie die Antwort im &os; <ulink
- url="&url.books.handbook;/mail-trouble.html">Handbook</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="network-permission-denied">
- <para>Wieso erhalte ich bei allen Netzwerkoperationen die
- Meldung <errorname>Permission denied</errorname>?</para>
- </question>
-
- <answer>
- <para>Dieses Problem kann auftreten, wenn Sie einen Kernel
- mit der Option <literal>IPFIREWALL</literal> erstellt
- haben. In der Voreinstellung werden alle Pakete, die
- nicht explizit erlaubt wurden, blockiert.</para>
-
- <para>Falls sie Ihr System unbeabsichtigt als Firewall
- konfiguriert haben, können Sie die
- Netzwerkfunktionalität wiederherstellen, indem Sie
- als <username>root</username> folgendes eingeben:</para>
-
- <screen>&prompt.root; <userinput>ipfw add 65534 allow all from any to any</userinput></screen>
-
- <para>Sie können in <filename>/etc/rc.conf</filename>
- auch <literal>firewall_type="open"</literal>
- setzen.</para>
-
- <para>Weitere Informationen über die Konfiguration
- einer &os;-Firewall finden Sie im Kapitel <ulink
- url="&url.books.handbook;/firewalls.html">Firewalls</ulink>
- des Handbuchs.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ipfw-fwd">
- <para>Warum kann ich bei &man.ipfw.8; einen Dienst nicht mit
- <quote>fwd</quote> auf eine andere Maschine umlenken?</para>
- </question>
-
- <answer>
- <para>Der wahrscheinlichste Grund ist, dass Sie Network
- Address Translation (NAT) brauchen und nicht die einfache
- Weiterleitung von Pakete. Die <quote>fwd</quote>
- Anweisung macht genau das, was da steht: Sie leitet
- Pakete weiter; die Daten in den Paketen werden aber nicht
- verändert. Ein Beispiel:</para>
-
- <screen>01000 fwd <replaceable>10.0.0.1</replaceable> from any to <replaceable>foo 21</replaceable></screen>
-
- <para>Wenn ein Paket mit dem Ziel
- <replaceable>foo</replaceable> die Maschine mit dieser
- Regel erreicht, wird das Paket an
- <replaceable>10.0.0.1</replaceable> weitergeleitet; die
- Zieladresse im Paket lautet aber immer noch
- <replaceable>foo</replaceable>! Die Zieladresse wird
- <emphasis>nicht</emphasis> in
- <replaceable>10.0.0.1</replaceable> geändert. Die
- meisten Rechner werden allerdings Pakete verwerfen, wenn
- die Zieladresse des Paketes nicht mit der Adresse des
- Rechners übereinstimmt. Das ist der Grund, warum
- eine <quote>fwd</quote> Regel oft nicht den Effekt hat,
- den der Benutzer wollte. Dieses Verhalten ist aber kein
- Fehler, sondern erwünscht.</para>
-
- <para>Wenn Sie einen Dienst auf eine andere Maschine
- umleiten wollen, sollten Sie sich den <link
- linkend="service-redirect">FAQ-Eintrag über die
- Umleitung von Diensten</link> oder die Online-Hilfe zu
- &man.natd.8; durchlesen. Auch in der <ulink
- url="&url.base;/de/ports/index.html">Ports Sammlung</ulink> sind diverse
- Hilfsprogramme für diesen Zweck enthalten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="service-redirect">
- <para>Wie kann ich Service-Requests von einer Maschine auf
- eine andere umleiten?</para>
- </question>
-
- <answer>
- <para>Sie können FTP-Requests (und andere Dienste) mit
- dem Port <filename
- role="package">sysutils/socket</filename> umleiten. Ersetzen sie
- die Befehlszeile für den Dienst einfach so, dass stattdessen
- <command>socket</command> aufgerufen wird, zum Beispiel so:</para>
-
- <programlisting>ftp stream tcp nowait nobody /usr/local/bin/socket socket <replaceable>ftp.example.com</replaceable> <replaceable>ftp</replaceable></programlisting>
-
- <para>wobei <replaceable>ftp.example.com</replaceable> und
- <replaceable>ftp</replaceable> entsprechend der Host und
- der Port sind, wohin umgeleitet werden soll.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="bandwidth-mgr-tool">
- <para>Woher kann ich ein Bandbreiten-Managementtool bekommen?</para>
- </question>
-
- <answer>
- <para>Für &os; gibt es drei
- Bandbreiten-Managementtools. &man.dummynet.4; ist als
- Teil von &man.ipfw.4; in &os; integriert.
- <ulink
- url="http://www.sonycsl.co.jp/person/kjc/programs.html">ALTQ</ulink>
- ist in &os; Bestandteil von &man.pf.4;. Bei Bandwidth Manager von
- <ulink
- url="http://www.etinc.com/">Emerging Technologies</ulink>
- handelt es sich hingegen um ein kommerzielles Produkt.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="bpf-not-configured">
- <para>Warum erhalte ich die Meldung <errorname>/dev/bpf0:
- device not configured</errorname>?</para>
- </question>
-
- <answer>
- <para>Der Berkeley-Paket-Filter (&man.bpf.4;) muss in
- den Kernel eingebunden werden, bevor er von einem
- Programme aus genutzt werden kann. Fügen Sie
- folgendes zu Ihrer Kernelkonfigurationsdatei hinzu und
- erstellen Sie einen neuen Kernel:</para>
-
- <programlisting>device bpf # Berkeley Packet Filter</programlisting>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="mount-smb-share">
- <para>Habe ich, analog zum smbmount von &linux;, eine
- Möglichkeit, auf ein freigegebenes Laufwerk einer
- &windows;-Maschine in meinem Netzwerk zuzugreifen?</para>
- </question>
-
- <answer>
- <para>Benutzen Sie die Kernel-Erweiterungen und Benutzerprogramme
- aus dem Programmpaket <application>SMBFS</application>. Das
- Paket und weitergehende Informationen sind unter
- &man.mount.smbfs.8; im Basissystem verfügbar.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="icmp-response-bw-limit">
- <para>Was bedeutet die Meldung
- <errorname>Limiting icmp/open port/closed port response</errorname>
- in meinen Logfiles?</para>
- </question>
-
- <answer>
- <para>Mit dieser Meldung teilt Ihnen der Kernel mit,
- dass irgend jemand versucht, ihn zur Generierung von
- zu vielen ICMP oder TCP reset (RST) Antworten zu
- provozieren. ICMP Antworten sind oft das Ergebnis von
- Verbindungsversuchen zu unbenutzten UDP Ports. TCP Resets
- werden generiert, wenn jemand versucht, eine Verbindung zu
- einem ungenutzten TCP Port aufzubauen. Die Meldungen
- können unter anderem durch die folgenden Ereignisse
- ausgelöst werden:</para>
-
- <itemizedlist>
- <listitem>
- <para>Denial of Service (DoS) Angriffe mit der
- Brechstange (und nicht durch Angriffe mit einzelnen
- Paketen, die gezielt eine Schwachstelle des Systems
- ausnutzen sollen).</para>
- </listitem>
-
- <listitem>
- <para>Port Scans, bei denen versucht wird, Verbindungen
- zu einer großen Anzahl von Ports (und nicht nur
- einigen bekannten Ports) herzustellen.</para>
- </listitem>
- </itemizedlist>
-
- <para>Die erste Zahl gibt an, wie viele Pakete vom Kernel
- ohne das Limit versendet worden wären; die zweite
- Zahl gibt das Limit an. Sie können das Limit mit
- Hilfe der sysctl-Variable
- <varname>net.inet.icmp.icmplim</varname> einstellen. Im
- Beispiel wird das Limit auf <literal>300</literal> Pakete
- pro Sekunde gesetzt:</para>
-
- <screen>&prompt.root; <userinput>sysctl -w net.inet.icmp.icmplim=300</userinput></screen>
-
- <para>Wenn Sie zwar die Begrenzung benutzen möchten, aber
- die Meldungen nicht in Ihren Logfiles sehen möchten,
- können Sie die Meldungen mit der sysctl-Variable
- <varname>net.inet.icmp.icmplim_output</varname>
- abschalten:</para>
-
- <screen>&prompt.root; <userinput>sysctl -w net.inet.icmp.icmplim_output=0</userinput></screen>
-
- <para>Falls Sie die Begrenzung ganz abschalten wollen,
- können Sie die Sysctl-Variable
- <varname>net.inet.icmp.icmplim</varname> auf
- <literal>0</literal>. Wir raten Ihnen aus den oben
- genannten Gründen dringend von diesem Schritt
- ab.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="unknown-hw-addr-format">
- <para>Was bedeutet die Meldung <errorname>arp: unknown
- hardware address format</errorname>?</para>
- </question>
-
- <answer>
- <para>Ein Gerät im lokalen Ethernet verwendet eine
- MAC-Adresse in einem Format, das &os; nicht kennt. Der
- wahrscheinlichste Grund ist, dass jemand Experimente
- mit einer Ethernet-Karte anstellt. Die Meldung tritt sehr
- häufig in Netzwerken mit Cable Modems auf. Die
- Meldung ist harmlos und sollte die Performance Ihres
- Systems nicht negativ beeinflussen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="arp-wrong-iface">
- <para>Warum sehe ich ständig Nachrichten wie:
- <errorname>192.168.0.10 is on fxp1 but got reply from
- 00:15:17:67:cf:82 on rl0</errorname> und wie stelle ich
- das ab?</para>
- </question>
-
- <answer>
- <para>Weil ein Paket unerwartet von ausserhalb des Netzwerks
- empfangen wurde. Um die Nachrichten abzustellen, ändern Sie
- <varname>net.link.ether.inet.log_arp_wrong_iface</varname> auf
- <literal>0</literal>.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="security">
- <title>Sicherheit</title>
- <qandaset>
- <qandaentry>
- <question id="sandbox">
- <para>Was ist ein Sandkasten (sandbox)?</para>
- </question>
-
- <answer>
- <para><quote>Sandkasten</quote> (sandbox) ist ein Ausdruck
- aus dem Bereich Sicherheit. Er hat zwei
- Bedeutungen:</para>
-
- <itemizedlist>
- <listitem>
- <para>Ein Programm, das innerhalb virtueller Wände
- ausgeführt wird. Wenn ein Angreifer über
- eine Sicherheitslücke in diesen Programm
- einbricht, verhindern diese Wände ein tieferes
- Vordringen in das System.</para>
-
- <para>Man sagt: Der Prozess kann innerhalb der
- Wände <quote>spielen</quote>, das heißt nichts,
- was der Prozess in Bezug auf die Ausführung von
- Code tut, kann die Wände durchbrechen. Es ist
- also keine detaillierte Revision des Codes
- erforderlich, um gewisse Aussagen über seine
- Sicherheit machen zu können.</para>
-
- <para>Die Wände könnten z.B. eine
- Benutzerkennung sein. Dies ist die Definition, die in
- den Hilfeseiten &man.security.7; und &man.named.8; benutzt
- wird.</para>
-
- <para>Nehmen Sie zum Beispiel den Dienst
- <literal>ntalk</literal> (siehe auch &man.inetd.8;).
- Dieser Dienst ist früher mit der Benutzerkennung
- <username>root</username> gelaufen; nun läuft er mit der
- Benutzerkennung <username>tty</username>. Der Benutzer
- <username>tty</username> ist ein Sandkasten, der dazu gedacht
- ist, es jemandem, der über <literal>ntalk</literal>
- erfolgreich in das System eingebrochen ist, schwer zu machen,
- über diese Benutzerkennung hinaus vorzudringen.</para>
- </listitem>
-
- <listitem>
- <para>Ein Prozess, der sich innerhalb einer
- simulierten Maschine befindet. Dies ist etwas
- fortgeschrittener; grundsätzlich bedeutet es,
- dass jemand, der in der Lage ist, in einen
- Prozess einzudringen, annehmen könnte, er
- könnte weiter in die Maschine eindringen,
- tatsächlich aber nur in eine Simulation der
- Maschine einbricht und keine echten Daten
- verändert.</para>
-
- <para>Der gängigste Weg, dies zu erreichen, ist, in
- einem Unterverzeichnis eine simulierte Umgebung zu
- erstellen und den Prozess in diesem Verzeichnis
- mit chroot auszuführen (für diesen
- Prozess ist <filename
- class="directory">/</filename> dieses Verzeichnis und nicht das
- echte <filename
- class="directory">/</filename> des Systems).</para>
-
- <para>Eine weitere gebräuchliche Anwendung ist, ein
- untergeordnetes Dateisystem nur mit Leserechten zu
- mounten, und dann darüber eine Dateisystemebene
- zu erstellen, die einem Prozess einen scheinbar
- schreibberechtigten Blick in das Dateisystem gibt.
- Der Prozess mag glauben, dass er in der Lage
- ist, diese Dateien zu verändern, aber nur der
- Prozess sieht diesen Effekt - andere Prozess
- im System natürlich nicht.</para>
-
- <para>Es wird versucht, diese Art von Sandkasten so
- transparent zu gestalten, dass der Benutzer (oder
- Hacker) nicht merkt, dass er sich in ihm
- befindet.</para>
- </listitem>
- </itemizedlist>
-
- <para>Ein &unix; System implementiert zwei Arten von
- Sandkästen - eine auf Prozessebene und die andere auf
- der Ebene der Benutzerkennung.</para>
-
- <para>Jeder Prozess auf einem &unix; System ist komplett von
- allen anderen Prozessen abgeschirmt. Ein Prozess
- kann den Adressraum eines anderen Prozesses nicht
- modifizieren. Das ist anders als bei &windows;, wo ein
- Prozess leicht den Adressraum eines anderen
- überschreiben kann, was zu einem Absturz
- führt.</para>
-
- <para>Ein Prozess gehört einer bestimmten
- Benutzerkennung. Falls die Benutzerkennung nicht die von
- <username>root</username> ist, dient sie dazu, den
- Prozess von Prozessen anderer Benutzer abzuschirmen.
- Die Benutzerkennung wird außerdem dazu genutzt,
- Daten auf der Festplatte abzuschirmen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="securelevel">
- <para>Was sind die Sicherheitsstufen?</para>
- </question>
-
- <answer>
- <para>Die Sicherheitsstufen sind ein Sicherheitsmechanismus,
- der im Kernel angesiedelt ist. Wenn die Sicherheitsstufe
- einen positiven Wert hat, verhindert der Kernel die
- Ausführung bestimmter Tätigkeiten; nicht einmal
- der Super-User (also <username>root</username>) darf sie
- durchführen. Zurzeit können über die
- Sicherheitsstufen unter anderem die folgenden
- Tätigkeiten geblockt werden:</para>
-
- <itemizedlist>
- <listitem>
- <para>Zurücksetzen bestimmter Dateiattribute, wie zum
- Beispiel <literal>schg</literal> (das "system immutable"
- Attribut).</para>
- </listitem>
-
- <listitem>
- <para>Schreibender Zugriff auf die Speicherbereiche des
- Kernels mittels <devicename>/dev/mem</devicename> und
- <devicename>/dev/kmem</devicename>.</para>
- </listitem>
-
- <listitem>
- <para>Laden von Kernel-Modulen.</para>
- </listitem>
-
- <listitem>
- <para>Änderungen an den Firewall-Regeln.</para>
- </listitem>
- </itemizedlist>
-
- <para>Um die eingestellte Sicherheitsstufe eines aktiven
- Systems abzufragen, reicht das folgende einfache
- Kommando:</para>
-
- <screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen>
-
- <para>Die Ausgaben wird den Namen der
- &man.sysctl.8;-Variablen (in diesem Fall
- <varname>kern.securelevel</varname>) und eine Zahl
- enthalten. Die Zahl ist der aktuelle Wert der
- Sicherheitsstufe. Wenn die Zahl positiv
- (größer als Null) ist, sind zumindest einige
- der Schutzmaßnahmen aktiviert.</para>
-
- <para>Sie können die Sicherheitsstufe eines laufenden
- Systems nicht verringern, da dies den Mechanismus wertlos
- machen würden. Wenn Sie eine Tätigkeit
- ausführen müssen, bei der die Sicherheitsstufe
- nicht-positiv sein muss (z.B. ein
- <maketarget>installworld</maketarget> oder eine
- Änderung der Systemzeit), dann müssen Sie die
- entsprechende Einstellung in
- <filename>/etc/rc.conf</filename> ändern (suchen Sie
- nach den Variablen <varname>kern_securelevel</varname> und
- <varname>kern_securelevel_enable</varname>) und das System
- rebooten.</para>
-
- <para>Weitere Informationen über die Sicherheitsstufen
- und genaue Informationen, was die Einstellungen bewirken,
- können Sie der Online-Hilfe &man.init.8;
- entnehmen.</para>
-
- <warning>
- <para>Die Sicherheitsstufen sind kein magischer
- Zauberstab, der alle Ihre Problem löst; es gibt
- viele bekannte Probleme. Und in der Mehrzahl der
- Fälle vermitteln sie ein falsches Gefühl der
- Sicherheit.</para>
-
- <para>Eines der größten Probleme ist, dass
- alle für den Start des Systems benötigten
- Dateien geschützt sein müssen, damit die
- Sicherheitsstufe effektiv sein können. Wenn es ein
- Angreifer schafft, seine eigenen Programme
- ausführen zu lassen, bevor die Sicherheitsstufe
- gesetzt wird (was leider erst gegen Ende des
- Startvorgangs erfolgen kann, da viele der notwendigen
- Tätigkeiten für den Systemstart nicht mit
- einer gesetzten Sicherheitsstufe möglich
- wären), werden die Schutzmechanismen ausgehebelt.
- Es ist zwar nicht technisch unmöglich, alle beim
- Systemstart genutzten Dateien zu schützen;
- allerdings würde in einem so geschützten
- System die Administration zu einem Alptraum, da man das
- System neu starten oder in den Single-User-Modus bringen
- müsste, um eine Konfigurationsdatei
- ändern zu können.</para>
-
- <para>Dieses und andere Probleme werden häufig auf
- den Mailinglisten diskutiert, speziell auf auf der
- Mailingliste &a.security;. Das <ulink
- url="&url.base;/search/index.html"> verfügbare Archiv</ulink>
- enthält ausgiebige Diskussionen. Einige Benutzer
- sind guter Hoffnung, dass das System der Sicherheitsstufen
- bald durch ein besser konfigurierbares System ersetzt
- wird, aber es gibt noch keine definitiven Aussagen.</para>
-
- <para>Fühlen Sie sich gewarnt.</para>
- </warning>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="extra-named-port">
- <para>Wieso wartet BIND (<command>named</command>) auf hohen Ports
- auf Anfragen?</para>
- </question>
-
- <answer>
- <para>&os; benutzt eine Version von BIND, die einen Port mit einer
- hohen, zufälligen Nummer für den Versand von Anfragen
- nutzt. Aktuelle Versionen wählen einen neuen, zufälligen
- UDP-Port für jeden Query. Das kann für manche
- Netzwerkkonfigurationen Probleme verursachen, besonders wenn eine
- Firewall eingehende UDP-Pakete auf bestimmten Ports blockiert.
- Wenn Sie durch eine solche Firewall wollen, können Sie die
- <literal>avoid-v4-udp-ports</literal> und
- <literal>avoid-v6-udp-ports</literal> Optionen ausprobieren, um
- ein zufälliges Auswählen von Portnummern innerhalb eines
- blockierten Bereiches zu verhindern.</para>
-
- <warning>
- <para>Wenn eine Portnummer (wie 53) über die Optionen
- <literal>query-source</literal> oder
- <literal>query-source-v6</literal> in
- <filename>/etc/namedb/named.conf</filename> spezifiziert ist,
- wird zufällige Portauswahl nicht verwendet. Es wird
- dringend empfohlen, dass diese Optionen nicht für die
- Spezifikation von festen Portnummern verwendet wird.</para>
- </warning>
-
- <para>Ach übrigens, herzlichen Glückwunsch. Es
- ist eine sehr gute Angewohnheit, die Ausgaben von
- &man.sockstat.1; durchzusehen und auf merkwürdige
- Dinge zu achten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="sendmail-port-587">
- <para>Wieso wartet der <application>sendmail</application>-Dienst
- neuerdings sowohl auf Port 587 als auch auf dem
- Standard-Port 25 auf Anfragen?</para>
- </question>
-
- <answer>
- <para>Aktuelle <application>sendmail</application>-Versionen
- unterstützen eine neue Technik zur Einlieferung von
- Mails, die Port 587 nutzt. Diese Technik wird zwar noch
- nicht oft angewendet, erfreut sich aber ständig steigender
- Popularität.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="toor-account">
- <para>Woher kommt dieser Benutzer <username>toor</username>
- mit UID 0? Ist mein System gehackt worden?</para>
- </question>
-
- <answer>
- <para>Keine Panik. <username>toor</username> ist ein
- <quote>alternativer</quote> Account für den
- Super-User (wenn man root rückwärts schreibt,
- erhält man toor). Früher wurde er nur erzeugt,
- wenn die Shell &man.bash.1; installiert wurde, heute wird
- er auf jeden Fall erzeugt. Dieser Account ist für
- die Verwendung mit einer alternativen Shell vorgesehen;
- damit ist es nicht mehr erforderlich, die Shell von
- <username>root</username> zu ändern. Dies ist
- wichtig, wenn eine Shell verwendet wird, die nicht zum
- Lieferumfang von &os; gehört, zum Beispiel aus
- einem Port oder einem Package. Diese Shells werden in der
- Regel in <filename class="directory">/usr/local/bin</filename>
- installiert und dieses Verzeichnis liegt standardmäßig
- auf einem anderem Filesystem. Wenn die Shell von
- <username>root</username> in <filename
- class="directory">/usr/local/bin</filename> liegt und <filename
- class="directory">/usr</filename> (oder das Filesystem, auf dem
- <filename class="directory">/usr/local/bin</filename> liegt) nicht
- gemountet werden kann, kann sich <username>root</username> nicht
- mehr einloggen, um das Problem zu beheben. Es ist
- allerdings möglich, das System zu rebooten und das
- Problem im Single-User-Modus zu lösen, da man hier
- gefragt wird, welche Shell benutzt werden soll.</para>
-
- <para>Einige Anwender benutzen <username>toor</username> mit
- einer alternativen Shell für die tägliche Arbeit
- und benutzen <username>root</username> (mit der
- Standard-Shell) für den Single-User-Modus und
- für Notfälle. Standardmäßig kann man
- sich nicht als <username>toor</username> anmelden, da der
- Account kein gültiges Passwort hat; Sie
- müssen sich also als <username>root</username>
- anmelden und ein Passwort für
- <username>toor</username> setzen, wenn Sie diesen Account
- benutzen wollen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="suidperl">
- <para>Warum funktioniert <command>suidperl</command> nicht
- richtig?</para>
- </question>
-
- <answer>
- <para>Aus Sicherheitsgründen wird <command>suidperl</command>
- standardmäßig nicht installiert. Wenn Sie wollen, dass
- <command>suidperl</command> auch beim Update via Sourcecode das
- SUID-Bit erhält, müssen Sie in
- <filename>/etc/make.conf</filename> die
- Zeile <literal><varname>ENABLE_SUIDPERL</varname>=true</literal>
- einfügen, bevor Sie <command>perl</command> bauen.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="ppp">
- <title>PPP</title>
-
- <qandaset>
- <qandaentry>
- <question id="userppp">
- <para>Ich bekomme &man.ppp.8; nicht zum Laufen. Was mache
- ich falsch?</para>
- </question>
-
- <answer>
- <para>Sie sollten zuerst &man.ppp.8; (die Manualpage zu ppp)
- und den <ulink
- url="&url.books.handbook;/ppp-and-slip.html#USERPPP">Abschnitt zu
- PPP im Handbuch</ulink> lesen. Aktivieren Sie das Logging
- mit folgendem Befehl:</para>
-
- <programlisting>set log Phase Chat Connect Carrier lcp ipcp ccp command</programlisting>
-
- <para>Dieser Befehl kann an der Eingabeaufforderung von
- &man.ppp.8; eingegeben oder in die Konfigurationsdatei
- <filename>/etc/ppp/ppp.conf</filename> eingetragen werden
- (der beste Ort hierfür ist der Anfang des Abschnitts
- <literal>default</literal>. Stellen Sie sicher, dass
- die Datei <filename>/etc/syslog.conf</filename> die
- folgenden Zeilen enthält und die Datei
- <filename>/var/log/ppp.log</filename> existiert:</para>
-
- <programlisting>!ppp
-*.* /var/log/ppp.log
- </programlisting>
-
- <para>Sie können nun über die Logfiles eine Menge
- darüber herausfinden, was geschieht. Es macht
- nichts, wenn die Einträge in den Logfiles Ihnen gar
- nichts sagen. Wenn Sie jemandem um Hilfe bitten
- müssen, könnten sie für ihn von Nutzen
- sein.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-hangs">
- <para>Warum hängt sich ppp auf, wenn ich es
- benutze?</para>
- </question>
-
- <answer>
- <para>Das liegt meistens daran, dass Ihr Rechnername
- nicht aufgelöst werden kann. Um dieses Problem zu
- lösen, müssen Sie sicherstellen, dass die
- Datei <filename>/etc/hosts</filename> von Ihrem Resolver
- zuerst genutzt wird. Dazu muss in der Datei
- <filename>/etc/host.conf</filename> der Eintrag
- <literal>hosts</literal> an die erste Stelle gesetzt
- werden. Erstellen Sie dann einfach für Ihren lokalen
- Rechner einen Eintrag in der Datei
- <filename>/etc/hosts</filename>. Falls Sie kein lokales
- Netzwerk besitzen, ändern Sie die
- <hostid>localhost</hostid>-Zeile:</para>
-
- <programlisting>127.0.0.1 foo.example.com foo localhost</programlisting>
-
- <para>Andernfalls fügen Sie einfach einen weiteren
- Eintrag für Ihren lokalen Rechner hinzu. Weitere
- Details finden Sie in den betreffenden
- Manualpages.</para>
-
- <para>Wenn Sie fertig sind sollten Sie <command>ping -c1
- `hostname`</command> erfolgreich ausführen
- können.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-nodial-auto">
- <para>Warum wählt &man.ppp.8; im
- <literal>-auto</literal>-Modus nicht?</para>
- </question>
-
- <answer>
- <para>Überprüfen Sie zunächst, ob Sie einen
- Standard-Gateway eingestellt haben. Wenn Sie
- <command>netstat -rn</command> ausführen, sollten Sie
- zwei Einträge ähnlich den folgenden
- sehen:</para>
-
- <programlisting>
-Destination Gateway Flags Refs Use Netif Expire
-default 10.0.0.2 UGSc 0 0 tun0
-10.0.0.2 10.0.0.1 UH 0 0 tun0
- </programlisting>
-
- <para>Hier wird angenommen, dass Sie die Adressen aus
- dem Handbuch, der Manualpage oder aus der Datei
- <filename>ppp.conf.sample</filename> benutzt haben.
- Falls Sie keine Standardroute haben, kann es daran liegen, dass Sie
- vergessen haben, die Zeile <literal>HISADDR</literal> in der Datei
- <filename>ppp.conf</filename> hinzuzufügen.</para>
-
- <para>Ein weiterer Grund dafür, dass die Zeile
- für die Standardroute fehlt, könnte der sein,
- dass Sie fälschlicherweise eine Standardroute in
- der Datei <filename>/etc/rc.conf</filename> eingetragen
- und die folgende Zeile in <filename>ppp.conf</filename>
- ausgelassen haben:</para>
-
- <programlisting>delete ALL</programlisting>
-
- <para>Lesen Sie in diesem Fall den Abschnitt <ulink
- url="&url.books.handbook;/userppp.html#USERPPP-FINAL">
- Abschließende Systemkonfiguration</ulink> des
- Handbuchs.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="no-route-to-host">
- <para>Was bedeutet <errorname>No route to
- host</errorname>?</para>
- </question>
-
- <answer>
- <para>Dieser Fehler beruht für gewöhnlich auf
- einem fehlenden Abschnitt in Ihrer Datei
- <filename>/etc/ppp/ppp.linkup</filename>:</para>
-
- <programlisting>MYADDR:
- delete ALL
- add 0 0 HISADDR
- </programlisting>
-
- <para>Er ist nur notwendig, wenn Sie eine dynamische IP-Adresse
- besitzen oder die Adresse Ihres Gateways nicht kennen. Wenn Sie
- den interaktiven Modus benutzen, können Sie folgendes
- eingeben, nachdem Sie in den <literal>packet
- mode</literal> gelangt sind (den Paket Modus erkennen Sie
- an <acronym>PPP</acronym> im Prompt):</para>
-
- <programlisting>
-delete ALL
-add 0 0 HISADDR
- </programlisting>
-
- <para>Weitere Details finden Sie im Abschnitt <ulink
- url="&url.books.handbook;/userppp.html#USERPPP-DYNAMICIP">PPP
- und Dynamische IP-Adressen</ulink> des Handbuchs.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="connection-threeminutedrop">
- <para>Wieso werden meine Verbindungen nach ca. drei Minuten
- beendet?</para>
- </question>
-
- <answer>
- <para>Der Standardtimeout für &man.ppp.8; beträgt
- drei Minuten. Er kann durch die folgende Zeile eingestellt werden,
- wobei <replaceable>NNN</replaceable> die Inaktivität in
- Sekunden angibt, bevor die Verbindung geschlossen wird:</para>
-
- <programlisting>set timeout <replaceable>NNN</replaceable></programlisting>
-
- <para>Falls <replaceable>NNN</replaceable> Null ist, wird die
- Verbindung niemals aufgrund eines Timeouts geschlossen.
- Es ist möglich, diesen Befehl in die Datei
- <filename>ppp.conf</filename> einzubinden, oder ihn an der
- Eingabeaufforderung im interaktiven Modus einzugeben.
- Durch eine Verbindung zum Server-Socket von
- <application>ppp</application> über &man.telnet.1;
- oder &man.pppctl.8; ist es auch möglich, den Timeout
- bei aktiver Verbindung anzupassen. Weitere Details finden
- Sie in der Manualpage &man.ppp.8;.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-drop-heavy-load">
- <para>Wieso bricht meine Verbindung bei hoher Auslastung
- ab?</para>
- </question>
-
- <answer>
- <para>Falls Sie Link-Quality-Reporting (LQR) konfiguriert
- haben, ist es möglich, dass zu viele LQR-Pakete
- zwischen Ihrer Maschine und dem verbundenen Rechner
- verloren gehen. Das &man.ppp.8;-Programm folgert daraus, dass die
- Verbindung nicht in Ordnung ist und schließt sie.
- Vor &os; Version 2.2.5 war LQR standardmäßig
- aktiviert; nun ist es standardmäßig
- deaktiviert. Es kann durch die folgende Zeile deaktiviert
- werden:</para>
-
- <programlisting>disable lqr</programlisting>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-drop-random">
- <para>Warum brechen meine Verbindungen nach unbestimmter
- Zeit zusammen?</para>
- </question>
-
- <answer>
- <para>Wenn die Qualität Ihrer Telefonleitung zu
- schlecht oder bei Ihrem Anschluss die Option
- (Telekomdeutsch: das Leistungsmerkmal) Anklopfen aktiviert
- ist, kann es manchmal vorkommen, dass Ihr Modem
- auflegt, weil es (fälschlicherweise) annimmt,
- dass es das Trägersignal verloren hat.</para>
-
- <para>Bei den meisten Modems gibt es eine
- Einstellmöglichkeit, um anzugeben, wie tolerant es
- gegenüber vorübergehenden Verlusten des
- Trägersignals sein soll. Bei einem
- &usrobotics;&nbsp;&sportster; wird dies zum Beispiel im Register
- S10 in Zehntelsekunden angegeben. Um Ihr Modem toleranter zu
- machen, können Sie zu Ihrem Wählbefehl die folgende
- Sende-Empfangs-Sequenz hinzufügen:</para>
-
- <programlisting>set dial "...... ATS10=10 OK ......"</programlisting>
-
- <para>Weitere Information sollten Sie dem Handbuch Ihres
- Modems entnehmen können.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-hangs-random">
- <para>Warum hängen meine Verbindung nach einer
- unbestimmten Zeit?</para>
- </question>
-
- <answer>
- <para>Viele Leute machen Erfahrungen mit hängenden
- Verbindungen ohne erkennbaren Grund. Als erstes muss
- festgestellt werden, welche Seite der Verbindung
- hängt.</para>
-
- <para>Wenn Sie ein externes Modem benutzen, können Sie
- einfach versuchen, &man.ping.8; zu benutzen, um zu sehen,
- ob die <acronym>TD</acronym>-Anzeige aufleuchtet, wenn Sie
- Daten übertragen. Falls sie aufleuchtet (und die
- <acronym>RD</acronym>-Anzeige nicht), liegt das Problem am
- anderen Ende. Falls <acronym>TD</acronym> nicht
- aufleuchtet, handelt es sich um ein lokales Problem. Bei
- einem internen Modem müssen Sie den Befehl
- <literal>set server</literal> in Ihrer Datei
- <filename>ppp.conf</filename> benutzen. Stellen Sie
- über &man.pppctl.8; eine Verbindung zu &man.ppp.8;
- her, wenn die Verbindung hängt. Falls Ihre
- Netzwerkverbindung plötzlich wieder funktioniert (ppp
- wurde durch die Aktivität auf dem Diagnose-Socket
- wiederbelebt) oder Sie keine Verbindung bekommen
- (vorausgesetzt, der Befehl <literal>set socket</literal>
- wurde beim Start erfolgreich ausgeführt), handelt es
- sich um ein lokales Problem. Falls Sie eine Verbindung
- bekommen und die externe Verbindung weiterhin hängt,
- aktivieren Sie lokales asynchrones Logging mit
- <literal>set log local async</literal> und benutzen Sie
- &man.ping.8; von einem anderen Fenster oder Bildschirm
- aus, um die externe Verbindung zu benutzen. Das
- asynchrone Logging zeigt Ihnen, welche Daten über die
- Verbindung gesendet und empfangen werden. Falls Daten
- hinausgehen, aber nicht zurückkommen, handelt es sich
- um ein externes Problem.</para>
-
- <para>Wenn Sie festgestellt haben, ob es sich um ein lokales
- oder um ein externes Problem handelt, haben Sie zwei
- Möglichkeiten:</para>
-
- <itemizedlist>
- <listitem>
- <para>Wenn es ein externes Problem ist, lesen Sie bitte bei
- <xref linkend="ppp-remote-not-responding"/> weiter.</para>
- </listitem>
-
- <listitem>
- <para>Handelt es sich um ein lokales Problem, lesen Sie bitte
- <xref linkend="ppp-hung"/>.</para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-remote-not-responding">
- <para>Was kann ich machen, wenn die Gegenstelle nicht
- antwortet?</para>
- </question>
-
- <answer>
- <para>Hier können Sie wenig tun. Die meisten ISPs
- werden ablehnen, Ihnen zu helfen, wenn Sie kein
- Betriebssystem von &microsoft; benutzen. Sie können
- <literal>enable lqr</literal> in Ihrer Datei
- <filename>ppp.conf</filename> angeben, wodurch &man.ppp.8;
- ermöglicht wird, ein externes Versagen zu erkennen
- und aufzulegen, aber diese Erkennung ist relativ langsam
- und deshalb nicht besonders nützlich. Evtl. sagen
- Sie Ihrem ISP nicht, dass Sie user-PPP
- benutzen.</para>
-
- <para>Versuchen Sie zunächst, jegliche Datenkompression
- auszuschalten, indem Sie folgendes zu Ihrer Konfiguration
- hinzufügen:</para>
-
- <programlisting>
-disable pred1 deflate deflate24 protocomp acfcomp shortseq vj
-deny pred1 deflate deflate24 protocomp acfcomp shortseq vj
- </programlisting>
-
- <para>Stellen Sie nun wieder eine Verbindung her, um
- festzustellen, ob sich etwas geändert hat. Falls es
- nun besser läuft oder falls das Problem
- vollständig behoben ist, versuchen Sie durch
- schrittweises Ändern der Einstellungen festzustellen,
- welche Einstellung den Unterschied bewirkt. Hierdurch
- erhalten Sie schlüssige Fakten für ein Gespräch
- mit Ihrem ISP (andererseits wird hierdurch offensichtlich,
- dass Sie kein &microsoft;-Produkt benutzen).</para>
-
- <para>Aktivieren Sie asynchrones Logging und warten Sie, bis
- die Verbindung wieder hängt, bevor Sie sich an Ihren
- ISP wenden. Hierzu kann einiges an Plattenplatz
- nötig sein. Die Daten, die als letztes von dem Port
- gelesen wurden, könnten von Interesse sein. Für
- gewöhnlich handelt es sich um ASCII-Text, der sogar
- den Fehler beschreiben kann (<errorname>Memory fault, Core
- dumped</errorname>).</para>
-
- <para>Falls Ihr ISP hilfsbereit ist, sollte er in der Lage
- sein, an seinem Ende das Logging zu aktivieren und wenn
- das nächste Mal die Verbindung abbricht, könnte
- er Ihnen mitteilen, worin das Problem auf seiner Seite
- besteht. Gerne können Sie Details auch an &a.brian;
- schicken, oder Ihren ISP bitten, sich direkt an ihn zu
- wenden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-hung">
- <para>Was kann ich tun, wenn sich &man.ppp.8;
- aufhängt?</para>
- </question>
-
- <answer>
- <para>In diesem Fall erstellen Sie am besten &man.ppp.8;
- mit Debugging-Informationen neu und benutzen dann &man.gdb.1;, um
- von dem hängenden <application>ppp</application> Prozess eine
- Aufzeichnung des Stacks zu erstellen. Um die
- <application>ppp</application> Anwendung mit
- Debugging-Informationen zu übersetzen, geben Sie folgendes
- ein:</para>
-
- <screen>&prompt.root; <userinput>cd /usr/src/usr.sbin/ppp</userinput>&prompt.root; <userinput>env DEBUG_FLAGS='-g' make clean</userinput>
- &prompt.root; <userinput>env DEBUG_FLAGS='-g' make install</userinput></screen>
- <para>Anschliessend sollten Sie <application>ppp</application> neu
- starten und darauf warten, dass es wieder hängt. Wenn die
- Debug-Version von <application>ppp</application> hängt,
- starten Sie <application>gdb</application> für den
- steckengebliebenen Prozess, indem Sie folgendes eingeben:</para>
-
- <screen>&prompt.root; <userinput>gdb ppp `pgrep ppp`</userinput></screen>
-
- <para>An der Eingabeaufforderung von <application>gdb</application>
- können Sie die Befehle <command>bt</command> oder
- <command>where</command> benutzen, um eine Aufzeichnung des Stacks
- zu erhalten. Speichern Sie die Ausgabe der
- <application>gdb</application>-Sitzung und
- <quote>trennen</quote> Sie den laufenden Prozess über den
- <command>quit</command> Befehl von
- <application>gdb</application>.</para>
-
- <para>Schicken Sie zum Schluss das Log der
- <application>gdb</application>-Sitzung an &a.brian;.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-loginok-thennothing">
- <para>Warum passiert nach der Nachricht <quote>Login
- OK!</quote> nichts?</para>
- </question>
-
- <answer>
- <para>Bei &os;-Versionen vor 2.2.5 wartete &man.ppp.8;
- darauf, dass der Partner das Line Control Protocol
- (LCP) initiiert. Viele ISPs starten nicht mit der
- Initiierung, sondern erwarten dies vom Client. Benutzen
- Sie die folgende Zeile, um &man.ppp.8; zu veranlassen, LCP
- zu initiieren:</para>
-
- <programlisting>set openmode active</programlisting>
-
- <note>
- <para>Für gewöhnlich schadet es nicht, wenn
- beide Seiten versuchen, Verhandlungen einzuleiten.
- Deshalb ist openmode nun standardmäßig aktiv.
- Im nächsten Abschnitt wird allerdings erklärt,
- in welchen Fällen es <emphasis>doch</emphasis>
- schadet.</para>
- </note>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-same-magic">
- <para>Ich sehe ständig Fehlermeldungen über
- gleiche <quote>Magic Numbers</quote> Was heißt
- das?</para>
- </question>
-
- <answer>
- <para>Nach dem Aufbau einer Verbindung kann es sein,
- dass Sie in der Logdatei gelegentlich Meldungen mit
- dem Hinweis <errorname>magic is the same</errorname> sehen.
- Manchmal sind diese Meldungen harmlos und manchmal bricht
- die eine oder andere Seite die Verbindung ab. Die meisten
- Implementationen von PPP können dieses Problem nicht
- handhaben und Sie werden wiederholte
- Konfigurationsanforderungen und -bestätigungen in der
- Logdatei finden, bis &man.ppp.8; schließlich aufgibt
- und die Verbindung beendet.</para>
-
- <para>Dies geschieht normalerweise auf Servern mit langsamen
- Festplatten, bei denen ein getty auf dem Port
- ausgeführt und &man.ppp.8; nach dem Einloggen von
- einem Login-Skript oder einem Programm aus gestartet wird.
- Es wurde auch schon berichtet, dass dies bei der
- Benutzung von slirp regelmäßig auftritt. Der
- Grund hierfür ist, dass das &man.ppp.8; auf der
- Client-Seite in der Zeit, die benötigt wird, &man.getty.8; zu
- beenden und &man.ppp.8; zu starten, bereits beginnt, Line Control
- Protocol (LCP) Pakete zu senden. Da ECHO auf dem
- Serverport weiterhin eingeschaltet ist, werden diese
- Pakete zum &man.ppp.8; auf der Client-Seite
- <quote>reflektiert</quote>.</para>
-
- <para>Ein Teil der LCP-Verhandlungen ist die Einrichtung
- einer <quote>Magic Number</quote> für jede Seite der
- Verbindung, damit <quote>Echos</quote> erkannt werden können.
- Das Protokoll besagt, dass, wenn der Partner
- versucht, die gleiche <quote>Magic Number</quote> auszuhandeln,
- ein NAK zurückgesendet und eine neue "Magic Number"
- gewählt werden soll. Während der Server das
- ECHO eingeschaltet hat, sendet der Client LCP Pakete,
- sieht die gleiche <quote>Magic Number</quote> im reflektierten
- Paket und erzeugt ein NAK. Er sieht auch das reflektierte NAK
- (was bedeutet, dass &man.ppp.8; seine "Magic Number"
- ändern muss). Hierdurch wird eine Vielzahl von
- Änderungen der <quote>Magic Number</quote> hervorgerufen,
- die sich allesamt im tty-Puffer des Servers ansammeln. Sobald
- &man.ppp.8; auf dem Server startet, wird es mit
- Änderungen der <quote>Magic Number</quote> überflutet
- und entscheidet, dass es sich zur Genüge mit den
- LCP-Verhandlungen beschäftigt hat und gibt auf. Und
- während sich der Client noch darüber freut,
- dass er keine weiteren Reflexionen sieht, wird ihm
- gemeldet, dass der Server auflegt.</para>
-
- <para>Dies kann verhindert werden, indem dem Partner durch
- die folgende Zeile in der Datei
- <filename>ppp.conf</filename> erlaubt wird, mit der
- Verhandlung zu beginnen:</para>
-
- <programlisting>set openmode passive</programlisting>
-
- <para>Hierdurch wird &man.ppp.8; mitgeteilt, darauf zu
- warten, dass der Server mit den LCP-Verhandlungen
- beginnt. Einige Server starten jedoch nie mit der
- Verhandlungen; falls dies der Fall ist, können Sie
- folgendes tun:</para>
-
- <programlisting>set openmode active 3</programlisting>
-
- <para>Hierdurch bleibt &man.ppp.8; für drei Sekunden
- passiv und fängt dann erst an, LCP-Anforderungen zu
- senden. Falls der Partner während dieser Zeit
- beginnt, Anforderungen zu senden, wird &man.ppp.8; direkt
- antworten und nicht erst, nachdem die drei Sekunden
- abgelaufen sind.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-lcp-constant">
- <para>Die LCP-Verhandlungen dauern an, bis die Verbindung
- geschlossen wird. Was mache ich falsch?</para>
- </question>
-
- <answer>
- <para>Es gibt eine Fehlfunktion in der Implementierung von
- &man.ppp.8;, die darin besteht, dass LCP-, CCP- &amp;
- IPCP-Antworten nicht mit den ursprünglichen
- Anforderungen assoziiert werden. Für den Fall,
- dass eine Implementation von PPP mehr als sechs
- Sekunden langsamer ist, als die andere Seite, resultiert
- das darin, dass die andere Seite zwei weitere
- LCP-Konfigurationsanforderungen sendet, was fatale
- Auswirkungen hat.</para>
-
- <para>Stellen Sie sich vor, wir hätten es mit zwei
- Implementierungen <hostid>A</hostid> und
- <hostid>B</hostid> zu tun. <hostid>A</hostid> beginnt
- unmittelbar nach der Verbindung, LCP-Anforderungen zu
- senden und <hostid>B</hostid> benötigt sieben
- Sekunden, zu starten. Wenn <hostid>B</hostid> startet,
- hat <hostid>A</hostid> bereits drei LCP-Anforderungen
- gesendet. Wir nehmen an, dass ECHO ausgeschaltet
- ist; andernfalls würden wir Probleme mit der "Magic
- Number" beobachten, wie bereits im vorherigen Abschnitt
- beschrieben. <hostid>B</hostid> sendet eine Anforderung
- und anschließend eine Bestätigung der ersten
- Anforderung von <hostid>A</hostid>. Dies führt dazu,
- dass <hostid>A</hostid> in den Zustand
- <acronym>OPENED</acronym> übergeht und eine
- Bestätigung (die erste) zurück an
- <hostid>B</hostid> sendet. In der Zwischenzeit sendet
- <hostid>B</hostid> zwei weitere Bestätigungen als
- Antwort auf die zusätzlichen Anforderungen, die von
- <hostid>A</hostid> gesendet worden sind, bevor
- <hostid>B</hostid> gestartet ist. <hostid>B</hostid>
- empfängt dann die erste Bestätigung von
- <hostid>A</hostid> und geht in den Zustand
- <acronym>OPENED</acronym> über. <hostid>A</hostid>
- empfängt die zweite Bestätigung von
- <hostid>B</hostid>, geht zurück in den Zustand
- <acronym>REQ-SENT</acronym> und sendet eine
- weitere (vierte) Anforderung entsprechend dem RFC.
- <hostid>A</hostid> empfängt dann die dritte
- Bestätigung und geht in den Zustand
- <acronym>OPENED</acronym> über. In der Zwischenzeit
- empfängt <hostid>B</hostid> die vierte Anforderung
- von <hostid>A</hostid>, wechselt in den Zustand
- <acronym>ACK-SENT</acronym> und sendet eine weitere
- (zweite) Anforderung und (vierte) Bestätigung
- entsprechend dem RFC. <hostid>A</hostid> erhält die
- Anforderung, geht in den Zustand
- <acronym>REQ-SENT</acronym> über, sendet eine weitere
- Anforderung, erhält unverzüglich die
- nächste Bestätigung und geht in
- <acronym>OPENED</acronym> über.</para>
-
- <para>Das geht so weiter, bis eine Seite erkennt, dass
- man zu keinem Ergebnis gelangt und aufgibt.</para>
-
- <para>Am besten verhindert man solche Situationen, indem man
- eine Seite als <literal>passiv</literal> konfiguriert,
- also dafür sorgt, dass eine Seite darauf
- wartet, dass die andere mit den Verhandlungen beginnt. Das
- kann durch den folgenden Befehl geschehen:</para>
-
- <programlisting>set openmode passive</programlisting>
-
- <para>Diese Option sollten Sie mit Vorsicht genießen.
- Folgenden Befehl sollten Sie benutzen, um
- die Wartezeit auf den Beginn der Verhandlungen des
- Partners von &man.ppp.8; zu begrenzen:</para>
-
- <programlisting>set stopped <replaceable>N</replaceable></programlisting>
-
- <para>Alternativ kann der folgende Befehl (wobei
- <replaceable>N</replaceable> die Wartezeit in Sekunden vor Beginn
- der Verhandlungen angibt) benutzt werden:</para>
-
- <programlisting>set openmode active <replaceable>N</replaceable></programlisting>
-
- <para>Weitere Details finden Sie in den Manualpages.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-shell-test-lockup">
- <para>Warum reagiert &man.ppp.8; nicht mehr, wenn ich es mit
- shell verlassen habe?</para>
- </question>
-
- <answer>
- <para>Wenn Sie den Befehl <command>shell</command> oder
- <command>!</command> benutzen, führt &man.ppp.8; eine
- Shell aus (falls Sie Argumente übergeben haben,
- führt &man.ppp.8; diese Argumente aus). Das Programm
- <application>ppp</application> wartet auf die Beendigung des
- Befehls, bevor es seine Arbeit fortsetzt. Falls Sie versuchen,
- die PPP-Verbindung während der Programmausführung zu
- benutzen, wird es so aussehen, als wäre die Verbindung
- eingefroren. Das liegt daran, dass &man.ppp.8; auf die
- Beendigung des Befehls wartet.</para>
-
- <para>Falls Sie solche Befehle verwenden möchten,
- benutzen Sie stattdessen den Befehl
- <command>!bg</command>. Hierdurch wird der angegebene
- Befehl im Hintergrund ausgeführt und &man.ppp.8; kann
- fortfahren, die Verbindung zu bedienen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-null-modem">
- <para>Warum wird &man.ppp.8; niemals beendet, wenn ich es
- über ein Nullmodem-Kabel benutze?</para>
- </question>
-
- <answer>
- <para>Es gibt keine Möglichkeit für &man.ppp.8;,
- automatisch festzustellen, ob eine direkte Verbindung
- beendet worden ist. Das liegt an den Leitungen, die bei
- einem seriellen Nullmodem-Kabel benutzt werden. Wenn Sie
- diese Art der Verbindung verwenden, sollte LQR immer mit der
- folgenden Zeile aktiviert werden:</para>
-
- <programlisting>enable lqr</programlisting>
-
- <para>LQR wird standardmäßig akzeptiert, wenn es
- vom Partner ausgehandelt wird.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-auto-noreasondial">
- <para>Warum wählt &man.ppp.8; im Modus <option>-auto</option>
- ohne Grund?</para>
- </question>
-
- <answer>
- <para>Falls &man.ppp.8; unerwarteterweise wählt,
- müssen Sie den Grund herausfinden und Wählfilter
- (dfilters) einsetzen, um dies zu verhindern.</para>
-
- <para>Benutzen Sie die folgende Zeile, um den Grund
- herauszufinden:</para>
-
- <programlisting>set log +tcp/ip</programlisting>
-
- <para>Dadurch wird jeglicher Verkehr über die
- Verbindung geloggt. Wenn das nächste mal unerwartet
- eine Verbindung hergestellt wird, werden Sie den Grund
- zusammen mit einer hilfreichen Zeitangabe in der Logdatei
- finden.</para>
-
- <para>Sie können nun das Wählen aufgrund dieser
- Bedingungen verhindern. Normalerweise wird diese Art von
- Problemen durch Anfragen an den DNS verursacht. Um zu
- verhindern, dass DNS-Anfragen den Aufbau der
- Verbindung hervorrufen (das verhindert
- <emphasis>nicht</emphasis>, dass Pakete über
- eine bestehende Verbindung gesendet werden), benutzen Sie
- die folgenden Zeilen:</para>
-
- <programlisting>
-set dfilter 1 deny udp src eq 53
-set dfilter 2 deny udp dst eq 53
-set dfilter 3 permit 0/0 0/0
- </programlisting>
-
- <para>Dies ist nicht immer brauchbar, weil es effektiv Ihre
- Fähigkeit, auf Anforderung wählen zu können
- einschränkt - die meisten Programme müssen eine
- DNS-Anfrage durchführen, bevor Sie andere, das
- Netzwerk betreffenden Dinge tun können.</para>
-
- <para>Im Fall von DNS sollten Sie versuchen, herauszufinden,
- welches Programm tatsächlich versucht, einen
- Hostnamen aufzulösen. Sehr oft handelt es sich hier
- um &man.sendmail.8;. Sie sollten
- sicherstellen, dass Sie <application>sendmail</application>
- in der Konfigurationsdatei sagen, dass keine DNS-Anfragen
- durchführen soll. Weitere Details enthält
- der Abschnitt <ulink
- url="&url.books.handbook;/smtp-dialup.html">E-Mail
- über Einwahl-Verbindungen</ulink> des Handbuchs.
- Sie könnten z.B. die folgende Zeile in
- Ihre <filename>.mc</filename>-Datei einfügen:</para>
-
- <programlisting>define(`confDELIVERY_MODE', `d')dnl</programlisting>
-
- <para>Das veranlasst <application>sendmail</application> dazu, alles
- in eine Warteschlange einzureihen, bis die Warteschlange
- verarbeitet wird (normalerweise wird sendmail mit
- <option>-bd -q30m</option> aufgerufen, was besagt,
- dass die Warteschlange alle 30 Minuten abgearbeitet
- wird) oder, bis ein <command>sendmail <option>-q</option></command>
- ausgeführt wird (z.B. aus Ihrer Datei
- <filename>ppp.linkup</filename> heraus).</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ccp-errors">
- <para>Was bedeuten diese CCP-Fehler?</para>
- </question>
-
- <answer>
- <para>Ich sehe ständig folgende Fehler in meiner
- Logdatei:</para>
-
- <programlisting>
-CCP: CcpSendConfigReq
-CCP: Received Terminate Ack (1) state = Req-Sent (6)
- </programlisting>
-
- <para>Das liegt daran, dass &man.ppp.8; versucht, die
- Komprimierung Predictor1 auszuhandeln und der Partner
- über keinerlei Komprimierung verhandeln will. Die
- Meldungen sind harmlos, aber wenn Sie sie beseitigen
- möchten, können Sie die Komprimierung Predictor1
- auch lokal ausschalten:</para>
-
- <programlisting>disable pred1</programlisting>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-connectionspeed">
- <para>Warum loggt ppp die Geschwindigkeit meiner Verbindung
- nicht?</para>
- </question>
-
- <answer>
- <para>Um alle Zeilen Ihrer <quote>Modemkonversation</quote>
- mitzuloggen, müssen Sie folgendes einstellen:</para>
-
- <programlisting>set log +connect</programlisting>
-
- <para>Dies veranlasst &man.ppp.8; dazu, alles bis zur
- letzten angeforderten <quote>expect</quote>-Zeile
- mitzuloggen.</para>
-
- <para>Falls Sie die Geschwindigkeit Ihrer Verbindung
- erfahren möchten und PAP oder CHAP (und deshalb nach
- dem CONNECT im Wählskript nichts mehr zu
- <quote>chatten</quote> haben - kein <literal>set
- login</literal>-Skript), müssen Sie sicherstellen,
- dass Sie &man.ppp.8; anweisen, die gesamte
- CONNECT-Zeile zu <quote>erwarten</quote>, etwa so:</para>
-
- <programlisting>set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 4 \"\" ATZ OK-ATZ-OK ATDT\\T TIMEOUT 60 CONNECT \\c \\n"</programlisting>
-
- <para>Hier bekommen wir unser CONNECT, senden nichts,
- erwarten dann einen Line-Feed, der &man.ppp.8; zwingt, die
- gesamte CONNECT-Antwort zu lesen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-ignores-backslash">
- <para>Warum ignoriert &man.ppp.8; das Zeichen
- <literal>\</literal> in meinem Chat-Skript?</para>
- </question>
-
- <answer>
- <para>Das Programm <application>ppp</application> analysiert jede
- Zeile in Ihrer Konfigurationsdatei, damit es Zeichenketten wie z.B.
- <literal>set phone "123 456 789"</literal> korrekt
- interpretieren kann (und erkennen, dass es sich bei
- der Nummer tatsächlich nur um
- <emphasis>ein</emphasis> Argument handelt). Um das
- Zeichen <literal>&quot;</literal> anzugeben, müssen
- Sie ihm einen Backslash (<literal>\</literal>)
- voranstellen.</para>
-
- <para>Wenn der Chat-Interpreter jedes Argument analysiert,
- reinterpretiert er die Argumente, um irgendwelche
- speziellen Escape-Sequenzen wie z.B. <literal>\P</literal>
- oder <literal>\T</literal> (sehen Sie in die Manualpage)
- zu finden. Das Ergebnis dieser Doppelanalyse ist,
- dass Sie daran denken müssen, die richtige
- Anzahl an Escape-Zeichen zu verwenden.</para>
-
- <para>Falls Sie tatsächlich das Zeichen
- <literal>\</literal> z.B. zu Ihrem Modem senden
- möchten, brauchen Sie etwas ähnliches,
- wie:</para>
-
- <programlisting>set dial "\"\" ATZ OK-ATZ-OK AT\\\\X OK"</programlisting>
-
- <para>Woraus sich folgende Zeichen ergeben:</para>
-
- <programlisting>
-ATZ
-OK
-AT\X
-OK
- </programlisting>
-
- <para>Oder:</para>
-
- <programlisting>
-set phone 1234567
-set dial "\"\" ATZ OK ATDT\\T"
- </programlisting>
-
- <para>Was folgende Zeichen ergibt:</para>
-
- <programlisting>
-ATZ
-OK
-ATDT1234567
- </programlisting>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-segfault-nocore">
- <para>Warum gibt es die Datei <filename>ppp.core</filename>
- nicht, wenn &man.ppp.8; einen <errorname>Segmentation
- fault</errorname> erzeugt hat?</para>
- </question>
-
- <answer>
- <para>Weder <application>ppp</application> noch andere Programme
- sollten Core-Dumps erzeugen. Da &man.ppp.8; mit der effektiven
- Benutzerkennung <literal>0</literal> ausgeführt wird, wird das
- Betriebssystem das Coreimage von &man.ppp.8; nicht auf die
- Festplatte schreiben, bevor es &man.ppp.8; beendet hat.
- Falls &man.ppp.8; jedoch tatsächlich aufgrund einer
- Speicherverletzung abbricht <emphasis>und</emphasis> Sie
- die aktuellste Version (siehe Anfang dieses Kapitels)
- benutzen, dann sollten Sie die Systemquellen installieren und
- folgendes tun:</para>
-
-
- <screen>&prompt.root; <userinput><command>cd</command> <filename class="directory">/usr/src/usr.sbin/ppp</filename></userinput>
-&prompt.root; <userinput><command>echo</command> <makevar>STRIP</makevar>= &gt;&gt; <filename>/etc/make.conf</filename></userinput>
-&prompt.root; <userinput><command>echo</command> <makevar>CFLAGS</makevar>+=<option>-g</option> &gt;&gt; <filename>/etc/make.conf</filename></userinput>
-&prompt.root; <userinput><command>make</command> <maketarget>install</maketarget> <maketarget>clean</maketarget></userinput></screen>
-
- <para>Nun ist die installierte Version von &man.ppp.8; mit
- einem Debugger ausführbar. Sie können
- &man.ppp.8; nun nur noch als <username>root</username>
- ausführen, da alle vorherigen Zugriffsrechte
- aufgehoben worden sind. Achten Sie darauf, in welchem
- Verzeichnis Sie sich gerade befinden, wenn Sie &man.ppp.8;
- starten.</para>
-
- <para>Wenn nun wieder eine Speicherverletzung auftreten
- sollte, wird &man.ppp.8; einen Speicherauszug erzeugen,
- den Sie in der Datei <filename>ppp.core</filename> finden.
- Sie sollten dann folgendes tun:</para>
-
- <screen>&prompt.user; <userinput>su</userinput>
-&prompt.root; <userinput>gdb /usr/sbin/ppp ppp.core</userinput>
-<prompt>(gdb)</prompt> <userinput>bt</userinput>
-.....
-<prompt>(gdb)</prompt> <userinput>f 0</userinput>
-....
-<prompt>(gdb)</prompt> <userinput>i args</userinput>
-....
-<prompt>(gdb)</prompt> <userinput>l</userinput>
-.....</screen>
-
- <para>Mit Hilfe all dieser Informationen sollte es
- möglich sein, das Problem zu diagnostizieren.</para>
-
- <para>Falls Sie mit &man.gdb.1; vertraut sind,
- könnten Sie weitere Einzelheiten herausfinden, z.B.
- wodurch der Fehler tatsächlich hervorgerufen wurde
- oder die Adressen und Werte der betreffenden Variablen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-autodialprocess-noconnect">
- <para>Warum bekommt das Programm, das eine Anwahl im Modus
- <option>-auto</option> ausgelöst hat, keine Verbindung?</para>
- </question>
-
- <answer>
- <para>Dies war ein bekanntes Problem bei
- &man.ppp.8;-Konfigurationen, bei denen im Modus
- <option>-auto</option> dynamische, lokale IP-Adressen mit dem
- Partner ausgehandelt werden. Das Problem ist bereits seit einiger
- Zeit behoben - suchen Sie in den Manualpages nach
- <literal>iface</literal>.</para>
-
- <para>Das Problem bestand darin, dass, wenn das erste
- Programm &man.connect.2; aufruft, die IP-Adresse der
- &man.tun.4;-Schnittstelle dem Socketendpunkt zugeordnet wird. Der
- Kernel erstellt das erste ausgehende Paket und schreibt es
- in das &man.tun.4;-Gerät. &man.ppp.8; liest dann das Paket
- und baut eine Verbindung auf. Falls die
- Schnittstellenadresse sich nun aufgrund &man.ppp.8;s
- dynamischer Adresszuordnung ändert, wird der
- originale Socketendpunkt ungültig. Alle weiteren
- Pakete, die zum Partner gesendet werden, werden für
- gewöhnlich verworfen. Selbst wenn sie nicht
- verworfen werden würden, würden alle Antworten
- nicht an den betreffenden Rechner gelangen, weil die
- IP-Adresse nicht mehr zu diesem Rechner
- gehört.</para>
-
- <para>Theoretisch gibt es mehrere Möglichkeiten, dieses
- Problem anzugehen. Am schönsten wäre es, wenn
- der Partner die gleiche IP-Adresse wieder zuordnen
- würde, wenn möglich. Die derzeitige Version von
- &man.ppp.8; tut das, aber die meisten anderen Implementierungen
- nicht.</para>
-
- <para>Die einfachste Maßnahme von unserer Seite
- wäre die, niemals die IP-Adresse der
- &man.tun.4;-Schnittstelle zu ändern, sondern stattdessen alle
- ausgehenden Pakete so zu ändern, dass als
- Absender-IP-Adresse anstelle der IP-Adresse der
- Schnittstelle die ausgehandelte IP-Adresse gesetzt wird.
- Das ist im wesentlichen das, was durch die Option
- <literal>iface-alias</literal> in der aktuellsten Version
- von &man.ppp.8; bewirkt wird (mit Unterstützung von
- &man.libalias.3; und &man.ppp.8;'s <option>-nat</option>
- Schalter) - alle Schnittstellenadressen werden beibehalten
- und auf die letzte ausgehandelte Adresse
- umgesetzt.</para>
-
- <para>Eine andere Alternative (und wahrscheinlich die
- zuverlässigste) wäre die, einen Systemaufruf zu
- implementieren der die IP-Adressen aller verbundenen
- Sockets von einer Adresse in eine andere ändert.
- &man.ppp.8; würde diesen Aufruf benutzen, um die
- Sockets aller laufenden Programme zu ändern, nachdem
- eine neue IP-Adresse ausgehandelt worden ist. Der gleiche
- Systemaufruf könnte von <acronym>DHCP</acronym>-Clients
- benutzt werden, wenn sie gezwungen werden, die
- <function>bind()</function>-Funktion auf ihren Sockets
- auszuführen.</para>
-
- <para>Noch eine andere Möglichkeit wäre die, das
- Aktivieren von Schnittstellen ohne IP-Adresse zu erlauben.
- Ausgehende Paketen würde die IP-Adresse
- <hostid role="ipaddr">255.255.255.255</hostid> gegeben, bis der
- erste &man.ioctl.2; mit <literal>SIOCAIFADDR</literal> erfolgt.
- Dies würde in der vollständigen Verbindung des Sockets
- resultieren. Es wäre die Aufgabe von &man.ppp.8;, die
- Absender-IP-Adresse zu ändern, allerdings nur dann,
- wenn sie <hostid role="ipaddr">255.255.255.255</hostid> lautet und
- nur die IP-Adresse und IP-Prüfsumme müssten geändert
- werden. Dies wäre allerdings keine besonders elegante
- Lösung, da der Kernel fehlerhafte Pakete an eine
- unzureichend konfigurierte Schnittstelle senden würde, in der
- Annahme, dass andere Mechanismen in der Lage sind, diese Dinge
- rückwirkend zu beheben.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ppp-nat-games">
- <para>Warum laufen die meisten Spiele mit dem <option>-nat</option>
- Schalter nicht?</para>
- </question>
-
- <answer>
- <para>Der Grund dafür, dass Spiele und andere
- Programme nicht funktionieren, wenn &man.libalias.3; benutzt wird,
- ist der, dass der Rechner außerhalb des lokalen
- Netzes versucht, eine Verbindung aufzubauen und
- (unaufgefordert) UDP-Pakete an den Rechner innerhalb des
- lokalen Netzes zu senden. Die Software, die für die
- NAT zuständig ist, weiß nicht, dass sie
- diese Pakete an den internen Rechner weiterleiten
- soll.</para>
-
- <para>Um dies zu beheben, stellen Sie zunächst sicher,
- dass die Software, mit der Sie Probleme haben, die
- einzige ist, die gerade läuft. Benutzen Sie dann
- entweder &man.tcpdump.1; auf der &man.tun.4;-Schnittstelle des
- Gateways oder aktivieren Sie auf dem Gateway das Logging von TCP/IP
- (<literal>set log +tcp/ip</literal>) unter
- &man.ppp.8;.</para>
-
- <para>Wenn Sie nun das betreffende Programm starten, sollten
- Sie sehen, wie Pakete den Gateway-Rechner passieren. Wenn
- von außen etwas zurückkommt, wird es ignoriert
- (das ist das Problem). Merken Sie sich die Portnummer
- dieser Pakete und beenden Sie das betreffende Programm.
- Wiederholen Sie diesen Schritt einige Male, um
- festzustellen, ob die Portnummern konsistent sind. Falls
- dem so ist, wird die folgende Zeile im entsprechenden
- Abschnitt von <filename>/etc/ppp/ppp.conf</filename>
- dafür sorgen, dass das Programm
- funktioniert:</para>
-
- <programlisting>nat port <replaceable>proto</replaceable> <replaceable>internalmachine</replaceable>:<replaceable>port</replaceable> <replaceable>port</replaceable></programlisting>
-
- <para>wobei für <replaceable>proto</replaceable>
- entweder <literal>tcp</literal> oder
- <literal>udp</literal> zu setzen ist,
- <replaceable>internalmachine</replaceable> den Rechner
- bezeichnet, an den die Pakete geschickt werden sollen und
- <replaceable>port</replaceable> die betreffende
- Portnummer.</para>
-
- <para>Sie können das Programm nicht auf einem anderen
- Rechner benutzen, ohne die obige Zeile abzuändern und
- die Benutzung des Programms auf zwei internen Rechnern
- steht außer Frage - schließlich sieht die
- Außenwelt Ihr gesamtes internes Netz so, als
- wäre es ein einzelner Rechner.</para>
-
- <para>Falls die Portnummern nicht konsistent sind, gibt es
- drei weitere Optionen:</para>
-
- <orderedlist>
- <listitem>
- <para>Ermöglichen Sie die Unterstützung durch
- &man.libalias.3;. Beispiele für <quote>spezielle
- Fälle</quote> finden Sie in
- <filename>/usr/src/sys/netinet/libalias/alias_*.c</filename>
- (<filename>alias_ftp.c</filename> ist ein schöner
- Prototyp). Hierzu gehört für
- gewöhnlich das Lesen bestimmter, erkannter,
- ausgehender Pakete, die Identifizierung der
- Instruktion, die den entfernten Rechner dazu
- veranlasst, auf einem bestimmten (wahlfreien)
- Port eine Verbindung zurück zum lokalen Rechner
- herzustellen, sowie das Erstellen einer
- <quote>Route</quote> in der Aliastabelle, so dass
- nachfolgende Pakete wissen, wohin sie
- gehören.</para>
-
- <para>Dieses ist zwar die komplizierteste Lösung,
- aber die beste, die auch dafür sorgt, dass
- die Software auf mehreren Rechnern
- funktioniert.</para>
- </listitem>
-
- <listitem>
- <para>Benutzen Sie einen Proxy. Die Anwendung
- könnte z.B. <literal>socks5</literal> unterstützen,
- oder (wie im Fall von <command>cvsup</command>) eine Option
- <quote>passiv</quote> besitzen, die stets verhindert,
- dass verlangt wird, dass der Partner eine
- Verbindung zurück zur lokalen Maschine
- aufbaut.</para>
- </listitem>
-
- <listitem>
- <para>Leiten Sie mit <literal>nat addr</literal> alles
- zur lokalen Maschine um. Dieses Vorgehen ähnelt
- dem mit einem Vorschlaghammer.</para>
- </listitem>
- </orderedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="useful-port-numbers">
- <para>Hat jemand eine Liste mit nützlichen Portnummern
- erstellt?</para>
- </question>
-
- <answer>
- <para>Noch nicht, aber hieraus könnte eine solche
- entstehen (falls Interesse besteht). In jedem Beispiel
- sollte <replaceable>internal</replaceable> durch die
- IP-Adresse der Maschine ersetzt werden, auf der das Spiel
- laufen soll.</para>
-
- <itemizedlist>
- <listitem>
- <para><application>Asheron's Call</application></para>
-
- <para><literal>nat port udp
- <replaceable>internal</replaceable>:65000
- 65000</literal></para>
-
- <para>Konfigurieren Sie das Spiel manuell auf Port
- <literal>65000</literal> um. Wenn Sie von mehreren Rechner aus
- spielen wollen, weisen Sie jedem eine eindeutige Portnummer zu
- (also <literal>65001</literal>, <literal>65002</literal>,
- u.s.w.) und fügen Sie für jede
- Maschine eine eigene <literal>nat port</literal> Zeile
- ein.</para>
- </listitem>
-
- <listitem>
- <para><application>Half Life</application></para>
-
- <para><literal>nat port udp
- <replaceable>internal</replaceable>:27005
- 27015</literal></para>
- </listitem>
-
- <listitem>
- <para><application>PCAnywhere 8.0</application></para>
-
- <para><literal>nat port udp
- <replaceable>internal</replaceable>:5632
- 5632</literal></para>
-
- <para><literal>nat port tcp
- <replaceable>internal</replaceable>:5631
- 5631</literal></para>
- </listitem>
-
- <listitem>
- <para><application>Quake</application></para>
-
- <para><literal>nat port udp
- <replaceable>internal</replaceable>:6112
- 6112</literal></para>
- </listitem>
-
- <listitem>
- <para><application>Quake 2</application></para>
-
- <para><literal>nat port udp
- <replaceable>internal</replaceable>:27901
- 27910</literal></para>
-
- <para><literal>nat port udp
- <replaceable>internal</replaceable>:60021
- 60021</literal></para>
-
- <para><literal>nat port udp
- <replaceable>internal</replaceable>:60040
- 60040</literal></para>
- </listitem>
-
- <listitem>
- <para><application>Red Alert</application></para>
-
- <para><literal>nat port udp
- <replaceable>internal</replaceable>:8675
- 8675</literal></para>
-
- <para><literal>nat port udp
- <replaceable>internal</replaceable>:5009
- 5009</literal></para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="fcs-errors">
- <para>Was sind FCS-Fehler?</para>
- </question>
-
- <answer>
- <para>FCS steht für <literal>F</literal>rame
- <literal>C</literal>heck <literal>S</literal>equence.
- Jedes PPP-Paket besitzt eine Checksumme, um
- sicherzustellen, dass die empfangenen Daten dieselben
- sind, wie die versendeten. Falls die FCS eines
- ankommenden Paketes fehlerhaft ist, wird das Paket
- verworfen und der Zähler HDLC FCS wird erhöht.
- Der HDLC-Fehlerwert kann durch den Befehl <literal>show
- hdlc</literal> angezeigt werden.</para>
-
- <para>Falls Ihre Leitung schlecht ist (oder falls Ihr
- serieller Treiber Pakete verwirft), werden sie
- gelegentliche FCS-Fehler sehen. Normalerweise lohnt es
- sich nicht, sich hierüber Gedanken zu machen, obwohl
- das Kompressionsprotokoll hierdurch wesentlich langsamer
- wird. Wenn Sie ein externes Modem besitzen, stellen Sie
- sicher, dass Ihr Kabel ausreichend gegen
- Interferenzen abgeschirmt ist - das könnte das
- Problem beseitigen.</para>
-
- <para>Falls Ihre Leitung einfriert, sobald die Verbindung
- steht, und viele FCS-Fehler auftreten, könnte das
- daran liegen, dass Ihre Leitung nicht 8-Bit-rein ist.
- Stellen Sie sicher, dass Ihr Modem keinen
- Software-Flow-Control (XON/XOFF) verwendet. Falls Ihre
- Datenschnittstelle Software-Flow-Control verwenden
- <emphasis>muss</emphasis>, benutzen Sie den Befehl
- <literal>set accmap 0x000a0000</literal>, um &man.ppp.8;
- zu sagen, dass es die Zeichen <literal>^Q</literal>
- und <literal>^S</literal> maskieren soll.</para>
-
- <para>Ein weiterer Grund dafür, dass zu viele
- FCS-Fehler auftreten, könnte der sein, dass das
- andere Ende aufgehört hat, <acronym>ppp</acronym> zu
- sprechen. Aktivieren Sie <literal>async</literal>
- Logging, um festzustellen, ob es sich bei den eingehenden
- Daten tatsächlich um einen login- oder Shell-Prompt
- handelt. Wenn Sie am anderen Ende einen Shell-Prompt
- haben, ist es möglich, durch den Befehl
- <command>close lcp</command> &man.ppp.8; zu beenden, ohne
- die Verbindung zu beenden (ein folgender
- <command>term</command>-Befehl wird Sie wieder mit der
- Shell auf dem entfernten Rechner verbinden.</para>
-
- <para>Falls nichts in Ihrer Logdatei darauf hindeutet, warum
- die Verbindung beendet wurde, sollten Sie den
- Administrator des externen Rechners (Ihren ISP?) fragen,
- warum die Sitzung beendet worden ist.</para>
- </answer>
- </qandaentry>
-
- <qandaentry id="PPPoEwithNAT">
- <question id="macos-win98-pppoe-freeze">
- <para>Wieso hängen die Verbindungen meiner &macos;- und
- &windows;&nbsp;98-Maschinen (und eventuell auch andere
- &microsoft; Betriebssysteme), wenn auf meinem Gateway
- PPPoE läuft?</para>
- </question>
-
- <answer>
- <para>Vielen Dank an Michael Wozniak
- <email>mwozniak@netcom.ca</email> für die
- Erklärung und an Dan Flemming
- <email>danflemming@mac.com</email> für die
- Lösung für &macos;.</para>
-
- <para>Die Ursache des Problems ist ein so genannter
- <quote>Black Hole Router</quote>. &macos; und &windows;&nbsp;98
- (und wahrscheinlich auch die anderen Betriebssysteme von
- &microsoft;) senden TCP Pakete, bei denen zum einen die
- angeforderte Segmentgröße zu groß
- für einen PPPoE-Rahmen ist (die Default-MTU für
- Ethernet beträgt <literal>1500</literal> Byte)
- <emphasis>und</emphasis> bei denen das <quote>don't
- fragment</quote> Bit gesetzt
- ist (das ist bei TCP allerdings Standard). Außerdem
- sendet der Router beim Provider nicht die eigentlich
- notwendigen <quote>must fragment</quote>-Meldungen zu dem
- Webserver, von dem Sie gerade eine Seite laden wollen. Es
- ist auch möglich, dass diese Meldung zwar
- erzeugt, aber danach von einem Firewall vor dem Webserver
- abgefangen wird. Wenn Ihnen dieser Webserver nun ein
- Paket schickt, das nicht in einen PPPoE-Rahmen passt,
- dann verwirft der Router dieses Paket und die Seite wird
- nicht geladen (einige Seiten/Grafiken werden geladen, weil
- ihre Größe kleiner ist als die MSS). Dies
- scheint leider der Normalfall zu sein.</para>
-
- <para>Eine der möglichen Lösungen für dieses
- Problem ist die Erzeugung des folgenden Schlüssels in
- der Registry des Windows-Clients mit
- <application>regedit</application>:</para>
-
- <programlisting>HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000\MaxMTU</programlisting>
-
- <para>Der Schlüssels sollte vom Typ String sein und den
- Wert <literal>1436</literal> haben, da einige ADSL-Router
- nicht mit größeren Paketen umgehen können.
- Wenn Sie &windows;&nbsp;2000 verwenden, müssen Sie
- hingegen den Schlüssel
- <literal>Tcpip\Parameters\Interfaces\<replaceable>ID der
- Netzwerkkarte</replaceable>\MTU</literal> benutzen,
- außerdem müssen Sie als Typ <literal>DWORD</literal>
- verwenden.</para>
-
- <para>Die Knowledge Base von &microsoft; enthält weitere
- Informationen darüber, wie sie die MTU einer
- &windows;-Maschine ändern, damit diese mit einem
- NAT-Router korrekt zusammenarbeitet. Vom besonderen
- Interesse sind die Artikel <ulink
- url="http://support.microsoft.com/support/kb/articles/Q158/4/74.asp">Q158474
- - &windows; TCPIP Registry Entries</ulink> und <ulink
- url="http://support.microsoft.com/support/kb/articles/Q120/6/42.asp">Q120642
- - TCPIP &amp; NBT Configuration Parameters for
- &windowsnt;</ulink>.</para>
-
- <para>Bei &windows;&nbsp;2000 können Sie alternativ auch, wie
- im Artikel 120642 beschrieben, mit regedit das
- <literal>DWORD</literal>
- <literal>Tcpip\Parameters\Interfaces\<replaceable>ID der
- Netzwerkkarte</replaceable>\EnablePMTUBHDetect</literal>
- auf <literal>1</literal> setzen.</para>
-
- <para>Mit den Bordmitteln von &macos; ist es leider nicht
- möglich, die TCP/IP-Einstellungen zu verändern.
- Es gibt jedoch kommerzielle Lösungen, mit denen man die
- TCP/IP-Einstellungen bearbeiten kann. Wenn Sie als
- &macos;-Anwender NAT benutzen, suchen Sie ihre MTU-Einstellungen
- und geben Sie dort <literal>1450</literal> statt
- <literal>1500</literal> ein.</para>
-
- <para>&man.ppp.8; kennt seit Version 2.3 den Befehl
- <command>enable tcpmssfixup</command>, mit dem die MSS
- automatisch korrigiert wird. Wenn Sie einen ältere
- Version von &man.ppp.8; benutzen müssen, könnte
- der Port <filename role="package">net/tcpmssd</filename> für
- Sie interessant sein.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="desperation">
- <para>Nichts von alledem hilft - ich bin
- verzweifelt! Was soll ich machen?</para>
- </question>
-
- <answer>
- <para>Falls alles andere fehlschlägt, senden Sie
- möglichst umfangreiche Informationen,
- einschließlich Ihrer Konfigurationsdateien, wie Sie
- &man.ppp.8; starten, die relevanten Teile Ihrer Logdateien
- und die Ausgabe des Befehls <command>netstat -rn</command>
- (vor und nach Aufbau der Verbindung) an die
- Mailingliste &a.de.questions; oder die Newsgroup <ulink
- url="news:de.comp.os.unix.bsd">de.comp.os.unix.bsd</ulink>.
- Irgend jemand sollte Ihnen dann weiterhelfen.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="serial">
- <!--
- The FreeBSD German Documentation Project FAQ - serial
- communications,
- Uebersetzer: Robert S. F. Drehmel
-
- Original revision 1.54
- -->
-
- <title>Serielle Verbindungen</title>
-
- <para>Dieses Kapitel beantwortet häufig gestellte Fragen zu
- seriellen Verbindungen mit &os;. PPP und SLIP werden im
- <link linkend="networking">Abschnitt Netzwerke</link> behandelt.</para>
-
- <qandaset>
- <qandaentry>
- <question id="found-serial">
- <para>Wie kann ich feststellen, ob &os; meine seriellen
- Schnittstellen gefunden hat?</para>
- </question>
-
- <answer>
- <para>Wenn der &os; Kernel bootet, testet er die
- seriellen Schnittstellen, für die er konfiguriert
- wurde. Sie können entweder Ihrem System aufmerksam
- beim Booten zusehen und die angezeigten Nachrichten lesen,
- oder Sie führen den folgenden Befehl aus, nachdem Ihr System
- hochgefahren ist und läuft:</para>
-
- <screen>&prompt.user; <userinput>dmesg | grep -E "^sio[0-9]"</userinput></screen>
-
- <para>Hier ist ein Beispiel einer Ausgabe nach dem oben
- genannten Befehl:</para>
-
- <programlisting>
-sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
-sio0: type 16550A
-sio1: <16550A-compatible COM port> port 0x2f8-0x2ff irq 3 on acpi0
-sio1: type 16550A</programlisting>
-
- <para>Es zeigt zwei serielle Schnittstellen. Die erste
- verwendet Port-Adresse <literal>0x3f8</literal>, IRQ&nbsp;4 und
- hat einen 16550A UART Chip. Die zweite benutzt ebenfalls
- einen 16550A UART, jedoch Port-Adresse
- <literal>0x2f8</literal> und IRQ&nbsp;3. Modemkarten werden
- wie serielle Schnittstellen behandelt. Der einzige
- Unterschied ist, dass an diesen Schnittstellen immer
- ein Modem <quote>angeschlossen</quote> ist.</para>
-
- <para>Der <filename>GENERIC</filename> Kernel beinhaltet
- Unterstützung für zwei serielle Schnittstellen,
- die den im Beispiel genannten Port und IRQ verwenden.
- Wenn diese Einstellungen nicht richtig für Ihr System
- sind, Sie Modemkarten hinzugefügt oder mehr serielle
- Schnittstellen haben als Ihre Kernelkonfiguration
- zulässt, konfigurieren Sie Ihren Kernel einfach
- neu. In dem Kapitel über die <link
- linkend="make-kernel">Kernelkonfiguration</link> finden
- Sie mehr Details.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="found-modem">
- <para>Wie kann ich feststellen, ob &os; meine Modemkarten
- gefunden hat?</para>
- </question>
-
- <answer>
- <para>Die vorherige Frage sollte darauf eine Antwort geben.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="access-serial-ports">
- <para>Wie kann ich auf die seriellen Schnittstellen in
- &os; zugreifen?</para>
- </question>
-
- <answer>
- <para>Die in &man.sio.4; beschriebene serielle Schnittstelle
- <devicename>sio2</devicename> (<devicename>COM3</devicename>
- unter &ms-dos;/&windows;), ist
- <devicename>/dev/cuad2</devicename> für
- Geräte mit abgehenden Verbindungen und
- <devicename>/dev/ttyd2</devicename> für Geräte mit
- eingehenden Verbindungen. Was ist der Unterschied
- zwischen den beiden Geräteklassen?</para>
-
- <para>Sie benutzen
- <devicename>ttyd<replaceable>X</replaceable></devicename>
- für eingehende Verbindungen. Wird
- <devicename>/dev/ttyd<replaceable>X</replaceable></devicename>
- im blockierenden Modus geöffnet, wartet ein
- Prozess darauf, dass das entsprechende
- <devicename>cuad<replaceable>X</replaceable></devicename>
- Gerät inaktiv und der Empfangssignalpegel
-
- <footnote>
- <para>Mit <quote>Empfangssignalpegel</quote> oder
- <quote>Trägersignalerkennung</quote> wird hier
- die <foreignphrase>carrier detect</foreignphrase>
- Leitung bezeichnet.</para>
- </footnote>
-
- aktiv ist. Wird das
- <devicename>cuad<replaceable>X</replaceable></devicename>
- Gerät geöffnet, vergewissert es sich, dass
- die serielle Schnittstelle nicht bereits von dem
- <filename>ttyd<replaceable>X</replaceable></filename>
- Gerät in Gebrauch ist. Sollte die Schnittstelle
- verfügbar sein, <quote>stiehlt</quote> es sie von dem
- <devicename>ttyd<replaceable>X</replaceable></devicename>
- Gerät. Das
- <devicename>cuad<replaceable>X</replaceable></devicename>
- Gerät kümmert sich nicht um
- Trägersignalerkennung. Mit diesem Schema und einem
- automatisch antwortenden Modem, können sich Benutzer
- von aussen einloggen, Sie können weiterhin mit
- demselben Modem wählen und das System kümmert
- sich um die Konflikte.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="enable-multiport-serial">
- <para>Wie kann ich die Unterstützung für eine
- Karte mit mehreren seriellen Schnittstellen
- aktivieren?</para>
- </question>
-
- <answer>
- <para>Die Sektion über die Kernelkonfiguration bietet
- Informationen darüber, wie Sie Ihren Kernel
- konfigurieren. Für eine Karte mit mehreren seriellen
- Schnittstellen, schreiben Sie eine &man.sio.4; Zeile
- für jede serielle Schnittstelle auf der Karte in die Datei
- &man.device.hints.5;. Aber achten Sie darauf, den
- IRQ nur in einem der Einträge zu platzieren. Alle seriellen
- Schnittstellen auf der Karte sollten sich einen IRQ teilen. Daher
- sollten Sie den IRQ nur beim letzten Eintrag angeben.
- Aktivieren Sie auch die folgende Option in der
- Kernelkonfigurationsdatei:</para>
-
- <programlisting>options COM_MULTIPORT</programlisting>
-
- <para>Das folgende <filename>/boot/device.hints</filename> Beispiel
- ist geeignet für eine AST Karte mit 4 seriellen
- Schnittstellen, die IRQ&nbsp;12 benutzt:</para>
-
- <programlisting>hint.sio.4.at="isa"
-hint.sio.4.port="0x2a0"
-hint.sio.4.flags="0x701"
-hint.sio.5.at="isa"
-hint.sio.5.port="0x2a8"
-hint.sio.5.flags="0x701"
-hint.sio.6.at="isa"
-hint.sio.6.port="0x2b0"
-hint.sio.6.flags="0x701"
-hint.sio.7.at="isa"
-hint.sio.7.port="0x2b8"
-hint.sio.7.flags="0x701"
-hint.sio.7.irq="12"</programlisting>
-
- <para>Die Flags zeigen an, dass die Master-Schnittstelle die
- Minor-Nummer <literal>7</literal> (<literal>0x700</literal>) hat
- und dass sich alle Schnittstellen einen IRQ teilen
- (<literal>0x001</literal>).</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="multiport-serial-share-irq">
- <para>Kann &os; mehrere Karten mit mehreren seriellen
- Schnittstellen mit den gleichen IRQs verwalten?</para>
- </question>
-
- <answer>
- <para>Noch nicht. Sie müssen für jede Karte einen
- anderen IRQ verwenden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="default-serial-params">
- <para>Kann ich die vorgegebenen seriellen Parameter für
- eine Schnittstelle einstellen?</para>
- </question>
-
- <answer>
- <para>Lesen Sie den Abschnitt <ulink
- url="&url.books.handbook;/serial.html#SERIAL-HW-CONFIG">Serielle
- Datenübertragung</ulink> im &os; Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="enable-dialup">
- <para>Wie kann ich Einwahl-Logins über mein Modem
- aktivieren?</para>
- </question>
-
- <answer>
- <para>Lesen Sie dazu bitte den Abschnitt über <ulink
- url="&url.books.handbook;/dialup.html">Einwählverbindungen</ulink>
- im &os; Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="dumb-terminal">
- <para>Wie kann ich ein Hardware-Terminal mit meiner &os; Box
- verbinden?</para>
- </question>
-
- <answer>
- <para>Diese Information können Sie im Abschnitt <ulink
- url="&url.books.handbook;/term.html">Terminals</ulink> im &os;
- Handbuch finden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="cannot-tip">
- <para>Warum kann ich <command>tip</command> oder
- <command>cu</command> nicht laufen lassen?</para>
- </question>
-
- <answer>
- <para>Auf Ihrem System können die Programme
- &man.tip.1; und &man.cu.1; auf das Verzeichnis <filename
- class="directory">/var/spool/lock</filename> nur über den
- Benutzer <username>uucp</username> und die Gruppe
- <groupname>dialer</groupname> zugreifen. Sie
- können die Gruppe <groupname>dialer</groupname>
- verwenden, um zu kontrollieren wer Zugriff auf Ihr Modem
- oder entfernte Systeme hat. Fügen Sie sich einfach
- selbst zur Gruppe <groupname>dialer</groupname>
- hinzu.</para>
-
- <para>Als Alternative können Sie jeden Benutzer auf
- Ihrem System &man.tip.1; und &man.cu.1; verwenden lassen,
- dazu müssen Sie das folgende eingeben:</para>
-
- <screen>&prompt.root; <userinput>chmod 4511 /usr/bin/cu</userinput>
-&prompt.root; <userinput>chmod 4511 /usr/bin/tip</userinput></screen>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="hayes-unsupported">
- <para>Mein Hayes Modem wird nicht unterstützt &ndash; was
- kann ich tun?</para>
- </question>
-
- <answer>
- <para>Lesen Sie <ulink
- url="&url.books.handbook;/dialout.html#HAYES-UNSUPPORTED">diese
- Antwort</ulink> im &os; Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="direct-at">
- <para>Wie soll ich die AT Befehle eingeben?</para>
- </question>
-
- <answer>
- <para>Im &os; Handbuch finden Sie dazu <ulink
- url="&url.books.handbook;/dialout.html#DIRECT-AT">diese
- Antwort</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="gt-failure">
- <para>Wieso funktioniert das <literal>@</literal>
- Zeichen für die <literal>pn</literal> Fähigkeit
- nicht?</para>
- </question>
-
- <answer>
- <para>Lesen Sie dazu <ulink
- url="&url.books.handbook;/dialout.html#GT-FAILURE">diese
- Antwort</ulink> im &os; Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="dial-command-line">
- <para>Wie kann ich von der Kommandozeile eine Telefonnummer
- wählen?</para>
- </question>
-
- <answer>
- <para>Lesen Sie <ulink
- url="&url.books.handbook;/dialout.html#DIAL-COMMAND-LINE">diese
- Antwort</ulink> im &os; Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="set-bps">
- <para>Muss ich dabei jedes Mal die bps Rate
- angeben?</para>
- </question>
-
- <answer>
- <para>Im &os; Handbuch finden Sie dazu <ulink
- url="&url.books.handbook;/dialout.html#SET-BPS">diese
- Antwort</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="terminal-server">
- <para>Wie kann ich möglichst komfortabel über
- einen Terminal-Server auf verschiedene Rechner
- zugreifen?</para>
- </question>
-
- <answer>
- <para>Lesen Sie im &os; Handbuch <ulink
- url="&url.books.handbook;/dialout.html#TERMINAL-SERVER">diese
- Antwort</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="tip-multiline">
- <para>Kann tip mehr als eine Verbindung für jede Seite
- ausprobieren?</para>
- </question>
-
- <answer>
- <para>Lesen Sie <ulink
- url="&url.books.handbook;/dialout.html#TIP-MULTILINE">diese
- Antwort</ulink> im &os; Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="multi-controlp">
- <para>Warum muss ich zweimal <keycombo
- action="simul"><keycap>Ctrl</keycap><keycap>P</keycap></keycombo>
- tippen, um ein <keycombo
- action="simul"><keycap>Ctrl</keycap><keycap>P</keycap></keycombo>
- zu senden?</para>
- </question>
-
- <answer>
- <para>Im &os; Handbuch finden Sie dazu <ulink
- url="&url.books.handbook;/dialout.html#MULTI-CONTROLP">diese
- Antwort</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="uppercase">
- <para>Warum ist auf einmal alles was ich schreibe in
- GROSSBUCHSTABEN??</para>
- </question>
-
- <answer>
- <para>Lesen Sie im &os; Handbuch <ulink
- url="&url.books.handbook;/dialout.html#UPPERCASE">diese
- Antwort</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="tip-filetransfer">
- <para>Wie kann ich Dateien mit <command>tip</command>
- übertragen?</para>
- </question>
-
- <answer>
- <para>Lesen Sie <ulink
- url="&url.books.handbook;/dialout.html#TIP-FILETRANSFER">diese
- Antwort</ulink> im &os; Handbuch.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="zmodem-tip">
- <para>Wie kann ich zmodem mit <command>tip</command>
- laufen lassen?</para>
- </question>
-
- <answer>
- <para>Sie finden dazu <ulink
- url="&url.books.handbook;/dialout.html#ZMODEM-TIP">diese
- Antwort</ulink> im &os; Handbuch.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="misc">
- <title>Verschiedene Fragen</title>
-
- <qandaset>
- <qandaentry>
- <question id="more-swap">
- <para>&os; benutzt viel mehr Swap-Speicher als &linux;.
- Warum?</para>
- </question>
-
- <answer>
- <para>Es sieht nur so aus, als ob &os; mehr Swap benutzt,
- als &linux;. Tatsächlich ist dies nicht der Fall. In
- dieser Hinsicht besteht der Hauptunterschied zwischen
- &os; und &linux; darin, dass &os; vorbeugend
- vollkommen untätige, unbenutzte Seiten aus dem
- Hauptspeicher in den Swap-Bereich auslagert, um mehr
- Hauptspeicher für die aktive Nutzung zur
- Verfügung zu stellen. &linux; tendiert dazu, nur als
- letzten Ausweg Seiten in den Swap-Bereich auszulagern.
- Die spürbar höhere Nutzung des Swap-Speichers
- wird durch die effizientere Nutzung des Hauptspeichers
- wieder ausgeglichen.</para>
-
- <para>Beachten Sie, dass &os; in dieser Hinsicht
- zwar vorbeugend arbeitet, es entscheidet jedoch nicht
- willkürlich, Seiten auszulagern, wenn das System
- vollkommen untätig ist. Deshalb werden Sie
- feststellen, dass nicht alle Seiten Ihres Systems
- ausgelagert wurden, wenn Sie morgens aufstehen, nachdem
- das System eine Nacht lang nicht benutzt worden ist.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="top-freemem">
- <para>Warum zeigt mir &man.top.1; so wenig freien Speicher
- an, obwohl nur wenige Programme laufen?</para>
- </question>
-
- <answer>
- <para>Die Antwort ist ganz einfach: Freier Speicher ist
- verschwendeter Speicher. Der &os; Kernel verwendet den
- von den Programmen nicht genutzten Speicher automatisch
- für den Plattencache. Die in &man.top.1; für
- <literal>Inact</literal>, <literal>Cache</literal> und
- <literal>Buf</literal> gemeldeten Werte stehen alle
- für zwischengespeicherte Daten mit unterschiedlichem
- Alter. Wenn das System wiederholt auf Daten zugreifen
- muss, braucht es nicht auf die langsame Platte
- zuzugreifen, da die Daten noch zwischengespeichert sind.
- Dadurch erhöht sich die Performance. Ganz generell
- ist es ein gutes Zeichen, wenn &man.top.1; einen kleinen
- Wert bei <literal>Free</literal> anzeigt, solange der Wert
- nicht <emphasis>extrem</emphasis> klein ist.</para>
-
- <para>Anmerkung des Übersetzers: Mit <quote>extrem
- klein</quote> sind hier Werte unterhalb 512 KByte
- gemeint.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="chmod-symlinks">
- <para>Warum ändert <command>chmod</command> die
- Zugriffsrechte auf symbolische Links nicht?</para>
- </question>
-
- <answer>
- <para>Für symbolische Links gibt es keine separaten
- Zugriffsrechte und standardmäßig folgt
- &man.chmod.1; dem Link, wenn möglich; die Zugriffsrechte
- für die Datei, auf die der symbolische Link zeigt, werden also
- verändert. Wenn Sie eine Datei mit dem Namen
- <filename>foo</filename> und einen auf diese Datei
- zeigenden symbolischen Link mit dem Namen
- <filename>bar</filename> haben, wird das folgende Kommando
- niemals einen Fehler melden.</para>
-
- <screen>&prompt.user; <userinput>chmod g-w bar</userinput></screen>
-
- <para>Trotzdem werden die Zugriffsrechte für
- <filename>bar</filename> nicht geändert.</para>
-
- <para>Wenn Sie die Zugriffsrechte in der Dateihierarchie an der
- Wurzeldatei anstatt der Datei selbst ändern möchten,
- müssen Sie entweder <option>-H</option> oder
- <option>-L</option> zusammen mit der Option
- <option>-R</option> benutzen. Weitere Informationen
- finden Sie in den Manualpages &man.chmod.1; und
- &man.symlink.7;.</para>
-
- <warning>
- <para>Die Option <option>-R</option> bewirkt ein
- <emphasis>rekursives</emphasis> &man.chmod.1;.
- Seien Sie vorsichtig, wenn Sie bei
- &man.chmod.1; Verzeichnisse oder symbolische
- Links zu Verzeichnissen angeben. Wenn Sie die
- Zugriffsrechte eines Verzeichnisses ändern
- möchten, das durch einen symbolischen Link
- referenziert wird, benutzen Sie &man.chmod.1;
- ohne irgendwelche Optionen und folgen dem symbolischen
- Link durch einen abschließenden Schrägstrich
- (<filename class="directory">/</filename>). Falls z.B.
- <filename>foo</filename> ein symbolischer Link zum
- Verzeichnis <filename class="directory">bar</filename> ist und
- Sie die Zugriffsrechte von <filename>foo</filename>
- (tatsächlich <filename class="directory">bar</filename>)
- ändern möchten, dann benutzen Sie etwas ähnliches
- wie:</para>
-
- <screen>&prompt.user; <userinput>chmod 555 foo/</userinput></screen>
-
- <para>Durch den abschließenden Schrägstrich folgt
- &man.chmod.1; dem symbolischen Link
- <filename>foo</filename>, um die Zugriffsrechte für
- das Verzeichnis <filename class="directory">bar</filename> zu
- ändern.</para>
- </warning>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="dos-binaries">
- <para>Kann ich DOS-Programme unter &os; ausführen?</para>
- </question>
-
- <answer>
- <para>Ja. Sie können
- <filename role="package">emulators/doscmd</filename>
- verwenden, das über die Ports-Sammlung verfügbar
- ist.</para>
-
- <para>Falls <application>doscmd</application> nicht ausreicht,
- können Sie den Port
- <filename role="package">emulators/pcemu</filename>
- verwenden, der einen 8088 und genug BIOS-Funktionen emuliert,
- um DOS-Textanwendungen laufen zu lassen. Der Port
- benötigt das X-Window-System.</para>
-
- <para>Sie können auch <filename
- role="package">emulators/dosbox</filename> aus der &os; Ports
- Sammlung ausprobieren. Der Hauptaugenmerk liegt bei dieser
- Anwendung auf der Emulation alter DOS Spiele, deren Dateien sich im
- lokalen Dateisystem befinden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="translation">
- <para>Was muss ich tun, um die &os;-Dokumentation in
- meine Muttersprache zu übersetzen?</para>
- </question>
-
- <answer>
- <para>Informationen zu diesem Thema finden Sie auf der Webseite des
- <ulink
- url="https://doc.bsdgroup.de/index.html">&os; German
- Documentation Project</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="freebsd-mail-bounces">
- <para>Warum kommen alle meine Mails, die ich an <hostid
- role="domainname">@FreeBSD.org</hostid> schicke, wieder
- zurück?</para>
- </question>
-
- <answer>
- <para>Das Mailsystem von <hostid
- role="domainname">FreeBSD.org</hostid> verwendet einige der
- strengeren Überprüfungen von
- <application>Postfix</application> für eingehende Mails.
- Mails, bei denen es Anzeichen für Konfigurationsprobleme
- oder Spam gibt, werden nicht akzeptiert. Dies kann aus einem
- der folgenden Gründe geschehen:</para>
-
- <itemizedlist>
- <listitem>
- <para>Die Mail kommt von einem System oder Netzwerk,
- dass für Spam-Aktivitäten bekannt
- ist.</para>
-
- <para>Die Mailserver von &os; akzeptierten keine
- Mails von bekannten Spam-Quellen. Wenn Sie eine
- Firma oder Domain benutzen, die Spam erzeugt oder
- verteilt, sollten Sie sich einen anderen ISP
- suchen.</para>
- </listitem>
-
- <listitem>
- <para>Der Mailtext enthält HTML.</para>
-
- <para>Mail sollte immer im Klartext gesendet werden, Sie
- sollten ihr Mailprogramm entsprechend
- einstellen.</para>
- </listitem>
-
- <listitem>
- <para>Das Mailsystem kann die IP-Adresse des
- einliefernden Systems nicht in einen symbolischen
- Namen umwandeln.</para>
-
- <para>Funktionierendes reverse DNS ist eine
- Vorbedingung, damit ihre Mails angenommen wird.
- Sorgen Sie dafür, dass der reverse DNS
- für Ihren Mailserver korrekt konfiguriert wird.
- Viele Anbieter für Privatkunden geben Ihnen diese
- Möglichkeit nicht. In diesem Fall sollten Sie
- Ihre Mails über den Mailserver Ihres Providers
- versenden.</para>
- </listitem>
-
- <listitem>
- <para>Der Rechnername, der im EHLO/HELO Teil der SMTP
- Kommunikation übergeben wird, kann nicht zu einer
- IP-Adresse aufgelöst werden.</para>
-
- <para>Damit die E-Mail akzeptiert wird, brauchen Sie einen
- voll qualifizierten Rechnernamen, der im DNS eingetragen ist.
- Wenn Sie diesen nicht besitzen, benutzen Sie bitte den
- Mailserver Ihres Providers, um E-Mails zu verschicken.</para>
- </listitem>
-
- <listitem>
- <para>Die Message-ID Ihrer Mail endet in
- <literal>localhost</literal>.</para>
-
- <para>Einige Mail-Clients generieren eine Message-ID, die
- nicht akzeptiert wird. Sie müssen Ihren Mail-Client
- so konfigurieren, dass er eine gültige Message-ID
- generiert. Alternativ können Sie die Message-ID von
- Ihrem Mailserver umschreiben lassen.</para>
- </listitem>
- </itemizedlist>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="free-account">
- <para>Wo kann ich einen freien &os;-Account bekommen?</para>
- </question>
-
- <answer>
- <para>Das &os; Project bietet zwar keinen freien Zugang
- zu seinen Servern an; andere Firmen bieten jedoch frei
- zugängliche &unix; Systeme. Die Kosten variieren und
- es kann sein, dass nicht alle Dienste zur
- Verfügung stehen.</para>
-
- <para><ulink url="http://www.arbornet.org/">Arbornet, Inc</ulink>,
- auch als <emphasis>M-Net</emphasis> bekannt, bietet seit 1983
- uneingeschränkten Zugang zu &unix; Systemen.
- Zunächst wurde eine Altos-Maschine mit System III
- benutzt, 1991 erfolgte dann der Wechsel zu BSD/OS. Im
- Juni 2000 erfolgte ein erneuter Wechsel, diesmal zu
- &os;. <emphasis>M-Net</emphasis> bietet Zugang mit
- <application>Telnet</application> und
- <application>SSH</application>
- und den Zugang zur gesamten Software von &os;. Allerdings ist
- der Zugriff auf das Netzwerk auf Mitglieder und
- Gönner beschränkt, die eine Spende an die
- nicht-kommerzielle Organisation geleistet haben.
- <emphasis>M-Net</emphasis> stellt zusätzlich ein
- Mailbox-System und einen interaktiven Chat zur
- Verfügung.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="sup-define">
- <para>Was ist <command>sup</command> und wie benutze ich
- es?</para>
- </question>
-
- <answer>
- <para>Der Name <ulink
- url="http://www.FreeBSD.org/cgi/ports.cgi?^sup">SUP</ulink> steht
- für Software Update Protocol und wurde von der CMU (Carnegie
- Mellon University) entwickelt, um ihre Entwicklungszweige
- zu synchronisieren. Es wurde benutzt, um entfernte
- Sites mit den zentralen Quellcodeentwicklungen des Projekts zu
- synchronisieren.</para>
-
- <para>SUP ist nicht sehr bandbreitenfreundlich und wurde
- abgelöst. Die derzeit empfohlene Methode, um Ihren
- Quellcode auf dem neuesten Stand zu halten ist <ulink
- url="&url.books.handbook;/synching.html#CVSUP">
- CVSup</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="daemon-name">
- <para>Wie heißt das niedliche rote Kerlchen?</para>
- </question>
-
- <answer>
- <para>Er ist namenlos, es ist einfach der <quote>der BSD
- Daemon</quote>. Wenn Sie ihm unbedingt einen Namen geben
- wollen, rufen Sie ihn <quote>beastie</quote>. Beachten
- Sie aber, dass <quote>beastie</quote> wie
- <quote>BSD</quote> ausgesprochen wird.</para>
-
- <para>Weitere Informationen über den BSD daemon finden
- Sie auf <ulink
- url="http://www.mckusick.com/beastie/index.html">seiner
- Homepage</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="use-beastie">
- <para>Kann ich Bilder des BSD Daemon verwenden?</para>
- </question>
-
- <answer>
- <para>Eventuell. Der BSD Daemon unterliegt dem Copyright
- von Marshall Kirk McKusick. Wenn Sie genaue Informationen
- über die Einschränkungen bei der Nutzung
- brauchen, sollten Sie sein <ulink
- url="http://www.mckusick.com/beastie/mainpage/copyright.html">Statement
- on the Use of the BSD Daemon Figure</ulink> lesen.</para>
-
- <para>Kurz gesagt, können Sie den BSD Daemon benutzen,
- solange es für einen privaten Zweck ist und die
- Nutzung geschmackvoll bleibt. Für den kommerziellen
- Einsatz brauchen Sie die Zustimmung von &a.mckusick;.
- Weitere Informationen erhalten Sie auf der Webseite <ulink
- url="http://www.mckusick.com/beastie/index.html">BSD
- Daemon's home page</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="daemon-images">
- <para>Woher kann ich Bilder des BSD Daemon bekommen?</para>
- </question>
-
- <answer>
- <para>Einige Bilder in den Format xfig und eps sind unter <filename
- class="directory">/usr/share/examples/BSD_daemon/</filename> zu
- finden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="glossary">
- <para>Ich habe in den Mailinglisten eine Abkürzung oder
- einen Begriff gesehen, den ich nicht kenne. Wo erhalte
- ich eine Erklärung dazu?</para>
- </question>
-
- <answer>
- <para>Sehen Sie bitte im <ulink
- url="&url.books.handbook;/freebsd-glossary.html">
- &os;-Glossar</ulink> nach.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="bikeshed-painting">
- <para>Warum sollte mich die Farbe des Fahrradschuppens
- interessieren?</para>
- </question>
-
- <answer>
- <para>Die ganz, ganz kurze Antwort ist: Überhaupt nicht.
- Die etwas längere Antwort lautet: Nur weil Sie in der
- Lage sind, einen Fahrradschuppen zu bauen, müssen Sie
- noch lange nicht andere davon abhalten, nur weil Ihnen die
- Farbe nicht gefällt. Dies ist natürlich eine
- Metapher dafür, dass Sie nicht eine Diskussion über
- jede kleine Änderung beginnen sollen, nur weil Sie
- das können. Einige Leute behaupten sogar, dass
- die Anzahl der (nutzlosen) Kommentare über eine
- Änderung umgekehrt proportional zur
- Komplexität der Änderung ist.</para>
-
- <para>Die noch längere und vollständigere Antwort
- ist, dass &a.phk; nach einen langen Diskussion
- über das Thema "Soll &man.sleep.1; Sekundenbruchteile
- als Parameter akzeptieren?" eine lange Mail mit dem Titel
- <quote><ulink
- url="http://www.FreeBSD.org/cgi/getmsg.cgi?fetch=506636+517178+/usr/local/www/db/text/1999/freebsd-hackers/19991003.freebsd-hackers">A
- bike shed (any colour will do) on greener
- grass...</ulink></quote> schrieb. Die einschlägigen
- Teile der Nachricht lauteten:</para>
-
- <blockquote>
- <attribution>&a.phk; in &a.hackers.name;,
- 2.10.1999</attribution>
-
- <para>Einige von Euch haben mich gefragt, <quote>Was
- meinst Du mit dem Fahrradschuppen?</quote></para>
-
- <para>Es ist eine lange oder eigentlich eher eine sehr
- alte und doch sehr kurze Geschichte. C. Northcote
- Parkinson schrieb in den frühen Sechzigern ein Buch
- mit dem Namen <quote>Parkinson's Law</quote>, das viele
- Einblick in die Beziehungen innerhalb des Managements
- gibt.</para>
-
- <para><emphasis>[ein paar Kommentare zum Buch
- gestrichen]</emphasis></para>
-
- <para>In dem Beispiel mit dem Fahrradschuppen ist die
- andere wichtige Komponente ein Kernkraftwerk. Ich
- glaube, dass zeigt schon, wie alt dieses Buch
- ist.</para>
-
- <para>Parkinson zeigte, dass man zum Vorstand gehen
- kann und die Genehmigung für ein mehrere Millionen
- oder sogar Milliarden Dollar teures Kernkraftwerk
- bekommt; wenn man aber einen Fahrradschuppen bauen will,
- wird man in endlose Diskussionen verwickelt.</para>
-
- <para>Laut Parkinson liegt das daran, dass ein
- Kernkraftwerk so groß, so teuer und so kompliziert
- ist, dass die Leute es nicht verstehen. Und bevor
- sie versuchen, es zu verstehen, verlassen Sie sich
- lieber darauf, dass irgend jemand sicherlich die
- ganzen Details geprüft hat, bevor das Projekt bis
- zum Vorstand gekommen ist. Im Buch von Richard P.
- Feynmann finden sich einige interessante und sehr
- passende Beispiele aus dem Gebiet von Los
- Alamos.</para>
-
- <para>Ein Fahrradschuppen ist was anderes. Jeder kann an
- seinem freien Wochenende einen bauen und hat trotzdem
- noch genug Zeit für die Sportschau. Daher ist es
- unwichtig, wie gut man sich vorbereitet und wie sinnvoll
- der eigene Vorschlag ist. Irgend jemand wird die
- Möglichkeit nutzen und zeigen, dass er seine
- Arbeit tut, dass er aufmerksam ist, dass er
- <emphasis>da ist</emphasis>.</para>
-
- <para>In Dänemark nennen wir dieses Verhalten
- <quote>Seine Fingerabdrücke hinterlassen</quote>.
- Es geht um persönlichen Stolz und Prestige; die
- Chance, auf irgend etwas zu zeigen und zu sagen zu
- können: <quote>Da! Das habe
- <emphasis>Ich</emphasis> getan.</quote> Politiker leiden
- sehr stark darunter, aber viele Leute verhalten sich so,
- wenn sie die Chance haben. Denkt einfach mal an
- Fußabdrücke in feuchtem Zement.</para>
- </blockquote>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="funnies">
- <title>Nicht ganz ernstgemeinte Fragen</title>
-
- <qandaset>
- <qandaentry>
- <question id="very-very-cool">
- <para>Wie cool ist &os;?</para>
- </question>
-
- <answer>
- <para>Q. Hat irgend jemand Temperaturmessungen
- durchgeführt, während &os; läuft? Ich
- weiss, dass &linux; cooler läuft, als DOS, habe
- aber niemals gesehen, dass &os; erwähnt
- wurde. Es scheint sehr heiß zu laufen.</para>
-
- <para>A. Nein, aber wir haben zahlreiche Geschmackstests mit
- verblendeten Freiwilligen durchgeführt, denen
- außerdem zuvor 250 Mikrogramm LSD-25 verabreicht
- wurden. 35% der Freiwilligen sagte, dass &os;
- nach Orange schmeckte, &linux; hingegen schmecke wie
- <quote>purple haze</quote> (Anm. d. Übersetzers: Song
- von Jimmy Hendrix und LSD-Marke). Keine der Gruppen hat
- besondere Abweichungen der Temperatur erwähnt.
- Eventuell hätten wir sämtliche Ergebnisse dieser
- Untersuchung fortwerfen sollen, als wir festgestellt
- haben, dass zu viele der Freiwilligen den Raum
- während der Tests verlassen haben und dadurch die
- Ergebnisse verfälscht haben. Wir glauben, dass
- die meisten der Freiwilligen nun bei Apple sind und an
- ihrer neuen <quote>scratch and sniff</quote>
- Oberfläche arbeiten. Es ist ein lustiges, altes
- Geschäft, in dem wir uns befinden!</para>
-
- <para>Ernsthaft, &os; und &linux; benutzen beide die
- Instruktion <acronym>HLT</acronym> (halt), wenn das System
- untätig ist, wodurch der Energieverbrauch und dadurch
- die produzierte Wärme reduziert wird. Falls Sie auch
- noch APM (Advanced Power Management) konfiguriert haben,
- kann &os; Ihre CPU auch in einen Low-Power-Modus bringen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="letmeoutofhere">
- <para>Wer kratzt in meinen Speicherbänken??</para>
- </question>
-
- <answer>
- <para>Q. Gibt es irgend etwas <quote>seltsames</quote>, das
- &os; tut, wenn ich den Kernel kompiliere, das dazu
- führt, dass der Speicher ein kratzendes
- Geräusch macht? Bei der Kompilierung (und auch
- für einen kurzen Moment nach der Erkennung des
- Floppy-Laufwerks beim Hochfahren), kommt ein seltsames
- kratzendes Geräusch von etwas das die
- Speicherbänke zu sein scheinen.</para>
-
- <para>A. Ja! In der BSD-Dokumentation finden Sie
- häufige Verweise auf <quote>Daemons</quote> und was
- die meisten Leute nicht wissen, ist, dass diese sich
- auf echte, nicht-körperlichen Wesen beziehen, die
- Besitz von Ihrem Computer ergriffen haben. Das kratzende
- Geräusch, das von Ihrem Speicher kommt, ist in
- Wirklichkeit hochtöniges Flüstern, das unter den
- Daemons ausgetauscht wird, während Sie entscheiden,
- wie Sie die verschiedenen Systemadministrationsaufgaben,
- am besten erledigen.</para>
-
- <para>Wenn Sie das Geräusch stört, wird ein
- <command>fdisk /mbr</command> sie vertreiben, aber wundern
- Sie sich nicht, wenn sie feindlich reagieren und
- versuchen, Sie aufzuhalten. Wenn Sie während der
- Ausführung zu irgendeinem Zeitpunkt die teuflische
- Stimme von Bill Gates aus dem eingebauten Lautsprecher
- kommen hören, laufen Sie weg und sehen Sie sich auf
- keinen Fall um! Befreit von dem ausgleichenden
- Einfluss der BSD Dämonen sind die beiden
- Dämonen von DOS und &windows; oft dazu in der Lage, die
- totale Kontrolle über Ihre Maschine für die
- ewige Verdammung Ihrer Seele zurückzuerlangen. Da
- Sie jetzt die Wahrheit kennen, würden Sie es
- vorziehen, sich an die Geräusche zu gewöhnen,
- wenn Sie die Wahl hätten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="changing-lightbulbs">
- <para>Wie viele &os;-Hacker braucht man, um eine
- Glühbirne auszuwechseln?</para>
- </question>
-
- <answer>
- <para>Eintausendeinhundertundneunundsechzig:</para>
-
- <para>Dreiundzwanzig, die sich bei -CURRENT beschweren,
- dass das Licht aus ist;</para>
-
- <para>Vier, die behaupten, dass es sich um ein
- Konfigurationsproblem handelt und dass solche Dinge
- wirklich nach -questions gehören;</para>
-
- <para>Drei, die PRs hierzu einreichen, einer von ihnen wird
- falsch unter DOC abgelegt und fristet sein Dasein im
- Dunkeln;</para>
-
- <para>Einen, der eine ungetestete Glühbirne einreicht,
- wonach buildworld nicht mehr funktioniert, und sie dann
- fünf Minuten später wieder herausnimmt;</para>
-
- <para>Acht, die die PR-Erzeuger beschimpfen, weil sie zu
- ihren PRs keine Patche hinzugefügt haben;</para>
-
- <para>Fünf, die sich darüber beschweren, dass
- buildworld nicht mehr funktioniert;</para>
-
- <para>Einunddreißig, die antworten, dass es bei
- ihnen funktioniert und dass sie cvsup wohl zu einigem
- ungünstigen Zeitpunkt durchgeführt
- haben;</para>
-
- <para>Einen, der einen Patch für eine neue
- Glühbirne an -hackers schickt;</para>
-
- <para>Einen, der sich beschwert, dass es vor drei
- Jahren Patches hierfür hatte, aber als er sie nach
- -CURRENT schickte, sind sie einfach ignoriert worden und
- er hatte schlechte Erfahrungen mit dem PR-System; nebenbei
- ist die vorgeschlagene Glühbirne nicht
- reflexiv;</para>
-
- <para>Siebenunddreißig, die schreien, dass
- Glühbirnen nicht in das Basissystem gehören,
- dass Committer nicht das Recht haben, solche Dinge
- durchzuführen, ohne die Gemeinschaft zu konsultieren
- und WAS GEDENKT -CORE HIER ZU TUN!?</para>
-
- <para>Zweihundert, die sich über die Farbe des
- Fahrradschuppens beschweren;</para>
-
- <para>Drei, die darauf hinweisen, dass der Patch nicht
- mit &man.style.9; übereinstimmt;</para>
-
- <para>Siebzehn, die sich beschweren, dass die
- vorgeschlagene neue Glühbirne der GPL
- unterliegt;</para>
-
- <para>Fünfhundertundsechsundachtzig, die sich in einen
- Streit über die vergleichbaren Vorteile der GPL, der
- BSD-Lizenz, der MIT-Lizenz, der NPL und der
- persönlichen Hygiene nichtgenannter FSF-Gründer
- verwickeln;</para>
-
- <para>Sieben, die unterschiedliche Teile des Threads nach
- -chat und -advocacy weiterleiten;</para>
-
- <para>Einer, der die vorgeschlagene Glühbirne einbaut,
- obwohl sie dunkler leuchtet, als die alte;</para>
-
- <para>Zwei, die sie wieder ausbauen, und in einer
- wütenden Nachricht argumentieren, dass &os;
- besser ganz im Dunkeln dasteht, als mit einer
- dämmerigen Glühbirne;</para>
-
- <para>Sechsundvierzig, die sich lärmend wegen des
- Wiederausbaus der dämmerigen Glühbirne streiten
- und eine Erklärung von -core verlangen;</para>
-
- <para>Elf, die eine kleinere Glühbirne beantragen,
- damit sie in ihr Tamagotchi passt, falls wir
- irgendwann beschließen, &os; auf diese Plattform
- zu portieren;</para>
-
- <para>Dreiundsiebzig, die sich über die SNR auf
- -hackers und -chat beschweren und aus Protest
- abmelden;</para>
-
- <para>Dreizehn, die <quote>unsubscribe</quote>,
- <quote>How do I unsubscribe?</quote>
- oder <quote>Please remove me from the list</quote> gefolgt
- von der üblichen Fußzeile abschicken;</para>
-
- <para>Einen, der eine funktionierende Glühbirne
- einbaut, während alle zu beschäftigt damit sind,
- mit jedem zu streiten, um es zu bemerken;</para>
-
- <para>Einunddreißig, die herausstellen, dass die
- neue Glühbirne 0,364% heller leuchten würde,
- wenn sie mit TenDRA kompiliert werden würde (obwohl
- sie in einen Würfel umgeformt werden
- müsste) und dass &os; deshalb nach
- TenDRA, anstatt nach GCC wechseln sollte;</para>
-
- <para>Einen, der sich beschwert, dass bei der neuen
- Glühbirne die Verkleidung fehlt;</para>
-
- <para>Neun (einschließlich der PR-Ersteller), die
- fragen <quote>Was ist MFC?</quote></para>
-
- <para>Siebenundfünfzig, die sich zwei Wochen, nachdem
- die Birne gewechselt worden ist, darüber beschweren,
- dass das Licht aus war.</para>
-
- <para><emphasis>&a.nik; hat
- hinzugefügt:</emphasis></para>
-
- <para><emphasis>Ich habe ziemlich hierüber
- gelacht.</emphasis></para>
-
- <para><emphasis>Und dann dachte ich: "Halt, sollte in dieser
- Liste nicht irgendwo 'Einer, der es dokumentiert'
- sein?"</emphasis></para>
-
- <para><emphasis>Und dann wurde ich erleuchtet
- :-)</emphasis></para>
-
- <para><emphasis>&a.tabthorpe;</emphasis> sagt: <quote>Keine,
- <emphasis>echte</emphasis> &os; Hacker fürchten sich nicht
- vor der Dunkelheit!</quote></para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="dev-null">
- <para>Was passiert mit den Daten, die nach
- <filename>/dev/null</filename> geschrieben werden?</para>
- </question>
-
- <answer>
- <para>Sie werden in einer speziellen Datensenke der CPU in
- Wärme umgewandelt, die dann über den
- Kühlkörper und den Lüfter abgeführt
- wird. Dies ist einer der Gründe für die
- Kühlung von CPUs; die Anwender gewöhnen sich an
- die schnelleren Prozessoren, gehen nicht mehr so
- sorgfältig mit Ihren Daten um und so landen immer
- mehr Daten in <filename>/dev/null</filename>, was zur
- Überhitzung der CPU führt. Wenn Sie
- <filename>/dev/null</filename> löschen (was die
- Datensenke ziemlich sicher abschaltet), wird Ihre CPU zwar
- nicht mehr so heiß, dafür wird Ihr System aber
- sehr schnell von den überzähligen Daten
- überladen und merkwürdige Effekte zeigen. Wenn
- Sie eine sehr schnell Netzwerkverbindung haben,
- können Sie Ihre CPU kühlen, indem sie Daten aus
- <filename>/dev/random</filename> lesen und in die Weite
- des Netzwerkes schicken; allerdings besteht hier die
- Gefahr der Überhitzung von Netzwerk und <filename
- class="directory">/</filename>. Außerdem dürfte Ihr
- ISP ziemlich wütend werden, da der größte
- Teil der Daten von seinen Geräten in Hitze
- umgewandelt werden wird; da ISPs aber über
- Klimaanlagen verfügen, sollte das kein großes
- Problem sein, solange Sie es nicht übertreiben.</para>
-
- <para><emphasis>Nachtrag Paul Robinson:</emphasis></para>
-
- <para>Es gibt andere Mittel und Wege. Wie jeder gute
- Systemadministrator weiss, gehört es zum guten
- Ton, einigen Daten zum Bildschirm zu senden, damit die
- Leuchtkäferchen, die das Bild anzeigen,
- glücklich sind. Die Leuchtkäferchen werden nach
- der Farbe Ihrer Hüte (Rot, Grün, oder Blau)
- unterschieden und sie verstecken bzw. zeigen sich (wobei
- man die Farbe ihrer Hüte erkennen kann) bei jeder
- Nahrungsaufnahme. Grafikkarten wandeln Daten in
- Leuchkäfer-Nahrung um und schicken sie dann zu den
- Leuchtkäfern - teure Karten erzeugen bessere Nahrung
- und sorgen so für besseres Verhalten der
- Leuchtkäfer. Diese brauchen allerdings einen
- konstanten Stimulus - darum gibt es
- Bildschirmschoner.</para>
-
- <para>Darum lautet mein Vorschlag, die zufälligen Daten
- einfach zum Bildschirm zu schicken, damit sie von den
- Leuchtkäfern verzehrt werden. Dabei entsteht keine
- Hitze, die Leuchtkäfer bleiben glücklich und man
- wird seine überflüssigen Daten sehr schnell los,
- auch wenn der Bildschirm etwas merkwürdig
- aussieht.</para>
-
- <para>Übrigens: Als Ex-Admin eines großen ISPs,
- der so seine Probleme mit der Kühlung seines
- Rechenzentrums hatte, kann ich nur davon abraten,
- überflüssige Daten einfach in das Netzwerk zu
- schicken. Die Heinzelmännchen, die die Pakete
- verteilen und versenden, regen sich darüber ganz
- furchtbar auf.</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="advanced">
- <title>Weiterführende Themen</title>
-
- <qandaset>
- <qandaentry>
- <question id="learn-advanced">
- <para>Wie kann ich mehr über die Interna von &os;
- erfahren?</para>
- </question>
-
- <answer>
- <para>Zurzeit gibt es nur ein Buch über die Interna von
- &os;, <quote>The Design and Implementation of the &os;
- Operating System</quote> von Marshall Kirk McKusick und
- George V. Neville-Neil, ISBN 0-201-70245-2, das sich auf
- &os;&nbsp;5.<replaceable>X</replaceable> konzentriert.</para>
-
- <para>Allgemeines Wissen über &unix; kann
- allerdings in den meisten Fällen auf &os;
- angewendet werden.</para>
-
- <para>Eine Liste finden Sie im entsprechenden Abschnitt der <ulink
- url="&url.books.handbook;/bibliography-osinternals.html">
- Bibliographie</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="how-to-contribute">
- <para>Wie kann ich bei der Entwicklung von &os; mitarbeiten?</para>
- </question>
-
- <answer>
- <para>Genauere Informationen finden Sie im Artikel <ulink
- url="&url.articles.contributing;/article.html">&os;
- unterstützen</ulink>. Wir können Hilfe
- immer gut gebrauchen!</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="define-snap-release">
- <para>Was sind Snapshots und RELEASEs?</para>
- </question>
-
- <answer>
- <para>Derzeit existieren vier aktive/halbaktive Zweige im
- <ulink url="http://www.de.FreeBSD.org/cgi/cvsweb.cgi">
- &os;-CVS-Repository</ulink>. In früheren Zweigen
- ändert sich wenig, daher gibt es nur vier
- aktive Entwicklungszweige:</para>
-
- <itemizedlist>
- <listitem>
- <para>&rel3.releng; bzw. &rel3.stable;</para>
- </listitem>
-
- <listitem>
- <para>&rel2.releng; bzw. &rel2.stable;</para>
- </listitem>
-
- <listitem>
- <para>&rel.releng; bzw. &rel.stable;</para>
- </listitem>
-
- <listitem>
- <para>&rel.head.releng; bzw.
- <emphasis>-CURRENT</emphasis> oder
- &rel.head;</para>
- </listitem>
- </itemizedlist>
-
- <para><literal>HEAD</literal> ist keine wirkliche
- Bezeichnung für einen Zweig, wie die anderen.
- Es ist lediglich eine symbolische Konstante für
- <quote><emphasis>den aktuellen, nicht verzweigten
- Entwicklungsstrom</emphasis></quote>, auf den wir uns
- einfach als <emphasis>-CURRENT</emphasis> beziehen.</para>
-
- <para>Derzeit steht <emphasis>-CURRENT</emphasis> für den
- &rel.head.relx;-Entwicklungsstrom. Der &rel.stable;-Zweig
- (&rel.releng;) wurde von <emphasis>-CURRENT</emphasis> im
- &rel.relengdate; und der &rel2.stable;-Zweig (&rel2.releng;) im
- &rel2.relengdate; von <emphasis>-CURRENT</emphasis>
- abgespalten.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="custrel">
- <para>Wie kann ich meine eigene, angepasstes Release
- erstellen?</para>
- </question>
-
- <answer>
- <para>Eine Anleitung dazu finden Sie im Artikel <ulink
- url="&url.articles.releng.en;/article.html">
- &os; Release Engineering</ulink>.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="makeworld-clobbers">
- <para>Wieso überschreibt <command>make
- <maketarget>world</maketarget></command>
- das installierte System?</para>
- </question>
-
- <answer>
- <para>Das ist beabsichtigt. Wie der Name schon andeutet,
- erstellt <command>make <maketarget>world</maketarget></command>
- alle Systemdateien von Grund auf neu. Sie können also sicher
- sein, am Ende eine saubere, konsistente Umgebung zu haben (das ist
- der Grund, warum es so lange dauert).</para>
-
- <para>Falls die Umgebungsvariable <envar>DESTDIR</envar>
- während der Ausführung von <command>make
- <maketarget>world</maketarget></command> oder
- <command>make <maketarget>install</maketarget></command>
- definiert ist, werden die neu erstellten Binaries unter
- <literal>${DESTDIR}</literal> in einem zum
- installierten identischen Verzeichnisbaum abgelegt.
- Einige zufällige Kombinationen von Änderungen
- von Shared Libraries und Neuerstellungen von Programmen
- können hierbei jedoch ein Scheitern von <command>make
- <maketarget>world</maketarget></command> verursachen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="cvsup-round-robin">
- <para>Warum ist <hostid role="fqdn">cvsup.FreeBSD.org</hostid>
- kein Round-Robin-Eintrag im DNS, so dass Anfragen
- auf alle <application>CVsup</application>-Server verteilt
- werden?</para>
- </question>
-
- <answer>
- <para>Die <application>CVsup</application>-Server gleichen sich
- stündlich mit dem Hauptserver ab. Allerdings findet der
- Abgleich nicht zur gleichen Zeit statt, daher
- können einige Server neuere Quellen bereitstellen
- als andere Server. Alle Server stellen jedoch
- Quellen bereit, die maximal eine Stunde alt sind.
- Wäre <hostid role="fqdn">cvsup.FreeBSD.org</hostid>
- ein Round-Robin-Eintrag im DNS, der Benutzern einen
- zufälligen Server zuteilt, könnten beim
- zweiten Lauf von <application>CVsup</application> ältere
- Quellen als beim ersten Lauf heruntergeladen werden.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="ctm">
- <para>Kann ich -CURRENT mit begrenztem Internetzugang
- folgen?</para>
- </question>
-
- <answer>
- <para>Ja, Sie können das tun, <emphasis>ohne</emphasis>
- den gesamten Quellbaum herunterzuladen, indem Sie die
- Einrichtung <ulink
- url="&url.books.handbook;/synching.html#CTM">CTM</ulink>
- benutzen.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="split-1392k">
- <para>Wie haben Sie die Distribution in 1392&nbsp;KB-Dateien
- aufgespalten?</para>
- </question>
-
- <answer>
- <para>Bei neueren BSD-basierten Systemen gibt es eine Option
- <option>-b</option> zu &man.split.1;, die das Splitten von
- Dateien an willkürlichen Bytegrenzen erlaubt.</para>
-
- <para>Hier ist ein Beispiel aus
- <filename>/usr/src/release/Makefile</filename>.</para>
-
- <programlisting>ZIPNSPLIT= gzip --no-name -9 -c | split -b 1392k -</programlisting>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="submitting-kernel-extensions">
- <para>Ich habe eine Kernelerweiterung geschrieben. An wen
- sende ich sie?</para>
- </question>
-
- <answer>
- <para>Lesen Sie bitte den Artikel <ulink
- url="&url.articles.contributing;/article.html">
- &os; unterstützen</ulink>.</para>
-
- <para>Und Danke, dass Sie darüber
- nachdenken!</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="pnp-initialize">
- <para>Wie werden Plug&amp;Play ISA-Karten erkannt und
- initialisiert?</para>
- </question>
-
- <answer>
- <para>Von: Frank Durda IV
- <email>uhclem@nemesis.lonestar.org</email></para>
-
- <para>Kurz gesagt gibt es nur wenige I/O-Ports über die
- PnP-Karten antworten, wenn der Host fragt, ob jemand da
- ist. Wenn die PnP-Erkennungsroutine startet, fragt sie,
- ob irgendwelche PnP-Karten vorhanden sind und alle
- PnP-Karten antworten mit ihrer Modellnummer auf demselben
- Port, von dem sie auch gelesen haben. Die
- Erkennungsroutine erhält also ein geodertes
- <quote>Ja</quote> auf diese Frage. Mindestens ein Bit
- wird bei dieser Antwort gesetzt sein. Die
- Erkennungsroutine ist dann in der Lage, dafür zu
- sorgen, dass Karten mit Modellnummern (zugeordnet von
- &microsoft;/&intel;) kleiner als <literal>X</literal>
- <quote>off-line</quote> gesetzt werden. Sie prüft dann, ob
- immer noch Karten da sind, die auf die Frage antworten. Falls die
- Antwort <literal>0</literal> war, sind keine Karten mit IDs
- größer <literal>X</literal> vorhanden. Die
- Erkennungsroutine wird daraufhin anfragen, ob Karten unterhalb
- <literal>X</literal> vorhanden sind. Schließlich setzt die
- Erkennungsroutine alle Karten größer als
- <literal>X&nbsp;-&nbsp;(limit&nbsp;/&nbsp;4)</literal> off-line
- und wiederholt die Frage. Wenn diese
- halbbinäre Suche nach IDs in Folge genügend oft
- wiederholt worden ist, wird die Erkennungsroutine
- schließlich alle in einem Rechner befindlichen
- PnP-Karten identifiziert haben und das mit einer
- Iterationszahl sehr viel kleiner als
- 2<superscript>64</superscript>.</para>
-
- <para>Die IDs bestehen aus zwei 32-Bit-Feldern (daher
- 2<superscript>64</superscript>) + acht Bit Prüfsumme. Die
- ersten 32&nbsp;Bit sind die Herstellerkennung. Es wurde zwar nicht
- bestätigt, aber es wird angenommen, dass unterschiedliche
- Kartentypen desselben Herstellers unterschiedliche 32-Bit
- Herstellerkennungen besitzen können. 32&nbsp;Bit nur
- für eindeutige Hersteller zu benötigen, scheint
- etwas übertrieben.</para>
-
- <para>Die niedrigen 32&nbsp;Bit sind eine Seriennummer oder etwas
- anderes, das die betreffende Karte einzigartig macht. Die
- Hersteller dürfen niemals eine zweite Karte mit denselben
- niedrigen 32&nbsp;Bit herstellen, es sei denn, die höheren
- 32&nbsp;Bit sind unterschiedlich. Sie können also mehrere
- Karten des selben Typs im Rechner haben und die gesamten
- 64&nbsp;Bit bleiben stets eindeutig.</para>
-
- <para>Die 32-Bit-Gruppen können niemals nur aus Nullen
- bestehen. Das erlaubt es, bei der binären Suche zu
- Beginn nur auf von Null verschiedene Bits zu achten.</para>
-
- <para>Wenn das System alle vorhandenen Karten-IDs
- identifiziert hat, reaktiviert es jede Karte - eine nach
- der anderen (über dieselben I/O-Ports) und ermittelt,
- welche Ressourcen von der jeweiligen Karte benötigt
- werden, welche Wahlmöglichkeiten für Interrupts
- bestehen usw. Alle Karten werden abgefragt, um diese
- Informationen zusammenzustellen.</para>
-
- <para>Diese Informationen werden dann mit Informationen aus
- allen ECU-Dateien auf der Festplatte oder mit im MLB-BIOS
- verdrahteten Informationen verknüpft. Die ECU- und
- BIOS-PnP-Unterstützung für Hardware auf dem MLB
- ist für gewöhnlich künstlich und was die
- Peripheriegeräte tun ist nicht wirklich echtes PnP.
- Durch die Untersuchung der BIOS-Informationen und der
- ECU-Informationen können die Erkennungsroutinen
- jedoch die von PnP-Geräten benutzten Ressourcen so
- ändern, dass vermieden wird, dass bereits
- von anderen Geräten benutzte Ressourcen verwendet
- werden.</para>
-
- <para>Dann werden die PnP-Geräte nochmals besucht und
- ihre I/O, DMA, IRQ und Memory-Map-Adressen werden
- zugeordnet. Die Geräte werden an diesen Stellen
- sichtbar werden und dort bis zum nächsten Reboot
- verbleiben. Allerdings hindert Sie auch nichts daran, sie
- zu verschieben, wohin Sie wollen.</para>
-
- <para>Im obigen Teil wurde sehr viel vereinfacht, aber die
- grundlegende Idee sollte klar geworden sein.</para>
-
- <para>&microsoft; hat einige der primären
- Druckerstatusports für PnP übernommen, da keine
- Karte diese Adressen für die entgegengesetzten
- I/O-Zyklen decodiert. Ich habe während der
- frühen Überprüfungsperiode des
- PnP-Vorschlags eine echte IBM Druckerkarte gefunden, die
- Schreibzugriffe auf dem Statusport decodiert hat, aber &microsoft;
- hat nur <quote>tough</quote> gesagt. Also schreiben sie
- auf den Druckerstatusport, um Adressen zu setzen, benutzen
- zusätzlich diese Adresse + <literal>0x800</literal>
- und einen dritten I/O-Port zum Lesen, der irgendwo
- zwischen <literal>0x200</literal> und
- <literal>0x3ff</literal> liegen kann.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="major-numbers">
- <para>Wie bekomme ich eine Major-Number für einen
- Gerätetreiber, den ich geschrieben habe?</para>
- </question>
-
- <answer>
- <para>&os; Versionen stellen seit Februar&nbsp;2003
- Major-Numbers für Geräte automatisch zur Laufzeit
- bereit (lesen Sie &man.devfs.5;), damit ist das nicht mehr
- nötig.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="alternate-directory-layout">
- <para>Gibt es alternative Layoutverfahren für
- Verzeichnisse?</para>
- </question>
-
- <answer>
- <para>Als Antwort auf die Frage nach alternativen
- Layoutverfahren für Verzeichnisse ist das Schema, das
- derzeit benutzt wird, unverändert von dem, das ich
- 1983 geschrieben habe. Ich habe das Vorgehen für das
- originale Fast-Filesystem geschrieben und es niemals
- überarbeitet. Es funktioniert gut, wenn es darum
- geht, zu verhindern, dass Zylindergruppen volllaufen.
- Wie viele von Ihnen angemerkt haben, funktioniert es
- schlecht für find. Die meisten Dateisysteme werden
- von Archiven erstellt, die mit einer Tiefensuche (also
- ftw) erstellt wurden. Diese Verzeichnisse werden
- über die Zylindergruppen hinweg entfaltet und
- erzeugen denkbar ungünstigste Voraussetzungen
- für zukünftige Tiefensuchen. Falls man die
- Gesamtzahl der zu erstellenden Verzeichnisse wüsste,
- wäre die Lösung die,
- <literal>(gesamt&nbsp;/&nbsp;fs_ncg)</literal> pro
- Zylindergruppe zu erstellen, bevor fortgefahren wird.
- Offensichtlich müsste man eine Heuristik
- erstellen, um die Zahl zu schätzen. Sogar die
- Benutzung einer kleinen, fixen Zahl, z.B. 10, würde
- eine Verbesserung um Größenordnungen ausmachen.
- Um Wiederherstellungen von normalem Betrieb (wo der
- derzeitige Algorithmus vermutlich sinnvoller ist) zu
- unterscheiden, könnten Sie die Clusterung von bis zu
- 10 benutzen, wenn sie alle innerhalb eines
- 10-Sekunden-Fensters durchgeführt würden.
- Jedenfalls ist mein Schluss, dass dies ein
- fruchtbares Gebiet für Experimente ist.</para>
-
- <para>&a.mckusick;, September 1998</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="kernel-panic-troubleshooting">
- <para>Wie kann ich optimalen Nutzen aus einer kernel panic
- ziehen?</para>
- </question>
-
- <answer>
- <para>Hier ist eine typische Kernel-Panic</para>
-
- <programlisting>Fatal trap 12: page fault while in kernel mode
-
-fault virtual address = 0x40
-fault code = supervisor read, page not present
-instruction pointer = 0x8:0xf014a7e5
-stack pointer = 0x10:0xf4ed6f24
-frame pointer = 0x10:0xf4ed6f28
-code segment = base 0x0, limit 0xfffff, type 0x1b
- = DPL 0, pres 1, def32 1, gran 1
-processor eflags = interrupt enabled, resume, IOPL = 0
-current process = 80 (mount)
-interrupt mask =
-trap number = 12
-panic: page fault</programlisting>
-
- <para>Wenn Sie eine Meldung wie diese sehen, reicht es
- nicht, sie einfach zu reproduzieren und sie einzusenden.
- Der Wert des Instruktionszeigers ist wichtig; leider ist er auch
- konfigurationsabhängig. Mit anderen Worten variieren
- die Werte abhängig von dem Kernel-Image, das Sie
- tatsächlich benutzen. Wenn Sie ein
- <filename>GENERIC</filename> Kernelimage von einem der Snapshots benutzen, dann ist es
- für jemand anderen möglich, die fehlerhafte
- Instruktion herauszufinden, aber wenn Sie einen
- angepassten Kernel benutzen, können nur
- <emphasis>Sie</emphasis> uns sagen, wo der Fehler
- auftrat.</para>
-
- <para>Was Sie tun sollten, ist folgendes:</para>
-
- <procedure>
- <step>
- <para>Notieren Sie sich den Wert des
- Instruktionszeigers. Beachten Sie, dass der Teil
- <literal>0x8:</literal> am Anfang in diesem Fall nicht
- von Bedeutung ist; der Teil
- <literal>0xf0xxxxxx</literal> ist der, den wir
- wollen.</para>
- </step>
-
- <step>
- <para>Tun Sie folgendes, wenn das System
- rebootet:</para>
-
- <screen>&prompt.user; <userinput><command>nm</command> <option>-n</option> <replaceable>/kernel.that.caused.the.panic</replaceable> | <command>grep</command> f0xxxxxx</userinput></screen>
-
- <para>wobei <literal>0xf0xxxxxx</literal> der Wert des
- Instruktionszeigers ist. Es besteht die
- Möglichkeit, dass Sie keinen exakten Treffer
- erzielen, weil die Symbole in der Symboltabelle des
- Kernels Funktionseinstiegspunkte sind und die Adresse
- des Instruktionszeigers irgendwo innerhalb einer
- Funktion liegen wird und nicht am Anfang. Falls sie
- keinen exakten Treffer erzielen, lassen Sie den
- letzten Teil des Werts des Instruktionszeigers weg und
- versuchen es noch einmal, z.B.:</para>
-
- <screen>&prompt.user; <userinput><command>nm</command> <option>-n</option> <replaceable>/kernel.that.caused.the.panic</replaceable> | <command>grep</command> f0xxxxx</userinput></screen>
-
- <para>Falls das kein Ergebnis liefert, hacken Sie eine
- weitere Ziffer ab. Wiederholen Sie die Schritte, bis
- Sie irgendeine Ausgabe erhalten. Das Ergebnis wird
- eine Liste möglicher Funktionen sein, die die
- Panik verursacht haben. Das ist zwar kein absolut
- genauer Mechanismus, um die Fehlerursache ausfindig zu
- machen, aber es ist besser als gar nichts.</para>
- </step>
- </procedure>
-
- <para>Wie dem auch sei, der beste Weg, den Grund für eine Panik
- herauszufinden, ist der, einen Crash-Dump festzuhalten und
- dann &man.kgdb.1; zu benutzen, um den Stack im Crash-Dump
- zurückzuverfolgen.</para>
-
- <para>Jedenfalls ist die Methode, die ich normalerweise
- benutze, folgende:</para>
-
- <procedure>
- <step>
- <para>Sorgen Sie dafür, dass die folgende Zeile in der
- Kernelkonfigurationsdatei
- (<filename>/usr/src/sys/<replaceable>arch</replaceable>/conf/<replaceable>MYKERNEL</replaceable></filename>) enthalten ist:</para>
- <programlisting>makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols</programlisting>
- </step>
-
- <step>
- <para>Wechseln Sie in das Verzeichnis <filename
- class="directory">usr/src</filename>:</para>
- <screen>&prompt.root; <userinput><command>cd</command> <filename class="directory">/usr/src</filename></userinput></screen>
- </step>
-
- <step>
- <para>Erstellen Sie den Kernel:</para>
- <screen>&prompt.root; <userinput><command>make</command> <maketarget>buildkernel</maketarget> <makevar>KERNCONF</makevar>=<replaceable>MYKERNEL</replaceable></userinput></screen>
- </step>
-
- <step>
- <para>Warten Sie, bis &man.make.1; den Kernel fertig kompiliert
- hat.</para>
- </step>
-
- <step>
- <screen>&prompt.root; <userinput><command>make</command> <maketarget>installkernel</maketarget> <makevar>KERNCONF</makevar>=<replaceable>MYKERNEL</replaceable></userinput></screen>
- </step>
-
- <step>
- <para>Starten Sie das System neu.</para>
- </step>
- </procedure>
-
- <note>
- <para>Falls Sie die make-Variable <makevar>KERNCONF</makevar>
- nicht verwenden, wird ein <filename>GENERIC</filename> Kernel
- gebaut und installiert.</para>
- </note>
-
- <para>Der &man.make.1;-Prozess wird zwei Kernel
- erstellt haben:
- <filename>/usr/obj/usr/src/sys/<replaceable>MYKERNEL</replaceable>/kernel</filename>
- und
- <filename>/usr/obj/usr/src/sys/<replaceable>MYKERNEL</replaceable>/kernel.debug</filename>.
- <filename>kernel</filename> wurde als
- <filename>/boot/kernel</filename> installiert, während
- <filename>kernel.debug</filename> als Quelle für
- Debuggersymbole für &man.kgdb.1; benutzt werden
- kann.</para>
-
- <para>Um sicherzustellen, dass ein Crash-Dump erhalten
- bleibt, müssen Sie
- <filename>/etc/rc.config</filename> editieren und
- <literal>dumpdev</literal> so setzen, dass es auf
- Ihre Swap-Partition zeigt. Das bewirkt, dass die
- &man.rc.8;-Skripte den Befehl &man.dumpon.8; benutzen, um
- Crash-Dumps zu ermöglichen. Sie können
- &man.dumpon.8; auch manuell ausführen. Nach einer
- Panik kann der Crash-Dump mit &man.savecore.8;
- wiederhergestellt werden; wenn <literal>dumpdev</literal>
- in <filename>/etc/rc.conf</filename> gesetzt ist, werden
- die &man.rc.8;-Skripte &man.savecore.8; automatisch
- ausführen und den Crash-Dump unter <filename
- class="directory">/var/crash</filename> ablegen.</para>
-
- <note>
- <para>Crash-Dumps von &os; sind für
- gewöhnlich genauso groß wie der physikalische
- Hauptspeicher Ihres Rechners. Das heißt, wenn Sie
- 512MB&nbsp;RAM haben, werden sie einen 512MB&nbsp;Crash-Dump
- erhalten. Deshalb müssen Sie dafür sorgen, dass
- genügend Speicherplatz in
- <filename>/var/crash</filename> zur Verfügung
- steht, um den Dump aufnehmen zu können. Alternativ
- führen Sie &man.savecore.8; manuell aus und lassen
- es den Crash-Dump in einem anderen Verzeichnis
- wiederherstellen, in dem Sie mehr Platz haben. Es ist
- möglich, die Größe des Crash-Dumps zu
- begrenzen, indem <literal>options
- MAXMEM=<replaceable>N</replaceable></literal>, wobei
- <replaceable>N</replaceable> die Größe des verwendeten
- Kernelspeichers in KBs ist. Wenn Sie z.B. 1&nbsp;GB RAM haben,
- können Sie die Speicherbenutzung des Kernels damit auf
- 128&nbsp;MB begrenzen, so dass die Größe Ihres
- Crash-Dumps 128&nbsp;MB anstatt 1&nbsp;GB betragen wird.</para>
- </note>
-
- <para>Wenn Sie den Crash-Dump wiederhergestellt haben,
- können Sie den Stack mit &man.kgdb.1; so
- zurückverfolgen:</para>
-
- <screen>&prompt.user; <userinput><command>kgdb</command> <filename>/usr/obj/usr/src/sys/<replaceable>MYKERNEL</replaceable>/kernel.debug</filename> <filename class="directory">/var/crash/<replaceable>vmcore.0</replaceable></filename></userinput>
-<prompt>(kgdb)</prompt> <userinput>backtrace</userinput></screen>
-
- <para>Beachten Sie, dass es mehrere Seiten mit
- wertvollen Informationen geben könnte; idealerweise
- sollten Sie &man.script.1; benutzen, um sie alle
- festzuhalten. Wenn Sie das vollständige Kernelimage
- mit allen Debugginginformationen benutzen,
- müssten Sie exakt die Zeile des
- Kernel-Sourcecodes finden, wo die Panik aufgetreten ist.
- Für gewöhnlich müssen Sie den Stack von
- unten an zurückverfolgen, um die genaue
- Ereignisabfolge, die zum Crash führte,
- zurückzuverfolgen. Sie können &man.kgdb.1; auch
- zum Ausdrucken der Inhalte verschiedener Variablen oder
- Strukturen benutzen, um den Systemstatus zum Zeitpunkt des
- Absturzes zu untersuchen.</para>
-
- <tip>
- <para>Wenn Sie nun wirklich verrückt sind und einen
- zweiten Computer haben, können Sie &man.kgdb.1; auch
- für entferntes Debugging konfigurieren, so dass
- Sie &man.kgdb.1; auf einem System benutzen können, um
- den Kernel auf einem anderen System zu debuggen,
- einschließlich dem Setzen von Haltepunkten und dem
- Bewegen in Einzelschritten durch den Kernelcode, genauso,
- wie Sie es mit einem normalen Benutzerprogramm tun
- können.</para>
- </tip>
-
- <note>
- <para>Wenn Sie <literal>DDB</literal> aktiviert haben
- und der Kernel im Debugger landet, können Sie eine Panik
- (und einen Crash-Dump) erzwingen, indem Sie einfach
- <literal>panic</literal> am <literal>ddb</literal>-Prompt
- eingeben. Er könnte während der Panikphase
- wieder im Debugger stoppen. Falls er das tut, geben Sie
- <literal>continue</literal> ein, dann wird er den Crash-Dump
- beenden.</para>
- </note>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="dlsym-failure">
- <para>Wieso funktioniert <function>dlsym()</function> nicht mehr
- für ELF-Executables?</para>
- </question>
-
- <answer>
- <para>Die ELF-Werkzeuge machen die in einem Executable
- definierten Symbole dem dynamischen Linker nicht
- standardmäßig sichtbar. Konsequenterweise
- werden <function>dlsym()</function>-Suchen nach Handlern
- aus Aufrufen von <function>dlopen(NULL, flags)</function>
- diese Symbole nicht finden können.</para>
-
- <para>Wenn Sie mit <function>dlsym()</function> nach im
- Hauptexecutable eines Prozesses vorhandenen Symbolen
- suchen wollen, müssen Sie das Executable mit der
- Option <option>--export-dynamic</option> von &man.ld.1;
- linken.</para>
- </answer>
- </qandaentry>
-
- <qandaentry>
- <question id="change-kernel-address-space">
- <para>Wie kann ich den Adressraum des Kernels auf i386
- vergrössern oder verkleinern?</para>
- </question>
-
- <answer>
- <para>Standardmäßig beträgt der
- Adressraum des Kernels 1&nbsp;GB (2&nbsp;GB für PAE)
- auf i386. Wenn Sie einen netzwerkintensiven Server
- (z.B. einen großen FTP- oder HTTP-Server) betreiben, oder
- ZFS verwenden möchten, kann es sein, dass Sie der Meinung
- sind, dass das nicht ausreichen.</para>
-
- <para>Fügen Sie die folgende Zeile zu ihrer
- Kernelkonfigurationsdatei hinzu, um den verfügbaren Speicher
- zu erhöhen und erstellen Sie dann einen neuen Kernel:</para>
-
- <programlisting>options KVA_PAGES=<replaceable>N</replaceable></programlisting>
-
- <para>Um den richtigen Wert von <replaceable>N</replaceable> zu
- bestimmen, teilen Sie den gewünschte Größe
- des Addressraumes (in Megabyte) durch vier (z.B. beträgt er
- <literal>512</literal> für 2&nbsp;GB).</para>
- </answer>
- </qandaentry>
- </qandaset>
- </chapter>
-
- <chapter id="acknowledgments">
- <title>Danksagung</title>
-
- <para>Dieses kleine unschuldige Dokument mit Häufig gestellten
- Fragen wurde in den letzten 10 Jahren von Hunderten, wenn
- nicht Tausenden, geschrieben, neu geschrieben, überarbeitet,
- gefaltet, verdreht, durcheinander gebracht, wieder aufgebaut,
- verstümmelt, seziert, durchgekaut, überdacht, und
- wiederbelebt. Und das nicht nur einmal.</para>
-
- <para>Wir möchten allen dafür Verantwortlichen danken
- und wir fordern auch Sie auf, dieser Gruppe <ulink
- url="&url.articles.contributing;/article.html">beizutreten</ulink>,
- um diese FAQ noch besser zu machen.</para>
-
- <para>Folgende Personen haben durch die Beantwortung von Fragen,
- sowie durch Hinweise und Kommentare an der Entstehung der
- deutschen Übersetzung mitgewirkt:</para>
-
- <itemizedlist>
- <listitem>
- <para>Ross Alexander</para>
- </listitem>
-
- <listitem>
- <para>&a.jhb;</para>
- </listitem>
-
- <listitem>
- <para>&a.nik;</para>
- </listitem>
-
- <listitem>
- <para>Glen Foster</para>
- </listitem>
-
- <listitem>
- <para>Oliver Fromme</para>
- </listitem>
-
- <listitem>
- <para>Frank Gruender</para>
- </listitem>
-
- <listitem>
- <para>Chris Hill</para>
- </listitem>
-
- <listitem>
- <para>James Howard</para>
- </listitem>
-
- <listitem>
- <para>&a.jkh;</para>
- </listitem>
-
- <listitem>
- <para>&a.alex;</para>
- </listitem>
-
- <listitem>
- <para>&a.jmas;</para>
- </listitem>
-
- <listitem>
- <para>Mike Meyer</para>
- </listitem>
-
- <listitem>
- <para>Dan O'Connor</para>
- </listitem>
-
- <listitem>
- <para>Eric Ogren</para>
- </listitem>
-
- <listitem>
- <para>&a.de.pierau;</para>
- </listitem>
-
- <listitem>
- <para>Oliver Schneider</para>
- </listitem>
-
- <listitem>
- <para>Christoph Sold</para>
- </listitem>
- </itemizedlist>
-
- <para>Und an alle anderen, an die wir nicht gedacht haben.
- Entschuldigung und herzlichen Dank!</para>
- </chapter>
- &bibliography;
-</book>