11915 lines
484 KiB
XML
11915 lines
484 KiB
XML
<?xml version="1.0" encoding="iso-8859-7"?>
|
||
<!DOCTYPE book PUBLIC "-//FreeBSD//DTD DocBook XML V4.5-Based Extension//EN"
|
||
"../../../share/xml/freebsd45.dtd" [
|
||
<!ENTITY bibliography SYSTEM "../../../share/xml/bibliography.xml">
|
||
]>
|
||
|
||
<!--
|
||
|
||
Óõ÷íÝò ÅñùôÞóåéò ãéá ôï FreeBSD
|
||
|
||
The FreeBSD Greek Documentation Project
|
||
|
||
%SOURCE% en_US.ISO8859-1/books/faq/book.xml
|
||
%SRCID% 1.1103
|
||
|
||
-->
|
||
|
||
<book lang="el">
|
||
<bookinfo>
|
||
<title>Óõ÷íÝò ÅñùôÞóåéò ãéá ôï &os;
|
||
6.<replaceable>X</replaceable> êáé
|
||
7.<replaceable>X</replaceable></title>
|
||
|
||
<corpauthor>Ç ÏìÜäá Ôåêìçñßùóçò ôïõ &os;</corpauthor>
|
||
|
||
<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>
|
||
<holder>Ç ÏìÜäá Ôåêìçñßùóçò ôïõ &os;</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.xfree86;
|
||
&tm-attrib.general;
|
||
</legalnotice>
|
||
|
||
<releaseinfo>$FreeBSD$</releaseinfo>
|
||
|
||
<abstract>
|
||
<para>Ôï êåßìåíï áõôü ðåñéÝ÷åé ôéò Óõ÷íÝò ÅñùôÞóåéò ãéá ôéò åêäüóåéò
|
||
6.<replaceable>X</replaceable> êáé 7.<replaceable>X</replaceable> ôïõ
|
||
&os;. ¼ëåò ïé êáôá÷ùñÞóåéò èåùñåßôáé üôé éó÷ýïõí ãéá ôçí Ýêäïóç
|
||
6.<replaceable>X</replaceable> êáé ôéò ìåôáãåíÝóôåñåò åêäüóåéò, åêôüò
|
||
áí áíáöÝñåôáé äéáöïñåôéêÜ. Áí åíäéáöÝñåóôå íá ìáò âïçèÞóåôå óå áõôü
|
||
ôï Ýñãï, óôåßëôå Ýíá email óôçí &a.doc;. Ç ôåëåõôáßá Ýêäïóç áõôïý ôïõ
|
||
êåéìÝíïõ åßíáé ðÜíôïôå äéáèÝóéìç
|
||
óôçí <ulink url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/faq/index.html">äéêôõáêÞ
|
||
ôïðïèåóßá ôïõ &os;</ulink>. Ìðïñåßôå åðßóçò íá ôçí êáôåâÜóåôå ùò Ýíá
|
||
ìåãÜëï <ulink url="book.html">áñ÷åßï HTML</ulink> ìÝóù HTTP Þ áêüìá
|
||
êáé ùò áðëü êåßìåíï, &postscript;, PDF, êëð. áðü
|
||
ôïí <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">åîõðçñåôçôÞ
|
||
FTP ôïõ &os;</ulink>. Ìðïñåßôå áêüìá
|
||
íá <ulink url="&url.base;/search/index.html">øÜîåôå óôéò Óõ÷íÝò
|
||
ÅñùôÞóåéò</ulink>.</para>
|
||
</abstract>
|
||
</bookinfo>
|
||
|
||
<chapter id="introduction">
|
||
<title>ÅéóáãùãÞ</title>
|
||
|
||
<para>Êáëþò Þëèáôå óôéò Óõ÷íÝò ÅñùôÞóåéò ôïõ &os;
|
||
6.<replaceable>X</replaceable>-7.<replaceable>X</replaceable>!</para>
|
||
|
||
<para>¼ðùò óõíçèßæåôáé óôá FAQs ôïõ Usenet, ôï êåßìåíï áõôü Ý÷åé óêïðü
|
||
íá êáëýøåé ôéò ðéï óõíçèéóìÝíåò åñùôÞóåéò ðïõ áöïñïýí ôï ëåéôïõñãéêü
|
||
óýóôçìá &os; (êáé öõóéêÜ íá ôéò áðáíôÞóåé!). Áí êáé ï áñ÷éêüò óêïðüò
|
||
ôùí FAQs Þôáí ç åîïéêïíüìçóç åýñïõò æþíçò ôïõ äéáäéêôýïõ áðü ôçí
|
||
åðáíáëáìâáíüìåíç áðÜíôçóç ôùí ßäéùí åñùôÞóåùí, ôá FAQs áíáãíùñßóôçêáí
|
||
ôåëéêÜ ùò ðïëýôéìåò ðçãÝò ðëçñïöïñéþí.</para>
|
||
|
||
<para>¸÷åé êáôáâëçèåß êÜèå ðñïóðÜèåéá þóôå áõôü ôï FAQ íá ðåñéÝ÷åé üóï ôï
|
||
äõíáôüí ðåñéóóüôåñåò ðëçñïöïñßåò. Áí èÝëåôå íá êÜíåôå êÜðïéåò
|
||
õðïäåßîåéò ó÷åôéêÜ ìå ôñüðïõò âåëôßùóçò ôïõ, óáò ðáñáêáëïýìå óôåßëôå ìáò
|
||
Ýíá email óôç &a.doc;.</para>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="what-is-FreeBSD">
|
||
<para>Ôé åßíáé ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Åí óõíôïìßá, ôï &os; åßíáé Ýíá ëåéôïõñãéêü óýóôçìá ôýðïõ
|
||
&unix; ãéá ôéò áñ÷éôåêôïíéêÝò AMD64 êáé &intel; EM64T, &i386; PC-98, IA-64, &arm;,
|
||
&powerpc; êáé &ultrasparc;. Âáóßæåôáé óôçí
|
||
Ýêäïóç <quote>4.4BSD-Lite</quote> ôïõ Ðáíåðéóôçìßïõ ôïõ Berkeley,
|
||
ìå êÜðïéåò âåëôéþóåéò áðü ôï <quote>4.4BSD-Lite2</quote>.
|
||
Âáóßæåôáé åðßóçò Ýììåóá óôçí åñãáóßá ìåôáöïñÜò (port) ôïõ
|
||
<quote>Net/2</quote> (åðßóçò áðü ôï Berkeley) ðïõ Ýãéíå áðü ôïí
|
||
William Jolitz (ç ïðïßá Ýãéíå ãíùóôÞ ìå ôï
|
||
üíïìá <quote>386BSD</quote>), áí êáé äåí Ý÷åé ìåßíåé ó÷åäüí ôßðïôá
|
||
áðü ôïí áñ÷éêü êþäéêá ôïõ 386BSD. ÐëçñÝóôåñç ðåñéãñáöÞ ãéá ôï ôé
|
||
åßíáé ôï &os; êáé ðùò ìðïñåß íá ëåéôïõñãÞóåé ãéá åóÜò, ìðïñåßôå íá
|
||
âñåßôå óôçí <ulink url="&url.base;/index.html">äéêôõáêÞ ôïðïèåóßá
|
||
ôïõ &os;</ulink>.</para>
|
||
|
||
<para>Ôï &os; ÷ñçóéìïðïéåßôáé áðü åôáéñßåò, ðáñï÷åßò õðçñåóéþí
|
||
Internet (ISPs), åñåõíçôÝò, åðáããåëìáôßåò ôçò ÐëçñïöïñéêÞò,
|
||
öïéôçôÝò êáé ïéêéáêïýò ÷ñÞóôåò áðü üëï ôïí êüóìï, óôç äïõëåéÜ
|
||
ôïõò, óôçí åêðáßäåõóç êáé ãéá áíáøõ÷Þ.</para>
|
||
|
||
<para>Ãéá ðåñéóóüôåñåò ëåðôïìÝñåéåò ó÷åôéêÜ ìå ôï &os;, ðáñáêáëïýìå
|
||
äéáâÜóôå ôï <ulink url="&url.books.handbook;/index.html">Åã÷åéñßäéï ôïõ &os;</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="FreeBSD-goals">
|
||
<para>Ðïéïò åßíáé ï óêïðüò ôïõ &os; Project;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ï óêïðüò ôïõ &os; Project åßíáé íá ðáñÝ÷åé ëïãéóìéêü ôï ïðïßï
|
||
íá ìðïñåß íá ÷ñçóéìïðïéçèåß ãéá ïðïéïõóäÞðïôå óêïðïýò êáé ÷ùñßò
|
||
ðåñéïñéóìïýò. Ðïëëïß áðü åìÜò Ý÷ïõìå åðåíäýóåé óçìáíôéêÜ óôïí
|
||
êþäéêá (êáé óôï ßäéï ôï Ýñãï) êáé óßãïõñá äåí èá ìáò ðåßñáæå
|
||
êáé êÜðïéá ÷ñçìáôéêÞ áðïæçìßùóç ðïõ êáé ðïõ, áëëÜ óßãïõñá äåí
|
||
åðéìÝíïõìå óå áõôü. Ðéóôåýïõìå üôé ç ðñþôç êáé âáóéêüôåñç
|
||
<quote>áðïóôïëÞ</quote> ìáò åßíáé íá ðáñÝ÷ïõìå êþäéêá óå üëïõò,
|
||
ãéá ïðïéïäÞðïôå ðéèáíü óêïðü, Ýôóé þóôå ï êþäéêáò ìáò íá Ý÷åé
|
||
ôçí åõñýôåñç äõíáôÞ ÷ñÞóç êáé åðéôõã÷Üíåé ôï ìåãáëýôåñï äõíáôü
|
||
üöåëïò. Ðéóôåýïõìå üôé áõôüò åßíáé Ýíáò áðü ôïõò óçìáíôéêüôåñïõò
|
||
óêïðïýò ôïõ Åëåýèåñïõ Ëïãéóìéêïý êáé ôïí õðïóôçñßæïõìå
|
||
èåñìÜ.</para>
|
||
|
||
<para>Ï êþäéêáò, óôï äÝíôñï ôïõ ðçãáßïõ ìáò êþäéêá, ï ïðïßïò
|
||
åìðßðôåé óôç Üäåéá ÷ñÞóçò
|
||
<ulink url="http://www.FreeBSD.org/copyright/COPYING">GNU General
|
||
Public License (GPL)</ulink>
|
||
Þ <ulink url="http://www.FreeBSD.org/copyright/COPYING.LIB">GNU
|
||
Library General Public License (LGPL)</ulink> Ý÷åé ðåñéóóüôåñïõò
|
||
ðåñéïñéóìïýò, áëëÜ áõôïß êëßíïõí, åõôõ÷þò, ðñïò ôçí õðï÷ñÝùóç
|
||
åëåýèåñçò ðñüóâáóçò áíôß ãéá ôï áíôßèåôï ðïõ åßíáé êáé ôï ðëÝïí
|
||
óõíçèéóìÝíï. Ëüãù ôçò áõîçìÝíçò ðïëõðëïêüôçôáò ðïõ ìðïñåß íá
|
||
ðñïêýøåé áðü ôçí åìðïñéêÞ ÷ñÞóç ëïãéóìéêïý GPL, ðñïóðáèïýìå ãåíéêÜ
|
||
íá áíôéêáôáóôÞóïõìå áõôü ôï ëïãéóìéêü ìå áíôßóôïé÷ï õðü ôçí ðéï
|
||
÷áëáñÞ <ulink url="http://www.FreeBSD.org/copyright/freebsd-license.html">Üäåéá
|
||
&os;</ulink>, üðïõ áõôü åßíáé äõíáôü.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="bsd-license-restrictions">
|
||
<para>ÕðÜñ÷ïõí êÜðïéïé ðåñéïñéóìïß óôçí Üäåéá ôïõ &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Íáé. Ïé ðåñéïñéóìïß áõôïß äåí åëÝã÷ïõí ðùò ÷ñçóéìïðïéåßôå ôïí
|
||
êþäéêá, áëëÜ ìüíï ðùò ìåôá÷åéñßæåóôå ôï ßäéï ôï &os; Project. Áí
|
||
óáò åíäéáöÝñåé óïâáñÜ ç Üäåéá, äéáâÜóôå
|
||
ôçí <ulink url="http://www.FreeBSD.org/copyright/freebsd-license.html">åäþ</ulink>.
|
||
Ãéá ôïõò áðëþò ðåñßåñãïõò, ç Üäåéá ðåñéëçðôéêÜ ãñÜöåé:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Ìçí éó÷õñéóèåßôå üôé ãñÜøáôå áõôü ôï ëïãéóìéêü.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ìç ìáò ìçíýóåôå áí ÷áëÜóåé.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="replace-current-OS">
|
||
<para>Ìðïñåß ôï &os; íá áíôéêáôáóôÞóåé ôï ôñÝ÷ïí ëåéôïõñãéêü
|
||
ìïõ óýóôçìá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ãéá ôïõò ðåñéóóüôåñïõò áíèñþðïõò, íáé. ÁëëÜ áõôÞ ç áðÜíôçóç
|
||
äåí ìðïñåß íá äïèåß ôüóï îåñÜ.</para>
|
||
|
||
<para>Ïé ðåñéóóüôåñïé Üíèñùðïé äåí ÷ñçóéìïðïéïýí óôçí ðñáãìáôéêüôçôá
|
||
êÜðïéï ëåéôïõñãéêü óýóôçìá. ×ñçóéìïðïéïýí åöáñìïãÝò. Ïé
|
||
åöáñìïãÝò åßíáé áõôÝò ðïõ ÷ñçóéìïðïéïýí ôï ëåéôïõñãéêü óýóôçìá. Ôï
|
||
&os; åßíáé ó÷åäéáóìÝíï ãéá íá ðáñÝ÷åé Ýíá óôéâáñü êáé ïëïêëçñùìÝíï
|
||
ðåñéâÜëëïí ãéá åöáñìïãÝò. Õðïóôçñßæåé ìåãÜëç ðïéêéëßá áðü
|
||
öõëëïìåôñçôÝò, óïõßôåò ãñáöåßïõ, ðñïãñÜììáôá çëåêôñïíéêïý
|
||
ôá÷õäñïìåßïõ, ðñïãñÜììáôá ãñáöéêþí, ðåñéâÜëëïíôá ðñïãñáììáôéóìïý,
|
||
åîõðçñåôçôÝò äéêôýïõ, êáé ïõóéáóôéêÜ ïôéäÞðïôå Üëëï ìðïñåß íá
|
||
èåëÞóåôå. Ìðïñåßôå íá äéá÷åéñéóôåßôå ôéò ðåñéóóüôåñåò áðü áõôÝò
|
||
ôéò åöáñìïãÝò ìÝóù
|
||
ôçò <ulink url="http://www.FreeBSD.org/ports/">ÓõëëïãÞò ôùí
|
||
Ports</ulink>.</para>
|
||
|
||
<para>Áí ÷ñåéÜæåôáé íá ÷ñçóéìïðïéÞóåôå ìéá åöáñìïãÞ ðïõ åßíáé
|
||
äéáèÝóéìç óå Ýíá ìüíï ëåéôïõñãéêü óýóôçìá, ôüôå áðëÜ äåí ìðïñåßôå
|
||
íá áíôéêáôáóôÞóåôå áõôü ôï ëåéôïõñãéêü óýóôçìá. Åßíáé, üìùò, ðïëý
|
||
ðéèáíü üôé èá âñåßôå ìéá áíôßóôïé÷ç åöáñìïãÞ óôï &os;. Áí èÝëåôå
|
||
Ýíáí óôáèåñü åîõðçñåôçôÞ ãéá ôï ãñáöåßï óáò Þ ãéá ôï Internet, Ýíá
|
||
áîéüðéóôï óôáèìü åñãáóßáò, Þ áðëþò ôçí éêáíüôçôá íá êÜíåôå ôçí
|
||
åñãáóßá óáò ÷ùñßò äéáêïðÝò, åßíáé ó÷åäüí óßãïõñï üôé ôï &os;
|
||
ìðïñåß íá êÜíåé üôé ÷ñåéÜæåóôå. Ðïëëïß ÷ñÞóôåò õðïëïãéóôþí óå üëï
|
||
ôïí êüóìï — ôüóï áñ÷Üñéïé üóï êáé Ýìðåéñïé äéá÷åéñéóôÝò
|
||
óõóôçìÜôùí &unix; — ÷ñçóéìïðïéïýí ôï &os; ùò ôï âáóéêü
|
||
ëåéôïõñãéêü óýóôçìá óôïõò óôáèìïýò åñãáóßáò ôïõò.</para>
|
||
|
||
<para>Áí Ýñ÷åóôå óôï &os; áðü êÜðïéï Üëëï ðåñéâÜëëïí ôýðïõ &unix;,
|
||
îÝñåôå Þäç ôá ðåñéóóüôåñá áðü áõôÜ ðïõ ÷ñåéÜæåóôå. Áí ùóôüóï ç
|
||
åìðåéñßá óáò ðñïÝñ÷åôáé áðü ëåéôïõñãéêÜ óõóôÞìáôá ìå ãñáöéêü
|
||
ðåñéâÜëëïí, üðùò ôá &windows; êáé ïé ðáëéüôåñåò åêäüóåéò ôïõ
|
||
&macos;, èá ðñÝðåé íá åðåíäýóåôå, üðùò åßíáé áíáìåíüìåíï, åðéðëÝïí
|
||
÷ñüíï ãéá íá åîïéêåéùèåßôå ìå ôïí ôñüðï åñãáóßáò óå Ýíá óýóôçìá
|
||
&unix;. Áõôü ôï FAQ, êáèþò êáé
|
||
ôï <ulink url="&url.books.handbook;/index.html">Åã÷åéñßäéï ôïõ
|
||
&os;</ulink> áðïôåëïýí åîáéñåôéêÜ áíáãíþóìáôá ãéá íá
|
||
îåêéíÞóåôå.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="why-called-FreeBSD">
|
||
<para>Ãéáôß ïíïìÜæåôáé &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Ìðïñåß íá ÷ñçóéìïðïéçèåß ÷ùñßò ÷ñÝùóç, áêüìá êáé ãéá
|
||
åìðïñéêïýò óêïðïýò.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Äéáôßèåôáé ï ðëÞñçò ðçãáßïò êþäéêáò ãéá ôï ëåéôïõñãéêü
|
||
óýóôçìá, êáé ìå ôïõò åëÜ÷éóôïõò äõíáôïýò ðåñéïñéóìïýò ó÷åôéêÜ
|
||
ìå ôç ÷ñÞóç ôïõ, ôç äéáíïìÞ ôïõ êáé ôçí åíóùìÜôùóç ôïõ óå Üëëá
|
||
Ýñãá (åìðïñéêÜ Þ ìç).</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÏðïéïóäÞðïôå Ý÷åé íá ðñïôåßíåé ìéá âåëôßùóç Þ äéüñèùóç,
|
||
åßíáé åëåýèåñïò íá õðïâÜëëåé ôïí êþäéêá ôïõ, ï ïðïßïò êáé èá
|
||
ðñïóôåèåß óôï äÝíôñï ðçãáßïõ êþäéêá (áñêåß íá ðëçñïýíôáé
|
||
ìéá-äõï âáóéêÝò ðñïöáíåßò ðñïûðïèÝóåéò).</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>Áîßæåé íá áíáöÝñïõìå üôé ç ëÝîç <quote>åëåýèåñï</quote>
|
||
÷ñçóéìïðïéåßôáé åäþ ìå äýï ôñüðïõò, ï Ýíáò
|
||
óçìáßíåé <quote>äùñåÜí</quote>, êáé ï Üëëïò
|
||
óçìáßíåé <quote>ìðïñåßôå íá ôï êÜíåôå üôé èÝëåôå</quote>. Åêôüò
|
||
áðü Ýíá-äýï ðñÜãìáôá ðïõ <emphasis>äåí</emphasis> ìðïñåßôå íá
|
||
êÜíåôå ìå ôïí êþäéêá ôïõ &os;, ãéá ðáñÜäåéãìá íá éó÷õñéóèåßôå üôé
|
||
ôïí ãñÜøáôå, ìðïñåßôå óôá áëÞèåéá íá ôïí êÜíåôå üôé èÝëåôå.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="differences-to-other-bsds">
|
||
<para>Ðïéåò åßíáé ïé äéáöïñÝò ìåôáîý ôïõ &os; êáé ôïõ NetBSD,
|
||
OpenBSD êáé ôùí Üëëùí BSD óõóôçìÜôùí áíïéêôïý êþäéêá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ï James Howard Ý÷åé ãñÜøåé ìéá êáëÞ åîÞãçóç ôçò éóôïñßáò
|
||
êáé ôùí äéáöïñþí ìåôáîý ôùí äéÜöïñùí Ýñãùí ãéá ôï
|
||
<ulink url="http://www.daemonnews.org/">DaemonNews</ulink>, óôï
|
||
Üñèñï <ulink url="http://ezine.daemonnews.org/200104/bsd_family.html">Ç
|
||
ÏéêïãÝíåéá Ëåéôïõñãéêþí BSD</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="latest-version">
|
||
<para>Ðïéá åßíáé ç ôåëåõôáßá Ýêäïóç ôïõ &os;;</para>
|
||
</question>
|
||
|
||
<!--
|
||
Ç åñþôçóç áõôÞ Ý÷åé ìðåé ãéá íá áðïóáöçíßæåôáé ôï ãåãïíüò üôé õðÜñ÷ïõí
|
||
ðëÝïí ðïëëáðëÝò "íÝåò" åêäüóåéò ôïõ FreeBSD.
|
||
-->
|
||
|
||
<answer>
|
||
<para>ÁõôÞ ôç óôéãìÞ õðÜñ÷ïõí äýï ðáñÜëëçëïé êëÜäïé óôçí áíÜðôõîç
|
||
ôïõ &os;. Ïé åðßóçìåò åêäüóåéò ôïõ &os; ðáñÜãïíôáé ôáõôü÷ñïíá êáé
|
||
áðü ôïõò äýï áõôïýò êëÜäïõò. Ç óåéñÜ ôùí åêäüóåùí
|
||
6.<replaceable>X</replaceable> äçìéïõñãåßôáé áðü ôïí
|
||
êëÜäï <emphasis>6-STABLE</emphasis> êáé ç óåéñÜ åêäüóåùí
|
||
7.<replaceable>X</replaceable> äçìéïõñãåßôáé áðü ôïí
|
||
êëÜäï <emphasis>7-STABLE</emphasis>.</para>
|
||
|
||
<para>ÌÝ÷ñé êáé ôçí Ýêäïóç 7.0, ç óåéñÜ åêäüóåùí
|
||
6.<replaceable>X</replaceable> Þôáí ãíùóôÞ
|
||
ùò <emphasis>-STABLE</emphasis>. Ùóôüóï áðü ôçí 7.0 êáé ìåôÜ, ç
|
||
óåéñÜ 6.<replaceable>X</replaceable> èåùñåßôáé üôé åéóÜãåôáé óôç
|
||
öÜóç ôçò <quote>åêôåôáìÝíçò õðïóôÞñéîçò</quote> êáé èá ëáìâÜíåé
|
||
ìüíï äéïñèþóåéò ãéá óïâáñÜ ðñïâëÞìáôá, üðùò ð.÷. áõôÜ ðïõ
|
||
áíáöÝñïíôáé óå êåíÜ áóöáëåßáò. Èá õðÜñîïõí ðåñéóóüôåñåò åêäüóåéò
|
||
áðü ôç óåéñÜ <emphasis>6-STABLE</emphasis>, áëëÜ áõôÞ èåùñåßôáé
|
||
ðëÝïí <quote>îåðåñáóìÝíç</quote> (legacy) êáé ïé ðéï ðñüóöáôåò
|
||
âåëôéþóåéò èá åíóùìáôùèïýí ìüíï óôïí
|
||
êëÜäï <emphasis>7-STABLE</emphasis>.</para>
|
||
|
||
<para>Version <ulink
|
||
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/">&rel.current;</ulink>
|
||
is the latest release from the <emphasis>7-STABLE</emphasis>
|
||
branch; it was released in &rel.current.date;. Version
|
||
<ulink
|
||
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel2.current;-RELEASE/">&rel2.current;</ulink>
|
||
is the latest release from the <emphasis>6-STABLE</emphasis>
|
||
branch; it was released in &rel2.current.date;.</para>
|
||
|
||
<para>Ç Ýêäïóç <ulink
|
||
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/">&rel.current;</ulink>
|
||
åßíáé ç ðëÝïí ôåëåõôáßá ôçò óåéñÜò
|
||
<emphasis>7-STABLE</emphasis> êáé äçìéïõñãÞèçêå óôéò
|
||
&rel.current.date;. Ç Ýêäïóç <ulink
|
||
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel2.current;-RELEASE/">&rel2.current;</ulink>
|
||
åßíáé ç ðëÝïí ôåëåõôáßá ôçò óåéñÜò
|
||
<emphasis>6-STABLE</emphasis> êáé äçìéïõñãÞèçêå óôéò
|
||
&rel2.current.date;.</para>
|
||
|
||
<para>Åí óõíôïìßá, ç óåéñÜ <emphasis>-STABLE</emphasis> ðñïïñßæåôáé
|
||
ãéá ôïõò ISPs, ôïõò åôáéñéêïýò ÷ñÞóôåò êáèþò êáé ïðïéïäÞðïôå
|
||
÷ñÞóôç èÝëåé óôáèåñüôçôá êáé ìéêñü áñéèìü áëëáãþí óå ó÷Ýóç ìå
|
||
ôá íÝá (êáé ðéèáíüí áóôáèÞ) ÷áñáêôçñéóôéêÜ ðïõ åìöáíßæïíôáé óôç
|
||
óåéñÜ <emphasis>-CURRENT</emphasis>. Åêäüóåéò ìðïñåß íá ãßíïíôáé
|
||
áðü ïðïéïäÞðïôå êëÜäï, áëëÜ ç Ýêäïóç <emphasis>-CURRENT</emphasis>
|
||
èá ðñÝðåé íá ÷ñçóéìïðïéåßôáé ìüíï áí åßóôå ðñïåôïéìáóìÝíïé íá
|
||
÷åéñéóôåßôå ôá åíäå÷ïìÝíùò ðéï áóôáèÞ ÷áñáêôçñéóôéêÜ ôçò (óå ó÷Ýóç
|
||
ðÜíôá ìå ôçí áíôßóôïé÷ç <emphasis>-STABLE</emphasis>).</para>
|
||
|
||
<para>ÍÝåò åêäüóåéò åìöáíßæïíôáé <link linkend="release-freq">êÜèå
|
||
ìåñéêïýò ìÞíåò</link>. Áí êáé ðïëëïß åðéëÝãïõí íá äéáôçñïýíôáé
|
||
åíçìåñùìÝíïé êáé ðéï óõ÷íÜ ìÝóù ôïõ ðçãáßïõ êþäéêá ôïõ &os;
|
||
(äåßôå ôéò åñùôÞóåéò óôï
|
||
<link linkend="current">&os.current;</link> êáé <link
|
||
linkend="stable">&os.stable;</link>), ïé åêäüóåéò åßíáé êÜôé
|
||
ðáñáðÜíù áðü õðï÷ñÝùóç, êáèþò ï ðçãáßïò êþäéêáò åßíáé ðåñéóóüôåñï
|
||
Ýíáò êéíïýìåíïò óôü÷ïò.</para>
|
||
|
||
<para>Ðåñéóóüôåñåò ðëçñïöïñßåò ãéá ôéò åêäüóåéò ôïõ &os; ìðïñåßôå
|
||
íá âñåßôå óôç <ulink
|
||
url="http://www.FreeBSD.org/releng/index.html">Óåëßäá Ðñïåôïéìáóßáò Åêäüóåùí</ulink>
|
||
óôçí äéêôõáêÞ ôïðïèåóßá ôïõ &os;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="current">
|
||
<para>Ôé åßíáé ôï &os;-CURRENT;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï <ulink
|
||
url="&url.books.handbook;/current-stable.html#CURRENT">&os.current;</ulink>
|
||
åßíáé ç õðü åîÝëéîç Ýêäïóç ôïõ ëåéôïõñãéêïý óõóôÞìáôïò, ôï ïðïßï
|
||
ìå ôïí êáéñü èá åîåëé÷èåß óôï íÝï êëÜäï &os.stable;. Ãéá ôï ëüãï
|
||
áõôü, ðáñïõóéÜæåé óõíÞèùò åíäéáöÝñïí ìüíï óå üóïõò áó÷ïëïýíôáé ìå
|
||
ôçí áíÜðôõîç êþäéêá ôïõ óõóôÞìáôïò êáé óå óêëçñïðõñçíéêïýò
|
||
÷ïìðßóôåò. Äåßôå ôï <ulink
|
||
url="&url.books.handbook;/current-stable.html#CURRENT">ó÷åôéêü ôìÞìá</ulink> óôï <ulink
|
||
url="&url.books.handbook;/index.html">åã÷åéñßäéï</ulink>
|
||
ãéá ëåðôïìÝñåéåò ó÷åôéêÜ ìå ôï -CURRENT.</para>
|
||
|
||
<para>Áí äåí åßóôå åîïéêåéùìÝíïò ìå ôï ëåéôïõñãéêü óýóôçìá, Þ äåí
|
||
åßóôå éêáíüò íá áíáãíùñßóåôå ôç äéáöïñÜ ìåôáîý åíüò ðñáãìáôéêïý
|
||
êáé åíüò ðñïóùñéíïý ðñïâëÞìáôïò, ìÜëëïí äåí èá ðñÝðåé íá
|
||
÷ñçóéìïðïéÞóåôå ôï &os.current;. Ï êëÜäïò áõôüò ïñéóìÝíåò öïñÝò
|
||
åîåëßóóåôáé ðïëý ãñÞãïñá, êáé ìðïñåß áêüìá êáé ç ìåôáãëþôôéóç ôïõ
|
||
íá ìçí åßíáé äõíáôÞ ãéá áñêåôÝò óõíå÷üìåíåò ìÝñåò. ¼óïé
|
||
÷ñçóéìïðïéïýí ôï &os.current; áíáìÝíåôáé íá åßíáé éêáíïß íá
|
||
áíáëýïõí ôá üðïéá ðñïâëÞìáôá êáé íá ôá áíáöÝñïõí ìüíï áí èåùñïýí
|
||
üôé ðñüêåéôáé ãéá óçìáíôéêÜ ëÜèç êáé ü÷é ãéá
|
||
<quote>ìéêñïðñïâëÞìáôá</quote>. ÅñùôÞóåéò ôïõ ôýðïõ
|
||
<quote>ôï make world ðáñÜãåé êÜðïéá óöÜëìáôá ó÷åôéêÜ ìå ôá
|
||
groups</quote> óôç ëßóôá ôá÷õäñïìåßïõ -CURRENT, ìðïñåß íá
|
||
áíôéìåôùðéóôïýí ðåñéöñïíçôéêÜ.</para>
|
||
|
||
<para>ÊÜèå ìÞíá, ðáñÜãïíôáé <ulink
|
||
url="&url.base;/snapshots/">óôéãìéüôõðá</ulink>
|
||
åêäüóåùí ðïõ âáóßæïíôáé óôçí ôñÝ÷ïõóá êáôÜóôáóç ôùí êëÜäùí
|
||
<emphasis>-CURRENT</emphasis> êáé <emphasis>-STABLE</emphasis>.
|
||
Ïé óôü÷ïé ðßóù áðü êÜèå Ýêäïóç óôéãìéüôõðïõ åßíáé:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Ï Ýëåã÷ïò ôçò ôåëåõôáßáò Ýêäïóçò ôïõ ëïãéóìéêïý
|
||
åãêáôÜóôáóçò.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Íá äþóåé ôç äõíáôüôçôá åýêïëçò åãêáôÜóôáóçò óå üóïõò
|
||
åðéèõìïýí íá åãêáôáóôÞóïõí ôï <emphasis>-CURRENT</emphasis>
|
||
Þ ôï <emphasis>-STABLE</emphasis> áëëÜ äåí Ý÷ïõí
|
||
ôï ÷ñüíï Þ ôï åýñïò æþíçò íá ôï ðáñáêïëïõèïýí ìÝñá ìå ôç
|
||
ìÝñá.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ç äéáôÞñçóç åíüò óôáèåñïý óçìåßïõ áíáöïñÜò ó÷åôéêÜ ìå ôïí
|
||
ðçãáßï êþäéêá, óå ðåñßðôùóç ðïõ ÷áëÜóïõìå êÜôé ðïëý Üó÷çìá
|
||
áñãüôåñá. (Áí êáé ëüãù ôçò ÷ñÞóçò ôïõ CVS åßíáé äýóêïëï íá
|
||
óõìâåß êÜôé ðñáãìáôéêÜ ôüóï öñéêôü.)</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Íá åîáóöáëéóôåß üôé êÜèå íÝï ÷áñáêôçñéóôéêü êáé äéüñèùóç
|
||
ðïõ ÷ñåéÜæåôáé Ýëåã÷ï, èá Ý÷åé ôï ìåãáëýôåñï äõíáôü êïéíü
|
||
ðéèáíþí äïêéìáóôþí.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>Äåí ðáñÝ÷åôáé êáìßá åããýçóç <quote>ôåëéêÞò ðïéüôçôáò</quote>
|
||
ãéá ôá óôéãìéüôõðá ôïõ êëÜäïõ <emphasis>-CURRENT</emphasis>. Áí
|
||
÷ñåéÜæåóôå Ýíá óôáèåñü êáé äïêéìáóìÝíï óýóôçìá, èá ðñÝðåé íá
|
||
ðñïôéìÜôå ôéò åðßóçìåò ðëÞñåéò åêäüóåéò Þ ôá óôéãìéüôõðá ôïõ
|
||
êëÜäïõ <emphasis>-STABLE</emphasis>.</para>
|
||
|
||
<para>Ðåñéóóüôåñåò ðëçñïöïñßåò ãéá ôá óôéãìéüôõðá ìðïñåßôå íá âñåßôå
|
||
óôç <ulink url="&url.base;/snapshots/">óåëßäá óôéãìéüôõðùí
|
||
åêäüóåùí</ulink>.</para>
|
||
|
||
<para>Åðßóçìá óôéãìéüôõðá åêäüóåùí ðáñÜãïíôáé ìéá öïñÜ ôï ìÞíá ãéá
|
||
üëïõò ôïõò åíåñãïýò êëÜäïõò áíÜðôõîçò. ÇìåñÞóéá óôéãìéüôõðá ãéá
|
||
ôéò ðéï äçìïöéëåßò áñ÷éôåêôïíéêÝò (&arch.i386; êáé &arch.amd64;)
|
||
ìðïñåßôå íá âñåßôå óôç
|
||
óåëßäá <ulink url="http://snapshots.us.freebsd.org/"></ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="stable">
|
||
<para>Ôé åßíáé ôï &os;-STABLE;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>¼ôáí êõêëïöüñçóå ôï &os; 2.0.5, ç áíÜðôõîç ôïõ &os; ÷ùñßóôçêå
|
||
óå äýï êëÜäïõò. Ï Ýíáò êëÜäïò ïíïìÜóôçêå <ulink
|
||
url="&url.books.handbook;/current-stable.html#STABLE">-STABLE</ulink>, êáé ï Üëëïò <ulink
|
||
url="&url.books.handbook;/current-stable.html#CURRENT">-CURRENT</ulink>.
|
||
Ôï <emphasis>&os;-STABLE</emphasis> áðåõèýíåôáé óå Ðáñï÷åßò Õðçñåóéþí Internet (ISPs)
|
||
êáé Üëëåò åìðïñéêÝò ÷ñÞóåéò, üðïõ ïé áðüôïìåò áëëáãÝò êáé ôá
|
||
ôõ÷üí ðåéñáìáôéêÜ ÷áñáêôçñéóôéêÜ åßíáé ãåíéêÜ áíåðéèýìçôá. Óôïí
|
||
êëÜäï áõôü åíóùìáôþíïíôáé ìüíï êáëÜ äïêéìáóìÝíåò äéïñèþóåéò êáé
|
||
Üëëåò ìéêñÝò áëëáãÝò. Áðü ôçí Üëëç ìåñéÜ, ôï
|
||
<emphasis>&os;-CURRENT</emphasis> âñßóêåôáé óå ìéá ìïíáäéêÞ áäéÜêïðç ãñáììÞ áíÜðôõîçò
|
||
áðü ôçí åðï÷Þ ôçò êõêëïöïñßáò ôçò Ýêäïóçò 2.0, ïäçãþíôáò ðñïò
|
||
ôçí Ýêäïóç &rel.current;-RELEASE áëëÜ êáé ìåôÜ áðü áõôÞ.
|
||
Ãéá ðåñéóóüôåñåò ðëçñïöïñßåò äåßôå ôï
|
||
Üñèñï <quote><ulink url="&url.articles.releng;/release-proc.html#REL-BRANCH">Ðñïåôïéìáóßá
|
||
Åêäüóåùí ôïõ &os;: Äçìéïõñãßá ôïõ ÊëÜäïõ ¸êäïóçò</ulink></quote>.</para>
|
||
|
||
<para>Ï êëÜäïò 2.2-STABLE åãêáôáëåßöèçêå ìå ôçí êõêëïöïñßá ôçò
|
||
Ýêäïóçò 2.2.8. Ï êëÜäïò 3-STABLE ôåëåßùóå ìå ôçí êõêëïöïñßá ôçò
|
||
Ýêäïóçò 3.5.1, ðïõ Þôáí êáé ç ôåëåõôáßá ôçò óåéñÜò åêäüóåùí 3.<replaceable>X</replaceable>.
|
||
Ï êëÜäïò 4-STABLE ôåëåßùóå ìå ôçí êõêëïöïñßá ôçò Ýêäïóçò 4.11, ôçò
|
||
ôåëåõôáßáò ôçò óåéñÜò 4.<replaceable>X</replaceable>. Ïé ìüíåò áëëáãÝò ðïõ ãßíïíôáé êáôÜ
|
||
âÜóç óå êÜèå Ýíá áðü áõôïýò ôïõò êëÜäïõò, Ý÷ïõí ó÷Ýóç ìå
|
||
äéïñèþóåéò óå êåíÜ áóöáëåßáò. Ç õðïóôÞñéîç ôùí êëÜäùí 5-STABLE
|
||
óôáìÜôçóå ìå ôçí Ýêäïóç 5.5, ôçí ôåëåõôáßá Ýêäïóç ôçò óåéñÜò
|
||
5.<replaceable>X</replaceable>. Ç õðïóôÞñéîç ãéá ôç óåéñÜ
|
||
åêäüóåùí 6-STABLE èá óõíå÷éóôåß ãéá ëßãï êáéñü áêüìá, áëëÜ èá
|
||
åðéêåíôñùèåß ðåñéóóüôåñï óå äéïñèþóåéò êåíþí áóöáëåßáò êáé Üëëùí
|
||
óïâáñþí ðñïâëçìÜôùí.</para>
|
||
|
||
<para>Ï êëÜäïò &rel.current;-STABLE åßíáé ï <emphasis>-STABLE</emphasis> êëÜäïò ðïõ âñßóêåôáé õðü
|
||
åíåñãÞ áíÜðôõîç. Ç ôåëåõôáßá êõêëïöïñßá ðïõ âáóßæåôáé óôïí êëÜäï
|
||
&rel.current;-STABLE åßíáé ç &rel.current;-RELEASE, êáé Ýãéíå
|
||
óôéò &rel.current.date;.</para>
|
||
|
||
<para>Ï êëÜäïò 8-CURRENT åßíáé ï êëÜäïò <emphasis>-CURRENT</emphasis> ðïõ áíáðôýóóåôáé
|
||
áõôÞ ôç óôéãìÞ åíåñãÜ þóôå íá äçìéïõñãçèåß ç íÝá ãåíéÜ ôïõ &os;.
|
||
Äåßôå ôï ôìÞìá <link linkend="current">Ôé åßíáé ôï &os;-CURRENT;</link>
|
||
ãéá ðåñéóóüôåñåò ðëçñïöïñßåò ó÷åôéêÜ ìå áõôü ôïí êëÜäï.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="release-freq">
|
||
<para>ÊÜèå ðüôå ãßíïíôáé åðßóçìåò êõêëïöïñßåò ôïõ &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>H &a.re; äßíåé óôçí êõêëïöïñßá ìéá êáéíïýñéá Ýêäïóç ôïõ &os;
|
||
êÜèå ðåñßðïõ ôÝóóåñéò ìÞíåò, êáôÜ ìÝóï üñï. Ïé çìåñïìçíßåò
|
||
êõêëïöïñßáò áíáêïéíþíïíôáé áñêåôü êáéñü ðñéí, þóôå üóïé äïõëåýïõí
|
||
ðÜíù óôï óýóôçìá íá îÝñïõí ðüôå ïé åñãáóßåò ôïõò ðñÝðåé íá Ý÷ïõí
|
||
ïëïêëçñùèåß êáé äïêéìáóôåß. Ðñéí áðü êÜèå êõêëïöïñßá, ðñïçãåßôáé
|
||
ìéá ðåñßïäïò äïêéìþí, þóôå íá åîáóöáëéóôåß üôé ç ðñïóèÞêç íÝùí
|
||
÷áñáêôçñéóôéêþí äåí Ý÷åé áñíçôéêÝò åðéðôþóåéò óôç óôáèåñüôçôá
|
||
ôçò Ýêäïóçò. Ðïëëïß ÷ñÞóôåò èåùñïýí áõôü ôï åßäïò ôçò ðñïóï÷Þò
|
||
Ýíá áðü ôá êáëýôåñá ðñÜãìáôá ó÷åôéêÜ ìå ôï &os;, áí êáé ç áíáìïíÞ
|
||
ùò üôïõ öôÜóïõí üëá ôá ùñáßá íÝá ÷áñáêôçñéóôéêÜ ôï -STABLE ìðïñåß
|
||
íá ãßíåé ëßãï åêíåõñéóôéêÞ.</para>
|
||
|
||
<para>Ðåñéóóüôåñåò ðëçñïöïñßåò ó÷åôéêÜ ìå ôç äéáäéêáóßá êõêëïöïñßáò
|
||
(ðåñéëáìâáíïìÝíïõ êáé åíüò ÷ñïíïäéáãñÜììáôïò åðéêåßìåíùí
|
||
êõêëïöïñéþí) ìðïñïýí íá âñåèïýí óôéò óåëßäåò <ulink
|
||
url="http://www.FreeBSD.org/releng/index.html">ðñïåôïéìáóßáò åêäüóåùí</ulink> óôç äéêôõáêÞ ôïðïèåóßá ôïõ &os;.</para>
|
||
|
||
<para>Ãéá ôïõò ðéï åíèïõóéþäåéò, õðÜñ÷ïõí êáèçìåñéíÜ óôéãìéüôõðá
|
||
(binary snapshots) üðùò áíáöÝñèçêå ðéï ðÜíù.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="responsible">
|
||
<para>Ðïéïò åßíáé õðåýèõíïò ãéá ôï &os;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ïé âáóéêÝò áðïöÜóåéò ðïõ áöïñïýí ôï &os; Project, üðùò ç
|
||
óõíïëéêÞ êáôåýèõíóç ôïõ Ýñãïõ êáé ðïéïò åðéôñÝðåôáé íá ðñïóèÝóåé
|
||
ðçãáßï êþäéêá óôï äÝíôñï, ðáßñíïíôáé áðü ôçí <ulink
|
||
url="&url.base;/administration.html#t-core">âáóéêÞ ïìÜäá (core team)</ulink> ðïõ áðïôåëåßôáé áðü 9 Üôïìá. ÕðÜñ÷åé ìéá áêüìá ìåãáëýôåñç ïìÜäá
|
||
ìå ðåñéóóüôåñá áðü 350 Üôïìá ðïõ ïíïìÜæïíôáé <ulink
|
||
url="&url.articles.contributors;/article.html#STAFF-COMMITTERS"> äéáðñÜêôåò (committers)</ulink>
|
||
êáé ïé ïðïßïé Ý÷ïõí ôçí Ýãêñéóç íá êÜíïõí áðåõèåßáò áëëáãÝò óôï
|
||
äÝíôñï ðçãáßïõ êþäéêá ôïõ &os;.</para>
|
||
|
||
<para>Ùóôüóï ïé ðåñéóóüôåñåò óçìáíôéêÝò áëëáãÝò óõæçôïýíôáé áðü
|
||
ðñéí óôéò <link linkend="mailing">ëßóôåò çëåêôñïíéêïý
|
||
ôá÷õäñïìåßïõ</link>, êáé äåí õðÜñ÷ïõí ðåñéïñéóìïß ó÷åôéêÜ ìå ôï
|
||
ðïéïé ëáìâÜíïõí ìÝñïò óå áõôÝò ôéò óõæçôÞóåéò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="where-get">
|
||
<para>Ðïõ ìðïñþ íá ðñïìçèåõôþ ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÊÜèå óçìáíôéêÞ Ýêäïóç ôïõ &os; åßíáé äéáèÝóéìç ìÝóù áíþíõìïõ
|
||
FTP áðü ôïí <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/"> äéáêïìéóôÞ FTP ôïõ &os;</ulink>:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Ç ôåëåõôáßá êõêëïöïñßá ðïõ âáóßæåôáé óôï 6-STABLE,
|
||
&rel.current;-RELEASE ìðïñåß íá âñåèåß óôïí êáôÜëïãï
|
||
<ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/">&rel.current;-RELEASE</ulink>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Åêäüóåéò ðïõ âáóßæïíôáé óå<ulink
|
||
url="&url.base;/snapshots/">Óôéãìéüôõðá</ulink> ãßíïíôáé êáèçìåñéíÜ áðü ôïõò êëÜäïõò
|
||
<link linkend="current">-CURRENT</link> êáé
|
||
<link linkend="stable">-STABLE</link>, êáé åîõðçñåôïýí êáôÜ
|
||
âÜóç üóïõò áó÷ïëïýíôáé ìå ôçí áíÜðôõîç êáé ôïí Ýëåã÷ï ôùí
|
||
ôåëåõôáßáò ãåíéÜò ðñïãñáììÜôùí.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ç ôåëåõôáßá êõêëïöïñßá ðïõ âáóßæåôáé óôïí êëÜäï 5-STABLE,
|
||
ç &rel2.current;-RELEASE, ìðïñåß íá âñåèåß óôïí êáôÜëïãï
|
||
<ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel2.current;-RELEASE/">&rel2.current;-RELEASE</ulink>.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>Ðëçñïöïñßåò ó÷åôéêÜ ìå ôç äéÜèåóç ôïõ &os; óå CD, DVD êáé Üëëá
|
||
ìÝóá ìðïñïýí íá âñåèïýí
|
||
<ulink url="&url.books.handbook;/mirrors.html">óôï Åã÷åéñßäéï</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="access-pr">
|
||
<para>Ðùò ìðïñþ íá Ý÷ù ðñüóâáóç óôç ÂÜóç ÄåäïìÝíùí ìå ôéò
|
||
ÁíáöïñÝò ÐñïâëçìÜôùí;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ìðïñåßôå íá êÜíåôå áíáæçôÞóåéò óôç âÜóç äåäïìÝíùí ìå ôéò
|
||
áíáöïñÝò ðñïâëçìÜôùí ìÝóù ôçò <ulink
|
||
url="http://www.FreeBSD.org/cgi/query-pr-summary.cgi?query">äéåðáöÞò áíáæçôÞóåùí óôï Web</ulink>.</para>
|
||
|
||
<para>Ç åíôïëÞ &man.send-pr.1; ìðïñåß íá ÷ñçóéìïðïéçèåß ãéá ôçí
|
||
õðïâïëÞ áíáöïñþí ðñïâëçìÜôùí, êáèþò êáé áéôÞóåùí ãéá áëëáãÝò,
|
||
ìÝóù çëåêôñïíéêïý ôá÷õäñïìåßïõ. ÅíáëëáêôéêÜ, ìðïñåßôå íá
|
||
÷ñçóéìïðïéÞóåôå ôçí áíôßóôïé÷ç äõíáôüôçôá
|
||
<ulink url="http://www.freebsd.org/send-pr.html">õðïâïëÞò áíáöïñþí ðñïâëçìÜôùí ìÝóù ôçò äéåðáöÞò web</ulink> ìå ôç âïÞèåéá åíüò ðñïãñÜììáôïò
|
||
öõëëïìåôñçôÞ.</para>
|
||
|
||
<para>Ðñéí õðïâÜëåôå ìéá áíáöïñÜ ðñïâëÞìáôïò, ðáñáêáëïýìå äéáâÜóôå
|
||
ôï <ulink url="&url.articles.problem-reports;/article.html">ÃñÜöïíôáò ÁíáöïñÝò ÐñïâëçìÜôùí ãéá ôï &os;</ulink>,
|
||
Ýíá Üñèñï ãéá ôï ðùò íá ãñÜöåôå êáëÝò áíáöïñÝò ðñïâëçìÜôùí.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="other-info-sources">
|
||
<para>Ôé Üëëåò ðçãÝò ðëçñïöïñéþí õðÜñ÷ïõí;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ðáñáêáëïýìå åëÝãîôå ôç ëßóôá ôçò <ulink
|
||
url="http://www.FreeBSD.org/docs.html">Ôåêìçñßùóçò</ulink>
|
||
óôçí êýñéá äéêôõáêÞ ôïðïèåóßá ôïõ <ulink
|
||
url="http://www.FreeBSD.org">&os;</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="support">
|
||
<title>Ôåêìçñßùóç êáé ÕðïóôÞñéîç</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="books">
|
||
<para>Ðïéá êáëÜ âéâëßá õðÜñ÷ïõí ó÷åôéêÜ ìå ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï Project ðáñÜãåé ìéá ìåãÜëç ãêÜìá ôåêìçñßùóçò ðïõ äéáôßèåôáé
|
||
online áðü ôïí ðáñáêÜôù óýíäåóìï:
|
||
<ulink url="http://www.FreeBSD.org/docs.html"></ulink>. Ôá ßäéá
|
||
áõôÜ Ýããñáöá åßíáé äéáèÝóéìá êáé ùò ðáêÝôá ôá ïðïßá ìðïñåßôå íá
|
||
åãêáôáóôÞóåôå åýêïëá óôï &os; óýóôçìá óáò. Ðåñéóóüôåñåò
|
||
ëåðôïìÝñåéåò ó÷åôéêÜ ìå ôá ðáêÝôá ôåêìçñßùóçò, èá âñåßôå óôéò
|
||
áêüëïõèåò ðáñáãñÜöïõò.</para>
|
||
|
||
<para>Åðéðñüóèåôá, èá âñåßôå êáé Üëëá óõíéóôþìåíá âéâëßá óôçí
|
||
Âéâëéïãñáößá óôï ôÝëïò áõôïý ôïõ FAQ, êáé ôïõ Åã÷åéñéäßïõ.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="doc-formats">
|
||
<para>Åßíáé äéáèÝóéìç ç ôåêìçñßùóç êáé óå Üëëåò ìïñöÝò, üðùò áðëü
|
||
êåßìåíï (ASCII) Þ &postscript;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Íáé. Ç ôåêìçñßùóç åßíáé äéáèÝóéìç óå ðëÞèïò äéáöïñåôéêþí
|
||
ìïñöþí êáé ôñüðùí óõìðßåóçò, óôï äéáêïìéóôÞ FTP ôïõ &os;, óôïí
|
||
êáôÜëïãï <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">/pub/FreeBSD/doc/</ulink>.</para>
|
||
|
||
<para>Ç ôåêìçñßùóç åßíáé êáôçãïñéïðïéçìÝíç ìå äéÜöïñïõò ôñüðïõò.
|
||
Áõôïß ðåñéëáìâÜíïõí:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Ôï üíïìá ôïõ åããñÜöïõ, üðùò ð.÷. <literal>faq</literal>, Þ
|
||
<literal>handbook</literal>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>H ãëþóóá êáé ç êùäéêïðïßçóç ôïõ êåéìÝíïõ. ÁõôÜ âáóßæïíôáé
|
||
óôá ïíüìáôá ðïõ Ý÷ïõí äïèåß óôéò ôïðéêÝò ñõèìßóåéò êáé ðïõ
|
||
ìðïñåßôå íá âñåßôå óôïí êáôÜëïãï
|
||
<filename>/usr/share/locale</filename> óôï &os; óýóôçìÜ óáò.
|
||
Ïé ôñÝ÷ïõóåò ãëþóóåò êáé êùäéêïðïéÞóåéò ðïõ Ý÷ïõìå äéáèÝóéìåò
|
||
áõôÞ ôç óôéãìÞ óôçí ôåêìçñßùóç åßíáé ïé ðáñáêÜôù:</para>
|
||
|
||
<informaltable frame="none" pgwide="1">
|
||
<tgroup cols="2">
|
||
<thead>
|
||
<row>
|
||
<entry>¼íïìá</entry>
|
||
|
||
<entry>Åñìçíåßá</entry>
|
||
</row>
|
||
</thead>
|
||
|
||
<tbody>
|
||
<row>
|
||
<entry><literal>en_US.ISO8859-1</literal></entry>
|
||
|
||
<entry>ÁããëéêÜ ÇÐÁ</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>bn_BD.ISO10646-1</literal></entry>
|
||
|
||
<entry>Bengali (Þ Bangla)</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>da_DK.ISO8859-1</literal></entry>
|
||
|
||
<entry>ÄáíÝæéêá</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>de_DE.ISO8859-1</literal></entry>
|
||
|
||
<entry>ÃåñìáíéêÜ</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>es_ES.ISO8859-1</literal></entry>
|
||
|
||
<entry>ÉóðáíéêÜ</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>fr_FR.ISO8859-1</literal></entry>
|
||
|
||
<entry>ÃáëëéêÜ</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>hu_HU.ISO8859-2</literal></entry>
|
||
|
||
<entry>ÏõããáñÝæéêá</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>it_IT.ISO8859-15</literal></entry>
|
||
|
||
<entry>ÉôáëéêÜ</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>ja_JP.eucJP</literal></entry>
|
||
|
||
<entry>ÃéáðùíÝæéêá (êùäéêïðïßçóç EUC)</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>mn_MN.UTF-8</literal></entry>
|
||
|
||
<entry>ÌïããïëéêÜ (êùäéêïðïßçóç UTF-8)</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>nl_NL.ISO8859-1</literal></entry>
|
||
|
||
<entry>ÏëëáíäéêÜ</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>pl_PL.ISO8859-2</literal></entry>
|
||
|
||
<entry>ÐïëùíéêÜ</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>pt_BR.ISO8859-1</literal></entry>
|
||
|
||
<entry>ÐïñôïãáëéêÜ (Âñáæéëßá)</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>ru_RU.KOI8-R</literal></entry>
|
||
|
||
<entry>Ñþóéêá (êùäéêïðïßçóç KOI8-R)</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>sr_YU.ISO8859-2</literal></entry>
|
||
|
||
<entry>ÓÝñâéêá</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>tr_TR.ISO8859-9</literal></entry>
|
||
|
||
<entry>Ôïýñêéêá</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>zh_CN.GB2312</literal></entry>
|
||
|
||
<entry>ÁðëïðïéçìÝíá ÊéíÝæéêá (êùäéêïðïßçóç GB2312)
|
||
</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>zh_TW.Big5</literal></entry>
|
||
|
||
<entry>ÐáñáäïóéáêÜ ÊéíÝæéêá (êùäéêïðïßçóç Big5)</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
|
||
<note>
|
||
<para>ÊÜðïéá Ýããñáöá ìðïñåß íá ìçí åßíáé äéáèÝóéìá óå üëåò
|
||
ôéò ãëþóóåò.</para>
|
||
</note>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ôç ìïñöÞ ôïõ åããñÜöïõ. ÐáñÜãïõìå ôåêìçñßùóç óå ðëÞèïò
|
||
äéáöïñåôéêþí ìïñöþí åîüäïõ. ÊÜèå ìïñöÞ Ý÷åé ôá äéêÜ ôçò
|
||
ðëåïíåêôÞìáôá êáé ìåéïíåêôÞìáôá. ÊÜðïéåò ìïñöÝò åßíáé
|
||
ðåñéóóüôåñï êáôÜëëçëåò ãéá áíÜãíùóç online, åíþ Üëëåò
|
||
äßíïõí ðéï êáëáßóèçôï áðïôÝëåóìá üôáí åêôõðùèïýí. Ç äéÜèåóç
|
||
ôçò ôåêìçñßùóçò óå üëåò áõôÝò ôéò ìïñöÝò åîáóöáëßæåé üôé ïé
|
||
áíáãíþóôåò ìáò èá ìðïñïýí íá äéáâÜóïõí ôá ôìÞìáôá ðïõ ôïõò
|
||
åíäéáöÝñïõí, åßôå óôçí ïèüíç ôïõò, åßôå áöïý ôá åêôõðþóïõí.
|
||
Ïé äéáèÝóéìåò áõôÞ ôç óôéãìÞ ìïñöÝò åßíáé:</para>
|
||
|
||
<informaltable frame="none" pgwide="1">
|
||
<tgroup cols="2">
|
||
<thead>
|
||
<row>
|
||
<entry>ÌïñöÞ</entry>
|
||
|
||
<entry>Åñìçíåßá</entry>
|
||
</row>
|
||
</thead>
|
||
|
||
<tbody>
|
||
<row>
|
||
<entry><literal>html-split</literal></entry>
|
||
|
||
<entry>ÓõëëïãÞ ìéêñþí, óõíäåìÝíùí ìåôáîý ôïõò, áñ÷åßùí
|
||
HTML.</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>html</literal></entry>
|
||
|
||
<entry>¸íá ìåãÜëï HTML áñ÷åßï ðïõ ðåñéÝ÷åé ïëüêëçñï ôï
|
||
Ýããñáöï.</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>pdb</literal></entry>
|
||
|
||
<entry>ÌïñöÞ âÜóçò äåäïìÝíùí ãéá ôï Palm Pilot, ãéá
|
||
÷ñÞóç ìå ôï ðñüãñáììá áíÜãíùóçò
|
||
<ulink url="http://www.iSilo.com/">iSilo</ulink>.
|
||
</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>pdf</literal></entry>
|
||
|
||
<entry>ÌïñöÞ êåéìÝíïõ PDF ôçò Adobe.</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>ps</literal></entry>
|
||
|
||
<entry>&postscript;</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>rtf</literal></entry>
|
||
|
||
<entry>ÌïñöÞ ÅìðëïõôéóìÝíïõ ÊåéìÝíïõ ôçò Microsoft
|
||
<footnote><para>Ïé áñéèìïß óåëßäùí äåí áíáíåþíïíôáé
|
||
áõôüìáôá üôáí öïñôþíåôå áõôÞ ôç ìïñöÞ åããñÜöïõ óôï
|
||
Word. ÐéÝóôå
|
||
<keycombo
|
||
action="simul"><keycap>CTRL</keycap><keycap>A</keycap></keycombo>,
|
||
<keycombo
|
||
action="simul"><keycap>CTRL</keycap><keycap>END</keycap></keycombo>,
|
||
<keycap>F9</keycap> ìåôÜ ôç öüñôùóç ôïõ êåéìÝíïõ ãéá
|
||
ôçí áíáíÝùóç ôùí áñéèìþí óåëßäùí.</para>
|
||
</footnote>
|
||
</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>txt</literal></entry>
|
||
|
||
<entry>Áðëü êåßìåíï</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ï ôñüðïò óõìðßåóçò êáé ðáêåôáñßóìáôïò. ÕðÜñ÷ïõí ôñåéò
|
||
ôñüðïé ðïõ ÷ñçóéìïðïéïýíôáé áõôÞ ôç óôéãìÞ.</para>
|
||
|
||
<orderedlist>
|
||
<listitem>
|
||
<para>¼ôáí ç ìïñöÞ åßíáé
|
||
<literal>html-split</literal>, ôá áñ÷åßá óõìðéÝæïíôáé
|
||
ìå ÷ñÞóç ôçò &man.tar.1;. Ôï áñ÷åßï
|
||
<filename>.tar</filename> ðïõ ðñïêýðôåé, óõìðéÝæåôáé
|
||
Ýðåéôá ìå ôïõò ôñüðïõò óõìðßåóçò ðïõ ðåñéãñÜöïíôáé
|
||
ðáñáêÜôù.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>¼ëåò ïé Üëëåò ìïñöÝò äçìéïõñãïýí Ýíá áñ÷åßï ðïõ
|
||
ïíïìÜæåôáé
|
||
<filename>book.<replaceable>ìïñöÞ</replaceable></filename>
|
||
(ð.÷., <filename>book.pdb</filename>,
|
||
<filename>book.html</filename>, ê.ï.ê.).</para>
|
||
|
||
<para>Ôá áñ÷åßá áõôÜ óõìðéÝæïíôáé êáôüðéí ìå äýï ôñüðïõò
|
||
óõìðßåóçò.</para>
|
||
|
||
<informaltable frame="none" pgwide="1">
|
||
<tgroup cols="2">
|
||
<thead>
|
||
<row>
|
||
<entry>Ôñüðïò</entry>
|
||
|
||
<entry>ÐåñéãñáöÞ</entry>
|
||
</row>
|
||
</thead>
|
||
|
||
<tbody>
|
||
<row>
|
||
<entry><literal>zip</literal></entry>
|
||
|
||
<entry>ÌïñöÞ óõìðßåóçò Zip. Áí èÝëåôå íá
|
||
ôï áðïóõìðéÝóåôå óôï &os; èá ðñÝðåé íá
|
||
åãêáôáóôÞóåôå ðñþôá ôï port
|
||
<filename
|
||
role="package">archivers/unzip</filename>.
|
||
</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><literal>bz2</literal></entry>
|
||
|
||
<entry>Ç ìïñöÞ BZip2. Åßíáé ëéãüôåñï äéáäåäïìÝíç
|
||
áðü ôï Zip, áëëÜ ãåíéêÜ äçìéïõñãåß ìéêñüôåñá
|
||
áñ÷åßá. ÅãêáôáóôÞóôå ôï port <filename
|
||
role="package">archivers/bzip2</filename>
|
||
ãéá íá áðïóõìðéÝóåôå áñ÷åßá áõôïý ôïõ ôýðïõ.
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
|
||
<para>Ìå ôïí ôñüðï áõôü, ç ìïñöÞ &postscript; ôïõ
|
||
Åã÷åéñéäßïõ, óõìðéåóìÝíç ìå ÷ñÞóç ôïõ BZip2 èá
|
||
áðïèçêåõôåß óå Ýíá áñ÷åßï ìå üíïìá
|
||
<filename>book.ps.bz2</filename> óôïí
|
||
êáôÜëïãï <filename>handbook/</filename>.</para>
|
||
</listitem>
|
||
</orderedlist>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>Áöïý åðéëÝîåôå ôç ìïñöÞ êáé ôï ìç÷áíéóìü óõìðßåóçò ðïõ
|
||
åðéèõìåßôå íá êáôåâÜóåôå, èá ðñÝðåé Ýðåéôá íá áðïöáóßóåôå áí
|
||
èÝëåôå Þ ü÷é íá êáôåâÜóåôå ôï Ýããñáöï ìå ôç ìïñöÞ
|
||
<emphasis>ðáêÝôïõ</emphasis> ôïõ &os;.</para>
|
||
|
||
<para>Ôï ðëåïíÝêôçìá óôï íá êáôåâÜóåôå êáé íá åãêáôáóôÞóåôå ôï
|
||
ðáêÝôï åßíáé üôé Ýðåéôá ìðïñåßôå íá äéá÷åéñéóôåßôå ôçí
|
||
ôåêìçñßùóç ÷ñçóéìïðïéþíôáò ôá óõíçèéóìÝíá åñãáëåßá äéá÷åßñéóçò
|
||
ðáêÝôùí ôïõ &os; üðùò ôçí &man.pkg.add.1; êáé ôçí
|
||
&man.pkg.delete.1;.</para>
|
||
|
||
<para>Áí áðïöáóßóåôå íá êáôåâÜóåôå êáé íá åãêáôáóôÞóåôå ôçí
|
||
ôåêìçñßùóç ùò ðáêÝôï, èá ðñÝðåé íá îÝñåôå ôï áêñéâÝò üíïìá áñ÷åßïõ
|
||
ðïõ èá êáôåâÜóåôå. Ôá áñ÷åßá ôåêìçñßùóçò-ùò-ðáêÝôï áðïèçêåýïíôáé
|
||
óå Ýíá êáôÜëïãï ìå ôï üíïìá <filename>packages</filename>. ÊÜèå
|
||
ðáêÝôï ìïéÜæåé ìå
|
||
<filename><replaceable>üíïìá-êåéìÝíïõ</replaceable>.<replaceable>ãëþóóá</replaceable>.<replaceable>êùäéêïðïßçóç</replaceable>.<replaceable>ìïñöÞ</replaceable>.tgz</filename>.</para>
|
||
|
||
<para>Ãéá ðáñÜäåéãìá, ôï FAQ, óôá ÁããëéêÜ, óå ìïñöÞ PDF, åßíáé óôï
|
||
ðáêÝôï ìå üíïìá
|
||
<filename>faq.en_US.ISO8859-1.pdf.tgz</filename>.</para>
|
||
|
||
<para>Áí ôï îÝñåôå áõôü ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ôçí áêüëïõèç
|
||
åíôïëÞ ãéá íá åãêáôáóôÞóåôå ôï ðáêÝôï ôïõ Áããëéêïý PDF FAQ:</para>
|
||
|
||
<screen>&prompt.root; <userinput>pkg_add ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/packages/faq.en_US.ISO8859-1.pdf.tgz</userinput></screen>
|
||
|
||
<para>Áöïý ôï êÜíåôå áõôü, ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ôçí åíôïëÞ
|
||
&man.pkg.info.1; ãéá íá âñåßôå ðïõ Ý÷åé åãêáôáóôáèåß ôï áñ÷åßï.</para>
|
||
|
||
<screen>&prompt.root; <userinput>pkg_info -f faq.en_US.ISO8859-1.pdf</userinput>
|
||
Information for faq.en_US.ISO8859-1.pdf:
|
||
|
||
Packing list:
|
||
Package name: faq.en_US.ISO8859-1.pdf
|
||
CWD to /usr/share/doc/en_US.ISO8859-1/books/faq
|
||
File: book.pdf
|
||
CWD to .
|
||
File: +COMMENT (ignored)
|
||
File: +DESC (ignored)</screen>
|
||
|
||
<para>¼ðùò ìðïñåßôå íá äåßôå, ôï <filename>book.pdf</filename> èá
|
||
Ý÷åé åãêáôáóôáèåß óôïí êáôÜëïãï
|
||
<filename>/usr/share/doc/en_US.ISO8859-1/books/faq</filename>.</para>
|
||
|
||
<para>Áí äåí èÝëåôå íá ÷ñçóéìïðïéÞóåôå ôá ðáêÝôá, èá ðñÝðåé íá
|
||
êáôåâÜóåôå ìüíïé óáò ôá óõìðéåóìÝíá áñ÷åßá, íá ôá áðïóõìðéÝóåôå
|
||
êáé Ýðåéôá íá áíôéãñÜøåôå ôá áíôßóôïé÷á Ýããñáöá óôç èÝóç ôïõò.</para>
|
||
|
||
<para>Ãéá ðáñÜäåéãìá, ç Ýêäïóç ôïõ FAQ óå óõíäåäåìÝíá áñ÷åßá HTML,
|
||
óõìðéåóìÝíç ìå ÷ñÞóç ôïõ &man.bzip2.1;, ìðïñåß íá âñåèåß óôï
|
||
áñ÷åßï
|
||
<filename>doc/en_US.ISO8859-1/books/faq/book.html-split.tar.bz2
|
||
</filename>. Ãéá íá êáôåâÜóåôå êáé íá áðïóõìðéÝóåôå áõôü ôï
|
||
áñ÷åßï èá ðñÝðåé íá êÜíåôå ôï ðáñáêÜôù:</para>
|
||
|
||
<screen>&prompt.root; <userinput>fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/en_US.ISO8859-1/books/faq/book.html-split.tar.bz2</userinput>
|
||
&prompt.root; <userinput>bzip2 -d book.html-split.tar.bz2</userinput>
|
||
&prompt.root; <userinput>tar xvf book.html-split.tar</userinput></screen>
|
||
|
||
<para>Èá êáôáëÞîåôå ìå ìéá óõëëïãÞ áðü áñ÷åßá
|
||
<filename>.html</filename>. Ôï âáóéêü ïíïìÜæåôáé
|
||
<filename>index.html</filename>, êáé èá ðåñéÝ÷åé ôïí ðßíáêá
|
||
ðåñéå÷ïìÝíùí, åéóáãùãéêü õëéêü, êáé äåóìïýò ðñïò ôá Üëëá ôìÞìáôá
|
||
ôïõ åããñÜöïõ. Ìðïñåßôå Ýðåéôá íá áíôéãñÜøåôå Þ íá ìåôáêéíÞóåôå
|
||
ôá áñ÷åßá áõôÜ óôéò ôåëéêÝò ôïõò èÝóåéò, üðùò áðáéôåßôáé.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="mailing">
|
||
<para>Ðïõ ìðïñþ íá âñù ðëçñïöïñßåò ãéá ëßóôåò çëåêôñïíéêïý
|
||
ôá÷õäñïìåßïõ ôïõ &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ìðïñåßôå íá âñåßôå ðëÞñåéò ðëçñïöïñßåò óôçí áíôßóôïé÷ç <ulink
|
||
url="&url.books.handbook;/eresources.html#ERESOURCES-MAIL">êáôá÷þñçóç ôïõ Åã÷åéñéäßïõ ãéá ôéò ëßóôåò çëåêôñïíéêïý ôá÷õäñïìåßïõ</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="newsgroups">
|
||
<para>Ôé ïìÜäåò óõæÞôçóçò åßíáé äéáèÝóéìåò ãéá ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ìðïñåßôå íá âñåßôå ðëÞñåéò ðëçñïöïñßåò óôçí <ulink
|
||
url="&url.books.handbook;/eresources-news.html">êáôá÷þñçóç ôïõ Åã÷åéñéäßïõ ãéá ôéò ïìÜäåò óõæçôÞóåùí</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="irc">
|
||
<para>ÕðÜñ÷ïõí êáíÜëéá óôï IRC (Internet Relay Chat) ãéá ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Íáé, ôá ðåñéóóüôåñá IRC äßêôõá äéáèÝôïõí êáíÜëé óõæÞôçóçò ãéá
|
||
ôï &os;:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Ôï êáíÜëé <literal>#FreeBSD</literal> óôï
|
||
<ulink url="http://www.efnet.org/index.php">EFNet</ulink>
|
||
áó÷ïëåßôáé ìå ôï &os;, áëëÜ ìçí ðÜôå åêåß ãéá ôå÷íéêÞ
|
||
õðïóôÞñéîç Þ ãéá íá ðñïóðáèÞóåôå íá ðåßóåôå ôïõò èáìþíåò íá
|
||
óáò âïçèÞóïõí ãéá íá áðáëëáãåßôå áðü ôïí êüðï íá äéáâÜóåôå ôéò
|
||
óåëßäåò âïÞèåéáò Þ íá åñåõíÞóåôå ìüíïò óáò. Åßíáé áðëþò Ýíá
|
||
êáíÜëé óõæÞôçóçò, ðñþôá áðü üëá, êáé ôá èÝìáôá åêåß ìðïñåß
|
||
íá êõìáßíïíôáé áíÜìåóá óôï óåî, ôïí áèëçôéóìü, ôá ðõñçíéêÜ
|
||
üðëá ùò êáé ôï &os;. Óáò Ý÷ïõìå ðñïåéäïðïéÞóåé! Åßíáé
|
||
äéáèÝóéìï óôïí åîõðçñåôçôÞ <hostid>irc.chat.org</hostid>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ôï êáíÜëé <literal>#FreeBSDhelp</literal> óôï
|
||
<ulink url="http://www.efnet.org/index.php">EFNet</ulink>
|
||
åßíáé áöéåñùìÝíï óôç âïÞèåéá ôùí ÷ñçóôþí ôïõ &os;. ¸÷åôå
|
||
ðïëý ìåãáëýôåñç ðéèáíüôçôá íá âñåßôå áðáíôÞóåéò óôéò åñùôÞóåéò
|
||
óáò óå áõôü, ðáñÜ óôï <literal>#FreeBSD</literal>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ôï êáíÜëé <literal>##FreeBSD</literal> óôï
|
||
<ulink url="http://freenode.net/">Freenode</ulink>
|
||
åßíáé Ýíá ãåíéêü êáíÜëé âïÞèåéáò ìå ðåñßðïõ 300 ÷ñÞóôåò êÜèå
|
||
öïñÜ. Ïé óõæçôÞóåéò ìåñéêÝò öïñÝò îåöåýãïõí áðü ôï èÝìá,
|
||
áëëÜ äßíåôáé ðñïôåñáéüôçôá óôïõò ÷ñÞóôåò ìå åñùôÞóåéò ãéá ôï
|
||
&os;. Åßìáóôå êáëïß óôï íá óáò âïçèÞóïõìå íá êáôáëÜâåôå ôá
|
||
âáóéêÜ, íá óáò äåßîïõìå ðïõ íá áíáôñÝîåôå óôï Åã÷åéñßäéï üðïôå
|
||
÷ñåéÜæåôáé, êáé íá óáò êáôåõèýíïõìå åêåß üðïõ ìðïñåßôå íá
|
||
ìÜèåôå ðåñéóóüôåñá ãéá èÝìá ðïõ óáò áðáó÷ïëåß. Åßìáóôå êáôÜ
|
||
âÜóç Áããëüöùíï êáíÜëé, áí êáé Ý÷ïõìå ÷ñÞóôåò áðü üëï ôïí
|
||
êüóìï. Áí èÝëåôå íá ñùôÞóåôå óôç ìçôñéêÞ óáò ãëþóóá,
|
||
ðñïóðáèÞóôå íá êÜíåôå ôçí åñþôçóç óôá ÁããëéêÜ êáé Ýðåéôá
|
||
ìåôáêéíçèåßôå óå êÜðïéï Üëëï êáíÜëé
|
||
##freebsd-<replaceable>lang</replaceable> áí ÷ñåéÜæåôáé.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ôï êáíÜëé <literal>#FreeBSD</literal> óôï
|
||
<ulink url="http://www.dal.net/">DALNET</ulink>
|
||
åßíáé äéáèÝóéìï óôï <hostid>irc.dal.net</hostid> óôéò ÇÐÁ
|
||
êáé óôï <hostid>irc.eu.dal.net</hostid> óôçí Åõñþðç.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ôï êáíÜëé <literal>#FreeBSDHelp</literal> óôï
|
||
<ulink url="http://www.dal.net/">DALNET</ulink>
|
||
åßíáé äéáèÝóéìï óôï <hostid>irc.dal.net</hostid> óôéò ÇÐÁ
|
||
êáé óôï <hostid>irc.eu.dal.net</hostid> óôçí Åõñþðç.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ôï êáíÜëé <literal>#FreeBSD</literal> óôï
|
||
<ulink url="http://www.undernet.org/">UNDERNET</ulink>
|
||
åßíáé äéáèÝóéìï óôï <hostid>us.undernet.org</hostid>
|
||
óôéò ÇÐÁ êáé óôï <hostid>eu.undernet.org</hostid> óôçí
|
||
Åõñþðç. Êáèþò åßíáé êáíÜëé âïÞèåéáò, èá ðñÝðåé íá åßóôå
|
||
ðñïåôïéìáóìÝíïé íá äéáâÜóåôå ôá Ýããñáöá óôá ïðïßá èá óáò
|
||
ðáñáðÝìøïõí.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ôï êáíÜëé <literal>#FreeBSD</literal> óôï
|
||
<ulink url="http://www.rusnet.org.ru/">RUSNET</ulink>
|
||
åßíáé ðñïóáíáôïëéóìÝíï óôç âïÞèåéá ÷ñçóôþí ôïõ &os; ðïõ
|
||
ìéëïýí ôç ÑùóéêÞ ãëþóóá. Åßíáé åðßóçò Ýíá êáëü ìÝñïò ãéá
|
||
ìç-ôå÷íéêÝò óõæçôÞóåéò.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ôï êáíÜëé <literal>#BSDChat</literal> óôï
|
||
<ulink url="http://www.ircnet.net/">IRCNET</ulink>
|
||
åßíáé Ýíá êáíÜëé óå ðáñáäïóéáêÞ ÊéíåæéêÞ ãëþóóá, áöéåñùìÝíï
|
||
óôç âïÞèåéá ÷ñçóôþí ôïõ &os;. Åßíáé åðßóçò Ýíá êáëü ìÝñïò ãéá
|
||
ìç-ôå÷íéêÝò óõæçôÞóåéò.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>ÊÜèå Ýíá áðü áõôÜ ôá êáíÜëéá, åßíáé ÷ùñéóôü, êáé äåí
|
||
äéáóõíäÝåôáé ìå ôá õðüëïéðá. Ôá óôõë ôçò óõæÞôçóçò äéáöÝñïõí,
|
||
êáé ßóùò èá èÝëåôå íá äïêéìÜóåôå êáèÝíá ãéá íá âñåßôå êÜðïéï
|
||
ðïõ íá ôáéñéÜæåé óôï äéêü óáò. ¼ðùò ìå <emphasis>êÜèå</emphasis>
|
||
ôýðï óõæÞôçóçò óôï IRC, áí åßóôå áðü áõôïýò ðïõ ðñïóâÜëëïíôáé
|
||
åýêïëá, Þ äåí ìðïñåßôå íá áíôéìåôùðßóåôå ðïëëïýò íÝïõò áíèñþðïõò
|
||
(êáé áñêåôïýò ðéï ìåãÜëïõò) íá åðéäßäïíôáé óôï ëåêôéêü áíôßóôïé÷ï
|
||
ôçò ðõãìá÷ßáò, ìçí áó÷ïëçèåßôå êáèüëïõ.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="training">
|
||
<para>Ðïõ ìðïñþ íá âñù åðß ðëçñùìÞ õðïóôÞñéîç êáé åêðáßäåõóç ãéá
|
||
ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï DaemonNews ðáñÝ÷åé åðß ðëçñùìÞ åêðáßäåõóç êáé õðïóôÞñéîç
|
||
ãéá ôï &os;. Ðåñéóóüôåñåò ðëçñïöïñßåò ìðïñåßôå íá âñåßôå óôçí
|
||
äéêôõáêÞ ôïõò ôïðïèåóßá <ulink url="http://www.bsdmall.com/">BSD Mall</ulink>.</para>
|
||
|
||
<para>Ôï &os; Mall ðáñÝ÷åé åðßóçò åðß ðëçñùìÞ õðïóôÞñéîç ãéá ôï
|
||
&os;. Ìðïñåßôå íá âñåßôå ðåñéóóüôåñåò ðëçñïöïñßåò óôçí <ulink
|
||
url="http://www.freebsdmall.com/">äéêôõáêÞ ôïõò ôïðïèåóßá</ulink>.</para>
|
||
|
||
<para>ÏðïéïóäÞðïôå Üëëïò ïñãáíéóìüò ðáñÝ÷åé åêðáßäåõóç êáé
|
||
õðïóôÞñéîç, èá ðñÝðåé íá åðéêïéíùíÞóåé ìå ôï 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>ÅãêáôÜóôáóç</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="floppy-download">
|
||
<para>Ðïéï áñ÷åßï ðñÝðåé íá êáôåâÜóù ãéá íá ðÜñù ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>×ñåéÜæåóôå ôñßá images äéóêåôþí:
|
||
<filename>floppies/boot.flp</filename>,
|
||
<filename>floppies/kern1.flp</filename>, êáé
|
||
<filename>floppies/kern2.flp</filename>. Ôá images áõôÜ ðñÝðåé íá
|
||
íá ôá ãñÜøåôå óå äéóêÝôåò ÷ñçóéìïðïéþíôáò êÜðïéï åñãáëåßï üðùò ôï
|
||
<command>fdimage</command> Þ ôï &man.dd.1;.</para>
|
||
|
||
<para>Áí ðñÝðåé íá êáôåâÜóåôå ìüíïé óáò ôá óåô äéáíïìþí
|
||
(distributions — ãéá ðáñÜäåéãìá ãéá ìéá åãêáôÜóôáóç ìÝóù
|
||
óõóôÞìáôïò áñ÷åßùí DOS), èá âñåßôå ðáñáêÜôù ìåñéêÝò óõóôÜóåéò
|
||
ó÷åôéêÜ ìå ôï ðïéåò äéáíïìÝò íá êáôåâÜóåôå:</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>ÐëÞñåéò ïäçãßåò ó÷åôéêÜ ìå ôç äéáäéêáóßá êáèþò êáé
|
||
ðåñéóóüôåñåò ðëçñïöïñßåò ó÷åôéêÜ ìå ãåíéêÜ ðñïâëÞìáôá êáôÜ ôçí
|
||
åãêáôÜóôáóç ìðïñåßôå íá âñåßôå óôï <ulink
|
||
url="&url.books.handbook;/install.html">ÊåöÜëáéï ôïõ Åã÷åéñéäßïõ ó÷åôéêÜ ìå ôçí åãêáôÜóôáóç ôïõ &os;</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="floppy-image-too-large">
|
||
<para>Ôé ìðïñþ íá êÜíù áí ôï image ôçò äéóêÝôáò äåí ÷ùñÜåé óå ìéá
|
||
ìüíï äéóêÝôá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ìéá äéóêÝôá ôùí 3.5 éíôóþí (1.44MB) ìðïñåß íá ÷ùñÝóåé ùò
|
||
1474560 bytes äåäïìÝíùí. Ôï áñ÷åßï image ôçò äéóêÝôáò åêêßíçóçò
|
||
åßíáé áêñéâþò áõôü ôï ìÝãåèïò.</para>
|
||
|
||
<para>ÓõíçèéóìÝíá ëÜèç êáôÜ ôçí ðñïåôïéìáóßá ôçò äéóêÝôáò
|
||
åêêßíçóçò:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>ÊáôÝâáóìá ôçò äéóêÝôáò ÷ùñßò ôç ÷ñÞóç ôïõ
|
||
<emphasis>äõáäéêïý (binary)</emphasis> ôñüðïõ üôáí
|
||
÷ñçóéìïðïéåßôáé åîõðçñåôçôÞò <acronym>FTP</acronym>.</para>
|
||
|
||
<para>ÊÜðïéá ðñïãñÜììáôá-ðåëÜôåò ãéá FTP, ÷ñçóéìïðïéïýí áðü
|
||
ðñïåðéëïãÞ ôïí <emphasis>ascii (êåéìÝíïõ)</emphasis> ôñüðï
|
||
ìåôáöïñÜò äåäïìÝíùí êáé ðñïóðáèïýí íá áëëÜîïõí ôïõò ÷áñáêôÞñåò
|
||
ôÝëïõò ãñáììÞò þóôå íá ôáéñéÜæïõí ìå ôéò óõìâÜóåéò ðïõ
|
||
÷ñçóéìïðïéïýíôáé áðü ôï óýóôçìá óôï ïðïßï ãßíåôáé ç ëÞøç.
|
||
Áõôü ó÷åäüí óßãïõñá èá êáôáóôñÝøåé ôï image åêêßíçóçò.
|
||
ÅëÝãîôå ôï ìÝãåèïò ôïõ image åêêßíçóçò ðïõ êáôåâÜóáôå: Áí äåí
|
||
åßíáé <emphasis>áêñéâþò</emphasis> áõôü ðïõ öáßíåôáé óôïí
|
||
åîõðçñåôçôÞ, ç äéáäéêáóßá ôïõ êáôåâÜóìáôïò èá ðñÝðåé íá
|
||
èåùñçèåß ýðïðôç.</para>
|
||
|
||
<para>Ãéá íá ðáñáêÜìøåôå ôï ðñüâëçìá: ãñÜøôå
|
||
<emphasis>binary</emphasis> óôçí ãñáììÞ åíôïëþí ôïõ FTP, ìåôÜ
|
||
ðïõ èá óõíäåèåßôå óôïí åîõðçñåôçôÞ, êáé ðñéí îåêéíÞóåôå íá
|
||
êáôåâÜæåôå ôï image.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>×ñÞóç ôçò åíôïëÞò <command>copy</command> ôïõ DOS (ç
|
||
áíôßóôïé÷ïõ ãñáöéêïý åñãáëåßïõ) ãéá ôç ìåôáöïñÜ ôïõ áñ÷åßïõ
|
||
image óôç äéóêÝôá.</para>
|
||
|
||
<para>ÐñïãñÜììáôá üðùò ôï <command>copy</command>, äåí èá
|
||
ëåéôïõñãÞóïõí óùóôÜ êáèþò ôï image åêêßíçóçò Ý÷åé öôéá÷ôåß
|
||
þóôå íá åêêéíåß Üìåóá. Ôï image Ý÷åé ôá ðëÞñç ðåñéå÷üìåíá
|
||
ôçò äéóêÝôáò, ôñï÷éÜ ðñïò ôñï÷éÜ, êáé äåí ðñÝðåé íá ãñáöåß
|
||
óôç äéóêÝôá ùò êáíïíéêü áñ÷åßï. Èá ðñÝðåé íá ôï ìåôáöÝñåôå
|
||
óôç äéóêÝôá ìå <quote>ùìü</quote> ôñüðï, ÷ñçóéìïðïéþíôáò
|
||
åñãáëåßá ÷áìçëïý åðéðÝäïõ (low-level) (üðùò ð.÷. ôï
|
||
<command>fdimage</command> Þ ôï <command>rawrite</command>)
|
||
ðïõ ðåñéãñÜöïíôáé óôïí <ulink
|
||
url="&url.books.handbook;/install.html">ïäçãü åãêáôÜóôáóçò ôïõ &os;</ulink>.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="install-instructions-location">
|
||
<para>Ðïõ âñßóêïíôáé ïé ïäçãßåò ãéá ôçí åãêáôÜóôáóç ôïõ &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ìðïñåßôå íá âñåßôå ôéò ïäçãßåò óôçí
|
||
<ulink url="&url.books.handbook;/install.html">êáôá÷þñçóç ôïõ Åã÷åéñéäßïõ ó÷åôéêÜ ìå ôçí åãêáôÜóôáóç ôïõ &os;</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="need-to-run">
|
||
<para>Ôé ÷ñåéÜæïìáé ãéá íá åêôåëÝóù ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ãéá åêäüóåéò ôïõ &os; áðü ôï 5.X êáé ìåôÜ ÷ñåéÜæåóôå Ýíá PC
|
||
ìå åðåîåñãáóôÞ 486 Þ êáëýôåñï, ìå 24 MB Þ ðåñéóóüôåñç RAM, êáé
|
||
ôïõëÜ÷éóôïí 150 MB ÷þñïõ óôï óêëçñü óáò äßóêï.</para>
|
||
|
||
<para>Ìðïñåßôå íá åêôåëÝóåôå üëåò ôéò åêäüóåéò ôïõ &os; ìå ìéá
|
||
÷áìçëþí ðñïäéáãñáöþí, ìïíü÷ñùìç (MDA) êÜñôá ãñáöéêþí, áëëÜ ãéá
|
||
íá ÷ñçóéìïðïéÞóåôå ôï &xorg;, èá ÷ñåéáóôåßôå êÜñôá VGA Þ
|
||
êáëýôåñç.</para>
|
||
|
||
<para>Äåßôå åðßóçò êáé ôï <xref linkend="hardware"/>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="custom-boot-floppy">
|
||
<para>Ðùò ìðïñþ íá äçìéïõñãÞóù ôç äéêÞ ìïõ, ðñïóáñìïóìÝíç
|
||
äéóêÝôá åãêáôÜóôáóçò;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôç äåäïìÝíç óôéãìÞ, äåí õðÜñ÷åé ôñüðïò íá öôéÜîåôå
|
||
<emphasis>áðëþò</emphasis> ìéá ðñïóáñìïóìÝíç äéóêÝôá åãêáôÜóôáóçò.
|
||
Èá ðñÝðåé íá äçìéïõñãÞóåôå ïëüêëçñç íÝá Ýêäïóç, ç ïðïßá èá
|
||
ðåñéëáìâÜíåé êáé ôçí ðñïóáñìïóìÝíç äéóêÝôá åãêáôÜóôáóçò
|
||
óáò.</para>
|
||
|
||
<para>Ãéá íá äçìéïõñãÞóåôå ìéá ðñïóáñìïóìÝíç Ýêäïóç, áêïëïõèÞóôå ôéò
|
||
ïäçãßåò óôï Üñèñï ó÷åôéêÜ ìå ôçí <ulink
|
||
url="&url.articles.releng;/article.html">ÏñãÜíùóç Åêäüóåùí</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="windows-coexist">
|
||
<para>Ìðïñïýí íá óõíõðÜñîïõí ôá &windows; ìå ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÅãêáôáóôÞóôå ðñþôá ôá &windows;, êáé ìåôÜ ôï &os;.
|
||
Ï äéá÷åéñéóôÞò åêêßíçóçò ôïõ &os; èá óáò åðéôñÝðåé Ýðåéôá íá
|
||
åðéëÝîåôå ôçí åêêßíçóç åßôå ôùí &windows; åßôå ôïõ &os;. Áí
|
||
åãêáôáóôÞóåôå ôá &windows; ìåôÜ ôï &os;, èá óáò óâÞóïõí ôïí
|
||
äéá÷åéñéóôÞ åêêßíçóçò, ÷ùñßò êáí íá óáò ñùôÞóïõí. Áí óáò óõìâåß,
|
||
áõôü äåßôå ôï åðüìåíï ôìÞìá.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="win95-damaged-boot-manager">
|
||
<para>Ôá &windows; êáôÝóôñåøáí ôï äéá÷åéñéóôÞ åêêßíçóçò ìïõ!
|
||
Ðùò èá ôïí åðáíáöÝñù;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ìðïñåßôå íá åðáíåãêáôáóôÞóåôå ôï äéá÷åéñéóôÞ åêêßíçóçò ôïõ
|
||
&os; ÷ñçóéìïðïéþíôáò Ýíáí áðü ôïõò ôñåéò ðáñáêÜôù ôñüðïõò:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Åêôåëþíôáò ôï DOS, ìåôáêéíçèåßôå óôïí êáôÜëïãï tools/ ôçò
|
||
&os; äéáíïìÞò óáò, êáé øÜîôå ãéá ôï áñ÷åßï
|
||
<filename>bootinst.exe</filename>. ÅêôåëÝóôå ôï üðùò öáßíåôáé
|
||
ðáñáêÜôù:</para>
|
||
|
||
<screen><prompt>...\TOOLS></prompt> <userinput>bootinst.exe boot.bin</userinput></screen>
|
||
|
||
<para>êáé ï äéá÷åéñéóôÞò åêêßíçóçò èá åðáíåãêáôáóôáèåß.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÎåêéíÞóôå îáíÜ ÷ñçóéìïðïéþíôáò ôç äéóêÝôá åêêßíçóçò ôïõ
|
||
&os; êáé ðçãáßíåôå óôçí åðéëïãÞ Custom Installation ôïõ
|
||
ìåíïý. ÅðéëÝîôå Partition. ÅðéëÝîôå ôïí ïäçãü ðïõ êáíïíéêÜ
|
||
èá ðåñéåß÷å ôïí äéá÷åéñéóôÞ åêêßíçóçò óáò (öõóéïëïãéêÜ ôïí
|
||
ðñþôï) êáé üôáí öôÜóåôå óôïí åðåîåñãáóôÞ êáôáôìÞóåùí
|
||
(partition editor) ãéá ôïí ïäçãü áõôü, ôï ðñþôï ðñÜãìá
|
||
ðïõ èá êÜíåôå (÷ùñßò Üëëåò áëëáãÝò), åßíáé íá åðéëÝîåôå
|
||
(W)rite. ÅðéëÝîôå yes óôçí åðéâåâáßùóç ðïõ èá åìöáíéóôåß êáé
|
||
üôáí öôÜóåôå óôçí ðñïôñïðÞ åðéëïãÞò Äéá÷åéñéóôÞ Åêêßíçóçò,
|
||
åðéëÝîôå <quote>Boot Manager</quote>. Ìå ôïí ôñüðï áõôü
|
||
ï äéá÷åéñéóôÞò åêêßíçóçò èá ãñáöåß îáíÜ óôï äßóêï. Ìðïñåßôå
|
||
ôþñá íá âãåßôå áðü ôï ìåíïý ôçò åãêáôÜóôáóçò êáé íá
|
||
åðáíåêêéíÞóåôå áðü ôï óêëçñü äßóêï, üðùò óõíÞèùò.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÎåêéíÞóôå ìå ôç âïÞèåéá ôçò äéóêÝôáò åêêßíçóçò (Þ ôïõ
|
||
CD) ôïõ &os; êáé åðéëÝîôå <quote>Fixit</quote> áðü ôï ìåíïý.
|
||
ÅðéëÝîôå åßôå ôç äéóêÝôá Fixit åßôå ôï CD #2 (ôï
|
||
<quote>live</quote> óýóôçìá áñ÷åßùí) êáé èá åéóÝëèåôå óôï
|
||
êÝëõöïò fixit. ÅêôåëÝóôå Ýðåéôá ôçí áêüëïõèç åíôïëÞ:</para>
|
||
|
||
<screen><prompt>Fixit#</prompt> <userinput>fdisk -B -b /boot/boot0 <replaceable>bootdevice</replaceable></userinput></screen>
|
||
|
||
<para>áíôéêáèéóôþíôáò ôï <replaceable>bootdevice</replaceable>
|
||
ìå ôïí ðñáãìáôéêü óáò äßóêï åêêßíçóçò, üðùò ð.÷.
|
||
<devicename>ad0</devicename> (ðñþôïò äßóêïò IDE),
|
||
<devicename>ad4</devicename> (ðñþôïò äßóêïò IDE óôïí âïçèçôéêü
|
||
åëåãêôÞ), <devicename>da0</devicename> (ðñþôïò äßóêïò SCSI),
|
||
ê.ë.ð.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="boot-on-thinkpad">
|
||
<para>Ï öïñçôüò ìïõ õðïëïãéóôÞò óåéñÜò IBM Thinkpad, óåéñÜò Á, Ô Þ
|
||
×, óôáìáôÜåé íá áðïêñßíåôáé üôáí ðñïóðáèþ íá åêêéíÞóù ôï &os;
|
||
ìåôÜ ôçí åãêáôÜóôáóç. Ðùò ìðïñþ íá åðéëýóù áõôü ôï
|
||
ðñüâëçìá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ðñüêåéôáé ãéá Ýíá ðñüâëçìá óôéò áñ÷éêÝò åêäüóåéò ôïõ BIOS ôçò
|
||
ÉÂÌ óôá óõãêåêñéìÝíá ìç÷áíÞìáôá, ôï ïðïßï áíáãíùñßæåé ôçí
|
||
êáôÜôìçóç ôïõ &os; ùò ðéèáíü äéáìÝñéóìá FAT ãéá ôç ëåéôïõñãßá
|
||
áäñáíïðïßçóçò óôï äßóêï (suspend-to-disk). Ôï BIOS óôáìáôÜåé íá
|
||
áðïêñßíåôáé êáèþò ðñïóðáèåß íá áíáëýóåé ôï äéáìÝñéóìá ôïõ
|
||
&os;.</para>
|
||
|
||
<para>Óýìöùíá ìå ôçí IBM<footnote><para>Óå Ýíá e-mail áðü ôïí Keith
|
||
Frechette
|
||
<email>kfrechet@us.ibm.com</email>.</para></footnote>, ôá
|
||
áêüëïõèá ìïíôÝëá êáé åêäüóåéò BIOS ðåñéëáìâÜíïõí ôéò áðáñáßôçôåò
|
||
äéïñèþóåéò.</para>
|
||
|
||
<informaltable frame="none" pgwide="1">
|
||
<tgroup cols="2">
|
||
<thead>
|
||
<row>
|
||
<entry>ÌïíôÝëï</entry>
|
||
<entry>¸êäïóç BIOS</entry>
|
||
</row>
|
||
</thead>
|
||
|
||
<tbody>
|
||
<row>
|
||
<entry>T20</entry>
|
||
<entry>IYET49WW Þ ìåôáãåíÝóôåñï</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>T21</entry>
|
||
<entry>KZET22WW Þ ìåôáãåíÝóôåñï</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>A20p</entry>
|
||
<entry>IVET62WW Þ ìåôáãåíÝóôåñï</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>A20m</entry>
|
||
<entry>IWET54WW Þ ìåôáãåíÝóôåñï</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>A21p</entry>
|
||
<entry>KYET27WW Þ ìåôáãåíÝóôåñï</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>A21m</entry>
|
||
<entry>KXET24WW Þ ìåôáãåíÝóôåñï</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>A21e</entry>
|
||
<entry>KUET30WW</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
|
||
<para>¸÷åé áíáöåñèåß üôé ìåôáãåíÝóôåñåò åêäüóåéò ôïõ BIOS ôçò ÉÂÌ,
|
||
ßóùò ðáñïõóéÜæïõí îáíÜ ôï ðñüâëçìá. <ulink
|
||
url="http://docs.FreeBSD.org/cgi/mid.cgi?20010427133759.A71732">To ìÞíõìá áõôü</ulink> áðü ôïí Jacques Vidrine óôçí
|
||
&a.mobile; ðåñéãñÜöåé ìéá äéáäéêáóßá ç ïðïßá ßóùò äïõëÝøåé óå
|
||
íåüôåñá ìïíôÝëá öïñçôþí ôçò IBM ôá ïðïßá äåí åêêéíïýí êáíïíéêÜ
|
||
ôï &os;, êáé óôá ïðïßá ìðïñåßôå íá áíáâáèìßóåôå ôï BIOS Þ êáé íá
|
||
åðéóôñÝøåôå óå ðñïçãïýìåíç Ýêäïóç ôïõ.</para>
|
||
|
||
<para>Áí Ý÷åôå ðáëéüôåñï BIOS, áëëÜ äåí Ý÷åôå ôçí åðéëïãÞ íá ôï
|
||
áíáâáèìßóåôå, Ýíáò ôñüðïò íá îåðåñÜóåôå ôï ðñüâëçìá åßíáé íá
|
||
åãêáôáóôÞóåôå ôï &os;, íá áëëÜîåôå ôïí áíáãíùñéóôéêü áñéèìü
|
||
(partition id) ôçò êáôÜôìçóçò, êáé íá åãêáôáóôÞóåôå íÝá boot
|
||
blocks ôá ïðïßá íá ìðïñïýí íá ÷åéñéóôïýí ôï äéáöïñåôéêü
|
||
áíáãíùñéóôéêü ôçò êáôÜôìçóçò.</para>
|
||
|
||
<para>Áñ÷éêÜ, èá ðñÝðåé íá åðáíáöÝñåôå ôï ìç÷Üíçìá óå ìéá êáôÜóôáóç
|
||
þóôå íá ðåñíÜåé áðü ôçí áñ÷éêÞ äéáãíùóôéêÞ ïèüíç. Áõôü áðáéôåß
|
||
íá åíåñãïðïéÞóåôå ôï ìç÷Üíçìá ÷ùñßò íá ôï áöÞóåôå íá âñåé
|
||
ôçí êáôÜôìçóç ôïõ &os; óôïí êýñéï äßóêï ôïõ. ¸íáò ôñüðïò åßíáé
|
||
íá áðïìáêñýíåôå ôïí óêëçñü äßóêï êáé íá ôïí ìåôáêéíÞóåôå ðñïóùñéíÜ
|
||
óå Ýíá ðáëéüôåñï ThinkPad (üðùò ôï ThinkPad 600) Þ êÜðïéï
|
||
åðéôñáðÝæéï ìç÷Üíçìá, ÷ñçóéìïðïéþíôáò ôï êáôÜëëçëï êáëþäéï
|
||
ìåôáôñïðÞò. Óôï ìç÷Üíçìá áõôü ìðïñåßôå ðëÝïí íá äéáãñÜøåôå ôçí
|
||
êáôÜôìçóç ôïõ &os; êáé Ýðåéôá íá ìåôáêéíÞóåôå ôïí äßóêï óôï
|
||
áñ÷éêü ìç÷Üíçìá. Ôï ThinkPad èá ðñÝðåé ôþñá íá åêêéíåß
|
||
êáíïíéêÜ.</para>
|
||
|
||
<para>Ìå ôï ìç÷Üíçìá óå ëåéôïõñãéêÞ êáôÜóôáóç, ìðïñåßôå ôþñá íá
|
||
÷ñçóéìïðïéÞóåôå ôçí äéáäéêáóßá ðïõ ðåñéãñÜöåôáé åäþ þóôå íá
|
||
Ý÷åôå ôåëéêÜ ìéá åãêáôÜóôáóç ôïõ &os; ðïõ íá ëåéôïõñãåß.</para>
|
||
|
||
<procedure>
|
||
<step>
|
||
<para>ÊáôåâÜóôå ôéò äéóêÝôåò <filename>boot1</filename> êáé
|
||
<filename>boot2</filename> áðü <ulink
|
||
url="http://people.FreeBSD.org/~bmah/ThinkPad/"></ulink>.
|
||
Áðïèçêåýóôå ôá áñ÷åßá áõôÜ êÜðïõ ðïõ èá ìðïñåßôå íá ôá
|
||
îáíáâñåßôå áñãüôåñá.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>ÅãêáôáóôÞóôå êáíïíéêÜ ôï &os; óôï ThinkPad.
|
||
<emphasis>Ìçí</emphasis> ÷ñçóéìïðïéÞóåôå ôçí êáôÜóôáóç
|
||
<literal>Dangerously Dedicated</literal>.
|
||
<emphasis>Ìçí</emphasis> êÜíåôå åðáíåêêßíçóç üôáí ôåëåéþóåé
|
||
ç åãêáôÜóôáóç.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>×ñçóéìïðïéÞóôå åßôå ôï <quote>Emergency Holographic
|
||
Shell</quote> (<keycombo action="simul"><keycap>ALT</keycap>
|
||
<keycap>F4</keycap></keycombo>) åßôå ôï êÝëõöïò
|
||
<quote>fixit</quote>.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>×ñçóéìïðïéÞóôå ôçí &man.fdisk.8; ãéá íá áëëÜîåôå ôïí
|
||
áíáãíùñéóôéêü áñéèìü ôçò êáôÜôìçóçò ôïõ &os; áðü
|
||
<literal>165</literal> óå <literal>166</literal> (áõôüò åßíáé
|
||
ï ôýðïò ðïõ ÷ñçóéìïðïéåßôáé áðü ôï OpenBSD).</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>ÃñÜøôå ôá áñ÷åßá <filename>boot1</filename> êáé
|
||
<filename>boot2</filename> óôï ôïðéêü óýóôçìá áñ÷åßùí.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>×ñçóéìïðïéÞóôå ôï &man.disklabel.8; ãéá íá ãñÜøåôå ôá
|
||
<filename>boot1</filename> êáé <filename>boot2</filename> óôï
|
||
slice ôïõ &os;.</para>
|
||
|
||
<screen>&prompt.root; <userinput>disklabel -B -b boot1 -s boot2 ad0s<replaceable>n</replaceable></userinput></screen>
|
||
|
||
<para>Ôï <replaceable>n</replaceable> åßíáé ï áñéèìüò ôïõ slice
|
||
ðïõ Ý÷åôå åãêáôáóôÞóåé ôï &os;.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>ÊÜíôå åðáíåêêßíçóç. Óôçí ðñïôñïðÞ åêêßíçóçò èá äåßôå ôçí
|
||
åðéëïãÞ íá îåêéíÞóåôå ôï <literal>OpenBSD</literal>. Óôçí
|
||
ðñáãìáôéêüôçôá, ìå áõôü ôïí ôñüðï èá îåêéíÞóåôå ôï &os;.</para>
|
||
</step>
|
||
</procedure>
|
||
|
||
<para>Ôï íá êÜíåôå ôï ðáñáðÜíù íá ëåéôïõñãÞóåé óôçí ðåñßðôùóç ðïõ
|
||
èÝëåôå íá Ý÷åôå äéðëÞ åêêßíçóç OpenBSD êáé &os; óôïí ßäéï öïñçôü
|
||
õðïëïãéóôÞ, ôï áöÞíïõìå ùò Üóêçóç óôïí áíáãíþóôç.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="install-bad-blocks">
|
||
<para>Ìðïñþ íá êÜíù åãêáôÜóôáóç óå Ýíá äßóêï ìå ÷áëáóìÝíïõò
|
||
ôïìåßò;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ìðïñåßôå, áëëÜ åßíáé êáêÞ éäÝá.</para>
|
||
|
||
<para>Áí äåßôå ÷áëáóìÝíïõò ôïìåßò óå Ýíá óýã÷ñïíï ïäçãü IDE, õðÜñ÷åé
|
||
ìåãÜëç ðéèáíüôçôá ï ïäçãüò áõôüò, ðïëý óýíôïìá, íá óôáìáôÞóåé íá
|
||
ëåéôïõñãåß åíôåëþò (ï ïäçãüò äåí Ý÷åé Üëëïõò åíáëëáêôéêïýò
|
||
êõëßíäñïõò ðïõ íá ìðïñïýí íá áíôéêáôáóôÞóïõí ôïõò ÷áëáóìÝíïõò ìÝóù
|
||
ôçò åóùôåñéêÞò ëåéôïõñãßáò åðáíáôïðïèÝôçóçò ôùí äåäïìÝíùí, êÜôé ôï
|
||
ïðïßï óçìáßíåé üôé ï äßóêïò Ý÷åé óçìáíôéêÞ öèïñÜ). Óáò óõíéóôïýìå
|
||
íá áãïñÜóåôå êáéíïýñéï äßóêï.</para>
|
||
|
||
<para>Áí Ý÷åôå ïäçãü SCSI ìå ÷áëáóìÝíïõò ôïìåßò äåßôå
|
||
<link linkend="awre">áõôÞ ôçí áðÜíôçóç</link>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="boot-floppy-strangeness">
|
||
<para>ÄéÜöïñá ðåñßåñãá ðñÜãìáôá óõìâáßíïõí üôáí åêêéíþ ìå ôç
|
||
äéóêÝôá åêêßíçóçò! Ôé óõìâáßíåé;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Áí âëÝðåôå êáôáóôÜóåéò üðùò ôï ìç÷Üíçìá íá ìçí áðïêñßíåôáé Þ
|
||
íá êÜíåé åðáíåêêßíçóç ìüíï ôïõ üôáí ðñïóðáèåßôå íá åêêéíÞóåôå ìå
|
||
ôçí äéóêÝôá åêêßíçóçò, èá ðñÝðåé íá êÜíåôå óôïí åáõôü óáò ôñåéò
|
||
åñùôÞóåéò:</para>
|
||
|
||
<orderedlist>
|
||
<listitem>
|
||
<para>×ñçóéìïðïéÞóáôå êáéíïýñéåò, öñåóêï-äéáìïñöùìÝíåò, êáé
|
||
÷ùñßò ëÜèç äéóêÝôåò (êáôÜ ðñïôßìçóç êáëÞò åôáéñßáò ôéò ïðïßåò
|
||
ìüëéò âãÜëáôå êáéíïýñéåò áðü ôï êïõôß ôïõò, óå áíôßèåóç ìå ôç
|
||
äéóêÝôá ðïõ ðÞñáôå ìáæß ìå êÜðïéï ðåñéïäéêü êáé ç ïðïßá
|
||
âñßóêïíôáí êÜôù áðü ôï êñåâÜôé ôá ôñßá ôåëåõôáßá
|
||
÷ñüíéá);</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÊáôåâÜóáôå ôï image ôçò äéóêÝôáò ìå äõáäéêü (binary Þ
|
||
image) ôñüðï ìåôáöïñÜò; (ìç íôñÝðåóôå, áêüìá êáé ïé êáëýôåñïé
|
||
áðü ìáò Ý÷ïõí êáôÜ ëÜèïò êáôåâÜóåé êÜðïéï äõáäéêü áñ÷åßï óå
|
||
êáôÜóôáóç ASCII (êåéìÝíïõ), ôïõëÜ÷éóôïí ìéá öïñÜ!)</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Áí ÷ñçóéìïðïéåßôå &windows; 95 Þ 98, åêôåëÝóôå ôï
|
||
<command>fdimage</command> Þ ôï
|
||
<command>rawrite</command> óå êáèáñÞ êáôÜóôáóç DOS; Ôá
|
||
ëåéôïõñãéêÜ áõôÜ ìðïñåß íá ðáñåìâëçèïýí óå ðñïãñÜììáôá ôá
|
||
ïðïßá ãñÜöïõí áðåõèåßáò óôï õëéêü, êÜôé ôï ïðïßï óõìâáßíåé êáé
|
||
ìå ôá ðñïãñÜììáôá äçìéïõñãßáò ôùí äéóêåôþí. Ìðïñåß íá
|
||
äçìéïõñãçèåß ðñüâëçìá, áêüìá êáé áí ôá åêôåëåßôå óå ðáñÜèõñï
|
||
DOS ìÝóá áðü ôï ãñáöéêü ðåñéâÜëëïí.</para>
|
||
</listitem>
|
||
</orderedlist>
|
||
|
||
<para>¸÷ïõí åðßóçò áíáöåñèåß ðåñéðôþóåéò üðïõ ôï &netscape;
|
||
äçìéïõñãåß ðñïâëÞìáôá óôï êáôÝâáóìá ôçò äéóêÝôáò åêêßíçóçò, Ýôóé
|
||
åßíáé êáëýôåñá íá ÷ñçóéìïðïéÞóåôå êÜðïéï Üëëï ðñüãñáììá FTP, áí
|
||
áõôü åßíáé äõíáôüí.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="no-install-cdrom">
|
||
<para>Îåêßíçóá áðü ôï ATAPI CDROM ìïõ, áëëÜ ôï ðñüãñáììá
|
||
åãêáôÜóôáóçò ëÝåé üôé äåí âñßóêåé CDROM. Ðïõ ðÞãå;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ç óõíÞèçò áéôßá áõôïý ôïõ ðñïâëÞìáôïò åßíáé Ýíáò
|
||
êáêïñõèìéóìÝíïò ïäçãüò CDROM. ÐïëëÜ PC Ýñ÷ïíôáé ðëÝïí ìå ôï CDROM
|
||
ùò slave óõóêåõÞ óôï äåõôåñåýïíôá åëåãêôÞ, ÷ùñßò íá õðÜñ÷åé óôï
|
||
ßäéï êáíÜëé óõóêåõÞ master. Áõôü, óýìöùíá ìå ôéò ðñïäéáãñáöÝò ôïõ
|
||
ATAPI, äåí åßíáé Ýãêõñï, áëëÜ ôá &windows; ôçñïýí ôéò
|
||
ðñïäéáãñáöÝò ÷áëáñÜ, åíþ ôï BIOS ôï áãíïåß êáôÜ ôçí åêêßíçóç.
|
||
Áõôüò åßíáé êáé ï ëüãïò ðïõ ôï BIOS êáôÜöåñå íá äåé ôï CDROM êáé
|
||
íá ôï ÷ñçóéìïðïéÞóåé, áëëÜ êáé ï ëüãïò ðïõ ôï &os; äåí ìðüñåóå íá
|
||
ôï äåé ãéá íá óõíå÷ßóåé ôçí åãêáôÜóôáóç.</para>
|
||
|
||
<para>Ñõèìßóôå îáíÜ ôï óýóôçìá óáò, þóôå ôï CDROM åßôå íá åßíáé ç
|
||
master óõóêåõÞ óôïí åëåãêôÞ ðïõ åßíáé óõíäåìÝíç, Þ âåâáéùèåßôå üôé
|
||
åßíáé slave óå Ýíá åëåãêôÞ IDE ï ïðïßïò üìùò Ý÷åé Üëëç óõóêåõÞ
|
||
óõíäåìÝíç ùò master.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="install-PLIP">
|
||
<para>Ìðïñþ íá åãêáôáóôÞóù ôï &os; óôï öïñçôü ìïõ ÷ñçóéìïðïéþíôáò
|
||
PLIP (Parallel Line IP, IP ìÝóù ÐáñÜëëçëçò Èýñáò);</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Íáé. ×ñçóéìïðïéÞóôå ôõðïðïéçìÝíï êáëþäéï ôýðïõ Laplink. Áí
|
||
÷ñåéÜæåôáé, äéáâÜóôå ôï
|
||
<ulink url="&url.books.handbook;/network-plip.html">ôìÞìá PLIP ôïõ Åã÷åéñéäßïõ</ulink> ãéá ëåðôïìÝñåéåò ó÷åôéêÝò ìå äéêôýùóç ìÝóù
|
||
ðáñÜëëçëçò èýñáò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="geometry">
|
||
<para>Ôé ãåùìåôñßá íá ÷ñçóéìïðïéÞóù ãéá ôï óêëçñü ìïõ äßóêï;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<note>
|
||
<para>Ìå ôïí üñï <quote>ãåùìåôñßá</quote>, åííïïýìå ôïí áñéèìü
|
||
ôùí êõëßíäñùí, êåöáëþí êáé ôïìÝùí áíÜ ôñï÷éÜ åíüò äßóêïõ. Ãéá
|
||
åõêïëßá, èá áíáöåñüìáóôå óôïí üñï áõôü ùò C/H/S (Cylinders /
|
||
Heads / Sectors). Áõôüò åßíáé êáé ï ôñüðïò ìå ôïí ïðïßï ôï
|
||
BIOS âñßóêåé óå ðïéá ðåñéï÷Þ ôïõ äßóêïõ íá ãñÜøåé.</para>
|
||
</note>
|
||
|
||
<para>Ôï ðáñáðÜíù ðñïêáëåß óýã÷õóç óôïõ íÝïõò äéá÷åéñéóôÝò
|
||
óõóôçìÜôùí. Êáôáñ÷Þí, ç <emphasis>öõóéêÞ</emphasis> ãåùìåôñßá
|
||
åíüò ïäçãïý SCSI åßíáé óõíïëéêÜ Üó÷åôç, áöïý ôï &os; ëåéôïõñãåß
|
||
ìå âÜóç ôá ìðëïê äßóêïõ. Óôçí ðñáãìáôéêüôçôá, äåí õðÜñ÷åé êáí
|
||
<quote>áëçèéíÞ</quote> öõóéêÞ ãåùìåôñßá, êáèþò ç ðõêíüôçôá ôùí
|
||
ôïìÝùí ìåôáâÜëëåôáé áðü ðåñéï÷Þ óå ðåñéï÷Þ ôïõ äßóêïõ. Áõôü ðïõ
|
||
ïé êáôáóêåõáóôÝò áíáöÝñïõí óõ÷íÜ ùò
|
||
<quote>öõóéêÞ ãåùìåôñßá</quote> åßíáé óõíÞèùò ç ãåùìåôñßá ìå ôçí
|
||
üðïéá Ý÷ïõí áíáêáëýøåé üôé ãßíåôáé ç ìéêñüôåñç óðáôÜëç åëåýèåñïõ
|
||
÷þñïõ. Ãéá äßóêïõò IDE, ôï &os; ÷ñçóéìïðïéåß ðñÜãìáôé ôï C/H/S,
|
||
áëëÜ üëïé ïé ìïíôÝñíïé ïäçãïß ìåôáôñÝðïõí åóùôåñéêÜ áõôÝò ôéò
|
||
áíáöïñÝò óå áíôßóôïé÷á ìðëïê.</para>
|
||
|
||
<para>Ôï ìüíï ðïõ Ý÷åé ðñáãìáôéêÞ óçìáóßá åßíáé ç
|
||
<emphasis>ëïãéêÞ</emphasis> ãåùìåôñßá. ÁõôÞ åßíáé êáé ç áðÜíôçóç
|
||
ðïõ äÝ÷åôáé ôï BIOS üôáí ñùôÜåé ôï äßóêï
|
||
<quote>ðïéá åßíáé ç ãåùìåôñßá óïõ;</quote> ¸ðåéôá, ÷ñçóéìïðïéåß
|
||
áõôÞ ôç ãåùìåôñßá ãéá íá áðïêôÞóåé ðñüóâáóç óôï äßóêï. Êáèþò ôï
|
||
&os; ÷ñçóéìïðïéåß ôï BIOS êáôÜ ôçí åêêßíçóç, åßíáé ðïëý óçìáíôéêü
|
||
ç ãåùìåôñßá áõôÞ íá åßíáé óùóôÞ. Åéäéêüôåñá, áí Ý÷åôå ðåñéóóüôåñá
|
||
áðü Ýíá ëåéôïõñãéêÜ óõóôÞìáôá óôï äßóêï, ðñÝðåé üëá íá óõìöùíïýí
|
||
üóï áöïñÜ ôç ãåùìåôñßá. ÄéáöïñåôéêÜ èá Ý÷åôå óïâáñÜ ðñïâëÞìáôá
|
||
êáôÜ ôçí åêêßíçóç!</para>
|
||
|
||
<para>Ãéá äßóêïõò SCSI, ç ãåùìåôñßá ðïõ ðñÝðåé íá ÷ñçóéìïðïéçèåß,
|
||
åîáñôÜôáé áðü ôï áí åßíáé åíåñãïðïéçìÝíç ç õðïóôÞñéîç åêôåôáìÝíçò
|
||
ìåôÜöñáóçò (áõôü óõ÷íÜ áíáöÝñåôáé ùò <quote>õðïóôÞñéîç ãéá äßóêïõò
|
||
DOS >1GB</quote> Þ êÜôé áíôßóôïé÷ï). Áí åßíáé
|
||
áðåíåñãïðïéçìÝíç, ÷ñçóéìïðïéÞóôå <replaceable>N</replaceable>
|
||
êõëßíäñïõò, 64 êåöáëÝò êáé 32 ôïìåßò/ôñï÷éÜ, üðïõ ôï
|
||
<replaceable>N</replaceable> åßíáé ç ÷ùñçôéêüôçôá ôïõ äßóêïõ óå
|
||
ÌÂ. Ãéá ðáñÜäåéãìá, ãéá Ýíá äßóêï 2GB, èá ðñÝðåé íá Ý÷åôå 2048
|
||
êõëßíäñïõò, 64 êåöáëÝò, êáé 32 ôïìåßò/ôñï÷éÜ.</para>
|
||
|
||
<para>Áí <emphasis>åßíáé</emphasis> åíåñãïðïéçìÝíç (êáé óõ÷íÜ
|
||
ðáñÝ÷åôáé Ýôóé þóôå íá îåðåñíéïýíôáé êÜðïéïé ðåñéïñéóìïß óôï
|
||
&ms-dos;) êáé ç ÷ùñçôéêüôçôá ôïõ äßóêïõ åßíáé ìåãáëýôåñç áðü 1GB,
|
||
÷ñçóéìïðïéÞóôå M êõëßíäñïõò, 63 ôïìåßò áíÜ ôñï÷éÜ (<emphasis>ü÷é
|
||
</emphasis> 64) êáé 255 êåöáëÝò, üðïõ <literal>M</literal> åßíáé
|
||
ç ÷ùñçôéêüôçôá ôïõ äßóêïõ óå MB, äéáéñåìÝíç ìå ôï 7.844238 (!).
|
||
¸ôóé, óôï ðáñÜäåéãìá ìáò, ï äßóêïò ôùí 2GB èá åß÷å 261 êõëßíäñïõò,
|
||
63 ôïìåßò áíÜ ôñï÷éÜ êáé 255 êåöáëÝò.</para>
|
||
|
||
<para>Áí äåí åßóôå óßãïõñïò ãéá ôï ðáñáðÜíù, Þ áí ôï &os; áðïôý÷åé
|
||
óôçí áíß÷íåõóç ôçò óùóôÞò ãåùìåôñßáò êáôÜ ôçí åãêáôÜóôáóç, ï
|
||
áðëïýóôåñïò ôñüðïò ãéá íá ôï ðáñáêÜìøåôå, åßíáé óõíÞèùò íá
|
||
äçìéïõñãÞóåôå Ýíá ìéêñü äéáìÝñéóìá DOS óôï äßóêï. Ôï BIOS Ýðåéôá
|
||
èá áíé÷íåýóåé ôç óùóôÞ ãåùìåôñßá, êáé ìðïñåßôå ðÜíôá íá äéáãñÜøåôå
|
||
ôï äéáìÝñéóìá DOS ìÝóá áðü ôïí åðåîåñãáóôÞ êáôáôìÞóåùí, áí
|
||
äå èÝëåôå íá ôï êñáôÞóåôå. Ìðïñåß ùóôüóï íá èåëÞóåôå íá ôï
|
||
áöÞóåôå, ãéá íá ðñïãñáììáôßæåôå êÜñôåò äéêôýïõ êáé ãéá Üëëåò,
|
||
áíôßóôïé÷åò, åñãáóßåò.</para>
|
||
|
||
<para>ÅíáëëáêôéêÜ, õðÜñ÷åé Ýíá åëåýèåñá äéáèÝóéìï âïçèçôéêü
|
||
ðñüãñáììá ôï ïðïßï äéáíÝìåôáé ìå ôï &os; êáé ëÝãåôáé
|
||
<filename>pfdisk.exe</filename>. Ìðïñåßôå íá ôï âñåßôå óôïí
|
||
õðïêáôÜëïãï <filename>tools</filename> óôï CDROM ôïõ &os; Þ óôéò
|
||
äéêôõáêÝò ôïðïèåóßåò FTP ôïõ &os;. Ôï ðñüãñáììá áõôü ìðïñåß íá
|
||
÷ñçóéìïðïéçèåß ãéá íá áíáêáëýøåé ôé ãåùìåôñßá ÷ñçóéìïðïéåßôáé áðü
|
||
ôá Üëëá ëåéôïõñãéêÜ óõóôÞìáôá óôï äßóêï ðïõ ÷ñçóéìïðïéåßôáé.
|
||
Ìðïñåßôå íá åéóÜãåôå áðåõèåßáò áõôÞ ôç ãåùìåôñßá óôïí åðåîåñãáóôÞ
|
||
êáôáôìÞóåùí.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="disk-divide-restrictions">
|
||
<para>ÕðÜñ÷ïõí êÜðïéïé ðåñéïñéóìïß óôï ðùò ðñÝðåé íá ÷ùñßóù
|
||
ôï äßóêï;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Íáé. ÐñÝðåé íá âåâáéùèåßôå üôé ç ñéæéêÞ (root) êáôÜôìçóç
|
||
âñßóêåôáé êÜôù áðü ôïõò 1024 êõëßíäñïõò, þóôå ôï BIOS íá ìðïñåß
|
||
íá åêêéíÞóåé ôïí ðõñÞíá áðü áõôÞ. (Óçìåéþóôå üôé áõôüò åßíáé Ýíáò
|
||
ðåñéïñéóìüò óôï BIOS ôïõ PC, êáé ü÷é óôï &os;).</para>
|
||
|
||
<para>Ãéá Ýíá äßóêï SCSI, óõíÞèùò áõôü óçìáßíåé üôé ç ñéæéêÞ
|
||
êáôÜôìçóç èá âñßóêåôáé óôá ðñþôá 1024MB (Þ óôá ðñþôá 4096ÌÂ áí
|
||
÷ñçóéìïðïéåßôáé ç åêôåôáìÝíç ìåôÜöñáóç - äåßôå ôçí ðñïçãïýìåíç
|
||
åñþôçóç). Ãéá äßóêïõò IDE, ôï áíôßóôïé÷ï üñéï åßíáé ôá
|
||
504MB.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="disk-manager">
|
||
<para>Åßíáé óõìâáôü ôï &os; ìå ðñïãñÜììáôá äéá÷åßñéóçò äßóêùí
|
||
(disk managers);</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>To &os; áíáãíùñßæåé êáé åðéôñÝðåé ôç ÷ñÞóç ôïõ Ontrack Disk
|
||
Manager. Äåí õðïóôçñßæïíôáé Üëëïé äéá÷åéñéóôÝò äßóêùí.</para>
|
||
|
||
<para>Áí èÝëåôå áðëþò íá ÷ñçóéìïðïéÞóåôå ôï äßóêï ìå ôï &os;, äåí
|
||
÷ñåéÜæåóôå äéá÷åéñéóôÞ äßóêïõ. Áðëþò ñõèìßóôå ôï äßóêï ãéá üóï
|
||
ðåñéóóüôåñï ÷þñï ìðïñåß íá äåé ôï BIOS (óõíÞèùò 504ÌÂ), êáé ôï
|
||
&os; èá áíáêáëýøåé ðüóï åëåýèåñï ÷þñï Ý÷åôå óôçí ðñáãìáôéêüôçôá.
|
||
Áí ÷ñçóéìïðïéåßôå êÜðïéï ðáëéü äßóêï óå åëåãêôÞ MFM, ßóùò íá
|
||
ðñÝðåé íá ðåßôå óôï &os; ðüóïõò êõëßíäñïõò íá ÷ñçóéìïðïéÞóåé.</para>
|
||
|
||
<para>Áí èÝëåôå íá ÷ñçóéìïðïéÞóåôå ôï äßóêï ôüóï ìå ôï &os; üóï êáé
|
||
ìå êÜðïéï Üëëï ëåéôïõñãéêü óýóôçìá, èá ðñÝðåé íá ìðïñåßôå íá ôï
|
||
êÜíåôå ÷ùñßò äéá÷åéñéóôÞ äßóêïõ: áðëþò âåâáéùèåßôå üôé ôï
|
||
äéáìÝñéóìá åêêßíçóçò ôïõ &os; êáèþò êáé ç êáôÜôìçóç ôïõ Üëëïõ
|
||
ëåéôïõñãéêïý óõóôÞìáôïò âñßóêïíôáé ìÝóá óôïõò ðñþôïõò 1024
|
||
êõëßíäñïõò. Áí åßóôå áñêåôÜ ðñïóåêôéêüò, Ýíá äéáìÝñéóìá åêêßíçóçò
|
||
(boot) ìåãÝèïõò 20MB èá åßíáé áñêåôü.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="missing-os">
|
||
<para>¼ôáí åêêéíþ ôï &os; ãéá ðñþôç öïñÜ, ðáßñíù ôï ìÞíõìá
|
||
<errorname>Missing Operating System</errorname>. Ôé
|
||
óõìâáßíåé;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÁõôÞ åßíáé ìéá êëáóéêÞ ðåñßðôùóç äéÝíåîçò ìåôáîý ôïõ &os; êáé
|
||
ôïõ DOS Þ êÜðïéïõ Üëëïõ ëåéôïõñãéêïý ó÷åôéêÜ ìå ôçí éäÝá ðïõ Ý÷åé
|
||
ôï êáèÝíá ãéá ôçí <link linkend="geometry">ãåùìåôñßá</link> ôïõ
|
||
äßóêïõ. Èá ðñÝðåé íá åðáíåãêáôáóôÞóåôå ôï &os; áëëÜ ôçñþíôáò
|
||
ðñïóåêôéêÜ ôéò ïäçãßåò ðïõ äþóáìå ðéï ðÜíù, åßíáé ó÷åäüí óßãïõñï
|
||
üôé èá ôá êáôáöÝñåôå.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="stop-at-boot-manager">
|
||
<para>Ãéáôß äåí ìðïñþ íá óõíå÷ßóù ðÝñá áðü ôçí ðñïôñïðÞ
|
||
<prompt>F?</prompt> ôïõ äéá÷åéñéóôÞ åêêßíçóçò;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Áõôü åßíáé Üëëï Ýíá óýìðôùìá ôïõ ðñïâëÞìáôïò ðïõ ðåñéãñÜöåôáé
|
||
óôçí ðñïçãïýìåíç åñþôçóç. Äåí óõìðßðôåé ç ãåùìåôñßá ôïõ BIOS ìå
|
||
áõôÞ ôïõ &os;! Áí ï åëåãêôÞò Þ ôï BIOS óáò õðïóôçñßæåé ìåôÜöñáóç
|
||
êõëßíäñùí (óõ÷íÜ áíáöÝñåôáé ùò <quote>>1GB drive
|
||
support</quote>), äïêéìÜóôå íá áëëÜîåôå áõôÞ ôç ôéìÞ êáé íá
|
||
åðáíåãêáôáóôÞóåôå ôï &os;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="need-complete-sources">
|
||
<para>ÐñÝðåé íá åãêáôáóôÞóù üëï ôïí ðçãáßï êþäéêá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÃåíéêÜ, ü÷é. Ùóôüóï óáò óõíéóôïýìå íá åãêáôáóôÞóåôå, ùò
|
||
åëÜ÷éóôï, ôïí ðçãáßï êþäéêá ôçò äéáíïìÞò <literal>base</literal>,
|
||
ï ïðïßïò ðåñéëáìâÜíåé áñêåôÜ áðü ôá áñ÷åßá ðïõ áíáöÝñïíôáé åäþ,
|
||
êáèþò êáé ôïí ðçãáßï êþäéêá ôçò äéáíïìÞò <literal>sys</literal>,
|
||
ç ïðïßá ðåñéëáìâÜíåé ôïí ðçãáßï êþäéêá ôïõ ðõñÞíá. Äåí õðÜñ÷åé
|
||
ùóôüóï êÜôé óôï óýóôçìá ôï ïðïßï íá áðáéôåß ôçí ýðáñîç ôïõ
|
||
ðçãáßïõ êþäéêá ãéá íá ëåéôïõñãÞóåé, åêôüò áðü ôï ðñüãñáììá
|
||
ñýèìéóçò ðõñÞíá &man.config.8;. Ìå åîáßñåóç ôïí ðçãáßï êþäéêá
|
||
ôïõ ðõñÞíá, ç äïìÞ ôïõ óõóôÞìáôïò ìåôáãëþôôéóçò ìáò åßíáé ôÝôïéá,
|
||
þóôå ìðïñåßôå ðÜíôá íá ðñïóáñôÞóåôå ôï äÝíôñï ðçãáßïõ êþäéêá
|
||
ìÝóù NFS (êáé ìå äéêáéþìáôá ìüíï áíÜãíùóçò) êáé ðÜëé íá ìðïñåßôå
|
||
íá äçìéïõñãÞóåôå íÝá åêôåëÝóéìá (ëüãù ôïõ ðåñéïñéóìïý ðïõ õðÜñ÷åé
|
||
óôïí ðçãáßï êþäéêá ôïõ ðõñÞíá, óáò óõíéóôïýìå íá ìçí êÜíåôå ôçí
|
||
ðñïóÜñôçóç áðåõèåßáò óôïí êáôÜëïãï <filename>/usr/src</filename>,
|
||
áëëÜ íá ÷ñçóéìïðïéÞóåôå êÜðïéá Üëëç ôïðïèåóßá êáé íá äçìéïõñãÞóåôå
|
||
ôïõò êáôÜëëçëïõò óõìâïëéêïýò äåóìïýò ðïõ íá áíôéãñÜöïõí ôç äïìÞ
|
||
ôçò êåíôñéêÞò éåñáñ÷ßáò ôïõ äÝíôñïõ ðçãáßïõ êþäéêá).</para>
|
||
|
||
<para>Áí Ý÷åôå Üìåóá äéáèÝóéìï ôïí ðçãáßï êþäéêá, êáé ãíùñßæåôå ðùò
|
||
íá ìåôáãëùôôßóåôå Ýíá ïëüêëçñï óýóôçìá áðü áõôüí, èá
|
||
äéåõêïëõíèåßôå ðÜñá ðïëý üôáí áíáâáèìßæåôå ôï óýóôçìá óáò óå
|
||
ìåëëïíôéêÝò åêäüóåéò ôïõ &os;.</para>
|
||
|
||
<para>Ãéá íá åðéëÝîåôå Ýíá õðïóýíïëï ôïõ ðçãáßïõ êþäéêá,
|
||
áðü ôçí åðéëïãÞ Distributions ôïõ åñãáëåßïõ åãêáôÜóôáóçò
|
||
óõóôÞìáôïò, åðéëÝîôå ôï ìåíïý Custom.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="need-kernel">
|
||
<para>×ñåéÜæåôáé íá öôéÜîù ðñïóáñìïóìÝíï ðõñÞíá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ç äçìéïõñãßá åíüò íÝïõ ðõñÞíá Þôáí áñ÷éêÜ ó÷åäüí õðï÷ñåùôéêü
|
||
âÞìá óå ìéá åãêáôÜóôáóç &os;, áëëÜ ïé ðéï ðñüóöáôåò åêäüóåéò Ý÷ïõí
|
||
ùöåëçèåß áðü ôçí åéóáãùãÞ áéóèçôÜ öéëéêüôåñùí ðñïãñáììÜôùí
|
||
ñýèìéóçò ôïõ ðõñÞíá. Áðü ôï &os; 5.X êáé ìåôÜ, åßíáé áñêåôÜ
|
||
åýêïëï íá ñõèìßóåôå ôïí ðõñÞíá ÷ñçóéìïðïéþíôáò ôï ðïëý ðéï
|
||
åõÝëéêôï óýóôçìá ôùí "hints" ôá ïðïßá ìðïñåßôå íá ñõèìßóåôå óôçí
|
||
ðñïôñïðÞ ôïõ loader.</para>
|
||
|
||
<para>Åíäå÷ïìÝíùò íá áîßæåé áêüìá íá äçìéïõñãÞóåôå Ýíá íÝï ðõñÞíá
|
||
ï ïðïßïò íá ðåñéÝ÷åé ìüíï ôá ðñïãñÜììáôá ïäÞãçóçò ðïõ ÷ñåéÜæåóôå,
|
||
ãéá íá ãëõôþóåôå êÜðïéá ìéêñÞ ðïóüôçôá ìíÞìçò RAM, áëëÜ áõôü äåí
|
||
åßíáé ðëÝïí áðáñáßôçôï ãéá ôá ðåñéóóüôåñá óõóôÞìáôá.</para>
|
||
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="password-encryption">
|
||
<para>Ãéá ôïõò êùäéêïýò ðñüóâáóçò ôùí ÷ñçóôþí, íá ÷ñçóéìïðïéÞóù
|
||
DES, Blowfish, Þ MD5 êùäéêïðïßçóç, êáé ðùò èá êáèïñßóù ôé èá
|
||
÷ñçóéìïðïéïýí ïé ÷ñÞóôåò ìïõ;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ç ðñïåðéëåãìÝíç ìïñöÞ êñõðôïãñÜöçóçò ãéá êùäéêïýò óôï &os;
|
||
åßíáé ôï <emphasis>MD5</emphasis>. Ç ãåíéêÞ áíôßëçøç åßíáé üôé
|
||
ðáñÝ÷ïõí êáëýôåñç áóöÜëåéá óå ó÷Ýóç ìå ôçí ðáñáäïóéáêÞ ìïñöÞ ôïõ
|
||
&unix; ðïõ âáóßæåôáé óôïí áëãüñéèìï <emphasis>DES</emphasis>.
|
||
Ïé êùäéêïß DES åßíáé áêüìá äéáèÝóéìïé, áí ÷ñåéÜæåôáé íá
|
||
äéáìïéñÜóåôå ôï áñ÷åßï ôùí êùäéêþí óáò ìå ðáëéüôåñá ëåéôïõñãéêÜ
|
||
óõóôÞìáôá, ôá ïðïßá ÷ñçóéìïðïéïýí áêüìá ôï ðáëéüôåñï êáé ëéãüôåñï
|
||
áóöáëÝò óýóôçìá (åßíáé äéáèÝóéìá áí åãêáôáóôÞóåôå ôç äéáíïìÞ
|
||
<quote>crypto</quote> ìÝóù ôïõ sysinstall Þ åãêáèéóôþíôáò ôïí
|
||
áíôßóôïé÷ï ðçãáßï êþäéêá áí êÜíåôå åãêáôÜóôáóç ìÝóù ðçãáßïõ
|
||
êþäéêá). Áí åãêáôáóôÞóåôå ôéò âéâëéïèÞêåò crypto èá ìðïñÝóåôå
|
||
åðßóçò íá ÷ñçóéìïðïéÞóåôå êñõðôïãñÜöçóç Blowfish ç ïðïßá åßíáé
|
||
áêüìá ðéï áóöáëÞò. Ôï ðïéá ìïñöÞ êùäéêþí ÷ñçóéìïðïéåßôáé ãéá
|
||
ôïõò íÝïõò êùäéêïýò, åëÝã÷åôáé áðü ôçí äõíáôüôçôá åéóüäïõ
|
||
<quote>passwd_format</quote> óôï
|
||
<filename>/etc/login.conf</filename>, ôï ïðïßï ðáßñíåé ôéò ôéìÝò
|
||
<quote>des</quote>, <quote>blf</quote> (áí åßíáé äéáèÝóéìç)
|
||
Þ <quote>md5</quote>. Äåßôå ôç óåëßäá manual ôïõ
|
||
&man.login.conf.5; ãéá ðåñéóóüôåñåò ðëçñïöïñßåò ó÷åôéêÜ ìå ôéò
|
||
äõíáôüôçôåò åéóüäïõ.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="boot-floppy-hangs">
|
||
<para>Ãéáôß åíþ ç äéóêÝôá åêêßíçóçò îåêéíÜåé êáíïíéêÜ, êñåìÜåé óôçí
|
||
ïèüíç <literal>Probing Devices...</literal>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Áí Ý÷åôå åãêáôåóôçìÝíï ïäçãü IDE &iomegazip; Þ &jaz;,
|
||
áöáéñÝóôå ôïí êáé îáíáðñïóðáèÞóôå. Ç äéóêÝôá åêêßíçóçò ìðïñåß
|
||
íá ìðåñäåõôåß áðü áõôïýò ôïõò ïäçãïýò. ÌåôÜ ôçí åãêáôÜóôáóç ôïõ
|
||
óõóôÞìáôïò, ìðïñåßôå íá îáíáóõíäÝóåôå ôïí ïäçãü. Åõåëðéóôïýìå üôé
|
||
ôï ðñüâëçìá áõôü èá äéïñèùèåß óå åðüìåíç Ýêäïóç.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="panic-on-install-reboot">
|
||
<para>Ãéáôß ðáßñíù ôï ìÞíõìá ëÜèïõò
|
||
<errorname>panic: can't mount root</errorname> üôáí åêêéíþ ôï
|
||
óýóôçìá ãéá ðñþôç öïñÜ ìåôÜ ôçí åãêáôÜóôáóç;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï óöÜëìá áõôü ðñïÝñ÷åôáé áðü ôçí óýã÷õóç ðïõ ðñïêáëåßôáé
|
||
åîáéôßáò ôïõ äéáöïñåôéêïý ôñüðïõ ìå ôïí ïðïßï ôï BIOS êáé ôï
|
||
boot block áíôéëáìâÜíïíôáé ôïõò óêëçñïýò äßóêïõò. Ôï ðñüâëçìá
|
||
óõíÞèùò åìöáíßæåôáé óå óõóôÞìáôá ìå äýï äßóêïõò IDE, åéäéêÜ üôáí
|
||
ïé äßóêïé åßíáé master (Þ ìüíïé ôïõò) ï êáèÝíáò óôï äéêü ôïõ
|
||
åëåãêôÞ IDE êáé ìå ôï &os; íá åßíáé åãêáôáóôçìÝíïò óôï äßóêï
|
||
ðïõ âñßóêåôáé óôï äåõôåñåýïíôá åëåãêôÞ. Ôï boot block íïìßæåé
|
||
üôé ôï óýóôçìá åßíáé åãêáôåóôçìÝíï óôïí ad0 (ôï äåýôåñï äßóêï
|
||
ôïõ BIOS) åíþ ï ðõñÞíáò áíáèÝôåé ôïí ðñþôï äßóêï óôï äåõôåñåýïíôá
|
||
åëåãêôÞ, ad2. ÌåôÜ ôçí áíß÷íåõóç ôùí óõóêåõþí, ï ðõñÞíáò
|
||
ðñïóðáèåß íá ðñïóáñôÞóåé áõôü ðïõ ôï boot block ðéóôåýåé üôé åßíáé
|
||
ï äßóêïò åêêßíçóçò, ad0 åíþ óôçí ðñáãìáôéêüôçôá åßíáé ï ad2 êáé
|
||
öõóéêÜ áðïôõã÷Üíåé.</para>
|
||
|
||
<para>Ãéá íá äéïñèþóåôå ôï ðñüâëçìá, êÜíôå Ýíá áðü ôá
|
||
ðáñáêÜôù:</para>
|
||
|
||
<orderedlist>
|
||
<listitem>
|
||
<para>ÅðáíåêêéíÞóôå ôï óýóôçìá êáé ðéÝóôå
|
||
<keycap>Enter</keycap> óôçí ðñïôñïðÞ
|
||
<literal>Booting kernel in 10 seconds; hit
|
||
[Enter] to interrupt</literal>. Ìå ôïí ôñüðï áõôü èá âãåßôå
|
||
óôï ðñüãñáììá ôïõ öïñôùôÞ åêêßíçóçò.</para>
|
||
|
||
<para>Êáôüðéí ãñÜøôå
|
||
<literal>set
|
||
root_disk_unit="<replaceable>disk_number</replaceable>"
|
||
</literal>. Ôï <replaceable>disk_number</replaceable>
|
||
èá åßíáé <literal>0</literal> áí ôï &os; åßíáé åãêáôåóôçìÝíï
|
||
óôï master äßóêï ôïõ ðñþôïõ åëåãêôÞ IDE,
|
||
<literal>1</literal> áí åßíáé åãêáôåóôçìÝíï óôï slave äßóêï
|
||
ôïõ ðñþôïõ åëåãêôÞ, <literal>2</literal> áí åßíáé
|
||
åãêáôåóôçìÝíïò óôïí master äßóêï ôïõ äåõôåñåýïíôïò IDE
|
||
êáíáëéïý êáé ôÝëïò, <literal>3</literal> áí åßíáé
|
||
åãêáôåóôçìÝíï óôï slave äßóêï ôïõ äåõôåñåýïíôïò IDE
|
||
êáíáëéïý.</para>
|
||
|
||
<para>¸ðåéôá ãñÜøôå <literal>boot</literal>, êáé ôï óýóôçìá
|
||
óáò èá ðñÝðåé íá åêêéíÞóåé êáíïíéêÜ.</para>
|
||
|
||
<para>Ãéá íá êÜíåôå ìüíéìç áõôÞ ôçí áëëáãÞ (þóôå íá ìçí
|
||
÷ñåéÜæåôáé íá êÜíåôå ôï ðáñáðÜíù êÜèå öïñÜ ðïõ åðáíåêêéíåßôå
|
||
Þ åíåñãïðïéåßôå ôï &os; ìç÷Üíçìá óáò), âÜëôå ôç ãñáììÞ
|
||
<literal>root_disk_unit="<replaceable>disk_number
|
||
</replaceable>"</literal> óôï áñ÷åßï
|
||
<filename>/boot/loader.conf.local</filename>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÌåôáêéíÞóôå ôï äßóêï ôïõ &os; óôïí ðñùôåýïíôá
|
||
åëåãêôÞ IDE, þóôå ïé óêëçñïß äßóêïé íá åßíáé
|
||
óõíå÷üìåíïé.</para>
|
||
</listitem>
|
||
</orderedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="memory-limits">
|
||
<para>Ðïéá åßíáé ôá üñéá ôçò ìíÞìçò;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï üñéï åßíáé ôá 4 gigabytes óå ìéá óõíçèéóìÝíç åãêáôÜóôáóç
|
||
óå áñ÷éôåêôïíéêÞ &i386;. Îåêéíþíôáò áðü ôéò åêäüóåéò &os; 4.9 êáé
|
||
5.1, õðïóôçñßæåôáé êáé ðåñéóóüôåñç ìíÞìç ìÝóù ôïõ
|
||
&man.pae.4;. ×ñåéÜæåôáé ùóôüóï íá ìåôáãëùôôéóôåß îáíÜ ï ðõñÞíáò
|
||
ðåñéëáìâÜíïíôáò êáé ìéá Ýîôñá åðéëïãÞ ãéá ôçí åíåñãïðïßçóç ôïõ
|
||
PAE:</para>
|
||
|
||
<programlisting>options PAE</programlisting>
|
||
|
||
<para>Ôï &os;/pc98 Ý÷åé üñéï ôá 4 GB ìíÞìçò, êáé äåí ìðïñåß íá
|
||
÷ñçóéìïðïéçèåß PAE óå áõôÞ ôçí áñ÷éôåêôïíéêÞ. Óôï &os;/alpha,
|
||
ôï üñéï ôçò ìíÞìçò åîáñôÜôáé áðü ôïí ôýðï ôïõ õëéêïý ðïõ
|
||
÷ñçóéìïðïéåßôáé - ãéá ëåðôïìÝñåéåò äåßôå ôéò Óçìåéþóåéò ¸êäïóçò
|
||
Õëéêïý ãéá Alpha. ¶ëëåò áñ÷éôåêôïíéêÝò ðïõ õðïóôçñßæïíôáé áðü
|
||
ôï &os;, Ý÷ïõí áñêåôÜ ìåãáëýôåñá èåùñçôéêÜ üñéá ó÷åôéêÜ
|
||
ìå ôç ìÝãéóôç ðïóüôçôá ìíÞìçò (ðïëëÜ terabytes).</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ffs-limits">
|
||
<para>Ðïéá åßíáé ôá üñéá ôïõ óõóôÞìáôïò áñ÷åßùí ffs;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ãéá óõóôÞìáôá áñ÷åßùí ffs, ôï ìÝãéóôï èåùñçôéêü üñéï åßíáé
|
||
ôá 8 terabytes (2G blocks), Þ 16Ô ãéá ðñïåðéëåãìÝíï ìÝãåèïò
|
||
block ôùí 8Ê. Óôçí ðñáãìáôéêüôçôá, õðÜñ÷åé Ýíá áñ÷éêü üñéï
|
||
1 terabyte, áëëÜ ìå êÜðïéåò ìåôáôñïðÝò, åßíáé äõíáôüí íá
|
||
äçìéïõñãçèïýí (êáé õðÜñ÷ïõí) óõóôÞìáôá áñ÷åßùí ìåãÝèïõò
|
||
4 terabytes.</para>
|
||
|
||
<para>Ôï ìÝãéóôï ìÝãåèïò åíüò áñ÷åßïõ óå Ýíá óýóôçìá ffs åßíáé
|
||
ðåñßðïõ 1G blocks, Þ 4TB ìå ìÝãåèïò block ôùí 4K.</para>
|
||
|
||
<table>
|
||
<title>ÌÝãéóôá ìåãÝèç áñ÷åßùí</title>
|
||
|
||
<tgroup cols="3">
|
||
<thead>
|
||
<row>
|
||
<entry>ÌÝãåèïò block fs</entry>
|
||
|
||
<entry>ëåéôïõñãåß</entry>
|
||
|
||
<entry>ðñÝðåé íá ëåéôïõñãåß</entry>
|
||
</row>
|
||
</thead>
|
||
|
||
<tbody>
|
||
<row>
|
||
<entry>4K</entry>
|
||
|
||
<entry>4T-1</entry>
|
||
|
||
<entry>>4T</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>8K</entry>
|
||
|
||
<entry>>32G</entry>
|
||
|
||
<entry>32T-1</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>16K</entry>
|
||
|
||
<entry>>128G</entry>
|
||
|
||
<entry>32T-1</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>32K</entry>
|
||
|
||
<entry>>512G</entry>
|
||
|
||
<entry>64T-1</entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>64K</entry>
|
||
|
||
<entry>>2048G</entry>
|
||
|
||
<entry>128T-1</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</table>
|
||
|
||
<para>¼ôáí ôï ìÝãåèïò block ôïõ fs åßíáé 4K, ëåéôïõñãïýí ôá ôñéðëÜ
|
||
Ýììåóá blocks (triple indirect blocks) êáé ôá ðÜíôá èá Ýðñåðå
|
||
íá ðåñéïñßæïíôáé ìüíï áðü ôï ìÝãéóôï áñéèìü block ðïõ ìðïñåß íá
|
||
áíáðáñáóôáèåß ìå ôç ÷ñÞóç ôñéðëþí Ýììåóùí blocks
|
||
(ðåñßðïõ 1K^3 + 1K^2 + 1K), áëëÜ ôåëéêÜ ï ðåñéïñéóìüò ïöåßëåôáé
|
||
óå Ýíá (ëÜèïò) üñéï 1G-1 óôïõò áñéèìïýò ôùí blocks. Ôï üñéï
|
||
óôïõò áñéèìïýò ôùí block èá Ýðñåðå íá åßíáé 2G-1. ÕðÜñ÷ïõí
|
||
êÜðïéá ðñïâëÞìáôá üôáí ïé áñéèìïß ôùí block ôïõ fs ðëçóéÜæïõí
|
||
ôï 2G-1, áëëÜ ôÝôïéïé áñéèìïß block äåí ìðïñïýí íá ðñïóåããéóôïýí
|
||
üôáí ôï ìÝãåèïò block fs åßíáé 4Ê.</para>
|
||
|
||
<para>Ãéá ìåãÝèç block 8Ê êáé ìåãáëýôåñá, ôá ðÜíôá èá Ýðñåðå íá
|
||
ðåñéïñßæïíôáé áðü ôï üñéï 2G-1 óôïõò áñéèìïýò ôùí block ôïõ fs,
|
||
áëëÜ óôçí ðñáãìáôéêüôçôá ï ðåñéïñéóìüò ïöåßëåôáé óôï ëÜèïò üñéï
|
||
1G-1 óôïõò áñéèìïýò ôùí block ôïõ fs. H ÷ñÞóç ôïõ óùóôïý ïñßïõ
|
||
ôùí 2G-1 blocks, äçìéïõñãåß ðñÜãìáôé ðñïâëÞìáôá.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="archsw-readin-failed-error">
|
||
<para>Ãéáôß ðáßñíù ôï ìÞíõìá ëÜèïò,
|
||
<errorname>archsw.readin.failed</errorname> ìåôÜ ôçí ìåôáãëþôôéóç
|
||
êáé åêêßíçóç íÝïõ ðõñÞíá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ãéáôß ï ðõñÞíáò óáò êáé ôï õðüëïéðï ôïõ âáóéêïý óõóôÞìáôïò
|
||
(world) åßíáé åêôüò óõã÷ñïíéóìïý. Ç ëåéôïõñãßá óå áõôÞ ôçí
|
||
êáôÜóôáóç äåí õðïóôçñßæåôáé. Âåâáéùèåßôå üôé ÷ñçóéìïðïéåßôå ôéò
|
||
åíôïëÝò <command>make buildworld</command> êáé <command>make
|
||
buildkernel</command> ãéá íá áíáâáèìßóåôå ôïí ðõñÞíá óáò.</para>
|
||
|
||
<para>Ìðïñåßôå íá åêêéíÞóåôå ïñßæïíôáò ôïí ðõñÞíá áðåõèåßáò áðü
|
||
ôï äåýôåñï óôÜäéï, ðéÝæïíôáò ïðïéïäÞðïôå ðëÞêôñï ìüëéò äåßôå ôï
|
||
| êáé ðñéí îåêéíÞóåé ï loader.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="boot-acpi">
|
||
<para>Ç åãêáôÜóôáóç êáôáññÝåé êáôÜ ôçí åêêßíçóç. Ôé ìðïñþ íá
|
||
êÜíù;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÄïêéìÜóôå íá áðåíåñãïðïéÞóåôå ôçí õðïóôÞñéîç ACPI. Ìüëéò
|
||
îåêéíÞóåé ï öïñôùôÞò åêêßíçóçò, ðéÝóôå ôï ðëÞêôñï space.
|
||
To óýóôçìá óáò èá åìöáíßóåé <screen>OK</screen>. ÃñÜøôå
|
||
<screen><userinput>unset acpi_load</userinput></screen> êáé
|
||
êáôüðéí <screen><userinput>boot</userinput></screen>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="hardware">
|
||
<title>Óõìâáôüôçôá Õëéêïý</title>
|
||
|
||
<sect1 id="compatibility-general">
|
||
<title>ÃåíéêÜ</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="which-hardware-to-get">
|
||
<para>ÈÝëù íá áãïñÜóù õëéêü ãéá ôï &os; óýóôçìá ìïõ. Ðïéï
|
||
ìïíôÝëï / ìÜñêá / ôýðïò åßíáé ôï êáëýôåñï;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÕðÜñ÷ïõí óõíÝ÷åéá óõæçôÞóåéò ãéá ôï èÝìá áõôü óôéò ëßóôåò
|
||
çëåêôñïíéêïý ôá÷õäñïìåßïõ ôïõ &os;. Áõôü ùóôüóï åßíáé
|
||
áíáìåíüìåíï, êáèþò ôï õëéêü ôùí õðïëïãéóôþí áëëÜæåé ðïëý
|
||
ãñÞãïñá. Åìåßò <emphasis>åîáêïëïõèïýìå</emphasis> íá
|
||
óõíéóôïýìå ìå Ýìöáóç, íá äéáâÜóåôå ôéò Óçìåéþóåéò Õëéêïý ôïõ
|
||
&os; <ulink url="&rel.current.hardware;">&rel.current;</ulink> Þ
|
||
<ulink url="&rel2.current.hardware;">&rel2.current;</ulink> êáé
|
||
íá øÜîåôå óôá <ulink
|
||
url="http://www.FreeBSD.org/search/#mailinglists">áñ÷åßá</ulink>
|
||
ôùí ëéóôþí çëåêôñïíéêïý ôá÷õäñïìåßïõ, ðñéí áñ÷ßóåôå íá ñùôÜôå
|
||
ó÷åôéêÜ ìå ôï ôåëåõôáßï êáé êáëýôåñï õëéêü. Åßíáé áñêåôÜ
|
||
ðéèáíü íá äéáðéóôþóåôå, üôé ãéá ôï õëéêü ðïõ áíáæçôÜôå, õðÞñîå
|
||
ó÷åôéêÞ óõæÞôçóç ìüëéò ðñéí ìéá åâäïìÜäá.</para>
|
||
|
||
<para>Áí øÜ÷íåôå ãéá öïñçôü õðïëïãéóôÞ, åëÝãîôå ôá áñ÷åßá ôÞò
|
||
ëßóôáò çëåêôñïíéêïý ôá÷õäñïìåßïõ &a.mobile.name;. ÄéáöïñåôéêÜ,
|
||
ìÜëëïí èá èÝëåôå íá äåßôå ôá áñ÷åßá ôçò &a.questions.name; Þ
|
||
ðéèáíüí ìéá ëßóôá ðïõ íá åîåéäéêåýåôáé óôïí ôýðï ôïõ õëéêïý ðïõ
|
||
øÜ÷íåôå.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</sect1>
|
||
|
||
<sect1 id="compatibility-processors">
|
||
<title>Áñ÷éôåêôïíéêÝò êáé ÅðåîåñãáóôÝò</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="architectures">
|
||
<para>Õðïóôçñßæåé ôï &os; áñ÷éôåêôïíéêÝò äéáöïñåôéêÝò áðü ôçí
|
||
x86;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Íáé. ÁõôÞ ôç óôéãìÞ ôï &os; ìðïñåß íá åêôåëåóôåß óå
|
||
áñ÷éôåêôïíéêÝò x86 êáé DEC (ôþñá ðëÝïí Compaq) Alpha. Áðü ôï
|
||
&os; 5.0 êáé ìåôÜ, õðïóôçñßæïíôáé åðßóçò ïé áñ÷éôåêôïíéêÝò
|
||
AMD64 êáé Intel EM64T, ç IA-64 êáèþò êáé ç &sparc64;.
|
||
Áñ÷éôåêôïíéêÝò ðïõ èá õðïóôçñßæïíôáé ìåëëïíôéêÜ, ðåñéëáìâÜíïõí
|
||
ôçí &mips; êáé &powerpc;. Ìðïñåßôå íá åããñáöåßôå óôéò ëßóôåò
|
||
ôá÷õäñïìåßïõ &a.ppc.name; êáé &a.mips.name; áíôßóôïé÷á ãéá
|
||
ðëçñïöïñßåò ó÷åôéêÜ ìå ôçí ðñüïäï ôùí åñãáóéþí óå áõôÝò ôéò
|
||
áñ÷éôåêôïíéêÝò. Ãéá ãåíéêÝò ðëçñïöïñßåò ó÷åôéêÜ ìå íÝåò
|
||
áñ÷éôåêôïíéêÝò, åããñáöåßôå óôçí &a.platforms;.</para>
|
||
|
||
<para>Áí ôï ìç÷Üíçìá óáò åßíáé äéáöïñåôéêÞò áñ÷éôåêôïíéêÞò êáé
|
||
÷ñåéÜæåóôå ëåéôïõñãéêü Üìåóá, óáò óõíéóôïýìå íá ñßîåôå ìéá ìáôéÜ
|
||
óôá <ulink url="http://www.netbsd.org/">NetBSD</ulink> Þ
|
||
<ulink url="http://www.openbsd.org/">OpenBSD</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="smp-support">
|
||
<para>Õðïóôçñßæåé ôï &os; ÓõììåôñéêÞ Ðïëõåðåîåñãáóßá (SMP);</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Íáé. Ôï SMP Þôáí åíåñãïðïéçìÝíï áðü ðñïåðéëïãÞ óôïí ðõñÞíá
|
||
<emphasis>GENERIC</emphasis> Þäç áðü ôï &os; 5.2.</para>
|
||
|
||
<para>Ç áñ÷éêÞ ðñüèåóç Þôáí íá åßíáé åíåñãïðïéçìÝíï åðßóçò áðü
|
||
ðñïåðéëïãÞ êáé óôïí ðõñÞíá ôÞò Ýêäïóçò 5.3 ôïõ &os;, áëëÜ ëüãù
|
||
êÜðïéùí ðñïâëçìÜôùí óôçí åêôÝëåóç ôïõ ðõñÞíá SMP óå ìç÷áíÞìáôá
|
||
÷ùñßò ðïëëáðëïýò åðåîåñãáóôÝò, áðïöáóßóôçêå íá ìåßíåé áíåíåñãü
|
||
ìÝ÷ñé ôçí áíôéìåôþðéóç ôïõò. Áõôü ùóôüóï áðïôåëåß ðñïôåñáéüôçôá
|
||
ãéá ôçí Ýêäïóç 5.4 ôïõ &os;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</sect1>
|
||
|
||
<sect1 id="compatibility-drives">
|
||
<title>Óêëçñïß äßóêïé, ìïíÜäåò ôáéíßáò, ïäçãïß CD êáé DVD</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="supported-hard-drives">
|
||
<para>Ðïéá åßäç óêëçñþí äßóêùí õðïóôçñßæïíôáé áðü ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï &os; õðïóôçñßæåé ìïíÜäåò äßóêïõ ôùí ôýðùí EIDE, SATA,
|
||
SCSI, êáé SAS (ìå ôïí êáôÜëëçëï óõìâáôü åëåãêôÞ —
|
||
äåßôå ôçí åðüìåíç åíüôçôá), êáèþò êáé üëïõò ôïõò ïäçãïýò ðïõ
|
||
÷ñçóéìïðïéïýí ôï áñ÷éêü interface ôçò
|
||
<quote>Western Digital</quote> (äçë. MFM, RLL, ESDI êáé öõóéêÜ
|
||
IDE). ºóùò íá ìç ëåéôïõñãÞóïõí êÜðïéïé åëåãêôÝò ESDI ðïõ
|
||
÷ñçóéìïðïéïýí ìç-ôõðïðïéçìÝíï interface. Êáëýôåñá íá
|
||
ðáñáìåßíåôå óå interfaces ôýðïõ WD1002/3/6/7 êáé áíôßóôïé÷á
|
||
ôïõò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="supported-scsi-controllers">
|
||
<para>Ðïéïé åëåãêôÝò SCSI Þ SAS õðïóôçñßæïíôáé;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Äåßôå ôçí ðëÞñç ëßóôá óôéò Óçìåéþóåéò Õëéêïý ôïõ &os;
|
||
<ulink url="&rel.current.hardware;">&rel.current;</ulink> Þ
|
||
<ulink url="&rel2.current.hardware;">&rel2.current;</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="tape-support">
|
||
<para>Ôé ôýðïé ïäçãþí ôáéíßáò õðïóôçñßæïíôáé;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï &os; õðïóôçñßæåé ïäçãïýò SCSI êáé QIC-36 (ìå interface
|
||
QIC-02). ÐåñéëáìâÜíïíôáé ïäçãïß 8-mm (ãíùóôïß ùò Exabyte) êáèþò
|
||
êáé ïäçãïß DAT.</para>
|
||
|
||
<para>ÏñéóìÝíïé áðü ôïõò ðñþôïõò ïäçãïýò 8-mm äåí åßíáé éäéáßôåñá
|
||
óõìâáôïß ìå SCSI-2, êáé ìðïñåß íá ìçí ëåéôïõñãïýí éêáíïðïéçôéêÜ
|
||
ìå ôï &os;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="tape-changer-support">
|
||
<para>Õðïóôçñßæåé ôï &os; ìïíÜäåò åíáëëáãÞò ôáéíéþí (tape
|
||
changers);</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï &os; õðïóôçñßæåé ìïíÜäåò åíáëëáãÞò ôýðïõ SCSI ìå ôçí
|
||
÷ñÞóç ôçò óõóêåõÞò &man.ch.4; êáé ôçò åíôïëÞò &man.chio.1;.
|
||
Ìðïñåßôå íá âñåßôå ôéò ëåðôïìÝñåéåò ó÷åôéêÜ ìå ôïí ôñüðï åëÝã÷ïõ
|
||
ôçò ìïíÜäáò åíáëëáãÞò óôç óåëßäá manual ôïõ &man.chio.1;.</para>
|
||
|
||
<para>Áí äåí ÷ñçóéìïðïéåßôå ôï <application>AMANDA</application> Þ
|
||
êÜðïéï Üëëï ðñïúüí ðïõ íá ãíùñßæåé ðùò íá ÷åéñéóôåß ôçí ìïíÜäá
|
||
åíáëëáãÞò ôáéíéþí, èá ðñÝðåé íá èõìÜóôå üôé ãåíéêÜ ôá
|
||
ðñïãñÜììáôá ãíùñßæïõí ìüíï ðùò íá êéíÞóïõí ìéá ôáéíßá áðü Ýíá
|
||
óçìåßï óå Ýíá Üëëï, êáé èá ðñÝðåé åóåßò íá óçìåéþóåôå óå ðïéá
|
||
èÝóç (slot) âñßóêåôáé ç ôáéíßá, êáé óå ðïéá èÝóç ðñÝðåé íá ðÜåé
|
||
ç ôáéíßá ðïõ âñßóêåôáé áõôÞ ôç óôéãìÞ ìÝóá óôïí ïäçãü.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="supported-cdrom-drives">
|
||
<para>Ðïéïé ïäçãïß CDROM õðïóôçñßæïíôáé áðü ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Õðïóôçñßæåôáé ïðïéïóäÞðïôå ïäçãüò SCSI ðïõ åßíáé óõíäåìÝíïò
|
||
óå áíôßóôïé÷á õðïóôçñéæüìåíï åëåãêôÞ.</para>
|
||
|
||
<para>Õðïóôçñßæïíôáé áêüìá ôá áêüëïõèá ìç-ôõðïðïéçìÝíá
|
||
CDROM interfaces:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Mitsumi LU002 (8bit), LU005 (16bit) and FX001D
|
||
(16bit ôá÷ýôçôáò 2x ).</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Sony CDU 31/33A</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Sound Blaster ìç-SCSI CDROM</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Matsushita/Panasonic CDROM</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>IDE CDROM óõìâáôÜ ìå ATAPI</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>¼ëåò ïé êÜñôåò ðïõ äåí åßíáé SCSI åßíáé ãåíéêÜ åîáéñåôéêÜ
|
||
ðéï áñãÝò üôáí óõãêñßíïíôáé ìå áíôßóôïé÷ïõò SCSI ïäçãïýò, êáé
|
||
êÜðïéïé ïäçãïß ôýðïõ ATAPI ßóùò íá ìç ëåéôïõñãÞóïõí.</para>
|
||
|
||
<para>Ôá åðßóçìá &os; CDROM ISO, êáèþò êáé ôá CDROM áðü ôï Daemon
|
||
News êáé ôï FreeBSD Mall, õðïóôçñßæïõí åêêßíçóç áðåõèåßáò áðü ôï
|
||
CD.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="supported-cdrw-drives">
|
||
<para>Ðïéïé ïäçãïß CD-RW õðïóôçñßæïíôáé áðü ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï &os; õðïóôçñßæåé ïðïéïäÞðïôå ïäçãü IDE CD-R Þ CD-RW
|
||
óõìâáôü ìå ATAPI. Äåßôå ôï &man.burncd.8; ãéá
|
||
ëåðôïìÝñåéåò.</para>
|
||
|
||
<para>Ôï &os; õðïóôçñßæåé åðßóçò ïðïéïäÞðïôå ïäçãü SCSI CD-R Þ
|
||
CD-RW. ÅãêáôáóôÞóôå êáé ÷ñçóéìïðïéÞóôå ôçí åíôïëÞ
|
||
<command>cdrecord</command> áðü ôçí óõëëïãÞ ôùí ports Þ áðü
|
||
ðáêÝôï, êáé âåâáéùèåßôå üôé Ý÷åôå åíóùìáôþóåé óôïí ðõñÞíá óáò
|
||
ôç óõóêåõÞ <devicename>pass</devicename>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="zip-support">
|
||
<para>Õðïóôçñßæåé ôï &os; ïäçãïýò &iomegazip;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï &os; õðïóôçñßæåé åããåíþò ïäçãïýò &iomegazip; SCSI êáé
|
||
ATAPI. Ïé ïäçãïß SCSI ZIP ìðïñïýí íá ëåéôïõñãÞóïõí ìüíï áí
|
||
Ý÷ïõí ñõèìéóôåß óå SCSI IDs 5 Þ 6, áëëÜ áí ôï õðïóôçñßæåé ï
|
||
åëåãêôÞò SCSI ðïõ ÷ñçóéìïðïéåßôå, ìðïñåßôå áêüìá êáé íá
|
||
åêêéíÞóåôå áðü áõôïýò. Äåí åßíáé îåêÜèáñï ðïéïé åëåãêôÝò SCSI
|
||
õðïóôçñßæïõí åêêßíçóç áðü óõóêåõÝò ìå ID äéáöïñåôéêü áðü 0 Þ 1,
|
||
Ýôóé èá ðñÝðåé íá óõìâïõëåõèåßôå ôçí ôåêìçñßùóç ôïõ åëåãêôÞ
|
||
óáò, áí èÝëåôå íá ÷ñçóéìïðïéÞóåôå áõôÞ ôç äõíáôüôçôá.</para>
|
||
|
||
<para>Ôï &os; õðïóôçñßæåé åðßóçò ïäçãïýò Zip ðáñÜëëçëçò èýñáò.
|
||
Âåâáéùèåßôå üôé ï ðõñÞíáò óáò ðåñéÝ÷åé ôá ðñïãñÜììáôá ïäÞãçóçò
|
||
ãéá ôéò óõóêåõÝò
|
||
<devicename>scbus0</devicename>,
|
||
<devicename>da0</devicename>,
|
||
<devicename>ppbus0</devicename>, êáé
|
||
<devicename>vp0</devicename> (ï ðõñÞíáò GENERIC ðåñéÝ÷åé ôá
|
||
ðÜíôá åêôüò áðü ôï <devicename>vp0</devicename>). Ìå ÷ñÞóç
|
||
áõôþí ôùí ðñïãñáììÜôùí ïäÞãçóçò, ï ïäçãüò ôçò ðáñÜëëçëçò èýñáò
|
||
èá ðñÝðåé íá åßíáé äéáèÝóéìïò ùò óõóêåõÞ
|
||
<devicename>/dev/da0s4</devicename>. Ìðïñåßôå íá ðñïóáñôÞóåôå
|
||
äßóêïõò ÷ñçóéìïðïéþíôáò ôçí åíôïëÞ
|
||
<command>mount /dev/da0s4 /mnt</command> Þ (ãéá äßóêïõò ðïõ
|
||
Ý÷ïõí äéáìïñöùèåß ìÝóù dos) ôçí
|
||
<command>mount_msdos /dev/da0s4 /mnt</command>.</para>
|
||
|
||
<para>ÄéáâÜóôå åðßóçò <link linkend="media-change">ôï FAQ ó÷åôéêÜ
|
||
ìå áöáéñïýìåíïõò ïäçãïýò</link> óå åðüìåíï óçìåßï áõôïý ôïõ
|
||
êåöáëáßïõ, êáèþò êáé ôéò <link linkend="removable-drives">
|
||
óçìåéþóåéò ó÷åôéêÜ ìå ôçí <quote>äéáìüñöùóç</quote></link> óôï
|
||
êåöÜëáéï Äéá÷åßñéóçò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="jaz-zip-removable-support">
|
||
<para>Õðïóôçñßæåé ôï &os; &jaz;, EZ êáé Üëëïõò áöáéñïýìåíïõò
|
||
ïäçãïýò;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Áðëþò ëåéôïõñãïýí. Ïé ðåñéóóüôåñåò áðü ôéò óõóêåõÝò áõôÝò
|
||
åßíáé SCSI, êáé Ýôóé äåß÷íïõí óáí SCSI äßóêïé óôï &os;. Ôï IDE
|
||
EZ åìöáíßæåôáé óáí ïäçãüò IDE.</para>
|
||
|
||
<para>Âåâáéùèåßôå üôé Ý÷åôå åíåñãïðïéÞóåé ôõ÷üí åîùôåñéêÝò
|
||
óõóêåõÝò ðñéí åêêéíÞóåôå ôï óýóôçìá óáò.</para>
|
||
|
||
<para><anchor id="media-change"/>Ãéá íá áëëÜîåôå ìÝóï áðïèÞêåõóçò
|
||
åí þñá ëåéôïõñãßáò, åëÝãîôå ôéò &man.mount.8;, &man.umount.8;,
|
||
êáé ôçí &man.camcontrol.8; (ãéá óõóêåõÝò SCSI) Þ
|
||
&man.atacontrol.8; (ãéá óõóêåõÝò IDE), êáé åðßóçò <link
|
||
linkend="removable-drives">ôéò óõæçôÞóåéò ó÷åôéêÜ ìå ôç ÷ñÞóç
|
||
áöáéñïýìåíùí ïäçãþí</link> óå åðüìåíï ôìÞìá ôïõ FAQ.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</sect1>
|
||
|
||
<sect1 id="compatibility-kbd-mice">
|
||
<title>Ðëçêôñïëüãéá êáé ðïíôßêéá</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="usbkbd">
|
||
<para>Õðïóôçñßæåé ôï &os; ôï USB ðëçêôñïëüãéï ìïõ;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï &os; õðïóôçñßæåé åããåíþò USB ðëçêôñïëüãéá. ÅíåñãïðïéÞóôå
|
||
ôçí õðïóôÞñéîç USB óôï <filename>/etc/rc.conf</filename>.</para>
|
||
|
||
<para>Ìüëéò åíåñãïðïéçèåß ç õðïóôÞñéîç USB ðëçêôñïëïãßïõ óôï
|
||
óýóôçìá óáò, ôï ðëçêôñïëüãéï ôýðïõ AT áíáãíùñßæåôáé ùò
|
||
<devicename>/dev/kbd0</devicename> êáé ôï USB ðëçêôñïëüãéï
|
||
ãßíåôáé <devicename>/dev/kbd1</devicename>, áí åßíáé êáé ôá äýï
|
||
óõíäåìÝíá óôï óýóôçìá. Áí õðÜñ÷åé ìüíï ôï USB ðëçêôñïëüãéï, èá
|
||
áíáãíùñéóôåß ùò <devicename>/dev/ukbd0</devicename>.</para>
|
||
|
||
<para>Áí èÝëåôå íá ÷ñçóéìïðïéÞóåôå ôï USB ðëçêôñïëüãéï óôçí
|
||
êïíóüëá, èá ðñÝðåé íá äçëþóåôå óõãêåêñéìÝíá óôïí ïäçãü ôçò
|
||
êïíóüëáò íá ÷ñçóéìïðïéÞóåé ôï õðÜñ÷ïí USB ðëçêôñïëüãéï. Áõôü
|
||
ìðïñåß íá ãßíåé åêôåëþíôáò ôçí áêüëïõèç åíôïëÞ ùò ìÝñïò ôçò
|
||
äéáäéêáóßáò áñ÷éêïðïßçóçò ôïõ óõóôÞìáôïò:</para>
|
||
|
||
<screen>&prompt.root; <userinput>kbdcontrol -k /dev/kbd1 < /dev/ttyv0 > /dev/null</userinput></screen>
|
||
|
||
<para>ÐáñáôçñÞóôå üôé áí ôï ðëçêôñïëüãéï USB åßíáé ôï ìïíáäéêü
|
||
ðëçêôñïëüãéï, èá åßíáé äéáèÝóéìï ùò
|
||
<devicename>/dev/ukbd0</devicename>, êáé ç åíôïëÞ èá äåß÷íåé
|
||
üðùò ðáñáêÜôù:</para>
|
||
|
||
<screen>&prompt.root; <userinput>kbdcontrol -k /dev/ukbd0 < /dev/ttyv0 > /dev/null</userinput></screen>
|
||
|
||
<para>¸íá êáëü ìÝñïò ãéá íá ðñïóèÝóåôå ôçí ðáñáðÜíù åíôïëÞ, åßíáé
|
||
ôï áñ÷åßï <filename>/etc/rc.i386</filename>.</para>
|
||
|
||
<para>Ìüëéò ãßíåé áõôü, ôï USB ðëçêôñïëüãéï èá ðñÝðåé íá
|
||
ëåéôïõñãåß êáé óôï × ðåñéâÜëëïí, ÷ùñßò áíÜãêç åéäéêþí
|
||
ñõèìßóåùí.</para>
|
||
|
||
<para>Ç åí èåñìþ óýíäåóç êáé áðïóýíäåóç USB ðëçêôñïëïãßïõ, ßóùò
|
||
íá ìç ëåéôïõñãåß áêüìá óùóôÜ. Óáò óõíéóôïýìå íá óõíäÝóåôå ôï
|
||
ðëçêôñïëüãéï ðñéí ôçí åêêßíçóç ôïõ óõóôÞìáôïò, êáé íá ôï áöÞóåôå
|
||
óõíäåìÝíï ìÝ÷ñé ôïí ôåñìáôéóìü, ãéá íá áðïöýãåôå ôõ÷üí
|
||
ðñïâëÞìáôá.</para>
|
||
|
||
<para>Äåßôå ôç óåëßäá manual &man.ukbd.4; ãéá ðåñéóóüôåñåò
|
||
ðëçñïöïñßåò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="busmouse">
|
||
<para>¸÷ù Ýíá ìç-ôõðéêü ðïíôßêé ôýðïõ bus. Ðùò èá ôï
|
||
ñõèìßóù;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï &os; õðïóôçñßæåé ðïíôßêéá ôýðïõ bus êáé ôïí ôýðï InPort
|
||
bus áðü êáôáóêåõáóôÝò üðùò Microsoft, Logitech êáé ATI.
|
||
Ï ðõñÞíáò GENERIC äåí ðåñéÝ÷åé ôïí áðáñáßôçôï ïäçãü óõóêåõÞò.
|
||
Ãéá íá ðåñéëÜâåôå ôï ðñüãñáììá ïäÞãçóçò óôï äéêü óáò
|
||
ðñïóáñìïóìÝíï ðõñÞíá, ðñïóèÝóôå ôçí áêüëïõèç ãñáììÞ óôï áñ÷åßï
|
||
ñõèìßóåùí ðõñÞíá:</para>
|
||
|
||
<programlisting>device mse0 at isa? port 0x23c irq5</programlisting>
|
||
|
||
<para>Ôá ðïíôßêéá ôýðïõ bus óõíÞèùò Ýñ÷ïíôáé ìå äéêÝò ôïõò êÜñôåò
|
||
åðÝêôáóçò. Åíäå÷ïìÝíùò íá Ý÷åôå äõíáôüôçôá íá ñõèìßóåôå ôçí
|
||
êÜñôá óå äéáöïñåôéêÞ äéåýèõíóç èýñáò êáé IRQ áðü áõôÜ ðïõ
|
||
öáßíïíôáé ðáñáðÜíù. Óõìâïõëåõèåßôå ôï åã÷åéñßäéï ôïõ ðïíôéêéïý
|
||
óáò êáé ôç óåëßäá manual &man.mse.4; ãéá ðåñéóóüôåñåò
|
||
ðëçñïöïñßåò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ps2mouse">
|
||
<para>Ðùò ìðïñþ íá ÷ñçóéìïðïéÞóù ôï ðïíôßêé ìïõ ôýðïõ PS/2
|
||
(<quote>ðüñôáò ðïíôéêéïý</quote> Þ <quote>ðëçêôñïëïãßïõ</quote>);</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï ðïíôßêé ôýðïõ PS/2 õðïóôçñßæåôáé åããåíþò. Ôï áðáñáßôçôï
|
||
ðñüãñáììá ïäÞãçóçò, <devicename>psm</devicename>, ðåñéëáìâÜíåôáé
|
||
óôïí ðõñÞíá.</para>
|
||
|
||
<para>Áí ï ðñïóáñìïóìÝíïò ðõñÞíáò óáò äåí ôïí ðåñéÝ÷åé, ðñïóèÝóôå
|
||
ôçí áêüëïõèç ãñáììÞ óôï áñ÷åßï ñõèìßóåùí ðõñÞíá, êáé
|
||
ìåôáãëùôôßóôå îáíÜ ôïí ðõñÞíá óáò.</para>
|
||
|
||
<programlisting>device psm0 at atkbdc? irq 12</programlisting>
|
||
|
||
<para>Ìüëéò ï ðõñÞíáò áíé÷íåýóåé óùóôÜ ôç óõóêåõÞ
|
||
<devicename>psm0</devicename> êáôÜ ôçí åêêßíçóç, âåâáéùèåßôå üôé
|
||
õðÜñ÷åé ç áíôßóôïé÷ç êáôá÷þñçóç ãéá ôï
|
||
<devicename>psm0</devicename> óôïí êáôÜëïãï
|
||
<filename>/dev</filename>. Ìðïñåßôå íá ôï äçìéïõñãÞóåôå
|
||
ãñÜöïíôáò:</para>
|
||
|
||
<screen>&prompt.root; <userinput>cd /dev; sh MAKEDEV psm0</userinput></screen>
|
||
|
||
<para>üôáí Ý÷åôå åéóÝëèåé ùò ÷ñÞóôçò <username>root</username>.</para>
|
||
|
||
<note>
|
||
<para>Ìðïñåßôå íá ðáñáëåßøåôå áõôü ôï âÞìá áí ÷ñçóéìïðïéåßôå
|
||
&os; 5.0-RELEASE Þ íåþôåñï ìå åíåñãïðïéçìÝíï ôï
|
||
&man.devfs.5;, êáèþò ôá áðáñáßôçôá áñ÷åßá óõóêåõþí èá
|
||
äçìéïõñãçèïýí áõôüìáôá êÜôù áðü ôïí êáôÜëïãï
|
||
<filename>/dev</filename>.</para>
|
||
</note>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="moused">
|
||
<para>Åßíáé äõíáôüí íá ÷ñçóéìïðïéçèåß ôï ðïíôßêé ìå êÜðïéï ôñüðï
|
||
Ýîù áðü ôï ðåñéâÜëëïí ôïõ óõóôÞìáôïò X Window;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Áí ÷ñçóéìïðïéåßôå ôï ðñïåðéëåãìÝíï ðñüãñáììá ïäÞãçóçò
|
||
êïíóüëáò, &man.syscons.4;, ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ôï äåßêôç
|
||
ôïõ ðïíôéêéïý óáò óå êïíóüëåò êåéìÝíïõ ãéá íá êÜíåôå áðïêïðÞ êáé
|
||
åðéêüëëçóç êåéìÝíïõ. ÅêôåëÝóôå ôïí äáßìïíá ôïõ ðïíôéêéïý,
|
||
&man.moused.8;, êáé åíåñãïðïéÞóôå ôï äåßêôç ôïõ ðïíôéêéïý óôçí
|
||
åéêïíéêÞ êïíóüëá:</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> åßíáé ôï üíïìá
|
||
óõóêåõÞò ôïõ ðïíôéêéïý êáé ôï <replaceable>yyyy</replaceable>
|
||
åßíáé ï ôýðïò ôïõ ðñùôïêüëëïõ ôïõ. Ï äáßìïíáò ôïõ ðïíôéêéïý
|
||
ìðïñåß íá áíáãíùñßóåé áõôüìáôá ôï åßäïò ôïõ ðñùôïêüëëïõ ãéá ôá
|
||
ðåñéóóüôåñá ðïíôßêéá, åêôüò áðü ðáëéÜ óåéñéáêÜ ìïíôÝëá.
|
||
Êáèïñßóôå ôï ðñùôüêïëëï <literal>auto</literal> ãéá íá
|
||
÷ñçóéìïðïéÞóåôå ôçí áõôüìáôç áíß÷íåõóç. Áí áõôÞ äåí äïõëÝøåé,
|
||
äåßôå ôç óåëßäá manual &man.moused.8; ãéá ìéá ëßóôá ìå
|
||
õðïóôçñéæüìåíïõò ôýðïõò ðñùôïêüëëùí.</para>
|
||
|
||
<para>Áí Ý÷åôå ðïíôßêé ôýðïõ PS/2, áðëþò ðñïóèÝóôå
|
||
<literal>moused_enable="YES"</literal> óôï áñ÷åßï
|
||
<filename>/etc/rc.conf</filename> ãéá íá åêêéíåß ï äáßìïíáò ôïõ
|
||
ðïíôéêéïý êáôÜ ôçí åêêßíçóç. Åðéðñüóèåôá, áí åðéèõìåßôå íá
|
||
÷ñçóéìïðïéåßôå ôï äáßìïíá ôïõ ðïíôéêéïý óå üëåò ôéò åéêïíéêÝò
|
||
êïíóüëåò, êáé ü÷é ìüíï óôçí êïíóüëá óõóôÞìáôïò, ðñïóèÝóôå ôç
|
||
ãñáììÞ <literal>allscreens_flags="-m on"</literal> óôï
|
||
<filename>/etc/rc.conf</filename>.</para>
|
||
|
||
<para>¼ôáí åêôåëåßôáé ï äáßìïíáò ôïõ ðïíôéêéïý, ç ðñüóâáóç óôï
|
||
ðïíôßêé ðñÝðåé íá óõíôïíßæåôáé ìåôáîý ôïõ äáßìïíá êáé Üëëùí
|
||
ðñïãñáììÜôùí, üðùò ôá X Windows. ÊïéôÜîôå óôï FAQ ôçí åñþôçóç
|
||
<link linkend="x-and-moused">Ãéáôß ôï ðïíôßêé ìïõ äåí äïõëåýåé
|
||
óôá ×;</link> ãéá ðåñéóóüôåñåò ðëçñïöïñßåò ó÷åôéêÜ ìå áõôü ôï
|
||
ðñüâëçìá.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="text-mode-cut-paste">
|
||
<para>Ðùò ìðïñþ íá êÜíù áðïêïðÞ êáé åðéêüëëçóç êåéìÝíïõ ìå ôï
|
||
ðïíôßêé óå ìéá êïíóüëá êåéìÝíïõ;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ìüëéò åíåñãïðïéÞóåôå ôï äáßìïíá ôïõ ðïíôéêéïý (äåßôå ôçí
|
||
<link linkend="moused">ðñïçãïýìåíç åíüôçôá</link>), êñáôÞóôå
|
||
ðéåóìÝíï ôï ðëÞêôñï 1 (ôï áñéóôåñü ðëÞêôñï) êáé êéíÞóôå ôï
|
||
ðïíôßêé ãéá íá åðéëÝîåôå ìéá ðåñéï÷Þ êåéìÝíïõ. Êáôüðéí, ðéÝóôå
|
||
ôï ðëÞêôñï 2 (ôï ìåóáßï ðëÞêôñï) ãéá íá ôï åðéêïëëÞóåôå óôçí
|
||
ðåñéï÷Þ ôïõ äñïìÝá. Ìå ôçí ðßåóç ôïõ ðëÞêôñïõ 3 (äåîéïý
|
||
ðëÞêôñïõ) ìðïñåßôå íá <quote>åðåêôåßíåôå</quote> ôçí åðéëåãìÝíç
|
||
ðåñéï÷Þ êåéìÝíïõ.</para>
|
||
|
||
<para>Áí ôï ðïíôßêé óáò äåí Ý÷åé ìåóáßï ðëÞêôñï, ìðïñåß íá èÝëåôå
|
||
íá ôï åîïìïéþóåôå Þ íá áëëÜîåôå ôéò ëåéôïõñãßåò ôùí ðëÞêôñùí
|
||
÷ñçóéìïðïéþíôáò ôéò åðéëïãÝò ðïõ ðáñÝ÷ïíôáé áðü ôïí äáßìïíá ôïõ
|
||
ðïíôéêéïý Äåßôå ôç óåëßäá manual &man.moused.8; ãéá ôéò
|
||
ëåðôïìÝñåéåò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="mouse-wheel-buttons">
|
||
<para>Ôï ðïíôßêé ìïõ Ý÷åé äéÜöïñá Ýîõðíá ðëÞêôñá êáé ñïäÝëá
|
||
êýëéóçò. Ìðïñþ íá ôá ÷ñçóéìïðïéÞóù óôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ç áðÜíôçóç, äõóôõ÷þò, åßíáé <quote>åîáñôÜôáé</quote>.
|
||
Ôá ðïíôßêéá ìå Ýîôñá äõíáôüôçôåò óõíÞèùò áðáéôïýí åîåéäéêåõìÝíá
|
||
ðñïãñÜììáôá ïäÞãçóçò. Áí ôï ðñüãñáììá ïäÞãçóçò ôïõ ðïíôéêéïý Þ
|
||
ôï áíôßóôïé÷ï ðñüãñáììá ôïõ ÷ñÞóôç äåí ðáñÝ÷ïõí óõãêåêñéìÝíç
|
||
õðïóôÞñéîç ãéá ôï ðïíôßêé, èá ëåéôïõñãåß ùò Ýíá áðëü ðïíôßêé äýï
|
||
Þ ôñéþí ðëÞêôñùí.</para>
|
||
|
||
<para>Ãéá ðéèáíÞ ÷ñÞóç ôçò ñïäÝëáò óå ðåñéâÜëëïí X Window, äåßôå
|
||
ôçí <link linkend="x-and-wheel">áíôßóôïé÷ç åíüôçôá</link>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="laptop-mouse-trackball">
|
||
<para>Ðùò ìðïñþ íá ÷ñçóéìïðïéÞóù ôï ðïíôßêé / trackball / touchpad
|
||
óôïí öïñçôü ìïõ õðïëïãéóôÞ;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Äåßôå ôçí <link linkend="ps2mouse">áðÜíôçóç óôçí ðñïçãïýìåíç
|
||
åñþôçóç</link>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="keyboard-delete-key">
|
||
<para>Ðùò ìðïñþ íá ÷ñçóéìïðïéÞóù ôï ðëÞêôñï delete óôï
|
||
<command>sh</command> êáé <command>csh</command>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ãéá ôï <application>ÊÝëõöïò Bourne</application>, ðñïóèÝóôå
|
||
ôéò áêüëïõèåò ãñáììÝò óôï áñ÷åßï óáò <filename>.shrc</filename>.
|
||
Äåßôå åðßóçò ôéò óåëßäåò manual &man.sh.1; êáé &man.editrc.5;.</para>
|
||
|
||
<programlisting>bind ^? ed-delete-next-char # for console
|
||
bind ^[[3~ ed-delete-next-char # for xterm</programlisting>
|
||
|
||
<para>Ãéá ôï <application>ÊÝëõöïò C</application>, ðñïóèÝóôå ôéò
|
||
áêüëïõèåò ãñáììÝò óôï áñ÷åßï óáò <filename>.cshrc</filename>.
|
||
Äåßôå åðßóçò ôç óåëßäá manual ôïõ &man.csh.1;.</para>
|
||
|
||
<programlisting>bindkey ^? delete-char # for console
|
||
bindkey ^[[3~ delete-char # for xterm</programlisting>
|
||
|
||
<para>Ãéá ðåñéóóüôåñåò ðëçñïöïñßåò, äåßôå <ulink
|
||
url="http://www.ibb.net/~anne/keyboard.html">áõôÞ ôç óåëßäá</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</sect1>
|
||
|
||
<sect1 id="compatibility-networking">
|
||
<title>ÓõóêåõÝò óåéñéáêÞò åðéêïéíùíßáò êáé Äéêôýùóçò</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="network-cards">
|
||
<para>Ðïéåò êÜñôåò äéêôýïõ õðïóôçñßæåé ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ãéá ôçí ðëÞñç ëßóôá, äåßôå ôéò Óçìåéþóåéò Õëéêïý ðïõ
|
||
ðáñÝ÷ïíôáé ìå êÜèå Ýêäïóç ôïõ &os;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="support-winmodem">
|
||
<para>Õðïóôçñßæåé ôï &os; modems ðïõ ëåéôïõñãïýí ìå ôç âïÞèåéá
|
||
ëïãéóìéêïý üðùò ôá Winmodems;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>To &os; õðïóôçñßæåé áñêåôÜ software modems ìå ôçí âïÞèåéá
|
||
åðéðñüóèåôïõ ëïãéóìéêïý. Ôï port
|
||
<filename role="package">comms/ltmdm</filename> ðñïóèÝôåé
|
||
õðïóôÞñéîç ãéá modems ðïõ âáóßæïíôáé óôï äçìïöéëÝò êýêëùìá
|
||
Lucent LT. Ôï port
|
||
<filename role="package">comms/mwavem</filename> õðïóôçñßæåé ôï
|
||
modem ðïõ äéáèÝôïõí ïé öïñçôïß õðïëïãéóôÝò Thinkpad 600 êáé 700
|
||
ôçò IBM.</para>
|
||
|
||
<para>Äåí ìðïñåßôå íá åãêáôáóôÞóåôå ôï &os; ìÝóù software modem.
|
||
Ôï ëïãéóìéêü áõôü ðñÝðåé íá åãêáôáóôáèåß ìåôÜ ôçí åãêáôÜóôáóç
|
||
ôïõ &os;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="support-broadcom">
|
||
<para>ÕðÜñ÷åé åããåíÝò ðñüãñáììá ïäÞãçóçò ãéá ôéò êÜñôåò Broadcom
|
||
43xx;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>¼÷é, êáé ìÜëëïí äåí èá õðÜñîåé.</para>
|
||
|
||
<para>Ç Broadcom áñíåßôáé íá äþóåé äçìüóéá ðëçñïöïñßåò ó÷åôéêÜ ìå
|
||
ôïí ðñïãñáììáôéóìü ôùí ïëïêëçñùìÝíùí ôçò ðïõ ÷ñçóéìïðïéïýíôáé óå
|
||
åöáñìïãÝò áóýñìáôùí äéêôýùí, ðéèáíüí åðåéäÞ êáé ôï ôìÞìá ôïõ
|
||
ðïìðïäÝêôç ôçò êÜñôáò åëÝã÷åôáé ìå ôç âïÞèåéá ëïãéóìéêïý. Ãéá
|
||
íá áðïêôÞóïõí Ýãêñéóç ãéá ôéò êÜñôåò ôïõò áðü ôï FCC, ðñÝðåé íá
|
||
åîáóöáëßóïõí üôé ïé ôåëéêïß ÷ñÞóôåò äåí èá åßíáé óå èÝóç íá
|
||
êÜíïõí ñõèìßóåéò üðùò áëëáãÞ ôçò óõ÷íüôçôáò ëåéôïõñãßáò, ôùí
|
||
ðáñáìÝôñùí äéáìüñöùóçò êáé ôçò éó÷ýïò åêðïìðÞò. ÁëëÜ ÷ùñßò ôéò
|
||
ðëçñïöïñßåò ðñïãñáììáôéóìïý, åßíáé ó÷åäüí áäýíáôï íá ãñáöåß
|
||
ðñüãñáììá ïäÞãçóçò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="multiport-serial-support">
|
||
<para>Ðïéåò êÜñôåò ðïëëáðëþí óåéñéáêþí èõñþí õðïóôçñßæïíôáé áðü
|
||
ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÕðÜñ÷åé ìéá ëßóôá ãéá áõôÝò óôçí åíüôçôá <ulink
|
||
url="&url.books.handbook;/install.html#INSTALL-MISC">äéÜöïñùí óõóêåõþí</ulink> ôïõ Åã÷åéñéäßïõ.</para>
|
||
|
||
<para>Áêüìá öáßíåôáé üôé ëåéôïõñãïýí êáé êÜðïéåò êÜñôåò ðïõ
|
||
åßíáé áíôéãñáöÝò åðþíõìùí ìïíôÝëùí, åéäéêÜ üóåò õðïóôçñßæïõí üôé
|
||
åßíáé óõìâáôÝò ìå ôéò áíôßóôïé÷åò ôéò AST.</para>
|
||
|
||
<para>Äåßôå ôç óåëßäá manual &man.sio.4; ãéá ðåñéóóüôåñåò
|
||
ðëçñïöïñßåò ó÷åôéêÜ ìå ôç ñýèìéóç ôÝôïéùí êáñôþí.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="serial-console-prompt">
|
||
<para>Ðùò ìðïñþ íá åìöáíßóù ôçí ðñïôñïðÞ boot: óå ìéá óåéñéáêÞ
|
||
êïíóüëá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<orderedlist>
|
||
<listitem>
|
||
<para>ÄçìéïõñãÞóôå ðõñÞíá ðïõ íá ðåñéÝ÷åé ôçí åðéëïãÞ
|
||
<literal>options COMCONSOLE</literal>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÄçìéïõñãÞóôå ôï <filename>/boot.config</filename> êáé
|
||
ãñÜøôå ìÝóá óå áõôü ìüíï ôçí åðéëïãÞ <option>-P</option>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÁðïóõíäÝóôå ôï ðëçêôñïëüãéï áðü ôï óýóôçìá.</para>
|
||
</listitem>
|
||
</orderedlist>
|
||
|
||
<para>Äåßôå ôï áñ÷åßï
|
||
<filename>/usr/src/sys/i386/boot/biosboot/README.serial</filename>
|
||
ãéá ðåñéóóüôåñåò ðëçñïöïñßåò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</sect1>
|
||
|
||
<sect1 id="compatibility-sound">
|
||
<title>ÓõóêåõÝò Þ÷ïõ</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="sound-card-support">
|
||
<para>Ðïéåò êÜñôåò Þ÷ïõ õðïóôçñßæïíôáé áðü ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï &os; õðïóôçñßæåé äéÜöïñåò êÜñôåò Þ÷ïõ,
|
||
óõìðåñéëáìâáíïìÝíùí ôùí &soundblaster;, &soundblaster; Pro, &soundblaster; 16, Pro Audio Spectrum 16, AdLib, êáé Gravis
|
||
UltraSound (ãéá ðåñéóóüôåñåò ðëçñïöïñßåò, äåßôå ôéò
|
||
<ulink
|
||
url="&url.base;/releases/">Ðëçñïöïñßåò ¸êäïóçò ôïõ &os;</ulink>
|
||
êáé ôç óåëßäá manual &man.snd.4;). ÕðÜñ÷åé åðßóçò ðåñéïñéóìÝíç
|
||
õðïóôÞñéîç ãéá êÜñôåò MIDI ðïõ åßíáé óõìâáôÝò ìå ôï ðñüôõðï
|
||
MPU-401. Åðßóçò õðïóôçñßæïíôáé ïé êÜñôåò ðïõ åßíáé óõìâáôÝò ìå
|
||
ôï ðñüôõðï µsoft; Sound System.</para>
|
||
|
||
<note>
|
||
<para>Ôï ðáñáðÜíù éó÷ýåé ìüíï ãéá ôïí Þ÷ï! Ôï ðñüãñáììá ïäÞãçóçò
|
||
äåí õðïóôçñßæåé ôõ÷üí CDROM, SCSI Þ joysticks ðïõ óõíäÝïíôáé
|
||
ðÜíù óå áõôÝò ôéò êÜñôåò, åêôüò áðü ôçí &soundblaster;. Áí
|
||
êáé ç äéåðáöÞ SCSI ôçò &soundblaster; êáèþò êáé êÜðïéá
|
||
ìç-SCSI CDROM õðïóôçñßæïíôáé, äåí ìðïñïýí ùóôüóï íá
|
||
÷ñçóéìïðïéçèïýí ãéá ôç äéáäéêáóßá åêêßíçóçò.</para>
|
||
</note>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="es1370-silent-pcm">
|
||
<para>ÕðÜñ÷åé êÜðïéá ëýóç ãéá ôï ðñüâëçìá ôïõ Þ÷ïõ óôçí êÜñôá ìïõ
|
||
ðïõ õðïóôçñßæåôáé áðü ôï &man.pcm.4;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÊÜðïéåò êÜñôåò Þ÷ïõ, üðùò ç es1370, ìçäåíßæïõí ôçí Ýíôáóç
|
||
ôïõ Þ÷ïõ óå êÜèå åêêßíçóç. ÐñÝðåé íá åêôåëåßôå ôçí áêüëïõèç
|
||
åíôïëÞ êÜèå öïñÜ ðïõ îåêéíÜ ôï ìç÷Üíçìá:</para>
|
||
|
||
<screen>&prompt.root; <userinput>mixer pcm 100 vol 100 cd 100</userinput></screen>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</sect1>
|
||
|
||
<sect1 id="compatibility-other">
|
||
<title>¶ëëï õëéêü</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="other-device-support">
|
||
<para>Ðïéåò Üëëåò óõóêåõÝò õðïóôçñßæïíôáé áðü ôï &os;;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Äåßôå ôï <ulink
|
||
url="&url.books.handbook;/install.html#INSTALL-MISC">Åã÷åéñßäéï</ulink> ãéá ôç ëßóôá ôùí õðüëïéðùí óõóêåõþí ðïõ õðïóôçñßæïíôáé.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="power-management-support">
|
||
<para>Õðïóôçñßæåé ôï &os; äéá÷åßñéóç åíÝñãåéáò ãéá ôï öïñçôü ìïõ
|
||
õðïëïãéóôÞ;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Áðü ôï &os; 4.X êáé ìåôÜ, õðïóôçñßæåôáé ôï
|
||
<acronym>APM</acronym> óå óõãêåêñéìÝíá ìç÷áíÞìáôá. Ðåñéóóüôåñåò
|
||
ðëçñïöïñßåò ìðïñåßôå íá âñåßôå óôï &man.apm.4;.</para>
|
||
|
||
<para>Áðü ôï &os; 5.X êáé ìåôÜ, õðïóôçñßæåôáé ç äõíáôüôçôá
|
||
<acronym>ACPI</acronym> ç ïðïßá õðÜñ÷åé óå üëïõò ôïõò óýã÷ñïíïõò
|
||
õðïëïãéóôÝò. Ìðïñåßôå íá âñåßôå ðåñéóóüôåñåò ðëçñïöïñßåò óôï
|
||
&man.acpi.4;. Áí Ýíá óýóôçìá õðïóôçñßæåé ôüóï
|
||
<acronym>APM</acronym> üóï êáé <acronym>ACPI</acronym>, ìðïñåßôå
|
||
íá ÷ñçóéìïðïéÞóåôå üðïéï èÝëåôå. Óáò óõíéóôïýìå íá äïêéìÜóåôå
|
||
êáé ôá äýï êáé íá åðéëÝîåôå áõôü ðïõ êáëýðôåé êáëýôåñá ôéò
|
||
áíÜãêåò óáò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="disable-acpi">
|
||
<para>Ðùò ìðïñþ íá áðåíåñãïðïéÞóù ôï ACPI;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÐñïóèÝóôå ôç ãñáììÞ
|
||
<screen>hint.acpi.0.disabled="1"</screen> óôï áñ÷åßï
|
||
<filename>/boot/device.hints</filename>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="micron-hang-boot">
|
||
<para>Ãéáôß ôï Micron óýóôçìá ìïõ êñåìÜåé êáôÜ ôçí åêêßíçóç;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÏñéóìÝíåò ìçôñéêÝò Micron õëïðïéïýí ôï PCI BIOS ìå ìç
|
||
ôõðïðïéçìÝíï ôñüðï, ðñïêáëþíôáò ðñïâëÞìáôá óôçí åêêßíçóç ôïõ
|
||
&os;, êáèþò ïé PCI óõóêåõÝò äåí ñõèìßæïíôáé óôéò äéåõèýíóåéò ðïõ
|
||
áíáöÝñïíôáé.</para>
|
||
|
||
<para>Ãéá íá ðáñáêÜìøåôå ôï ðñüâëçìá, áðåíåñãïðïéÞóôå ôçí åðéëïãÞ
|
||
<quote>Plug and Play Operating System</quote> áðü ôï BIOS.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="asusk7v-boot-failure">
|
||
<para>Ç äéóêÝôá åêêßíçóçò êñåìÜåé óôç ìçôñéêÞ ASUS K7V. Ðùò ìðïñþ
|
||
íá ôï äéïñèþóù áõôü;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Óôéò ñõèìßóåéò ôïõ BIOS, áðåíåñãïðïéÞóôå ôçí åðéëïãÞ
|
||
<quote>boot virus protection</quote>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="micron-3comnic-failure">
|
||
<para>Ãéáôß ç PCI êÜñôá äéêôýïõ ìïõ ôçò &tm.3com; äåí ëåéôïõñãåß
|
||
ìå ôï Micron õðïëïãéóôÞ ìïõ;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÏñéóìÝíåò ìçôñéêÝò ôçò Micron Ý÷ïõí ìç-ôõðïðïéçìÝíï PCI BIOS
|
||
ôï ïðïßï äåí ñõèìßæåé ôéò óõóêåõÝò PCI óôéò äéåõèýíóåéò ðïõ
|
||
áíáöÝñïíôáé. Áõôü äçìéïõñãåß ðñïâëÞìáôá êáôÜ ôçí åêêßíçóç ôïõ
|
||
&os;.</para>
|
||
|
||
<para>Ãéá íá ðáñáêÜìøåôå ôï ðñüâëçìá, áðåíåñãïðïéÞóôå ôçí åðéëïãÞ
|
||
<quote>Plug and Play Operating System</quote> áðü ôï
|
||
BIOS.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="newcard-does-not-work">
|
||
<para>Ç PCMCIA êÜñôá ìïõ äåí ëåéôïõñãåß. ÂëÝðù ôï åîÞò ìÞíõìá:
|
||
<quote>cbb0: unsupported card type detected.</quote>
|
||
Ôé ìðïñþ íá êÜíù;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ìðïñåßôå íá äïêéìÜóåôå íá ÷ñçóéìïðïéÞóåôå ôçí áñ÷éêÞ
|
||
õëïðïßçóç OLDCARD. ÔñïðïðïéÞóôå ôï áñ÷åßï ñýèìéóçò ôïõ ðõñÞíá
|
||
óáò, êáé áöáéñÝóôå ôéò áêüëïõèåò ãñáììÝò:
|
||
<programlisting>device cbb
|
||
device pccard
|
||
device cardbus</programlisting>
|
||
ÌåôÜ ðñïóèÝóôå:
|
||
<programlisting>device pcic
|
||
device card 1</programlisting>
|
||
Ìåôáãëùôôßóôå îáíÜ êáé åãêáôáóôÞóôå ôï íÝï ðõñÞíá üðùò
|
||
ðåñéãñÜöåôáé óôçí <ulink
|
||
url="&url.books.handbook;/kernelconfig.html">Ñýèìéóç ÐõñÞíá ôïõ &os;</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</sect1>
|
||
</chapter>
|
||
|
||
<chapter id="troubleshoot">
|
||
<title>Áíôéìåôþðéóç ÐñïâëçìÜôùí</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="pae">
|
||
<para>Ãéáôß ôï &os; âñßóêåé ëÜèïò ðïóüôçôá ìíÞìçò;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Áõôü ïöåßëåôáé óôç äéáöïñÜ ìåôáîý öõóéêþí êáé åéêïíéêþí
|
||
äéåõèýíóåùí ìíÞìçò.</para>
|
||
|
||
<para>Ç óýìâáóç ðïõ êáôÜ âÜóç áêïëïõèåßôáé óôï õëéêü ôïõ PC, åßíáé
|
||
íá ÷ñçóéìïðïéåßôáé ç ìíÞìç ìåôáîý 3.5G êáé 4G ãéá åéäéêü óêïðü,
|
||
óõíÞèùò ãéá ôçí ðñüóâáóç óå êÜñôåò PCI. Áõôü Ý÷åé ùò áðïôÝëåóìá
|
||
íá ìçí ìðïñåß íá áíôéóôïé÷çèåß öõóéêÞ ìíÞìç óå áõôÞ ôçí ðåñéï÷Þ
|
||
äéåõèýíóåùí.</para>
|
||
|
||
<para>Ôï õëéêü ôïõ õðïëïãéóôÞ óáò èá êáèïñßóåé ôé ãßíåôáé ìå ôçí
|
||
ìíÞìç ðïõ êáíïíéêÜ åìöáíßæåôáé óå áõôÞ ôç èÝóç. Äõóôõ÷þò,
|
||
óå êÜðïéåò ðåñéðôþóåéò ôï õëéêü äåí êÜíåé ôßðïôá, êáé ÷Üíåôáé ç
|
||
äõíáôüôçôá ÷ñÞóçò ôùí ôåëåõôáßùí 500Ì ìíÞìçò RAM.</para>
|
||
|
||
<para>Åõôõ÷þò, óôéò ðåñéóóüôåñåò ðåñéðôþóåéò ôï õëéêü áíáêáôåõèýíåé
|
||
ôç ìíÞìç óå õøçëüôåñç èÝóç, þóôå íá åßíáé áêüìá äõíáôÞ ç ÷ñÞóç
|
||
ôçò. Áõôü ìðïñåß ùóôüóï íá óáò ðñïêáëÝóåé êÜðïéá óýã÷õóç áí
|
||
ðáñáêïëïõèåßôå ôá ìçíýìáôá åêêßíçóçò.</para>
|
||
|
||
<para>Óôçí 32 bit Ýêäïóç ôïõ &os;, ç ìíÞìç öáßíåôáé íá Ý÷åé ÷áèåß
|
||
êáèþò áíáêáôåõèýíåôáé ðÜíù áðü ôá 4G, ôá ïðïßá äåí åßíáé
|
||
ðñïóâÜóéìá áðü 32 bit ðõñÞíá. Óôçí ðåñßðôùóç áõôÞ ç ëýóç åßíáé
|
||
íá öôéÜîåôå Ýíá ðõñÞíá ôýðïõ PAE. Äåßôå
|
||
<link linkend="memory-limits">áõôÞí ôçí êáôá÷þñçóç óôï FAQ</link>
|
||
ãéá ðåñéóóüôåñåò ðëçñïöïñßåò.</para>
|
||
|
||
<para>Óôçí 64 bit Ýêäïóç ôïõ &os;, Þ üôáí ÷ñçóéìïðïéåßôáé ðõñÞíáò
|
||
ôýðïõ PAE, ôï &os; èá áíé÷íåýóåé êáé èá áíáêáôåõèýíåé óùóôÜ ôç
|
||
ìíÞìç þóôå íá åßíáé ÷ñçóéìïðïéÞóéìç. ÊáôÜ ôçí åêêßíçóç ùóôüóï,
|
||
ìðïñåß íá öáßíåôáé üôé ôï &os; áíé÷íåýåé ðåñéóóüôåñç ìíÞìç áðü
|
||
áõôÞ ðïõ Ý÷åé óôçí ðñáãìáôéêüôçôá ôï óýóôçìá. Áõôü åßíáé
|
||
öõóéïëïãéêü êáé ç äéáèÝóéìç ìíÞìç èá äéïñèùèåß êáèþò
|
||
ïëïêëçñþíåôáé ç äéáäéêáóßá ôçò åêêßíçóçò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="awre">
|
||
<para>Ï óêëçñüò ìïõ äßóêïò Ý÷åé ÷áëáóìÝíïõò ôïìåßò. Ôé ìðïñþ íá
|
||
êÜíù;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Óôïõò äßóêïõò SCSI, ï ïäçãüò ìðïñåß óõíÞèùò íá
|
||
åðáíáôïðïèåôÞóåé áõôüìáôá ôá äåäïìÝíá óå åíáëëáêôéêïýò ôïìåßò.
|
||
Ùóôüóï ïé ðåñéóóüôåñïé äßóêïé Ýñ÷ïíôáé ìå ôçí äõíáôüôçôá áõôÞ
|
||
áðåíåñãïðïéçìÝíç.</para>
|
||
|
||
<para>Ãéá íá åíåñãïðïéÞóåôå ôçí åðáíáôïðïèÝôçóç ÷áëáóìÝíùí ôïìÝùí,
|
||
åðåîåñãáóôåßôå ôçí ðñþôç óåëßäá êáôÜóôáóçò ôçò óõóêåõÞò
|
||
(modepage), äßíïíôáò ôçí ðáñáêÜôù åíôïëÞ
|
||
(ùò <username>root</username>):</para>
|
||
|
||
<screen>&prompt.root; <userinput>camcontrol modepage sd0 -m 1 -e -P 3</userinput></screen>
|
||
|
||
<para>êáé áëëÜîôå ôéò ôéìÝò ôùí AWRE êáé ARRE áðü 0 óå 1:</para>
|
||
|
||
<programlisting>AWRE (Auto Write Reallocation Enbld): 1
|
||
ARRE (Auto Read Reallocation Enbld): 1</programlisting>
|
||
|
||
<para>Ïé óýã÷ñïíïé ïäçãïß ôýðïõ IDE Ý÷ïõí åðßóçò åíåñãïðïéçìÝíç áðü
|
||
ôï åñãïóôÜóéï ôç äõíáôüôçôá åðáíáôïðïèÝôçóçò ÷áëáóìÝíùí
|
||
ôïìÝùí.</para>
|
||
|
||
<para>Áí äåßôå ðñïåéäïðïéÞóåéò ó÷åôéêÜ ìå ÷áëáóìÝíïõò ôïìåßò
|
||
(óå ïðïéïäÞðïôå åßäïò äßóêïõ), åßíáé þñá íá óêåöôåßôå íá áëëÜîåôå
|
||
ôïí ïäçãü. ºóùò ìðïñÝóåôå íá ÷ñçóéìïðïéÞóåôå ôï äéáãíùóôéêü
|
||
ðñüãñáììá ðïõ äßíåé ï êáôáóêåõáóôÞò ôïõ äßóêïõ ãéá íá
|
||
áðïìïíþóåôå ôïõò ÷áëáóìÝíïõò ôïìåßò, áëëÜ óôçí êáëýôåñç ðåñßðôùóç
|
||
áðëþò èá êåñäßóåôå ëßãï ðåñéóóüôåñï ÷ñüíï.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="hpnetserver-scsi-failure">
|
||
<para>Ãéáôé ôï &os; äåí áíé÷íåýåé ôïí åëåãêôÞ SCSI óôïí HP Netserver;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï ðñüâëçìá áõôü åßíáé ãíùóôü. Ï åíóùìáôùìÝíïò óôç ìçôñéêÞ
|
||
åëåãêôÞò SCSI ôïõ HP Netserver, ÷ñçóéìïðïéåß óýíäåóç ôýðïõ EISA
|
||
êáé êáôáëáìâÜíåé ôç èÝóç EISA ìå áñéèìü 11. Ìå ôïí ôñüðï áõôü,
|
||
üëåò ïé <quote>ðñáãìáôéêÝò</quote> õðïäï÷Ýò ôýðïõ EISA âñßóêïíôáé
|
||
ðñéí áðü áõôÞ. Ùóôüóï, ç ðåñéï÷Þ äéåõèýíóåùí ôùí õðïäï÷þí EISA ìå
|
||
áñéèìü >= 10, óõãêñïýåôáé ìå ôçí ðåñéï÷Þ äéåõèýíóåùí ôïõ PCI,
|
||
êáé ôï &os; óôç óçìåñéíÞ ôïõ ìïñöÞ, äåí ìðïñåß íá ÷åéñéóôåß óùóôÜ
|
||
áõôÞ ôçí êáôÜóôáóç.</para>
|
||
|
||
<para>¸ôóé, ãéá ôçí þñá, ôï êáëýôåñï ðïõ ìðïñåßôå íá êÜíåôå åßíáé
|
||
íá ðáñéóôÜíåôå üôé äåí õðÜñ÷åé óýãêñïõóç äéåõèýíóåùí :) êáé íá
|
||
áíåâÜóåôå ôçí åðéëïãÞ <literal>EISA_SLOTS</literal> ôïõ ðõñÞíá
|
||
óôçí ôéìÞ 12. Ìåôáãëùôôßóôå Ýðåéôá îáíÜ ôïí ðõñÞíá, üðùò
|
||
ðåñéãñÜöåôáé óôçí <ulink
|
||
url="&url.books.handbook;/kernelconfig.html">ó÷åôéêÞ êáôá÷þñçóç ôïõ Åã÷åéñéäßïõ</ulink>.</para>
|
||
|
||
<para>ÖõóéêÜ áõôü åßíáé Ýíá ðñüâëçìá áíôßóôïé÷ï ìå ôï áõãü êáé ôçí
|
||
êüôá, üóï áöïñÜ ôçí åãêáôÜóôáóç åíüò ôÝôïéïõ ìç÷áíÞìáôïò. Ãéá
|
||
íá ðñïóðåñÜóåôå ôï ðñüâëçìá, õðÜñ÷åé åéäéêÞ ðñüâëåøç óôï
|
||
<emphasis>UserConfig</emphasis>. Ìç ÷ñçóéìïðïéÞóåôå ôï
|
||
<quote>visual</quote> interface, áëëÜ ôçí ãñáììÞ åíôïëþí.
|
||
Áðëþò ãñÜøôå:</para>
|
||
|
||
<programlisting>eisa 12
|
||
quit</programlisting>
|
||
|
||
<para>óôçí ðñïôñïðÞ, êáé åãêáôáóôÞóôå ôï óýóôçìá óáò üðùò óõíÞèùò.
|
||
Óáò óõíéóôïýìå ùóôüóï íá ìåôáãëùôôßóåôå êáé íá åãêáôáóôÞóåôå
|
||
ôï äéêü óáò ðñïóáñìïóìÝíï ðõñÞíá.</para>
|
||
|
||
<para>Åõåëðéóôïýìå üôé óå ìåëëïíôéêÝò åêäüóåéò, èá õðÜñ÷åé êáëýôåñç
|
||
äéüñèùóç ãéá ôï ðñüâëçìá áõôü.</para>
|
||
|
||
<note>
|
||
<para>Äåí ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå äßóêï óå êáôÜóôáóç
|
||
<literal>dangerously dedicated (åðéêßíäõíá áöïóéùìÝíç)
|
||
</literal> ìå ôïí HP Netserver. Äåßôå
|
||
<link linkend="dedicate">áõôÞ ôç óçìåßùóç</link> ãéá
|
||
ðåñéóóüôåñåò ðëçñïöïñßåò.</para>
|
||
</note>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ed1-timeout">
|
||
<para>ÂëÝðù óõíÝ÷åéá ìçíýìáôá ôïõ ôýðïõ
|
||
<errorname>ed1: timeout</errorname>. Ôé óçìáßíïõí;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôá ìçíýìáôá áõôÜ ðñïêáëïýíôáé óõíÞèùò áðü äéåíÝîåéò óôá
|
||
interrupts (ð.÷. äýï êÜñôåò ðïõ ÷ñçóéìïðïéïýí ôï ßäéï IRQ).
|
||
ÅêêéíÞóôå ìå ôçí åðéëïãÞ -c êáé áëëÜîôå ôçí êáôá÷þñçóç
|
||
ed0/de0/... þóôå íá óõìâáäßæåé ìå ôï õëéêü óáò.</para>
|
||
|
||
<para>Áí ÷ñçóéìïðïéåßôå ôçí óýíäåóç BNC ôçò êÜñôáò äéêôýïõ óáò,
|
||
ßóùò íá äåßôå åðßóçò áíôßóôïé÷á ìçíýìáôá óå ðåñßðôùóç
|
||
ðñïâëçìáôéêïý ôåñìáôéóìïý. Ãéá íá åëÝãîåôå ôçí ðåñßðôùóç áõôÞ,
|
||
óõíäÝóôå Ýíá ôåñìáôéóôÞ áðåõèåßáò óôçí êÜñôá (÷ùñßò êáëþäéï) êáé
|
||
äåßôå áí óôáìáôÞóïõí ôá ìçíýìáôá.</para>
|
||
|
||
<para>ÊÜðïéåò êÜñôåò óõìâáôÝò ìå NE2000, äßíïõí áõôü ôï ìÞíõìá áí
|
||
äåí õðÜñ÷åé óýíäåóç óôç èýñá UTP Þ áí ôï êáëþäéï åßíáé
|
||
áðïóõíäåìÝíï.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="bad-3c509">
|
||
<para>Ãéáôß óôáìÜôçóå íá ëåéôïõñãåß ç êÜñôá ìïõ &tm.3com; 3C509
|
||
÷ùñßò íá õðÜñ÷åé åìöáíÞò ëüãïò;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ç êÜñôá áõôÞ Ý÷åé ôçí êáêÞ óõíÞèåéá íá ÷Üíåé ôéò ñõèìßóåéò
|
||
ôçò. Áíáíåþóôå ôéò, ÷ñçóéìïðïéþíôáò ôï âïçèçôéêü ðñüãñáììá DOS
|
||
<command>3c5x9.exe</command>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="printer-slow">
|
||
<para>Ï åêôõðùôÞò ìïõ óôçí ðáñÜëëçëç èýñá åßíáé áðåëðéóôéêÜ áñãüò.
|
||
Ôé ìðïñþ íá êÜíù;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Áí ôï ìüíï ðñüâëçìá åßíáé ï õðåñâïëéêÜ áñãüò åêôõðùôÞò,
|
||
ìðïñåßôå íá äïêéìÜóåôå íá áëëÜîåôå ôçí <ulink
|
||
url="&url.books.handbook;/printing-intro-setup.html#PRINTING-PARALLEL-PORT-MODE">êáôÜóôáóç ëåéôïõñãßáò ôçò ðáñÜëëçëçò èýñáò</ulink>
|
||
üðùò ðåñéãñÜöåôáé óôï êåöÜëáéï ôïõ Åã÷åéñéäßïõ ó÷åôéêÜ ìå
|
||
ôçí <ulink
|
||
url="&url.books.handbook;/printing-intro-setup.html">ÅãêáôÜóôáóç ÅêôõðùôÞ</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="signal11">
|
||
<para>Ãéáôß ôá ðñïãñÜììáôá ìïõ ðåñéóôáóéáêÜ ôåñìáôßæïõí ìå óöÜëìá
|
||
<errorname>Signal 11</errorname>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôá óöÜëìáôá ôýðïõ Signal 11 äçìéïõñãïýíôáé üôáí ìéá äéåñãáóßá
|
||
ðñïóðáèåß íá ðñïóðåëÜóåé ðåñéï÷Þ ìíÞìçò ãéá ôçí ïðïßá äåí Ý÷åé
|
||
ðÜñåé Üäåéá áðü ôï ëåéôïõñãéêü óýóôçìá. Áí óõìâáßíåé êÜôé ôÝôïéï
|
||
óå öáéíïìåíéêÜ ôõ÷áßá ÷ñïíéêÜ äéáóôÞìáôá, èá ðñÝðåé íá áñ÷ßóåôå íá
|
||
ôï åñåõíÜôå ðïëý ðñïóåêôéêÜ.</para>
|
||
|
||
<para>Ôá ðñïâëÞìáôá áõôÜ óõíÞèùò ïöåßëïíôáé óå êÜðïéïí áðü ôïõò
|
||
ðáñáêÜôù ëüãïõò:</para>
|
||
|
||
<orderedlist>
|
||
<listitem>
|
||
<para>Áí ôï ðñüâëçìá åìöáíßæåôáé ìüíï óå ìéá óõãêåêñéìÝíç
|
||
åöáñìïãÞ ôçí ïðïßá áíáðôýóóåôå åóåßò, åßíáé ðéèáíþò
|
||
ëÜèïò óôïí äéêü óáò êþäéêá.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Áí ôï ðñüâëçìá âñßóêåôáé óå ôìÞìá ôïõ âáóéêïý óõóôÞìáôïò
|
||
ôïõ &os;, ìðïñåß åðßóçò íá åßíáé ðñïâëçìáôéêüò êþäéêáò, áëëÜ
|
||
ôéò ðåñéóóüôåñåò öïñÝò, ôá ðñïâëÞìáôá áõôÜ âñßóêïíôáé êáé
|
||
äéïñèþíïíôáé ðñéí äéáíåìçèïýí óôïõò ðåñéóóüôåñïõò áðü åóÜò
|
||
ðïõ äéáâÜæåôå ôï FAQ (ãéá ôï ëüãï áõôü Üëëùóôå õðÜñ÷åé êáé ç
|
||
ãñáììÞ áíÜðôõîçò -current).</para>
|
||
</listitem>
|
||
</orderedlist>
|
||
|
||
<para>Ãéá ðáñÜäåéãìá, Ýíáò ãñÞãïñïò ôñüðïò íá äéáðéóôþóåôå üôé
|
||
<emphasis>äåí</emphasis> ðñüêåéôáé ãéá ðñüâëçìá ôïõ &os;, åßíáé
|
||
áí ôï ðñüâëçìá åìöáíßæåôáé êáôÜ ôç ìåôáãëþôôéóç êÜðïéïõ
|
||
ðñïãñÜììáôïò, áëëÜ êÜèå öïñÜ êáé óå äéáöïñåôéêü óçìåßï.</para>
|
||
|
||
<para>Ãéá ðáñÜäåéãìá, õðïèÝóôå üôé åêôåëåßôå Ýíá <quote>make
|
||
buildworld</quote>, êáé ç ìåôáãëþôôéóç áðïôõã÷Üíåé êáôÜ ôçí
|
||
åðåîåñãáóßá ôïõ áñ÷åßïõ <filename>ls.c</filename> óå
|
||
<filename>ls.o</filename>. Áí åêôåëÝóåôå îáíÜ <quote>make
|
||
buildworld</quote>, êáé ç ìåôáãëþôôéóç óôáìáôÞóåé óôï ßäéï óçìåßï,
|
||
ðñüêåéôáé ðñÜãìáôé ãéá ðñüâëçìá óôá áñ÷åßá ôïõ build -- äïêéìÜóôå
|
||
íá áíáíåþóåôå ôïí ðçãáßï êþäéêá êáé íá îáíáðñïóðáèÞóåôå. Áí ç
|
||
ìåôáãëþôôéóç áðïôõã÷Üíåé áëëïý, áõôü ó÷åäüí óßãïõñá ïöåßëåôáé óå
|
||
ðñïâëçìáôéêü õëéêü.</para>
|
||
|
||
<para>Ôé ðñÝðåé íá êÜíåôå:</para>
|
||
|
||
<para>Óôçí ðñþôç ðåñßðôùóç ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå êÜðïéï
|
||
debugger üðùò ôï gdb ãéá íá âñåßôå ôï óçìåßï óôï ðñüãñáììá ìå ôçí
|
||
ðñïâëçìáôéêÞ äéåýèõíóç êáé íá ôï äéïñèþóåôå.</para>
|
||
|
||
<para>Óôç äåýôåñç ðåñßðôùóç, èá ðñÝðåé íá åðáëçèåýóåôå üôé äåí
|
||
öôáßåé ôï õëéêü óáò.</para>
|
||
|
||
<para>Óôéò óõíçèéóìÝíåò áéôßåò áõôïý ôïõ ðñïâëÞìáôïò,
|
||
ðåñéëáìâÜíïíôáé:</para>
|
||
|
||
<orderedlist>
|
||
<listitem>
|
||
<para>Ïé óêëçñïß óáò äßóêïé ìðïñåß íá õðåñèåñìáßíïíôáé. ÅëÝãîôå
|
||
üôé ëåéôïõñãïýí ïé áíåìéóôÞñåò óôï êïõôß óáò. Áí äåí
|
||
ëåéôïõñãïýí, åßíáé ðéèáíü ïé äßóêïé óáò (êáé ßóùò êáé Üëëá
|
||
åîáñôÞìáôá) íá õðåñèåñìáßíïíôáé.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Ï åðåîåñãáóôÞò óáò Ý÷åé õðåñèåñìáíèåß: Áõôü ìðïñåß íá
|
||
óõìâåß óå ðåñßðôùóç ðïõ ôïí ëåéôïõñãåßôå óå ìåãáëýôåñç
|
||
óõ÷íüôçôá áðü ôçí êáíïíéêÞ (overclocking) Þ áí ôï áíåìéóôçñÜêé
|
||
ôïõ åðåîåñãáóôÞ Ý÷åé óôáìáôÞóåé íá ëåéôïõñãåß. Óå êÜèå
|
||
ðåñßðôùóç, èá ðñÝðåé íá åîáóöáëßóåôå üôé ÷ñçóéìïðïéåßôå ôï
|
||
õëéêü óáò óýìöùíá ìå ôéò ðñïäéáãñáöÝò ôïõ, ôïõëÜ÷éóôïí ãéá
|
||
üóï äéÜóôçìá ÷ñåéÜæåôáé ãéá íá åðéëýóåôå ôï ðñüâëçìá. Ãéá
|
||
ðáñÜäåéãìá, áí Ý÷åôå êÜíåé overclocking, åðéóôñÝøôå ôïí
|
||
åðåîåñãáóôÞ óôçí êáíïíéêÞ ôïõ óõ÷íüôçôá.</para>
|
||
|
||
<para>Ó÷åôéêÜ ìå ôï overclocking, óçìåéþóôå åðßóçò üôé åßíáé
|
||
öôçíüôåñï íá Ý÷åôå Ýíá ðéï áñãü óýóôçìá áðü Ýíá êáôåóôñáììÝíï
|
||
ðïõ ÷ñåéÜæåôáé áíôéêáôÜóôáóç! Åðßóçò ç êïéíüôçôá ãåíéêÜ äåí
|
||
èá óáò áíôéìåôùðßóåé ìå êáôáíüçóç áí áíáöÝñåôå ðñïâëÞìáôá ðïõ
|
||
ðáñïõóéÜæïíôáé óå óõóôÞìáôá ðïõ ëåéôïõñãïýí åêôüò
|
||
ðñïäéáãñáöþí, åßôå åóåßò ðéóôåýåôå üôé ç ëåéôïõñãßá ôïõò
|
||
åßíáé áóöáëÞò, åßôå ü÷é.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÐñïâëçìáôéêÞ ìíÞìç: Áí Ý÷åôå åãêáôåóôçìÝíá ðåñéóóüôåñá
|
||
áðü Ýíá SIMMS / DIMMS, áöáéñÝóôå ôá êáé ðñïóðáèÞóôå íá
|
||
ëåéôïõñãÞóåôå ôï ìç÷Üíçìá ìå Ýíá-Ýíá ÷ùñéóôÜ þóôå íá
|
||
åíôïðßóåôå ôï ðñüâëçìá óå åðßðåäï åíüò SIMM / DIMM, Þ ßóùò óå
|
||
Ýíá óõíäõáóìü ôïõò.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Õðåñ-áéóéüäïîåò ñõèìßóåéò ìçôñéêÞò: Óôéò ñõèìßóåéò ôïõ
|
||
BIOS, êáé óå êÜðïéåò ðåñéðôþóåéò óå ñõèìßóåéò óôç ìçôñéêÞ
|
||
ìÝóù âñá÷õêõêëùôÞñùí (jumpers), õðÜñ÷åé ç äõíáôüôçôá ìåôáâïëÞò
|
||
äéÜöïñùí ÷ñïíéóìþí. Óôéò ðåñéóóüôåñåò ðåñéðôþóåéò ïé
|
||
ðñïåðéëåãìÝíåò ñõèìßóåéò åßíáé åðáñêåßò, êáé ßóùò
|
||
äçìéïõñãÞóåôå ðñïâëÞìáôá áí ñõèìßóåôå ðïëý ÷áìçëÜ ôéò
|
||
êáôáóôÜóåéò áíáìïíÞò (wait states) ôçò RAM Þ èÝóåôå óôï BIOS
|
||
ôçí åðéëïãÞ <quote>RAM Speed: Turbo</quote>. Ìéá êáëÞ éäÝá
|
||
åßíáé íá åðéóôñÝøåôå ôéò ñõèìßóåéò ôïõ BIOS óôéò
|
||
ðñïåðéëåãìÝíåò, áëëÜ ðñéí ôï êÜíåôå, óçìåéþóôå êÜðïõ ôéò
|
||
äéêÝò óáò.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÁíåðáñêÞò Þ êáêÞò ðïéüôçôáò ôñïöïäïóßá óôç ìçôñéêÞ. Áí
|
||
Ý÷åôå êÜñôåò I/O, óêëçñïýò äßóêïõò Þ CDROM óôï óýóôçìá óáò
|
||
ðïõ äåí ÷ñçóéìïðïéåßôå, äïêéìÜóôå íá ôá áöáéñÝóåôå Þ íá
|
||
áðïóõíäÝóåôå ðñïóùñéíÜ ôçí ðáñï÷Þ ôñïöïäïóßáò ôïõò, ãéá íá
|
||
äéáðéóôþóåôå áí ôï ôñïöïäïôéêü óáò ìðïñåß íá äéá÷åéñéóôåß
|
||
ìéêñüôåñï öïñôßï. ¹ áðëþò äïêéìÜóôå Ýíá Üëëï ôñïöïäïôéêü,
|
||
êáôÜ ðñïôßìçóç Ýíá ìå ëßãï ìåãáëýôåñç éó÷ý (ãéá ðáñÜäåéãìá
|
||
áí ôï ôñÝ÷ïí óáò ôñïöïäïôéêü åßíáé ïíïìáóôéêÞò éó÷ýïò 250W,
|
||
äïêéìÜóôå Ýíá éó÷ýïò 300W).</para>
|
||
</listitem>
|
||
</orderedlist>
|
||
|
||
<para>Èá ðñÝðåé åðßóçò íá äéáâÜóåôå ôï SIG11 FAQ (ôï ïðïßï öáßíåôáé
|
||
ðáñáêÜôù) ôï ïðïßï ðåñéëáìâÜíåé åîáéñåôéêÝò åðåîçãÞóåéò ãéá üëá
|
||
áõôÜ ôá ðñïâëÞìáôá, áí êáé ðïëëÝò áðü áõôÝò åßíáé ãñáììÝíåò áðü
|
||
ôçí óêïðéÜ ôïõ &linux;. ¸íá åíäéáöÝñïí ôìÞìá ôïõ SIG11 FAQ åßíáé
|
||
êáé áõôü ðïõ áíáöÝñåôáé óôçí ðéèáíüôçôá íá ìçí áíé÷íåýåôáé
|
||
ðñïâëçìáôéêÞ ìíÞìç áðü äéáãíùóôéêÜ ðñïãñÜììáôá Þ óõóêåõÝò
|
||
åëÝã÷ïõ.</para>
|
||
|
||
<para>ÔÝëïò, áí ôßðïôá áðü ôá ðáñáðÜíù äåí âïçèÞóåé, åßíáé ðéèáíüí
|
||
íá Ý÷åôå åíôïðßóåé Ýíá ðñüâëçìá (bug) óôï &os; êáé èá ðñÝðåé íá
|
||
áêïëïõèÞóåôå ôéò ïäçãßåò ãéá íá óôåßëåôå áíáöïñÜ
|
||
ðñïâëÞìáôïò.</para>
|
||
|
||
<para>Ìðïñåßôå íá âñåßôå åêôåôáìÝíç áíÜëõóç óôï <ulink
|
||
url="http://www.bitwizard.nl/sig11/">FAQ ó÷åôéêÜ ìå ôï ðñüâëçìá SIG11.</ulink></para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="trap-12-panic">
|
||
<para>Ôï óýóôçìá ìïõ óôáìáôÜåé åßôå ìå <errorname>Fatal
|
||
trap 12: page fault in kernel mode</errorname>, Þ ìå
|
||
<errorname>panic:</errorname>, äåß÷íïíôáò êáé ìéá óåéñÜ áðü
|
||
ðëçñïöïñßåò. Ôé ðñÝðåé íá êÜíù;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ç ïìÜäá áíÜðôõîçò ôïõ &os; åíäéáöÝñåôáé éäéáßôåñá ãéá áõôÜ
|
||
ôá ëÜèç, áëëÜ ÷ñåéÜæåôáé ðåñéóóüôåñåò ðëçñïöïñßåò åêôüò áðü ôï
|
||
ìÞíõìá ëÜèïõò ðïõ âëÝðåôå. ÁíôéãñÜøôå ôï ðëÞñåò ìÞíõìá êáé
|
||
Ýðåéôá óõìâïõëåõèåßôå ôçí åíüôçôá ôïõ FAQ ó÷åôéêÜ ìå ôá
|
||
<link linkend= "kernel-panic-troubleshooting">kernel
|
||
panics</link>, äçìéïõñãÞóôå Ýíá ðõñÞíá ìå äõíáôüôçôá
|
||
åêóöáëìÜôùóçò (debugging kernel) êáé åêôåëÝóôå Ýíá backtrace.
|
||
Áõôü ìðïñåß íá áêïýãåôáé äýóêïëï, áëëÜ äåí ÷ñåéÜæåóôå óôçí
|
||
ðñáãìáôéêüôçôá ãíþóåéò ðñïãñáììáôéóìïý. Áñêåß íá áêïëïõèÞóåôå
|
||
ôéò ïäçãßåò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="screen-loses-sync">
|
||
<para>Ãéáôß ç ïèüíç ìïõ ìáõñßæåé êáé ÷Üíåé ôï óõã÷ñïíéóìü ôçò êáôÜ
|
||
ôçí åêêßíçóç;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ðñüêåéôáé ãéá ãíùóôü ðñüâëçìá ìå ôçí êÜñôá ãñáöéêþí ATI
|
||
Mach64. Ôï ðñüâëçìá åßíáé üôé ç êÜñôá áõôÞ ÷ñçóéìïðïéåß ôçí
|
||
äéåýèõíóç <literal>2e8</literal>, ç ïðïßá ÷ñçóéìïðïéåßôáé åðßóçò
|
||
êáé áðü ôçí ôÝôáñôç óåéñéáêÞ èýñá. Ëüãù êÜðïéïõ ðñïâëÞìáôïò
|
||
(Þ ôçò ó÷åäßáóçò) ôïõ ðñïãñÜììáôïò ïäÞãçóçò &man.sio.4;, ôï
|
||
ðñüãñáììá ü÷é ìüíï èá ðñïóðáèÞóåé íá áíé÷íåýóåé áõôÞ ôç
|
||
äéåýèõíóç áêüìá êáé áí äåí Ý÷åôå ôÝôáñôç óåéñéáêÞ èýñá, áëëÜ
|
||
<emphasis>áêüìá</emphasis> êáé óôçí ðåñßðôùóç ðïõ Ý÷åôå
|
||
áðåíåñãïðïéÞóåé ôç óåéñéáêÞ èýñá sio3 (äçë. ôçí ôÝôáñôç) ç
|
||
ïðïßá öõóéïëïãéêÜ ÷ñçóéìïðïéåß áõôÞ ôç äéåýèõíóç.</para>
|
||
|
||
<para>ÌÝ÷ñé íá äéïñèùèåß ôï ðñüâëçìá áõôü, ìðïñåßôå íá
|
||
÷ñçóéìïðïéÞóåôå ôï ðáñáêÜôù ôÝ÷íáóìá ãéá íá ôï ðáñáêÜìøåôå:</para>
|
||
|
||
<orderedlist>
|
||
<listitem>
|
||
<para>ÃñÜøôå <option>-c</option> óôçí ðñïôñïðÞ åêêßíçóçò.
|
||
(Ìå ôïí ôñüðï áõôü èá âÜëåôå ôïí ðõñÞíá óå êáôÜóôáóç
|
||
ñýèìéóçò).</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÁðåíåñãïðïéÞóôå ôéò <devicename>sio0</devicename>,
|
||
<devicename>sio1</devicename>,
|
||
<devicename>sio2</devicename> êáé
|
||
<devicename>sio3</devicename> (üëåò). Ìå ôïí ôñüðï áõôü
|
||
ôï ðñüãñáììá ïäÞãçóçò äåí åíåñãïðïéåßôáé êáí, Üñá äåí
|
||
äçìéïõñãåßôáé ðñüâëçìá.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÃñÜøôå exit ãéá íá óõíå÷ßóåôå ôçí åêêßíçóç.</para>
|
||
</listitem>
|
||
</orderedlist>
|
||
|
||
<para>Áí èÝëåôå íá ÷ñçóéìïðïéÞóåôå ôéò óåéñéáêÝò èýñåò, èá ðñÝðåé íá
|
||
äçìéïõñãÞóåôå íÝï ðõñÞíá, ìå ôçí áêüëïõèç ìåôáôñïðÞ: Óôï áñ÷åßï
|
||
<filename>/usr/src/sys/i386/isa/sio.c</filename> âñåßôå ôï ðñþôï
|
||
óçìåßï ðïõ åìöáíßæåôáé ôï áëöáñéèìçôéêü <literal>0x2e8</literal>
|
||
êáé áöáéñÝóôå áõôü ôï áëöáñéèìçôéêü êáé ôï êüììá ðïõ âñßóêåôáé
|
||
ðñéí áðü áõôü (êñáôÞóôå ôï êüììá ðïõ âñßóêåôáé ìåôÜ). ÁêïëïõèÞóôå
|
||
ôþñá ôç óõíçèéóìÝíç äéáäéêáóßá äçìéïõñãßáò íÝïõ ðõñÞíá.</para>
|
||
|
||
<para>Áêüìá êáé ìåôÜ ôçí åöáñìïãÞ áõôþí ôùí äéïñèþóåùí, ßóùò
|
||
áíáêáëýøåôå üôé ôï óýóôçìá X Window äåí ëåéôïõñãåß óùóôÜ. Áí
|
||
óõìâáßíåé áõôü, âåâáéùèåßôå üôé ÷ñçóéìïðïéåßôå Ýêäïóç 3.3.3 Þ
|
||
ìåãáëýôåñç ôïõ &xfree86;. Áðü ôçí Ýêäïóç áõôÞ êáé ìåôÜ, õðÜñ÷åé
|
||
åíóùìáôùìÝíç õðïóôÞñéîç ãéá êÜñôåò Mach64 êáé åðßóçò äéáôßèåôáé
|
||
åîåéäéêåõìÝíïò åîõðçñåôçôÞò X ãéá ôçí êÜñôá áõôÞ.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="reallybigram">
|
||
<para>Ãéáôß ôï &os; óýóôçìá ìïõ ÷ñçóéìïðïéåß ìüíï 64MB RAM, åíþ ï
|
||
õðïëïãéóôÞò ìïõ Ý÷åé åãêáôåóôçìÝíá 128MB;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Åîáéôßáò ôïõ ôñüðïõ ìå ôïí ïðïßï ôï &os; äéáâÜæåé ôï ìÝãåèïò
|
||
ôçò ìíÞìçò áðü ôï BIOS, ìðïñåß íá áíé÷íåýóåé ìüíï 16 bits ìÝãåèïò
|
||
óå Kbytes (65536 Kbytes = 64MB) (Þ êáé ëéãüôåñï... ïñéóìÝíá BIOS
|
||
äßíïõí ðñïêáèïñéóìÝíï ìÝãåèïò ìíÞìçò 16Ì). Áí Ý÷åôå ðåñéóóüôåñá
|
||
áðü 64MB, ôï &os; èá ðñïóðáèÞóåé íá ôá áíé÷íåýóåé. Ç áíß÷íåõóç
|
||
ùóôüóï ìðïñåß íá áðïôý÷åé.</para>
|
||
|
||
<para>Ãéá íá ðáñáêÜìøåôå ôï ðñüâëçìá, èá ðñÝðåé íá ÷ñçóéìïðïéÞóåôå
|
||
ôçí åðéëïãÞ ôïõ ðõñÞíá ðïõ öáßíåôáé ðáñáêÜôù. ÕðÜñ÷åé ôñüðïò íá
|
||
ëçöèïýí ðëÞñåéò ðëçñïöïñßåò ó÷åôéêÜ ìå ôç ìíÞìç áðü ôï BIOS, áëëÜ
|
||
óôï bootblock äåí õðÜñ÷åé áñêåôüò ÷þñïò ãéá íá ãßíåé áõôü. ÊÜðïéá
|
||
ìÝñá, üôáí äéïñèùèåß ôï ðñüâëçìá ôçò Ýëëåéøçò ÷þñïõ óôá
|
||
bootblocks, èá ÷ñçóéìïðïéÞóïõìå ôéò åêôåôáìÝíåò ëåéôïõñãßåò ôïõ
|
||
BIOS ãéá íá áíáêôÞóïõìå ðëÞñåéò ðëçñïöïñßåò ó÷åôéêÜ ìå ôç ìíÞìç.
|
||
Ãéá ôçí þñá, ðñÝðåé íá ðåñéïñéóôïýìå óôçí ñýèìéóç ôçò áíôßóôïé÷çò
|
||
åðéëïãÞò ôïõ ðõñÞíá.</para>
|
||
|
||
<para><literal>options "MAXMEM=<replaceable>n</replaceable>"</literal></para>
|
||
|
||
<para>¼ðïõ ôï <replaceable>n</replaceable> åßíáé ôï ìÝãåèïò ôçò
|
||
ìíÞìçò óå kilobytes. Ãéá ìç÷Üíçìá ìå 128 MB, èá ðñÝðåé íá
|
||
÷ñçóéìïðïéÞóåôå ôï <literal>131072</literal>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="kmem-map-too-small">
|
||
<para>Ôï óýóôçìá ìïõ Ý÷åé ðåñéóóüôåñï áðü 1 GB RAM, êáé ðáßñíù
|
||
panics ìå ìçíýìáôá <quote>kmem_map too small</quote>. Ðïõ åßíáé
|
||
ôï ðñüâëçìá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÖõóéïëïãéêÜ, ôï &os; ÷ñçóéìïðïéåß ôï ìÝãåèïò ôçò
|
||
åãêáôåóôçìÝíçò ìíÞìçò ãéá íá êáèïñßóåé ìéá óåéñÜ áðü ðáñáìÝôñïõò
|
||
ôïõ ðõñÞíá, üðùò ôï ìÝãéóôï áñéèìü áñ÷åßùí ðïõ ìðïñåß íá åßíáé
|
||
ôáõôü÷ñïíá áíïé÷ôÜ. Óå óõóôÞìáôá ìå ðåñéóóüôåñç áðü 1GB ìíÞìç,
|
||
áõôüò ï ìç÷áíéóìüò <quote>áõôüìáôçò ñýèìéóçò ìåãåèþí</quote> ßóùò
|
||
åðéëÝîåé ôéìÝò ïé ïðïßåò íá åßíáé ðïëý õøçëÝò. ÊáôÜ ôçí åêêßíçóç,
|
||
ï ðõñÞíáò åê÷ùñåß äéÜöïñïõò ðßíáêåò êáé Üëëåò äïìÝò, ïé ïðïßåò
|
||
êáôáëáìâÜíïõí ôïí ðåñéóóüôåñï äéáèÝóéìï ÷þñï ôïõ. Áñãüôåñá,
|
||
êáèþò ôï óýóôçìá ëåéôïõñãåß, ï ðõñÞíáò äåí Ý÷åé Üëëï ÷þñï ãéá
|
||
äõíáìéêÝò åê÷ùñÞóåéò ìíÞìçò, êáé äçìéïõñãåßôáé panic.</para>
|
||
|
||
<para>ÄçìéïõñãÞóôå ôï äéêü óáò ðõñÞíá, êáé ðñïóèÝóôå ôçí åðéëïãÞ
|
||
<option>VM_KMEM_SIZE_MAX</option> óôï áñ÷åßï ñõèìßóåùí ôïõ, þóôå
|
||
íá áõîÞóåôå ôï ìÝãéóôï ìÝãåèïò óå 400 MB
|
||
(<option>options VM_KMEM_SIZE_MAX=419430400</option>).
|
||
Ôá 400 MB öáßíåôáé íá åðáñêïýí ãéá ìç÷áíÞìáôá ìå ìÝãåèïò
|
||
ìíÞìçò ùò 6 GB.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="panic-kmemmap-too-small">
|
||
<para>Ôï óýóôçìá ìïõ äåí Ý÷åé 1GB RAM, êáé ðÜëé üìùò ôï &os;
|
||
äçìéïõñãåß panic ìå ôï ìÞíõìá
|
||
<errorname>kmem_map too small!</errorname></para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï panic äåß÷íåé üôé ôï óýóôçìá Ý÷åé ìåßíåé áðü åéêïíéêÞ ìíÞìç
|
||
ãéá ðñïóùñéíÞ áðïèÞêåõóç äåäïìÝíùí äéêôýïõ (network
|
||
buffers, êáé åéäéêüôåñá mbuf clusters). Ìðïñåßôå íá áõîÞóåôå ôï
|
||
ìÝãåèïò ôçò åéêïíéêÞò ìíÞìçò ðïõ äéáôßèåôáé ãéá mbuf clusters,
|
||
áêïëïõèþíôáò ôéò ïäçãßåò óôçí åíüôçôá <ulink
|
||
url="&url.books.handbook;/configtuning-kernel-limits.html#NMBCLUSTERS">¼ñéá Äéêôýïõ</ulink> ôïõ Åã÷åéñéäßïõ.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="proc-table-full">
|
||
<para>Ãéáôß ðáßñíù ôï ìÞíõìá ëÜèïõò <errorname>/kernel: proc: table
|
||
is full</errorname>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ï ðõñÞíáò ôïõ &os; åðéôñÝðåé êÜèå ÷ñïíéêÞ óôéãìÞ ôçí ýðáñîç
|
||
åíüò óõãêåêñéìÝíïõ áñéèìïý äéåñãáóéþí. Ï áñéèìüò áõôüò âáóßæåôáé
|
||
óôçí åðéëïãÞ <literal>MAXUSERS</literal> ôïõ ðõñÞíá. Ôï
|
||
<literal>MAXUSERS</literal> åðçñåÜæåé åðßóçò êáé Üëëá üñéá ìÝóá
|
||
óôïí ðõñÞíá, üðùò ç ðñïóùñéíÞ ìíÞìç ôïõ äéêôýïõ (network buffers)
|
||
(äåßôå <link linkend="panic-kmemmap-too-small">ôçí
|
||
ðñïçãïýìåíç åñþôçóç</link>). Áí ôï ìç÷Üíçìá óáò ëåéôïõñãåß óå
|
||
õøçëü öïñôßï, ßóùò Ý÷åé íüçìá íá áõîÞóåôå ôçí åðéëïãÞ
|
||
<literal>MAXUSERS</literal>. Ìå ôïí ôñüðï áõôü, ìáæß ìå ôï
|
||
ìÝãéóôï áñéèìü äéåñãáóéþí, èá áõîçèïýí êáé Üëëá üñéá ôïõ
|
||
óõóôÞìáôïò.</para>
|
||
|
||
<para>Ãéá íá ñõèìßóåôå ôçí ôéìÞ ôïõ <literal>MAXUSERS</literal>,
|
||
äåßôå ôçí åíüôçôá <ulink
|
||
url="&url.books.handbook;/configtuning-kernel-limits.html#KERN-MAXFILES">¼ñéá Áñ÷åßùí/Äéåñãáóéþí</ulink> ôïõ Åã÷åéñéäßïõ. (Áí êáé ç åíüôçôá
|
||
áõôÞ áíáöÝñåôáé óå áíïé÷ôÜ áñ÷åßá, ôá ßäéá üñéá éó÷ýïõí êáé ãéá
|
||
ôéò äéåñãáóßåò.)</para>
|
||
|
||
<para>Áí ôï ìç÷Üíçìá óáò ëåéôïõñãåß óå ÷áìçëü öïñôßï, áëëÜ åêôåëåß
|
||
ìåãÜëï áñéèìü äéåñãáóéþí, ìðïñåßôå áðëþò íá ñõèìßóåôå ôïí áñéèìü
|
||
ôïõò áëëÜæïíôáò ôçí ôéìÞ ôçò ìåôáâëçôÞò
|
||
<varname>kern.maxproc</varname>. Áí ðñÝðåé íá ñõèìßóåôå áõôÞ ôç
|
||
ìåôáâëçôÞ, èá ðñÝðåé íá ôçí ïñßóåôå óôï áñ÷åßï
|
||
<filename>/boot/loader.conf</filename>. Ç ñýèìéóç äåí èá éó÷ýóåé
|
||
ìÝ÷ñé íá åðáíåêêéíÞóåôå ôï óýóôçìá. Ãéá ðåñéóóüôåñåò ðëçñïöïñßåò
|
||
ó÷åôéêÜ ìå ôéò ìåôáâëçôÝò ôïõ ðõñÞíá, äåßôå ôéò óåëßäåò manual
|
||
&man.loader.conf.5; êáé &man.sysctl.conf.5;. Áí üëåò áõôÝò ïé
|
||
äéåñãáóßåò åêôåëïýíôáé áðü Ýíá ìüíï ÷ñÞóôç, èá ðñÝðåé åðßóçò íá
|
||
ñõèìßóåôå ôçí ôéìÞ ôçò ìåôáâëçôÞò
|
||
<varname>kern.maxprocperuid</varname> þóôå íá åßíáé êáôÜ Ýíá
|
||
ìéêñüôåñç áðü ôçí íÝá ôéìÞ ôçò <varname>kern.maxproc</varname>.
|
||
(ÐñÝðåé íá åßíáé êáôÜ Ýíá ìéêñüôåñç, ãéáôß õðÜñ÷åé ðÜíôá Ýíá
|
||
ðñüãñáììá óõóôÞìáôïò, ôï &man.init.8;, ðïõ ðñÝðåé íá åêôåëåßôáé
|
||
óõíÝ÷åéá.).</para>
|
||
|
||
<para>Ãéá íá ãßíåé ìüíéìç ìéá áëëáãÞ åíüò sysctl, ôïðïèåôÞóôå ôçí
|
||
êáôÜëëçëç ôéìÞ óôï áñ÷åßï <filename>/etc/sysctl.conf</filename>.
|
||
Ðåñéóóüôåñåò ðëçñïöïñßåò ãéá ôç ñýèìéóç ôïõ óõóôÞìáôïò ìå ôçí
|
||
÷ñÞóç ôïõ &man.sysctl.8;, ìðïñåßôå íá âñåßôå óôçí åíüôçôá <ulink
|
||
url="&url.books.handbook;/configtuning-sysctl.html">Ñõèìßóåéò ìÝóù sysctl</ulink> ôïõ Åã÷åéñéäßïõ.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="cmap-busy-panic">
|
||
<para>Ãéáôß ðáßñíù ôï ìÞíõìá ëÜèïõò <errorname>CMAP
|
||
busy</errorname> üôáí åðáíåêêéíþ ìå íÝï ðõñÞíá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ç ëïãéêÞ ôïõ óõóôÞìáôïò ðïõ ðñïóðáèåß íá áíé÷íåýóåé ôõ÷üí
|
||
ðáëéÝò åêäüóåéò ôùí áñ÷åßùí <filename>/var/db/kvm_*.db</filename>
|
||
êÜðïéåò öïñÝò áðïôõã÷Üíåé, êáé ç ÷ñÞóç áíüìïéùí åêäüóåùí ìðïñåß
|
||
óå ïñéóìÝíåò ðåñéðôþóåéò íá ïäçãÞóåé óå panic.</para>
|
||
|
||
<para>Áí óáò óõìâåß áõôü, åðáíåêêéíÞóôå óå êáôÜóôáóç åíüò ÷ñÞóôç
|
||
(single user) êáé ãñÜøôå:</para>
|
||
|
||
<screen>&prompt.root; <userinput>rm /var/db/kvm_*.db</userinput></screen>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="brkadrint-illegal-host-access">
|
||
<para>Ôé óçìáßíåé ôï ìÞíõìá <errorname>ahc0: brkadrint,
|
||
Illegal Host Access at seqaddr 0x0</errorname>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>ÕðÜñ÷åé ìéá äéÝíåîç ìå ôçí êÜñôá
|
||
Ultrastor SCSI Host Adapter.</para>
|
||
|
||
<para>ÊáôÜ ôç äéÜñêåéá ôçò äéáäéêáóßáò åêêßíçóçò, åéóÝëèåôå óôï
|
||
ìåíïý ñõèìßóåùí ôïõ ðõñÞíá êáé áðåíåñãïðïéÞóôå ôç óõóêåõÞ
|
||
<devicename>uha0</devicename>, ç ïðïßá åßíáé áõôÞ ðïõ ðñïêáëåß ôï
|
||
ðñüâëçìá.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="aci0-illegal-cable">
|
||
<para>¼ôáí îåêéíþ ôï óýóôçìá ìïõ ðáßñíù ôï ëÜèïò
|
||
<errorname>ahc0: illegal cable configuration</errorname>.
|
||
Ç êáëùäßùóç ìïõ åßíáé óùóôÞ. Ôé óõìâáßíåé;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ç ìçôñéêÞ ðëáêÝôá óáò äåí Ý÷åé ôá áðáéôïýìåíá åîùôåñéêÜ
|
||
êõêëþìáôá þóôå íá õðïóôçñßæåé áõôüìáôï ôåñìáôéóìü ôïõ äéáýëïõ
|
||
SCSI. Áíôß íá âáóßæåóôå óôïí áõôüìáôï ôåñìáôéóìü, äçëþóôå óôï
|
||
SCSI BIOS ôïí óùóôü ôåñìáôéóìü ãéá ôç äéÜôáîç óõóêåõþí ðïõ
|
||
Ý÷åôå. Ôï ðñüãñáììá ïäÞãçóçò ôïõ AIC7XXX äåí ìðïñåß íá êáèïñßóåé
|
||
áí åßíáé äéáèÝóéìï ôï êýêëùìá ðïõ ÷ñçóéìïðïéåßôáé ãéá ôçí
|
||
áíß÷íåõóç ôïõ êáëùäßïõ (Üñá êáé ôïõ áõôüìáôïõ ôåñìáôéóìïý).
|
||
Ôï ðñüãñáììá ïäÞãçóçò õðïèÝôåé üôé õðÜñ÷åé õðïóôÞñéîç, åöüóïí ïé
|
||
ñõèìßóåéò ðïõ ðåñéÝ÷ïíôáé óôç óåéñéáêÞ EEPROM áíáöÝñïõí "áõôüìáôï
|
||
ôåñìáôéóìü". Óõ÷íÜ, ÷ùñßò ôï åîùôåñéêü êýêëùìá áíß÷íåõóçò ôïõ
|
||
êáëùäßïõ, ôï ðñüãñáììá ïäÞãçóçò èá ñõèìßæåé ëáíèáóìÝíá ôïí
|
||
ôåñìáôéóìü, êÜôé ðïõ ìðïñåß íá äçìéïõñãÞóåé ðñüâëçìá óôçí
|
||
áîéïðéóôßá ôïõ äéáýëïõ SCSI.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="mail-loopback">
|
||
<para>Ãéáôß ôï Sendmail äßíåé ôï ìÞíõìá ëÜèïõò
|
||
<quote><errorname>mail loops back to
|
||
myself</errorname></quote>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Áõôü ðåñéãñÜöåôáé óôï sendmail FAQ üðùò öáßíåôáé
|
||
ðáñáêÜôù:</para>
|
||
|
||
<literallayout> * Ðáßñíù ìçíýìáôá ëÜèïõò "Local configuration error" üðùò ôï:
|
||
|
||
553 relay.domain.net config error: mail loops back to myself
|
||
554 <user@domain.net>... Local configuration error
|
||
|
||
Ðùò ìðïñþ íá åðéëýóù ôï ðñüâëçìá;
|
||
|
||
¸÷åôå æçôÞóåé íá êáôåõèýíåôå ôï mail ðñïò ôï domain (ð.÷. domain.net)
|
||
ðñïò êÜðïéï óõãêåêñéìÝíï ìç÷Üíçìá (óôçí ðåñßðôùóç áõôÞ, ôï
|
||
relay.domain.net) ÷ñçóéìïðïéþíôáò ìéá åããñáöÞ MX, áëëÜ ôï ìç÷Üíçìá
|
||
ðïõ êÜíåé ôçí áíáêáôåýèõíóç äåí áíáãíùñßæåé ôïí åáõôü ôïõ ùò
|
||
domain.net. ÐñïóèÝóôå ôï domain.net óôï /etc/mail/local-host-names
|
||
(áí ÷ñçóéìïðïéåßôå ôï FEATURE(use_cw_file)) Þ ðñïóèÝóôå
|
||
"Cw domain.net" óôï /etc/mail/sendmail.cf.</literallayout>
|
||
|
||
<para>Ç ôñÝ÷ïõóá Ýêäïóç ôïõ <ulink
|
||
url="ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/sendmail-faq">sendmail FAQ</ulink> äåí óõíôçñåßôáé ðëÝïí ìå êÜèå Ýêäïóç ôïõ sendmail.
|
||
Ùóôüóï, äçìïóéåýåôáé áíÜ ôáêôÜ äéáóôÞìáôá óôéò ëßóôåò <ulink
|
||
url="news:comp.mail.sendmail">comp.mail.sendmail</ulink>,
|
||
<ulink url="news:comp.mail.misc">comp.mail.misc</ulink>, <ulink
|
||
url="news:comp.mail.smail">comp.mail.smail</ulink>, <ulink
|
||
url="news:comp.answers">comp.answers</ulink>, êáé <ulink
|
||
url="news:news.answers">news.answers</ulink>. Ìðïñåßôå åðßóçò
|
||
íá ëÜâåôå áíôßãñáöï ìÝóù email, óôÝëíïíôáò Ýíá ìÞíõìá óôï
|
||
<email>mail-server@rtfm.mit.edu</email> ìå ôçí åíôïëÞ
|
||
<literal>send usenet/news.answers/mail/sendmail-faq</literal>
|
||
óôï êýñéï ìÝñïò ôïõ ìçíýìáôïò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="remote-fullscreen">
|
||
<para>Ãéáôß äåí óõìðåñéöÝñïíôáé óùóôÜ ïé åöáñìïãÝò ðëÞñïõò ïèüíçò
|
||
óå áðïìáêñõóìÝíá ìç÷áíÞìáôá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Åßíáé ðéèáíüí ôï áðïìáêñõóìÝíï ìç÷Üíçìá íá ñõèìßæåé ôïí ôýðï
|
||
ôïõ ôåñìáôéêïý óáò óå êÜôé äéáöïñåôéêü áðü ôïí ôýðï
|
||
<literal>cons25</literal> ðïõ áðáéôåßôáé áðü ôçí êïíóüëá ôïõ
|
||
&os;.</para>
|
||
|
||
<para>ÕðÜñ÷ïõí äéÜöïñïé ôñüðïé ãéá íá ðáñáêÜìøåôå áõôü ôï
|
||
ðñüâëçìá:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>ÌåôÜ ôçí åßóïäï óáò óôï áðïìáêñõóìÝíï ìç÷Üíçìá, ïñßóôå
|
||
ôçí ìåôáâëçôÞ TERM ôïõ êåëýöïõò óå <literal>ansi</literal>
|
||
Þ <literal>sco</literal>, åöüóïí ôï áðïìáêñõóìÝíï ìç÷Üíçìá
|
||
ìðïñåß íá ëåéôïõñãÞóåé ìå áõôÜ ôá åßäç ôåñìáôéêþí.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Óôçí êïíóüëá ôïõ &os;, ÷ñçóéìïðïéÞóôå êÜðïéï åîïìïéùôÞ
|
||
ôåñìáôéêïý VT100, üðùò ôï
|
||
<application>screen</application>. Ôï
|
||
<application>screen</application> óáò äßíåé ôç äõíáôüôçôá
|
||
íá Ý÷åôå ðïëëáðëÝò óõíåäñßåò áðü Ýíá ìüíï ôåñìáôéêü, êáé
|
||
åßíáé Ýôóé êáé áëëéþò ÷ñÞóéìï ðñüãñáììá. ÊÜèå ðáñÜèõñï ôïõ
|
||
<application>screen</application> óõìðåñéöÝñåôáé ùò
|
||
ôåñìáôéêü ôïõ VT100, Ýôóé ç ìåôáâëçôÞ TERM óôïí
|
||
áðïìáêñõóìÝíï õðïëïãéóôÞ èá ðñÝðåé íá ñõèìéóôåß óå
|
||
<literal>vt100</literal>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÅãêáôáóôÞóôå ôçí êáôá÷þñçóç <literal>cons25</literal>
|
||
óôç âÜóç äåäïìÝíùí ôåñìáôéêþí ôïõ áðïìáêñõóìÝíïõ õðïëïãéóôÞ.
|
||
Ï ôñüðïò ãéá íá ãßíåé áõôü, åîáñôÜôáé áðü ôï ëåéôïõñãéêü
|
||
óýóôçìá ôïõ áðïìáêñõóìÝíïõ õðïëïãéóôÞ. ÖõóéïëïãéêÜ, èá
|
||
âñåßôå áõôÝò ôéò ðëçñïöïñßåò óôá åã÷åéñßäéá äéá÷åßñéóçò
|
||
óõóôÞìáôïò ôïõ áðïìáêñõóìÝíïõ ìç÷áíÞìáôïò.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Óôï ôïðéêü óáò &os; ìç÷Üíçìá, ÷ñçóéìïðïéÞóôå ôïí X
|
||
server êáé êÜíôå login óôï áðïìáêñõóìÝíï ìç÷Üíçìá
|
||
÷ñçóéìïðïéþíôáò êÜðïéï åîïìïéùôÞ ôåñìáôéêïý üðùò ôï
|
||
<command>xterm</command> Þ ôï <command>rxvt</command>. Óôçí
|
||
ðåñßðôùóç áõôÞ, èá ðñÝðåé óôï áðïìáêñõóìÝíï ìç÷Üíçìá íá
|
||
ñõèìßóåôå ôçí ìåôáâëçôÞ TERM óå <literal>xterm</literal> Þ
|
||
<literal>vt100</literal>.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="calcru-negative">
|
||
<para>Ãéáôß ôï ìç÷Üíçìá ìïõ äåß÷íåé ôï ìÞíõìá
|
||
<errorname>calcru: negative time...</errorname>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Áõôü ìðïñåß íá óõìâåß áðü äéÜöïñåò áéôßåò ðïõ ó÷åôßæïíôáé ìå
|
||
interrupts, ôüóï óôï õëéêü üóï êáé óôï ëïãéóìéêü. Ìðïñåß íá
|
||
ïöåßëåôáé óå ðñïâëÞìáôá (bugs) áëëÜ ìðïñåß åðßóçò íá ðñïêëçèåß
|
||
åîáéôßáò ôçò öýóçò êÜðïéùí óõóêåõþí. ¸íáò óõíçèéóìÝíïò ôñüðïò
|
||
ðñüêëçóçò ôïõ ðñïâëÞìáôïò, åßíáé ç åêôÝëåóç åöáñìïãþí TCP/IP
|
||
ìå ìåãÜëï MTU ìÝóù ôçò ðáñÜëëçëçò èýñáò. Ìðïñåß åðßóçò íá
|
||
ðñïêëçèåß áðü êÜðïéïõò åðéôá÷õíôÝò ãñáöéêþí, êáé óôçí ðåñßðôùóç
|
||
áõôÞ ôï ðñþôï ðñÜãìá ðïõ èá ðñÝðåé íá åëÝãîåôå åßíáé ç ñýèìéóç
|
||
interrupt ôçò áíôßóôïé÷çò êÜñôáò.</para>
|
||
|
||
<para>ÐáñåíÝñãåéá áõôïý ôïõ ðñïâëÞìáôïò åßíáé ï áðüôïìïò ôåñìáôéóìüò
|
||
äéåñãáóéþí ìå ôï ìÞíõìá <quote>SIGXCPU exceeded cpu time
|
||
limit</quote>.</para>
|
||
|
||
<para>Áí ôï ðñüâëçìá äåí ìðïñåß íá ëõèåß ìå äéáöïñåôéêü ôñüðï, ç
|
||
ëýóç åßíáé íá ïñßóåôå ôçí ðáñáêÜôù ìåôáâëçôÞ ôïõ sysctl:</para>
|
||
|
||
<screen>&prompt.root; <userinput>sysctl -w kern.timecounter.method=1</userinput></screen>
|
||
|
||
<note>
|
||
<para>Ç åðéëïãÞ <option>-w</option> ôïõ &man.sysctl.8; èåùñåßôáé
|
||
ðáñù÷çìÝíç êáé áãíïåßôáé óéùðçëÜ áðü ôï &os; 4.4-RELEASE êáé
|
||
ìåôÜ. Ìðïñåßôå ìå áóöÜëåéá íá ôï ðáñáëåßøåôå êáôÜ ôç ñýèìéóç
|
||
ôùí åðéëïãþí ìå ôçí <command>sysctl</command> üðùò öáßíåôáé
|
||
ðáñáðÜíù.</para>
|
||
</note>
|
||
|
||
<para>Ôï ðáñáðÜíù èá Ý÷åé åðßäñáóç óôçí áðüäïóç, áëëÜ óå ó÷Ýóç ìå
|
||
ôçí áéôßá ôïõ ðñïâëÞìáôïò, ìÜëëïí äåí èá ôï ðáñáôçñÞóåôå. Áí ôï
|
||
ðñüâëçìá åðéìÝíåé, äéáôçñÞóôå ôçí ôéìÞ ôïõ sysctl óôï Ýíá, êáé
|
||
ñõèìßóôå ôçí åðéëïãÞ <literal>NTIMECOUNTER</literal> óôïí ðõñÞíá
|
||
óáò, óå ïëïÝíá áõîáíüìåíåò ôéìÝò. Áí öôÜóåôå ôçí ôéìÞ
|
||
<literal>NTIMECOUNTER=20</literal> êáé ôï ðñüâëçìá äåí Ý÷åé ëõèåß,
|
||
ôá interrupts óôï ìç÷Üíçìá óáò åßíáé ðïëý ðñïâëçìáôéêÜ êáé
|
||
áêáôÜëëçëá ãéá áêñéâÞ ñýèìéóç ôçò þñáò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="pnp-not-found">
|
||
<para>Ãéáôß ç PnP êÜñôá ìïõ äåí áíé÷íåýåôáé ðëÝïí (Þ áíé÷íåýåôáé ùò
|
||
<literal>unknown</literal>) ìåôÜ ôçí áíáâÜèìéóç óå &os; 4.X;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï &os; 4.X áêïëïõèåß ðëÝïí áñêåôÜ ðéï ðéóôÜ ôï ðñüôõðï
|
||
<emphasis>PnP</emphasis> êáé áõôü äçìéïõñãåß ïñéóìÝíåò öïñÝò
|
||
ôçí ðáñåíÝñãåéá íá ìç ëåéôïõñãïýí êÜðïéåò óõóêåõÝò PnP (ð.÷.
|
||
êÜñôåò Þ÷ïõ êáé åóùôåñéêÜ modems) ïé ïðïßåò ùóôüóï ëåéôïõñãïýóáí
|
||
óôï &os; 3.×.</para>
|
||
|
||
<para>Ïé ëüãïé ãéá ôçí óõìðåñéöïñÜ áõôÞ, åîçãïýíôáé óôï áêüëïõèï
|
||
e-mail, ôï ïðïßï óôÜëèçêå óôç ëßóôá &a.questions.name; áðü ôïí
|
||
Peter Wemm, ùò áðÜíôçóç óå åñþôçóç ó÷åôéêÜ ìå Ýíá åóùôåñéêü
|
||
modem ôï ïðïßï äåí Þôáí áíé÷íåýóéìï áðü ôï óýóôçìá ìåôÜ áðü
|
||
áíáâÜèìéóç óå &os; 4.X (ôá ó÷üëéá ìÝóá óå <literal>[]</literal>
|
||
Ý÷ïõí ðñïóôåèåß ãéá íá ãßíåé ðéï êáôáíïçôü ôï áíôéêåßìåíï ôçò
|
||
óõæÞôçóçò).</para>
|
||
|
||
<note>
|
||
<para>Ôï ðåñéå÷üìåíï áõôÞò ôçò ðáñÜèåóçò Ý÷åé áíáíåùèåß óå ó÷Ýóç
|
||
ìå ôï áñ÷éêü êåßìåíï.</para>
|
||
</note>
|
||
|
||
<blockquote>
|
||
<para>Ôï PNP bios ôï ðñï-ñýèìéóå [ôï modem] êáé ôï Üöçóå óôçí
|
||
ðåñéï÷Þ äéåõèýíóåùí ôùí èõñþí, êáé Ýôóé [óôçí Ýêäïóç 3.×] ç
|
||
ðáëáéïý ôýðïõ áíß÷íåõóç ISA ôï <quote>âñÞêå</quote> åêåß.</para>
|
||
|
||
<para>Óôçí Ýêäïóç 4.0, ï êþäéêáò äéá÷åßñéóçò ôïõ ISA, åßíáé ðïëý
|
||
ðåñéóóüôåñï ðñïóáíáôïëéóìÝíïò óôï PnP ìïíôÝëï. Óôï 3.× Þôáí
|
||
äõíáôüí ç áíß÷íåõóç ISA íá åíôïðßóåé ìéá <quote>÷áìÝíç</quote>
|
||
óõóêåõÞ êáé Ýðåéôá ç PNP óõóêåõÞ íá ôáéñéÜîåé êáé íá áðïôý÷åé
|
||
ç ñýèìéóç ôçò ëüãù äéÝíåîçò ðüñùí. ¸ôóé, áðåíåñãïðïéïýíôáé
|
||
áñ÷éêÜ ïé ðñïãñáììáôéæüìåíåò êÜñôåò, þóôå íá ìç óõìâåß áõôÞ
|
||
ç äéðëÞ áíß÷íåõóç. Áõôü åðßóçò óçìáßíåé üôé ç áíß÷íåõóç ðñÝðåé
|
||
íá ãíùñßæåé ôá PnP ids ôùí õðïóôçñéæüìåíùí óõóêåõþí. Åßíáé óôéò
|
||
ðñïèÝóåéò ìáò íá êÜíïõìå ôç äéáäéêáóßá áõôÞ ðåñéóóüôåñç
|
||
ðñïóâÜóéìç óôïõò ÷ñÞóôåò.</para>
|
||
</blockquote>
|
||
|
||
<para>Ãéá íá ëåéôïõñãÞóåé îáíÜ ç óõóêåõÞ, ðñÝðåé íá âñåèåß ôï PNP
|
||
id ôçò êáé íá ðñïóôåèåß óôç ëßóôá ôùí áíé÷íåýóåùí ISA ðïõ
|
||
÷ñçóéìïðïéïýíôáé ãéá ôçí áíáãíþñéóç PnP óõóêåõþí. Áõôü ìðïñåß íá
|
||
ãßíåé ìå ôç ÷ñÞóç ôçò &man.pnpinfo.8; ãéá ôçí áíß÷íåõóç ôçò
|
||
óõóêåõÞò, ãéá ðáñÜäåéãìá áõôÞ åßíáé ç Ýîïäïò ôçò &man.pnpinfo.8;
|
||
ãéá Ýíá åóùôåñéêü 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 & 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>[ðáñáëåßðïíôáé ïé õðüëïéðåò ãñáììÝò TAG]</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>Ïé ðëçñïöïñßåò ðïõ áðáéôïýíôáé, âñßóêïíôáé óôç ãñáììÞ
|
||
<quote>Vendor ID</quote>, óôçí áñ÷Þ ôçò åîüäïõ. Ï äåêáåîáäéêüò
|
||
áñéèìüò óôéò ðáñåíèÝóåéò (óôï ðáñÜäåéãìá ìáò 0x3024a341) åßíáé
|
||
ôï PnP id åíþ ôï áëöáñéèìçôéêü ðïõ âñßóêåôáé áêñéâþò ðñéí áðü
|
||
áõôüí åßíáé Ýíá ìïíáäéêü ASCII áíáãíùñéóôéêü.</para>
|
||
|
||
<para>ÅíáëëáêôéêÜ, áí ôï &man.pnpinfo.8; äåí äåß÷íåé ôçí æçôïýìåíç
|
||
êÜñôá, ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ôï &man.pciconf.8;. ÐáñáêÜôù
|
||
öáßíåôáé Ýíá ìÝñïò ôçò åîüäïõ ôçò <command>pciconf -vl</command>
|
||
ãéá Ýíá êýêëùìá Þ÷ïõ åíóùìáôùìÝíïõ óôç ìçôñéêÞ:</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>Åäþ, èá ÷ñçóéìïðïéïýóáìå ôçí ôéìÞ ôïõ <varname>chip</varname>,
|
||
<quote>0x24158086</quote>.</para>
|
||
|
||
<para>Ç ðëçñïöïñßá áõôÞ (Vendor ID Þ ôéìÞ chip) èá ðñÝðåé íá
|
||
ðñïóôåèåß óôï áñ÷åßï <filename>/usr/src/sys/isa/sio.c</filename>.</para>
|
||
|
||
<para>Èá ðñÝðåé ðñþôá íá êñáôÞóåôå Ýíá áíôßãñáöï áóöáëåßáò ôïõ
|
||
<filename>sio.c</filename>, ãéá ôçí ðåñßðôùóç ðïõ êÜôé ðÜåé
|
||
óôñáâÜ. Åðßóçò, èá ÷ñåéáóôåßôå ôï áíôßãñáöï ãéá íá äçìéïõñãÞóåôå
|
||
Ýíá patch ôï ïðïßï èá êáôáèÝóåôå ìå ôçí áíáöïñÜ ðñïâëÞìáôïò (PR)
|
||
ðïõ èá ìáò óôåßëåôå (êáé èá ìáò óôåßëåôå PR, Ýôóé;). Êáôüðéí
|
||
åðåîåñãáóôåßôå ôï <filename>sio.c</filename> êáé øÜîôå ãéá ôç
|
||
ãñáììÞ</para>
|
||
|
||
<programlisting>static struct isa_pnp_id sio_ids[] = {</programlisting>
|
||
|
||
<para>Ýðåéôá ìåôáêéíçèåßôå ðñïò ôá êÜôù ãéá íá âñåßôå ôï óùóôü ìÝñïò
|
||
íá ðñïóèÝóåôå ôçí êáôá÷þñçóç ôçò óõóêåõÞò óáò. Ïé êáôá÷ùñÞóåéò
|
||
öáßíïíôáé üðùò ðáñáêÜôù êáé åßíáé ôáîéíïìçìÝíåò êáôÜ ôï
|
||
áëöáñéèìçôéêü ASCII Vendor ID ôï ïðïßï èá ðñÝðåé íá ðåñéëçöèåß
|
||
óôï ó÷üëéï óôï äåîéü ìÝñïò ôçò ãñáììÞò ìáæß ìå üëç ôçí ðåñéãñáöÞ
|
||
<emphasis>Device Description</emphasis> (áí ÷ùñÜåé, áëëéþò ìÝñïò
|
||
ôçò) áðü ôçí Ýîïäï ôçò &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>ÐñïóèÝóôå ôï äåêáåîáäéêü Vendor ID ãéá ôç óõóêåõÞ óáò óôï
|
||
óùóôü ìÝñïò, áðïèçêåýóôå ôï áñ÷åßï, áíáäçìéïõñãÞóôå ôïí ðõñÞíá
|
||
óáò, êáé åðáíåêêéíÞóôå. Èá ðñÝðåé ôþñá ç óõóêåõÞ óáò íá âñåèåß ùò
|
||
óõóêåõÞ <literal>sio</literal> üðùò óõíÝâáéíå êáé ìå ôï &os; 3.X</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="nlist-failed">
|
||
<para>Ãéáôß ðáßñíù ôï ëÜèïò <errorname>nlist failed</errorname> üôáí
|
||
åêôåëþ, ãéá ðáñÜäåéãìá, ôï <command>top</command> Þ ôï
|
||
<command>systat</command>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï ðñüâëçìá åßíáé üôé ç åöáñìïãÞ ðïõ ðñïóðáèåßôå íá åêôåëÝóåôå
|
||
øÜ÷íåé ãéá Ýíá óõãêåêñéìÝíï óýìâïëï óôïí ðõñÞíá, áëëÜ ãéá êÜðïéï
|
||
ëüãï äåí ìðïñåß íá ôï åíôïðßóåé. Ôï óöÜëìá áõôü ìðïñåß íá
|
||
ïöåßëåôáé óå äýï ðñïâëÞìáôá:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Ï ðõñÞíáò óáò êáé ôá õðüëïéðá âáóéêÜ ðñïãñÜììáôá
|
||
(userland) äåí åßíáé óå óõã÷ñïíéóìü (ð.÷. Ý÷åôå äçìéïõñãÞóåé
|
||
íÝï ðõñÞíá, áëëÜ äåí åêôåëÝóáôå
|
||
<maketarget>installworld</maketarget>, Þ áíôßóôñïöá), ìå
|
||
áðïôÝëåóìá ï ðßíáêáò óõìâüëùí íá åßíáé äéáöïñåôéêüò áðü
|
||
áõôüí ðïõ ðéóôåýåé ç åöáñìïãÞ. Áí ðñüêåéôáé ãéá áõôÞ ôçí
|
||
ðåñßðôùóç, áðëþò ïëïêëçñþóôå ôç äéáäéêáóßá áíáâÜèìéóçò
|
||
(äåßôå ôï <filename>/usr/src/UPDATING</filename> ãéá ôç óùóôÞ
|
||
áêïëïõèßá åíôïëþí).</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Äåí ÷ñçóéìïðïéåßôå ôï
|
||
<command>/boot/loader</command> ãéá íá öïñôþóåôå ôïí ðõñÞíá
|
||
óáò, áëëÜ ôïí öïñôþíåôå áðåõèåßáò áðü ôï boot2 (äåßôå ôï
|
||
&man.boot.8;). Áí êáé äåí åßíáé ëÜèïò íá ðáñáêÜìøåôå ôïí
|
||
<command>/boot/loader</command>, óå ãåíéêÝò ãñáììÝò ôï
|
||
ðñüãñáììá áõôü ôá êáôáöÝñíåé êáëýôåñá óôï íá äéáèÝôåé ôá
|
||
óýìâïëá ôïõ ðõñÞíá óôéò åöáñìïãÝò ÷ñÞóôç.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="connection-delay">
|
||
<para>Ãéáôß ðáßñíåé ôüóï ÷ñüíï íá óõíäåèþ ìå ôïí õðïëïãéóôÞ ìïõ ìÝóù
|
||
<command>ssh</command> Þ <command>telnet</command>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï óýìðôùìá: ÕðÜñ÷åé ìåãÜëç êáèõóôÝñçóç ìåôáîý ôçò óôéãìÞò
|
||
ðïõ áðïêáèßóôáôáé ç TCP óýíäåóç êáé ôçò óôéãìÞò ðïõ ôï ðñüãñáììá
|
||
óôç ìåñéÜ ôïõ ðåëÜôç æçôÜåé ôïí êùäéêü ðñüóâáóçò (Þ óôçí ðåñßðôùóç
|
||
ôïõ &man.telnet.1;, ôçò óôéãìÞò ðïõ åìöáíßæåôáé ç ðñïôñïðÞ
|
||
login).</para>
|
||
|
||
<para>Ôï ðñüâëçìá: Ôï ðéï ðéèáíü åßíáé üôé ç êáèõóôÝñçóç ïöåßëåôáé
|
||
óôçí ðñïóðÜèåéá ðïõ êáôáâÜëëåé ôï ëïãéóìéêü óôç ìåñéÜ ôïõ
|
||
åîõðçñåôçôÞ íá âñåé ôï üíïìá ôïõ ìç÷áíÞìáôïò - ðåëÜôç áðü ôçí
|
||
IP äéåýèõíóç ôïõ. Ïé ðåñéóóüôåñïé åîõðçñåôçôÝò,
|
||
óõìðåñéëáìâáíïìÝíùí ôïõ Telnet êáé SSH ðïõ Ýñ÷ïíôáé ìå ôï &os;,
|
||
ëåéôïõñãïýí ìå áõôü ôïí ôñüðï, þóôå ìåôáîý Üëëùí, íá áðïèçêåýóïõí
|
||
ôï üíïìá ôïõ ìç÷áíÞìáôïò óå Ýíá áñ÷åßï êáôáãñáöÞò ãéá ìåëëïíôéêÞ
|
||
áíáöïñÜ áðü ôïí äéá÷åéñéóôÞ.</para>
|
||
|
||
<para>Ç èåñáðåßá: Áí ôï ðñüâëçìá ðñïêýðôåé êÜèå öïñÜ ðïõ óõíäÝåóôå
|
||
áðü ôïí õðïëïãéóôÞ óáò (ôïí ðåëÜôç) óå ïðïéïäÞðïôå åîõðçñåôçôÞ,
|
||
ôï ðñüâëçìá âñßóêåôáé óôïí ðåëÜôç. Ìå ôïí ßäéï ôñüðï, áí ôï
|
||
ðñüâëçìá óõìâáßíåé ìüíï üôáí êÜðïéïò óõíäÝåôáé óôïí õðïëïãéóôÞ
|
||
óáò (ôïí åîõðçñåôçôÞ), ôï ðñüâëçìá âñßóêåôáé óôïí
|
||
åîõðçñåôçôÞ.</para>
|
||
|
||
<para>Áí ôï ðñüâëçìá åßíáé óôïí ðåëÜôç, ç ìüíç èåñáðåßá åßíáé íá
|
||
äéïñèþóåôå ôï DNS, þóôå ï åîõðçñåôçôÞò íá ìðïñåß íá ôï âñåé. Áí
|
||
ôï ðñüâëçìá åìöáíßæåôáé óôï ôïðéêü óáò äßêôõï, èåùñåßóôå ôï
|
||
ðñüâëçìá óôïí åîõðçñåôçôÞ êáé óõíå÷ßóôå ôçí áíÜãíùóç. Áíôßèåôá,
|
||
áí ôï ðñüâëçìá åìöáíßæåôáé óå óõíäÝóåéò ìÝóù Internet, êáôÜ ðÜóá
|
||
ðéèáíüôçôá èá ÷ñåéáóôåß íá åðéêïéíùíÞóåôå ìå ôïí ISP óáò êáé íá
|
||
æçôÞóåôå íá óáò ôï äéïñèþóåé.</para>
|
||
|
||
<para>Áí ôï ðñüâëçìá åßíáé ìå ôïí åîõðçñåôçôÞ, êáé åìöáíßæåôáé óôï
|
||
ôïðéêü óáò äßêôõï, èá ðñÝðåé íá ôïí ñõèìßóåôå þóôå íá ìðïñåß íá
|
||
åêôåëåß áíáæçôÞóåéò ôýðïõ äéåýèõíóç óå üíïìá, ãéá ôçí ôïðéêÞ
|
||
ðåñéï÷Þ äéåõèýíóåùí óáò. Äåßôå ôéò óåëßäåò manual ôùí
|
||
&man.hosts.5; êáé &man.named.8; ãéá ðåñéóóüôåñåò ðëçñïöïñßåò. Áí
|
||
ôï ðñüâëçìá åìöáíßæåôáé óôéò óõíäÝóåéò ìÝóù Internet, ìðïñåß íá
|
||
ïöåßëåôáé óå êáêÞ ëåéôïõñãßá ôïõ resolver óôïí åîõðçñåôçôÞ óáò.
|
||
Ãéá íá ôï åëÝãîåôå, äïêéìÜóôå íá âñåßôå êÜðïéï Üëëï ìç÷Üíçìá, ãéá
|
||
ðáñÜäåéãìá ôï <hostid>www.yahoo.com</hostid>. Áí ïýôå áõôü
|
||
äïõëåýåé, åêåß âñßóêåôáé ôï ðñüâëçìá óáò.</para>
|
||
|
||
<para>ÌåôÜ áðü ìéá íÝá åãêáôÜóôáóç ôïõ &os; åßíáé åðßóçò ðéèáíü
|
||
íá ëåßðïõí ïé ðëçñïöïñßåò ãéá ôïí ôïìÝá (domain) êáé ôïí
|
||
åîõðçñåôçôÞ ïíïìÜôùí (nameserver) áðü ôï áñ÷åßï
|
||
<filename>/etc/resolv.conf</filename>. Áõôü åðßóçò èá ðñïêáëÝóåé
|
||
êáèõóôÝñçóç óôï <application>SSH</application>, êáèþò ç åðéëïãÞ
|
||
<quote>UseDNS</quote> Ý÷åé ùò ðñïåðéëåãìÝíç ôçí ôéìÞ
|
||
<quote>yes</quote> óôï áñ÷åßï ñõèìßóåùí
|
||
<filename>sshd_config</filename> óôïí êáôÜëïãï
|
||
<filename>/etc/ssh</filename>. Áí åßíáé áõôÞ ç áéôßá ôïõ
|
||
ðñïâëÞìáôïò, èá ðñÝðåé åßôå íá óõìðëçñþóåôå ôéò áðáéôïýìåíåò
|
||
ðëçñïöïñßåò óôï <filename>/etc/resolv.conf</filename> Þ íá èÝóåôå
|
||
ôï <quote>UseDNS</quote> óôï <quote>no</quote> óôï áñ÷åßï
|
||
<filename>sshd_config</filename> ùò ðñïóùñéíÞ ëýóç.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="stray-irq">
|
||
<para>Ðïéá åßíáé ç Ýííïéá ôïõ <errorname>stray (ðåñéðëáíþìåíïõ)
|
||
IRQ</errorname>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôá stray IRQs åßíáé óçìÜäéá ðñïâëçìÜôùí õëéêïý ðïõ
|
||
÷ñçóéìïðïéåß IRQs, åéäéêüôåñá ó÷åôßæåôáé ìå õëéêü ðïõ êáôÜ ôç
|
||
ìÝóç ôïõ êýêëïõ áíáãíþñéóçò (acknowledge cycle) ôïõ
|
||
interrupt, óôáìáôÜåé íá ìåôáäßäåé ôçí áíôßóôïé÷ç áßôçóç
|
||
äéáêïðÞò.</para>
|
||
|
||
<para>¸÷åôå ôñåéò åðéëïãÝò ãéá íá áíôéìåôùðßóåôå áõôü ôï
|
||
ðñüâëçìá:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Áíå÷èåßôå ôéò ðñïåéäïðïéÞóåéò. ¸ôóé êáé áëëéþò, ìåôÜ ôéò
|
||
5 ðñþôåò, äåí èá äåßôå Üëëåò.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÓôáìáôÞóôå åíôåëþò ôéò ðñïåéäïðïéÞóåéò, áëëÜæïíôáò ôï 5
|
||
óå 0 óôçí <function>isa_strayintr()</function>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>ÓôáìáôÞóôå ôéò ðñïåéäïðïéÞóåéò åãêáèéóôþíôáò õëéêü ãéá ôçí
|
||
ðáñÜëëçëç ðüñôá ðïõ íá ÷ñçóéìïðïéåß ôï IRQ 7 êáé ôï
|
||
áíôßóôïé÷ï ãéá áõôü ðñüãñáììá ïäÞãçóçò PPP (áõôü óõìâáßíåé óôá
|
||
ðåñéóóüôåñá óõóôÞìáôá) êáé åãêáôáóôÞóôå Ýíá ïäçãü IDE Þ Üëëï
|
||
õëéêü ðïõ íá ÷ñçóéìïðïéåß ôï irq 15 ìáæß ìå ôï êáôÜëëçëï
|
||
ðñüãñáììá ïäÞãçóçò ôïõ.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="file-table-full">
|
||
<para>Ãéáôß âëÝðù óõíÝ÷åéá ôï ìÞíõìá
|
||
<errorname>file: table is full</errorname> óôï dmesg;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>
|
||
Ôï ìÞíõìá áõôü óçìáßíåé üôé Ý÷åôå åîáíôëÞóåé ôïí áñéèìü ôùí
|
||
äéáèÝóéìùí ðåñéãñáöÝùí áñ÷åßùí (file descriptors) óôï óýóôçìá óáò.
|
||
Ðáñáêáëïýìå äåßôå ôï <ulink
|
||
url="&url.books.handbook;/configtuning-kernel-limits.html#KERN-MAXFILES">kern.maxfiles </ulink> ôìÞìá óôï êåöÜëáéï <ulink
|
||
url="&url.books.handbook;/configtuning-kernel-limits.html">Ñýèìéóç Ïñßùí ÐõñÞíá</ulink> ôïõ Åã÷åéñéäßïõ, ãéá åñìçíåßá êáé åðßëõóç ôïõ
|
||
ðñïâëÞìáôïò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="laptop-clock-skew">
|
||
<para>Ãéáôß ôï ñïëüé óôï öïñçôü ìïõ õðïëïãéóôÞ äåí êñáôÜåé ôçí
|
||
óùóôÞ þñá;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ï öïñçôüò õðïëïãéóôÞò óáò Ý÷åé äýï Þ ðåñéóóüôåñá ñïëüãéá, êáé
|
||
ôï &os; Ý÷åé åðéëÝîåé íá ÷ñçóéìïðïéÞóåé ôï ëÜèïò.</para>
|
||
|
||
<para>ÅêôåëÝóôå ôçí &man.dmesg.8;, êáé åëÝãîôå ãéá ãñáììÝò ðïõ
|
||
ðåñéÝ÷ïõí ôçí ëÝîç <literal>Timecounter</literal>. Ç ôåëåõôáßá
|
||
áðü ôéò ãñáììÝò ðïõ èá åêôõðùèåß äåß÷íåé ôï ñïëüé ðïõ åðéëÝ÷èçêå
|
||
áðü ôï &os; êáé ó÷åäüí óßãïõñá èá åßíáé ôï
|
||
<literal>TSC</literal>.</para>
|
||
|
||
<screen>&prompt.root; <userinput>dmesg | grep Timecounter</userinput>
|
||
Timecounter "i8254" frequency 1193182 Hz
|
||
Timecounter "TSC" frequency 595573479 Hz</screen>
|
||
|
||
<para>Ìðïñåßôå íá ôï åðéâåâáéþóåôå áõôü, åëÝã÷ïíôáò ôçí ôéìÞ ôïõ
|
||
<varname>kern.timecounter.hardware</varname>
|
||
&man.sysctl.3;.</para>
|
||
|
||
<screen>&prompt.root; <userinput>sysctl kern.timecounter.hardware</userinput>
|
||
kern.timecounter.hardware: TSC</screen>
|
||
|
||
<para>Ôï BIOS ßóùò íá ôñïðïðïéåß ôçí ôéìÞ ôïõ ñïëïãéïý TSC—
|
||
åíäå÷ïìÝíùò ãéá íá áëëÜîåé ôçí ôá÷ýôçôá ôïõ åðåîåñãáóôÞ üôáí
|
||
ëåéôïõñãåß ìå ìðáôáñßåò, Þ üôáí åéóÝñ÷åôáé óå êáôÜóôáóç ÷áìçëÞò
|
||
êáôáíÜëùóçò, áëëÜ ôï &os; äåí ãíùñßæåé ãéá áõôÝò ôéò áëëáãÝò êáé
|
||
öáßíåôáé íá êåñäßæåé Þ íá ÷Üíåé ÷ñüíï.</para>
|
||
|
||
<para>Óôï ðáñÜäåéãìá ìáò, åßíáé åðßóçò äéáèÝóéìï ôï ñïëüé
|
||
<literal>i8254</literal> êáé ìðïñåßôå íá ôï åðéëÝîåôå ãñÜöïíôáò
|
||
ôï üíïìá ôïõ óôï &man.sysctl.3;
|
||
<varname>kern.timecounter.hardware</varname>.</para>
|
||
|
||
<screen>&prompt.root; <userinput>sysctl -w kern.timecounter.hardware=i8254</userinput>
|
||
kern.timecounter.hardware: TSC -> i8254</screen>
|
||
|
||
<para>Ï öïñçôüò õðïëïãéóôÞò óáò èá ðñÝðåé ôþñá íá åßíáé ðéï áêñéâÞò
|
||
óôçí ôÞñçóç ôïõ ÷ñüíïõ.</para>
|
||
|
||
<para>Ãéá íá ðáñáìåßíåé ç áëëáãÞ áõôÞ óå êÜèå åêêßíçóç, ðñïóèÝóôå
|
||
ôçí ðáñáêÜôù ãñáììÞ óôï <filename>/etc/sysctl.conf</filename>.</para>
|
||
|
||
<programlisting>kern.timecounter.hardware=i8254</programlisting>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="null-null">
|
||
<para>Ãéáôß ï öïñçôüò ìïõ õðïëïãéóôÞò äåí áíáãíùñßæåé óùóôÜ ôéò
|
||
êÜñôåò ôýðïõ PC card;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï ðñüâëçìá åßíáé êïéíü óå öïñçôÜ ðïõ åêêéíïýí ðåñéóóüôåñá áðü
|
||
Ýíá ëåéôïõñãéêÜ óõóôÞìáôá. ÏñéóìÝíá ìç-BSD ëåéôïõñãéêÜ óõóôÞìáôá
|
||
áöÞíïõí ôéò PC cards óå ìç-ðñïâëÝøéìç êáôÜóôáóç. Ç åíôïëÞ
|
||
<command>pccardd</command> óå áõôÞ ôçí ðåñßðôùóç, áíé÷íåýåé ôçí
|
||
êÜñôá ùò <errorname>"(null)""(null)"</errorname> áíôß ãéá ôï
|
||
ðñáãìáôéêü ôçò ìïíôÝëï.</para>
|
||
|
||
<para>ÐñÝðåé íá áðïóõíäÝóåôå åíôåëþò ôçí ôñïöïäïóßá áðü ôçí èýñá PC
|
||
card þóôå ôï õëéêü íá åðáíÝëèåé óôçí áñ÷éêÞ ôïõ êáôÜóôáóç.
|
||
ÁðåíåñãïðïéÞóôå ðëÞñùò ôïí öïñçôü õðïëïãéóôÞ óáò. (Ìçí ôïí âÜëåôå
|
||
óå êáôÜóôáóç áíáìïíÞò Þ ýðíïõ, èá ðñÝðåé íá áðåíåñãïðïéçèåß
|
||
åíôåëþò.) ÐåñéìÝíåôå ãéá ëßãá ëåðôÜ êáé åðáíåêêéíÞóôå. Èá ðñÝðåé
|
||
ôþñá ç PC card íá ëåéôïõñãåß êáíïíéêÜ.</para>
|
||
|
||
<para>Ôï õëéêü êÜðïéùí öïñçôþí õðïëïãéóôþí óôçí ðñáãìáôéêüôçôá
|
||
ðáñáìÝíåé åíåñãü, áêüìá êáé üôáí õðïôßèåôáé üôé ï õðïëïãéóôÞò
|
||
åßíáé áíåíåñãüò. Áí ôï ðáñáðÜíù äåí Ý÷åé ôï åðéèõìçôü áðïôÝëåóìá,
|
||
ôåñìáôßóôå ôç ëåéôïõñãßá ôïõ õðïëïãéóôÞ óáò, áöáéñÝóôå ôçí
|
||
ìðáôáñßá, ðåñéìÝíåôå ëßãï, ôïðïèåôÞóôå îáíÜ ôçí ìðáôáñßá êáé
|
||
åðáíåêêéíÞóôå.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="boot-read-error">
|
||
<para>Ãéáôß ï öïñôùôÞò åêêßíçóçò ôïõ &os; äåß÷íåé ôï ìÞíõìá
|
||
ëÜèïõò <errorname>Read error</errorname> êáé óôáìáôÜåé ìåôÜ ôçí
|
||
ïèüíç ôïõ BIOS;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ï öïñôùôÞò åêêßíçóçò ôïõ &os; äåí áíáãíùñßæåé óùóôÜ ôçí
|
||
ãåùìåôñßá ôïõ óêëçñïý äßóêïõ. Ìðïñåßôå íá ôçí ñõèìßóåôå
|
||
÷åéñïêßíçôá ìÝóá áðü ôçí fdisk êáôÜ ôçí äçìéïõñãßá Þ ôñïðïðïßçóç
|
||
ôïõ slice ôïõ &os;.</para>
|
||
|
||
<para>Ìðïñåßôå íá âñåßôå ôéò óùóôÝò ôéìÝò ãéá ôçí ãåùìåôñßá ôïõ
|
||
ïäçãïý óôï BIOS ôïõ ìç÷áíÞìáôïò. ØÜîôå ãéá ôïí áñéèìü ôùí
|
||
êõëßíäñùí, êåöáëþí êáé ôïìÝùí ãéá ôïí ïäçãü ðïõ èÝëåôå.</para>
|
||
|
||
<para>ÌÝóá áðü ôçí fdisk ôïõ &man.sysinstall.8;, ðéÝóôå ôï
|
||
<keycap>G</keycap> ãéá íá ïñßóåôå ôçí ãåùìåôñßá ôïõ ïäçãïý.</para>
|
||
|
||
<para>Èá åìöáíéóôåß Ýíáò äéÜëïãïò ðïõ èá æçôÜåé ôïí áñéèìü ôùí
|
||
êõëßíäñùí, êåöáëþí êáé ôïìÝùí. ÐëçêôñïëïãÞóôå ôïõò áñéèìïýò ðïõ
|
||
âñÞêáôå áðü ôï BIOS, ÷ùñßæïíôáò ôïõò ìå êáíïíéêÝò êáèÝôïõò. Ãéá
|
||
ðáñÜäåéãìá, ãéá 5000 êõëßíäñïõò, 250 êåöáëÝò êáé 60 ôïìåßò, èá
|
||
ãñÜöáìå <userinput>5000/250/60</userinput>.</para>
|
||
|
||
<para>ÐéÝóôå enter ãéá íá ïñßóåôå ôéò ôéìÝò, êáé Ýðåéôá ôï
|
||
<keycap>W</keycap> ãéá íá ãñÜøåôå ôï íÝï ðßíáêá êáôáôìÞóåùí óôïí
|
||
ïäçãü.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="bootmanager-restore">
|
||
<para>¸íá Üëëï ëåéôïõñãéêü óýóôçìá êáôÝóôñåøå ôïí äéá÷åéñéóôÞ
|
||
åêêßíçóçò ìïõ. Ðùò ìðïñþ íá ôïí áðïêáôáóôÞóù;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Èá ðñÝðåé íá åéóÝëèåôå óôï &man.sysinstall.8; êáé íá
|
||
åðéëÝîåôå Configure êáé êáôüðéí Fdisk. ÅðéëÝîôå ôï äßóêï óôïí
|
||
ïðïßï âñßóêåôáé êáíïíéêÜ ï ÖïñôùôÞò Åêêßíçóçò ÷ñçóéìïðïéþíôáò ôï
|
||
ðëÞêôñï <keycap>space</keycap>. ÐéÝóôå ôï <keycap>W</keycap> ãéá
|
||
íá ãñÜøåôå ôéò áëëáãÝò óôïí ïäçãü. Èá åìöáíéóôåß ìéá ðñïôñïðÞ ðïõ
|
||
èá óáò ñùôÜåé ðïéï öïñôùôÞ åêêßíçóçò íá åãêáôáóôÞóåé. ÊÜíôå ôçí
|
||
áíôßóôïé÷ç åðéëïãÞ êáé ï öïñôùôÞò åêêßíçóçò èá
|
||
áðïêáôáóôáèåß.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="indefinite-wait-buffer">
|
||
<para>Ôé óçìáßíåé ôï ìÞíõìá ëÜèïõò
|
||
<errorname>swap_pager: indefinite wait buffer:</errorname>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Óçìáßíåé üôé ìéá äéáäéêáóßá ðñïóðáèåß íá ãñÜøåé ìéá
|
||
óåëßäá ìíÞìçò óôï äßóêï, êáé ç áðüðåéñá áõôÞ Ý÷åé êïëëÞóåé
|
||
ðñïóðáèþíôáò íá áðïêôÞóåé ðñüóâáóç óôï äßóêï ãéá ðåñéóóüôåñï
|
||
áðü 20 äåõôåñüëåðôá. Áõôü ìðïñåß íá óõìâåß áðü ÷áëáóìÝíïõò ôïìåßò
|
||
óôï óêëçñü äßóêï, ðñïâëçìáôéêÜ êáëþäéá, Þ Üëëï õëéêü ôï ïðïßï íá
|
||
ó÷åôßæåôáé ìå I/O. Áí ðñüêåéôáé ãéá ðñïâëçìáôéêü äßóêï, èá
|
||
äåßôå åðßóçò êáé áíôßóôïé÷á ìçíýìáôá óôï
|
||
<filename>/var/log/messages</filename> êáé óôçí Ýîïäï ôçò åíôïëÞò
|
||
<command>dmesg</command>. ÄéáöïñåôéêÜ, åëÝãîôå ôéò óõíäÝóåéò êáé
|
||
ôá êáëþäéá óáò.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="udma-icrc">
|
||
<para>Ôé åßíáé ôá óöÜëìáôá <quote>UDMA ICRC</quote>, êáé ðùò ìðïñþ
|
||
íá ôá äéïñèþóù;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï ðñüãñáììá ïäÞãçóçò &man.ata.4; áíáöÝñåé óöÜëìáôá ôýðïõ
|
||
<quote>UDMA ICRC</quote> üôáí åíôïðßóåé ðñüâëçìá óôçí ïñèüôçôá ôùí
|
||
äåäïìÝíùí óå ìéá ìåôáöïñÜ DMA áðü Þ ðñïò ôïí ïäçãü. Ôï ðñüãñáììá
|
||
ïäÞãçóçò èá ðñïóðáèÞóåé íá åðáíáëÜâåé ôç ìåôáöïñÜ ìåñéêÝò öïñÝò.
|
||
Áí üëåò ïé áðüðåéñåò áðïôý÷ïõí, èá áëëÜîåé ôçí êáôÜóôáóç
|
||
åðéêïéíùíßáò ôçò óõóêåõÞò áðü DMA óå PIO, ç ïðïßá åßíáé ðéï
|
||
áñãÞ.</para>
|
||
|
||
<para>Ôï ðñüâëçìá ìðïñåß íá ðñïêëçèåß áðü ðïëëïýò ðáñÜãïíôåò, áí
|
||
êáé ï ðéï óõíçèéóìÝíïò åßíáé ç ðñïâëçìáôéêÞ Þ ëáíèáóìÝíç
|
||
êáëùäßùóç. ÅëÝãîôå üôé ôá êáëþäéá ÁÔÁ äåí Ý÷ïõí õðïóôåß æçìéÜ,
|
||
êáé üôé åßíáé êáôÜëëçëùí ðñïäéáãñáöþí ãéá ôçí êáôÜóôáóç
|
||
ëåéôïõñãßáò Ultra DMA ðïõ ÷ñçóéìïðïéåßôå. Áí ÷ñçóéìïðïéåßôå
|
||
áöáéñïýìåíá óõñôÜñéá äßóêùí, èá ðñÝðåé åðßóçò íá åßíáé óõìâáôÜ.
|
||
Âåâáéùèåßôå üôé õðÜñ÷åé êáëÞ åðáöÞ óå üëåò ôéò óõíäÝóåéò. ¸÷ïõí
|
||
åðßóçò áíáöåñèåß ðñïâëÞìáôá üôáí ãßíåôáé åãêáôÜóôáóç åíüò ðáëéïý
|
||
ïäçãïý óôï ßäéï êáíÜëé DMA ìå Ýíá äßóêï Ultra DMA 66 (Þ ðéï
|
||
ãñÞãïñï). ÔÝëïò, ôá ëÜèç áõôÜ ìðïñåß íá óçìáßíïõí üôé ï äßóêïò
|
||
ðñüêåéôáé óýíôïìá íá ÷áëÜóåé. Ïé ðåñéóóüôåñïé êáôáóêåõáóôÝò
|
||
äßóêùí ðáñÝ÷ïõí ëïãéóìéêü åëÝã÷ïõ ãéá ôïõò ïäçãïýò ôïõò, åëÝãîôå
|
||
ëïéðüí ôï äßóêï óáò, êáé áí ÷ñåéÜæåôáé, ðÜñôå áíôßãñáöï ôùí
|
||
äåäïìÝíùí óáò êáé áíôéêáôáóôÞóôå ôïí.</para>
|
||
|
||
<para>Ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ôï âïçèçôéêü ðñüãñáììá
|
||
&man.atacontrol.8; ãéá íá äåßôå êáé íá åðéëÝîåôå ôçí êáôÜóôáóç
|
||
ëåéôïõñãßáò DMA Þ PIO ðïõ ÷ñçóéìïðïéåßôáé áðü êÜèå óõóêåõÞ ATA.
|
||
Ðéï óõãêåêñéìÝíá, ç åíôïëÞ
|
||
<command>atacontrol mode <replaceable>channel</replaceable>
|
||
</command> èá óáò äåßîåé ôçí êáôÜóôáóç ëåéôïõñãßáò ôùí óõóêåõþí
|
||
åíüò óõãêåêñéìÝíïõ êáíáëéïý ÁÔÁ, üðïõ ôï ðñùôåýïí êáíÜëé Ý÷åé ôçí
|
||
áñßèìçóç 0 ê.ï.ê.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="lock-order-reversal">
|
||
<para>Ôé åßíáé ôï <errorname>lock order reversal</errorname>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ï &a.rwatson; áðÜíôçóå ìå óáöÞíåéá áõôÞ ôçí åñþôçóç óôçí
|
||
ëßóôá &a.current.name;, óå ìéá óõæÞôçóç ìå ôßôëï
|
||
<quote><ulink
|
||
url="http://docs.freebsd.org/cgi/getmsg.cgi?fetch=65165+0+/usr/local/www/db/text/2003/freebsd-current/20031221.freebsd-current">lock order reversals - ôé óçìáßíïõí;</ulink></quote></para>
|
||
|
||
<blockquote>
|
||
<attribution>Áðü ôïí &a.rwatson; óôç ëßóôá &a.current.name;, óôéò
|
||
14 Äåêåìâñßïõ 2003</attribution>
|
||
|
||
<para>Ïé ðñïåéäïðïéÞóåéò áõôÝò ðñïÝñ÷ïíôáé áðü ôï Witness, Ýíá
|
||
äéáãíùóôéêü óýóôçìá ãéá êëåéäþìáôá êáôÜ ôç ëåéôïõñãßá (run-time
|
||
lock) ôï ïðïßï âñßóêåôáé óôïõò ðõñÞíåò -CURRENT ôïõ &os; (áëëÜ
|
||
áöáéñåßôáé óôéò åðßóçìåò åêäüóåéò). Ìðïñåßôå íá äéáâÜóåôå
|
||
ðåñéóóüôåñá ãéá ôï Witness êáé ôéò äõíáôüôçôåò ôïõ, óôç óåëßäá
|
||
manual &man.witness.4;. Ìåôáîý Üëëùí ôï Witness åðáëçèåýåé ôç
|
||
óåéñÜ ôùí run-time locks ÷ñçóéìïðïéþíôáò Ýíá óõíäõáóìü áðü
|
||
åíóùìáôùìÝíåò óåéñÝò êëåéäùìÜôùí êáèþò êáé áðü ôç óåéñÜ ðïõ
|
||
áíé÷íåýåôáé êáôÜ ôçí åêôÝëåóç, êáé ðáñÜãåé ðñïåéäïðïéÞóåéò óôçí
|
||
êïíóüëá üôáí ðáñáâéÜæïíôáé. Óêïðüò áõôÞò ôçò ëåéôïõñãßáò åßíáé
|
||
íá áíé÷íåýïíôáé ðéèáíÜ deadlocks ôá ïðïßá ìðïñåß íá ïöåßëïíôáé
|
||
óå ðáñáâéÜóåéò ôçò óåéñÜò ôùí êëåéäùìÜôùí. Åßíáé áîéïóçìåßùôï
|
||
üôé ôï Witness åßíáé êÜðùò óõíôçñçôéêü, êáé åßíáé ðéèáíüí íá
|
||
äþóåé ëÜèïò ðñïåéäïðïéÞóåéò. Óôçí ðåñßðôùóç ðïõ ôï Witness
|
||
áíáöÝñåé Ýíá ðñáãìáôéêü ðñüâëçìá ìå ôçí óåéñÜ ôùí êëåéäùìÜôùí,
|
||
åßíáé óáí íá ëÝåé "áí Þóáóôáí Üôõ÷ïò, èá óáò åß÷å óõìâåß
|
||
deadlock óå áõôü ôï óçìåßï". ÕðÜñ÷ïõí êÜðïéåò ãíùóôÝò
|
||
ðåñéðôþóåéò "ëáíèáóìÝíçò äéÜãíùóçò" ãéá ôéò ïðïßåò ÷ñåéÜæåôáé
|
||
íá äçìéïõñãÞóïõìå êáëýôåñç ôåêìçñßùóç þóôå íá áðïöýãïõìå êáé
|
||
ôéò ðåñéôôÝò áíáöïñÝò óöáëìÜôùí. Ïé ëéãüôåñï ãíùóôÝò
|
||
ðåñéðôþóåéò ïöåßëïíôáé ðåñéóóüôåñï óå íÝá êëåéäþìáôá, êáèþò ïé
|
||
áíôéóôñïöÝò óôç óåéñÜ ôùí êëåéäùìÜôùí äéïñèþíïíôáé ãñÞãïñá
|
||
åðåéäÞ ôï Witness åßíáé ðÜíôá áðáó÷ïëçìÝíï êáé äçìéïõñãåß
|
||
óõíÝ÷åéá íÝåò ðñïåéäïðïéÞóåéò :-).</para>
|
||
</blockquote>
|
||
|
||
<note>
|
||
<para>Áõôü ðïõ áðïêáëïýìå "ëáíèáóìÝíç äéÜãíùóç" äçìéïõñãåßôáé óôçí
|
||
ðñáãìáôéêüôçôá üôáí ôï Witness âñßóêåé êÜðïéï ðïëý ðéï óïâáñü
|
||
ëÜèïò. ÔÝôïéá ëÜèç åßíáé ôõðéêÜ ôï óöÜëìá óåëßäáò (page
|
||
fault) Þ ëáíèáóìÝíá äåäïìÝíá óôç ìíÞìç ìÝóá óôïí ðõñÞíá, Þ ôÝëïò
|
||
óýãêñïõóç ïíïìáóßáò ìå êÜðïéá mutexes.</para>
|
||
</note>
|
||
|
||
<note>
|
||
<para>Äåßôå ôçí óåëßäá ôïõ <ulink
|
||
url="http://sources.zabbadoz.net/freebsd/lor.html">Bjoern Zeeb ó÷åôéêÜ ìå ôéò áíôéóôñïöÝò êëåéäùìÜôùí</ulink> ãéá ôçí êáôÜóôáóç ôùí ãíùóôþí
|
||
áíôéóôñïöþí.</para>
|
||
</note>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="called-with-non-sleepable-locks-held">
|
||
<para>Ôé óçìáßíåé ôï ìÞíõìá <errorname>Called ... with the following
|
||
non-sleepable locks held</errorname>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Óçìáßíåé üôé êëÞèçêå ìéá óõíÜñôçóç ìå äõíáôüôçôá sleep åíþ
|
||
ôçí ßäéá óôéãìÞ Þôáí åíåñãü êÜðïéï êëåßäùìá mutex (Þ áíôßóôïé÷ï
|
||
÷ùñßò äõíáôüôçôá sleep).</para>
|
||
|
||
<para>Ï ëüãïò ãéá ôïí ïðïßï áõôü åßíáé ëÜèïò åßíáé åðåéäÞ ôá mutexes
|
||
äåí ðñïïñßæïíôáé íá êñáôïýíôáé ãéá ìåãÜëá ÷ñïíéêÜ äéáóôÞìáôá.
|
||
Åßíáé ìüíï ãéá ôç óõíôÞñçóç ìéêñþí ðåñéüäùí óõã÷ñïíéóìïý. ÁõôÞ
|
||
ç ðñïãñáììáôéóôéêÞ óõìöùíßá åðéôñÝðåé óôïõò ïäçãïýò óõóêåõþí íá
|
||
÷ñçóéìïðïéïýí mutexes ãéá íá óõã÷ñïíßæïíôáé ìå ôá õðüëïéðá
|
||
ðñïãñÜììáôá ôïõ ðõñÞíá êáôÜ ôçí äéÜñêåéá ôùí interrupts. Ôá
|
||
interrupts (óôï &os;) äåí ìðïñïýí íá ðåñéÝëèïõí óå êáôÜóôáóç
|
||
sleep. Ãéá ôï ëüãï áõôü åßíáé áðáñáßôçôï íá ìçí ìðëïêÜñåôáé ï
|
||
ðõñÞíáò ãéá ìåãÜëï äéÜóôçìá áðü êÜðïéï õðïóýóôçìá ðïõ êñáôÜåé
|
||
Ýíá mutex.</para>
|
||
|
||
<para>Ãéá íá åíôïðéóôïýí áõôÜ ôá ëÜèç, ìðïñïýí íá ðñïóôåèïýí
|
||
õðïèÝóåéò (assertions) óôïí ðõñÞíá ïé ïðïßåò áëëçëåðéäñïýí ìå
|
||
ôï õðïóýóôçìá witness ãéá íá äþóïõí Ýíá ðñïåéäïðïéçôéêü ìÞíõìá
|
||
(Þ ìÞíõìá ëÜèïõò, áíÜëïãá ìå ôéò ñõèìßóåéò ôïõ óõóôÞìáôïò) üôáí
|
||
ãßíåôáé ìéá êëÞóç ç ïðïßá ðéèáíþò íá äçìéïõñãåß ìðëïêÜñéóìá ôçí
|
||
óôéãìÞ ðïõ êñáôéÝôáé Ýíá mutex.</para>
|
||
|
||
<para>Åí óõíôïìßá, áõôïý ôïõ åßäïõò ïé ðñïåéäïðïéÞóåéò äåí åßíáé
|
||
óõíÞèùò ìïéñáßåò, áëëÜ õðü ïñéóìÝíåò áôõ÷åßò ðñïûðïèÝóåéò,
|
||
ìðïñåß íá ðñïêáëÝóïõí áíåðéèýìçôá öáéíüìåíá ôá ïðïßá êõìáßíïíôáé
|
||
áðü ìéá óôéãìéáßá ðôþóç óôçí áðüêñéóç ôïõ óõóôÞìáôïò, ìÝ÷ñé
|
||
ðëÞñçò êáôÜññåõóç.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="touch-not-found">
|
||
<para>Ãéáôß ç äéáäéêáóßá buildworld/installworld óôáìáôÜåé ìå ôï
|
||
ìÞíõìá <errorname>touch: not found</errorname>;</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ôï ìÞíõìá áõôü äåí óçìáßíåé üôé óáò ëåßðåé ôï âïçèçôéêü
|
||
ðñüãñáììá &man.touch.1;. Ôï ëÜèïò áõôü ðñïêáëåßôáé óõíÞèùò áðü
|
||
ëáíèáóìÝíç, ìåëëïíôéêÞ, óÞìáíóç çìåñïìçíßáò ôùí áñ÷åßùí. Áí ôï
|
||
ñïëüé CMOS ôïõ õðïëïãéóôÞ óáò åßíáé ñõèìéóìÝíï ãéá ôïðéêÞ þñá,
|
||
ðñÝðåé íá åêôåëÝóåôå ôçí åíôïëÞ
|
||
<command>adjkerntz -i</command> ãéá íá ñõèìßóåôå ôï ñïëüé
|
||
ôïõ ðõñÞíá üôáí åêêéíåßôå óå êáôÜóôáóç ëåéôïõñãßáò åíüò
|
||
÷ñÞóôç.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="commercial">
|
||
<title>ÅìðïñéêÝò ÅöáñìïãÝò</title>
|
||
|
||
<note>
|
||
<para>This section is still very sparse, though we are hoping, of
|
||
course, that companies will add to it! :) The FreeBSD group has
|
||
no financial interest in any of the companies listed here but
|
||
simply lists them as a public service (and feels that commercial
|
||
interest in FreeBSD can have very positive effects on FreeBSD's
|
||
long-term viability). We encourage commercial software vendors to
|
||
send their entries here for inclusion. See <ulink
|
||
url="&url.base;/commercial/index.html">the
|
||
Vendors page</ulink> for a longer list.</para>
|
||
</note>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="officesuite">
|
||
<para>Where can I get an Office Suite for FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The open-source <ulink
|
||
url="http://www.openoffice.org">OpenOffice.org</ulink> office
|
||
suite works natively on FreeBSD. The &linux; version of
|
||
<ulink
|
||
url="http://www.sun.com/staroffice/">StarOffice</ulink>,
|
||
the value-added closed-source version of OpenOffice.org, also
|
||
works on FreeBSD.</para>
|
||
|
||
<para>FreeBSD also includes a variety of text editors,
|
||
spreadsheets, and drawing programs in the Ports
|
||
Collection.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
<qandaentry>
|
||
<question id="motif">
|
||
<para>Where can I get &motif; for FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The Open Group has released the source code to &motif; 2.2.2.
|
||
You can install the <literal>open-motif</literal> package, or
|
||
compile it from ports. Refer to
|
||
<ulink url="&url.books.handbook;/ports.html">the ports section of the
|
||
Handbook</ulink> for more information on how to do this.</para>
|
||
|
||
<note>
|
||
<para>The Open &motif; distribution only allows redistribution
|
||
if it is running on an <ulink url="http://www.opensource.org/">
|
||
open source</ulink> operating system.</para>
|
||
</note>
|
||
|
||
<para>In addition, there are commercial distributions of the &motif;
|
||
software available. These, however, are not for free, but their
|
||
license allows them to be used in closed-source software.
|
||
Contact <link linkend="apps2go">Apps2go</link> for the
|
||
least expensive ELF &motif; 2.1.20 distribution for FreeBSD
|
||
(either &i386; or Alpha).<anchor id="apps2go"/></para>
|
||
|
||
<para>There are two distributions, the <quote>development
|
||
edition</quote> and the <quote>runtime edition</quote> (for
|
||
much less). These distributions includes:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>OSF/&motif; manager, xmbind, panner, wsm.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Development kit with uil, mrm, xm, xmcxx, include
|
||
and Imake files.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Static and dynamic ELF libraries.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Demonstration applets.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>Be sure to specify that you want the FreeBSD version of
|
||
&motif; when ordering (do not forget to mention the architecture
|
||
you want too)! Versions for NetBSD and OpenBSD are also sold by
|
||
<emphasis>Apps2go</emphasis>. This is currently a FTP only
|
||
download.</para>
|
||
|
||
<variablelist>
|
||
<varlistentry>
|
||
<term>More info</term>
|
||
<listitem>
|
||
<para><ulink url="http://www.apps2go.com/">
|
||
Apps2go WWW page</ulink></para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>or</term>
|
||
<listitem>
|
||
<para>
|
||
<email>sales@apps2go.com</email> or
|
||
<email>support@apps2go.com</email>
|
||
</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>or</term>
|
||
<listitem>
|
||
<para>phone (817) 431 8775 or +1 817 431-8775</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
</variablelist>
|
||
|
||
<para>Contact <link linkend="xig">Xi Graphics</link> for an
|
||
a.out &motif; 2.0 distribution for FreeBSD.</para>
|
||
|
||
<para>This distribution includes:</para>
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>OSF/&motif; manager, xmbind, panner, wsm.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Development kit with uil, mrm, xm, xmcxx, include
|
||
and Imake files.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Static and dynamic libraries (for use with FreeBSD
|
||
2.2.8 and earlier).</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Demonstration applets.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Preformatted manual pages.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>Be sure to specify that you want the FreeBSD version
|
||
of &motif; when ordering! Versions for BSDI and &linux; are also
|
||
sold by <emphasis>Xi Graphics</emphasis>. This is currently a 4
|
||
diskette set... in the future this will change to a unified CD
|
||
distribution like their CDE.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="cde">
|
||
<para>Where can I get CDE for FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para><link linkend="xig">Xi Graphics</link> used to sell CDE
|
||
for FreeBSD, but no longer do.</para>
|
||
|
||
<para><ulink url="http://www.kde.org/">KDE</ulink> is an open
|
||
source X11 desktop which is similar to CDE in many respects.
|
||
You might also like the look and feel of <ulink
|
||
url="http://www.xfce.org/">xfce</ulink>. KDE and xfce are both
|
||
in the <ulink url="&url.base;/ports/index.html">ports
|
||
system</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="commercial-xserver">
|
||
<para>Are there any commercial high-performance X servers?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes, <ulink url="http://www.xig.com/">Xi Graphics</ulink>
|
||
sells Accelerated-X products for FreeBSD and other Intel based
|
||
systems.</para>
|
||
|
||
<para>The Xi Graphics offering is a high performance X Server
|
||
that offers easy configuration, support for multiple concurrent
|
||
video boards and is distributed in binary form only, in a
|
||
unified diskette distribution for FreeBSD and &linux;. Xi
|
||
Graphics also offers a high performance X Server tailored for
|
||
laptop support.<anchor id="xig"/></para>
|
||
|
||
<para>There is a free <quote>compatibility demo</quote> of
|
||
version 5.0 available.</para>
|
||
|
||
<para>Xi Graphics also sells &motif; and CDE for FreeBSD (see
|
||
above).</para>
|
||
|
||
<variablelist>
|
||
<varlistentry>
|
||
<term>More info</term>
|
||
<listitem>
|
||
<para><ulink url="http://www.xig.com/">
|
||
Xi Graphics WWW page</ulink></para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>or</term>
|
||
<listitem>
|
||
<para>
|
||
<email>sales@xig.com</email>
|
||
or <email>support@xig.com</email>
|
||
</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>or</term>
|
||
<listitem>
|
||
<para>phone (800) 946 7433 or +1 303 298-7478.</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
</variablelist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="database-systems">
|
||
<para>Are there any Database systems for FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes! See the <ulink
|
||
url="&url.base;/commercial/software_bycat.html#CATEGORY_DATABASE">
|
||
Commercial Vendors</ulink> section of FreeBSD's Web site.</para>
|
||
|
||
<para>Also see the <ulink
|
||
url="&url.base;/ports/databases.html">
|
||
Databases</ulink> section of the Ports collection.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="oracle-support">
|
||
<para>Can I run &oracle; on FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes. The following pages tell you exactly how to set up
|
||
&linux;-&oracle; on FreeBSD:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para><ulink
|
||
url="http://www.unixcities.com/oracle/index.html">
|
||
http://www.unixcities.com/oracle/index.html</ulink></para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para><ulink
|
||
url="http://www.shadowcom.net/freebsd-oracle9i/">
|
||
http://www.shadowcom.net/freebsd-oracle9i/</ulink></para>
|
||
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="applications">
|
||
<title>ÅöáñìïãÝò Ôåëéêïý ×ñÞóôç</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="user-apps">
|
||
<para>So, where are all the user applications?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Please take a look at <ulink
|
||
url="&url.base;/ports/index.html">the ports page</ulink>
|
||
for info on software packages ported to FreeBSD. The list
|
||
currently tops &os.numports; and is growing daily, so come
|
||
back to check often or subscribe to the
|
||
<literal>freebsd-announce</literal> <link
|
||
linkend="mailing">mailing list</link> for periodic updates
|
||
on new entries.</para>
|
||
|
||
<para>Most ports should work on the 4.X, 5.X, and 6.X branches.
|
||
Each time a FreeBSD release is made, a snapshot of the
|
||
ports tree at the time of release in also included in the
|
||
<filename>ports/</filename> directory.</para>
|
||
|
||
<para>We also support the concept of a
|
||
<quote>package</quote>, essentially no more than a compressed
|
||
binary distribution with a little extra intelligence
|
||
embedded in it for doing whatever custom installation work
|
||
is required. A package can be installed and uninstalled
|
||
again easily without having to know the gory details of
|
||
which files it includes.</para>
|
||
|
||
<para>Use the package installation menu in
|
||
<filename>/stand/sysinstall</filename> (under the
|
||
post-configuration menu item) or invoke the
|
||
&man.pkg.add.1; command on the specific package files you
|
||
are interested in installing. Package files can usually be
|
||
identified by their <filename>.tgz</filename> or <filename>.tbz</filename> suffix and
|
||
CDROM distribution people will have a
|
||
<filename>packages/All</filename> directory on their CD
|
||
which contains such files. They can also be downloaded
|
||
over the net for various versions of FreeBSD at the
|
||
following locations:</para>
|
||
|
||
<variablelist>
|
||
<varlistentry>
|
||
<term>for 4.X-RELEASE/4-STABLE</term>
|
||
<listitem>
|
||
<para><ulink
|
||
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/">
|
||
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/</ulink></para>
|
||
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>for 5.X-RELEASE/5-STABLE</term>
|
||
<listitem>
|
||
<para><ulink
|
||
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-stable/">
|
||
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-stable</ulink></para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>for 6.X-RELEASE/6-STABLE</term>
|
||
<listitem>
|
||
<para><ulink
|
||
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-6-stable/">
|
||
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-6-stable</ulink></para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>for 7-CURRENT</term>
|
||
<listitem>
|
||
<para><ulink
|
||
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-7-current/">
|
||
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-7-current</ulink></para>
|
||
</listitem>
|
||
</varlistentry>
|
||
</variablelist>
|
||
|
||
<para>or your nearest local mirror site.</para>
|
||
|
||
<para>Note that all ports may not be available as packages since
|
||
new ones are constantly being added. It is always a good idea
|
||
to check back periodically to see which packages are available
|
||
at the <ulink
|
||
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/">ftp.FreeBSD.org</ulink>
|
||
master site.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="configure-inn">
|
||
<para>How do I configure INN (Internet News) for my machine?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>After installing the <filename
|
||
role="package">news/inn</filename> package or port, an
|
||
excellent place to start is <ulink
|
||
url="http://www.visi.com/~barr/INN.html">Dave
|
||
Barr's INN Page</ulink> where you will find the INN
|
||
FAQ.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="java">
|
||
<para>Does FreeBSD support &java;?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes. Please see <ulink
|
||
url="&url.base;/java/index.html">
|
||
http://www.FreeBSD.org/java/</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ports-4x">
|
||
<para>Why can I not build this port on my 4.X-STABLE machine?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you are running a FreeBSD version that lags
|
||
significantly behind -CURRENT or -STABLE, you may need to
|
||
update your ports collection; see the <ulink
|
||
url="&url.books.porters-handbook;/keeping-up.html">
|
||
Keeping Up</ulink> section of the Porter's Handbook for further
|
||
information on how to do this.
|
||
If you are up to date,
|
||
then someone might have committed a change to the port which
|
||
works for -CURRENT but which broke the port for -STABLE. Please
|
||
submit a bug report on this with the
|
||
&man.send-pr.1; command, since the ports
|
||
collection is supposed to work for both the -CURRENT and
|
||
-STABLE branches.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="make-index">
|
||
<para>I just tried to build <filename>INDEX</filename>
|
||
using <command>make index</command>, and it failed.
|
||
Why?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>First, always make sure that you have a completely
|
||
up-to-date Ports Collection. Errors that affect building
|
||
<filename>INDEX</filename> from an up-to-date copy of the
|
||
Ports Collection are high-visibility and are thus almost
|
||
always fixed immediately.</para>
|
||
|
||
<para>However, if you are up-to-date, perhaps you are seeing
|
||
another problem. <command>make index</command> has a
|
||
known bug in dealing with incomplete copies of the Ports
|
||
Collection. It assumes that you have a local copy of every
|
||
single port that every other port that you have a local copy
|
||
of depends on. To explain, if you have a copy of
|
||
<filename>foo/bar</filename> on your disk, and
|
||
<filename>foo/bar</filename> depends on
|
||
<filename>baz/quux</filename>, then you must also have
|
||
a copy of <filename>baz/quux</filename> on your disk, and
|
||
the ports <filename>baz/quux</filename> depends on, and
|
||
so on. Otherwise, <command>make index</command> has
|
||
insufficient information to create its dependency tree.</para>
|
||
|
||
<para>This is particularly a problem for &os; users who
|
||
utilize &man.cvsup.1; to track the Ports Collection but
|
||
choose not to install certain categories by specifying
|
||
them in <filename>refuse</filename>. In theory, one
|
||
should be able to refuse categories, but in practice
|
||
there are too many ports that depend on ports in other
|
||
categories. Until someone comes up with a solution for
|
||
this problem, the general rule is is that if you want to
|
||
build <filename>INDEX</filename>, you must have a complete
|
||
copy of the Ports Collection.</para>
|
||
|
||
<para>There are rare cases where <filename>INDEX</filename>
|
||
will not build due to odd cases involving
|
||
<makevar>WITH_<replaceable>*</replaceable></makevar> or
|
||
<makevar>WITHOUT_<replaceable>*</replaceable></makevar>
|
||
variables being set in <filename>make.conf</filename>. If
|
||
you suspect that this is the case, please try to make
|
||
<filename>INDEX</filename> with those Makevars turned off
|
||
before reporting it to &a.ports;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="cvsup-in-base">
|
||
<para>Why is CVSup not integrated in the main FreeBSD tree?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The FreeBSD base system is designed as self-hosting - it
|
||
should be possible to build the whole operating system starting
|
||
with a very limited set of tools. Thus, the actual build tools
|
||
needed to compile the FreeBSD sources are bundled with the
|
||
sources themselves. This includes a C compiler (&man.gcc.1;),
|
||
&man.make.1;, &man.awk.1;, and similar tools.</para>
|
||
|
||
<para>Since CVSup is written in Modula-3, adding it to the FreeBSD
|
||
base system would also require adding and maintaining a Modula-3
|
||
compiler. This would lead to both an increase in the disk space
|
||
consumed by the FreeBSD sources and additional maintenance work.
|
||
Thus, it is much easier for both the developers and users to
|
||
keep CVSup as a separate port, which can be easily installed as
|
||
a package bundled on the FreeBSD installation CDs.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ports-update">
|
||
<para>I updated the sources, now how do I update my installed
|
||
ports?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>FreeBSD does not include a port upgrading tool, but it
|
||
does have some tools to make the upgrade process somewhat
|
||
easier. You can also install additional tools to simplify
|
||
port handling.</para>
|
||
|
||
<para>The &man.pkg.version.1; command can generate a script
|
||
that will update installed ports to the latest version in
|
||
the ports tree.</para>
|
||
|
||
<screen>&prompt.root; <userinput>pkg_version -c > <replaceable>/tmp/myscript</replaceable></userinput></screen>
|
||
|
||
<para>The output script <emphasis>must</emphasis> be edited by
|
||
hand before you use it. Recent versions of
|
||
&man.pkg.version.1; force this by inserting an
|
||
&man.exit.1; at the beginning of the script.</para>
|
||
|
||
<para>You should save the output of the script, as it will note
|
||
packages that depend on the one that has been updated. These
|
||
may or may not need to be updated as well. The usual case where
|
||
they need to be updated is that a shared library has changed
|
||
version numbers, so the ports that used that library need to be
|
||
rebuilt to use the new version.</para>
|
||
|
||
<note>
|
||
<para>Beginning with FreeBSD 5.0 (and higher revisions),
|
||
&man.pkg.version.1; no longer supports the
|
||
<option>-c</option> option.</para>
|
||
</note>
|
||
|
||
<para>If you have the disk space, you can use the
|
||
<command>portupgrade</command> tool to automate all of
|
||
this. <command>portupgrade</command> includes various
|
||
tools to simplify package handling. It is available under
|
||
<filename role="package">ports-mgmt/portupgrade</filename>.
|
||
Since it is written in Ruby,
|
||
<command>portupgrade</command> is an unlikely candidate for
|
||
integration with the main FreeBSD tree. That should not
|
||
stop anyone from using it, however.</para>
|
||
|
||
<para>If your system is up full time, the &man.periodic.8; system
|
||
can be used to generate a weekly list of ports that might need
|
||
updating by setting
|
||
<literal>weekly_status_pkg_enable="YES"</literal> in
|
||
<filename>/etc/periodic.conf</filename>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="minimal-sh">
|
||
<para>Why is <command>/bin/sh</command> so minimal? Why does
|
||
FreeBSD not use <command>bash</command> or another shell?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Because &posix; says that there shall be such a shell.</para>
|
||
|
||
<para>The more complicated answer: many people need to write shell
|
||
scripts which will be portable across many systems. That is why
|
||
&posix; specifies the shell and utility commands in great detail.
|
||
Most scripts are written in Bourne shell, and because several
|
||
important programming interfaces (&man.make.1;, &man.system.3;,
|
||
&man.popen.3;, and analogues in higher-level scripting
|
||
languages like Perl and Tcl) are specified to use the Bourne
|
||
shell to interpret commands. Because the Bourne shell is so
|
||
often and widely used, it is important for it to be quick to
|
||
start, be deterministic in its behavior, and have a small
|
||
memory footprint.</para>
|
||
|
||
<para>The existing implementation is our best effort at meeting as
|
||
many of these requirements simultaneously as we can. In order to
|
||
keep <command>/bin/sh</command> small, we have not provided many
|
||
of the convenience features that other shells have. That is why the
|
||
Ports Collection includes more featureful shells like bash, scsh,
|
||
tcsh, and zsh. (You can compare for yourself the memory
|
||
utilization of all these shells by looking at the
|
||
<quote>VSZ</quote> and <quote>RSS</quote> columns in a <command>ps
|
||
-u</command> listing.)</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="netscape-slow-startup">
|
||
<para>Why do &netscape; and Opera take so long to
|
||
start?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The usual answer is that DNS on your system is
|
||
misconfigured. Both &netscape; and Opera perform DNS checks
|
||
when starting up. The browser will not appear on your
|
||
desktop until the program either gets a response or
|
||
determines that the system has no network
|
||
connection.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ports-base-update">
|
||
<para>I updated parts of the Ports Collection using CVSup, and
|
||
now many ports fail to build with mysterious error messages!
|
||
What happened? Is the Ports Collection broken in some major
|
||
way?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you only update parts of the Ports Collection, using
|
||
one of its CVSup subcollections and not the
|
||
<literal>ports-all</literal> CVSup collection, you should
|
||
<emphasis>always</emphasis> update the
|
||
<literal>ports-base</literal> subcollection too! The reasons
|
||
are described <ulink
|
||
url="&url.books.handbook;/cvsup.html#CVSUP-COLLEC-PBASE-WARN">in the
|
||
Handbook</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="midi-sound-files">
|
||
<para>How do I create audio CDs from my MIDI files?</para>
|
||
</question>
|
||
|
||
<answer><para>To create audio CDs from MIDI files, first
|
||
install <filename role="package">audio/timidity++</filename>
|
||
from ports then install manually the GUS patches set by Eric
|
||
A. Welsh, available at <ulink
|
||
url="http://www.stardate.bc.ca/eawpatches/html/default.htm"></ulink>.
|
||
After timidity++ has been installed properly, midi files may
|
||
be converted to wav files with the following command
|
||
line:</para>
|
||
|
||
<screen>&prompt.user; <userinput>timidity -Ow -s 44100 -o /tmp/juke/01.wav 01.mid</userinput></screen>
|
||
|
||
<para>The wav files can then be converted to other formats
|
||
or burned onto audio CDs, as described in the FreeBSD
|
||
Handbook.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="kernelconfig">
|
||
<title>Ñýèìéóç ÐõñÞíá</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="make-kernel">
|
||
<para>I would like to customize my kernel. Is it difficult?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Not at all! Check out the <ulink
|
||
url="&url.books.handbook;/kernelconfig.html">
|
||
kernel config section of the Handbook</ulink>.</para>
|
||
|
||
<note>
|
||
<para>We recommend that you make a dated snapshot of
|
||
your new <filename>/kernel</filename> called
|
||
<filename>/kernel.YYMMDD</filename> after you get it
|
||
working properly. Also back up your new
|
||
<filename>/modules</filename> directory to
|
||
<filename>/modules.YYMMDD</filename>. That way, if
|
||
you make a mistake the next time you play with your
|
||
configuration you can boot the backup kernel instead
|
||
of having to fall back to
|
||
<filename>kernel.GENERIC</filename>. This is
|
||
particularly important if you are now booting from a
|
||
controller that GENERIC does not support.</para>
|
||
</note>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="missing-hw-float">
|
||
<para>My kernel compiles fail because
|
||
<literal>_hw_float</literal> is missing. How do I solve
|
||
this problem?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You probably removed <devicename>npx0</devicename>
|
||
(see &man.npx.4;) from your kernel configuration file
|
||
because you do not have a math co-processor. The
|
||
<devicename>npx0</devicename> device is
|
||
<emphasis>MANDATORY</emphasis>. Somewhere inside your
|
||
hardware lies a device that provides hardware
|
||
floating-point support, even if it is no longer a separate
|
||
device as used in the good old 386 days. You
|
||
<emphasis>must</emphasis> include the
|
||
<devicename>npx0</devicename> device. Even if you manage
|
||
to build a kernel without <devicename>npx0</devicename>
|
||
support, it will not boot anyway. </para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="why-kernel-big">
|
||
<para>Why is my kernel so big (over 10MB)?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Chances are, you compiled your kernel in
|
||
<emphasis>debug mode</emphasis>. Kernels built in debug
|
||
mode contain many symbols that are used for debugging,
|
||
thus greatly increasing the size of the kernel. Note that
|
||
there will be little or no performance decrease from
|
||
running a debug kernel, and it is useful to keep one
|
||
around in case of a system panic.</para>
|
||
|
||
<para>However, if you are running low on disk space, or
|
||
you simply do not want to run a debug kernel, make sure
|
||
that both of the following are true:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>You do not have a line in your kernel
|
||
configuration file that reads:</para>
|
||
|
||
<programlisting>makeoptions DEBUG=-g</programlisting>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>You are not running &man.config.8; with
|
||
the <option>-g</option> option.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>Either of the above settings will cause your kernel to
|
||
be built in debug mode. As long as you make sure you
|
||
follow the steps above, you can build your kernel
|
||
normally, and you should notice a fairly large size
|
||
decrease; most kernels tend to be around 1.5MB to
|
||
2MB.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="multiport-serial-interrupts">
|
||
<para>Why do I get interrupt conflicts with multi-port serial
|
||
code?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>When I compile a kernel
|
||
with multi-port serial code, it tells me that only the first
|
||
port is probed and the rest skipped due to interrupt conflicts.
|
||
How do I fix this?</para>
|
||
|
||
<para>The problem here is that
|
||
FreeBSD has code built-in to keep the kernel from getting
|
||
trashed due to hardware or software conflicts. The way to fix
|
||
this is to leave out the IRQ settings on all but one port. Here
|
||
is an example:</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>Why does every kernel I try to build fail to compile, even
|
||
GENERIC?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>There are a number of possible causes for this problem.
|
||
They are, in no particular order:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>You are not using the new <command>make
|
||
buildkernel</command> and <command>make
|
||
installkernel</command> targets, and your source tree is
|
||
different from the one used to build the currently running
|
||
system (e.g., you are compiling 4.3-RELEASE on a 4.0-RELEASE
|
||
system). If you are attempting an upgrade, please read the
|
||
<filename>/usr/src/UPDATING</filename> file, paying
|
||
particular attention to the <quote>COMMON ITEMS</quote>
|
||
section at the end.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>You are using the new <command>make
|
||
buildkernel</command> and <command>make
|
||
installkernel</command> targets, but you failed to assert
|
||
the completion of the <command>make buildworld</command>
|
||
target. The <command>make buildkernel</command> target
|
||
relies on files generated by the <command>make
|
||
buildworld</command> target to complete its job
|
||
correctly.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Even if you are trying to build <link
|
||
linkend="stable">FreeBSD-STABLE</link>, it is possible that
|
||
you fetched the source tree at a time when it was either
|
||
being modified, or broken for other reasons; only releases
|
||
are absolutely guaranteed to be buildable, although <link
|
||
linkend="stable">FreeBSD-STABLE</link> builds fine the
|
||
majority of the time. If you have not already done so, try
|
||
re-fetching the source tree and see if the problem goes
|
||
away. Try using a different server in case the one you are
|
||
using is having problems.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="scheduler-in-use">
|
||
<para>How can I verify which scheduler is in use on a
|
||
running system?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you are running &os; version 5.2.1 or earlier, check for
|
||
the existence of the <literal>kern.quantum</literal> sysctl.
|
||
If you have it, you should see something like this:</para>
|
||
|
||
<screen>&prompt.user; sysctl <replaceable>kern.quantum</replaceable>
|
||
kern.sched.quantum: 99960</screen>
|
||
|
||
<para>If the <literal>kern.quantum</literal> sysctl exists, you are
|
||
using the 4BSD scheduler. If not, you will get an error printed
|
||
by &man.sysctl.8; (which you can safely ignore):</para>
|
||
|
||
<screen>&prompt.user; sysctl <replaceable>kern.sched.quantum</replaceable>
|
||
sysctl: unknown oid 'kern.sched.quantum'</screen>
|
||
|
||
<para>In &os; version 5.3-RELEASE and later, the name of the
|
||
scheduler currently being used is directly available as the value
|
||
of the <literal>kern.sched.name</literal> sysctl:</para>
|
||
|
||
<screen>&prompt.user; sysctl <replaceable>kern.sched.name</replaceable>
|
||
kern.sched.name: 4BSD</screen>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="scheduler-kern-quantum">
|
||
<para>What is <literal>kern.quantum</literal>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para><literal>kern.quantum</literal> is the maximum number of
|
||
ticks a process can run without being preempted. It is
|
||
specific to the 4BSD scheduler, so you can use its
|
||
presence or absence to determine which scheduler is in
|
||
use. In &os; 5.X or later <literal>kern.quantum</literal> has
|
||
been renamed to <literal>kern.sched.quantum</literal>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="scheduler-kern-sched-quantum">
|
||
<para>What is <literal>kern.sched.quantum</literal>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>See <xref linkend="scheduler-kern-quantum"/></para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="disks">
|
||
<title>Äßóêïé, ÓõóôÞìáôá Áñ÷åßùí êáé ÖïñôùôÝò Åêêßíçóçò</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="new-huge-disk">
|
||
<para>How do I move my system over to my huge new disk?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The best way is to reinstall the OS on the new
|
||
disk, then move the user data over. This is highly
|
||
recommended if you have been tracking -STABLE for more
|
||
than one release, or have updated a release instead of
|
||
installing a new one. You can install booteasy on both
|
||
disks with &man.boot0cfg.8;, and dual boot them until
|
||
you are happy with the new configuration. Skip the
|
||
next paragraph to find out how to move the data after
|
||
doing this.</para>
|
||
|
||
<para>Should you decide not to do a fresh install, you
|
||
need to partition and label the new disk with either
|
||
<filename>/stand/sysinstall</filename>, or &man.fdisk.8;
|
||
and &man.disklabel.8;. You should also install booteasy
|
||
on both disks with &man.boot0cfg.8;, so that you can
|
||
dual boot to the old or new system after the copying
|
||
is done.</para>
|
||
|
||
<para>Now you have the new disk set up, and are ready
|
||
to move the data. Unfortunately, you cannot just blindly
|
||
copy the data. Things like device files (in
|
||
<filename>/dev</filename>), flags, and links tend to
|
||
screw that up. You need to use tools that understand
|
||
these things, which means &man.dump.8;.
|
||
Although it is suggested that you move the data in single user
|
||
mode, it is not required.</para>
|
||
|
||
<para>You should never use anything but &man.dump.8; and
|
||
&man.restore.8; to move the root filesystem. The
|
||
&man.tar.1; command may work - then again, it may not.
|
||
You should also use &man.dump.8; and &man.restore.8;
|
||
if you are moving a single partition to another empty
|
||
partition. The sequence of steps to use dump to move
|
||
a partitions data to a new partition is:</para>
|
||
|
||
<procedure>
|
||
<step>
|
||
<para>newfs the new partition.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>mount it on a temporary mount point.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>cd to that directory.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>dump the old partition, piping output to the
|
||
new one.</para>
|
||
</step>
|
||
</procedure>
|
||
|
||
<para>For example, if you are going to move root to
|
||
<devicename>/dev/ad1s1a</devicename>, with
|
||
<filename>/mnt</filename> as the temporary mount point,
|
||
it is:</para>
|
||
|
||
<screen>&prompt.root; <userinput>newfs /dev/ad1s1a</userinput>
|
||
&prompt.root; <userinput>mount /dev/ad1s1a /mnt</userinput>
|
||
&prompt.root; <userinput>cd /mnt</userinput>
|
||
&prompt.root; <userinput>dump 0af - / | restore xf -</userinput></screen>
|
||
|
||
<para>Rearranging your partitions with dump takes a bit more
|
||
work. To merge a partition like <filename>/var</filename>
|
||
into its parent, create the new partition large enough
|
||
for both, move the parent partition as described above,
|
||
then move the child partition into the empty directory
|
||
that the first move created:</para>
|
||
|
||
<screen>&prompt.root; <userinput>newfs /dev/ad1s1a</userinput>
|
||
&prompt.root; <userinput>mount /dev/ad1s1a /mnt</userinput>
|
||
&prompt.root; <userinput>cd /mnt</userinput>
|
||
&prompt.root; <userinput>dump 0af - / | restore xf -</userinput>
|
||
&prompt.root; <userinput>cd var</userinput>
|
||
&prompt.root; <userinput>dump 0af - /var | restore xf -</userinput></screen>
|
||
|
||
<para>To split a directory from its parent, say putting
|
||
<filename>/var</filename> on its own partition when it was not
|
||
before, create both partitions, then mount the child partition
|
||
on the appropriate directory in the temporary mount point, then
|
||
move the old single partition:</para>
|
||
|
||
<screen>&prompt.root; <userinput>newfs /dev/ad1s1a</userinput>
|
||
&prompt.root; <userinput>newfs /dev/ad1s1d</userinput>
|
||
&prompt.root; <userinput>mount /dev/ad1s1a /mnt</userinput>
|
||
&prompt.root; <userinput>mkdir /mnt/var</userinput>
|
||
&prompt.root; <userinput>mount /dev/ad1s1d /mnt/var</userinput>
|
||
&prompt.root; <userinput>cd /mnt</userinput>
|
||
&prompt.root; <userinput>dump 0af - / | restore xf -</userinput></screen>
|
||
|
||
<para>You might prefer &man.cpio.1;, &man.pax.1;,
|
||
&man.tar.1; to &man.dump.8; for user data. At the time of
|
||
this writing, these are known to lose file flag information,
|
||
so use them with caution.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="dangerously-dedicated">
|
||
<para>Will a <quote>dangerously dedicated</quote> disk endanger
|
||
my health?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para><anchor id="dedicate"/>The installation procedure allows
|
||
you to chose two different methods in partitioning your
|
||
hard disk(s). The default way makes it compatible with other
|
||
operating systems on the same machine, by using fdisk table
|
||
entries (called <quote>slices</quote> in FreeBSD), with a
|
||
FreeBSD slice that employs partitions of its own. Optionally,
|
||
one can chose to install a boot-selector to switch between the
|
||
possible operating systems on the disk(s). The alternative uses
|
||
the entire disk for FreeBSD, and makes no attempt to be
|
||
compatible with other operating systems.</para>
|
||
|
||
<para>So why it is called <quote>dangerous</quote>? A disk
|
||
in this mode does not contain what normal PC utilities
|
||
would consider a valid fdisk table. Depending on how well
|
||
they have been designed, they might complain at you once
|
||
they are getting in contact with such a disk, or even
|
||
worse, they might damage the BSD bootstrap without even
|
||
asking or notifying you. In addition, the
|
||
<quote>dangerously dedicated</quote> disk's layout is
|
||
known to confuse many BIOSes, including those from AWARD
|
||
(e.g. as found in HP Netserver and Micronics systems as
|
||
well as many others) and Symbios/NCR (for the popular
|
||
53C8xx range of SCSI controllers). This is not a complete
|
||
list, there are more. Symptoms of this confusion include
|
||
the <errorname>read error</errorname> message printed by
|
||
the FreeBSD bootstrap when it cannot find itself, as well
|
||
as system lockups when booting.</para>
|
||
|
||
<para>Why have this mode at all then? It only saves a few kbytes
|
||
of disk space, and it can cause real problems for a new
|
||
installation. <quote>Dangerously dedicated</quote> mode's
|
||
origins lie in a desire to avoid one of the most common
|
||
problems plaguing new FreeBSD installers - matching the BIOS
|
||
<quote>geometry</quote> numbers for a disk to the disk
|
||
itself.</para>
|
||
|
||
<para><quote>Geometry</quote> is an outdated concept, but one
|
||
still at the heart of the PC's BIOS and its interaction with
|
||
disks. When the FreeBSD installer creates slices, it has to
|
||
record the location of these slices on the disk in a fashion
|
||
that corresponds with the way the BIOS expects to find them. If
|
||
it gets it wrong, you will not be able to boot.</para>
|
||
|
||
<para><quote>Dangerously dedicated</quote> mode tries to work
|
||
around this by making the problem simpler. In some cases, it
|
||
gets it right. But it is meant to be used as a last-ditch
|
||
alternative - there are better ways to solve the problem 99
|
||
times out of 100.</para>
|
||
|
||
<para>So, how do you avoid the need for <quote>DD</quote> mode
|
||
when you are installing? Start by making a note of the geometry
|
||
that your BIOS claims to be using for your disks. You can
|
||
arrange to have the kernel print this as it boots by specifying
|
||
<option>-v</option> at the <literal>boot:</literal> prompt, or
|
||
using <command>boot -v</command> in the loader. Just before the
|
||
installer starts, the kernel will print a list of BIOS
|
||
geometries. Do not panic - wait for the installer to start and
|
||
then use scrollback to read the numbers. Typically the BIOS
|
||
disk units will be in the same order that FreeBSD lists your
|
||
disks, first IDE, then SCSI.</para>
|
||
|
||
<para>When you are slicing up your disk, check that the disk
|
||
geometry displayed in the FDISK screen is correct (ie. it
|
||
matches the BIOS numbers); if it is wrong, use the
|
||
<keycap>g</keycap> key to fix it. You may have to do this if
|
||
there is absolutely nothing on the disk, or if the disk has been
|
||
moved from another system. Note that this is only an issue with
|
||
the disk that you are going to boot from; FreeBSD will sort
|
||
itself out just fine with any other disks you may have.</para>
|
||
|
||
<para>Once you have got the BIOS and FreeBSD agreeing about the
|
||
geometry of the disk, your problems are almost guaranteed to be
|
||
over, and with no need for <quote>DD</quote> mode at all. If,
|
||
however, you are still greeted with the dreaded <errorname>read
|
||
error</errorname> message when you try to boot, it is time to cross
|
||
your fingers and go for it - there is nothing left to
|
||
lose.</para>
|
||
|
||
<para>To return a <quote>dangerously dedicated</quote> disk
|
||
for normal PC use, there are basically two options. The first
|
||
is, you write enough NULL bytes over the MBR to make any
|
||
subsequent installation believe this to be a blank disk. You
|
||
can do this for example with</para>
|
||
|
||
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rda0 count=15</userinput></screen>
|
||
|
||
<para>Alternatively, the undocumented DOS
|
||
<quote>feature</quote></para>
|
||
|
||
<screen><prompt>C:\></prompt> <userinput>fdisk /mbr</userinput></screen>
|
||
|
||
<para>will to install a new master boot record as well, thus
|
||
clobbering the BSD bootstrap.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="safe-softupdates">
|
||
<para>Which partitions can safely use Soft Updates? I have
|
||
heard that Soft Updates on <filename>/</filename> can cause
|
||
problems.</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Short answer: you can usually use Soft Updates safely
|
||
on all partitions.</para>
|
||
|
||
<para>Long answer: There used to be some concern over using
|
||
Soft Updates on the root partition. Soft Updates has two
|
||
characteristics that caused this. First, a Soft Updates
|
||
partition has a small chance of losing data during a
|
||
system crash. (The partition will not be corrupted; the
|
||
data will simply be lost.) Also, Soft Updates can cause
|
||
temporary space shortages.</para>
|
||
|
||
<para>When using Soft Updates, the kernel can take up to
|
||
thirty seconds to actually write changes to the physical
|
||
disk. If you delete a large file, the file still resides
|
||
on disk until the kernel actually performs the deletion.
|
||
This can cause a very simple race condition. Suppose you
|
||
delete one large file and immediately create another large
|
||
file. The first large file is not yet actually removed
|
||
from the physical disk, so the disk might not have enough
|
||
room for the second large file. You get an error that the
|
||
partition does not have enough space, although you know
|
||
perfectly well that you just released a large chunk of
|
||
space! When you try again mere seconds later, the file
|
||
creation works as you expect. This has left more than one
|
||
user scratching his head and doubting his sanity, the
|
||
FreeBSD filesystem, or both.</para>
|
||
|
||
<para>If a system should crash after the kernel accepts a
|
||
chunk of data for writing to disk, but before that data is
|
||
actually written out, data could be lost or corrupted.
|
||
This risk is extremely small, but generally manageable.
|
||
Use of IDE write caching greatly increases this risk; it
|
||
is strongly recommended that you disable IDE write caching
|
||
when using Soft Updates.</para>
|
||
|
||
<para>These issues affect all partitions using Soft Updates.
|
||
So, what does this mean for the root partition?</para>
|
||
|
||
<para>Vital information on the root partition changes very
|
||
rarely. Files such as <filename>/kernel</filename> and
|
||
the contents of <filename>/etc</filename> only change
|
||
during system maintenance, or when users change their
|
||
passwords. If the system crashed during the
|
||
thirty-second window after such a change is made, it is
|
||
possible that data could be lost. This risk is negligible
|
||
for most applications, but you should be aware that it
|
||
exists. If your system cannot tolerate this much risk,
|
||
do not use Soft Updates on the root filesystem!</para>
|
||
|
||
<para><filename>/</filename> is traditionally one of the
|
||
smallest partitions. By default, FreeBSD puts the
|
||
<filename>/tmp</filename> directory on
|
||
<filename>/</filename>. If you have a busy
|
||
<filename>/tmp</filename>, you might see intermittent
|
||
space problems. Symlinking <filename>/tmp</filename> to
|
||
<filename>/var/tmp</filename> will solve this
|
||
problem.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="inappropriate-ccd">
|
||
<para>What is inappropriate about my ccd?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The symptom of this is:</para>
|
||
|
||
<screen>&prompt.root; <userinput>ccdconfig -C</userinput>
|
||
ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format</screen>
|
||
|
||
<para>This usually happens when you are trying to concatenate
|
||
the <literal>c</literal> partitions, which default to type
|
||
<literal>unused</literal>. The ccd driver requires the
|
||
underlying partition type to be FS_BSDFFS. Edit the disklabel
|
||
of the disks you are trying to concatenate and change the types
|
||
of partitions to <literal>4.2BSD</literal>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ccd-disklabel">
|
||
<para>Why can I not edit the disklabel on my ccd?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The symptom of this is:</para>
|
||
|
||
<screen>&prompt.root; <userinput>disklabel ccd0</userinput>
|
||
(it prints something sensible here, so let us try to edit it)
|
||
&prompt.root; <userinput>disklabel -e ccd0</userinput>
|
||
(edit, save, quit)
|
||
disklabel: ioctl DIOCWDINFO: No disk label on disk;
|
||
use "disklabel -r" to install initial label</screen>
|
||
|
||
<para>This is because the disklabel returned by ccd is actually
|
||
a <quote>fake</quote> one that is not really on the disk.
|
||
You can solve this problem by writing it back explicitly,
|
||
as in:</para>
|
||
|
||
<screen>&prompt.root; <userinput>disklabel ccd0 > /tmp/disklabel.tmp</userinput>
|
||
&prompt.root; <userinput>disklabel -Rr ccd0 /tmp/disklabel.tmp</userinput>
|
||
&prompt.root; <userinput>disklabel -e ccd0</userinput>
|
||
(this will work now)</screen>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="mount-foreign-fs">
|
||
<para>Can I mount other foreign filesystems under FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>FreeBSD supports a variety of other
|
||
filesystems.</para>
|
||
|
||
<variablelist>
|
||
<varlistentry>
|
||
<term>Digital UNIX</term>
|
||
|
||
<listitem>
|
||
<para>UFS CDROMs can be mounted directly on FreeBSD.
|
||
Mounting disk partitions from Digital UNIX and other
|
||
systems that support UFS may be more complex, depending
|
||
on the details of the disk partitioning for the operating
|
||
system in question.</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>&linux;</term>
|
||
|
||
<listitem>
|
||
<para>FreeBSD supports <literal>ext2fs</literal>
|
||
partitions. See &man.mount.ext2fs.8; for more
|
||
information.</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>&windowsnt;</term>
|
||
|
||
<listitem>
|
||
<para>FreeBSD includes a read-only NTFS driver. For
|
||
more information, see &man.mount.ntfs.8;.</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>FAT</term>
|
||
|
||
<listitem>
|
||
<para>FreeBSD includes a read-write FAT driver. For
|
||
more information, see &man.mount.msdosfs.8;.</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>ReiserFS</term>
|
||
|
||
<listitem>
|
||
<para>FreeBSD includes a read-only ReiserFS driver. For
|
||
more information, see &man.mount.reiserfs.8;.</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
</variablelist>
|
||
|
||
<para>FreeBSD also supports network filesystems such as NFS
|
||
(see &man.mount.nfs.8;), NetWare (see &man.mount.nwfs.8;),
|
||
and Microsoft-style SMB filesystems (see
|
||
&man.mount.smbfs.8;).</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="mount-dos">
|
||
<para>How do I mount a secondary DOS partition?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>The secondary DOS partitions are found after ALL the
|
||
primary partitions. For example, if you have an
|
||
<quote>E</quote> partition as the second DOS partition on
|
||
the second SCSI drive, you need to create the special files
|
||
for <quote>slice 5</quote> in <filename>/dev</filename>,
|
||
then mount <devicename>/dev/da1s5</devicename>:</para>
|
||
|
||
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
||
&prompt.root; <userinput>sh MAKEDEV da1s5</userinput>
|
||
&prompt.root; <userinput>mount -t msdosfs /dev/da1s5 /dos/e</userinput></screen>
|
||
|
||
<note>
|
||
<para>You can omit this step if you are running FreeBSD
|
||
5.0-RELEASE or newer with &man.devfs.5;
|
||
enabled.</para>
|
||
</note>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="crypto-filesystem">
|
||
<para>Is there a cryptographic filesystem for &os;?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>Yes. FreeBSD 5.0 includes &man.gbde.8;, and FreeBSD 6.0
|
||
added &man.geli.8;. For earlier releases, see the <filename
|
||
role="package">security/cfs</filename> port.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="nt-bootloader">
|
||
<para>How can I use the &windowsnt; loader to boot FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The general idea is that you copy the first sector of your
|
||
native root FreeBSD partition into a file in the DOS/&windowsnt;
|
||
partition. Assuming you name that file something like
|
||
<filename>c:\bootsect.bsd</filename> (inspired by
|
||
<filename>c:\bootsect.dos</filename>), you can then edit the
|
||
<filename>c:\boot.ini</filename> file to come up with something
|
||
like this:</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="FreeBSD"
|
||
C:\="DOS"</programlisting>
|
||
|
||
<para>If FreeBSD is installed on the same disk as the &windowsnt; boot
|
||
partition simply copy <filename>/boot/boot1</filename> to
|
||
<filename>C:\BOOTSECT.BSD</filename>. However, if FreeBSD is
|
||
installed on a different disk <filename>/boot/boot1</filename>
|
||
will not work, <filename>/boot/boot0</filename> is needed.</para>
|
||
|
||
<para><filename>/boot/boot0</filename> needs to be installed
|
||
using sysinstall by selecting the FreeBSD boot manager on
|
||
the screen which asks if you wish to use a boot
|
||
manager. This is because <filename>/boot/boot0</filename>
|
||
has the partition table area filled with NULL characters
|
||
but sysinstall copies the partition table before copying
|
||
<filename>/boot/boot0</filename> to the MBR.</para>
|
||
|
||
<warning>
|
||
<para><emphasis>Do not simply copy <filename>/boot/boot0</filename>
|
||
instead of <filename>/boot/boot1</filename>; you will
|
||
overwrite your partition table and render your computer
|
||
un-bootable!</emphasis></para>
|
||
</warning>
|
||
|
||
<para>When the FreeBSD boot manager runs it records the last
|
||
OS booted by setting the active flag on the partition table
|
||
entry for that OS and then writes the whole 512-bytes of itself
|
||
back to the MBR so if you just copy
|
||
<filename>/boot/boot0</filename> to
|
||
<filename>C:\BOOTSECT.BSD</filename> then it writes an empty
|
||
partition table, with the active flag set on one entry, to the
|
||
MBR.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="lilo-bootloader">
|
||
<para>How do I boot FreeBSD and &linux; from LILO?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you have FreeBSD and &linux; on the same disk, just follow
|
||
LILO's installation instructions for booting a non-&linux;
|
||
operating system. Very briefly, these are:</para>
|
||
|
||
<para>Boot &linux;, and add the following lines to
|
||
<filename>/etc/lilo.conf</filename>:</para>
|
||
|
||
<programlisting>other=/dev/hda2
|
||
table=/dev/hda
|
||
label=FreeBSD</programlisting>
|
||
|
||
<para>(the above assumes that your FreeBSD slice is known to
|
||
&linux; as <devicename>/dev/hda2</devicename>; tailor to
|
||
suit your setup). Then, run <command>lilo</command> as
|
||
<username>root</username> and you should be done.</para>
|
||
|
||
<para>If FreeBSD resides on another disk, you need to add
|
||
<literal>loader=/boot/chain.b</literal> to the LILO entry.
|
||
For example:</para>
|
||
|
||
<programlisting>other=/dev/dab4
|
||
table=/dev/dab
|
||
loader=/boot/chain.b
|
||
label=FreeBSD</programlisting>
|
||
|
||
<para>In some cases you may need to specify the BIOS drive number
|
||
to the FreeBSD boot loader to successfully boot off the second
|
||
disk. For example, if your FreeBSD SCSI disk is probed by BIOS
|
||
as BIOS disk 1, at the FreeBSD boot loader prompt you need to
|
||
specify:</para>
|
||
|
||
<screen>Boot: <userinput>1:da(0,a)/kernel</userinput></screen>
|
||
|
||
<para>You can configure
|
||
&man.boot.8;
|
||
to automatically do this for you at boot time.</para>
|
||
|
||
<para>The <ulink
|
||
url="http://sunsite.unc.edu/LDP/HOWTO/mini/Linux+FreeBSD.html">
|
||
&linux;+FreeBSD mini-HOWTO</ulink> is a good reference for
|
||
FreeBSD and &linux; interoperability issues.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="grub-loader">
|
||
<para>How do I boot &os; and &linux; using GRUB</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Booting &os; using GRUB is very simple. Just
|
||
add the following to your configuration file
|
||
<filename>/boot/grub/grub.conf</filename>.</para>
|
||
|
||
<programlisting>title FreeBSD 6.1
|
||
root (hd0,a)
|
||
kernel /boot/loader
|
||
</programlisting>
|
||
|
||
<para>Where <literal>hd0,a</literal> points to your root partition
|
||
on the first disk. If you need to specify which slice number
|
||
should be used, use something like this <literal>(hd0,2,a)</literal>.
|
||
By default, if the slice number is omitted, GRUB searches the
|
||
first slice which has <literal>'a'</literal> partition.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="booteasy-loader">
|
||
<para>How do I boot FreeBSD and &linux; using BootEasy?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Install LILO at the start of your &linux; boot partition
|
||
instead of in the Master Boot Record. You can then boot LILO
|
||
from BootEasy.</para>
|
||
|
||
<para>If you are running &windows; 95 and &linux; this is recommended
|
||
anyway, to make it simpler to get &linux; booting again if you
|
||
should need to reinstall &windows; 95 (which is a Jealous
|
||
Operating System, and will bear no other Operating Systems in
|
||
the Master Boot Record).</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="changing-bootprompt">
|
||
<para>How do I change the boot prompt from <literal>???</literal> to
|
||
something more meaningful?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You can not do that with the standard boot manager without
|
||
rewriting it. There are a number of other boot managers
|
||
in the <filename>sysutils</filename> ports category that
|
||
provide this functionality.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="removable-drives">
|
||
<para>I have a new removable drive, how do I use it?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>Whether it is a removable drive like a &iomegazip; or an EZ drive
|
||
(or even a floppy, if you want to use it that way), or a new
|
||
hard disk, once it is installed and recognized by the system,
|
||
and you have your cartridge/floppy/whatever slotted in, things
|
||
are pretty much the same for all devices.</para>
|
||
|
||
<para>(this section is based on <ulink
|
||
url="http://www.vmunix.com/mark/FreeBSD/ZIP-FAQ.html">
|
||
Mark Mayo's ZIP FAQ</ulink>)</para>
|
||
|
||
<para>If it is a ZIP drive or a floppy, you have already got a DOS
|
||
filesystem on it, you can use a command like this:</para>
|
||
|
||
<screen>&prompt.root; <userinput>mount -t msdosfs /dev/fd0c /floppy</userinput></screen>
|
||
|
||
<para>if it is a floppy, or this:</para>
|
||
|
||
<screen>&prompt.root; <userinput>mount -t msdosfs /dev/da2s4 /zip</userinput></screen>
|
||
|
||
<para>for a ZIP disk with the factory configuration.</para>
|
||
|
||
<para>For other disks, see how they are laid out using
|
||
&man.fdisk.8; or
|
||
&man.sysinstall.8;.</para>
|
||
|
||
<para>The rest of the examples will be for a ZIP drive on da2,
|
||
the third SCSI disk.</para>
|
||
|
||
<para>Unless it is a floppy, or a removable you plan on sharing
|
||
with other people, it is probably a better idea to stick a BSD
|
||
filesystem on it. You will get long filename support, at least a
|
||
2X improvement in performance, and a lot more stability. First,
|
||
you need to redo the DOS-level partitions/filesystems. You can
|
||
either use &man.fdisk.8; or
|
||
<filename>/stand/sysinstall</filename>, or for a small drive
|
||
that you do not want to bother with multiple operating system
|
||
support on, just blow away the whole FAT partition table
|
||
(slices) and just use the BSD partitioning:</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>You can use disklabel or
|
||
<filename>/stand/sysinstall</filename> to create multiple BSD
|
||
partitions. You will certainly want to do this if you are adding
|
||
swap space on a fixed disk, but it is probably irrelevant on a
|
||
removable drive like a ZIP.</para>
|
||
|
||
<para>Finally, create a new filesystem, this one is on our ZIP
|
||
drive using the whole disk:</para>
|
||
|
||
<screen>&prompt.root; <userinput>newfs /dev/rda2c</userinput></screen>
|
||
|
||
<para>and mount it:</para>
|
||
|
||
<screen>&prompt.root; <userinput>mount /dev/da2c /zip</userinput></screen>
|
||
|
||
<para>and it is probably a good idea to add a line like this
|
||
to <filename>/etc/fstab</filename> (see &man.fstab.5;) so
|
||
you can just type <command>mount /zip</command> in the
|
||
future:</para>
|
||
|
||
<programlisting>/dev/da2c /zip ffs rw,noauto 0 0</programlisting>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="mount-cd-superblock">
|
||
<para>Why do I get <errorname>Incorrect super block</errorname> when
|
||
mounting a CDROM?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You have to tell &man.mount.8; the type of the device
|
||
that you want to mount. This is described in the <ulink
|
||
url="&url.books.handbook;/creating-cds.html"> Handbook section on
|
||
optical media</ulink>, specifically the section <ulink
|
||
url="&url.books.handbook;/creating-cds.html#MOUNTING-CD">Using Data
|
||
CDs</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="cdrom-not-configured">
|
||
<para>Why do I get <errorname>Device not
|
||
configured</errorname> when mounting a CDROM?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>This generally means that there is no CDROM in the
|
||
CDROM drive, or the drive is not visible on the
|
||
bus. Please see the <ulink
|
||
url="&url.books.handbook;/creating-cds.html#MOUNTING-CD">Using Data
|
||
CDs</ulink> section of the Handbook for a detailed
|
||
discussion of this issue.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="cdrom-unicode-filenames">
|
||
<para>Why do all non-English characters in filenames show up as
|
||
<quote>?</quote> on my CDs when mounted in FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Your CDROM probably uses the <quote>Joliet</quote>
|
||
extension for storing information about files and
|
||
directories. This is discussed in the Handbook chapter on
|
||
<ulink url="&url.books.handbook;/creating-cds.html">creating and
|
||
using CDROMs</ulink>, specifically the section on <ulink
|
||
url="&url.books.handbook;/creating-cds.html#MOUNTING-CD">Using Data
|
||
CDROMs</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="burncd-isofs">
|
||
<para>I burned a CD under FreeBSD and now I can not read it
|
||
under any other operating system. Why?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You most likely burned a raw file to your CD, rather
|
||
than creating an ISO 9660 filesystem. Take a look at the
|
||
<ulink url="&url.books.handbook;/creating-cds.html">Handbook
|
||
chapter on creating CDROMs</ulink>, particularly the
|
||
section on <ulink
|
||
url="&url.books.handbook;/creating-cds.html#RAWDATA-CD">burning raw
|
||
data CDs</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="copy-cd">
|
||
<para>How can I create an image of a data CD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>This is discussed in the Handbook section on <ulink
|
||
url="&url.books.handbook;/creating-cds.html#IMAGING-CD">duplicating
|
||
data CDs</ulink>. For more on working with CDROMs, see the
|
||
<ulink url="&url.books.handbook;/creating-cds.html">Creating CDs
|
||
Section</ulink> in the Storage chapter in the
|
||
Handbook.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="mount-audio-CD">
|
||
<para>Why can I not <command>mount</command> an audio
|
||
CD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you try to mount an audio CD, you will get an error
|
||
like <errorname>cd9660: /dev/acd0c: Invalid
|
||
argument</errorname>. This is because
|
||
<command>mount</command> only works on filesystems. Audio
|
||
CDs do not have filesystems; they just have data. You
|
||
need a program that reads audio CDs, such as the
|
||
<filename role="package">audio/xmcd</filename> port.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="multi-session-CD">
|
||
<para>How do I <command>mount</command> a multi-session CD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>By default, &man.mount.8; will attempt to mount the
|
||
last data track (session) of a CD. If you would like to
|
||
load an earlier session, you must use the
|
||
<option>-s</option> command line argument. Please see
|
||
&man.mount.cd9660.8; for specific examples.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="user-floppymount">
|
||
<para>How do I let ordinary users mount floppies, CDROMs and
|
||
other removable media?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ordinary users can be permitted to mount devices. Here is
|
||
how:</para>
|
||
|
||
<procedure>
|
||
<step>
|
||
<para>As <username>root</username> set the sysctl variable
|
||
<varname>vfs.usermount</varname> to
|
||
<literal>1</literal>.</para>
|
||
|
||
<screen>&prompt.root; <userinput>sysctl -w vfs.usermount=1</userinput></screen>
|
||
</step>
|
||
|
||
<step>
|
||
<para>As <username>root</username> assign the appropriate
|
||
permissions to the block device associated with the
|
||
removable media.</para>
|
||
|
||
<para>For example, to allow users to mount the first floppy
|
||
drive, use:</para>
|
||
|
||
<screen>&prompt.root; <userinput>chmod 666 /dev/fd0</userinput></screen>
|
||
|
||
<para>To allow users in the group
|
||
<groupname>operator</groupname> to mount the CDROM drive,
|
||
use:</para>
|
||
|
||
<screen>&prompt.root; <userinput>chgrp operator /dev/acd0c</userinput>
|
||
&prompt.root; <userinput>chmod 640 /dev/acd0c</userinput></screen>
|
||
</step>
|
||
|
||
<step>
|
||
<para>If you are running &os; 5.X or later, you will need to alter
|
||
<filename>/etc/devfs.conf</filename> to make these changes
|
||
permanent across reboots.</para>
|
||
|
||
<para>As <username>root</username>, add the necessary lines to
|
||
<filename>/etc/devfs.conf</filename>. For example, to allow
|
||
users to mount the first floppy drive add:</para>
|
||
|
||
<programlisting># Allow all users to mount the floppy disk.
|
||
own /dev/fd0 root:operator
|
||
perm /dev/fd0 0666</programlisting>
|
||
|
||
<para>To allow users in the group <groupname>operator</groupname>
|
||
to mount the CD-ROM drive add:</para>
|
||
|
||
<programlisting># Allow members of the group operator to mount CD-ROMs.
|
||
own /dev/acd0 root:operator
|
||
perm /dev/acd0 0660</programlisting>
|
||
</step>
|
||
|
||
<step>
|
||
<para>Finally, add the line
|
||
<literal><varname>vfs.usermount</varname>=1</literal>
|
||
to the file <filename>/etc/sysctl.conf</filename> so
|
||
that it is reset at system boot time.</para>
|
||
</step>
|
||
</procedure>
|
||
|
||
<para>All users can now mount the floppy
|
||
<devicename>/dev/fd0</devicename> onto a directory that they
|
||
own:</para>
|
||
|
||
<screen>&prompt.user; <userinput>mkdir ~/my-mount-point</userinput>
|
||
&prompt.user; <userinput>mount -t msdosfs /dev/fd0 ~/my-mount-point</userinput></screen>
|
||
|
||
<para>Users in group <groupname>operator</groupname> can now
|
||
mount the CDROM <devicename>/dev/acd0c</devicename> onto a
|
||
directory that they own:</para>
|
||
|
||
<screen>&prompt.user; <userinput>mkdir ~/my-mount-point</userinput>
|
||
&prompt.user; <userinput>mount -t cd9660 /dev/acd0c ~/my-mount-point</userinput></screen>
|
||
|
||
<para>Unmounting the device is simple:</para>
|
||
|
||
<screen>&prompt.user; <userinput>umount ~/my-mount-point</userinput></screen>
|
||
|
||
<para>Enabling <varname>vfs.usermount</varname>, however,
|
||
has negative security implications. A better way to
|
||
access &ms-dos; formatted media is to use the
|
||
<filename role="package">emulators/mtools</filename>
|
||
package in the ports collection.</para>
|
||
|
||
<note>
|
||
<para>The device name used in the previous examples must be
|
||
changed according to your configuration.</para>
|
||
</note>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="du-vs-df">
|
||
<para>The <command>du</command> and <command>df</command>
|
||
commands show different amounts of disk space available.
|
||
What is going on?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You need to understand what <command>du</command> and
|
||
<command>df</command> really do. <command>du</command>
|
||
goes through the directory tree, measures how large each
|
||
file is, and presents the totals. <command>df</command>
|
||
just asks the filesystem how much space it has left. They
|
||
seem to be the same thing, but a file without a directory
|
||
entry will affect <command>df</command> but not
|
||
<command>du</command>.</para>
|
||
|
||
<para>When a program is using a file, and you delete the
|
||
file, the file is not really removed from the filesystem
|
||
until the program stops using it. The file is immediately
|
||
deleted from the directory listing, however. You can see
|
||
this easily enough with a program such as
|
||
<command>more</command>. Assume you have a file large
|
||
enough that its presence affects the output of
|
||
<command>du</command> and <command>df</command>. (Since
|
||
disks can be so large today, this might be a
|
||
<emphasis>very</emphasis> large file!) If you delete this
|
||
file while using <command>more</command> on it,
|
||
<command>more</command> does not immediately choke and
|
||
complain that it cannot view the file. The entry is
|
||
simply removed from the directory so no other program or
|
||
user can access it. <command>du</command> shows that it
|
||
is gone — it has walked the directory tree and the file
|
||
is not listed. <command>df</command> shows that it is
|
||
still there, as the filesystem knows that
|
||
<command>more</command> is still using that space. Once
|
||
you end the <command>more</command> session,
|
||
<command>du</command> and <command>df</command> will
|
||
agree.</para>
|
||
|
||
<para>Note that Soft Updates can delay the freeing of disk
|
||
space; you might need to wait up to 30 seconds for the
|
||
change to be visible!</para>
|
||
|
||
<para>This situation is common on web servers. Many people
|
||
set up a FreeBSD web server and forget to rotate the log
|
||
files. The access log fills up <filename>/var</filename>.
|
||
The new administrator deletes the file, but the system
|
||
still complains that the partition is full. Stopping and
|
||
restarting the web server program would free the file,
|
||
allowing the system to release the disk space. To prevent
|
||
this from happening, set up &man.newsyslog.8;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="add-swap-space">
|
||
<para>How can I add more swap space?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>In the <ulink
|
||
url="&url.books.handbook;/config-tuning.html">Configuration and
|
||
Tuning</ulink> section of the Handbook, you will find a
|
||
<ulink
|
||
url="&url.books.handbook;/adding-swap-space.html">section</ulink>
|
||
describing how to do this.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="manufacturer-disk-size">
|
||
<para>Why does &os; see my disk as smaller than the
|
||
manufacturer says it is?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Disk manufacturers calculate gigabytes as a billion bytes
|
||
each, whereas &os; calculates them as 1,073,741,824 bytes
|
||
each. This explains why, for example, &os;'s boot messages
|
||
will report a disk that supposedly has 80GB as holding
|
||
76319MB.</para>
|
||
<para>Also note that &os; will (by default)
|
||
<link linkend="disk-more-than-full">reserve</link> 8% of the disk
|
||
space.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="disk-more-than-full">
|
||
<para>How is it possible for a partition to be more than 100%
|
||
full?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>A portion of each UFS partition (8%, by default) is
|
||
reserved for use by the operating system and the
|
||
<username>root</username> user.
|
||
&man.df.1; does not count that space when
|
||
calculating the <literal>Capacity</literal> column, so it can
|
||
exceed 100%. Also, you will notice that the
|
||
<literal>Blocks</literal> column is always greater than the
|
||
sum of the <literal>Used</literal> and
|
||
<literal>Avail</literal> columns, usually by a factor of
|
||
8%.</para>
|
||
|
||
<para>For more details, look up the <option>-m</option> option
|
||
in &man.tunefs.8;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="admin">
|
||
<title>Äéá÷åßñéóç ÓõóôÞìáôïò</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="startup-config-files">
|
||
<para>Where are the system start-up configuration files?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The primary configuration file is
|
||
<filename>/etc/defaults/rc.conf</filename> (see
|
||
&man.rc.conf.5;) System startup scripts such as
|
||
<filename>/etc/rc</filename> and
|
||
<filename>/etc/rc.d</filename> (see &man.rc.8;) just
|
||
include this file. <emphasis>Do not edit this
|
||
file!</emphasis> Instead, if there is any entry in
|
||
<filename>/etc/defaults/rc.conf</filename> that you want
|
||
to change, you should copy the line into
|
||
<filename>/etc/rc.conf</filename> and change it
|
||
there.</para>
|
||
|
||
<para>For example, if you wish to start named, the included
|
||
DNS server, all you need to do is:</para>
|
||
|
||
<screen>&prompt.root; <userinput>echo named_enable="YES" >> /etc/rc.conf</userinput></screen>
|
||
|
||
<para>To start up local services, place shell scripts in the
|
||
<filename>/usr/local/etc/rc.d</filename> directory. These
|
||
shell scripts should be set executable, and end with a
|
||
.sh.</para>
|
||
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="adding-users">
|
||
<para>How do I add a user easily?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Use the &man.adduser.8; command, or the &man.pw.8;
|
||
command for more complicated situations.</para>
|
||
|
||
<para>To remove the user, use the &man.rmuser.8; command or,
|
||
if necessary, &man.pw.8;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="root-not-found-cron-errors">
|
||
<para>Why do I keep getting messages like <errorname>root: not
|
||
found</errorname> after editing my crontab file?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>This is normally caused by editing the system crontab
|
||
(<filename>/etc/crontab</filename>) and then using
|
||
&man.crontab.1; to install it:</para>
|
||
|
||
<screen>&prompt.root; <userinput>crontab /etc/crontab</userinput></screen>
|
||
|
||
<para>This is not the correct way to do things. The system
|
||
crontab has a different format to the per-user crontabs
|
||
which &man.crontab.1; updates (the &man.crontab.5; manual
|
||
page explains the differences in more detail).</para>
|
||
|
||
<para>If this is what you did, the extra crontab is simply a
|
||
copy of <filename>/etc/crontab</filename> in the wrong
|
||
format it. Delete it with the command:</para>
|
||
|
||
<screen>&prompt.root; <userinput>crontab -r</userinput></screen>
|
||
|
||
<para>Next time, when you edit
|
||
<filename>/etc/crontab</filename>, you should not do
|
||
anything to inform &man.cron.8; of the changes, since it
|
||
will notice them automatically.</para>
|
||
|
||
<para>If you want something to be run once per day, week, or
|
||
month, it is probably better to add shell scripts
|
||
<filename>/usr/local/etc/periodic</filename>, and let the
|
||
&man.periodic.8; command run from the system cron schedule
|
||
it with the other periodic system tasks.</para>
|
||
|
||
<para>The actual reason for the error is that the system
|
||
crontab has an extra field, specifying which user to run the
|
||
command as. In the default system crontab provided with
|
||
FreeBSD, this is <username>root</username> for all entries.
|
||
When this crontab is used as the <username>root</username>
|
||
user's crontab (which is <emphasis>not</emphasis> the
|
||
same as the system crontab), &man.cron.8; assumes the string
|
||
<literal>root</literal> is the first word of the command to
|
||
execute, but no such command exists.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="su-wheel-group">
|
||
<para>Why do I get the error, <errorname>you are not in the correct
|
||
group to su root</errorname> when I try to su to
|
||
<username>root</username>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>This is a security feature. In order to su to
|
||
<username>root</username> (or any other account with superuser
|
||
privileges), you must be in the <groupname>wheel</groupname>
|
||
group. If this feature were not there, anybody with an account
|
||
on a system who also found out <username>root</username>'s
|
||
password would be able to gain superuser level access to the
|
||
system. With this feature, this is not strictly true;
|
||
&man.su.1; will prevent them from even trying to enter the
|
||
password if they are not in <groupname>wheel</groupname>.</para>
|
||
|
||
<para>To allow someone to su to <username>root</username>, simply
|
||
put them in the <groupname>wheel</groupname> group.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="rcconf-readonly">
|
||
<para>I made a mistake in <filename>rc.conf</filename>,
|
||
or another startup file, and
|
||
now I cannot edit it because the filesystem is read-only.
|
||
What should I do?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>When you get the prompt to enter the shell
|
||
pathname, simply press <literal>ENTER</literal>, and run
|
||
<command>mount /</command> to re-mount the root filesystem in
|
||
read/write mode. You may also need to run <command>mount -a -t
|
||
ufs</command> to mount the filesystem where your favorite
|
||
editor is defined. If your favorite editor is on a network
|
||
filesystem, you will need to either configure the network
|
||
manually before you can mount network filesystems, or use an
|
||
editor which resides on a local filesystem, such as
|
||
&man.ed.1;.</para>
|
||
|
||
<para>If you intend to use a full screen editor such
|
||
as &man.vi.1; or &man.emacs.1;, you may also need to
|
||
run <command>export TERM=cons25</command> so that these
|
||
editors can load the correct data from the &man.termcap.5;
|
||
database.</para>
|
||
|
||
<para>Once you have performed these steps, you can edit
|
||
<filename>/etc/rc.conf</filename> as you usually would
|
||
to fix the syntax error. The error message displayed
|
||
immediately after the kernel boot messages should tell you
|
||
the number of the line in the file which is at fault.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="printer-setup">
|
||
<para>Why am I having trouble setting up my printer?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Please have a look at the Handbook entry on printing. It
|
||
should cover most of your problem. See the <ulink
|
||
url="&url.books.handbook;/printing.html">
|
||
Handbook entry on printing</ulink>.</para>
|
||
|
||
<para>Some printers require a host-based driver to do any
|
||
kind of printing. These so-called
|
||
<quote>WinPrinters</quote> are not natively supported by
|
||
FreeBSD. If your printer does not work in DOS or &windowsnt;
|
||
4.0, it is probably a WinPrinter. Your only hope of
|
||
getting one of these to work is to check if the <filename
|
||
role="package">print/pnm2ppa</filename> port supports
|
||
it.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="keyboard-mappings">
|
||
<para>How can I correct the keyboard mappings for my system?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Please see the Handbook section on <ulink
|
||
url="&url.books.handbook;/using-localization.html">using
|
||
localization</ulink>, specifically the section on <ulink
|
||
url="&url.books.handbook;/using-localization.html#SETTING-CONSOLE">console
|
||
setup</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="pnp-resources">
|
||
<para>Why do I get messages like: <errorname>unknown: <PNP0303>
|
||
can't assign resources</errorname> on boot?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The following is an excerpt from a post to the
|
||
freebsd-current mailing list.</para>
|
||
|
||
<blockquote>
|
||
<attribution>&a.wollman;, 24 April 2001</attribution>
|
||
|
||
<para>The <quote>can't assign resources</quote> messages
|
||
indicate that the devices are legacy ISA devices for which a
|
||
non-PnP-aware driver is compiled into the kernel. These
|
||
include devices such as keyboard controllers, the
|
||
programmable interrupt controller chip, and several other
|
||
bits of standard infrastructure. The resources cannot be
|
||
assigned because there is already a driver using those
|
||
addresses.</para>
|
||
</blockquote>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="user-quotas">
|
||
<para>Why can I not get user quotas to work properly?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<!-- XXX
|
||
This may be the worst answer in the entire document.
|
||
-->
|
||
<orderedlist>
|
||
<listitem>
|
||
<para>It is possible that your kernel is not configured to use
|
||
quotas. If this is the case, you will need to add the following
|
||
line to your kernel configuration file and recompile:</para>
|
||
<programlisting>options QUOTA</programlisting>
|
||
|
||
<para>Please read the <ulink url="&url.books.handbook;/quotas.html">Handbook
|
||
entry on quotas</ulink> for full details.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Do not turn on quotas on <filename>/</filename>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Put the quota file on the filesystem that the quotas
|
||
are to be enforced on, i.e.:</para>
|
||
|
||
<informaltable frame="none" pgwide="1">
|
||
<tgroup cols="2">
|
||
<thead>
|
||
<row>
|
||
<entry>Filesystem</entry>
|
||
<entry>Quota file</entry>
|
||
</row>
|
||
</thead>
|
||
|
||
<tbody>
|
||
<row>
|
||
<entry><filename>/usr</filename></entry>
|
||
<entry><filename>/usr/admin/quotas</filename></entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry><filename>/home</filename></entry>
|
||
<entry><filename>/home/admin/quotas</filename></entry>
|
||
</row>
|
||
|
||
<row>
|
||
<entry>…</entry>
|
||
<entry>…</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</informaltable>
|
||
</listitem>
|
||
</orderedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="sysv-ipc">
|
||
<para>Does FreeBSD support System V IPC primitives?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes, FreeBSD supports System V-style IPC, including
|
||
shared memory, messages and semaphores, in the GENERIC
|
||
kernel. In a custom kernel, enable this support by adding
|
||
the following lines to your kernel config.</para>
|
||
|
||
<programlisting>options SYSVSHM # enable shared memory
|
||
options SYSVSEM # enable for semaphores
|
||
options SYSVMSG # enable for messaging</programlisting>
|
||
|
||
<para>Recompile and install your kernel.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="sendmail-alternative">
|
||
<para>What other mail-server software can I use instead of
|
||
Sendmail?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para><ulink url="http://www.sendmail.org/">Sendmail</ulink> is
|
||
the default mail-server software for FreeBSD, but you can
|
||
easily replace it with one of the other MTA (for instance,
|
||
an MTA installed from the ports).</para>
|
||
|
||
<para>There are various alternative MTAs in the ports tree
|
||
already, with <filename
|
||
role="package">mail/exim</filename>, <filename
|
||
role="package">mail/postfix</filename>, <filename
|
||
role="package">mail/qmail</filename>, and <filename
|
||
role="package">mail/zmailer</filename> being some of the
|
||
most popular choices.</para>
|
||
|
||
<para>Diversity is nice, and the fact that you have many
|
||
different mail-servers to chose from is considered a
|
||
good thing; therefore try to avoid
|
||
asking questions like <quote>Is Sendmail better than
|
||
Qmail?</quote> in the mailing lists. If you do feel like
|
||
asking, first check the mailing list archives. The
|
||
advantages and disadvantages of each and every one of the
|
||
available MTAs have already been discussed a few
|
||
times.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="forgot-root-pw">
|
||
<para>I have forgotten the <username>root</username> password! What
|
||
do I do?</para>
|
||
</question><answer>
|
||
|
||
<para>Do not panic! Restart the system, type
|
||
<userinput>boot -s</userinput> at the Boot: prompt to
|
||
enter Single User mode. At the question about the shell to
|
||
use, hit ENTER. You will be dropped to a &prompt.root;
|
||
prompt. Enter <command>mount -u /</command> to remount
|
||
your root filesystem read/write, then run <command>mount
|
||
-a</command> to remount all the filesystems. Run
|
||
<command>passwd root</command> to change the
|
||
<username>root</username> password then run &man.exit.1;
|
||
to continue booting.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="CAD-reboot">
|
||
<para>How do I keep <keycombo
|
||
action="simul"><keycap>Control</keycap><keycap>Alt</keycap><keycap>Delete</keycap></keycombo>
|
||
from rebooting the system?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you are using syscons (the default console driver)
|
||
build and install a new kernel with the
|
||
line:</para>
|
||
|
||
<programlisting>options SC_DISABLE_REBOOT</programlisting>
|
||
|
||
<para>in the configuration file. If you use the PCVT console
|
||
driver, use the following kernel configuration line
|
||
instead.</para>
|
||
|
||
<para>This can also be done by setting the following sysctl
|
||
which does not require a reboot or kernel recompile:</para>
|
||
|
||
<screen>&prompt.root; <userinput>sysctl hw.syscons.kbd_reboot=0</userinput></screen>
|
||
|
||
<programlisting>options PCVT_CTRL_ALT_DEL</programlisting>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="dos-to-unix-txt">
|
||
<para>How do I reformat DOS text files to &unix; ones?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>Use this perl command:</para>
|
||
|
||
<screen>&prompt.user; <userinput>perl -i.bak -npe 's/\r\n/\n/g' file ...</userinput></screen>
|
||
|
||
<para>file is the file(s) to process. The modification is done
|
||
in-place, with the original file stored with a .bak
|
||
extension.</para>
|
||
|
||
<para>Alternatively you can use the
|
||
&man.tr.1;
|
||
command:</para>
|
||
|
||
<screen>&prompt.user; <userinput>tr -d '\r' < <replaceable>dos-text-file</replaceable> > <replaceable>unix-file</replaceable></userinput></screen>
|
||
|
||
<para><replaceable>dos-text-file</replaceable> is the file
|
||
containing DOS text while <replaceable>unix-file</replaceable>
|
||
will contain the converted output. This can be quite a bit
|
||
faster than using perl.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="kill-by-name">
|
||
<para>How do I kill processes by name?</para>
|
||
</question><answer>
|
||
|
||
<para>Use &man.killall.1;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="root-acl">
|
||
<para>Why is su bugging me about not being in
|
||
<username>root</username>'s ACL?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>The error comes from the Kerberos distributed
|
||
authentication system. The problem is not fatal but annoying.
|
||
You can either run su with the -K option, or uninstall
|
||
Kerberos as described in the next question.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="uninstall-kerberos">
|
||
<para>How do I uninstall Kerberos?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>To remove Kerberos from the system, reinstall the bin
|
||
distribution for the release you are running. If you have
|
||
the CDROM, you can mount the cd (we will assume on /cdrom)
|
||
and run</para>
|
||
|
||
<screen>&prompt.root; <userinput>cd /cdrom/bin</userinput>
|
||
&prompt.root; <userinput>./install.sh</userinput></screen>
|
||
|
||
<para>Alternately, you can remove all
|
||
<makevar>MAKE_KERBEROS</makevar> options from
|
||
<filename>/etc/make.conf</filename> and rebuild
|
||
world.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="where-is-makedev">
|
||
<para>What happened to
|
||
<filename>/dev/MAKEDEV</filename>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>FreeBSD 5.X and beyond use the &man.devfs.8; device-on-demand
|
||
system. Device drivers automatically create new device
|
||
nodes as they are needed, obsoleting
|
||
<filename>/dev/MAKEDEV</filename>.</para>
|
||
|
||
<para>If you are running FreeBSD 4.X or earlier and
|
||
<filename>/dev/MAKEDEV</filename> is missing, then you
|
||
really do have a problem. Grab a copy from the system
|
||
source code, probably in
|
||
<filename>/usr/src/etc/MAKEDEV</filename>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="add-pty">
|
||
<para>How do I add pseudoterminals to the system?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>If you have lots of telnet, ssh, X, or screen users,
|
||
you will probably run out of pseudoterminals. Here is how to
|
||
add more:</para>
|
||
|
||
<procedure>
|
||
<step>
|
||
<para>Build and install a new kernel with the line</para>
|
||
|
||
<programlisting>pseudo-device pty 256</programlisting>
|
||
|
||
<para>in the configuration file.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>Run the commands</para>
|
||
|
||
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
||
&prompt.root; <userinput>sh MAKEDEV pty{1,2,3,4,5,6,7}</userinput></screen>
|
||
|
||
<para>to make 256 device nodes for the new terminals.</para>
|
||
|
||
</step>
|
||
|
||
<step>
|
||
<para>Edit <filename>/etc/ttys</filename> and add lines
|
||
for each of the 256 terminals. They should match the form
|
||
of the existing entries, i.e. they look like</para>
|
||
|
||
<programlisting>ttyqc none network</programlisting>
|
||
|
||
<para>The order of the letter designations is
|
||
<literal>tty[pqrsPQRS][0-9a-v]</literal>, using a
|
||
regular expression. </para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>Reboot the system with the new kernel and you are
|
||
ready to go.</para>
|
||
</step>
|
||
</procedure>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="create-snd0">
|
||
<para>Why can I not create the snd0 device?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>There is no <devicename>snd</devicename> device. The name
|
||
is used as a shorthand for the various devices that make up the
|
||
FreeBSD sound driver, such as <devicename>mixer</devicename>,
|
||
<devicename>sequencer</devicename>, and
|
||
<devicename>dsp</devicename>.</para>
|
||
|
||
<para>To create these devices you should</para>
|
||
|
||
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
||
&prompt.root; <userinput>sh MAKEDEV snd0</userinput></screen>
|
||
|
||
<note>
|
||
<para>You can omit this step if you are running FreeBSD
|
||
5.0-RELEASE or newer with &man.devfs.5;
|
||
enabled.</para>
|
||
</note>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="reread-rc">
|
||
<para>How do I re-read <filename>/etc/rc.conf</filename> and
|
||
re-start <filename>/etc/rc</filename> without a
|
||
reboot?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>Go into single user mode and then back to multi user
|
||
mode.</para>
|
||
|
||
<para>On the console do:</para>
|
||
|
||
<screen>&prompt.root; <userinput>shutdown now</userinput>
|
||
(Note: without -r or -h)
|
||
|
||
&prompt.root; <userinput>return</userinput>
|
||
&prompt.root; <userinput>exit</userinput></screen>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
|
||
<qandaentry>
|
||
<question id="release-candidate">
|
||
<para>I tried to update my system to the latest -STABLE, but
|
||
got -BETAx, -RC or -PRERELEASE! What is going on?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Short answer: it is just a name. RC stands for
|
||
<quote>Release Candidate</quote>. It signifies that a
|
||
release is imminent. In FreeBSD, -PRERELEASE is typically
|
||
synonymous with the code freeze before a release. (For
|
||
some releases, the -BETA label was used in the same way as
|
||
-PRERELEASE.)</para>
|
||
|
||
<para>Long answer: FreeBSD derives its releases from one of
|
||
two places. Major, dot-zero, releases, such as
|
||
4.0-RELEASE and 5.0-RELEASE, are branched from the head of
|
||
the development stream, commonly referred to as <link
|
||
linkend="current">-CURRENT</link>. Minor releases, such
|
||
as 4.1-RELEASE or 5.2-RELEASE, have been snapshots of the
|
||
active <link linkend="stable">-STABLE</link> branch.
|
||
Starting with 4.3-RELEASE, each release also now has its
|
||
own branch which can be tracked by people requiring an
|
||
extremely conservative rate of development (typically only
|
||
security advisories).</para>
|
||
|
||
<para>When a release is about to be made, the branch from
|
||
which it will be derived from has to undergo a certain
|
||
process. Part of this process is a code freeze. When a
|
||
code freeze is initiated, the name of the branch is
|
||
changed to reflect that it is about to become a release.
|
||
For example, if the branch used to be called 4.5-STABLE,
|
||
its name will be changed to 4.6-PRERELEASE to signify the
|
||
code freeze and signify that extra pre-release testing
|
||
should be happening. Bug fixes can still be committed to
|
||
be part of the release. When the source code is in shape
|
||
for the release the name will be changed to 4.6-RC to
|
||
signify that a release is about to be made from it. Once
|
||
in the RC stage, only the most critical bugs found can be
|
||
fixed. Once the release (4.6-RELEASE in this example) and
|
||
release branch have been made, the branch will be renamed
|
||
to 4.6-STABLE.</para>
|
||
|
||
<para>For more information on version numbers and the
|
||
various CVS branches, refer to the
|
||
<ulink url="&url.articles.releng;/article.html">Release
|
||
Engineering</ulink> article.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="kernel-chflag-failure">
|
||
<para>I tried to install a new kernel, and the chflags
|
||
failed. How do I get around this?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Short answer: You are probably at security level
|
||
greater than 0. Reboot directly to single user mode to
|
||
install the kernel.</para>
|
||
|
||
<para>Long answer: FreeBSD disallows changing system flags
|
||
at security levels greater than 0. You can check your
|
||
security level with the command:</para>
|
||
|
||
<screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen>
|
||
|
||
<para>You cannot lower the security level; you have to boot to
|
||
single mode to install the kernel, or change the security
|
||
level in <filename>/etc/rc.conf</filename> then reboot. See
|
||
the &man.init.8; manual page for details on securelevel, and see
|
||
<filename>/etc/defaults/rc.conf</filename> and the
|
||
&man.rc.conf.5; manual page for more information on
|
||
rc.conf.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="kernel-securelevel-time">
|
||
<para>I cannot change the time on my system by more than one second!
|
||
How do I get around this?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Short answer: You are probably at security level
|
||
greater than 1. Reboot directly to single user mode to
|
||
change the date.</para>
|
||
|
||
<para>Long answer: FreeBSD disallows changing the time by
|
||
more that one second at security levels greater than 1. You
|
||
can check your security level with the command:</para>
|
||
|
||
<screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen>
|
||
|
||
<para>You cannot lower the security level; you have to boot
|
||
to single mode to change the date, or change the security
|
||
level in <filename>/etc/rc.conf</filename> then
|
||
reboot. See the &man.init.8; manual page for details on
|
||
securelevel, and see
|
||
<filename>/etc/defaults/rc.conf</filename> and the
|
||
&man.rc.conf.5; manual page for more information on
|
||
rc.conf.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="statd-mem-leak">
|
||
<para>Why is <command>rpc.statd</command> using 256 megabytes of
|
||
memory?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>No, there is no memory leak, and it is not using 256 Mbytes
|
||
of memory. For convenience, <command>rpc.statd</command> maps an
|
||
obscene amount of memory into its address space.
|
||
There is nothing terribly wrong with this from a technical
|
||
standpoint; it just throws off things like &man.top.1; and
|
||
&man.ps.1;.</para>
|
||
|
||
<para>&man.rpc.statd.8; maps its status file (resident on
|
||
<filename>/var</filename>) into its address space; to save
|
||
worrying about remapping it later when it needs to grow, it maps
|
||
it with a generous size. This is very evident from the source
|
||
code, where one can see that the length argument to &man.mmap.2;
|
||
is <literal>0x10000000</literal>, or one sixteenth of the
|
||
address space on an IA32, or exactly 256MB.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="unsetting-schg">
|
||
<para>Why can I not unset the <literal>schg</literal> file
|
||
flag?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You are running at an elevated (i.e., greater than 0)
|
||
securelevel. Lower the securelevel and try again. For more
|
||
information, see <link linkend="securelevel">the FAQ entry on
|
||
securelevel</link> and the &man.init.8; manual page.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ssh-shosts">
|
||
<para>Why does SSH authentication through
|
||
<filename>.shosts</filename> not work by default in recent
|
||
versions of FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The reason why <filename>.shosts</filename>
|
||
authentication does not work by default in more recent
|
||
versions of FreeBSD is because &man.ssh.1;
|
||
is not installed suid <username>root</username> by default. To
|
||
<quote>fix</quote> this, you can do one of the
|
||
following:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>As a permanent fix, set
|
||
<makevar>ENABLE_SUID_SSH</makevar> to <literal>true</literal>
|
||
in <filename>/etc/make.conf</filename> and rebuild ssh
|
||
(or run <command>make world</command>).</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>As a temporary fix, change the mode on
|
||
<filename>/usr/bin/ssh</filename> to <literal>4555</literal>
|
||
by running <command>chmod 4555 /usr/bin/ssh</command> as
|
||
<username>root</username>. Then add
|
||
<makevar>ENABLE_SUID_SSH= true</makevar> to
|
||
<filename>/etc/make.conf</filename> so the change takes
|
||
effect the next time <command>make world</command> is
|
||
run.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="vnlru">
|
||
<para>What is <literal>vnlru</literal>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para><literal>vnlru</literal> flushes and frees vnodes when
|
||
the system hits the <varname>kern.maxvnodes</varname>
|
||
limit. This kernel thread sits mostly idle, and only
|
||
activates if you have a huge amount of RAM and are
|
||
accessing tens of thousands of tiny files.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="top-memory-states">
|
||
<para>What do the various memory states displayed by
|
||
<command>top</command> mean?</para>
|
||
</question>
|
||
<!-- Provided by John Dyson via Usenet -->
|
||
<answer>
|
||
<itemizedlist>
|
||
<listitem><para><literal>Active</literal>: pages recently
|
||
statistically used.</para></listitem>
|
||
|
||
<listitem><para><literal>Inactive</literal>: pages
|
||
recently statistically unused.</para></listitem>
|
||
|
||
<listitem><para><literal>Cache</literal>: (most often)
|
||
pages that have percolated from inactive to a status
|
||
where they maintain their data, but can often be
|
||
immediately reused (either with their old association,
|
||
or reused with a new association.) There can be certain
|
||
immediate transitions from <literal>active</literal> to <literal>cache</literal> state if the
|
||
page is known to be clean (unmodified), but that
|
||
transition is a matter of policy, depending upon the
|
||
algorithm choice of the VM system
|
||
maintainer.</para></listitem>
|
||
|
||
<listitem><para><literal>Free</literal>: pages without
|
||
data content, and can be immediately used in certain
|
||
circumstances where cache pages might be ineligible.
|
||
Free pages can be reused at interrupt or process
|
||
state.</para></listitem>
|
||
|
||
<listitem><para><literal>Wired</literal>: pages that are
|
||
fixed into memory, usually for kernel purposes, but also
|
||
sometimes for special use in
|
||
processes.</para></listitem>
|
||
</itemizedlist>
|
||
|
||
<para>Pages are most often written to disk (sort of a VM
|
||
sync) when they are in the inactive state, but active
|
||
pages can also be synced (but requires the
|
||
availability of certain CPU features.) This depends upon
|
||
the CPU tracking of the modified bit being available,
|
||
and in certain situations there can be an advantage for a
|
||
block of VM pages to be synced, whether they are active or
|
||
inactive. In most common cases, it is best to think of
|
||
the inactive queue to be a queue of relatively unused
|
||
pages that might or might not be in the process of being
|
||
written to disk. Cached pages are already synced, not
|
||
mapped, but available for immediate process use with their
|
||
old association or with a new association. Free pages are
|
||
available at interrupt level, but cached or free pages can
|
||
be used at process state for reuse. Cache pages are not
|
||
adequately locked to be available at interrupt
|
||
level.</para>
|
||
|
||
<para>There are some other flags (e.g., busy flag or busy
|
||
count) that might modify some of the rules that I
|
||
described.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="free-memory-amount">
|
||
<para>How much free memory is available?</para>
|
||
</question>
|
||
<!-- Provided by John Dyson via Usenet -->
|
||
<answer>
|
||
<para>There are a couple of kinds of <quote>free
|
||
memory</quote>. One kind is the amount of memory
|
||
immediately available without paging anything else out.
|
||
That is approximately the size of cache queue + size of
|
||
free queue (with a derating factor, depending upon system
|
||
tuning.) Another kind of <quote>free memory</quote> is
|
||
the total amount of <acronym>VM</acronym> space. That can
|
||
be complex, but is dependent upon the amount of swap space
|
||
and memory. Other kinds of <quote>free memory</quote>
|
||
descriptions are also possible, but it is relatively
|
||
useless to define these, but rather it is important to
|
||
make sure that the paging rate is kept low, and to avoid
|
||
running out of swap space.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="var-empty">
|
||
<para>What is <filename>/var/empty</filename>? I can not
|
||
delete it!</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para><filename>/var/empty</filename> is a directory that the
|
||
&man.sshd.8; program uses when performing privilege separation.
|
||
The <filename>/var/empty</filename> directory is empty, owned by
|
||
<username>root</username> and has the <literal>schg</literal>
|
||
flag set.</para>
|
||
|
||
<para>Although it is not recommended to delete this directory, to
|
||
do so you will need to unset the <literal>schg</literal> flag
|
||
first. See the &man.chflags.1; manual page for more information
|
||
(and bear in mind the answer to <link linkend="unsetting-schg">
|
||
the question on unsetting the schg flag</link>).</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="x">
|
||
<title>Ôï Óýóôçìá X Windows êáé ïé ÅéêïíéêÝò Êïíóüëåò</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="whatis-X">
|
||
<para>What is the X Window System?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>The X Window System (commonly <literal>X11</literal>) is the
|
||
most widely available windowing system capable of running on
|
||
&unix; or &unix; like systems, including
|
||
&os;. <ulink url= "http://www.x.org">The X.Org
|
||
Foundation</ulink> administers the <ulink
|
||
url="http://en.wikipedia.org/wiki/X_Window_System_core_protocol">
|
||
X protocol standards</ulink>, with the current reference
|
||
implementation, version 11 release &xorg.version;,
|
||
so you will often see references shortened to
|
||
<literal>X11</literal>.</para>
|
||
|
||
<para>Many implementations are available for different
|
||
architectures and operating systems. An
|
||
implementation of the server-side code is properly known
|
||
as an <literal>X server</literal>.</para>
|
||
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="which-X">
|
||
<para>Which X implementations are available for &os;?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>Historically, the default implementation of X on
|
||
&os; has been
|
||
&xfree86; which is maintained by
|
||
<ulink url="http://www.xfree86.org">The XFree86 Project,
|
||
Inc.</ulink> This software was installed by default on
|
||
&os; versions up until 4.10 and 5.2. Although &xorg;
|
||
itself maintained an implementation during that time
|
||
period, it was basically only provided as a reference
|
||
platform, as it had suffered greatly from bitrot over
|
||
the years.</para>
|
||
|
||
<para>However, early in 2004, some XFree86 developers left
|
||
that project
|
||
over issues including the pace of code changes, future
|
||
directions, and interpersonal conflicts, and are now contributing
|
||
code directly to &xorg; instead. At that time, &xorg; updated its
|
||
source tree to the last &xfree86; release before its subsequent
|
||
licensing change (<application>XFree86 version 4.3.99.903</application>), incorporated
|
||
many changes that had previously been maintained separately,
|
||
and has released that software as <application>X11R6.7.0</application>. A separate but
|
||
related project, <ulink url="http://www.freedesktop.org">
|
||
freedesktop.org</ulink> (or <literal>fd.o</literal> for short),
|
||
is working on rearchitecting the original &xfree86; code to
|
||
offload more work onto the graphics cards (with the goal of
|
||
increased performance) and make it more modular
|
||
(with the goal of increased maintainability, and thus faster
|
||
releases as well as easier configuration). &xorg; intends to
|
||
incorporate the freedesktop.org changes in its future releases.</para>
|
||
|
||
<para>As of July 2004, in &os.current;,
|
||
&xfree86; has been replaced with &xorg; as the default
|
||
implementation. The &xfree86; ports
|
||
(<filename role="package">x11/XFree86-4</filename> and
|
||
subports) remain in the ports collection. But &xorg; is
|
||
the default X11 implementation for &os; 5.3 and later.</para>
|
||
|
||
<para>For further information, read the <ulink
|
||
url="&url.books.handbook;/x11.html">X11</ulink> section of the
|
||
FreeBSD Handbook.</para>
|
||
|
||
<note>
|
||
<para>The above describes the default X implementation installed.
|
||
It is still possible to install either implementation by
|
||
following the instructions in the entry for 20040723 in
|
||
<filename>/usr/ports/UPDATING</filename>.</para>
|
||
</note>
|
||
|
||
<warning>
|
||
<para>It is not currently
|
||
possible to mix-and-match pieces of each implementation;
|
||
one must choose one or the other.</para>
|
||
</warning>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="xorg-compatibility">
|
||
<para>Will my existing applications run with the &xorg; suite?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The &xorg; software is written to the same X11R6 specification
|
||
that &xfree86; is, so basic applications should work
|
||
unchanged. A few lesser-used protocols have been deprecated
|
||
(<literal>XIE</literal>, <literal>PEX</literal>, and
|
||
<literal>lbxproxy</literal>), but in the first two cases, the
|
||
&os; port of &xfree86; did not support them either.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="xfree86-split">
|
||
<para>Why did the X projects split, anyway?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The answer to this question is outside the scope of
|
||
this FAQ. Note that there are voluminous postings in various
|
||
mailing list archives on the Internet; please use your favorite
|
||
search engine to investigate the history instead of asking this
|
||
question on the &os; mailing lists. It may even be the case
|
||
that only the participants will ever know for certain.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="why-choose-xorg">
|
||
<para>Why did &os; choose to go with the &xorg; ports by default?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The &xorg; developers claim that their goal is to release
|
||
more often and incorporate new features more quickly. If they
|
||
are able to do so, this will be very attractive. Also, their
|
||
software still uses the traditional X license, while &xfree86;
|
||
is now using their modified one.</para>
|
||
|
||
<note>
|
||
<para>This decision is still controversial. Only time will
|
||
tell which implementation proves technically superior. Each
|
||
&os; user should decide which they prefer.</para>
|
||
</note>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="running-X">
|
||
<para>I want to run X, how do I go about it?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>If you would like to add X to an existing installation, you
|
||
should use the <filename role="package">x11/xorg</filename>
|
||
meta-port, which will build and install all the necessary
|
||
components.</para>
|
||
|
||
<para>Then read and follow the documentation on the
|
||
&man.xorgconfig.1; tool, which assists you in
|
||
configuring &xorg; for your particular graphics
|
||
card/mouse/etc. You may also wish to examine the
|
||
&man.xorgcfg.1; tool, which provides a graphical interface
|
||
to the X configuration process.</para>
|
||
|
||
<para>For further information, read the <ulink
|
||
url="&url.books.handbook;/x11.html">X11</ulink> section of the
|
||
FreeBSD Handbook.</para>
|
||
|
||
<para>You may also wish to investigate the Xaccel server.
|
||
See the section on <link linkend="xig">Xi Graphics</link>
|
||
for more details.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="running-X-securelevels">
|
||
<para>I <emphasis>tried</emphasis> to run X, but I get an
|
||
<errorname>KDENABIO failed (Operation not permitted)</errorname>
|
||
error when I type <command>startx</command>. What do I do
|
||
now?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Your system is probably running at a raised securelevel.
|
||
It is not possible to start X at a raised securelevel because
|
||
X requires write access to <devicename>/dev/io</devicename>.
|
||
For more information, see at the &man.init.8; manual
|
||
page.</para>
|
||
|
||
<para>So the question is what else you should do instead,
|
||
and you basically have two choices: set your securelevel
|
||
back down to zero (usually from <filename>/etc/rc.conf</filename>),
|
||
or run &man.xdm.1; at boot time (before the securelevel is
|
||
raised).</para>
|
||
|
||
<para>See <xref linkend="xdm-boot"/> for more information about
|
||
running &man.xdm.1; at boot time.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="x-and-moused">
|
||
<para>Why does my mouse not work with X?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you are using syscons (the default console driver),
|
||
you can configure FreeBSD to support a mouse pointer on each
|
||
virtual screen. In order to avoid conflicting with X, syscons
|
||
supports a virtual device called
|
||
<devicename>/dev/sysmouse</devicename>. All mouse events received
|
||
from the real mouse device are written to the sysmouse device
|
||
via moused. If you wish to use your mouse on one or more
|
||
virtual consoles, <emphasis>and</emphasis> use X, see
|
||
<xref linkend="moused" remap="another section"/> and set up
|
||
moused.</para>
|
||
|
||
<para>Then edit <filename>/etc/X11/xorg.conf</filename> and make
|
||
sure you have the following lines:</para>
|
||
|
||
<programlisting>Section "InputDevice"
|
||
Option "Protocol" "SysMouse"
|
||
Option "Device" "/dev/sysmouse"
|
||
.....</programlisting>
|
||
|
||
<para>Some people prefer to use
|
||
<devicename>/dev/mouse</devicename> under X. To make this
|
||
work, <devicename>/dev/mouse</devicename> should be linked
|
||
to <devicename>/dev/sysmouse</devicename> (see
|
||
&man.sysmouse.4;):</para>
|
||
|
||
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
||
&prompt.root; <userinput>rm -f mouse</userinput>
|
||
&prompt.root; <userinput>ln -s sysmouse mouse</userinput></screen>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="x-and-wheel">
|
||
<para>My mouse has a fancy wheel. Can I use it in X?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes.</para>
|
||
|
||
<para>You need to tell X that you have a 5 button mouse.
|
||
To do this, simply add the lines
|
||
<literal>Buttons 5</literal> and
|
||
<literal>ZAxisMapping 4 5</literal> to the
|
||
<quote>InputDevice</quote> section of
|
||
<filename>/etc/X11/xorg.conf</filename>. For example, you
|
||
might have the following <quote>InputDevice</quote> section
|
||
in <filename>/etc/X11/xorg.conf</filename>.</para>
|
||
|
||
<example>
|
||
<title><quote>InputDevice</quote> Section for Wheeled Mouse
|
||
in &xorg; configuration file</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> example for naive page
|
||
scrolling with Wheeled Mouse (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>How do I use remote X displays?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>For security reasons, the default setting is to not allow a
|
||
machine to remotely open a window.</para>
|
||
|
||
<para>To enable this feature, simply start
|
||
<application>X</application> with the optional
|
||
<option>-listen_tcp</option> argument:</para>
|
||
<screen>&prompt.user; <userinput>startx -listen_tcp</userinput>
|
||
</screen>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="window-menu-weird">
|
||
<para>Why do X Window menus and dialog boxes not work
|
||
right?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Try turning off the <keycap>Num Lock</keycap> key.</para>
|
||
|
||
<para>If your <keycap>Num Lock</keycap> key is on by default
|
||
at boot-time, you may add the following line in the
|
||
<literal>Keyboard</literal> section of the
|
||
<filename>/etc/X11/xorg.conf</filename> file.</para>
|
||
|
||
<programlisting># Let the server do the NumLock processing. This should only be
|
||
# required when using pre-R6 clients
|
||
ServerNumLock</programlisting>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="virtual-console">
|
||
<para>What is a virtual console and how do I make more?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Virtual consoles, put simply, enable you to have several
|
||
simultaneous sessions on the same machine without doing anything
|
||
complicated like setting up a network or running X.</para>
|
||
|
||
<para>When the system starts, it will display a login prompt on
|
||
the monitor after displaying all the boot messages. You can
|
||
then type in your login name and password and start working (or
|
||
playing!) on the first virtual console.</para>
|
||
|
||
<para>At some point, you will probably wish to start another
|
||
session, perhaps to look at documentation for a program
|
||
you are running or to read your mail while waiting for an
|
||
FTP transfer to finish. Just do <keycombo
|
||
action="simul"><keycap>Alt</keycap><keycap>F2</keycap></keycombo>
|
||
(hold down the <keycap>Alt</keycap> key and press the
|
||
<keycap>F2</keycap> key), and you will find a login prompt
|
||
waiting for you on the second <quote>virtual
|
||
console</quote>! When you want to go back to the original
|
||
session, do <keycombo
|
||
action="simul"><keycap>Alt</keycap><keycap>F1</keycap></keycombo>.</para>
|
||
|
||
<para>The default FreeBSD installation has eight virtual
|
||
consoles enabled. <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>,
|
||
and so on will switch between these virtual
|
||
consoles.</para>
|
||
|
||
<para>To enable more of them, edit
|
||
<filename>/etc/ttys</filename> (see &man.ttys.5;)
|
||
and add entries for <devicename>ttyv4</devicename>
|
||
to <devicename>ttyvc</devicename> after the comment on
|
||
<quote>Virtual terminals</quote>:</para>
|
||
|
||
<programlisting># Edit the existing entry for ttyv3 in /etc/ttys and change
|
||
# "off" to "on".
|
||
ttyv3 "/usr/libexec/getty Pc" cons25 on secure
|
||
ttyv4 "/usr/libexec/getty Pc" cons25 on secure
|
||
ttyv5 "/usr/libexec/getty Pc" cons25 on secure
|
||
ttyv6 "/usr/libexec/getty Pc" cons25 on secure
|
||
ttyv7 "/usr/libexec/getty Pc" cons25 on secure
|
||
ttyv8 "/usr/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>Use as many or as few as you want. The more virtual
|
||
terminals you have, the more resources that are used; this
|
||
can be important if you have 8MB RAM or less. You may also
|
||
want to change the <literal>secure</literal>
|
||
to <literal>insecure</literal>.</para>
|
||
|
||
<important>
|
||
<para>If you want to run an X server you
|
||
<emphasis>must</emphasis> leave at least one virtual
|
||
terminal unused (or turned off) for it to use. That is to
|
||
say that if you want to have a login prompt pop up for all
|
||
twelve of your Alt-function keys, you are out of luck - you
|
||
can only do this for eleven of them if you also want to run
|
||
an X server on the same machine.</para>
|
||
</important>
|
||
|
||
<para>The easiest way to disable a console is by turning it off.
|
||
For example, if you had the full 12 terminal allocation
|
||
mentioned above and you wanted to run X, you would change
|
||
settings for virtual terminal 12 from:</para>
|
||
|
||
<programlisting>ttyvb "/usr/libexec/getty Pc" cons25 on secure</programlisting>
|
||
|
||
<para>to:</para>
|
||
|
||
<programlisting>ttyvb "/usr/libexec/getty Pc" cons25 off secure</programlisting>
|
||
|
||
<para>If your keyboard has only ten function keys, you would
|
||
end up with:</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>(You could also just delete these lines.)</para>
|
||
|
||
<para>Next, the easiest (and cleanest) way to activate the
|
||
virtual consoles is to reboot. However, if you really do not
|
||
want to reboot, you can just shut down the X Window system
|
||
and execute (as <username>root</username>):</para>
|
||
|
||
<screen>&prompt.root; <userinput>kill -HUP 1</userinput></screen>
|
||
|
||
<para>It is imperative that you completely shut down X Window if
|
||
it is running, before running this command. If you do not,
|
||
your system will probably appear to hang/lock up after
|
||
executing the kill command.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="vty-from-x">
|
||
<para>How do I access the virtual consoles from X?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Use <keycombo action="simul">
|
||
<keycap>Ctrl</keycap>
|
||
<keycap>Alt</keycap>
|
||
<keycap>F<replaceable>n</replaceable></keycap>
|
||
</keycombo> to switch back to a virtual console.
|
||
<keycombo action="simul">
|
||
<keycap>Ctrl</keycap>
|
||
<keycap>Alt</keycap>
|
||
<keycap>F1</keycap>
|
||
</keycombo> would return you to the first virtual console.</para>
|
||
|
||
<para>Once you are back to a text console, you can then use
|
||
<keycombo action="simul">
|
||
<keycap>Alt</keycap>
|
||
<keycap>F<replaceable>n</replaceable></keycap>
|
||
</keycombo> as normal to move between them.</para>
|
||
|
||
<para>To return to the X session, you must switch to the
|
||
virtual console running X. If you invoked X from the
|
||
command line, (e.g., using <command>startx</command>) then
|
||
the X session will attach to the next unused virtual
|
||
console, not the text console from which it was invoked.
|
||
If you have eight active virtual terminals then X will be
|
||
running on the ninth, and you would use
|
||
<keycombo action="simul">
|
||
<keycap>Alt</keycap>
|
||
<keycap>F9</keycap>
|
||
</keycombo> to return.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="xdm-boot">
|
||
<para>How do I start XDM on boot?</para>
|
||
</question><answer>
|
||
|
||
<para>There are two schools of thought on how to start
|
||
&man.xdm.1;. One school starts xdm from
|
||
<filename>/etc/ttys</filename> (see &man.ttys.5;) using
|
||
the supplied example, while the other simply runs xdm from
|
||
<filename>rc.local</filename> (see &man.rc.8;) or from a
|
||
<filename>X.sh</filename> script in
|
||
<filename>/usr/local/etc/rc.d</filename>. Both are equally
|
||
valid, and one may work in situations where the other does
|
||
not. In both cases the result is the same: X will pop up
|
||
a graphical login: prompt.</para>
|
||
|
||
<para>The ttys method has the advantage of documenting which
|
||
vty X will start on and passing the responsibility of
|
||
restarting the X server on logout to init. The rc.local
|
||
method makes it easy to kill xdm if there is a problem
|
||
starting the X server.</para>
|
||
|
||
<para>If loaded from rc.local, <command>xdm</command> should
|
||
be started without any arguments (i.e., as a daemon). xdm must
|
||
start AFTER getty runs, or else getty and xdm will conflict,
|
||
locking out the console. The best way around this is to have
|
||
the script sleep 10 seconds or so then launch xdm.</para>
|
||
|
||
<para>If you are to start <command>xdm</command> from
|
||
<filename>/etc/ttys</filename>, there still is a chance of
|
||
conflict between <command>xdm</command> and
|
||
&man.getty.8;. One way to avoid this is to add the
|
||
<literal>vt</literal> number in the
|
||
<filename>/usr/local/lib/X11/xdm/Xservers</filename>
|
||
file.</para>
|
||
|
||
<programlisting>:0 local /usr/local/bin/X vt4</programlisting>
|
||
|
||
<para>The above example will direct the X server to run in
|
||
<devicename>/dev/ttyv3</devicename>. Note the number is offset by
|
||
one. The X server counts the vty from one, whereas the FreeBSD
|
||
kernel numbers the vty from zero.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="xconsole-failure">
|
||
<para>Why do I get <errorname>Couldn't open console</errorname>
|
||
when I run xconsole?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you start <application>X</application>
|
||
with
|
||
<command>startx</command>, the permissions on
|
||
<devicename>/dev/console</devicename> will
|
||
<emphasis>not</emphasis> get changed, resulting in
|
||
things like
|
||
<command>xterm -C</command> and
|
||
<command>xconsole</command> not working.</para>
|
||
|
||
<para>This is because of the way console permissions are set
|
||
by default. On a multi-user system, one does not necessarily
|
||
want just any user to be able to write on the system console.
|
||
For users who are logging directly onto a machine with a VTY,
|
||
the &man.fbtab.5;
|
||
file exists to solve such problems.</para>
|
||
|
||
<para>In a nutshell, make sure an uncommented line of the
|
||
form</para>
|
||
|
||
<programlisting>/dev/ttyv0 0600 /dev/console</programlisting>
|
||
|
||
<para>is in <filename>/etc/fbtab</filename> (see
|
||
&man.fbtab.5;) and it will ensure that whomever logs in on
|
||
<devicename>/dev/ttyv0</devicename> will own the
|
||
console.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="xfree86-root">
|
||
<para>Before, I was able to run &xfree86; as a regular user. Why does
|
||
it now say that I must be <username>root</username>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>All X servers need to be run as
|
||
<username>root</username> in order to get direct access to
|
||
your video hardware. Older versions of &xfree86; (<=
|
||
3.3.6) installed all bundled servers to be automatically
|
||
run as <username>root</username> (setuid to
|
||
<username>root</username>). This is obviously a security
|
||
hazard because X servers are large, complicated programs.
|
||
Newer versions of &xfree86; do not install the servers
|
||
setuid to <username>root</username> for just this
|
||
reason.</para>
|
||
|
||
<para>Obviously, running an X server as the
|
||
<username>root</username> user is not acceptable, nor a
|
||
good idea security-wise. There are two ways to be able to
|
||
use X as a regular user. The first is to use
|
||
<command>xdm</command> or another display manager (e.g.,
|
||
<command>kdm</command>); the second is to use the
|
||
<command>Xwrapper</command>.</para>
|
||
|
||
<para><command>xdm</command> is a daemon that handles graphical
|
||
logins. It is usually started at boot time, and is responsible
|
||
for authenticating users and starting their sessions; it is
|
||
essentially the graphical counterpart of
|
||
&man.getty.8; and &man.login.1;. For
|
||
more information on <command>xdm</command> see
|
||
<ulink url="http://www.xfree86.org/sos/resources.html">the &xfree86;
|
||
documentation</ulink>, and the <link linkend="xdm-boot">the FAQ
|
||
entry</link> on it.</para>
|
||
|
||
<para><command>Xwrapper</command> is the X server wrapper; it is
|
||
a small utility to enable one to manually run an X server while
|
||
maintaining reasonable safety. It performs some sanity checks
|
||
on the command line arguments given, and if they pass, runs the
|
||
appropriate X server. If you do not want to run a display
|
||
manager for whatever reason, this is for you. If you have
|
||
installed the complete ports collection, you can find the port in
|
||
<filename>/usr/ports/x11/wrapper</filename>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ps2-x">
|
||
<para>Why does my PS/2 mouse misbehave under X?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Your mouse and the mouse driver may have somewhat become
|
||
out of synchronization.</para>
|
||
|
||
<para>
|
||
In rare cases the driver may erroneously report
|
||
synchronization problem and you may see the kernel
|
||
message:</para>
|
||
|
||
<programlisting>psmintr: out of sync (xxxx != yyyy)</programlisting>
|
||
|
||
<para>and notice that your mouse does not work properly.</para>
|
||
|
||
<para>If this happens, disable the synchronization check code
|
||
by setting the driver flags for the PS/2 mouse driver to 0x100.
|
||
Enter <emphasis>UserConfig</emphasis> by giving the
|
||
<option>-c</option> option at the boot prompt:</para>
|
||
|
||
<screen>boot: <userinput>-c</userinput></screen>
|
||
|
||
<para>Then, in the <emphasis>UserConfig</emphasis> command
|
||
line, type:</para>
|
||
|
||
<screen>UserConfig> <userinput>flags psm0 0x100</userinput>
|
||
UserConfig> <userinput>quit</userinput></screen>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ps2-mousesystems">
|
||
<para>Why does my PS/2 mouse from MouseSystems not
|
||
work?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>There have been some reports that certain model of PS/2
|
||
mouse from MouseSystems works only if it is put into the
|
||
<quote>high resolution</quote> mode. Otherwise, the mouse
|
||
cursor may jump to the upper-left corner of the screen every
|
||
so often.</para>
|
||
|
||
<para>Specify the flags 0x04 to the PS/2 mouse driver to put
|
||
the mouse into the high resolution mode. Enter
|
||
<emphasis>UserConfig</emphasis> by giving the
|
||
<option>-c</option> option at the boot prompt:</para>
|
||
|
||
<screen>boot: <userinput>-c</userinput></screen>
|
||
|
||
<para>Then, in the <emphasis>UserConfig</emphasis> command line,
|
||
type:</para>
|
||
|
||
<screen>UserConfig> <userinput>flags psm0 0x04</userinput>
|
||
UserConfig> <userinput>quit</userinput></screen>
|
||
|
||
<para>See the previous section for another possible cause of mouse
|
||
problems.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="xfree86-version">
|
||
<para>I want to install different X server.</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>&os; versions prior 5.3 will use the default
|
||
<application>&xfree86; 4.X</application>,
|
||
while latter versions will default to
|
||
<application>&xorg;</application>.
|
||
If you want to run a different X11 implementation
|
||
than the default one, add the following line to
|
||
<filename>/etc/make.conf</filename>, (if you
|
||
do not have this file, create it):</para>
|
||
|
||
<programlisting>X_WINDOW_SYSTEM= xorg</programlisting>
|
||
|
||
<para>This variable may be set to <literal>xorg</literal>,
|
||
<literal>xfree86-4</literal>, or
|
||
<literal>xfree86-3</literal>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="mouse-button-reverse">
|
||
<para>How do I reverse the mouse buttons?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Run the command
|
||
<command>xmodmap -e "pointer = 3 2 1"</command> from your
|
||
<filename>.xinitrc</filename> or <filename>.xsession</filename>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="install-splash">
|
||
<para>How do I install a splash screen and where do I find
|
||
them?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>&os; have a feature to allow the display of
|
||
<quote>splash</quote> screens during the boot
|
||
messages. The splash screens currently must be a 256 color
|
||
bitmap (<filename>*.BMP</filename>) or ZSoft PCX
|
||
(<filename>*.PCX</filename>) file. In addition, they must
|
||
have a resolution of 320x200 or less to work on standard
|
||
VGA adapters. If you compile VESA support into your
|
||
kernel, then you can use larger bitmaps up to 1024x768.
|
||
The actual VESA support can either be compiled directly
|
||
into the kernel with the <literal>VESA</literal> kernel
|
||
config option or by loading the VESA kld module during
|
||
bootup.</para>
|
||
|
||
<para>To use a splash screen, you need to modify the startup
|
||
files that control the boot process for &os;.</para>
|
||
|
||
<para>You need to create
|
||
a <filename>/boot/loader.rc</filename> file that contains
|
||
the following lines:</para>
|
||
|
||
<programlisting>include /boot/loader.4th
|
||
start</programlisting>
|
||
|
||
<para>and a <filename>/boot/loader.conf</filename> that
|
||
contains the following:</para>
|
||
|
||
<programlisting>splash_bmp_load="YES"
|
||
bitmap_load="YES"</programlisting>
|
||
|
||
<para>This assumes you are using
|
||
<filename>/boot/splash.bmp</filename> for your splash
|
||
screen. If you would rather use a PCX file, copy it to
|
||
<filename>/boot/splash.pcx</filename>, create a
|
||
<filename>/boot/loader.rc</filename> as instructed above,
|
||
and create a <filename>/boot/loader.conf</filename> that
|
||
contains:</para>
|
||
|
||
<programlisting>splash_pcx_load="YES"
|
||
bitmap_load="YES"
|
||
bitmap_name="/boot/splash.pcx"</programlisting>
|
||
|
||
<para>Now all you need is a splash screen. For that you can
|
||
surf on over to the gallery at
|
||
<ulink url="http://www.baldwin.cx/splash/"></ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="windows-keys">
|
||
<para>Can I use the &windows;
|
||
keys on my keyboard in X?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes. All you need to do is use &man.xmodmap.1; to define
|
||
what function you wish them to perform.</para>
|
||
|
||
<para>Assuming all <quote>&windows;</quote> keyboards
|
||
are standard then the keycodes for the 3 keys are</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>115 - &windows; key, between
|
||
the left-hand Ctrl and Alt keys</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>116 - &windows; key, to the
|
||
right of the <keycap>AltGr</keycap> key</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>117 - <keycap>Menu</keycap> key, to the left of
|
||
the right-hand <keycap>Ctrl</keycap> key</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>To have the left &windows; key print a comma,
|
||
try this.</para>
|
||
|
||
<screen>&prompt.root; <userinput>xmodmap -e "keycode 115 = comma"</userinput></screen>
|
||
|
||
<para>You will probably have to re-start your window manager
|
||
to see the result.</para>
|
||
|
||
<para>To have the &windows;
|
||
key-mappings enabled automatically every time you start X either
|
||
put the <command>xmodmap</command> commands in your
|
||
<filename>~/.xinitrc</filename> file or, preferably, create a file
|
||
<filename>~/.xmodmaprc</filename> and include the
|
||
<command>xmodmap</command> options, one per line, then add the
|
||
line</para>
|
||
|
||
<programlisting>xmodmap $HOME/.xmodmaprc</programlisting>
|
||
|
||
<para>to your <filename>~/.xinitrc</filename>.</para>
|
||
|
||
<para>For example, you could map the 3 keys to be
|
||
<keycap>F13</keycap>, <keycap>F14</keycap>, and
|
||
<keycap>F15</keycap>, respectively. This would make it
|
||
easy to map them to useful functions within applications
|
||
or your window manager, as demonstrated further
|
||
down.</para>
|
||
|
||
<para>To do this put the following in
|
||
<filename>~/.xmodmaprc</filename>.</para>
|
||
|
||
<programlisting>keycode 115 = F13
|
||
keycode 116 = F14
|
||
keycode 117 = F15</programlisting>
|
||
|
||
<para>If you use <command>fvwm2</command>, for example, you
|
||
could map the keys so that <keycap>F13</keycap> iconifies
|
||
(or de-iconifies) the window the cursor is in,
|
||
<keycap>F14</keycap> brings the window the cursor is in to
|
||
the front or, if it is already at the front, pushes it to
|
||
the back, and <keycap>F15</keycap> pops up the main
|
||
Workplace (application) menu even if the cursor is not on
|
||
the desktop, which is useful if you do not have any part
|
||
of the desktop visible (and the logo on the key matches
|
||
its functionality).</para>
|
||
|
||
<para>The following entries in
|
||
<filename>~/.fvwmrc</filename> implement the
|
||
aforementioned setup:</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>How can I get 3D hardware acceleration for
|
||
&opengl;?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The availability of 3D acceleration depends on the
|
||
version of &xfree86; or &xorg; that you are using and the type of video chip
|
||
you have. If you have an NVIDIA chip, you can use the binary
|
||
drivers provided for FreeBSD on the
|
||
<ulink url="http://www.nvidia.com/content/drivers/drivers.asp">
|
||
Drivers</ulink> section of their website. For other cards
|
||
with &xfree86;-4 or &xorg;, including the Matrox G200/G400, ATI Rage
|
||
128/Radeon, and 3dfx Voodoo 3, 4, 5, and Banshee,
|
||
information on hardware acceleration is available on the
|
||
<ulink
|
||
url="http://people.FreeBSD.org/~anholt/dri/">XFree86-4
|
||
Direct Rendering on FreeBSD</ulink> page.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="networking">
|
||
<title>Äéêôýùóç</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="diskless-booting">
|
||
<para>Where can I get information on
|
||
<quote>diskless booting</quote>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para><quote>Diskless booting</quote> means that the FreeBSD
|
||
box is booted over a network, and reads the necessary files
|
||
from a server instead of its hard disk. For full details,
|
||
please read <ulink url="&url.books.handbook;/network-diskless.html">the
|
||
Handbook entry on diskless booting</ulink></para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="router">
|
||
<para>Can a FreeBSD box be used as a dedicated network
|
||
router?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes. Please see the Handbook entry on <ulink
|
||
url="&url.books.handbook;/advanced-networking.html"> advanced
|
||
networking</ulink>, specifically the section on <ulink
|
||
url="&url.books.handbook;/network-routing.html">routing
|
||
and gateways</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="win95-connection">
|
||
<para>Can I connect my &windows; box to the Internet via
|
||
FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Typically, people who ask this question have two PCs
|
||
at home, one with FreeBSD and one with some version of
|
||
&windows; the idea is to use the FreeBSD box to connect to
|
||
the Internet and then be able to access the Internet from
|
||
the &windows; box through the FreeBSD box. This is really
|
||
just a special case of the previous question and works
|
||
perfectly well.</para>
|
||
|
||
<para>If you are using dialup to connect to the Internet
|
||
user-mode &man.ppp.8; contains a <option>-nat</option>
|
||
option. If you run &man.ppp.8; with the
|
||
<option>-nat</option> option, set
|
||
<literal>gateway_enable</literal> to
|
||
<emphasis>YES</emphasis> in
|
||
<filename>/etc/rc.conf</filename>, and configure your
|
||
&windows; machine correctly, this should work fine. For more
|
||
information, please see the &man.ppp.8; manual page or the
|
||
<ulink url="&url.books.handbook;/userppp.html">Handbook entry on
|
||
user PPP</ulink>.</para>
|
||
|
||
<para>If you are using kernel-mode PPP or have an Ethernet
|
||
connection to the Internet, you need to use
|
||
&man.natd.8;. Please look at the <ulink
|
||
url="&url.books.handbook;/network-natd.html">natd</ulink> section
|
||
of the Handbook for a tutorial.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="slip-ppp-support">
|
||
<para>Does FreeBSD support SLIP and PPP?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes. See the manual pages for &man.slattach.8;,
|
||
&man.sliplogin.8;, &man.ppp.8;, and &man.pppd.8;. &man.ppp.8;
|
||
and &man.pppd.8; provide support for both incoming and outgoing
|
||
connections, while &man.sliplogin.8; deals exclusively with
|
||
incoming connections, and &man.slattach.8; deals exclusively
|
||
with outgoing connections.</para>
|
||
|
||
<para>For more information on how to use these, please see the
|
||
<ulink url="&url.books.handbook;/ppp-and-slip.html">Handbook chapter on
|
||
PPP and SLIP</ulink>.</para>
|
||
|
||
<para>If you only have access to the Internet through a
|
||
<quote>shell account</quote>, you may want to have a look
|
||
at the <filename role="package">net/slirp</filename>
|
||
package. It can provide you with (limited) access to
|
||
services such as ftp and http direct from your local
|
||
machine.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="natd">
|
||
<para>Does FreeBSD support NAT or Masquerading?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes. If you want to use NAT over a user PPP
|
||
connection, please see the <ulink
|
||
url="&url.books.handbook;/userppp.html">Handbook entry on user
|
||
PPP</ulink>. If you want to use NAT over some other sort
|
||
of network connection, please look at the <ulink
|
||
url="&url.books.handbook;/network-natd.html">natd</ulink> section
|
||
of the Handbook.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="parallel-connect">
|
||
<para>How do I connect two FreeBSD systems over a parallel line
|
||
using PLIP?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Please see the <ulink url="&url.books.handbook;/network-plip.html">PLIP
|
||
section</ulink> of the Handbook.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="create-dev-net">
|
||
<para>Why can I not create a <devicename>/dev/ed0</devicename>
|
||
device?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Because they are not necessary. In the Berkeley
|
||
networking framework, network interfaces are only directly
|
||
accessible by kernel code. Please see the
|
||
<filename>/etc/rc.network</filename> file and the manual
|
||
pages for the various network programs mentioned there for
|
||
more information. If this leaves you totally confused,
|
||
then you should pick up a book describing network
|
||
administration on another BSD-related operating system;
|
||
with few significant exceptions, administering networking
|
||
on FreeBSD is basically the same as on &sunos; 4.0 or
|
||
Ultrix.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ethernet-aliases">
|
||
<para>How can I set up Ethernet aliases?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If the alias is on the same subnet as an address
|
||
already configured on the interface, then add
|
||
<literal>netmask 0xffffffff</literal> to your
|
||
&man.ifconfig.8; command-line, as in the following:</para>
|
||
|
||
<screen>&prompt.root; <userinput>ifconfig ed0 alias 192.0.2.2 netmask 0xffffffff</userinput></screen>
|
||
|
||
<para>Otherwise, just specify the network address and
|
||
netmask as usual:</para>
|
||
|
||
<screen>&prompt.root; <userinput>ifconfig ed0 alias 172.16.141.5 netmask 0xffffff00</userinput></screen>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="port-3c503">
|
||
<para>How do I get my 3C503 to use the other network
|
||
port?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you want to use the other ports, you will have to specify
|
||
an additional parameter on the
|
||
&man.ifconfig.8; command line. The default port is
|
||
<literal>link0</literal>. To use the AUI port instead of the
|
||
BNC one, use <literal>link2</literal>. These flags should be
|
||
specified using the ifconfig_* variables in
|
||
<filename>/etc/rc.conf</filename> (see &man.rc.conf.5;).</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="nfs">
|
||
<para>Why am I having trouble with NFS and FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Certain PC network cards are better than others (to put
|
||
it mildly) and can sometimes cause problems with network
|
||
intensive applications like NFS.</para>
|
||
|
||
<para>See <ulink url="&url.books.handbook;/network-nfs.html">
|
||
the Handbook entry on NFS</ulink> for more information on
|
||
this topic.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="nfs-linux">
|
||
<para>Why can I not NFS-mount from a &linux; box?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Some versions of the &linux; NFS code only accept mount
|
||
requests from a privileged port; try</para>
|
||
|
||
<screen>&prompt.root; <userinput>mount -o -P linuxbox:/blah /mnt</userinput></screen>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="nfs-sun">
|
||
<para>Why can I not NFS-mount from a Sun box?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>&sun; workstations running &sunos; 4.X only accept mount
|
||
requests from a privileged port; try</para>
|
||
|
||
<screen>&prompt.root; <userinput>mount -o -P sunbox:/blah /mnt</userinput></screen>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="exports-errors">
|
||
<para>Why does <command>mountd</command> keep telling me it
|
||
<errorname>can't change attributes</errorname> and that I have a
|
||
<errorname>bad exports list</errorname> on my FreeBSD NFS
|
||
server?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The most frequent problem is not understanding the
|
||
correct format of <filename>/etc/exports</filename>.
|
||
Please review &man.exports.5; and the <ulink
|
||
url="&url.books.handbook;/network-nfs.html">NFS</ulink> entry in the
|
||
Handbook, especially the section on <ulink
|
||
url="&url.books.handbook;/network-nfs.html#CONFIGURING-NFS">configuring
|
||
NFS</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-nextstep">
|
||
<para>Why am I having problems talking PPP to NeXTStep
|
||
machines?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>Try disabling the TCP extensions in
|
||
<filename>/etc/rc.conf</filename> (see &man.rc.conf.5;) by
|
||
changing the following variable to NO:</para>
|
||
|
||
<programlisting>tcp_extensions=NO</programlisting>
|
||
|
||
<para>Xylogic's Annex boxes are also broken in this regard
|
||
and you must use the above change to connect through
|
||
them.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ip-multicast">
|
||
<para>How do I enable IP multicast support?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>FreeBSD supports multicast host operations by
|
||
default. If you want your box to run as a multicast
|
||
router, you need to recompile your kernel with the
|
||
<literal>MROUTING</literal> option and run
|
||
&man.mrouted.8;. FreeBSD will start &man.mrouted.8; at
|
||
boot time if the flag <literal>mrouted_enable</literal> is
|
||
set to <literal>"YES"</literal> in
|
||
<filename>/etc/rc.conf</filename>.</para>
|
||
|
||
<para>MBONE tools are available in their own ports category,
|
||
<ulink
|
||
url="http://www.FreeBSD.org/ports/mbone.html">mbone</ulink>.
|
||
If you are looking for the conference tools
|
||
<command>vic</command> and <command>vat</command>, look
|
||
there!</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="dec-pci-chipset">
|
||
<para>Which network cards are based on the DEC PCI
|
||
chipset?</para>
|
||
</question><answer>
|
||
|
||
<para>Here is a list compiled by Glen Foster
|
||
<email>gfoster@driver.nsta.org</email>,
|
||
with some more modern additions:</para>
|
||
|
||
<table>
|
||
<title>Network cards based on the DEC PCI chipset</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 (Model 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>Why do I have to use the FQDN for hosts on my
|
||
site?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You will probably find that the host is actually in a
|
||
different domain; for example, if you are in foo.example.org and
|
||
you wish to reach a host called <hostid>mumble</hostid> in the
|
||
<hostid role="domainname">example.org</hostid> domain, you will
|
||
have to refer to it by the fully-qualified domain name, <hostid
|
||
role="fqdn">mumble.example.org</hostid>, instead of just
|
||
<hostid>mumble</hostid>.</para>
|
||
|
||
<para>Traditionally, this was allowed by BSD BIND resolvers.
|
||
However the current version of
|
||
<application>bind</application> (see &man.named.8;)
|
||
that ships with FreeBSD no longer provides default
|
||
abbreviations for non-fully qualified domain names other than
|
||
the domain you are in. So an unqualified host
|
||
<hostid>mumble</hostid> must either be found as <hostid
|
||
role="fqdn">mumble.foo.example.org</hostid>, or it will be searched
|
||
for in the root domain.</para>
|
||
|
||
<para>This is different from the previous behavior, where the
|
||
search continued across
|
||
<hostid role="domainname">mumble.example.org</hostid>, and
|
||
<hostid role="domainname">mumble.edu</hostid>. Have a look at
|
||
RFC 1535 for why this was considered bad practice, or even a
|
||
security hole.</para>
|
||
|
||
<para>As a good workaround, you can place the line</para>
|
||
|
||
<programlisting>search foo.example.org example.org</programlisting>
|
||
|
||
<para>instead of the previous</para>
|
||
|
||
<programlisting>domain foo.example.org</programlisting>
|
||
|
||
<para>into your <filename>/etc/resolv.conf</filename> file
|
||
(see &man.resolv.conf.5;). However, make sure that the
|
||
search order does not go beyond the <quote>boundary
|
||
between local and public administration</quote>, as RFC
|
||
1535 calls it.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="network-permission-denied">
|
||
<para>Why do I get an error, <errorname>Permission
|
||
denied</errorname>, for all networking operations?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you have compiled your kernel with the
|
||
<literal>IPFIREWALL</literal> option, you need to be aware
|
||
that the default policy is to deny all packets that are
|
||
not explicitly allowed.</para>
|
||
|
||
<para>If you had unintentionally misconfigured your system
|
||
for firewalling, you can restore network operability by
|
||
typing the following while logged in as
|
||
<username>root</username>:</para>
|
||
|
||
<screen>&prompt.root; <userinput>ipfw add 65534 allow all from any to any</userinput></screen>
|
||
|
||
<para>You can also set
|
||
<literal>firewall_type="open"</literal> in
|
||
<filename>/etc/rc.conf</filename>.</para>
|
||
|
||
<para>For further information on configuring a FreeBSD
|
||
firewall, see the <ulink url="&url.books.handbook;/firewalls.html">
|
||
Handbook chapter</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ipfw-overhead">
|
||
<para>How much overhead does IPFW incur?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Please see the Handbook's <ulink
|
||
url="&url.books.handbook;/firewalls.html">Firewalls</ulink>
|
||
section, specifically the section on <ulink
|
||
url="&url.books.handbook;/firewalls.html#IPFW-OVERHEAD">IPFW
|
||
Overhead & Optimization</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ipfw-fwd">
|
||
<para>Why is my <command>ipfw</command> <quote>fwd</quote> rule
|
||
to redirect a service to another machine not working?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Possibly because you want to do network address translation
|
||
(NAT) and not just forward packets. A <quote>fwd</quote> rule
|
||
does exactly what it says; it forwards packets. It does not
|
||
actually change the data inside the packet. Say we have a rule
|
||
like:</para>
|
||
|
||
<screen>01000 fwd <replaceable>10.0.0.1</replaceable> from any to <replaceable>foo 21</replaceable></screen>
|
||
|
||
<para>When a packet with a destination address of
|
||
<replaceable>foo</replaceable> arrives at the machine with this
|
||
rule, the packet is forwarded to
|
||
<replaceable>10.0.0.1</replaceable>, but it still has the
|
||
destination address of <replaceable>foo</replaceable>! The
|
||
destination address of the packet is <emphasis>not</emphasis>
|
||
changed to <replaceable>10.0.0.1</replaceable>. Most machines
|
||
would probably drop a packet that they receive with a
|
||
destination address that is not their own. Therefore, using a
|
||
<quote>fwd</quote> rule does not often work the way the user
|
||
expects. This behavior is a feature and not a bug.</para>
|
||
|
||
<para>See the <link linkend="service-redirect">FAQ about
|
||
redirecting services</link>, the &man.natd.8; manual, or one of
|
||
the several port redirecting utilities in the <ulink
|
||
url="&url.base;/ports/index.html">ports collection</ulink> for a correct way to do
|
||
this.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="service-redirect">
|
||
<para>How can I redirect service requests from one machine to
|
||
another?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You can redirect FTP (and other service) request with
|
||
the <literal>socket</literal> package, available in the ports
|
||
tree in category <quote>sysutils</quote>. Simply replace the
|
||
service's command line to call socket instead, like so:</para>
|
||
|
||
<programlisting>ftp stream tcp nowait nobody /usr/local/bin/socket socket <replaceable>ftp.example.com</replaceable> <replaceable>ftp</replaceable></programlisting>
|
||
|
||
<para>where <replaceable>ftp.example.com</replaceable> and
|
||
<replaceable>ftp</replaceable> are the host and port to
|
||
redirect to, respectively.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="bandwidth-mgr-tool">
|
||
<para>Where can I get a bandwidth management tool?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>There are three bandwidth management tools available
|
||
for FreeBSD. &man.dummynet.4; is integrated into FreeBSD
|
||
as part of &man.ipfw.4;. <ulink
|
||
url="http://www.csl.sony.co.jp/person/kjc/programs.html">ALTQ</ulink>
|
||
is available for free on FreeBSD 4.X and has been
|
||
integrated into FreeBSD 5.X as part of &man.pf.4;.
|
||
Bandwidth Manager from <ulink
|
||
url="http://www.etinc.com/">Emerging Technologies</ulink>
|
||
is a commercial product.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="bpf-not-configured">
|
||
<para>Why do I get <errorname>/dev/bpf0: device not
|
||
configured</errorname>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You are running a program that requires the Berkeley
|
||
Packet Filter (&man.bpf.4;), but it is not in your kernel.
|
||
Add this to your kernel config file and build a new
|
||
kernel:</para>
|
||
|
||
<programlisting>pseudo-device bpf # Berkeley Packet Filter</programlisting>
|
||
|
||
<para>On FreeBSD 4.X and earlier, you must also create the
|
||
device node. After rebooting, go to the
|
||
<filename>/dev</filename> directory and run:</para>
|
||
|
||
<screen>&prompt.root; <userinput>sh MAKEDEV bpf0</userinput></screen>
|
||
|
||
<para>Please see the <ulink
|
||
url="&url.books.handbook;/kernelconfig-nodes.html"> Handbook entry
|
||
on device nodes</ulink> for more information on managing
|
||
devices.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="mount-smb-share">
|
||
<para>How do I mount a disk from a &windows; machine that is on my
|
||
network, like smbmount in &linux;?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Use the <application>SMBFS</application> toolset. It
|
||
includes a set of kernel modifications and a set of
|
||
userland programs. The programs and information are
|
||
available as <filename role="package">net/smbfs</filename>
|
||
in the ports collection, or in the base system as of
|
||
4.5-RELEASE and later.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="icmp-response-bw-limit">
|
||
<para>What are these messages about <quote>icmp-response
|
||
bandwidth limit 300/200 pps</quote> in my log
|
||
files?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>This is the kernel telling you that some activity is
|
||
provoking it to send more ICMP or TCP reset (RST)
|
||
responses than it thinks it should. ICMP responses are
|
||
often generated as a result of attempted connections to
|
||
unused UDP ports. TCP resets are generated as a result of
|
||
attempted connections to unopened TCP ports. Among
|
||
others, these are the kinds of activities which may cause
|
||
these messages:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>Brute-force denial of service (DoS) attacks (as
|
||
opposed to single-packet attacks which exploit a
|
||
specific vulnerability).</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Port scans which attempt to connect to a large
|
||
number of ports (as opposed to only trying a few
|
||
well-known ports).</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>The first number in the message tells you how many
|
||
packets the kernel would have sent if the limit was not in
|
||
place, and the second number tells you the limit. You can
|
||
control the limit using the
|
||
<varname>net.inet.icmp.icmplim</varname> sysctl variable
|
||
like this, where <literal>300</literal> is the limit in
|
||
packets per second:</para>
|
||
|
||
<screen>&prompt.root; <userinput>sysctl -w net.inet.icmp.icmplim=300</userinput></screen>
|
||
|
||
<para>If you do not want to see messages about this in your
|
||
log files, but you still want the kernel to do response
|
||
limiting, you can use the
|
||
<varname>net.inet.icmp.icmplim_output</varname> sysctl
|
||
variable to disable the output like this:</para>
|
||
|
||
<screen>&prompt.root; <userinput>sysctl -w net.inet.icmp.icmplim_output=0</userinput></screen>
|
||
|
||
<para>Finally, if you want to disable response limiting, you
|
||
can set the <varname>net.inet.icmp.icmplim</varname>
|
||
sysctl variable (see above for an example) to
|
||
<literal>0</literal>. Disabling response limiting is
|
||
discouraged for the reasons listed above.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="unknown-hw-addr-format">
|
||
<para>What are these <errorname>arp: unknown hardware
|
||
address format</errorname> error messages?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>This means that some device on your local Ethernet is
|
||
using a MAC address in a format that FreeBSD does not
|
||
recognize. This is probably caused by someone
|
||
experimenting with an Ethernet card somewhere else on the
|
||
network. You will see this most commonly on cable modem
|
||
networks. It is harmless, and should not affect the
|
||
performance of your FreeBSD machine.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="cvsup-missing-libs">
|
||
<para>I have just installed CVSup but trying to execute it
|
||
produces errors. What is wrong?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>First, see if the error message you are receiving is
|
||
like the one shown below.</para>
|
||
|
||
<programlisting>/usr/libexec/ld-elf.so.1: Shared object "libXaw.so.6" not found</programlisting>
|
||
|
||
<para>Errors like these are caused by installing the
|
||
<filename role="package">net/cvsup</filename> port on a
|
||
machine which does not have the
|
||
<application>&xfree86;</application> suite. If you want to
|
||
use the <acronym>GUI</acronym> included with
|
||
<application>CVSup</application> you will need to install
|
||
<application>&xfree86;</application> now. Alternatively if
|
||
you just wish to use <application>CVSup</application> from
|
||
a command line you should delete the package previously
|
||
installed. Then install the <filename
|
||
role="package">net/cvsup-without-gui</filename> port. This
|
||
is covered in more detail in the <ulink
|
||
url="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/cvsup.html">CVSup
|
||
section</ulink> of the Handbook.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="security">
|
||
<title>ÁóöÜëåéá</title>
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="sandbox">
|
||
<para>What is a sandbox?</para>
|
||
</question><answer>
|
||
|
||
<para><quote>Sandbox</quote> is a security term. It can
|
||
mean two things:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
|
||
<para>A process which is placed inside a set of virtual
|
||
walls that are designed to prevent someone who breaks
|
||
into the process from being able to break into the wider
|
||
system.</para>
|
||
|
||
<para>The process is said to be able to
|
||
<quote>play</quote> inside the walls. That is,
|
||
nothing the process does in regards to executing code is
|
||
supposed to be able to breech the walls so you do not
|
||
have to do a detailed audit of its code to be able to
|
||
say certain things about its security.</para>
|
||
|
||
<para>The walls might be a userid, for example. This is
|
||
the definition used in the &man.security.7; and &man.named.8; man
|
||
pages.</para>
|
||
|
||
<para>Take the <literal>ntalk</literal> service, for
|
||
example (see /etc/inetd.conf). This service used to run
|
||
as userid <username>root</username>. Now it runs as userid
|
||
<username>tty</username>. The <username>tty</username> user
|
||
is a sandbox designed to make it more difficult for
|
||
someone who has successfully hacked into the system via
|
||
ntalk from being able to hack beyond that user id.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
|
||
<para>A process which is placed inside a simulation of the
|
||
machine. This is more hard-core. Basically it means that
|
||
someone who is able to break into the process may believe
|
||
that he can break into the wider machine but is, in fact,
|
||
only breaking into a simulation of that machine and not
|
||
modifying any real data.</para>
|
||
|
||
<para>The most common way to accomplish this is to build a
|
||
simulated environment in a subdirectory and then run the
|
||
processes in that directory chroot'd (i.e.
|
||
<filename>/</filename> for that process is this
|
||
directory, not the real <filename>/</filename> of the
|
||
system).</para>
|
||
|
||
<para>Another common use is to mount an underlying
|
||
filesystem read-only and then create a filesystem layer
|
||
on top of it that gives a process a seemingly writeable
|
||
view into that filesystem. The process may believe it is
|
||
able to write to those files, but only the process sees
|
||
the effects - other processes in the system do not,
|
||
necessarily.</para>
|
||
|
||
<para>An attempt is made to make this sort of sandbox so
|
||
transparent that the user (or hacker) does not realize
|
||
that he is sitting in it.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>&unix; implements two core sandboxes. One is at the
|
||
process level, and one is at the userid level.</para>
|
||
|
||
<para>Every &unix; process is completely firewalled off from every
|
||
other &unix; process. One process cannot modify the address
|
||
space of another. This is unlike &windows; where a process
|
||
can easily overwrite the address space of any other, leading
|
||
to a crash.</para>
|
||
|
||
<para>A &unix; process is owned by a particular userid. If
|
||
the userid is not the <username>root</username> user, it
|
||
serves to firewall the process off from processes owned by
|
||
other users. The userid is also used to firewall off
|
||
on-disk data.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="securelevel">
|
||
<para>What is securelevel?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The securelevel is a security mechanism implemented in the
|
||
kernel. Basically, when the securelevel is positive, the
|
||
kernel restricts certain tasks; not even the superuser (i.e.,
|
||
<username>root</username>) is allowed to do them. At the time
|
||
of this writing, the securelevel mechanism is capable of, among
|
||
other things, limiting the ability to,</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>unset certain file flags, such as
|
||
<literal>schg</literal> (the system immutable flag),</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>write to kernel memory via
|
||
<devicename>/dev/mem</devicename> and
|
||
<devicename>/dev/kmem</devicename>,</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>load kernel modules, and</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>alter firewall rules.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
<para>To check the status of the securelevel on a running system,
|
||
simply execute the following command:</para>
|
||
|
||
<screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen>
|
||
|
||
<para>The output will contain the name of the &man.sysctl.8;
|
||
variable (in this case, <varname>kern.securelevel</varname>)
|
||
and a number. The latter is the current value of the
|
||
securelevel. If it is positive (i.e., greater than 0), at
|
||
least some of the securelevel's protections are enabled.</para>
|
||
|
||
<para>You cannot lower the securelevel of a running system; being
|
||
able to do that would defeat its purpose. If you need to do a
|
||
task that requires that the securelevel be non-positive (e.g.,
|
||
an <maketarget>installworld</maketarget> or changing the date),
|
||
you will have to change the securelevel setting in
|
||
<filename>/etc/rc.conf</filename> (you want to look for the
|
||
<varname>kern_securelevel</varname> and
|
||
<varname>kern_securelevel_enable</varname> variables) and
|
||
reboot.</para>
|
||
|
||
<para>For more information on securelevel and the specific things
|
||
all the levels do, please consult the &man.init.8; manual
|
||
page.</para>
|
||
|
||
<warning>
|
||
<para>Securelevel is not a silver bullet; it has many known
|
||
deficiencies. More often than not, it provides a false
|
||
sense of security.</para>
|
||
|
||
<para>One of its biggest problems is that in order for it to
|
||
be at all effective, all files used in the boot process up
|
||
until the securelevel is set must be protected. If an
|
||
attacker can get the system to execute their code prior to
|
||
the securelevel being set (which happens quite late in the
|
||
boot process since some things the system must do at
|
||
start-up cannot be done at an elevated securelevel), its
|
||
protections are invalidated. While this task of protecting
|
||
all files used in the boot process is not technically
|
||
impossible, if it is achieved, system maintenance will
|
||
become a nightmare since one would have to take the system
|
||
down, at least to single-user mode, to modify a
|
||
configuration file.</para>
|
||
|
||
<para>This point and others are often discussed on the
|
||
mailing lists, particularly the &a.security;. Please search
|
||
the archives <ulink
|
||
url="&url.base;/search/index.html">here</ulink> for an
|
||
extensive discussion. Some people are hopeful that
|
||
securelevel will soon go away in favor of a more
|
||
fine-grained mechanism, but things are still hazy in this
|
||
respect.</para>
|
||
|
||
<para>Consider yourself warned.</para>
|
||
</warning>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="extra-named-port">
|
||
<para>BIND (<command>named</command>) is listening on port 53 and
|
||
some other high-numbered port. What is going on?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>BIND uses a random high-numbered port for outgoing
|
||
queries. If you want to use port 53 for outgoing queries,
|
||
either to get past a firewall or to make yourself feel
|
||
better, you can try the following in
|
||
<filename>/etc/namedb/named.conf</filename>:</para>
|
||
|
||
<programlisting>options {
|
||
query-source address * port 53;
|
||
};</programlisting>
|
||
|
||
<para>You can replace the <literal>*</literal> with a single IP
|
||
address if you want to tighten things further.</para>
|
||
|
||
<para>Congratulations, by the way. It is good practice to read
|
||
your &man.sockstat.1; output and notice odd
|
||
things!</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="sendmail-port-587">
|
||
<para>Sendmail is listening on port 587 as well as the
|
||
standard port 25! What is going on?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Recent versions of Sendmail support a
|
||
mail submission feature that runs over port 587. This is
|
||
not yet widely supported, but is growing in
|
||
popularity.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="toor-account">
|
||
<para>What is this UID 0 <username>toor</username> account? Have I
|
||
been compromised?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Do not worry. <username>toor</username> is an
|
||
<quote>alternative</quote> superuser account (toor is root
|
||
spelt backwards). Previously it was created when the
|
||
&man.bash.1; shell was installed but now it is created by
|
||
default. It is intended to be used with a non-standard shell so
|
||
you do not have to change <username>root</username>'s default
|
||
shell. This is important as shells which are not part of the
|
||
base distribution (for example a shell installed from ports or
|
||
packages) are likely to be installed in
|
||
<filename>/usr/local/bin</filename> which, by default, resides
|
||
on a different filesystem. If <username>root</username>'s shell
|
||
is located in <filename>/usr/local/bin</filename> and
|
||
<filename>/usr</filename> (or whatever filesystem contains
|
||
<filename>/usr/local/bin</filename>) is not mounted for some
|
||
reason, <username>root</username> will not be able to log in to
|
||
fix a problem (although if you reboot into single user mode
|
||
you will be prompted for the path to a shell).</para>
|
||
|
||
<para>Some people use <username>toor</username> for
|
||
day-to-day <username>root</username> tasks with a
|
||
non-standard shell, leaving <username>root</username>,
|
||
with a standard shell, for single user mode or
|
||
emergencies. By default you cannot log in using
|
||
<username>toor</username> as it does not have a password,
|
||
so log in as <username>root</username> and set a password
|
||
for <username>toor</username> if you want to use
|
||
it.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="suidperl">
|
||
<para>Why is <command>suidperl</command> not working
|
||
properly?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>For security reasons, <command>suidperl</command> is
|
||
installed without the suid bit by default. The system
|
||
administrator can enable suid behavior with the following
|
||
command.</para>
|
||
|
||
<screen>&prompt.root; <userinput>chmod u+s /usr/bin/suidperl</userinput></screen>
|
||
|
||
<para>If you want <command>suidperl</command> to be built
|
||
suid during upgrades from source, edit
|
||
<filename>/etc/make.conf</filename> and add
|
||
<varname>ENABLE_SUIDPERL=true</varname> before you run
|
||
<command>make buildworld</command>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="ppp">
|
||
<title>PPP</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="userppp">
|
||
<para>I cannot make &man.ppp.8; work. What am I doing wrong?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You should first read the &man.ppp.8; manual page and
|
||
the <ulink url="&url.books.handbook;/ppp-and-slip.html#USERPPP">
|
||
PPP section of the handbook</ulink>. Enable logging with
|
||
the command</para>
|
||
|
||
<programlisting>set log Phase Chat Connect Carrier lcp ipcp ccp command</programlisting>
|
||
|
||
<para>This command may be typed at the &man.ppp.8; command
|
||
prompt or it may be entered in the
|
||
<filename>/etc/ppp/ppp.conf</filename> configuration file
|
||
(the start of the <literal>default</literal> section is
|
||
the best place to put it). Make sure that
|
||
<filename>/etc/syslog.conf</filename> (see
|
||
&man.syslog.conf.5;) contains the lines</para>
|
||
|
||
<programlisting>!ppp
|
||
*.* /var/log/ppp.log</programlisting>
|
||
|
||
<para>and that the file <filename>/var/log/ppp.log</filename>
|
||
exists. You can now find out a lot about what is going on
|
||
from the log file. Do not worry if it does not all make sense.
|
||
If you need to get help from someone, it may make sense to
|
||
them.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-hangs">
|
||
<para>Why does &man.ppp.8; hang when I run it?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>This is usually because your hostname will not resolve.
|
||
The best way to fix this is to make sure that
|
||
<filename>/etc/hosts</filename> is consulted by your
|
||
resolver first by editing <filename>/etc/host.conf</filename>
|
||
and putting the <literal>hosts</literal> line first. Then,
|
||
simply put an entry in <filename>/etc/hosts</filename> for
|
||
your local machine. If you have no local network, change your
|
||
<hostid>localhost</hostid> line:</para>
|
||
|
||
<programlisting>127.0.0.1 foo.example.com foo localhost</programlisting>
|
||
|
||
<para>Otherwise, simply add another entry for your host.
|
||
Consult the relevant manual pages for more details.</para>
|
||
|
||
<para>You should be able to successfully <command>ping -c1
|
||
`hostname`</command> when you are done.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-nodial-auto">
|
||
<para>Why will &man.ppp.8; not dial in <literal>-auto</literal>
|
||
mode?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>First, check that you have got a default route. By
|
||
running <command>netstat -rn</command> (see
|
||
&man.netstat.1;), you should see two entries like
|
||
this:</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>This is assuming that you have used the addresses from the
|
||
handbook, the manual page or from the ppp.conf.sample file.
|
||
If you do not have a default route, it may be because you are
|
||
running an old version of &man.ppp.8;
|
||
that does not understand the word <literal>HISADDR</literal>
|
||
in the ppp.conf file.</para>
|
||
|
||
<para>Another reason for the default route line being
|
||
missing is that you have mistakenly set up a default
|
||
router in your <filename>/etc/rc.conf</filename> (see
|
||
&man.rc.conf.5;) file
|
||
and you have omitted the line saying</para>
|
||
|
||
<programlisting>delete ALL</programlisting>
|
||
|
||
<para>from <filename>ppp.conf</filename>. If this is the
|
||
case, go back to the <ulink
|
||
url="&url.books.handbook;/ppp-and-slip.html#USERPPP-FINAL"> Final
|
||
system configuration</ulink> section of the
|
||
handbook.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="no-route-to-host">
|
||
<para>What does <errorname>No route to host</errorname> mean?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>This error is usually due to a missing</para>
|
||
|
||
<programlisting>MYADDR:
|
||
delete ALL
|
||
add 0 0 HISADDR</programlisting>
|
||
|
||
<para>section in your <filename>/etc/ppp/ppp.linkup</filename>
|
||
file. This is only necessary if you have a dynamic IP address
|
||
or do not know the address of your gateway. If you are using
|
||
interactive mode, you can type the following after entering
|
||
<literal>packet mode</literal> (packet mode is
|
||
indicated by the capitalized <acronym>PPP</acronym> in the
|
||
prompt):</para>
|
||
|
||
<programlisting>delete ALL
|
||
add 0 0 HISADDR</programlisting>
|
||
|
||
<para>Refer to the <ulink
|
||
url="&url.books.handbook;/ppp-and-slip.html#USERPPP-DYNAMICIP">
|
||
PPP and Dynamic IP addresses</ulink> section of the handbook
|
||
for further details.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="connection-threeminutedrop">
|
||
<para>Why does my connection drop after about 3 minutes?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The default PPP timeout is 3 minutes. This can be
|
||
adjusted with the line</para>
|
||
|
||
<programlisting>set timeout <replaceable>NNN</replaceable></programlisting>
|
||
|
||
<para>where <replaceable>NNN</replaceable> is the number of
|
||
seconds of inactivity before the connection is closed. If
|
||
<replaceable>NNN</replaceable> is zero, the connection is never
|
||
closed due to a timeout. It is possible to put this command in
|
||
the <filename>ppp.conf</filename> file, or to type it at the
|
||
prompt in interactive mode. It is also possible to adjust it on
|
||
the fly while the line is active by connecting to
|
||
<application>ppp</application>'s server socket using
|
||
&man.telnet.1; or &man.pppctl.8;.
|
||
Refer to the
|
||
&man.ppp.8; man
|
||
page for further details.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-drop-heavy-load">
|
||
<para>Why does my connection drop under heavy load?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you have Link Quality Reporting (LQR) configured,
|
||
it is possible that too many LQR packets are lost between
|
||
your machine and the peer. Ppp deduces that the line must
|
||
therefore be bad, and disconnects. Prior to FreeBSD version
|
||
2.2.5, LQR was enabled by default. It is now disabled by
|
||
default. LQR can be disabled with the line</para>
|
||
|
||
<programlisting>disable lqr</programlisting>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-drop-random">
|
||
<para>Why does my connection drop after a random amount of
|
||
time?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Sometimes, on a noisy phone line or even on a line with
|
||
call waiting enabled, your modem may hang up because it
|
||
thinks (incorrectly) that it lost carrier.</para>
|
||
|
||
<para>There is a setting on most modems for determining how
|
||
tolerant it should be to temporary losses of carrier. On a
|
||
USR &sportster; for example, this is measured by the S10
|
||
register in tenths of a second. To make your modem more
|
||
forgiving, you could add the following send-expect sequence
|
||
to your dial string:</para>
|
||
|
||
<programlisting>set dial "...... ATS10=10 OK ......"</programlisting>
|
||
|
||
<para>Refer to your modem manual for details.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-hangs-random">
|
||
<para>Why does my connection hang after a random amount of
|
||
time?</para>
|
||
</question><answer>
|
||
|
||
<para>Many people experience hung connections with no apparent
|
||
explanation. The first thing to establish is which side of
|
||
the link is hung.</para>
|
||
|
||
<para>If you are using an external modem, you can simply try
|
||
using &man.ping.8; to see if the <acronym>TD</acronym>
|
||
light is flashing when you transmit data. If it flashes
|
||
(and the <acronym>RD</acronym> light does not), the
|
||
problem is with the remote end. If <acronym>TD</acronym>
|
||
does not flash, the problem is local. With an internal
|
||
modem, you will need to use the <literal>set
|
||
server</literal> command in your
|
||
<filename>ppp.conf</filename> file. When the hang occurs,
|
||
connect to &man.ppp.8; using &man.pppctl.8;. If your
|
||
network connection suddenly revives (PPP was revived due
|
||
to the activity on the diagnostic socket) or if you cannot
|
||
connect (assuming the <literal>set socket</literal>
|
||
command succeeded at startup time), the problem is
|
||
local. If you can connect and things are still hung,
|
||
enable local async logging with <literal>set log local
|
||
async</literal> and use &man.ping.8; from another window
|
||
or terminal to make use of the link. The async logging
|
||
will show you the data being transmitted and received on
|
||
the link. If data is going out and not coming back, the
|
||
problem is remote.</para>
|
||
|
||
<para>Having established whether the problem is local or remote,
|
||
you now have two possibilities:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>If the problem is remote, read on entry <xref
|
||
linkend="ppp-remote-not-responding"/>.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>If the problem is local, read on entry <xref
|
||
linkend="ppp-hung"/>.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-remote-not-responding">
|
||
<para>The remote end is not responding. What can I do?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>There is very little you can do about this. Most ISPs
|
||
will refuse to help if you are not running a Microsoft OS.
|
||
You can <literal>enable lqr</literal> in your
|
||
<filename>ppp.conf</filename> file, allowing &man.ppp.8; to detect
|
||
the remote failure and hang up, but this detection is
|
||
relatively slow and therefore not that useful. You may want to
|
||
avoid telling your ISP that you are running user-PPP...</para>
|
||
|
||
<para>First, try disabling all local compression by adding the
|
||
following to your configuration:</para>
|
||
|
||
<programlisting>disable pred1 deflate deflate24 protocomp acfcomp shortseq vj
|
||
deny pred1 deflate deflate24 protocomp acfcomp shortseq vj</programlisting>
|
||
|
||
<para>Then reconnect to ensure that this makes no difference.
|
||
If things improve or if the problem is solved completely,
|
||
determine which setting makes the difference through trial
|
||
and error. This will provide good ammunition when you contact
|
||
your ISP (although it may make it apparent that you are not
|
||
running a Microsoft product).</para>
|
||
|
||
<para>Before contacting your ISP, enable async logging
|
||
locally and wait until the connection hangs again. This
|
||
may use up quite a bit of disk space. The last data read
|
||
from the port may be of interest. It is usually ascii
|
||
data, and may even describe the problem (<quote>Memory
|
||
fault, core dumped</quote>?).</para>
|
||
|
||
<para>If your ISP is helpful, they should be able to enable
|
||
logging on their end, then when the next link drop occurs,
|
||
they may be able to tell you why their side is having a
|
||
problem. Feel free to send the details to &a.brian;, or
|
||
even to ask your ISP to contact me directly.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-hung">
|
||
<para>&man.ppp.8; has hung. What can I do?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Your best bet here is to rebuild &man.ppp.8; by adding
|
||
<literal>CFLAGS+=-g</literal> and
|
||
<literal>STRIP=</literal> to the end of the Makefile, then
|
||
doing a <command>make clean && make &&
|
||
make install</command>. When &man.ppp.8; hangs, find the
|
||
&man.ppp.8; process id with <command>ps ajxww | fgrep
|
||
ppp</command> and run <command>gdb ppp
|
||
<replaceable>PID</replaceable></command>. From the gdb
|
||
prompt, you can then use <command>bt</command> to get a
|
||
stack trace.</para>
|
||
|
||
<para>Send the results to &a.brian;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-loginok-thennothing">
|
||
<para>Why does nothing happen after the <quote>Login OK!</quote>
|
||
message?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Prior to FreeBSD version 2.2.5, once the link was
|
||
established, &man.ppp.8; would wait for the peer to
|
||
initiate the Line Control Protocol (LCP). Many ISPs will
|
||
not initiate negotiations and expect the client to do so.
|
||
To force &man.ppp.8; to initiate the LCP, use the
|
||
following line:</para>
|
||
|
||
<programlisting>set openmode active</programlisting>
|
||
|
||
<note>
|
||
<para>It usually does no harm if both sides initiate
|
||
negotiation, so openmode is now active by default.
|
||
However, the next section explains when it
|
||
<emphasis>does</emphasis> do some harm.</para>
|
||
</note>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-same-magic">
|
||
<para>I keep seeing errors about magic being the same. What does
|
||
it mean?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Occasionally, just after connecting, you may see messages
|
||
in the log that say <quote>magic is the same</quote>.
|
||
Sometimes, these messages are harmless, and sometimes one side
|
||
or the other exits. Most PPP implementations cannot survive
|
||
this problem, and even if the link seems to come up, you will see
|
||
repeated configure requests and configure acknowledgments in
|
||
the log file until &man.ppp.8; eventually gives up and closes the
|
||
connection.</para>
|
||
|
||
<para>This normally happens on server machines with slow
|
||
disks that are spawning a getty on the port, and executing
|
||
&man.ppp.8; from a login script or program after login. I
|
||
have also heard reports of it happening consistently when
|
||
using slirp. The reason is that in the time taken between
|
||
&man.getty.8; exiting and &man.ppp.8; starting, the
|
||
client-side &man.ppp.8; starts sending Line Control
|
||
Protocol (LCP) packets. Because ECHO is still switched on
|
||
for the port on the server, the client &man.ppp.8; sees
|
||
these packets <quote>reflect</quote> back.</para>
|
||
|
||
<para>One part of the LCP negotiation is to establish a
|
||
magic number for each side of the link so that
|
||
<quote>reflections</quote> can be detected. The protocol
|
||
says that when the peer tries to negotiate the same magic
|
||
number, a NAK should be sent and a new magic number should
|
||
be chosen. During the period that the server port has
|
||
ECHO turned on, the client &man.ppp.8; sends LCP packets,
|
||
sees the same magic in the reflected packet and NAKs
|
||
it. It also sees the NAK reflect (which also means
|
||
&man.ppp.8; must change its magic). This produces a
|
||
potentially enormous number of magic number changes, all
|
||
of which are happily piling into the server's tty
|
||
buffer. As soon as &man.ppp.8; starts on the server, it is
|
||
flooded with magic number changes and almost immediately
|
||
decides it has tried enough to negotiate LCP and gives
|
||
up. Meanwhile, the client, who no longer sees the
|
||
reflections, becomes happy just in time to see a hangup
|
||
from the server.</para>
|
||
|
||
<para>This can be avoided by allowing the peer to start
|
||
negotiating with the following line in your ppp.conf
|
||
file:</para>
|
||
|
||
<programlisting>set openmode passive</programlisting>
|
||
|
||
<para>This tells &man.ppp.8; to wait for the server to initiate LCP
|
||
negotiations. Some servers however may never initiate
|
||
negotiations. If this is the case, you can do something
|
||
like:</para>
|
||
|
||
<programlisting>set openmode active 3</programlisting>
|
||
|
||
<para>This tells &man.ppp.8; to be passive for 3 seconds, and then to
|
||
start sending LCP requests. If the peer starts sending
|
||
requests during this period, &man.ppp.8; will immediately respond
|
||
rather than waiting for the full 3 second period.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-lcp-constant">
|
||
<para>LCP negotiations continue until the connection is
|
||
closed. What is wrong?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>There is currently an implementation mis-feature in
|
||
&man.ppp.8; where it does not associate
|
||
LCP, CCP & IPCP responses with their original requests. As
|
||
a result, if one PPP
|
||
implementation is more than 6 seconds slower than the other
|
||
side, the other side will send two additional LCP configuration
|
||
requests. This is fatal.</para>
|
||
|
||
<para>Consider two implementations,
|
||
<hostid>A</hostid> and
|
||
<hostid>B</hostid>. <hostid>A</hostid> starts
|
||
sending LCP requests immediately after connecting and
|
||
<hostid>B</hostid> takes 7 seconds to start. When
|
||
<hostid>B</hostid> starts, <hostid>A</hostid>
|
||
has sent 3 LCP REQs. We are assuming the line has ECHO switched
|
||
off, otherwise we would see magic number problems as described in
|
||
the previous section. <hostid>B</hostid> sends a
|
||
REQ, then an ACK to the first of
|
||
<hostid>A</hostid>'s REQs. This results in
|
||
<hostid>A</hostid> entering the <acronym>OPENED</acronym>
|
||
state and sending and ACK (the first) back to
|
||
<hostid>B</hostid>. In the meantime,
|
||
<hostid>B</hostid> sends back two more ACKs in response to
|
||
the two additional REQs sent by <hostid>A</hostid>
|
||
before <hostid>B</hostid> started up.
|
||
<hostid>B</hostid> then receives the first ACK from
|
||
<hostid>A</hostid> and enters the
|
||
<acronym>OPENED</acronym> state.
|
||
<hostid>A</hostid> receives the second ACK from
|
||
<hostid>B</hostid> and goes back to the
|
||
<acronym>REQ-SENT</acronym> state, sending another (forth) REQ
|
||
as per the RFC. It then receives the third ACK and enters the
|
||
<acronym>OPENED</acronym> state. In the meantime,
|
||
<hostid>B</hostid> receives the forth REQ from
|
||
<hostid>A</hostid>, resulting in it reverting to the
|
||
<acronym>ACK-SENT</acronym> state and sending
|
||
another (second) REQ and (forth) ACK as per the RFC.
|
||
<hostid>A</hostid> gets the REQ, goes into
|
||
<acronym>REQ-SENT</acronym> and sends another REQ. It
|
||
immediately receives the following ACK and enters
|
||
<acronym>OPENED</acronym>.</para>
|
||
|
||
<para>This goes on until one side figures out that they are
|
||
getting nowhere and gives up.</para>
|
||
|
||
<para>The best way to avoid this is to configure one side to be
|
||
<literal>passive</literal> - that is, make one side
|
||
wait for the other to start negotiating. This can be done
|
||
with the</para>
|
||
|
||
<programlisting>set openmode passive</programlisting>
|
||
|
||
<para>command. Care should be taken with this option. You
|
||
should also use the</para>
|
||
|
||
<programlisting>set stopped N</programlisting>
|
||
|
||
<para>command to limit the amount of time that
|
||
&man.ppp.8; waits for the peer to begin
|
||
negotiations. Alternatively, the</para>
|
||
|
||
<programlisting>set openmode active N</programlisting>
|
||
|
||
<para>command (where <replaceable>N</replaceable> is the
|
||
number of seconds to wait before starting negotiations) can be
|
||
used. Check the manual page for details.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-shell-test-lockup">
|
||
<para>Why does &man.ppp.8; lock up when I shell out to test
|
||
it?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>When you execute the <command>shell</command> or
|
||
<command>!</command> command, &man.ppp.8; executes a
|
||
shell (or if you have passed any arguments,
|
||
&man.ppp.8; will execute those arguments). Ppp will
|
||
wait for the command to complete before continuing. If you
|
||
attempt to use the PPP link while running the command, the link
|
||
will appear to have frozen. This is because
|
||
&man.ppp.8; is waiting for the command to
|
||
complete.</para>
|
||
|
||
<para>If you wish to execute commands like this, use the
|
||
<command>!bg</command> command instead. This will execute
|
||
the given command in the background, and &man.ppp.8; can
|
||
continue to service the link.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-nullmodem">
|
||
<para>Why does &man.ppp.8; over a null-modem cable never exit?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>There is no way for &man.ppp.8; to
|
||
automatically determine that a direct connection has been
|
||
dropped. This is due to the lines that are used in a
|
||
null-modem serial cable. When using this sort of connection,
|
||
LQR should always be enabled with the line</para>
|
||
|
||
<programlisting>enable lqr</programlisting>
|
||
|
||
<para>LQR is accepted by default if negotiated by the peer.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-auto-noreasondial">
|
||
<para>Why does &man.ppp.8; dial for no reason in -auto mode?</para>
|
||
</question><answer>
|
||
|
||
<para>If &man.ppp.8; is dialing unexpectedly, you must
|
||
determine the cause, and set up Dial filters (dfilters) to
|
||
prevent such dialing.</para>
|
||
|
||
<para>To determine the cause, use the following line:</para>
|
||
|
||
<programlisting>set log +tcp/ip</programlisting>
|
||
|
||
<para>This will log all traffic through the connection. The
|
||
next time the line comes up unexpectedly, you will see the
|
||
reason logged with a convenient timestamp next to
|
||
it.</para>
|
||
|
||
<para>You can now disable dialing under these circumstances.
|
||
Usually, this sort of problem arises due to DNS lookups.
|
||
To prevent DNS lookups from establishing a connection
|
||
(this will <emphasis>not</emphasis> prevent &man.ppp.8;
|
||
from passing the packets through an established
|
||
connection), use the following:</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>This is not always suitable, as it will effectively
|
||
break your demand-dial capabilities - most programs will
|
||
need a DNS lookup before doing any other network related
|
||
things.</para>
|
||
|
||
<para>In the DNS case, you should try to determine what is
|
||
actually trying to resolve a host name. A lot of the
|
||
time, &man.sendmail.8; is the culprit. You should make
|
||
sure that you tell sendmail not to do any DNS lookups in
|
||
its configuration file. See the section on <ulink
|
||
url="&url.books.handbook;/smtp-dialup.html">using email with a
|
||
dialup connection</ulink> in the FreeBSD Handbook for
|
||
details on how to create your own configuration file and
|
||
what should go into it. You may also want to add the
|
||
following line to your <filename>.mc</filename>
|
||
file:</para>
|
||
|
||
<programlisting>define(`confDELIVERY_MODE', `d')dnl</programlisting>
|
||
|
||
<para>This will make sendmail queue everything until the
|
||
queue is run (usually, sendmail is invoked with
|
||
<option>-bd -q30m</option>, telling it to run the queue
|
||
every 30 minutes) or until a <command>sendmail
|
||
-q</command> is done (perhaps from your ppp.linkup
|
||
file).</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ccp-errors">
|
||
<para>What do these CCP errors mean?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>I keep seeing the following errors in my log file:</para>
|
||
|
||
<programlisting>CCP: CcpSendConfigReq
|
||
CCP: Received Terminate Ack (1) state = Req-Sent (6)</programlisting>
|
||
|
||
<para>This is because &man.ppp.8; is trying to negotiate Predictor1
|
||
compression, and the peer does not want to negotiate any
|
||
compression at all. The messages are harmless, but if you
|
||
wish to remove them, you can disable Predictor1 compression
|
||
locally too:</para>
|
||
|
||
<programlisting>disable pred1</programlisting>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-connectionspeed">
|
||
<para>Why does &man.ppp.8; not log my connection speed?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>In order to log all lines of your modem
|
||
<quote>conversation</quote>, you must enable the
|
||
following:</para>
|
||
|
||
<programlisting>set log +connect</programlisting>
|
||
|
||
<para>This will make &man.ppp.8; log
|
||
everything up until the last requested <quote>expect</quote>
|
||
string.</para>
|
||
|
||
<para>If you wish to see your connect speed and are using PAP
|
||
or CHAP (and therefore do not have anything to
|
||
<quote>chat</quote> after the CONNECT in the dial script - no
|
||
<literal>set login</literal> script), you must make sure that
|
||
you instruct &man.ppp.8; to <quote>expect</quote> the whole CONNECT
|
||
line, something like this:</para>
|
||
|
||
<programlisting>set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 4 \
|
||
\"\" ATZ OK-ATZ-OK ATDT\\T TIMEOUT 60 CONNECT \\c \\n"</programlisting>
|
||
|
||
<para>Here, we get our CONNECT, send nothing, then expect a
|
||
line-feed, forcing &man.ppp.8; to read
|
||
the whole CONNECT response.</para>
|
||
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-ignores-backslash">
|
||
<para>Why does &man.ppp.8; ignore the <literal>\</literal> character
|
||
in my chat script?</para>
|
||
</question><answer>
|
||
|
||
<para>Ppp parses each line in your config files so that it can
|
||
interpret strings such as
|
||
<literal>set phone "123 456 789"</literal> correctly and
|
||
realize that the number is actually only
|
||
<emphasis>one</emphasis> argument. In order to specify a
|
||
<literal>"</literal> character, you must escape it
|
||
using a backslash (<literal>\</literal>).</para>
|
||
|
||
<para>When the chat interpreter parses each argument, it
|
||
re-interprets the argument in order to find any special
|
||
escape sequences such as <literal>\P</literal> or
|
||
<literal>\T</literal> (see the manual page). As a result of this
|
||
double-parsing, you must remember to use the correct number of
|
||
escapes.</para>
|
||
|
||
<para>If you wish to actually send a <literal>\</literal>
|
||
character to (say) your modem, you would need something
|
||
like:</para>
|
||
|
||
<programlisting>set dial "\"\" ATZ OK-ATZ-OK AT\\\\X OK"</programlisting>
|
||
|
||
<para>resulting in the following sequence:</para>
|
||
|
||
<programlisting>ATZ
|
||
OK
|
||
AT\X
|
||
OK</programlisting>
|
||
|
||
<para>or</para>
|
||
|
||
<programlisting>set phone 1234567
|
||
set dial "\"\" ATZ OK ATDT\\T"</programlisting>
|
||
|
||
<para>resulting in the following sequence:</para>
|
||
|
||
<programlisting>ATZ
|
||
OK
|
||
ATDT1234567</programlisting>
|
||
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-segfault-nocore">
|
||
<para>Why does &man.ppp.8; get a seg-fault, but I see no
|
||
<filename>ppp.core</filename> file?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Ppp (or any other program for that matter) should
|
||
never dump core. Because &man.ppp.8; runs with an
|
||
effective user id of 0, the operating system will not
|
||
write &man.ppp.8;'s core image to disk before terminating
|
||
it. If, however &man.ppp.8; is actually terminating due
|
||
to a segmentation violation or some other signal that
|
||
normally causes core to be dumped,
|
||
<emphasis>and</emphasis> you are sure you are using the
|
||
latest version (see the start of this section), then you
|
||
should do the following:</para>
|
||
|
||
<screen>&prompt.user; <userinput>tar xfz ppp-*.src.tar.gz</userinput>
|
||
&prompt.user; <userinput>cd ppp*/ppp</userinput>
|
||
&prompt.user; <userinput>echo STRIP= >>Makefile</userinput>
|
||
&prompt.user; <userinput>echo CFLAGS+=-g >>Makefile</userinput>
|
||
&prompt.user; <userinput>make clean all</userinput>
|
||
&prompt.user; <userinput>su</userinput>
|
||
&prompt.root; <userinput>make install</userinput>
|
||
&prompt.root; <userinput>chmod 555 /usr/sbin/ppp</userinput></screen>
|
||
|
||
<para>You will now have a debuggable version of &man.ppp.8;
|
||
installed. You will have to be <username>root</username>
|
||
to run &man.ppp.8; as all of its privileges have been
|
||
revoked. When you start &man.ppp.8;, take a careful note
|
||
of what your current directory was at the time.</para>
|
||
|
||
<para>Now, if and when &man.ppp.8; receives the segmentation
|
||
violation, it will dump a core file called
|
||
<filename>ppp.core</filename>. You should then do the
|
||
following:</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>All of this information should be given alongside your
|
||
question, making it possible to diagnose the problem.</para>
|
||
|
||
<para>If you are familiar with gdb, you may wish to find out some
|
||
other bits and pieces such as what actually caused the dump and
|
||
the addresses & values of the relevant variables.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-autodialprocess-noconnect">
|
||
<para>Why does the process that forces a dial in auto mode never
|
||
connect?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>This was a known problem with
|
||
&man.ppp.8; set up to negotiate a
|
||
dynamic local IP number with the peer in auto mode. It is
|
||
fixed in the latest version - search the manual page for
|
||
<literal>iface</literal>.</para>
|
||
|
||
<para>The problem was that when that initial program calls
|
||
&man.connect.2;, the IP number of the tun interface is assigned
|
||
to the socket endpoint. The kernel creates the first outgoing
|
||
packet and writes it to the tun device.
|
||
&man.ppp.8; then reads the packet and
|
||
establishes a connection. If, as a result of
|
||
&man.ppp.8;'s dynamic IP assignment, the
|
||
interface address is changed, the original socket endpoint will
|
||
be invalid. Any subsequent packets sent to the peer will
|
||
usually be dropped. Even if they are not, any responses will
|
||
not route back to the originating machine as the IP number is
|
||
no longer owned by that machine.</para>
|
||
|
||
<para>There are several theoretical ways to approach this
|
||
problem. It would be nicest if the peer would re-assign the
|
||
same IP number if possible <literal>:-)</literal>
|
||
The current version of &man.ppp.8; does
|
||
this, but most other implementations do not.</para>
|
||
|
||
<para>The easiest method from our side would be to never
|
||
change the tun interface IP number, but instead to change
|
||
all outgoing packets so that the source IP number is
|
||
changed from the interface IP to the negotiated IP on the
|
||
fly. This is essentially what the
|
||
<literal>iface-alias</literal> option in the latest
|
||
version of &man.ppp.8; is doing (with the help of
|
||
&man.libalias.3; and &man.ppp.8;'s <option>-nat</option>
|
||
switch) - it is maintaining all previous interface
|
||
addresses and NATing them to the last negotiated
|
||
address.</para>
|
||
|
||
<para>Another alternative (and probably the most reliable) would
|
||
be to implement a system call that changes all bound sockets
|
||
from one IP to another. &man.ppp.8; would
|
||
use this call to modify the sockets of all existing programs
|
||
when a new IP number is negotiated. The same system call could
|
||
be used by dhcp clients when they are forced to re-bind() their
|
||
sockets.</para>
|
||
|
||
<para>Yet another possibility is to allow an interface to be
|
||
brought up without an IP number. Outgoing packets would be
|
||
given an IP number of 255.255.255.255 up until the first
|
||
SIOCAIFADDR ioctl is done. This would result in fully binding
|
||
the socket. It would be up to &man.ppp.8;
|
||
to change the source IP number, but only if it is set to
|
||
255.255.255.255, and only the IP number and IP checksum would
|
||
need to change. This, however is a bit of a hack as the kernel
|
||
would be sending bad packets to an improperly configured
|
||
interface, on the assumption that some other mechanism is
|
||
capable of fixing things retrospectively.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ppp-nat-games">
|
||
<para>Why do most games not work with the -nat switch?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The reason games and the like do not work when libalias
|
||
is in use is that the machine on the outside will try to open a
|
||
connection or send (unsolicited) UDP packets to the machine on
|
||
the inside. The NAT software does not know that it should send
|
||
these packets to the interior machine.</para>
|
||
|
||
<para>To make things work, make sure that the only thing
|
||
running is the software that you are having problems with, then
|
||
either run tcpdump on the tun interface of the gateway or
|
||
enable &man.ppp.8; tcp/ip logging (<literal>set log +tcp/ip</literal>)
|
||
on the gateway.</para>
|
||
|
||
<para>When you start the offending software, you should see
|
||
packets passing through the gateway machine. When
|
||
something comes back from the outside, it will be dropped
|
||
(that is the problem). Note the port number of these
|
||
packets then shut down the offending software. Do this a
|
||
few times to see if the port numbers are consistent. If
|
||
they are, then the following line in the relevant section
|
||
of <filename>/etc/ppp/ppp.conf</filename> will make the
|
||
software functional:</para>
|
||
|
||
<programlisting>nat port <replaceable>proto</replaceable> <replaceable>internalmachine</replaceable>:<replaceable>port</replaceable> <replaceable>port</replaceable></programlisting>
|
||
|
||
<para>where <replaceable>proto</replaceable> is either
|
||
<literal>tcp</literal> or <literal>udp</literal>,
|
||
<replaceable>internalmachine</replaceable> is the machine that
|
||
you want the packets to be sent to and
|
||
<replaceable>port</replaceable> is the destination port number
|
||
of the packets.</para>
|
||
|
||
<para>You will not be able to use the software on other machines
|
||
without changing the above command, and running the software
|
||
on two internal machines at the same time is out of the question
|
||
- after all, the outside world is seeing your entire internal
|
||
network as being just a single machine.</para>
|
||
|
||
<para>If the port numbers are not consistent, there are three
|
||
more options:</para>
|
||
|
||
<orderedlist>
|
||
<listitem>
|
||
<para>Submit support in libalias. Examples of
|
||
<quote>special cases</quote> can be found in
|
||
<filename>/usr/src/lib/libalias/alias_*.c</filename>
|
||
(<filename>alias_ftp.c</filename> is a good
|
||
prototype). This usually involves reading certain
|
||
recognised outgoing packets, identifying the
|
||
instruction that tells the outside machine to initiate
|
||
a connection back to the internal machine on a
|
||
specific (random) port and setting up a
|
||
<quote>route</quote> in the alias table so that the
|
||
subsequent packets know where to go.</para>
|
||
|
||
<para>This is the most difficult solution, but it is the
|
||
best and will make the software work with multiple
|
||
machines.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Use a proxy. The application may support socks5
|
||
for example, or (as in the <quote>cvsup</quote> case)
|
||
may have a <quote>passive</quote> option that avoids
|
||
ever requesting that the peer open connections back to
|
||
the local machine.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Redirect everything to the internal machine using
|
||
<literal>nat addr</literal>. This is the
|
||
sledge-hammer approach.</para>
|
||
</listitem>
|
||
</orderedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="useful-port-numbers">
|
||
<para>Has anybody made a list of useful port numbers?</para>
|
||
</question><answer>
|
||
|
||
<para>Not yet, but this is intended to grow into such a list
|
||
(if any interest is shown). In each example,
|
||
<replaceable>internal</replaceable> should be replaced with
|
||
the IP number of the machine playing the game.</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para><application>Asheron's Call</application></para>
|
||
|
||
<para><literal>nat port udp
|
||
<replaceable>internal</replaceable>
|
||
:65000 65000</literal></para>
|
||
|
||
<para>Manually change the port number within the game to
|
||
65000. If you have got a number of machines that you wish
|
||
to play on assign a unique port number for each (i.e.
|
||
65001, 65002, etc) and add a <literal>nat port</literal>
|
||
line for each one.</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>What are FCS errors?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>FCS stands for <literal>F</literal>rame
|
||
<literal>C</literal>heck <literal>S</literal>equence.
|
||
Each PPP packet has a checksum attached to ensure that the
|
||
data being received is the data being sent. If the FCS of
|
||
an incoming packet is incorrect, the packet is dropped and
|
||
the HDLC FCS count is increased. The HDLC error values
|
||
can be displayed using the <literal>show hdlc</literal>
|
||
command.</para>
|
||
|
||
<para>If your link is bad (or if your serial driver is dropping
|
||
packets), you will see the occasional FCS error. This is not
|
||
usually worth worrying about although it does slow down the
|
||
compression protocols substantially. If you have an external
|
||
modem, make sure your cable is properly shielded from
|
||
interference - this may eradicate the problem.</para>
|
||
|
||
<para>If your link freezes as soon as you have connected and you
|
||
see a large number of FCS errors, this may be because your link
|
||
is not 8 bit clean. Make sure your modem is not using software
|
||
flow control (XON/XOFF). If your datalink
|
||
<emphasis>must</emphasis> use software flow control, use the
|
||
command <literal>set accmap 0x000a0000</literal> to tell
|
||
&man.ppp.8; to escape the <literal>^Q</literal> and
|
||
<literal>^S</literal> characters.</para>
|
||
|
||
<para>Another reason for seeing too many FCS errors may be
|
||
that the remote end has stopped talking
|
||
<acronym>PPP</acronym>. You may want to enable
|
||
<literal>async</literal> logging at this point to
|
||
determine if the incoming data is actually a login or
|
||
shell prompt. If you have a shell prompt at the remote
|
||
end, it is possible to terminate &man.ppp.8; without
|
||
dropping the line by using the <literal>close
|
||
lcp</literal> command (a following <literal>term</literal>
|
||
command will reconnect you to the shell on the remote
|
||
machine.</para>
|
||
|
||
<para>If nothing in your log file indicates why the link might
|
||
have been terminated, you should ask the remote administrator
|
||
(your ISP?) why the session was terminated.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry id="PPPoEwithNAT">
|
||
<question id="macos-win98-pppoe-freeze">
|
||
<para>Why do &macos; and &windows; 98 connections freeze when
|
||
running PPPoE on the gateway?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Thanks to Michael Wozniak
|
||
<email>mwozniak@netcom.ca</email> for figuring this out and
|
||
Dan Flemming <email>danflemming@mac.com</email> for the Mac
|
||
solution:</para>
|
||
|
||
<para>This is due to what is called a <quote>Black Hole</quote>
|
||
router. &macos; and &windows; 98 (and maybe other Microsoft OSs)
|
||
send TCP packets with a requested segment size too big to fit
|
||
into a PPPoE frame (MTU is 1500 by default for Ethernet)
|
||
<emphasis>and</emphasis> have the <quote>do not
|
||
fragment</quote> bit set (default of TCP) and the Telco router
|
||
is not sending ICMP <quote>must fragment</quote> back to the
|
||
www site you are trying to load. (Alternatively, the router is
|
||
sending the ICMP packet correctly, but the firewall at the www
|
||
site is dropping it.) When the www server is sending
|
||
you frames that do not fit into the PPPoE pipe the Telco router
|
||
drops them on the floor and your page does not load (some
|
||
pages/graphics do as they are smaller than a MSS.) This seems
|
||
to be the default of most Telco PPPoE configurations (if only
|
||
they knew how to program a router... sigh...)</para>
|
||
|
||
<para>One fix is to use regedit on your 95/98 boxes to add the
|
||
following registry entry...</para>
|
||
|
||
<programlisting>HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\0000\MaxMTU</programlisting>
|
||
|
||
<para>It should be a string with a value
|
||
<quote>1436</quote>, as some ADSL routers are reported to
|
||
be unable to deal with packets larger than this. This
|
||
registry key has been changed to
|
||
<literal>Tcpip\Parameters\Interfaces\<replaceable>ID for
|
||
adapter</replaceable>\MTU</literal> in &windows; 2000 and
|
||
becomes a DWORD.</para>
|
||
|
||
<para>Refer to the Microsoft Knowledge Base documents <ulink
|
||
url="http://support.microsoft.com/support/kb/articles/Q158/4/74.asp">Q158474
|
||
- Windows TCPIP Registry Entries</ulink> and <ulink
|
||
url="http://support.microsoft.com/support/kb/articles/Q120/6/42.asp">Q120642
|
||
- TCPIP & NBT Configuration Parameters for &windowsnt;
|
||
</ulink> for more information on changing &windows; MTU to
|
||
work with a NAT router.</para>
|
||
|
||
<para>Another regedit possibility under &windows; 2000 is to
|
||
set the
|
||
<literal>Tcpip\Parameters\Interfaces\<replaceable>ID for
|
||
adapter</replaceable>\EnablePMTUBHDetect</literal> DWORD
|
||
to 1 as mentioned in the Microsoft document 120642
|
||
mentioned above.</para>
|
||
|
||
<para>Unfortunately, &macos; does not provide an interface for
|
||
changing TCP/IP settings. However, there is commercial software
|
||
available, such as OTAdvancedTuner (OT for OpenTransport, the
|
||
&macos; TCP/IP stack) by <ulink
|
||
url="http://www.softworks.com/">Sustainable Softworks</ulink>,
|
||
that will allow users to customize TCP/IP settings. &macos; NAT
|
||
users should select <literal>ip_interface_MTU</literal> from
|
||
the drop-down menu, enter <literal>1450</literal> instead of
|
||
<literal>1500</literal> in the box, click the box next to
|
||
<literal>Save as Auto Configure</literal>, and click
|
||
<literal>Make Active</literal>.</para>
|
||
|
||
<para>The latest version of &man.ppp.8;
|
||
(2.3 or greater) has an <command>enable tcpmssfixup</command>
|
||
command that will automatically adjust the MSS to an appropriate
|
||
value. This facility is enabled by default. If you are stuck
|
||
with an older version of &man.ppp.8;, you
|
||
may want to look at the <application>tcpmssd</application>
|
||
port.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="desperation">
|
||
<para>None of this helps - I am desperate! What can I do?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If all else fails, send as much information as you can,
|
||
including your config files, how you are starting
|
||
&man.ppp.8;, the relevant parts of your
|
||
log file and the output of the <command>netstat -rn</command>
|
||
command (before and after connecting) to the &a.questions; or
|
||
the <ulink url="news:comp.unix.bsd.freebsd.misc">
|
||
comp.unix.bsd.freebsd.misc</ulink> news group, and someone
|
||
should point you in the right direction.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="serial">
|
||
<title>ÓåéñéáêÝò Åðéêïéíùíßåò</title>
|
||
|
||
<para>This section answers common questions about serial
|
||
communications with FreeBSD. PPP and SLIP are covered in the
|
||
<link linkend="networking">Networking</link> section.</para>
|
||
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="found-serial">
|
||
<para>How do I tell if FreeBSD found my serial ports?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>As the FreeBSD kernel boots, it will probe for the serial
|
||
ports in your system for which the kernel was configured.
|
||
You can either watch your system closely for the messages it
|
||
prints or run the command</para>
|
||
|
||
<screen>&prompt.user; <userinput>dmesg | grep sio</userinput></screen>
|
||
|
||
<para>after your system is up and running.</para>
|
||
|
||
<para>Here is some example output from the above command:</para>
|
||
|
||
<programlisting>sio0 at 0x3f8-0x3ff irq 4 on isa
|
||
sio0: type 16550A
|
||
sio1 at 0x2f8-0x2ff irq 3 on isa
|
||
sio1: type 16550A</programlisting>
|
||
|
||
<para>This shows two serial ports. The first is on irq 4, is
|
||
using port address <literal>0x3f8</literal>, and has a
|
||
16550A-type UART chip. The second uses the same kind of chip
|
||
but is on irq 3 and is at port address <literal>0x2f8</literal>.
|
||
Internal modem cards are treated just like serial ports---except
|
||
that they always have a modem <quote>attached</quote> to the
|
||
port.</para>
|
||
|
||
<para>The <filename>GENERIC</filename> kernel includes support
|
||
for two serial ports using the same irq and port address
|
||
settings in the above example. If these settings are not
|
||
right for your system, or if you have added modem cards or have
|
||
more serial ports than your kernel is configured for, just
|
||
reconfigure your kernel. See section
|
||
<link linkend="make-kernel">about building a kernel</link> for
|
||
more details.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="found-modem">
|
||
<para>How do I tell if FreeBSD found my modem cards?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Refer to the answer to the previous question.</para>
|
||
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="access-serial-ports">
|
||
<para>How do I access the serial ports on FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The third serial port, <devicename>sio2</devicename>
|
||
(see &man.sio.4;, known as <devicename>COM3</devicename> in DOS), is on
|
||
<devicename>/dev/cuaa2</devicename> for dial-out devices,
|
||
and on <devicename>/dev/ttyd2</devicename> for dial-in
|
||
devices. What is the difference between these two classes
|
||
of devices?</para>
|
||
|
||
<para>You use
|
||
<devicename>ttyd<replaceable>X</replaceable></devicename>
|
||
for dial-ins. When opening
|
||
<devicename>/dev/ttyd<replaceable>X</replaceable></devicename>
|
||
in blocking mode, a process will wait for the
|
||
corresponding
|
||
<devicename>cuaa<replaceable>X</replaceable></devicename>
|
||
device to become inactive, and then wait for the carrier
|
||
detect line to go active. When you open the
|
||
<devicename>cuaa<replaceable>X</replaceable></devicename>
|
||
device, it makes sure the serial port is not already in
|
||
use by the
|
||
<devicename>ttyd<replaceable>X</replaceable></devicename>
|
||
device. If the port is available, it <quote>steals</quote>
|
||
it from the
|
||
<devicename>ttyd<replaceable>X</replaceable></devicename>
|
||
device. Also, the
|
||
<devicename>cuaa<replaceable>X</replaceable></devicename>
|
||
device does not care about carrier detect. With this
|
||
scheme and an auto-answer modem, you can have remote users
|
||
log in and you can still dial out with the same modem and
|
||
the system will take care of all the conflicts.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="enable-multiport-serial">
|
||
<para>How do I enable support for a multiport serial
|
||
card?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Again, the section on kernel configuration provides
|
||
information about configuring your kernel. For a multiport
|
||
serial card, place an &man.sio.4; line for each serial
|
||
port on the card in the kernel configuration file. But
|
||
place the irq and vector specifiers on only one of the
|
||
entries. All of the ports on the card should share one
|
||
irq. For consistency, use the last serial port to specify
|
||
the irq. Also, specify the
|
||
<literal>COM_MULTIPORT</literal> option.</para>
|
||
|
||
<para>The following example is for an AST 4-port serial card on
|
||
irq 7:</para>
|
||
|
||
<programlisting>options "COM_MULTIPORT"
|
||
device sio4 at isa? port 0x2a0 tty flags 0x781
|
||
device sio5 at isa? port 0x2a8 tty flags 0x781
|
||
device sio6 at isa? port 0x2b0 tty flags 0x781
|
||
device sio7 at isa? port 0x2b8 tty flags 0x781 irq 7 vector siointr</programlisting>
|
||
|
||
<para>The flags indicate that the master port has minor number 7
|
||
(<literal>0x700</literal>), diagnostics enabled during probe
|
||
(<literal>0x080</literal>), and all the ports share an irq
|
||
(<literal>0x001</literal>).</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="multiport-serial-share-irq">
|
||
<para>Can FreeBSD handle multiport serial cards sharing
|
||
irqs?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Not yet. You will have to use a different irq for each
|
||
card.</para>
|
||
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="default-serial-params">
|
||
<para>Can I set the default serial parameters for a
|
||
port?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The
|
||
<devicename>ttyd<replaceable>X</replaceable></devicename>
|
||
(or
|
||
<devicename>cuaa<replaceable>X</replaceable></devicename>)
|
||
device is the regular device you will want to open for
|
||
your applications. When a process opens the device, it
|
||
will have a default set of terminal I/O settings. You can
|
||
see these settings with the command</para>
|
||
|
||
<screen>&prompt.root; <userinput>stty -a -f /dev/ttyd1</userinput></screen>
|
||
|
||
<para>When you change the settings to this device, the settings
|
||
are in effect until the device is closed. When it is reopened,
|
||
it goes back to the default set. To make changes to the
|
||
default set, you can open and adjust the settings of the
|
||
<quote>initial state</quote> device. For example, to turn on
|
||
<acronym>CLOCAL</acronym> mode, 8 bits, and
|
||
<acronym>XON/XOFF</acronym> flow control by default for
|
||
ttyd5, do:</para>
|
||
|
||
<screen>&prompt.root; <userinput>stty -f /dev/ttyid5 clocal cs8 ixon ixoff</userinput></screen>
|
||
|
||
<para>A good place to do this is in
|
||
<filename>/etc/rc.serial</filename>. Now, an application
|
||
will have these settings by default when it opens
|
||
<filename>ttyd5</filename>. It can still change these
|
||
settings to its liking, though.</para>
|
||
|
||
<para>You can also prevent certain settings from being
|
||
changed by an application by making adjustments to the
|
||
<quote>lock state</quote> device. For example, to lock
|
||
the speed of <devicename>ttyd5</devicename> to 57600 bps,
|
||
do</para>
|
||
|
||
<screen>&prompt.root; <userinput>stty -f /dev/ttyld5 57600</userinput></screen>
|
||
|
||
<para>Now, an application that opens
|
||
<devicename>ttyd5</devicename> and tries to change the
|
||
speed of the port will be stuck with 57600 bps.</para>
|
||
|
||
<para>Naturally, you should make the initial state and lock
|
||
state devices writable only by
|
||
<username>root</username>. The &man.MAKEDEV.8; script does
|
||
<emphasis>NOT</emphasis> do this when it creates the
|
||
device entries.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="enable-dialup">
|
||
<para>How can I enable dialup logins on my modem?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>So you want to become an Internet service provider, eh?
|
||
First, you will need one or more modems that can auto-answer.
|
||
Your modem will need to assert carrier-detect when it detects a
|
||
carrier and not assert it all the time. It will need to hang up
|
||
the phone and reset itself when the data terminal ready
|
||
(<acronym>DTR</acronym>) line goes from on to off. It should
|
||
probably use <filename>RTS/CTS</filename> flow control or no
|
||
local flow control at all. Finally, it must use a constant
|
||
speed between the computer and itself, but (to be nice to your
|
||
callers) it should negotiate a speed between itself and the
|
||
remote modem.</para>
|
||
|
||
<para>For many Hayes command-set--compatible modems, this
|
||
command will make these settings and store them in
|
||
nonvolatile memory:</para>
|
||
|
||
<programlisting>AT &C1 &D3 &K3 &Q6 S0=1 &W</programlisting>
|
||
|
||
<para>See the section <link linkend="direct-at">on sending AT
|
||
commands</link> below for information on how to make these
|
||
settings without resorting to an &ms-dos; terminal program.</para>
|
||
|
||
<para>Next, make an entry in <filename>/etc/ttys</filename>
|
||
(see &man.ttys.5;) for the modem. This file lists all the
|
||
ports on which the operating system will await logins.
|
||
Add a line that looks something like this:</para>
|
||
|
||
<programlisting>ttyd1 "/usr/libexec/getty std.57600" dialup on insecure</programlisting>
|
||
|
||
<para>This line indicates that the second serial port
|
||
(<devicename>/dev/ttyd1</devicename>) has a modem
|
||
connected running at 57600 bps and no parity
|
||
(<literal>std.57600</literal>, which comes from the file
|
||
<filename>/etc/gettytab</filename>, see &man.gettytab.5;).
|
||
The terminal type for this port is
|
||
<literal>dialup</literal>. The port is
|
||
<literal>on</literal> and is
|
||
<literal>insecure</literal>---meaning
|
||
<username>root</username> logins on the port are not
|
||
allowed. For dialin ports like this one, use the
|
||
<devicename>ttyd<replaceable>X</replaceable></devicename>
|
||
entry.</para>
|
||
|
||
<para>It is common practice to use <literal>dialup</literal>
|
||
as the terminal type. Many users set up in their
|
||
<filename>.profile</filename> or
|
||
<filename>.login</filename> files a prompt for the actual
|
||
terminal type if the starting type is dialup. The example
|
||
shows the port as insecure. To become
|
||
<username>root</username> on this port, you have to login
|
||
as a regular user, then &man.su.1; to become
|
||
<username>root</username>. If you use
|
||
<literal>secure</literal> then <username>root</username>
|
||
can login in directly.</para>
|
||
|
||
<para>After making modifications to
|
||
<filename>/etc/ttys</filename>, you need to send a hangup
|
||
or <acronym>HUP</acronym> signal to the &man.init.8;
|
||
process:</para>
|
||
|
||
<screen>&prompt.root; <userinput>kill -HUP 1</userinput></screen>
|
||
|
||
<para>This forces the &man.init.8; process to reread
|
||
<filename>/etc/ttys</filename>. The init process will
|
||
then start getty processes on all <literal>on</literal>
|
||
ports. You can find out if logins are available for your
|
||
port by typing</para>
|
||
|
||
<screen>&prompt.user; <userinput>ps -ax | grep '[t]tyd1'</userinput></screen>
|
||
|
||
<para>You should see something like:</para>
|
||
|
||
<programlisting>747 ?? I 0:00.04 /usr/libexec/getty std.57600 ttyd1</programlisting>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="dumb-terminal">
|
||
<para>How can I connect a dumb terminal to my FreeBSD
|
||
box?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you are using another computer as a terminal into your
|
||
FreeBSD system, get a null-modem cable to go between the two
|
||
serial ports. If you are using an actual terminal, see its
|
||
accompanying instructions.</para>
|
||
|
||
<para>Then, modify <filename>/etc/ttys</filename> (see
|
||
&man.ttys.5;), like above. For example, if you are
|
||
hooking up a WYSE-50 terminal to the fifth serial port,
|
||
use an entry like this:</para>
|
||
|
||
<programlisting>ttyd4 "/usr/libexec/getty std.38400" wyse50 on secure</programlisting>
|
||
|
||
<para>This example shows that the port on
|
||
<devicename>/dev/ttyd4</devicename> has a wyse50 terminal
|
||
connected at 38400 bps with no parity
|
||
(<literal>std.38400</literal> from
|
||
<filename>/etc/gettytab</filename>, see &man.gettytab.5;)
|
||
and <username>root</username> logins are allowed
|
||
(<literal>secure</literal>).</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="cannot-tip">
|
||
<para>Why can I not run <command>tip</command> or
|
||
<command>cu</command>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>On your system, the programs &man.tip.1; and
|
||
&man.cu.1; are probably executable only by
|
||
<username>uucp</username> and group
|
||
<groupname>dialer</groupname>. You can use the group
|
||
<groupname>dialer</groupname> to control who has access to
|
||
your modem or remote systems. Just add yourself to group
|
||
dialer.</para>
|
||
|
||
<para>Alternatively, you can let everyone on your system run
|
||
&man.tip.1; and &man.cu.1; by typing:</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>My stock Hayes modem is not supported---what
|
||
can I do?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Actually, the manual page for &man.tip.1; is out of
|
||
date. There is a generic Hayes dialer already built in.
|
||
Just use <literal>at=hayes</literal> in your
|
||
<filename>/etc/remote</filename> (see &man.remote.5;)
|
||
file.</para>
|
||
|
||
<para>The Hayes driver is not smart enough to recognize some of
|
||
the advanced features of newer modems---messages like
|
||
<literal>BUSY</literal>, <literal>NO DIALTONE</literal>, or
|
||
<literal>CONNECT 115200</literal> will just confuse it. You
|
||
should turn those messages off when you use &man.tip.1;
|
||
(using <literal>ATX0&W</literal>).</para>
|
||
|
||
<para>Also, the dial timeout for &man.tip.1; is 60
|
||
seconds. Your modem should use something less, or else tip
|
||
will think there is a communication problem. Try
|
||
<literal>ATS7=45&W</literal>.</para>
|
||
|
||
<para>Actually, as shipped &man.tip.1; does not yet
|
||
support it fully. The solution is to edit the file
|
||
<filename>tipconf.h</filename> in the directory
|
||
<filename>/usr/src/usr.bin/tip/tip</filename>. Obviously you
|
||
need the source distribution to do this.</para>
|
||
|
||
<para>Edit the line <literal>#define HAYES 0</literal>
|
||
to <literal>#define HAYES 1</literal>. Then
|
||
<command>make</command> and <command>make install</command>.
|
||
Everything works nicely after that.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="direct-at">
|
||
<para>How am I expected to enter these AT commands?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Make what is called a <quote>direct</quote> entry in
|
||
your <filename>/etc/remote</filename> file (see
|
||
&man.remote.5;). For example, if your modem is hooked up
|
||
to the first serial port,
|
||
<devicename>/dev/cuaa0</devicename>, then put in the
|
||
following line:</para>
|
||
|
||
<programlisting>cuaa0:dv=/dev/cuaa0:br#19200:pa=none</programlisting>
|
||
|
||
<para>Use the highest bps rate your modem supports in the br
|
||
capability. Then, type <command>tip
|
||
<devicename>cuaa0</devicename></command> (see &man.tip.1;)
|
||
and you will be connected to your modem.</para>
|
||
|
||
<para>If there is no <devicename>/dev/cuaa0</devicename> on your
|
||
system, do this:</para>
|
||
|
||
<screen>&prompt.root; <userinput>cd /dev</userinput>
|
||
&prompt.root; <userinput>sh MAKEDEV cuaa0</userinput></screen>
|
||
|
||
<para>Or use cu as <username>root</username> with the
|
||
following command:</para>
|
||
|
||
<screen>&prompt.root; <userinput>cu -l<replaceable>line</replaceable> -s<replaceable>speed</replaceable></userinput></screen>
|
||
|
||
<para>with <replaceable>line</replaceable> being the serial
|
||
port (e.g. <devicename>/dev/cuaa0</devicename>) and
|
||
<replaceable>speed</replaceable> being the speed
|
||
(e.g.<literal>57600</literal>). When you are done
|
||
entering the AT commands hit <literal>~.</literal> to
|
||
exit.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="gt-failure">
|
||
<para>Why does the <literal><@></literal> sign for the pn
|
||
capability not work?</para></question><answer>
|
||
|
||
<para>The <literal><@></literal> sign in the phone
|
||
number capability tells tip to look in
|
||
<filename>/etc/phones</filename> for a phone number. But
|
||
the <literal><@></literal> sign is also a special
|
||
character in capability files like
|
||
<filename>/etc/remote</filename>. Escape it with a
|
||
backslash:</para>
|
||
|
||
<programlisting>pn=\@</programlisting>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="dial-command-line">
|
||
<para>How can I dial a phone number on the command
|
||
line?</para>
|
||
</question><answer>
|
||
|
||
<para>Put what is called a <quote>generic</quote> entry in
|
||
your <filename>/etc/remote</filename> file (see
|
||
&man.remote.5;). For example:</para>
|
||
|
||
<programlisting>tip115200|Dial any phone number at 115200 bps:\
|
||
:dv=/dev/cuaa0:br#115200:at=hayes:pa=none:du:
|
||
tip57600|Dial any phone number at 57600 bps:\
|
||
:dv=/dev/cuaa0:br#57600:at=hayes:pa=none:du:</programlisting>
|
||
|
||
<para>Then you can do something like <command>tip -115200
|
||
5551234</command>. If you prefer &man.cu.1; over
|
||
&man.tip.1;, use a generic cu entry:</para>
|
||
|
||
<programlisting>cu115200|Use cu to dial any number at 115200bps:\
|
||
:dv=/dev/cuaa1:br#57600:at=hayes:pa=none:du:</programlisting>
|
||
|
||
<para>and type <command>cu 5551234 -s 115200</command>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="set-bps">
|
||
<para>Do I have to type in the bps rate every time I do
|
||
that?</para>
|
||
</question><answer>
|
||
|
||
<para>Put in an entry for <literal>tip1200</literal> or
|
||
<literal>cu1200</literal>, but go ahead and use whatever
|
||
bps rate is appropriate with the br capability.
|
||
&man.tip.1; thinks a good default is 1200 bps which is why
|
||
it looks for a <literal>tip1200</literal> entry. You do
|
||
not have to use 1200 bps, though.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="terminal-server">
|
||
<para>How can I more easily access a number of hosts through a
|
||
terminal server?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Rather than waiting until you are connected and typing
|
||
<literal>CONNECT <replaceable>host</replaceable></literal>
|
||
each time, use tip's <literal>cm</literal> capability. For
|
||
example, these entries in
|
||
<filename>/etc/remote</filename> (see &man.remote.5;):</para>
|
||
|
||
<programlisting>pain|pain.deep13.com|Forrester's machine:\
|
||
:cm=CONNECT pain\n:tc=deep13:
|
||
muffin|muffin.deep13.com|Frank's machine:\
|
||
:cm=CONNECT muffin\n:tc=deep13:
|
||
deep13:Gizmonics Institute terminal server:\
|
||
:dv=/dev/cuaa2:br#38400:at=hayes:du:pa=none:pn=5551234:</programlisting>
|
||
|
||
<para>will let you type <command>tip pain</command> or
|
||
<command>tip muffin</command> to connect to the hosts
|
||
<hostid>pain</hostid> or <hostid>muffin</hostid>; and
|
||
<command>tip deep13</command> to get to the terminal
|
||
server.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="tip-multiline">
|
||
<para>Can tip try more than one line for each site?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>This is often a problem where a university has several
|
||
modem lines and several thousand students trying to use
|
||
them...</para>
|
||
|
||
<para>Make an entry for your university in
|
||
<filename>/etc/remote</filename> (see &man.remote.5;) and
|
||
use <literal><\@></literal> for the
|
||
<literal>pn</literal> capability:</para>
|
||
|
||
<programlisting>big-university:\
|
||
:pn=\@:tc=dialout
|
||
dialout:\
|
||
:dv=/dev/cuaa3:br#9600:at=courier:du:pa=none:</programlisting>
|
||
|
||
<para>Then, list the phone numbers for the university in
|
||
<filename>/etc/phones</filename> (see &man.phones.5;):</para>
|
||
|
||
<programlisting>big-university 5551111
|
||
big-university 5551112
|
||
big-university 5551113
|
||
big-university 5551114</programlisting>
|
||
|
||
<para>&man.tip.1;
|
||
will try each one in the listed order, then give
|
||
up. If you want to keep retrying, run &man.tip.1;
|
||
in a while loop.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="multi-controlp">
|
||
<para>Why do I have to hit <keycombo
|
||
action="simul"><keycap>CTRL</keycap><keycap>P</keycap></keycombo>
|
||
twice to send <keycombo
|
||
action="simul"><keycap>CTRL</keycap><keycap>P</keycap></keycombo>
|
||
once?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para><keycombo
|
||
action="simul"><keycap>CTRL</keycap><keycap>P</keycap></keycombo>
|
||
is the default <quote>force</quote> character, used to
|
||
tell &man.tip.1; that the next character is literal data.
|
||
You can set the force character to any other character
|
||
with the <literal>~s</literal> escape, which means
|
||
<quote>set a variable</quote>.</para>
|
||
|
||
<para>Type <literal>~sforce=<replaceable>single-char
|
||
</replaceable></literal> followed by a newline.
|
||
<replaceable>single-char</replaceable> is any single
|
||
character. If you leave out
|
||
<replaceable>single-char</replaceable>, then the force
|
||
character is the nul character, which you can get by
|
||
typing <keycombo
|
||
action="simul"><keycap>CTRL</keycap><keycap>2</keycap></keycombo>
|
||
or <keycombo
|
||
action="simul"><keycap>CTRL</keycap><keycap>SPACE</keycap></keycombo>.
|
||
A pretty good value for
|
||
<replaceable>single-char</replaceable> is <keycombo
|
||
action="simul"><keycap>SHIFT</keycap><keycap>CTRL</keycap><keycap>6</keycap></keycombo>,
|
||
which I have seen only used on some terminal
|
||
servers.</para>
|
||
|
||
<para>You can have the force character be whatever you want
|
||
by specifying the following in your
|
||
<filename>$HOME/.tiprc</filename> file:</para>
|
||
|
||
<programlisting>force=<replaceable>single-char</replaceable></programlisting>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="uppercase">
|
||
<para>Why is everything I type suddenly in UPPER CASE?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You must have pressed <keycombo
|
||
action="simul"><keycap>CTRL</keycap><keycap>A</keycap></keycombo>,
|
||
&man.tip.1; <quote>raise character</quote>, specially
|
||
designed for people with broken <keycap>Caps Lock</keycap>
|
||
keys. Use <literal>~s</literal> as above and set the
|
||
variable <quote>raisechar</quote> to something reasonable.
|
||
In fact, you can set it to the same as the force
|
||
character, if you never expect to use either of these
|
||
features.</para>
|
||
|
||
<para>Here is a sample .tiprc file perfect for Emacs users
|
||
who need to type <keycombo
|
||
action="simul"><keycap>CTRL</keycap><keycap>2</keycap></keycombo>
|
||
and <keycombo
|
||
action="simul"><keycap>CTRL</keycap><keycap>A</keycap></keycombo>
|
||
a lot:</para>
|
||
|
||
<programlisting>force=^^
|
||
raisechar=^^</programlisting>
|
||
|
||
<para>The ^^ is <keycombo action="simul"><keycap>SHIFT</keycap><keycap>CTRL</keycap><keycap>6</keycap></keycombo>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="tip-filetransfer">
|
||
<para>How can I do file transfers with
|
||
<command>tip</command>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>If you are talking to another &unix; system, you can
|
||
send and receive files with <literal>~p</literal> (put)
|
||
and <literal>~t</literal> (take). These commands run
|
||
&man.cat.1; and &man.echo.1; on the remote system to
|
||
accept and send files. The syntax is:</para>
|
||
|
||
<programlisting>~p <local-file> [<remote-file>]
|
||
~t <remote-file> [<local-file>]</programlisting>
|
||
|
||
<para>There is no error checking, so you probably should use
|
||
another protocol, like zmodem.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="zmodem-tip">
|
||
<para>How can I run zmodem with
|
||
<application>tip</application>?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>First, install one of the zmodem programs from the
|
||
ports collection (such as one of the two from the comms
|
||
category, <application>lrzsz</application> or
|
||
<application>rzsz</application>.</para>
|
||
|
||
<para>To receive files, start the sending program on the
|
||
remote end. Then, press enter and type <literal>~C
|
||
rz</literal> (or <literal>~C lrz</literal> if you
|
||
installed <application>lrzsz</application>) to begin
|
||
receiving them locally.</para>
|
||
|
||
<para>To send files, start the receiving program on the
|
||
remote end. Then, press enter and type <literal>~C sz
|
||
<replaceable>files</replaceable></literal> (or <literal>~C
|
||
lsz <replaceable>files</replaceable></literal>) to send
|
||
them to the remote system.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="misc">
|
||
<title>ÄéÜöïñåò ÅñùôÞóåéò</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="more-swap">
|
||
<para>FreeBSD uses far more swap space than &linux;. Why?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>FreeBSD only appears to use more swap than &linux;. In
|
||
actual fact, it does not. The main difference between FreeBSD
|
||
and &linux; in this regard is that FreeBSD will proactively move
|
||
entirely idle, unused pages of main memory into swap in order
|
||
to make more main memory available for active use. &linux; tends
|
||
to only move pages to swap as a last resort. The perceived
|
||
heavier use of swap is balanced by the more efficient use of
|
||
main memory.</para>
|
||
|
||
<para>Note that while FreeBSD is proactive in this regard, it
|
||
does not arbitrarily decide to swap pages when the system is
|
||
truly idle. Thus you will not find your system all paged
|
||
out when you get up in the morning after leaving it idle
|
||
overnight.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="top-freemem">
|
||
<para>Why does <command>top</command> show very little free
|
||
memory even when I have very few programs running?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The simple answer is that free memory is wasted
|
||
memory. Any memory that your programs do not actively
|
||
allocate is used within the FreeBSD kernel as disk
|
||
cache. The values shown by &man.top.1; labeled as
|
||
<literal>Inact</literal>, <literal>Cache</literal>, and
|
||
<literal>Buf</literal> are all cached data at different
|
||
aging levels. This cached data means the system does
|
||
not have to access a slow disk again for data it has
|
||
accessed recently, thus increasing overall performance.
|
||
In general, a low value shown for <literal>Free</literal>
|
||
memory in &man.top.1; is good, provided it is not
|
||
<emphasis>very</emphasis> low.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="chmod-symlinks">
|
||
<para>Why will <command>chmod</command> not change the
|
||
permissions on symlinks?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Symlinks do not have permissions, and by default,
|
||
&man.chmod.1; will not follow symlinks to change the
|
||
permissions on the target file. So if you have a file,
|
||
<filename>foo</filename>, and a symlink to that file,
|
||
<filename>bar</filename>, then this command will always
|
||
succeed.</para>
|
||
|
||
<screen>&prompt.user; <userinput>chmod g-w bar</userinput></screen>
|
||
|
||
<para>However, the permissions on <filename>foo</filename> will
|
||
not have changed.</para>
|
||
|
||
<para>You have to use either <option>-H</option> or
|
||
<option>-L</option> together with the <option>-R</option>
|
||
option to make this work. See the &man.chmod.1; and
|
||
&man.symlink.7; manual pages for more info.</para>
|
||
|
||
<warning>
|
||
<para>The <option>-R</option> option does a
|
||
<emphasis>RECURSIVE</emphasis> &man.chmod.1;. Be
|
||
careful about specifying directories or symlinks to
|
||
directories to &man.chmod.1;. If you want to change
|
||
the permissions of a directory referenced by a
|
||
symlink, use &man.chmod.1; without any options and
|
||
follow the symlink with a trailing slash
|
||
(<filename>/</filename>). For example, if
|
||
<filename>foo</filename> is a symlink to directory
|
||
<filename>bar</filename>, and you want to change the
|
||
permissions of <filename>foo</filename> (actually
|
||
<filename>bar</filename>), you would do something
|
||
like:</para>
|
||
|
||
<screen>&prompt.user; <userinput>chmod 555 foo/</userinput></screen>
|
||
|
||
<para>With the trailing slash, &man.chmod.1; will follow
|
||
the symlink, <filename>foo</filename>, to change the
|
||
permissions of the directory,
|
||
<filename>bar</filename>.</para>
|
||
</warning>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="dos-binaries">
|
||
<para>Can I run DOS binaries under FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes, you can use <filename
|
||
role="package">emulators/doscmd</filename>, a DOS emulation
|
||
program, available in the &os; Ports Collection.</para>
|
||
|
||
<note>
|
||
<para>The <application>doscmd</application> program used to be an
|
||
integrated part of &os;, but was removed before the release of
|
||
&os; 5.3.</para>
|
||
</note>
|
||
|
||
<para>If <application>doscmd</application> will not suffice,
|
||
the add-on utility <filename
|
||
role="package">emulators/pcemu</filename> emulates an 8088 and
|
||
enough BIOS services to run many DOS text mode
|
||
applications. It requires the X Window System.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="translation">
|
||
<para>What do I need to do to translate a FreeBSD document into
|
||
my native language?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>See the <ulink url="&url.books.fdp-primer;/translations.html">
|
||
Translation FAQ</ulink> in the FreeBSD Documentation Project
|
||
Primer.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="freebsd-mail-bounces">
|
||
<para>Why does my email to any address at FreeBSD.org bounce?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The FreeBSD.org mail system implements some of the
|
||
stricter Postfix checks on incoming mail and rejects mail that is
|
||
either misconfigured or is potential spam. Your mail
|
||
might bounce for one of the following reasons:</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>The email is being sent from a known spam
|
||
domain or IP block.</para>
|
||
|
||
<para>The FreeBSD mail servers reject email from known
|
||
spam sources. If you have service through a company
|
||
or domain who generates or relays spam, please switch
|
||
to a service provider who does not.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>The body of the email only contains HTML.</para>
|
||
|
||
<para>Mail should be sent in plain text only. Please
|
||
configure your mail user agent to send plain
|
||
text.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>The mailer at FreeBSD.org cannot resolve the IP
|
||
address of the connecting host back to a symbolic
|
||
name.</para>
|
||
|
||
<para>Working reverse DNS is a standard requirement for
|
||
accepting mail from a host. Set up reverse DNS for
|
||
your mail server's IP address. Many home services
|
||
(DSL, cable, dialup, etc.) will not give you this
|
||
option. In this case, relay your email through your
|
||
service provider's mail server.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>The hostname given in the EHLO/HELO part of the SMTP
|
||
exchange cannot be resolved to an IP address.</para>
|
||
|
||
<para>A fully qualified, resolvable host name is necessary
|
||
in this part of the SMTP dialogue before mail will be
|
||
accepted. If you do not have a host name that is registered
|
||
in the DNS, then you should use your service provider's mail
|
||
server to relay your mail.</para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para>Your message had a message ID ending with the string
|
||
<quote>localhost</quote>.</para>
|
||
|
||
<para>Some mail user agents generate bad message IDs which will
|
||
not be accepted. You will need to persuade your mail user
|
||
agent to generate a valid message ID or else configure your
|
||
mail transfer agent to rewrite them.</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="free-account">
|
||
<para>Where can I find a free FreeBSD account?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>While FreeBSD does not provide open access to any of their
|
||
servers, others do provide open access &unix; systems. The
|
||
charge varies and limited services may be available.</para>
|
||
|
||
<para><ulink url="http://www.arbornet.org/">Arbornet,
|
||
Inc</ulink>, also known as M-Net, has been providing open
|
||
access to &unix; systems since 1983. Starting on an Altos
|
||
running System III, the site switched to BSD/OS in 1991. In
|
||
June of 2000, the site switched again to FreeBSD. M-Net can be
|
||
accessed via telnet and SSH and provides basic access to the
|
||
entire FreeBSD software suite. However, network access is
|
||
limited to members and patrons who donate to the system, which
|
||
is run as a non-profit organization. M-Net also provides an
|
||
bulletin board system and interactive chat.</para>
|
||
|
||
<para><ulink url="http://www.grex.org/">Grex</ulink> provides a
|
||
site very similar to M-Net including the same bulletin board
|
||
and interactive chat software. However, the machine is a &sun;
|
||
4M and is running &sunos;.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="sup-define">
|
||
<para>What is <command>sup</command>, and how do I use
|
||
it?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para><ulink url="http://www.FreeBSD.org/cgi/ports.cgi?^sup">
|
||
SUP</ulink> stands for Software Update Protocol, and was
|
||
developed by CMU for keeping their development trees in sync.
|
||
We used it to keep remote sites in sync with our central
|
||
development sources.</para>
|
||
|
||
<para>SUP is not bandwidth friendly, and has been retired.
|
||
The current recommended method to keep your sources up to
|
||
date is <ulink url="&url.books.handbook;/synching.html#CVSUP">
|
||
CVSup</ulink></para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="daemon-name">
|
||
<para>What is the cute little red guy's name?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>He does not have one, and is just called <quote>the BSD
|
||
daemon</quote>. If you insist upon using a name, call him
|
||
<quote>beastie</quote>. Note that <quote>beastie</quote>
|
||
is pronounced <quote>BSD</quote>.</para>
|
||
|
||
<para>You can learn more about the BSD daemon on his <ulink
|
||
url="http://www.mckusick.com/beastie/index.html">home
|
||
page</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="use-beastie">
|
||
<para>Can I use the BSD daemon image?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Perhaps. The BSD daemon is copyrighted by Marshall
|
||
Kirk McKusick. You will want to check his <ulink
|
||
url="http://www.mckusick.com/beastie/mainpage/copyright.html">Statement
|
||
on the Use of the BSD Daemon Figure</ulink> for detailed
|
||
usage terms.</para>
|
||
|
||
<para>In summary, you are free to use the image in a tasteful
|
||
manner, for personal use, so long as appropriate credit is
|
||
given. If you want to use him commercially, you must
|
||
contact Kirk McKusick. More details are available on the
|
||
<ulink
|
||
url="http://www.mckusick.com/beastie/index.html">BSD
|
||
Daemon's home page</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="daemon-images">
|
||
<para>Do you have any BSD daemon images I could use?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>You will find eps and Xfig drawings under
|
||
<filename>/usr/share/examples/BSD_daemon/</filename>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="glossary">
|
||
<para>I have seen an acronym or other term on the mailing
|
||
lists and I do not understand what it means. Where should
|
||
I look?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Please see the <ulink
|
||
url="&url.books.handbook;/freebsd-glossary.html">
|
||
&os; Glossary</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="bikeshed-painting">
|
||
<para>Why should I care what color the bikeshed is?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The really, really short answer is that you should not.
|
||
The somewhat longer answer is that just because you are
|
||
capable of building a bikeshed does not mean you should stop
|
||
others from building one just because you do not like the
|
||
color they plan to paint it. This is a metaphor indicating
|
||
that you need not argue about every little feature just
|
||
because you know enough to do so. Some people have
|
||
commented that the amount of noise generated by a change is
|
||
inversely proportional to the complexity of the
|
||
change.</para>
|
||
|
||
<para>The longer and more complete answer is that after a very
|
||
long argument about whether &man.sleep.1; should take
|
||
fractional second arguments, &a.phk; posted a long
|
||
message entitled <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 color will do) on greener grass...</ulink></quote>.
|
||
The appropriate portions of that message are quoted
|
||
below.</para>
|
||
|
||
<blockquote>
|
||
<attribution>&a.phk; on freebsd-hackers, October
|
||
2, 1999</attribution>
|
||
|
||
<para>
|
||
<quote>What is it about this bike shed?</quote> Some
|
||
of you have asked me.</para>
|
||
|
||
<para>It is a long story, or rather it is an old story, but
|
||
it is quite short actually. C. Northcote Parkinson wrote
|
||
a book in the early 1960s, called <quote>Parkinson's
|
||
Law</quote>, which contains a lot of insight into the
|
||
dynamics of management.</para>
|
||
|
||
<para>[snip a bit of commentary on the book]</para>
|
||
|
||
<para>In the specific example involving the bike shed, the
|
||
other vital component is an atomic power-plant, I guess
|
||
that illustrates the age of the book.</para>
|
||
|
||
<para>Parkinson shows how you can go into the board of
|
||
directors and get approval for building a multi-million or
|
||
even billion dollar atomic power plant, but if you want to
|
||
build a bike shed you will be tangled up in endless
|
||
discussions.</para>
|
||
|
||
<para>Parkinson explains that this is because an atomic
|
||
plant is so vast, so expensive and so complicated that
|
||
people cannot grasp it, and rather than try, they fall
|
||
back on the assumption that somebody else checked all the
|
||
details before it got this far. Richard P. Feynmann
|
||
gives a couple of interesting, and very much to the point,
|
||
examples relating to Los Alamos in his books.</para>
|
||
|
||
<para>A bike shed on the other hand. Anyone can build one
|
||
of those over a weekend, and still have time to watch the
|
||
game on TV. So no matter how well prepared, no matter how
|
||
reasonable you are with your proposal, somebody will seize
|
||
the chance to show that he is doing his job, that he is
|
||
paying attention, that he is
|
||
<emphasis>here</emphasis>.</para>
|
||
|
||
<para>In Denmark we call it <quote>setting your
|
||
fingerprint</quote>. It is about personal pride and
|
||
prestige, it is about being able to point somewhere and
|
||
say <quote>There! <emphasis>I</emphasis> did that.</quote>
|
||
It is a strong trait in politicians, but present in most
|
||
people given the chance. Just think about footsteps in
|
||
wet cement.</para>
|
||
</blockquote>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="funnies">
|
||
<title>×éïýìïñ êáé FreeBSD</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="very-very-cool">
|
||
<para>How cool is FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Q. Has anyone done any temperature testing while
|
||
running FreeBSD? I know &linux; runs cooler than DOS, but have
|
||
never seen a mention of FreeBSD. It seems to run really
|
||
hot.</para>
|
||
|
||
<para>A. No, but we have done numerous taste tests on
|
||
blindfolded volunteers who have also had 250 micrograms of
|
||
LSD-25 administered beforehand. 35% of the volunteers said that
|
||
FreeBSD tasted sort of orange, whereas &linux; tasted like purple
|
||
haze. Neither group mentioned any significant variances in
|
||
temperature. We eventually had to throw the
|
||
results of this survey out entirely anyway when we found that
|
||
too many volunteers were wandering out of the room during the
|
||
tests, thus skewing the results. We think most of the volunteers
|
||
are at Apple now, working on their new <quote>scratch and
|
||
sniff</quote> GUI. It is a funny old business we are in!</para>
|
||
|
||
<para>Seriously, both FreeBSD and &linux; use the
|
||
<acronym>HLT</acronym> (halt) instruction when the system is
|
||
idle thus lowering its energy consumption and therefore the
|
||
heat it generates. Also if you have APM (advanced power
|
||
management) configured, then FreeBSD can also put the CPU into
|
||
a low power mode.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="letmeoutofhere">
|
||
<para>Who is scratching in my memory banks??</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Q. Is there anything <quote>odd</quote> that FreeBSD
|
||
does when compiling the kernel which would cause the memory to
|
||
make a scratchy sound? When compiling (and for a brief moment
|
||
after recognizing the floppy drive upon startup, as well), a
|
||
strange scratchy sound emanates from what appears to be the
|
||
memory banks.</para>
|
||
|
||
<para>A. Yes! You will see frequent references to
|
||
<quote>daemons</quote> in the BSD documentation, and what most
|
||
people do not know is that this refers to genuine, non-corporeal
|
||
entities that now possess your computer. The scratchy sound
|
||
coming from your memory is actually high-pitched whispering
|
||
exchanged among the daemons as they best decide how to deal
|
||
with various system administration tasks.</para>
|
||
|
||
<para>If the noise gets to you, a good
|
||
<command>fdisk /mbr</command> from DOS will get rid of them,
|
||
but do not be surprised if they react adversely and try to stop
|
||
you. In fact, if at any point during the exercise you hear the
|
||
satanic voice of Bill Gates coming from the built-in speaker,
|
||
take off running and do not ever look back! Freed from the
|
||
counterbalancing influence of the BSD daemons, the twin demons
|
||
of DOS and &windows; are often able to re-assert total control
|
||
over your machine to the eternal damnation of your soul.
|
||
Now that you know, given a choice you would probably prefer to get
|
||
used to the scratchy noises, no?</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="changing-lightbulbs">
|
||
<para>How many FreeBSD hackers does it take to change a
|
||
lightbulb?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>One thousand, one hundred and sixty-nine:</para>
|
||
|
||
<para>Twenty-three to complain to -CURRENT about the lights
|
||
being out;</para>
|
||
|
||
<para>Four to claim that it is a configuration problem, and
|
||
that such matters really belong on -questions;</para>
|
||
|
||
<para>Three to submit PRs about it, one of which is misfiled
|
||
under doc and consists only of <quote>it's dark</quote>;</para>
|
||
|
||
<para>One to commit an untested lightbulb which breaks
|
||
buildworld, then back it out five minutes later;</para>
|
||
|
||
<para>Eight to flame the PR originators for not including
|
||
patches in their PRs;</para>
|
||
|
||
<para>Five to complain about buildworld being broken;</para>
|
||
|
||
<para>Thirty-one to answer that it works for them, and they
|
||
must have cvsupped at a bad time;</para>
|
||
|
||
<para>One to post a patch for a new lightbulb to -hackers;</para>
|
||
|
||
<para>One to complain that he had patches for this three years
|
||
ago, but when he sent them to -CURRENT they were just ignored,
|
||
and he has had bad experiences with the PR system; besides,
|
||
the proposed new lightbulb is non-reflexive;</para>
|
||
|
||
<para>Thirty-seven to scream that lightbulbs do not belong in
|
||
the base system, that committers have no right to do things
|
||
like this without consulting the Community, and WHAT IS
|
||
-CORE DOING ABOUT IT!?</para>
|
||
|
||
<para>Two hundred to complain about the color of the bicycle
|
||
shed;</para>
|
||
|
||
<para>Three to point out that the patch breaks &man.style.9;;</para>
|
||
|
||
<para>Seventeen to complain that the proposed new lightbulb is
|
||
under GPL;</para>
|
||
|
||
<para>Five hundred and eighty-six to engage in a flame war
|
||
about the comparative advantages of the GPL, the BSD
|
||
license, the MIT license, the NPL, and the personal hygiene
|
||
of unnamed FSF founders;</para>
|
||
|
||
<para>Seven to move various portions of the thread to -chat
|
||
and -advocacy;</para>
|
||
|
||
<para>One to commit the suggested lightbulb, even though it
|
||
shines dimmer than the old one;</para>
|
||
|
||
<para>Two to back it out with a furious flame of a commit
|
||
message, arguing that FreeBSD is better off in the dark than
|
||
with a dim lightbulb;</para>
|
||
|
||
<para>Forty-six to argue vociferously about the backing out
|
||
of the dim lightbulb and demanding a statement from
|
||
-core;</para>
|
||
|
||
<para>Eleven to request a smaller lightbulb so it will fit
|
||
their Tamagotchi if we ever decide to port FreeBSD to that
|
||
platform;</para>
|
||
|
||
<para>Seventy-three to complain about the SNR on -hackers and
|
||
-chat and unsubscribe in protest;</para>
|
||
|
||
<para>Thirteen to post <quote>unsubscribe</quote>,
|
||
<quote>How do I unsubscribe?</quote>, or <quote>Please
|
||
remove me from the list</quote>, followed by the usual
|
||
footer;</para>
|
||
|
||
<para>One to commit a working lightbulb while everybody is too
|
||
busy flaming everybody else to notice;</para>
|
||
|
||
<para>Thirty-one to point out that the new lightbulb would shine
|
||
0.364% brighter if compiled with TenDRA (although it will have
|
||
to be reshaped into a cube), and that FreeBSD should therefore
|
||
switch to TenDRA instead of GCC;</para>
|
||
|
||
<para>One to complain that the new lightbulb lacks
|
||
fairings;</para>
|
||
|
||
<para>Nine (including the PR originators) to ask
|
||
<quote>what is MFC?</quote>;</para>
|
||
|
||
<para>Fifty-seven to complain about the lights being out two
|
||
weeks after the bulb has been changed.</para>
|
||
|
||
<para><emphasis>&a.nik; adds:</emphasis></para>
|
||
|
||
<para><emphasis>I was laughing quite hard at
|
||
this.</emphasis></para>
|
||
|
||
<para><emphasis>And then I thought, <quote>Hang on,
|
||
shouldn't there be '1 to document it.' in that list
|
||
somewhere?</quote></emphasis></para>
|
||
|
||
<para><emphasis>And then I was enlightened :-)</emphasis></para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="dev-null">
|
||
<para>Where does data written to <filename>/dev/null</filename>
|
||
go?</para>
|
||
</question>
|
||
<answer>
|
||
<para>It goes into a special data sink in the CPU where it
|
||
is converted to heat which is vented through the heatsink
|
||
/ fan assembly. This is why CPU cooling is increasingly
|
||
important; as people get used to faster processors, they
|
||
become careless with their data and more and more of it
|
||
ends up in <filename>/dev/null</filename>, overheating
|
||
their CPUs. If you delete <filename>/dev/null</filename>
|
||
(which effectively disables the CPU data sink) your CPU
|
||
may run cooler but your system will quickly become
|
||
constipated with all that excess data and start to behave
|
||
erratically. If you have a fast network connection you
|
||
can cool down your CPU by reading data out of
|
||
<filename>/dev/random</filename> and sending it off
|
||
somewhere; however you run the risk of overheating your
|
||
network connection and <filename>/</filename> or angering
|
||
your ISP, as most of the data will end up getting
|
||
converted to heat by their equipment, but they generally
|
||
have good cooling, so if you do not overdo it you should be
|
||
OK.</para>
|
||
|
||
<para><emphasis>Paul Robinson adds:</emphasis></para>
|
||
|
||
<para>There are other methods. As every good sysadmin knows,
|
||
it is part of standard practice to send data to the screen
|
||
of interesting variety to keep all the pixies that make up
|
||
your picture happy. Screen pixies (commonly mis-typed or
|
||
re-named as <quote>pixels</quote> are categorized by the type of hat
|
||
they wear (red, green or blue) and will hide or appear
|
||
(thereby showing the color of their hat) whenever they
|
||
receive a little piece of food. Video cards turn data into
|
||
pixie-food, and then send them to the pixies - the more
|
||
expensive the card, the better the food, so the better
|
||
behaved the pixies are. They also need constant stimulation
|
||
- this is why screen savers exist.</para>
|
||
|
||
<para>To take your suggestions further, you could just throw
|
||
the random data to console, thereby letting the pixies
|
||
consume it. This causes no heat to be produced at all,
|
||
keeps the pixies happy and gets rid of your data quite
|
||
quickly, even if it does make things look a bit messy on
|
||
your screen.</para>
|
||
|
||
<para>Incidentally, as an ex-admin of a large ISP who
|
||
experienced many problems attempting to maintain a stable
|
||
temperature in a server room, I would strongly discourage
|
||
people sending the data they do not want out to the
|
||
network. The fairies who do the packet switching and
|
||
routing get annoyed by it as well.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="advanced">
|
||
<title>Ðñï÷ùñçìÝíá ÈÝìáôá</title>
|
||
|
||
<qandaset>
|
||
<qandaentry>
|
||
<question id="learn-advanced">
|
||
<para>How can I learn more about FreeBSD's internals?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>At this time, there is only one book on FreeBSD-specific OS
|
||
internals, namely <quote>The Design and Implementation of the
|
||
FreeBSD Operating System</quote> by Marshall Kirk McKusick and
|
||
George V. Neville-Neil, ISBN 0-201-70245-2, which
|
||
focuses on version 5.X of FreeBSD.</para>
|
||
|
||
<para>Additionally, much general &unix; knowledge is directly
|
||
applicable to FreeBSD.</para>
|
||
|
||
<para>For a list of relevant books, please check the Handbook's <ulink
|
||
url="&url.books.handbook;/bibliography-osinternals.html">Operating
|
||
System Internals Bibliography</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="how-to-contribute">
|
||
<para>How can I contribute to FreeBSD?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Please see the article on <ulink
|
||
url="&url.articles.contributing;/article.html">Contributing
|
||
to FreeBSD</ulink> for specific advice on how to do this.
|
||
Assistance is more than welcome!</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="define-snap-release">
|
||
<para>What are SNAPs and RELEASEs?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>There are currently three active/semi-active branches
|
||
in the FreeBSD <ulink
|
||
url="http://www.FreeBSD.org/cgi/cvsweb.cgi"> CVS
|
||
Repository</ulink>. (Earlier branches are only changed
|
||
very rarely, which is why there are only three active
|
||
branches of development):</para>
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para><literal>RELENG_5</literal> AKA
|
||
<emphasis>5-STABLE</emphasis></para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para><literal>RELENG_6</literal> AKA
|
||
<emphasis>6-STABLE</emphasis></para>
|
||
</listitem>
|
||
|
||
<listitem>
|
||
<para><literal>HEAD</literal> AKA
|
||
<emphasis>-CURRENT</emphasis> AKA
|
||
<emphasis>7.X-CURRENT</emphasis></para>
|
||
</listitem>
|
||
|
||
</itemizedlist>
|
||
|
||
<para><literal>HEAD</literal> is not an actual branch tag,
|
||
like the other two; it is simply a symbolic constant for
|
||
<quote><emphasis>the current, non-branched development
|
||
stream</emphasis></quote> which we simply refer to as
|
||
<quote>-CURRENT</quote>.</para>
|
||
|
||
<para>Right now, <quote>-CURRENT</quote> is the 7.X development
|
||
stream; the <literal>5-STABLE</literal> branch,
|
||
<symbol>RELENG_5</symbol>, forked off from
|
||
<quote>-CURRENT</quote> in October 2004, and
|
||
the <literal>6-STABLE</literal> branch,
|
||
<symbol>RELENG_6</symbol>, forked off from
|
||
<quote>-CURRENT</quote> in November 2005.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="custrel">
|
||
<para>How do I make my own custom release?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Please see the <ulink
|
||
url="&url.articles.releng;/article.html">
|
||
Release Engineering</ulink> article.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="makeworld-clobbers">
|
||
<para>Why does <command>make world</command> clobber my existing
|
||
installed binaries?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes, this is the general idea; as its name might suggest,
|
||
<command>make world</command> rebuilds every system binary from
|
||
scratch, so you can be certain of having a clean and consistent
|
||
environment at the end (which is why it takes so long).</para>
|
||
|
||
<para>If the environment variable <literal>DESTDIR</literal>
|
||
is defined while running <command>make world</command> or
|
||
<command>make install</command>, the newly-created binaries
|
||
will be deposited in a directory tree identical to the
|
||
installed one, rooted at <literal>${DESTDIR}</literal>.
|
||
Some random combination of shared libraries modifications and
|
||
program rebuilds can cause this to fail in <command>make
|
||
world</command> however.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="cvsup-round-robin">
|
||
<para>Why isn't cvsup.FreeBSD.org a round robin DNS entry to
|
||
share the load amongst the various CVSup servers?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>While CVSup mirrors update from the master CVSup
|
||
server hourly, this update might happen at any time during
|
||
the hour. This means that some servers have newer code
|
||
than others, even though all servers have code that is
|
||
less than an hour old. If <hostid role="fqdn">cvsup.FreeBSD.org</hostid> was a round
|
||
robin DNS entry that simply redirected users to a random
|
||
CVSup server, running CVSup twice in a row could download
|
||
code older than the code already on the system.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="bus-speed-defaulted">
|
||
<para>Why does my system say <quote>(bus speed
|
||
defaulted)</quote> when it boots?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>The Adaptec 1542 SCSI host adapters allow the user to
|
||
configure their bus access speed in software. Previous versions
|
||
of the 1542 driver tried to determine the fastest usable speed
|
||
and set the adapter to that. We found that this breaks some
|
||
users' systems, so you now have to define the
|
||
<symbol>TUNE_1542</symbol> kernel configuration option in order
|
||
to have this take place. Using it on those systems where it
|
||
works may make your disks run faster, but on those systems
|
||
where it does not, your data could be corrupted.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="ctm">
|
||
<para>Can I follow -CURRENT with limited Internet access?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Yes, you can do this <emphasis>without</emphasis>
|
||
downloading the whole source tree by using the <ulink
|
||
url="&url.books.handbook;/synching.html#CTM">CTM facility</ulink>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="split-240k">
|
||
<para>How did you split the distribution into 240k files?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Newer BSD based systems have a <option>-b</option>
|
||
option to &man.split.1; that allows them to split files on arbitrary
|
||
byte boundaries.</para>
|
||
|
||
<para>Here is an example from
|
||
<filename>/usr/src/Makefile</filename>.</para>
|
||
|
||
<programlisting>bin-tarball:
|
||
(cd ${DISTDIR}; \
|
||
tar cf - . \
|
||
gzip --no-name -9 -c | \
|
||
split -b 240640 - \
|
||
${RELEASEDIR}/tarballs/bindist/bin_tgz.)</programlisting>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="submitting-kernel-extensions">
|
||
<para>I have written a kernel extension, who do I send it
|
||
to?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>Please take a look at the article on <ulink
|
||
url="&url.articles.contributing;/article.html">Contributing
|
||
to FreeBSD</ulink> to learn how to submit code.</para>
|
||
|
||
<para>And thanks for the thought!</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="pnp-initialize">
|
||
<para>How are Plug N Play ISA cards detected and
|
||
initialized?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>By: Frank Durda IV
|
||
<email>uhclem@nemesis.lonestar.org</email></para>
|
||
|
||
<para>In a nutshell, there a few I/O ports that all of the
|
||
PnP boards respond to when the host asks if anyone is out
|
||
there. So when the PnP probe routine starts, it asks if there
|
||
are any PnP boards present, and all the PnP boards respond with
|
||
their model # to a I/O read of the same port, so the probe
|
||
routine gets a wired-OR <quote>yes</quote> to that question. At
|
||
least one bit will be on in that reply. Then the probe code is
|
||
able to cause boards with board model IDs (assigned by
|
||
Microsoft/Intel) lower than X to go <quote>off-line</quote>. It
|
||
then looks to see if any boards are still responding to the
|
||
query. If the answer was <literal>0</literal>, then there are
|
||
no boards with IDs above X. Now probe asks if there are any
|
||
boards below <literal>X</literal>. If so, probe knows there are
|
||
boards with a model numbers below X. Probe then asks for boards
|
||
greater than X-(limit/4) to go off-line. If repeats the query.
|
||
By repeating this semi-binary search of IDs-in-range enough
|
||
times, the probing code will eventually identify all PnP boards
|
||
present in a given machine with a number of iterations that is
|
||
much lower than what 2^64 would take.</para>
|
||
|
||
<para>The IDs are two 32-bit fields (hence 2ˆ64) + 8 bit
|
||
checksum. The first 32 bits are a vendor identifier. They never
|
||
come out and say it, but it appears to be assumed that
|
||
different types of boards from the same vendor could have
|
||
different 32-bit vendor ids. The idea of needing 32 bits just
|
||
for unique manufacturers is a bit excessive.</para>
|
||
|
||
<para>The lower 32 bits are a serial #, Ethernet address,
|
||
something that makes this one board unique. The vendor must
|
||
never produce a second board that has the same lower 32 bits
|
||
unless the upper 32 bits are also different. So you can have
|
||
multiple boards of the same type in the machine and the full 64
|
||
bits will still be unique.</para>
|
||
|
||
<para>The 32 bit groups can never be all zero. This allows the
|
||
wired-OR to show non-zero bits during the initial binary
|
||
search.</para>
|
||
|
||
<para>Once the system has identified all the board IDs present,
|
||
it will reactivate each board, one at a time (via the same I/O
|
||
ports), and find out what resources the given board needs, what
|
||
interrupt choices are available, etc. A scan is made over all
|
||
the boards to collect this information.</para>
|
||
|
||
<para>This info is then combined with info from any ECU files
|
||
on the hard disk or wired into the MLB BIOS. The ECU and BIOS
|
||
PnP support for hardware on the MLB is usually synthetic, and
|
||
the peripherals do not really do genuine PnP. However by
|
||
examining the BIOS info plus the ECU info, the probe routines
|
||
can cause the devices that are PnP to avoid those devices the
|
||
probe code cannot relocate.</para>
|
||
|
||
<para>Then the PnP devices are visited once more and given
|
||
their I/O, DMA, IRQ and Memory-map address assignments. The
|
||
devices will then appear at those locations and remain there
|
||
until the next reboot, although there is nothing that says you
|
||
cannot move them around whenever you want.</para>
|
||
|
||
<para>There is a lot of oversimplification above, but you
|
||
should get the general idea.</para>
|
||
|
||
<para>Microsoft took over some of the primary printer status
|
||
ports to do PnP, on the logic that no boards decoded those
|
||
addresses for the opposing I/O cycles. I found a genuine IBM
|
||
printer board that did decode writes of the status port during
|
||
the early PnP proposal review period, but MS said
|
||
<quote>tough</quote>. So they do a write to the printer status
|
||
port for setting addresses, plus that use that address +
|
||
<literal>0x800</literal>, and a third I/O port for reading that
|
||
can be located anywhere between <literal>0x200</literal> and
|
||
<literal>0x3ff</literal>.</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="major-numbers">
|
||
<para>Can you assign a major number for a device driver I have
|
||
written?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
|
||
<para>&os.current; after February 2003 has a facility for
|
||
dynamically and automatically allocating major numbers for
|
||
device drivers at runtime. This mechanism is highly
|
||
preferred to the older procedure of statically allocating
|
||
device numbers. Some comments on this subject can be
|
||
found in <filename>src/sys/conf/majors</filename>.</para>
|
||
|
||
<para>If you are forced for some reason to use a static
|
||
major number, the procedure for obtaining one depends on
|
||
whether or not you plan on making the driver publicly
|
||
available. If you do, then please send us a copy of the
|
||
driver source code, plus the appropriate modifications to
|
||
<filename>files.i386</filename>, a sample configuration
|
||
file entry, and the appropriate &man.MAKEDEV.8; code to
|
||
create any special files your device uses. If you do not,
|
||
or are unable to because of licensing restrictions, then
|
||
character major number 32 and block major number 8 have
|
||
been reserved specifically for this purpose; please use
|
||
them. In any case, we would appreciate hearing about your
|
||
driver on the &a.hackers;.</para>
|
||
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="alternate-directory-layout">
|
||
<para>What about alternative layout policies for
|
||
directories?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>In answer to the question of alternative layout policies
|
||
for directories, the scheme that is currently in use is
|
||
unchanged from what I wrote in 1983. I wrote that policy for
|
||
the original fast filesystem, and never revisited it. It works
|
||
well at keeping cylinder groups from filling up. As several of
|
||
you have noted, it works poorly for find. Most filesystems are
|
||
created from archives that were created by a depth first search
|
||
(aka ftw). These directories end up being striped across the
|
||
cylinder groups thus creating a worst possible scenario for
|
||
future depth first searches. If one knew the total number of
|
||
directories to be created, the solution would be to create
|
||
(total / fs_ncg) per cylinder group before moving on.
|
||
Obviously, one would have to create some heuristic to guess at
|
||
this number. Even using a small fixed number like say 10 would
|
||
make an order of magnitude improvement. To differentiate
|
||
restores from normal operation (when the current algorithm is
|
||
probably more sensible), you could use the clustering of up to
|
||
10 if they were all done within a ten second window. Anyway, my
|
||
conclusion is that this is an area ripe for
|
||
experimentation.</para>
|
||
|
||
<para>Kirk McKusick, September 1998</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="kernel-panic-troubleshooting">
|
||
<para>How can I make the most of the data I see when my kernel
|
||
panics?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para><emphasis>[This section was extracted from a mail
|
||
written by &a.wpaul; on the freebsd-current
|
||
<link linkend="mailing">mailing list</link> by &a.des;, who
|
||
fixed a few typos and added the bracketed comments]
|
||
</emphasis></para>
|
||
|
||
<programlisting>From: Bill Paul <wpaul@skynet.ctr.columbia.edu>
|
||
Subject: Re: the fs fun never stops
|
||
To: Ben Rosengart
|
||
Date: Sun, 20 Sep 1998 15:22:50 -0400 (EDT)
|
||
Cc: current@FreeBSD.org</programlisting>
|
||
|
||
<para><emphasis>Ben Rosengart posted the following
|
||
panic message]</emphasis></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>[When] you see a message like this, it is not enough to just
|
||
reproduce it and send it in. The instruction pointer value that
|
||
I highlighted up there is important; unfortunately, it is also
|
||
configuration dependent. In other words, the value varies
|
||
depending on the exact kernel image that you are using. If
|
||
you are using a GENERIC kernel image from one of the snapshots,
|
||
then it is possible for somebody else to track down the
|
||
offending function, but if you are running a custom kernel then
|
||
only <emphasis>you</emphasis> can tell us where the fault
|
||
occurred.</para>
|
||
|
||
<para>What you should do is this:</para>
|
||
|
||
<procedure>
|
||
<step>
|
||
<para>Write down the instruction pointer value. Note that
|
||
the <literal>0x8:</literal> part at the beginning is not
|
||
significant in this case: it is the
|
||
<literal>0xf0xxxxxx</literal> part that we want.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>When the system reboots, do the following:
|
||
|
||
<screen>&prompt.user; <userinput>nm -n /kernel.that.caused.the.panic | grep f0xxxxxx</userinput></screen>
|
||
|
||
where <literal>f0xxxxxx</literal> is the instruction
|
||
pointer value. The odds are you will not get an exact
|
||
match since the symbols in the kernel symbol table are
|
||
for the entry points of functions and the instruction
|
||
pointer address will be somewhere inside a function, not
|
||
at the start. If you do not get an exact match, omit the
|
||
last digit from the instruction pointer value and try
|
||
again, i.e.:
|
||
|
||
<screen>&prompt.user; <userinput>nm -n /kernel.that.caused.the.panic | grep f0xxxxx</userinput></screen>
|
||
|
||
If that does not yield any results, chop off another
|
||
digit. Repeat until you get some sort of output. The
|
||
result will be a possible list of functions which caused
|
||
the panic. This is a less than exact mechanism for
|
||
tracking down the point of failure, but it is better than
|
||
nothing.</para>
|
||
</step>
|
||
</procedure>
|
||
|
||
<para>I see people constantly show panic messages like this
|
||
but rarely do I see someone take the time to match up the
|
||
instruction pointer with a function in the kernel symbol
|
||
table.</para>
|
||
|
||
<para>The best way to track down the cause of a panic is by
|
||
capturing a crash dump, then using &man.gdb.1; to generate
|
||
a stack trace on the crash dump.</para>
|
||
|
||
<para>In any case, the method I normally use is this:</para>
|
||
|
||
<procedure>
|
||
<step>
|
||
<para>Set up a kernel config file, optionally adding
|
||
<literal>options DDB</literal> if you think you need
|
||
the kernel debugger for something. (I use this mainly
|
||
for setting breakpoints if I suspect an infinite loop
|
||
condition of some kind.)</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>Use <command>config -g
|
||
<replaceable>KERNELCONFIG</replaceable></command> to set
|
||
up the build directory.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para><command>cd /sys/compile/<replaceable>KERNELCONFIG</replaceable>; make</command></para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>Wait for kernel to finish compiling.</para>
|
||
</step>
|
||
|
||
<step>
|
||
<para><command>make install</command></para>
|
||
</step>
|
||
|
||
<step>
|
||
<para>reboot</para>
|
||
</step>
|
||
</procedure>
|
||
|
||
<para>The &man.make.1; process will have built two kernels.
|
||
<filename>kernel</filename> and
|
||
<filename>kernel.debug</filename>.
|
||
<filename>kernel</filename> was installed as
|
||
<filename>/kernel</filename>, while
|
||
<filename>kernel.debug</filename> can be used as the
|
||
source of debugging symbols for &man.gdb.1;.</para>
|
||
|
||
<para>To make sure you capture a crash dump, you need edit
|
||
<filename>/etc/rc.conf</filename> and set
|
||
<literal>dumpdev</literal> to point to your swap
|
||
partition. This will cause the &man.rc.8; scripts to use
|
||
the &man.dumpon.8; command to enable crash dumps. You can
|
||
also run &man.dumpon.8; manually. After a panic, the
|
||
crash dump can be recovered using &man.savecore.8;; if
|
||
<literal>dumpdev</literal> is set in
|
||
<filename>/etc/rc.conf</filename>, the &man.rc.8; scripts
|
||
will run &man.savecore.8; automatically and put the crash
|
||
dump in <filename>/var/crash</filename>.</para>
|
||
|
||
<note>
|
||
<para>FreeBSD crash dumps are usually the same size as the
|
||
physical RAM size of your machine. That is, if you have
|
||
64MB of RAM, you will get a 64MB crash dump. Therefore you
|
||
must make sure there is enough space in
|
||
<filename>/var/crash</filename> to hold the dump.
|
||
Alternatively, you run &man.savecore.8;
|
||
manually and have it recover the crash dump to another
|
||
directory where you have more room. It is possible to limit
|
||
the size of the crash dump by using <literal>options
|
||
MAXMEM=(foo)</literal> to set the amount of memory the
|
||
kernel will use to something a little more sensible. For
|
||
example, if you have 128MB of RAM, you can limit the
|
||
kernel's memory usage to 16MB so that your crash dump size
|
||
will be 16MB instead of 128MB.</para>
|
||
</note>
|
||
|
||
<para>Once you have recovered the crash dump, you can get a
|
||
stack trace with &man.gdb.1; as follows:</para>
|
||
|
||
<screen>&prompt.user; <userinput>gdb -k /sys/compile/KERNELCONFIG/kernel.debug /var/crash/vmcore.0</userinput>
|
||
<prompt>(gdb)</prompt> <userinput>where</userinput></screen>
|
||
|
||
<para>Note that there may be several screens worth of
|
||
information; ideally you should use
|
||
&man.script.1; to capture all of them. Using the
|
||
unstripped kernel image with all the debug symbols should show
|
||
the exact line of kernel source code where the panic occurred.
|
||
Usually you have to read the stack trace from the bottom up in
|
||
order to trace the exact sequence of events that lead to the
|
||
crash. You can also use &man.gdb.1; to print out
|
||
the contents of various variables or structures in order to
|
||
examine the system state at the time of the crash.</para>
|
||
|
||
<para>Now, if you are really insane and have a second computer,
|
||
you can also configure &man.gdb.1; to do remote
|
||
debugging such that you can use &man.gdb.1; on
|
||
one system to debug the kernel on another system, including
|
||
setting breakpoints, single-stepping through the kernel code,
|
||
just like you can do with a normal user-mode program. I have not
|
||
played with this yet as I do not often have the chance to set up
|
||
two machines side by side for debugging purposes.</para>
|
||
|
||
<para><emphasis>[Bill adds: "I forgot to mention one thing: if
|
||
you have DDB enabled and the kernel drops into the debugger,
|
||
you can force a panic (and a crash dump) just by typing 'panic'
|
||
at the ddb prompt. It may stop in the debugger again during the
|
||
panic phase. If it does, type 'continue' and it will finish the
|
||
crash dump." -ed]</emphasis></para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="dlsym-failure">
|
||
<para>Why has dlsym() stopped working for ELF executables?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>The ELF toolchain does not, by default, make the symbols
|
||
defined in an executable visible to the dynamic linker.
|
||
Consequently <function>dlsym()</function> searches on handles
|
||
obtained from calls to <function>dlopen(NULL,
|
||
flags)</function> will fail to find such symbols.</para>
|
||
|
||
<para>If you want to search, using
|
||
<function>dlsym()</function>, for symbols present in the
|
||
main executable of a process, you need to link the
|
||
executable using the <option>-export-dynamic</option>
|
||
option to the ELF linker (&man.ld.1;).</para>
|
||
</answer>
|
||
</qandaentry>
|
||
|
||
<qandaentry>
|
||
<question id="change-kernel-address-space">
|
||
<para>How can I increase or reduce the kernel address space?</para>
|
||
</question>
|
||
|
||
<answer>
|
||
<para>By default, the kernel address space is 256 MB on
|
||
FreeBSD 3.X and 1 GB on FreeBSD 4.X. If you run a
|
||
network-intensive server (e.g. a large FTP or HTTP server),
|
||
you might find that 256 MB is not enough.</para>
|
||
|
||
<para>So how do you increase the address space? There are two
|
||
aspects to this. First, you need to tell the kernel to reserve
|
||
a larger portion of the address space for itself. Second, since
|
||
the kernel is loaded at the top of the address space, you need
|
||
to lower the load address so it does not bump its head against
|
||
the ceiling.</para>
|
||
|
||
<para>The first goal is achieved by increasing the value of
|
||
<literal>NKPDE</literal> in
|
||
<filename>src/sys/i386/include/pmap.h</filename>. Here is what
|
||
it looks like for a 1 GB address space:</para>
|
||
|
||
<programlisting>#ifndef NKPDE
|
||
#ifdef SMP
|
||
#define NKPDE 254 /* addressable number of page tables/pde's */
|
||
#else
|
||
#define NKPDE 255 /* addressable number of page tables/pde's */
|
||
#endif /* SMP */
|
||
#endif</programlisting>
|
||
|
||
<para>To find the correct value of <literal>NKPDE</literal>,
|
||
divide the desired address space size (in megabytes) by four,
|
||
then subtract one for UP and two for SMP.</para>
|
||
|
||
<para>To achieve the second goal, you need to compute the
|
||
correct load address: simply subtract the address space size
|
||
(in bytes) from 0x100100000; the result is 0xc0100000 for a 1
|
||
GB address space. Set <symbol>LOAD_ADDRESS</symbol> in
|
||
<filename>src/sys/i386/conf/Makefile.i386</filename> to that
|
||
value; then set the location counter in the beginning of the
|
||
section listing in
|
||
<filename>src/sys/i386/conf/kernel.script</filename> to the
|
||
same value, as follows:</para>
|
||
|
||
<programlisting>OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
|
||
OUTPUT_ARCH(i386)
|
||
ENTRY(btext)
|
||
SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/obj/elf/home/src/tmp/usr/i386-unknown-freebsdelf/lib);
|
||
SECTIONS
|
||
{
|
||
/* Read-only sections, merged into text segment: */
|
||
. = 0xc0100000 + SIZEOF_HEADERS;
|
||
.interp : { *(.interp) }</programlisting>
|
||
|
||
<para>Then reconfig and rebuild your kernel. You will
|
||
probably have problems with &man.ps.1; &man.top.1; and the
|
||
like; <command>make world</command> should take care of it
|
||
(or a manual rebuild of <filename>libkvm</filename>,
|
||
&man.ps.1; and &man.top.1; after copying the patched
|
||
<filename>pmap.h</filename> to
|
||
<filename>/usr/include/vm/</filename>.</para>
|
||
|
||
<para>NOTE: the size of the kernel address space must be a
|
||
multiple of four megabytes.</para>
|
||
|
||
<para>[&a.dg; adds: <emphasis>I think the kernel address space
|
||
needs to be a power of two, but I am not certain about that. The
|
||
old(er) boot code used to monkey with the high order address bits
|
||
and I think expected at least 256MB
|
||
granularity.]</emphasis></para>
|
||
</answer>
|
||
</qandaentry>
|
||
</qandaset>
|
||
</chapter>
|
||
|
||
<chapter id="acknowledgments">
|
||
<title>Åõ÷áñéóôßåò</title>
|
||
|
||
<para>This innocent little Frequently Asked Questions document has
|
||
been written, rewritten, edited, folded, spindled, mutilated,
|
||
eviscerated, contemplated, discombobulated, cogitated,
|
||
regurgitated, rebuilt, castigated, and reinvigorated over the
|
||
last decade, by a cast of hundreds if not thousands.
|
||
Repeatedly.</para>
|
||
|
||
<para>We wish to thank every one of the people responsible, and we
|
||
encourage you to to <ulink
|
||
url="&url.articles.contributing;/article.html">join them</ulink>
|
||
in making this FAQ even better.</para>
|
||
|
||
</chapter>
|
||
|
||
&bibliography;
|
||
</book>
|