- Remove the following articles and references to them. Where it is

reasonable to maintain the reference, use the archived docs.

  5-roadmap
  checkpoint
  dialup-firewall
  diskless-x
  euro
  formatting-media
  hats (content moved to htdocs/internal)
  multi-os
  storage-devices
  vinum
  zip-drive

All of these articles can be found here:
http://docs.freebsd.org/doc/9.0-RELEASE/usr/share/doc/freebsd/en_US.ISO8859-1/articles/

No objection from:	doc@, www@
This commit is contained in:
Gabor Kovesdan 2012-09-20 14:33:30 +00:00
parent b1b33d86a4
commit d8a2cdf09b
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=39585
174 changed files with 35 additions and 30671 deletions
da_DK.ISO8859-1/articles
de_DE.ISO8859-1
articles
books/faq
htdocs
el_GR.ISO8859-7
articles
books/faq
en_US.ISO8859-1
es_ES.ISO8859-1/articles
fr_FR.ISO8859-1
hu_HU.ISO8859-2
articles
books/faq
htdocs/docs

View file

@ -1,6 +1,5 @@
# $FreeBSD$
SUBDIR = euro
SUBDIR+= ipsec-must
SUBDIR+= pxe

View file

@ -1,14 +0,0 @@
# $FreeBSD$
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,368 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//DA" "../../share/sgml/entities.ent">
%entities;
]>
<article lang="da">
<articleinfo>
<title>Euro symbolet på
<systemitem class="osname">FreeBSD</systemitem></title>
<authorgroup>
<author>
<firstname>Aaron</firstname>
<surname>Kaplan</surname>
<affiliation>
<address>
<email>aaron@lo-res.org</email>
</address>
</affiliation>
</author>
</authorgroup>
<copyright>
<year>2002</year>
<year>2003</year>
<holder>The FreeBSD Documentation Project</holder>
</copyright>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Dette dokument vil forsøge at hjælpe dig med
at komme i gang med det nye <keycap>euro</keycap> symbol
på det nye keyboard du var nødt til at
købe i starten af 2002 på grund af skiftet til
den fælles valuta. Vi vil først fokusere
på de mere vigtige dele, som det at være i stand
til at vise symbolet korrekt på konsollen.
Senere sektioner vil handle om konfiguration af specifikke
programmer som for eksempel <application>X11</application>.
</para>
<para>Megen hjælpende input kom fra Oliver Fromme, Tom Rhodes
og utallige andre. Tak! uden jer ville denne artikel ikke have
været mulig!</para>
&trans.da.jespersen;
</abstract>
</articleinfo>
<sect1>
<title>Euroen i en nøddeskal</title>
<para>Hvis du allerede føler dig komfortabel med
<ulink url="../../books/handbook/l10n.html">lokalisering</ulink>
som det er beskrevet i
<systemitem class="osname">FreeBSD</systemitem> Håndbogen,
er du måske kun interesseret i de følgende fakta
som lader dig komme hurtigt i gang:</para>
<variablelist>
<varlistentry>
<term>ISO8859-15</term>
<listitem>
<para>Dette er en lettere modificering af det almindeligt
brugte ISO8859-1 karatersæt. Det inkluderer eurosymbolet.
Det bruges til <envar>LANG</envar>, <envar>LC_CTYPE</envar>
miljø variabler.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>iso15-8x16.fnt</filename></term>
<listitem>
<para>&man.vidcontrol.1; fonten til konsollen</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>/usr/share/syscons/keymaps/*.iso.kbd</filename></term>
<listitem>
<para>Passende tegnsæt afhængigt af dit sprog.
Sæt din <literal>keymap</literal> indtastning i
<filename>rc.conf</filename> til en af disse.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><envar>LC_CTYPE</envar></term>
<listitem>
<para>Bruges til at specificere den korrekte karakter type
på din lokalitet.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>XkbLayout "<replaceable>lang</replaceable>(euro)"</literal></term>
<listitem>
<para>XFree86 konfigurations mulighed.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>/usr/X11R6/lib/X11/fonts/*/fonts.alias</filename></term>
<listitem>
<para>Vær sikker på at tilpasse dine X11 fonte til
<literal>-*-..-*-iso8859-15</literal></para>
</listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1>
<title>En generel bemærkning</title>
<para>I de følgende sektioner vil vi ofte referere til
<emphasis>ISO8859-15</emphasis>. Dette er standard notationen
startende med <systemitem class="osname">FreeBSD</systemitem> 4.5.
I ældre versioner, var standard notationen enten
<emphasis>ISO_8859-15</emphasis> eller
<emphasis>DIS_8859-15</emphasis>.
</para>
<para>Hvis du bruger en ældre version af
<systemitem class="osname">FreeBSD</systemitem>, skal du være
sikker på at kigge på <filename>/usr/share/locale/</filename>
for at finde ud af hvilken navnekonvention der bruges.</para>
</sect1>
<sect1>
<title>Konsollen</title>
<sect2>
<title>Opsætning af din konsol font</title>
<para>Afhængigt af din konsols opløsning og
størrelse kan du få brug for en af de
følgende linier i <filename>rc.conf</filename>:</para>
<programlisting>font8x16="iso15-8x16.fnt" # from /usr/share/syscons/fonts/*
font8x14="iso15-8x14.fnt"
font8x8="iso15-8x8.fnt"</programlisting>
<para>Dette vil vælge ISO8859-15 også kendt som Latin-9
fonten. ISO8859-15 er en variation af ISO8859-1. Du kan se
forskellen på de to ved at kigge på Euro symbolet:
dets decimale værdi er 164. I ISO8859-1 vil du
bemærke en cirkel med fire små
streger i hjørnerne. Dette kaldes ofte "universal currency
symbol". I ISO8859-15, istedet for den lille cirkel, vil du have
Euro Symbolet. Ellers er fontene mere eller mindre
identiske.</para>
<warning>
<para>I skrivende stund virker det som om den eneste brugbare
font er <literal>iso15-8x16.fnt</literal>. De andre ser ud til
kun at vise ISO8859-1 selvom deres navne tyder på
andet.</para>
</warning>
<note>
<para>Ved at specificere denne font vil konsol programmer se
forvrængede ud. Dette er på grund af det faktum
at de antager at du bruger en anden font/karaktersæt
så som ANSI 850. Et bemærkelsesværdigt
eksempel er <application>/stand/sysinstall</application>.
Det meste af tiden burde det dog ikke være den store
bekymring.</para>
</note>
<para>Som det næste skridt burde du enten reboote dit
system for at lade ændringerne tage effekt eller (manuelt)
tage de skridt der ville være blevet taget ved systemets
start:</para>
<screen>&prompt.user; <userinput>vidcontrol -f <replaceable>iso15-8x16.fnt</replaceable></userinput></screen>
<para>For at checke om fonten er blevet valgt kan du eksekvere
det følgende korte <command><anchor id="awk-test"/>awk</command>
script:</para>
<programlisting>#!/usr/bin/awk -f
BEGIN {
for(i=160;i&lt;180;i++)
printf"%3d %c\n",i,i
}</programlisting>
<para>Resultatet skulle afsløre Euro tegnet ved position 164.</para>
</sect2>
<sect2>
<title>Opsætning af dit tastatur til Euroen</title>
<para>De fleste tegnsæt burde allerede være opsat
korrekt. f.eks.: Hvis du har et tysk tastatur og dine Umlaut
taster virker, kan du sagtens skippe denne sektion eftersom
det tegnsæt allerede har opsat hvilkensomhelst
tastekombination der er nødvendig (f.eks.: <keycombo
action="simul"><keycap>Alt Gr</keycap><keycap>e</keycap></keycombo>)
til decimal værdi 164. Hvis man løber ind i problemer,
er den bedste måde at checke på, ved at kigge på
<filename>/usr/share/syscons/keymaps/*.kbd</filename>. Formatet
af tegnsættene er beskrevet i &man.keyboard.4;.
&man.kbdcontrol.1; kan bruges til at loade et speciallavet
tegnsæt.</para>
<para>Når det korrekte tegnsæt er valgt skal det
tilføljes til <filename>/etc/rc.conf</filename> med
linien:</para>
<programlisting>keymap="<replaceable>german.iso</replaceable>" # eller et andet tegnsæt</programlisting>
<para>Som anført ovenfor er dette skridt nok allerede taget
af dig ved installationen (med
<application>sysinstall</application>). Hvis ikke, skal du
enten reboote eller loade det nye tegnsæt via
&man.kbdcontrol.1;.</para>
<para>For at verificere tegnsættet, skift til en ny konsol
og ved login prompten, <emphasis>istedet for at logge
ind</emphasis>, prøv at at taste <keycap>Euro</keycap>
tegnet. Hvis det ikke virker, kan du enten sende en bug report
via &man.send-pr.1; eller vær sikker på at du faktisk
valgte det rette tegnsæt.</para>
<note>
<para>På dette stadie vil Euro tasten ikke virke i
<application>bash</application> eller
<application>tcsh</application>.</para>
</note>
</sect2>
<sect2>
<title>Fix miljø variablerne</title>
<para>Shellsne (bash, tcsh) falder tilbage til &man.readline.3;
biblioteket som igen respekterer <envar>LC_CTYPE</envar>
miljø variablen. <envar>LC_CTYPE</envar> skal
være sat før din shell kører helt.
Helddigvis er det nok at tilføje linien:</para>
<programlisting>export LC_CTYPE=<replaceable>de_DE</replaceable>.ISO8859-15</programlisting>
<para>til din <filename>.bash_profile</filename> (bash), eller:</para>
<programlisting>setenv LC_CTYPE <replaceable>de_DE</replaceable>.ISO8859-15</programlisting>
<para>til din <filename>.login</filename> (tcsh) fil.
<replaceable>de_DE</replaceable> skal selvfølgelig
erstattes med dit sprog. Det næste du skal gøre
er at, logge ud, logge ind igen, og verificerer at din Euro
tast virker. Nu burde de fleste af konsol programmerne svare
på Euro tasten. Ekstra konfigurations skridt for
specielle programmer som <application>pine</application> er
dog måske stadigt nødvendige.</para>
<note>
<para>Et alternativ til at modificere <filename>.login</filename>
og <filename>.bash_profile</filename> er at sætte
miljø variablerne gennem &man.login.conf.5; mekanismen.
Denne indgangsvinkel har den fordel af at sætte visse
brugeres login klasser (f.eks. Franske brugere, Italienske
brugere, osv) <emphasis>på et sted</emphasis>.</para>
</note>
</sect2>
</sect1>
<sect1>
<title>Modificering af X11</title>
<para>Modificer <filename>/etc/XF86Config</filename> på den
følgende måde:</para>
<programlisting>Option "XkbLayout" "<replaceable>de</replaceable>(euro)"</programlisting>
<para>Erstat <replaceable>de</replaceable> med dit eget sprog.
Nu burde tastaturet være korrekt opsat. Som i konsol
sektionen, skal den korrekte font være valgt. For
<application>KDE</application>, gå til <application>KDE
control center</application> -&gt; Personalization -&gt; Country
&amp; Language -&gt; Charset og skift det til
<literal>ISO8859-15</literal>. Lignende skridt tages for
<application>kmail</application> og andre programmer.</para>
<para>En anden god ide er at modificere din
<filename>fonts.alias</filename> fil. Navnlig
<literal>fixed</literal> font skulle være skiftet til det
korrekte tegnsæt: Forfatterens
<filename>/usr/X11R6/lib/X11/fonts/misc/fonts.alias</filename>
ser sådan ud:</para>
<programlisting>! $Xorg: fonts.alias,v 1.3 2000/08/21 16:42:31 coskrey Exp $
fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15
variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15
(...)</programlisting>
<para>Som i konsol sektionen, skal specielle programmer stadig
have ISO8859-1 fontene konfigureret i deres respektive xrdb
databaser. Et bemærkelsesværdigt eksempel er
<application>xterm</application>. Som en generel tommefingerregel
er det nok at ændre den tilsvarende konfigurations fil i
<filename>/usr/X11R6/lib/X11/app-defaults</filename> og
tilføje den korrekte font. Lad os demonstrere dette med
<application>xterm</application>.</para>
<screen>&prompt.root; cd /usr/X11R6/lib/X11/app-defaults/
&prompt.root; vi XTerm</screen>
<para>Tilføj den følgende linie til begyndelsen
af filen:</para>
<programlisting>*font: -misc-fixed-medium-r-normal-*-*-120-*-*-c-*-iso8859-15</programlisting>
<para>Endelig, genstart X og check, at fonte kan vises ved, at
køre det ovenstående <link
linkend="awk-test">awk script</link>. Alle større
programmer bør respektere tegnsættet og font
indstillingen.</para>
</sect1>
<sect1>
<title>Åbne problemer</title>
<para>Forfatteren vil selvfølgelig gerne have feedback.
Lad mig meget gerne høre om du har et fix for et af
disse åbne problemer:</para>
<itemizedlist>
<listitem>
<para>Beskriv en alternativ måde at opsætte XFree86:
<filename role="package">x11/xkeycaps</filename></para>
</listitem>
<listitem>
<para>Indstillinger i <application>GNOME</application></para>
</listitem>
<listitem>
<para>Indstillinger i <application>XFCE</application></para>
</listitem>
<listitem>
<para>Indstillinger for <application>(X)Emacs</application></para>
</listitem>
<listitem>
<para>Beskrivelse af UTF-8</para>
</listitem>
<listitem>
<para>Beskriv <application>libiconv</application> som en
effektiv måde at konvertere mellem ISO8859-15 og
UTF-{8,16} indefra programmer</para>
</listitem>
</itemizedlist>
</sect1>
</article>

View file

@ -13,7 +13,6 @@ SUBDIR+= laptop
SUBDIR+= linux-comparison
SUBDIR+= new-users
SUBDIR+= solid-state
SUBDIR+= version-guide
# ROOT_SYMLINKS+= new-users

View file

@ -1,24 +0,0 @@
#
# The FreeBSD Documentation Project
# The FreeBSD German Documentation Project
#
# $FreeBSD$
# $FreeBSDde: de-docproj/articles/version-guide/Makefile,v 1.1 2005/08/25 20:14:51 jkois Exp $
# basiert auf: 1.3
#
# Article: FreeBSD Version Guide
DOC?= article
FORMATS?= html html-split
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,464 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//DE" "../../share/sgml/entities.ent">
%entities;
]>
<!-- The FreeBSD Documentation Project
The FreeBSD German Documentation Project
$FreeBSD$
$FreeBSDde$
basiert auf: r38989
-->
<article lang="de">
<title>Die für Sie passende FreeBSD-Version bestimmen</title>
<articleinfo>
<authorgroup>
<author>
<surname>The FreeBSD Documentation Project</surname>
</author>
</authorgroup>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
</legalnotice>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<copyright>
<year>2005</year>
<holder>The FreeBSD Documentation Project</holder>
<!-- <holder>The FreeBSD German Documentation Project</holder>-->
</copyright>
<abstract>
<para>Sie haben sich dafür entschieden, FreeBSD zu
installieren. Dieses Dokument soll Ihnen dabei
helfen, sich für eine Version zu entscheiden.</para>
<para><emphasis>Übersetzt von Johann Kois</emphasis>.</para>
</abstract>
</articleinfo>
<sect1 id="background">
<title>Hintergrundinformationen</title>
<para>Damit Sie sich für die für Sie am Besten geeignete
&os;-Version entscheiden können, müssen Sie einige
Konzepte unseres Entwicklungs- und Release Engineering
(<literal>RE</literal>)-Prozesses verstehen.</para>
<para>&os; wird von einer großen Gruppe von fast
ausschließlich freiwilligen Mitarbeitern entwickelt.
Der Quellcode des Kernels und der Systembibliotheken wird
durch ein <firstterm>Versionskontrollsystem</firstterm>
verwaltet und kann jederzeit heruntergeladen werden.
Zusätzlich werden in regelmäßigen Abständen
<literal>binäre Installationspakete</literal> erstellt.
Einige dieser Binärversionen durchlaufen einen intensiveren
Testprozess und werden danach als <firstterm>Release</firstterm>
veröffentlicht.</para>
<sect2 id="releases">
<title>Releases</title>
<para><literal>Releases</literal> werden durch eine
<firstterm>Hauptversionsnummer</firstterm> sowie eine
<firstterm>Unterversionsnummer</firstterm> gekennzeichnet.</para>
<itemizedlist>
<listitem>
<para>Das Ziel eines Haupt-Releases ist es, neue Funktionen
einzuführen. Dafür kann es auch nötig sein,
die Kompatibilität mit Vorgängerversionen
zugunsten der Weiterentwicklung von &os; aufzugeben.
Andererseits werden manchmal Funktionen aus dem System
entfernt, die nicht länger benötigt werden.</para>
</listitem>
<listitem>
<para>Eine Unterversion wird veröffentlicht, um Probleme
zu beheben sowie die Leistung und Stabilität des
Systems zu verbessern. Dabei hat aber die Erhaltung der
Kompatibilität zwischen den einzelnen Unterversionen
Priorität. Ist die Einhaltung dieser Vorgaben
gewährleistet, werden gelegentlich auch in
Unterversionen neue Funktionen eingeführt.</para>
</listitem>
</itemizedlist>
<para>Beachten Sie aber, dass eine
<quote>Release-Version</quote> lediglich den Stand des
Quellcodes zu einem bestimmten Zeitpunkt darstellt, dem ein
Name (ein sogenanntes <emphasis>Tag</emphasis>) zugewiesen
wurde. So hat das Release Engineering Team dem Release&nbsp;5.4
das Tag <literal>RELENG_5_4_0_RELEASE</literal> zugewiesen. Der
aktuelle Entwicklungsstand wird hingegen durch das Tag
<literal>HEAD</literal> gekennzeichnet.</para>
</sect2>
<sect2 id="branches">
<title>Entwicklungszweige</title>
<para>Zeitgleich mit der Veröffentlichung einer
Release-Version wird ein <firstterm>Zweig</firstterm>
(<foreignphrase>branch</foreignphrase>) erzeugt
(in unserem Beispiel <literal>RELENG_5_4</literal>).
Der Quellcode von <literal>RELENG_5_4_0_RELEASE</literal>
bleibt danach unverändert, während sich Dateien
des Zweiges <literal>RELENG_5_4</literal> sehr wohl
verändern können, wenn Änderungen wie
Behebungen von Sicherheitslücken oder anderen
Problemen von <literal>HEAD</literal> übernommen
werden.</para>
<para>Während der Lebenszeit einer Hauptversion wird
ein weiteres Tag vergeben, beispielsweise
<literal>RELENG_5</literal>. In diesen Zweig können
zusätzlich zu den eben genannten Aktualisierungen
auch weitere Neuerungen von <literal>HEAD</literal>
übernommen werden, um so den Übergang zur
nächsten Unterversion vorzubereiten.</para>
</sect2>
<sect2 id="stable-vs-current">
<title><firstterm>STABLE</firstterm> versus
<firstterm>CURRENT</firstterm></title>
<para>Während der Lebenszeit einer Hauptversion kann auch
ein <literal>STABLE</literal>-Zweig erzeugt werden. Dadurch
wird signalisiert, dass das &os;-Projekt der Ansicht ist, dass
dieser Zweig nun so stabil ist, dass er für die meisten
Anwender geeignet ist. Ein Zweig, der vor seiner Eignung
für den allgemeinen Einsatz noch weiter getestet werden
muss, wird hingegen als <literal>CURRENT</literal>
bezeichnet.</para>
<note><para>Das &os;-Projekt übernimmt keine Garantie
dafür, dass die vertriebene Software für alle
Einsatzzwecke <emphasis>stabil</emphasis> genug ist. Diese
Entscheidung kann nur der jeweilige Anwender selbst treffen.
Bedenken Sie auch, dass das FreeBSD-Projekt sich fast
ausschließlich aus Freiwilligen zusammensetzt. Daher
kann auch nicht garantiert werden, dass die Software für
Ihre Anforderungen geeignet ist.</para></note>
</sect2>
<sect2 id="ports-vs-packages">
<title><firstterm>Ports</firstterm> versus
<firstterm>Packages</firstterm></title>
<para>Neben dem Betriebssystem selbst unterstützt &os;
auch Tausende Anwendungen, die unabhängig vom Projekt
selbst von Dritten entwickelt werden. Dazu gehören
Window-Systeme, Internetbrowser, E-Mail-Programme,
Office-Programme und viele andere mehr. Das FreeBSD-Projekt
stellt dazu in der Regel nur das als
<firstterm>Ports-Sammlung</firstterm> bezeichnete Gerüst
bereit, damit diese Programme unter &os; installiert werden
können. Ein Programm, dessen Lizenz die Installation
aus dem Quellcode erlaubt, wird als <emphasis>Port</emphasis>
bezeichnet, ein Programm, das aus einer vorkompilierten
Binärdatei installiert wird, hingegen als Paket
(<emphasis>package</emphasis>).</para>
</sect2>
</sect1>
<sect1 id="past-schedules">
<title>Bisherige Release-Zeitpläne</title>
<para>Während der Entwicklung von &os;&nbsp;5.X traten
Probleme auf, deren Tragweite erst im Nachhinein
vollkommen klar wurde. Die Entwicklungsziele für
die 5.X-Reihe waren äußerst ambitioniert und sahen
unter anderem vor:</para>
<itemizedlist>
<listitem>
<para>Die Unterstützung von Mehrprozessor-Systemen
(<foreignphrase>Symmetric MultiProcessing
(SMP)</foreignphrase>).</para>
</listitem>
<listitem>
<para>Die Erhöhung der Leistungsfähigkeit durch
die Entwicklung einer neuen Strategie für das
Ressourcenmanagement innerhalb des Kernels.</para>
</listitem>
<listitem>
<para>Die zusätzliche Unterstützung von
verschiedenen Prozessor-Architekturen.</para>
</listitem>
<listitem>
<para>Die Einführung eines neuen Modells für die
Handhabung von Threads.</para>
</listitem>
<listitem>
<para>Die Entwicklung eines neuen Schedulers.</para>
</listitem>
<listitem>
<para>Die Unterstützung neuer Technologien wie
Power Management (insbesondere auf Notebooks).</para>
</listitem>
<listitem>
<para>All dem übergeordnet war die Festlegung, die
5.X-Serie erst dann für <literal>STABLE</literal>
zu erklären, wenn all diese Aufgaben erledigt
waren.</para>
</listitem>
</itemizedlist>
<para>Dies führte dazu, dass zwischen dem Entstehen
des <literal>STABLE</literal>-Zweiges von 4.X beziehungsweise
5.X mehrere Jahre vergingen. Dieser Umstand hatte mehrere
unerwünschte Auswirkungen:</para>
<itemizedlist>
<listitem>
<para>Die große Anzahl der gleichzeitig zu
implementierenden Neuerungen machte es sehr schwierig,
einen Teil davon zu isolieren und in den
<literal>STABLE</literal>-Zweig einzubringen.</para>
</listitem>
<listitem>
<para>Anwender, die bestimmte Neuerungen unbedingt
benötigten (etwa die Unterstützung neuester
Hardware), entschieden sich vielfach dafür,
beispielsweise &os;&nbsp;5.2.1 zu installieren, obwohl
es sich dabei um ein <literal>CURRENT</literal>-Release
handelte, das nur für Entwickler und nicht für
den allgemeinen Einsatz vorgesehen war.</para>
</listitem>
<listitem>
<para>Um Änderungen aus diesen Versionen wieder in den
aktuellen Entwicklungszweig einzubringen, waren die
Entwickler gezwungen, diese Eigenschaften auf &os;-Versionen
zu unterstützen, die sie nicht als primäre
Entwicklungsplattform nutzten.</para>
</listitem>
<listitem>
<para>Die zeitliche Verzögerung bis zum Erscheinen von
&os;&nbsp;5.3, dem ersten <literal>STABLE</literal>-Release,
führte zu umfangreichen Änderungen, was die
Aktualisierung auf die neue Version äußerst
kompliziert machte.</para>
</listitem>
</itemizedlist>
<para>Um es auf den Punkt zu bringen: Niemand war mit dieser
Entwicklung zufrieden.</para>
<para>Aus dieser Problematik wurden daher folgende
Rückschlüsse gezogen:</para>
<itemizedlist>
<listitem>
<para>Neue Hauptversionen werden künftig nicht mehr so
umfangreiche Änderungen aufweisen. Dafür werden
solche Versionen häfiger veröffentlicht werden.</para>
</listitem>
<listitem>
<para>Soweit möglich, sollen Funktionserweiterungen
künftig voneinander isoliert entwickelt werden.
Dies setzt voraus, dass Teile der Entwicklungsarbeit
außerhalb des Hauptquellcodebaumes erfolgen.
Änderungen werden erst dann in den Hauptentwicklungszweig
eingebracht werden, wenn sichergestellt ist, dass diese die
Stabilität anderer Entwicklungsprojekte nicht
beeinträchtigen.</para>
</listitem>
<listitem>
<para>Hauptversionen werden sich künftig an einem Zeitplan
orientieren und nicht mehr an den zu implementierenden
Änderungen. Wenn bestimmte Eigenschaften zum geplanten
Veröffentlichungszeitpunkt nicht fertig werden, werden
sie vorerst deaktiviert und erst in der nächsten
Hauptversion aktiviert.</para>
</listitem>
</itemizedlist>
<para>Durch die häufigere Veröffentlichung von weniger
umfangreichen Änderungen erhofft man sich außerdem,
dass die Einbringung von neuen Eigenschaften aus
<literal>HEAD</literal> in die neue
<literal>STABLE</literal>-Version erleichtert wird. Dadurch
können solche Eigenschaften in mehreren Hauptversionen
unterstützt werden. Da es sich dabei in der Regel um
isolierte Änderungen handeln wird, verringert sich auch
die Wahrscheinlichkeit, dass mit diesen Änderungen neue
Probleme eingeführt werden.</para>
<para>Durch die Fokussierung auf einen Zeitplan statt auf
geplante Änderungen wird es für Anwender, Entwickler
von externen Programmen sowie &os;-Entwickler einfacher werden,
eigene Planungen zu erstellen.</para>
</sect1>
<sect1 id="future-goals">
<title>Zukünftige Release-Zeitpläne</title>
<para>So sehen die derzeitigen Planungen des &os;-Projekts
für zukünftige Versionen aus:</para>
<itemizedlist>
<listitem>
<para>Alle 18 Monate soll eine neue Hauptversion
veröffentlicht werden.</para>
</listitem>
<listitem>
<para>Eine Unterversion soll hingegen alle 4 Monate
veröffentlicht werden.</para>
</listitem>
<listitem>
<para>Für das jeweils aktuellste Unterversion-Release
jeder Hauptversion sollen vorkompilierte Pakete angeboten
werden.</para>
</listitem>
<listitem>
<para>Sicherheitslücken und andere kritische Probleme
sollen für die aktuellsten Unterversionen jeder
Hauptversion angeboten werden (in sogenannten
<firstterm>security branches</firstterm>).</para>
</listitem>
</itemizedlist>
<para>Aufgrund der vielen verschiedenen installierbaren Versionen,
ist es allerdings nicht möglich, jede Version zeitlich
unbegrenzt zu unterstützen. Dies liegt zum Teil an nur
begrenzt verfügbaren Rechnerkapazitäten, vor allem
aber an der ebenfalls nur begrenzt verfügbaren Leistung
der freiwilligen Mitarbeiter des &os;-Projekts.</para>
<para>Interessierte Leser sollten sich auch folgende Seiten
ansehen:</para>
<variablelist>
<varlistentry>
<term><ulink url="&url.base;/releng/index.html#schedule"></ulink></term>
<listitem>
<para>The Release Engineering Schedule</para>
</listitem>
</varlistentry>
<varlistentry>
<term><ulink url="&url.base;/de/security/security.html#supported-branches"></ulink></term>
<listitem>
<para>The Security Branch Schedule</para>
</listitem>
</varlistentry>
</variablelist>
<para>Beide Dokumente gehen näher auf die verschiedenen
Entwicklungszweige sowie den Zeitrahmen ein, für den
die einzelnen Zweige unterstützt werden.</para>
</sect1>
<sect1 id="decision-points">
<title>Wie sollten diese Faktoren meine Entscheidung
beeinflussen?</title>
<para>Die wichtigsten Fragen, die Sie sich vor der Entscheidung
für die zu installierende Version stellen sollten, sind:</para>
<itemizedlist>
<listitem>
<para>Wie stabil muss Ihre Installation sein?</para>
</listitem>
<listitem>
<para>Wie viel Arbeit wollen Sie in den Aktualisierungsprozess
investieren?</para>
</listitem>
<listitem>
<para>Wie lange wollen Sie mit einer bestimmten Version
arbeiten, bevor Sie auf eine neuere Version wechseln?</para>
</listitem>
<listitem>
<para>Wie sicherheitskritisch ist Ihre Installation?</para>
</listitem>
<listitem>
<para>Wollen Sie Ihr System aus dem Quellcode installieren oder
bevorzugen Sie eine Binärinstallation?</para>
</listitem>
<listitem>
<para>Sind Sie bereit, sich am &os;-Entwicklungsprozess zu
beteiligen?</para>
</listitem>
</itemizedlist>
<para>Es folgen nun einige grobe Richtlinien, die Ihnen bei Ihrer
Entscheidung helfen sollen:</para>
<itemizedlist>
<listitem>
<para>Wenn Sie an der derzeit stabilsten Version interessiert
sind und möglichst wenig Ressourcen in die
Aktualisierung Ihres Systems investieren wollen, sollten
Sie das aktuellste
<literal>STABLE</literal>-Unterversions-Release
installieren und bei dieser Version verbleiben. Dabei bleibt
es Ihnen überlassen, ob Sie Änderungen dieses
Zweiges übernehmen wollen oder nicht.</para>
</listitem>
<listitem>
<para>Wenn es Ihnen auf auf eine sofortige Verfügbarkeit
ankommt, Sie die neuesten Fähigkeiten oder den
bestmöglichen Sicherheitslevel benötigen und
dazu bereit sind, Zeit in die Aktualisierung Ihres Systems
zu investieren, können Sie dem aktuellen
<literal>STABLE</literal>-Zweig folgen.</para>
</listitem>
<listitem>
<para>Wenn Sie Ihr System nicht sofort benötigen und
bereit sind, sich durch einige Probleme zu arbeiten, können
Sie uns dabei helfen, eine neue bevorstehende Hauptversion zu testen,
um für diesen Zweig mittel- bis langfristig die
bestmögliche Stabilität zu erreichen.</para>
</listitem>
<listitem>
<para>Nur wenn Sie bereit sind, das System aus dem Quellcode zu
installieren, Zeit haben, Probleme im Basissystem zu suchen
und zu beheben sowie entsprechende Problemberichte zu erstellen
und zusätzlich die entsprechende Mailingliste verfolgen
können, sollten sich dafür entscheiden,
<literal>HEAD</literal> zu folgen.</para>
</listitem>
</itemizedlist>
</sect1>
<sect1 id="conclusion">
<title>Fazit</title>
<para>Wir hoffen, dass dieser Artikel Ihr Verständnis des
&os;-Entwicklungsmodells verbessern und Ihnen Ihnen dabei
helfen konnte, sich für die &os;-Version zu entscheiden,
die Ihren Anforderungen am Besten entspricht.</para>
</sect1>
</article>

View file

@ -1448,19 +1448,6 @@ $FreeBSDde$
</answer>
</qandaentry>
<qandaentry>
<question id="multiboot">
<para>Kann ich mehr als ein Betriebssystem auf meinem PC
unterbringen?</para>
</question>
<answer>
<para>Sehen Sie sich <ulink
url="&url.articles.multi-os.en;/article.html">Die
Multi-OS-Seite</ulink> an.</para>
</answer>
</qandaentry>
<qandaentry>
<question id="windows-coexist">
<para>Kann &windows; neben &os; existieren?</para>
@ -5390,10 +5377,7 @@ kern.sched.name: 4BSD</screen>
&man.boot0cfg.8; auf beiden Platten booteasy installieren,
damit Sie in der Lage sind, das alte und das neue System
abwechselnd zu starten, nachdem der Kopiervorgang
abgeschlossen ist. Im <ulink
url="&url.articles.formatting-media.en;/article.html">Formatting-Media
Tutorial</ulink> finden Sie weitere Informationen zu
diesen Schritten.</para>
abgeschlossen ist.</para>
<para>Nachdem Sie die neue Platte eingerichtet haben,
können Sie Ihre Daten verschieben. Dummerweise

View file

@ -101,13 +101,6 @@
<!-- Articles are sorted by pathname -->
<p><a href="&url.articles;/5-roadmap/index.html">The
Roadmap for 5-STABLE</a> (5-roadmap)<br/>
Beschreibt die Entwicklungs- und
Veröffentlichungspläne hin zum Zweig
5-STABLE. Dieser Artikel ist nur mehr von historischem
Interesse.</p>
<p><a href="&url.articles;/bsdl-gpl/index.html">Why you should use
a BSD style license for your Open Source Project</a> (bsdl-gpl)<br/>
Beschreibt die Vorteile der Veröffentlichung von
@ -123,12 +116,6 @@
Wie FreeBSD einem großen ISP in Lateinamerika helfen
konnte.</p>
<p><a href="&url.articles;/checkpoint/index.html">Integration
of Checkpoint VPN-1/Firewall-1 and FreeBSD IPsec</a>
(checkpoint)<br/>
Wie man eine Checkpoint VPN-1/Firewall-1 mit FreeBSD und
IPsec konfiguriert.</p>
<p><a href="&url.articles;/committers-guide/index.html">The
Committer's Guide</a> (committers-guide)<br/>
Eine Einführung für neue FreeBSD Committer.</p>
@ -178,22 +165,6 @@
Advanced Points</a> (cvsup-advanced)<br/>
Ein Artikel, der die Feinheiten von CVSup beschreibt.</p>
<p><a href="&url.articles;/dialup-firewall/index.html">Dialup
firewalling with FreeBSD</a> (dialup-firewall)<br/>
Beschreibt das Einrichten einer Firewall auf einem Rechner
mit PPP und ipfw, der über eine Einwahlverbindung und
eine dynamisch zugewiesene IP-Adresse mit dem Internet
verbunden ist.</p>
<p><a href="&url.articles;/diskless-x/index.html">Creating
a diskless X server</a> (diskless-x)<br/>
Wie man einen plattenlosen X-Server einrichtet.</p>
<p><a href="&url.articles;/euro/index.html">The Euro symbol
on FreeBSD</a> (euro)<br/>
Wie man FreeBSD und diverse Anwendungen dazu bringen kann,
das Euro-Symbol anzuzeigen.</p>
<p><a href="&url.articles.de;/explaining-bsd/index.html">
Hintergrundwissen zu BSD</a> (explaining-bsd)<br/>
Eine Antwort auf die Frage: "Was ist BSD?"</p>
@ -215,11 +186,6 @@
Die Verwaltung von verschiedenen Schriftarten unter FreeBSD
sowie deren Einbindung in verschiedene Programme.</p>
<p><a href="&url.articles;/formatting-media/index.html">Formatting
media on FreeBSD</a> (formatting-media)<br/>
Die Einrichtung von Speichermedien unter FreeBSD, sowie
deren Aufteilung in Slices und Partitionen.</p>
<p><a href="&url.articles;/freebsd-questions/index.html">How
to get the best results from the FreeBSD-questions mailing list</a>
(freebsd-questions)<br/>
@ -243,12 +209,6 @@
Eine Anleitung zur Erstellung von UFS-Partitionen mit aktiviertem
Journaling auf Desktop-Systemen.</p>
<p><a href="&url.articles;/hats/index.html">Working with Hats</a>
(hats)<br/>
Eine Anleitung für Committer, die den Umgang mit
"hats" (also Committern, die für bestimmte
Bereiche von FreeBSD verantwortlich sind) beschreibt.</p>
<p><a href="&url.articles;/hubs/index.html">Mirroring FreeBSD</a>
(hubs)
<br/>Umfassende Informationen zum Spiegeln der FreeBSD
@ -296,12 +256,6 @@
(mh)<br/>
Eine Einführung in das MH-Mailprogramm.</p>
<p><a href="&url.articles;/multi-os/index.html">Using
FreeBSD with other operating systems</a> (multi-os)<br/>
Wie Sie FreeBSD gemeinsam mit einem oder mehreren
Betriebssystemen auf dem gleichen Rechner betreiben
können.</p>
<p><a href="&url.articles;/nanobsd/index.html">NanoBSD</a>
(nanobsd)<br/>
Informationen zu den NanoBSD-Werkzeugen, mit deren Hilfe
@ -402,37 +356,11 @@
Beschreibt "solid state"-Gerätedateien unter
FreeBSD.</p>
<p><a href="&url.articles;/storage-devices/index.html">Storage Devices</a>
(storage-devices)<br/>
Detaillierte Informationen über Speichermedien,
wie ESDI- und SCSI-Platten, Bandlaufwerke und CD-ROM-Laufwerke
unter FreeBSD.</p>
<p><a href="&url.articles.de;/version-guide/index.html">Die für
Sie passende FreeBSD-Version bestimmen</a>
(version-guide)<br/>
Wie Sie sich für die für Sie richtige
FreeBSD-Version entscheiden. Behandelt werden Releases,
Entwicklungszweige, die Unterschiede zwischen -CURRENT und
-STABLE, sowie der geplante Entwicklungszyklus des
Projekts.</p>
<p><a href="&url.articles;/vinum/index.html">Bootstrapping
Vinum: A Foundation for Reliable Servers</a> (vinum)<br/>
Eine Einführung in ausfallsichere Server, sowie eine
Schritt-für-Schritt-Anleitung zum Bau eines solchen mit
Vinum.</p>
<p><a href="&url.articles;/vm-design/index.html">Design
elements of the FreeBSD VM system</a> (vm-design)<br/>
Beschreibt das Design des virtuellen Speichersystems von
FreeBSD.</p>
<p><a href="&url.articles;/zip-drive/index.html">Zip-drives
and FreeBSD</a> (zip-drive)<br/>
Wie man ein Iomega-Ziplaufwerk (SCSI, IDE oder parallel)
unter FreeBSD formatiert, einhängt und verwendet.</p>
<h2>Informationen auf anderen Internetseiten</h2>
<p>Verschiedene unabhängige Projekte haben ebenfalls sehr

View file

@ -440,7 +440,7 @@
<title>Neuer Artikel: Eine FreeBSD-Version wählen</title>
<p>Ein neuer Artikel, <a
href="&enbase;/doc/de_DE.ISO8859-1/articles/version-guide/">
href="http://docs.freebsd.org/doc/9.0-RELEASE/usr/share/doc/freebsd/en_US.ISO8859-1/articles/version-guide/index.html">
Die für Sie passende FreeBSD-Version bestimmen</a>,
erklärt, wie Sie herausfinden können, welche
FreeBSD-Version Ihren Anforderungen am Besten entspricht.

View file

@ -189,7 +189,7 @@
target="_top">FreeBSD Release Engineering</a>.
Informationen über den geplanten Entwicklungszweig
5-STABLE finden Sie auf der <a
href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/5-roadmap/index.html"
href="http://docs.freebsd.org/doc/5.1-RELEASE/usr/share/doc/en_US.ISO8859-1/articles/5-roadmap/index.html"
target="_top">``The Roadmap for 5-STABLE''</a>.</p>
</div>

View file

@ -153,7 +153,7 @@ target="_top">Release Engineering Web pages</a> und im Artikel <a
href="http://www.freebsd.org/doc/en_US.ISO8859-1/articles/releng/index.html"
target="_top">FreeBSD Release Engineering</a>. Informationen über den geplanten
Entwicklungszweig 5-STABLE finden Sie auf der <a
href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/5-roadmap/index.html"
href="http://docs.freebsd.org/doc/5.2-RELEASE/usr/share/doc/en_US.ISO8859-1/articles/5-roadmap/index.html"
target="_top">``The Roadmap for 5-STABLE''</a>.</p>
</div>

View file

@ -7,16 +7,13 @@ SUBDIR = bsdl-gpl
SUBDIR+= compiz-fusion
SUBDIR+= contributing
SUBDIR+= cvs-freebsd
SUBDIR+= dialup-firewall
SUBDIR+= explaining-bsd
SUBDIR+= formatting-media
SUBDIR+= freebsd-questions
SUBDIR+= gjournal-desktop
SUBDIR+= greek-language-support
SUBDIR+= laptop
SUBDIR+= linux-users
SUBDIR+= mailing-list-faq
SUBDIR+= multi-os
SUBDIR+= nanobsd
SUBDIR+= new-users
SUBDIR+= problem-reports

View file

@ -1,16 +0,0 @@
# $FreeBSD$
#
# %SOURCE% en_US.ISO8859-1/articles/dialup-firewall/Makefile
# %SRCID% 1.5
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,357 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-7" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EL" "../../share/sgml/entities.ent">
%entities;
]>
<!--
The FreeBSD Greek Documentation Project
%SOURCE% en_US.ISO8859-1/articles/dialup-firewall/article.sgml
%SRCID% 1.43
-->
<article lang="el">
<articleinfo>
<title>Σύνδεση Μέσω Τηλεφώνου και Τείχος Προστασίας στο FreeBSD</title>
<authorgroup>
<author>
<firstname>Marc</firstname>
<surname>Silver</surname>
<affiliation>
<address><email>marcs@draenor.org</email></address>
</affiliation>
</author>
</authorgroup>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.general;
</legalnotice>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Αυτό το άρθρο περιγράφει πως μπορείτε να ρυθμίσετε ένα τείχος προστασίας (firewall)
χρησιμοποιώντας μια PPP σύνδεση μέσω τηλεφώνου στο FreeBSD με το IPFW.
Πιο συγκεκριμένα, περιγράφει τη ρύθμιση ενός τείχους προστασίας σε μια σύνδεση μέσω τηλεφώνου που
έχει δυναμική IP διεύθυνση. Αυτό το κείμενο δεν ασχολείται με το πως
θα ρυθμίσετε την αρχική σας σύνδεση μέσω PPP. Για περισσότερες
πληροφορίες σχετικά με τις ρυθμίσεις μιας σύνδεσης μέσω PPP δείτε τη
σελίδα βοήθειας &man.ppp.8;.</para>
</abstract>
</articleinfo>
<sect1 id="preface">
<title>Πρόλογος</title>
<para>Αυτό το κείμενο περιγράφει την διαδικασία που χρειάζεται για να
ρυθμίσετε ένα τείχος προστασίας στο FreeBSD όταν η IP διεύθυνση δίνεται δυναμικά
από τον ISP σας. Παρόλο που έχω προσπαθήσει να κάνω αυτό το κείμενο
όσο το δυνατόν πιο πλήρες και σωστό, είστε ευπρόσδεκτοι να στείλετε τις
διορθώσεις, τα σχόλια ή τις προτάσεις σας στη διεύθυνση του συγγραφέα:
<email>marcs@draenor.org</email>.</para>
</sect1>
<sect1 id="kernel">
<title>Παράμετροι του πυρήνα</title>
<para>Για να μπορέσετε να χρησιμοποιήσετε το IPFW, πρέπει να ενσωματώσετε
την σχετική υποστήριξη στον πυρήνα σας. Για περισσότερες πληροφορίες
σχετικά με τη μεταγλώττιση του πυρήνα, δείτε το <ulink
url="&url.books.handbook;/kernelconfig.html">τμήμα
ρυθμίσεων του πυρήνα στο Εγχειρίδιο</ulink>. Θα πρέπει να προσθέσετε
τις παρακάτω επιλογές στις ρυθμίσεις του πυρήνα σας για να
ενεργοποιήσετε την υποστήριξη για το IPFW:</para>
<variablelist>
<varlistentry>
<term><literal>options IPFIREWALL</literal></term>
<listitem>
<para>Ενεργοποιεί τον κώδικα τείχους προστασίας του πυρήνα.</para>
<note>
<para>Αυτό το κείμενο θεωρεί ότι έχετε εγκαταστήσει την έκδοση 5.X
του FreeBSD ή μια πιο πρόσφατη. Αν χρησιμοποιείτε την έκδοση 4.X,
τότε θα πρέπει να ενεργοποιήσετε την επιλογή
<emphasis>IPFW2</emphasis> και να διαβάσετε τη σελίδα βοήθειας
&man.ipfw.8; για περισσότερες πληροφορίες σχετικά με την επιλογή
IPFW2. Προσέξτε ιδιαίτερα το
τμήμα <emphasis>USING IPFW2 IN FreeBSD-STABLE</emphasis>.</para>
</note>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options IPFIREWALL_VERBOSE</literal></term>
<listitem>
<para>Στέλνει τα μηνύματα για τα κατάλληλα πακέτα στο log του
συστήματος.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options
IPFIREWALL_VERBOSE_LIMIT=<replaceable>500</replaceable></literal></term>
<listitem>
<para>Βάζει κάποιο όριο στις φορές που κάποια εγγραφή θα
καταγράφεται. Έτσι μπορείτε να καταγράφετε τα μηνύματα από το
τείχος προστασίας χωρίς τον κίνδυνο να γεμίσουν τα αρχεία
καταγραφής του συστήματός σας αν δεχτείτε κάποια επίθεση.
Το όριο <replaceable>500</replaceable> μηνυμάτων είναι μια αρκετά
λογική τιμή, αλλά μπορείτε να προσαρμόσετε αυτή την τιμή ανάλογα
με τις απαιτήσεις του δικού σας δικτύου.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options IPDIVERT</literal></term>
<listitem>
<para>Ενεργοποιεί τα <emphasis>divert</emphasis> sockets, που θα
δούμε αργότερα τι κάνουν.</para>
</listitem>
</varlistentry>
</variablelist>
<warning>
<para>Μόλις τελειώσετε με τις ρυθμίσεις και την μεταγλώττιση του πυρήνα
σας <emphasis>μην κάνετε επανεκκίνηση!</emphasis> Αν κάνετε
επανεκκίνηση σε αυτό το σημείο μπορεί να κλειδωθείτε απέξω από το
σύστημά σας. Πρέπει να περιμένετε μέχρι να εγκατασταθούν οι κανόνες
του τείχους προστασίας και να ενημερωθούν όλα τα σχετικά αρχεία
ρυθμίσεων.</para>
</warning>
</sect1>
<sect1 id="rcconf">
<title>Αλλαγές στο <filename>/etc/rc.conf</filename> για να φορτώνεται
το τείχος προστασίας</title>
<para>Για να ενεργοποιείται το τείχος προστασίας κατά την εκκίνηση του
συστήματος και για να ορίσετε το αρχείο με τους κανόνες του τείχους
προστασίας, πρέπει να ενημερώσετε το
αρχείο <filename>/etc/rc.conf</filename>. Απλά προσθέστε τις παρακάτω
γραμμές:</para>
<programlisting>firewall_enable="YES"
firewall_script="/etc/firewall/fwrules"</programlisting>
<para>Για περισσότερες πληροφορίες σχετικά με τη σημασίας καθεμιάς από
αυτές τις γραμμές, ρίξτε μια ματιά στο
<filename>/etc/defaults/rc.conf</filename> και διαβάστε την man σελίδα
&man.rc.conf.5;</para>
</sect1>
<sect1>
<title>Ενεργοποιήστε την Ενσωματωμένη Μετάφραση Διευθύνσεων του PPP</title>
<para>Για να επιτρέψετε σε άλλα μηχανήματα του δικτύου σας να συνδέονται
με τον έξω κόσμο μέσω του FreeBSD, χρησιμοποιώντας το
ως <quote>πύλη</quote>, θα πρέπει να ενεργοποιήσετε την ενσωματωμένη
μετάφραση διευθύνσεων του PPP (NAT). Για να γίνει αυτό, προσθέστε στο
αρχείο <filename>/etc/rc.conf</filename> τις παρακάτω γραμμές:</para>
<programlisting>ppp_enable="YES"
ppp_mode="auto"
ppp_nat="YES"
ppp_profile="<replaceable>προφίλ_της_σύνδεσης</replaceable>"</programlisting>
<para>Στη θέση του <literal>προφίλ_της_σύνδεσης</literal> πρέπει να βάλετε
το όνομα της σύνδεσής σας, όπως το έχετε αποθηκεύσει στο
αρχείο <filename>/etc/ppp/ppp.conf</filename>.</para>
</sect1>
<sect1 id="rules">
<title>Οι κανόνες του firewall</title>
<para>Το μόνο που απομένει τώρα είναι να ορίσουμε τους κανόνες του
firewall. Οι κανόνες τους οποίους περιγράφουμε εδώ είναι αρκετά καλοί
για τους περισσότερους χρήστες με dialup σύνδεση, αλλά ούτε υποχρεωτικοί
είναι, ούτε είναι δυνατόν να ταιριάζουν με τις ανάγκες όλων των χρηστών
dialup. Μπορούν, όμως, να χρησιμεύσουν ως ένα καλό παράδειγμα ρυθμίσεων
του IPFW και είναι σχετικά εύκολο να τους προσαρμόσετε στις δικές σας
ανάγκες.</para>
<para>Ας αρχίσουμε όμως με τις βασικές αρχές ενός κλειστού τείχους
προστασίας. Ένα κλειστό τείχος προστασίας απαγορεύει κατ' αρχήν κάθε
σύνδεση. Ο διαχειριστής μπορεί ύστερα να προσθέσει κανόνες για να
επιτρέψει μόνο συγκεκριμένες συνδέσεις να περνάνε από το τείχος
προστασίας. Η πιο συνηθισμένη σειρά των κανόνων σε ένα κλειστό τείχος
είναι: πρώτα οι κανόνες που επιτρέπουν μερικές συνδέσεις, και τέλος οι
κανόνες που απαγορεύουν οποιαδήποτε άλλη σύνδεση. Η λογική πίσω από
αυτό είναι ότι πρώτα βάζετε τους κανόνες που επιτρέπουν πράγματα να
περάσουν και ύστερα όλα τα άλλα απαγορεύονται αυτόματα.</para>
<para>Φτιάξτε, λοιπόν, ένα κατάλογο στον οποίο θα αποθηκεύονται οι κανόνες
του τείχους προστασίας. Σε αυτό το άρθρο χρησιμοποιούμε ως παράδειγμα
τον κατάλογο <filename
class="directory">/etc/firewall</filename>. Αλλάξτε κατάλογο μέσα σε
αυτόν και δημιουργήστε το αρχείο <filename>fwrules</filename> που το
όνομά του είχαμε γράψει στο <filename>rc.conf</filename>. Σημειώστε πως
μπορείτε να αλλάξετε το όνομα του αρχείου αυτού σε ότι θέλετε. Αυτός ο
οδηγός δίνει αυτό το όνομα σαν παράδειγμα και μόνο.</para>
<para>Ας δούμε τώρα ένα παράδειγμα τείχους προστασίας με αρκετά
επεξηγηματικά σχόλια.</para>
<programlisting># Define the firewall command (as in /etc/rc.firewall) for easy
# reference. Helps to make it easier to read.
fwcmd="/sbin/ipfw"
# Define our outside interface. With userland-ppp this
# defaults to tun0.
oif="tun0"
# Define our inside interface. This is usually your network
# card. Be sure to change this to match your own network
# interface.
iif="fxp0"
# Force a flushing of the current rules before we reload.
$fwcmd -f flush
# Divert all packets through the tunnel interface.
$fwcmd add divert natd all from any to any via tun0
# Check the state of all packets.
$fwcmd add check-state
# Stop spoofing on the outside interface.
$fwcmd add deny ip from any to any in via $oif not verrevpath
# Allow all connections that we initiate, and keep their state,
# but deny established connections that don't have a dynamic rule.
$fwcmd add allow ip from me to any out via $oif keep-state
$fwcmd add deny tcp from any to any established in via $oif
# Allow all connections within our network.
$fwcmd add allow ip from any to any via $iif
# Allow all local traffic.
$fwcmd add allow all from any to any via lo0
$fwcmd add deny all from any to 127.0.0.0/8
$fwcmd add deny ip from 127.0.0.0/8 to any
# Allow internet users to connect to the port 22 and 80.
# This example specifically allows connections to the sshd and a
# webserver.
$fwcmd add allow tcp from any to me dst-port 22,80 in via $oif setup keep-state
# Allow ICMP packets: remove type 8 if you don't want your host
# to be pingable.
$fwcmd add allow icmp from any to any via $oif icmptypes 0,3,8,11,12
# Deny and log all the rest.
$fwcmd add deny log ip from any to any</programlisting>
<para>Τώρα έχετε ένα ολοκληρωμένο τείχος προστασίας, το οποίο συνδέσεις στις
θύρες 22 και 80 και καταγράφει όλες τις άλλες συνδέσεις στο αρχείο καταγραφής του
συστήματος. Πλέον είστε έτοιμοι για επανεκκίνηση. Το τείχος προστασίας θα
ενεργοποιηθεί αυτόματα και θα φορτώσει τους κανόνες που προσθέσατε. Αν δε γίνει αυτό ή έχετε
οποιαδήποτε προβλήματα, ή αν έχετε κάποιες προτάσεις για να
διορθωθεί αυτό το άρθρο, επικοινωνήστε μαζί μου με email.</para>
</sect1>
<sect1>
<title>Ερωτήσεις</title>
<qandaset>
<qandaentry>
<question>
<para>Βλέπω μηνύματα όπως <errorname>limit 500 reached on entry
2800</errorname> και μετά από αυτό το σύστημά μου σταματάει να
καταγράφει τα πακέτα που εμποδίζονται από το τείχος προστασίας.
Δουλεύει ακόμα το firewall μου;</para>
</question>
<answer>
<para>Αυτό απλά σημαίνει πως έχει χρησιμοποιηθεί το μέγιστο όριο
καταγραφής (logging) για αυτό τον κανόνα. Ο κανόνας ο ίδιος
εξακολουθεί να δουλεύει, αλλά δεν θα στέλνει πια μηνύματα στο αρχείο καταγραφής
του συστήματος μέχρι να μηδενίσετε πάλι τους μετρητές. Μπορείτε
να μηδενίσετε τους μετρητές με την εντολή</para>
<screen>&prompt.root; <userinput>ipfw resetlog</userinput></screen>
<para>Εναλλακτικά, μπορείτε να αυξήσετε το όριο
καταγραφής στις ρυθμίσεις του πυρήνα σας με την επιλογή
<option>IPFIREWALL_VERBOSE_LIMIT</option> όπως περιγράψαμε
παραπάνω. Μπορείτε να αλλάξετε αυτό το όριο (χωρίς να
μεταγλωττίσετε πάλι τον πυρήνα σας και να κάνετε reboot)
χρησιμοποιώντας την &man.sysctl.8; τιμή
net.inet.ip.fw.verbose_limit.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>Κάποιο λάθος πρέπει να έγινε. Ακολούθησα τις εντολές κατά
γράμμα και τώρα κλειδώθηκα απέξω.</para>
</question>
<answer>
<para>Αυτός ο οδηγός υποθέτει ότι χρησιμοποιείτε το
<emphasis>userland-ppp</emphasis>, γι αυτό κι οι κανόνες που
δίνονται χρησιμοποιούν το <devicename>tun0</devicename> interface,
που αντιστοιχεί στην πρώτη σύνδεση που φτιάχνεται με το
&man.ppp.8; (αλλιώς γνωστό και ως <emphasis>user-ppp</emphasis>).
Η επόμενη σύνδεση θα χρησιμοποιούσε το
<devicename>tun1</devicename>, μετά το
<devicename>tun2</devicename> και πάει λέγοντας.</para>
<para>Θα πρέπει επίσης να θυμάστε ότι το &man.pppd.8; χρησιμοποιεί
το interface <devicename>ppp0</devicename>, οπότε αν ξεκινήσετε τη
σύνδεσή σας με το &man.pppd.8; θα πρέπει να αντικαταστήσετε το
<devicename>tun0</devicename> με <devicename>ppp0</devicename>.
Παρακάτω θα δείξουμε ένα εύκολο τρόπο να αλλάξετε τους κανόνες του
firewall κατάλληλα. Οι αρχικοί κανόνες σώζονται σε ένα αρχείο με
όνομα <filename>fwrules_tun0</filename>.</para>
<screen> &prompt.user; <userinput>cd /etc/firewall</userinput>
/etc/firewall&prompt.user; <userinput>su</userinput>
<prompt>Password:</prompt>
/etc/firewall&prompt.root; <userinput>mv fwrules fwrules_tun0</userinput>
/etc/firewall&prompt.root; <userinput>cat fwrules_tun0 | sed s/tun0/ppp0/g > fwrules</userinput>
</screen>
<para>Για να καταλάβετε αν χρησιμοποιείτε το &man.ppp.8; ή το
&man.pppd.8; μπορείτε να εξετάσετε την έξοδο της &man.ifconfig.8;
αφού ενεργοποιηθεί η σύνδεσή σας. Π.χ., για μια σύνδεση που
ενεργοποιήθηκε από το &man.pppd.8; θα δείτε κάτι σαν αυτό
(δείχνονται μόνο οι σχετικές γραμμές):</para>
<screen> &prompt.user; <userinput>ifconfig</userinput>
<emphasis>(skipped...)</emphasis>
ppp0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
inet <replaceable>xxx.xxx.xxx.xxx</replaceable> --&gt; <replaceable>xxx.xxx.xxx.xxx</replaceable> netmask <replaceable>0xff000000</replaceable>
<emphasis>(skipped...)</emphasis>
</screen>
<para>Από την άλλη, για μια σύνδεση που ενεργοποιήθηκε με το
&man.ppp.8; (<emphasis>user-ppp</emphasis>) θά πρεπε να δείτε κάτι
παρόμοιο με το παρακάτω:</para>
<screen> &prompt.user; <userinput>ifconfig</userinput>
<emphasis>(skipped...)</emphasis>
ppp0: flags=<replaceable>8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1500</replaceable>
<emphasis>(skipped...)</emphasis>
tun0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
<emphasis>(IPv6 stuff skipped...)</emphasis>
inet <replaceable>xxx.xxx.xxx.xxx</replaceable> --&gt; <replaceable>xxx.xxx.xxx.xxx</replaceable> netmask <replaceable>0xffffff00</replaceable>
Opened by PID <replaceable>xxxxx</replaceable>
<emphasis>(skipped...)</emphasis></screen>
</answer>
</qandaentry>
</qandaset>
</sect1>
</article>

View file

@ -1,16 +0,0 @@
# $FreeBSD$
#
# %SOURCE% en_US.ISO8859-1/articles/formatting-media/Makefile
# %SRCID% 1.8
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,670 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-7" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EL" "../../share/sgml/entities.ent">
%entities;
]>
<!--
$FreeBSD$
The FreeBSD Greek Documentation Project
%SOURCE% en_US.ISO8859-1/articles/formatting-media/article.sgml
%SRCID% 1.31
-->
<article lang="el">
<articleinfo>
<title>Διαμόρφωση Αποθηκευτικών Μέσων για Χρήση με το FreeBSD</title>
<subtitle>Ένας σύντομος οδηγός</subtitle>
<authorgroup>
<author>
<firstname>Doug</firstname>
<surname>White</surname>
<affiliation>
<address>
<email>dwhite@resnet.uoregon.edu</email>
</address>
</affiliation>
</author>
</authorgroup>
<pubdate>Μάρτιος 1997</pubdate>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.iomega;
&tm-attrib.opengroup;
&tm-attrib.general;
</legalnotice>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Το παρόν έγγραφο περιγράφει πώς να κόψετε σε τμήματα (slices),
κομματιάσετε (partition) και μορφοποιήσετε (format/διαμόρφωση)
σκληρούς δίσκους και παρόμοια μέσα που προορίζονται για χρήση με το
FreeBSD. Τα παραδείγματα δοκιμάστηκαν στο FreeBSD 2.2 αλλά λογικά
δουλεύουν και στις άλλες εκδόσεις. Το κείμενο έχει ενημερωθεί για την
έκδοση 4 του FreeBSD.</para>
</abstract>
</articleinfo>
<sect1>
<title>Εισαγωγή και Ορισμοί</title>
<sect2>
<title>Γενικά</title>
<para>Το να προσθέτεις δίσκους με επιτυχία σε ένα υπάρχον σύστημα είναι
χαρακτηριστικό ενός έμπειρου διαχειριστή συστήματος. Το κόψιμο, το
κομμάτιασμα και η προσθήκη δίσκων απαιτεί ιδιαίτερη προσοχή και σωστή
σύνταξη εντολών. Ένα πιθανό λάθος μπορεί να εξαφανίσει έναν ολόκληρο
δίσκο σε δευτερόλεπτα. Αυτό το έγγραφο γράφτηκε ως προσπάθεια να
απλοποιηθεί η διαδικασία και να αποφευχθούν ατυχήματα. Ευτυχώς,
ανανεώσεις υπαρχόντων εργαλείων (κυρίως του sysinstall), στις
πρόσφατες εκδόσεις του FreeBSD, έχουν βελτιώσει την διαδικασία.</para>
<para>Υπάρχουν δύο πιθανοί τρόποι (modes) μορφοποίησης:</para>
<itemizedlist>
<listitem>
<para><firstterm>συμβατή λειτουργία (compatibility
mode)</firstterm>: Διαμόρφωση του δίσκου ώστε να έχει ένα πίνακα
τμήματων (slice table) και να μπορεί να χρησιμοποιηθεί παράλληλα
από άλλα λειτουργικά συστήματα.</para>
</listitem>
<listitem>
<para><firstterm>αποκλειστική λειτουργία (dedicated mode)</firstterm>,
μερικές φορές λέγεται και <firstterm>επικίνδυνα αποκλειστική
λειτουργία</firstterm>: Διαμόρφωση ενός δίσκου χωρίς πίνακα
partitions. Αυτό κάνει την διαδικασία της πρόσθεσης δίσκου
ευκολότερη αλλά ένα μη-FreeBSD λειτουργικό σύστημα πιθανόν να μη
μπορεί να δει το δίσκο. Η έκφραση <emphasis>επικίνδυνα</emphasis>
αναφέρεται στον κίνδυνο του ότι το σύστημα μπορεί να μην
αναγνωρίσει έναν δίσκο μορφοποιημένο κατ' αυτόν τον τρόπο.</para>
</listitem>
</itemizedlist>
<para>Στις περισσότερες περιπτώσεις η αποκλειστική λειτουργία είναι ο
ευκολότερος τρόπος να στηθεί και να χρησιμοποιηθεί σε υπάρχοντα
συστήματα, εφόσον ένας καινούργιος δίσκος συνήθως προορίζεται μόνο για
το FreeBSD. Παρόλο που η συμβατή λειτουργία διασφαλίζει μέγιστη
διαλειτουργικότητα (interoperability) με μελλοντικές εγκαταστάσεις,
είναι πιο πολύπλοκη.</para>
<para>Πέρα από την επιλογή τρόπου λειτουργίας υπάρχουν δύο μέθοδοι
στησίματος του δίσκου. Ο πρώτος χρησιμοποιεί το εργαλείο εγκατάστασης
του συστήματος <command>/stand/sysinstall</command>. Από το
2.1.7-RELEASE και μετά η <command>sysinstall</command> απλοποιεί το
στήσιμο των δίσκων επειδή επιτρέπει την απευθείας αλλαγή στο label
(τίτλος) και στα τμήματα (partitions) των δίσκων. Επιπλέον σας
επιτρέπει να αποθηκεύσετε τις αλλαγές μόνο στον συγκεκριμένο δίσκο
χωρίς να επηρεάζει τους υπόλοιπους. Ο δεύτερος τρόπος είναι να
εκτελέσετε διάφορες εντολές με το χέρι απο την γραμμή εντολών ως root.
Αν επιλέξετε την αποκλειστική λειτουργία χρειάζετε να εκτελέσετε μόνο
2-3 εντολές ενώ με το <command>sysinstall</command> πρέπει δουλέψετε
λιγάκι παραπάνω.</para>
</sect2>
<sect2>
<title>Ορισμοί</title>
<para>Η διαχείριση δίσκων στο &unix; έχει δώσει νέα έννοια σε υπάρχουσες
λέξεις. Το παρακάτω λεξιλόγιο εξηγεί την ορολογία που χρησιμοποιούμε
σε αυτό το κείμενο και στο FreeBSD γενικά (προφανώς).</para>
<!-- I'm tempted to use GLOSSARY here but will resort to a list for now. -->
<itemizedlist>
<listitem>
<para>συμβατή λειτουργία (compatibility mode): η διαμόρφωση του
δίσκου ώστε να έχει ένα πίνακα τμήματων (slice table) και να
μπορεί να χρησιμοποιηθεί παράλληλα με άλλα λειτουργικά συστήματα.
Αντίθετο της αποκλειστικής λειτουργίας.</para>
</listitem>
<listitem>
<para>(επικίνδυνα) αποκλειστική λειτουργία: η διαμόρφωση του δίσκου
κατά τέτοιον τρόπο ώστε να μην περιέχει πίνακα τμημάτων (slice
table). Είναι πιο εύκολη διαδικασία αλλά ο δίσκος μπορεί να μη
δουλεύει σε μη-FreeBSD λειτουργικά συστήματα. Αντίθετο της
συμβατής λειτουργίας.</para>
</listitem>
<listitem>
<para>δίσκος: Οι σκληροί δίσκοι, τα CDROM, οι μαγνητο-οπτικές
συσκευές και τα αφαιρούμενα μέσα &iomegazip;/&jaz; είναι μερικές
από τις συσκευές μαζικής αποθήκευσης δεδομένων που
χρησιμοποιούνται σήμερα.
Η βασική αρχή λειτουργίας αυτών των μέσων αποθήκευσης ένας ή
περισσότεροι δίσκοι οι οποίοι περιστρέφονται από ένα μοτέρ, ενώ
μια κεφαλή κινείται σε ένα μονοπάτι πάνω στην ακτίνα του δίσκου
και διαβάζει από το δίσκο ή γράφει δεδομένα σε αυτόν.
Το γράψιμο γίνεται με μεταβολή κάποιου φυσικού χαρακτηριστικού του
δίσκου (μαγνητική ροή, ανακλαστικότητα, κλπ.) ενώ το διάβασμα
γίνεται με <quote>ανίχνευση</quote> αλλαγών στην ίδια φυσική
ιδιότητα του δίσκου.</para>
</listitem>
<listitem>
<para>τμήμα (slice): Μία υποδιαίρεση ενός δίσκου. Σύμφωνα με τα
πρότυπα των PC μπορούν να υπάρχουν μέχρι 4 τμήματα σε έναν δίσκο.
Τα τμήματα αποτελούνται απο συνεχόμενους τομείς (sectors).
Υπάρχει ένας <quote>πίνακας τμημάτων</quote> (slice table) που
περιέχει πληροφορίες για τα τμήματα και χρησιμοποιείται από το
BIOS για να βρεί από πού μπορεί να ξεκινήσει το σύστημα. Ο
πίνακας τμημάτων λέγεται και <quote>πίνακας κομματιών</quote>
(partition table) σε ορολογία DOS που φτιάχνεται απο το πρόγραμμα
fdisk.</para>
</listitem>
<listitem>
<para>κομμάτι (partition): Μία υποδιαίρεση ενός τμήματος. Συνήθως
χρησιμοποιείται για αναφορά στις υποδιαιρέσεις των τμημάτων
(slices) του δίσκου στο FreeBSD. Κάθε σύστημα αρχείων
(filesystem) ή δευτερεύουσας μνήμης (swap area) στον δίσκο
βρίσκεται σε ένα κομμάτι. Τα κομμάτια φτιάχνονται με το εργαλείο
disklabel.</para>
</listitem>
<listitem>
<para>τομέας (sector): Η μικρότερη υποδιαίρεση ενός δίσκου. Συνήθως
έχει μέγεθος 512 bytes.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2>
<title>Σημεία που πρέπει να προσέξετε και παγίδες</title>
<para>Δώστε μεγάλη προσοχή στη διαδικασία, αν δεν λάβετε τα μέτρα σας
και γίνει λάθος μπορεί να καταστρέψετε τα περιεχόμενα άλλων δίσκων του
συστήματος.</para>
<para><emphasis>Προσέξτε τι κάνετε.</emphasis> Είναι πολύ εύκολο να
καταστρέψετε λάθος δίσκο δουλεύοντας με αυτές τις εντολές. Αν έχετε
αμφιβολίες ελέγξτε τα μηνύματα του πυρήνα κατά τη διαδικασία εκκίνησης
για να βρείτε τη σωστή συσκευή δίσκου.</para>
<para>Φυσικά δεν έχουμε καμία ευθύνη για ζημιές που μπορεί να
προκληθούν. Η ευθύνη είναι δική σας!</para>
</sect2>
<sect2>
<title>Zip, Jazz, και άλλα αφαιρούμενα μέσα</title>
<para>Οι αφαιρούμενοι δίσκοι μπορούν να διαμορφωθούν σαν κανονικοί
δίσκοι. Το σημαντικό είναι να είναι συνδεμένος ο οδηγός του δίσκου
κατά την εκκίνηση του συστήματος και με δισκέτα μέσα ώστε να μπορέσει
ο πυρήνας να δεί σωστά την γεωμετρία του δίσκου. Κοιτάξτε τι λέει η
εντολή <command>dmesg</command> για να δείτε αν η συσκευή είναι στην
λίστα. Για παράδειγμα αν ο πυρήνας γράψει:
<informalexample>
<screen>Can't get the size</screen>
</informalexample>
τότε δεν υπάρχει δισκέτα στον οδηγό. Αν γίνει αυτό θα πρέπει να
επανεκκινήσετε το μηχάνημα πριν δοκιμάσετε να διαμορφώσετε την
δισκέτα.</para>
</sect2>
</sect1>
<sect1>
<title>Διαμορφώνοντας δίσκους για αποκλειστική λειτουργία</title>
<sect2>
<title>Εισαγωγή</title>
<para>Αυτή η παράγραφος περιγράφει πώς να φτιάξετε δίσκους μόνο για το
FreeBSD. Θυμηθείτε ότι οι δίσκοι αποκλειστικής λειτουργίας δεν μπορούν
να διαβαστούν από άλλα λειτουργικά, ούτε να κάνουν boot.</para>
</sect2>
<sect2>
<title>Πώς να φτιάξετε δίσκους αποκλειστικής λειτουργίας με το
Sysinstall</title>
<para>To <command>/stand/sysinstall</command>, το πρόγραμμα εγκατάστασης
του συστήματος, έχει επεκταθεί στις τελευταίες του εκδόσεις ώστε να
απλοποιεί την διαδικασία χωρισμού των δίσκων και να απαιτεί λιγότερη
προσπάθεια. Τα προγράμματα fdisk και disklabel που υπάρχουν στο
sysinstall είναι γραφικού περιβάλοντος (GUI - Graphical User
Interface) και μειώνουν το μπέρδεμα του κοψίματος των δίσκων. Είναι
προφανώς ο ευκολότερος τρόπος να κόψετε δίσκους από την έκδοση 2.1.7
και μετά του FreeBSD.</para>
<procedure>
<step>
<para>Ξεκινήστε το sysinstall ώς root γράφοντας
<informalexample>
<screen>&prompt.root; <userinput>/stand/sysinstall</userinput></screen>
</informalexample>
στην γραμμή εντολών.</para>
</step>
<step>
<para>Επιλέξτε <command>Index</command>.</para>
</step>
<step>
<para>Επιλέξτε <command>Partition</command>.</para>
</step>
<step>
<para>Επιλέξτε το δίσκο που θέλετε να εγκαταστήσετε χρησιμοποιώντας
τα βελάκια και μετά <keycap>SPACE</keycap>.</para>
</step>
<step>
<para>Αν θα χρησιμοποιήσετε όλο το δίσκο για το FreeBSD, επιλέξτε
<command>A</command>.</para>
</step>
<step>
<para>Μόλις σας ρωτήσει αν όντως θέλετε να το κάνετε αυτό (Do you
still want to do this) απαντήστε <command>Yes</command>.</para>
</step>
<step>
<para>Επιλέξτε <command>Write</command>.</para>
</step>
<step>
<para>Θα σας βγάλει μια προειδοποίηση σχετικά με την εγγραφή σε
υπάρχοντα συστήματα απαντήστε <command>Yes</command>.</para>
</step>
<step>
<para>Μόλις σας ρωτήσει αν θέλετε να εγκαταστήσετε ένα boot loader,
επιλέξτε <command>None</command> για να αποφύγετε οποιαδήποτε
αλλαγή στο Master Boot Record. Η εγκατάσταση ενός boot loader
χρειάζεται μόνο σε καινούριες εγκαταστάσεις του &os; ή αν
σχεδιάζετε να τοποθετήσετε το δίσκο σε κάποιο άλλο
μηχάνημα.</para>
</step>
<step>
<para>Πατήστε <keycap>ENTER</keycap> στο ενημερωτικό μήνυμα που
λέει <quote>Wrote FDISK partition information out
successfully</quote>.</para>
</step>
<step>
<para>Επιλέξτε <command>Quit</command> για να βγείτε από το FDISK
Editor και μετά <keycap>ESCAPE</keycap> για να επιστρέψετε στο
Index menu.</para>
</step>
<step>
<para>Επιλέξτε <command>Label</command> από το Index menu.</para>
</step>
<step>
<para>Ονομάστε το δίσκο σας όπως θέλετε (εδώ ορίζετε τα
partitions). Αν θέλετε μόνο ένα partition πατήστε το
<command>C</command> για να δημιουργήσετε το partition. Μετά
απλώς δεχθείτε τις προεπιλογές για τα προκαθορισμένα size,
partition type Filesystem, και mountpoint (το οποίο δεν
χρησιμοποιείται).</para>
</step>
<step>
<para>Πατήστε <command>W</command> μόλις τελειώσετε και επικυρώστε
τις αλλαγές για να συνεχίσετε. Το filesystem θα περαστεί αυτόματα
από την εντολή newfs εκτός αν επιλέξετε το αντίθετο. (Αν βάζετε
καινούργιο partition σας συμφέρει να το κάνετε!). Θα σας δώσει το
λάθος:
<informalexample>
<screen>Error mounting /mnt/dev/ad2s1e on /mnt/blah : No such file or directory</screen>
</informalexample>
Αγνοήστε το.</para>
</step>
<step>
<para>Πατήστε συνεχόμενα το <keycap>ESCAPE</keycap> για να
βγείτε.</para>
</step>
</procedure>
</sect2>
<sect2>
<title>Πως να φτιάξετε δίσκους αποκλειστικής λειτουργίας μέσα από την
γραμμή εντολών</title>
<para>Εκτελέστε τις παρακάτω εντολές αντικαθιστώντας το
<devicename>ad2</devicename> με το όνομα της συσκευής του δίσκου
(γράψτε dmesg να ελέγξετε αν είναι σωστό).</para>
<informalexample>
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/ad2 count=2</userinput>
&prompt.root; <userinput>disklabel /dev/ad2 | disklabel -B -R -r ad2 /dev/stdin</userinput>
<lineannotation>Θέλουμε μόνο ένα partition, οπότε μπορούμε να χρησιμοποιήσουμε το κομμάτι 'c':</lineannotation>
&prompt.root; <userinput>newfs /dev/ad2c</userinput></screen>
</informalexample>
<para>Αν χρειάζεται να αλλάξετε το disklabel για να χρησιμοποιήσετε
πολλαπλά partitions (για παράδειγμα αν θέλετε swap) τότε κάντε:</para>
<informalexample>
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/ad2 count=2</userinput>
&prompt.root; <userinput>disklabel /dev/ad2 > /tmp/label</userinput>
<lineannotation>Ανοίξτε το disklabel για να προσθέσετε partitions:</lineannotation>
&prompt.root; <userinput>vi /tmp/label</userinput>
&prompt.root; <userinput>disklabel -B -R -r ad2 /tmp/label</userinput>
<lineannotation>εκτελέστε την εντολή newfs στα partitions όπως πρέπει</lineannotation></screen>
</informalexample>
<para>Ο δίσκος σας είναι έτοιμος προς χρήση.</para>
</sect2>
</sect1>
<sect1>
<title>Διαμορφώνοντας δίσκους για συμβατή λειτουργία</title>
<sect2>
<title>Εισαγωγή</title>
<para>Η γραμμή εντολών είναι μεν ο ευκολότερος τρόπος για να φτιάξετε
δίσκους αποκλειστικής λειτουργίας αλλά είναι και ο δυσκολότερος για να
φτιάξετε συμβατούς δίσκους. Το <command>fdisk</command> από την γραμμή
εντολών θέλει περισσότερες γνώσεις μαθηματικών και πολλές γνώσεις
σχετικά με τον πίνακα κομματιών, κάτι που προφανώς δεν χρειάζεται να
μάθετε. Γι αυτό χρησιμοποιήστε το sysinstall για να φτιάξετε συμβατούς
δίσκους ακολουθώντας τις οδηγίες παρακάτω.</para>
</sect2>
<sect2>
<title>Πώς να φτιάξετε δίσκους συμβατής λειτουργίας με το
Sysinstall</title>
<procedure>
<step>
<para>Ξεκινήστε το sysinstall ώς root γράφοντας
<informalexample>
<screen>&prompt.root; <userinput>/stand/sysinstall</userinput></screen>
</informalexample>
στην γραμμή εντολών.</para>
</step>
<step>
<para>Επιλέξτε <command>Index</command>.</para>
</step>
<step>
<para>Επιλέξτε <command>Partition</command>.</para>
</step>
<step>
<para>Επιλέξτε το δίσκο που θέλετε να εγκαταστήσετε χρησιμοποιώντας
τα βελάκια και μετά <keycap>SPACE</keycap>.</para>
</step>
<step>
<para>Αν θα χρησιμοποιήσετε όλο τον δίσκο για το FreeBSD,
επιλέξτε <command>A</command>.</para>
</step>
<step>
<para>Όταν σας ζητηθεί:
<informalexample>
<screen>Do you want to do this with a true partition entry so as to remain
cooperative with any future possible operating systems on the
drive(s)?</screen>
</informalexample>
(Θέλετε να το κάνετε αυτό με πραγματικά κομμάτια για να παραμείνει
συμβατός με άλλα λειτουργικά συστήματα?) Απαντήστε
<command>Yes</command>.</para>
</step>
<step>
<para>Επιλέξτε <command>Write</command>.</para>
</step>
<step>
<para>Όταν σας ζητηθεί να εγκαταστήσετε τον boot manager, επιλέξτε
None με το <keycap>SPACE</keycap> και μετά <keycap>ENTER</keycap>
για OK.</para>
</step>
<step>
<para><command>Quit</command> (βγείτε) από το FDISK Editor.</para>
</step>
<step>
<para>Θα σας ρωτήσει κάτι σχετικό με τον boot manager πάλι, επιλέξτε
<command>None</command> ξανά. </para> </step>
<step>
<para>Επιλέξτε <command>Label</command> απο το Index menu.</para>
</step>
<step>
<para>Ονομάστε το δίσκο όπως θέλετε (εδώ θα ορίσετε τα
partitions). Aν θέλετε μόνο ένα partition απλώς δεχθείτε τις
προεπιλογές για τα προκαθορισμένα size, partition type filesystem,
και mountpoint (το οποίο δεν χρησιμοποιείται).</para>
</step>
<step>
<para>Το filesystem θα περαστεί αυτόματα από την εντολή newfs εκτός
αν επιλέξετε το αντίθετο. Αν βάζετε καινούργιο partition σας
συμφέρει να το κάνετε! Θα σας δώσει το λάθος:
<informalexample>
<screen>Error mounting /mnt/dev/ad2s1e on /mnt/blah : No such file or directory</screen>
</informalexample>
Αγνοήστε το.</para>
</step>
<step>
<para>Πατήστε συνεχόμενα το <keycap>ESCAPE</keycap> για να
βγείτε.</para>
</step>
</procedure>
<para>Ο δίσκος σας είναι έτοιμος προς χρήση.</para>
</sect2>
</sect1>
<sect1>
<title>Άλλες λειτουργίες με τους δίσκους</title>
<sect2>
<title>Προσθέτοντας swap.</title>
<para>Καθώς ένα σύστημα επεκτείνεται, η ανάγκη για μεγαλύτερο swap
γίνεται όλο και πιο επιτακτική. Παρόλο που το να προστεθεί swap σε έναν
υπάρχοντα δίσκο είναι τρομερά δύσκολο, ένας καινούργιος δίσκος μπορεί
να μορφοποιηθεί έτσι ώστε να περιέχει το επιπλέον swap που σας
λείπει.</para>
<para>Για να προσθέσετε swap καθώς βάζετε ένα δίσκο στο σύστημα:</para>
<procedure>
<step>
<para>Καθώς κόβετε το δίσκο (partitioning) αλλάξτε το disklabel και
ορίστε χώρο για swap στο κομμάτι (partition) `b' και βάλτε τον
υπόλοιπο χώρο σε κάποιο άλλο κομμάτι, π.χ. στο `a' ή στο `e'. Το
μέγεθος που δίνετε είναι σε blocks των 512 bytes.</para>
</step>
<step>
<para>Όταν κάνετε newfs στον δίσκο, ΜΗΝ το κάνετε στο κομμάτι `c'.
Αντίθετα, κάντε το μόνο στο κομμάτι που δεν είναι swap.</para>
</step>
<step>
<para>Προσθέστε στο <filename>/etc/fstab</filename>
το παρακάτω:</para>
<informalexample>
<programlisting>/dev/ad0b none swap sw 0 0</programlisting>
</informalexample>
<para>Αλλάξτε το <filename>/dev/ad0b</filename> στο όνομα της
καινούργιας σας συσκευής.</para>
</step>
<step>
<para>Για να ενεργοποιήσετε άμεσα το νέο swap χρησιμοποιήστε την
εντολή <command>swapon</command>
<informalexample>
<screen>&prompt.root; <userinput>swapon /dev/da0b</userinput>
swapon: added /dev/da0b as swap space</screen>
</informalexample>
</para>
</step>
</procedure>
</sect2>
<sect2>
<title>Αντιγράφοντας τα περιεχόμενα δίσκων</title>
<!-- Should have specific tag -->
<para>Από τον: Renaud Waldura
(<email>renaud@softway.com</email>)</para>
<para>Για να μετακινήσετε αρχεία από τον αρχικό σας δίσκο σε έναν
καινούργιο, κάντε:
<informalexample>
<screen>&prompt.root; <userinput>mount /dev/ad2 /mnt</userinput>
&prompt.root; <userinput>pax -r -w -p e /usr/home /mnt</userinput>
&prompt.root; <userinput>umount /mnt</userinput>
&prompt.root; <userinput>rm -rf /usr/home/*</userinput>
&prompt.root; <userinput>mount /dev/ad2 /usr/home</userinput></screen>
</informalexample>
</para>
</sect2>
<sect2>
<title>Φτιάξτε ενωμένους δίσκους με το CCD</title>
<para>Απο τον: Stan Brown
(<email>stanb@awod.com</email>) </para>
<para>Με το Concatenated Disk Driver, ή αλλιώς CCD, μπορείτε να έχετε
πολλούς όμοιους δίσκους αλλά να συμπεριφέρονται ως ένας. Η διαδικασία
λέγεται συγχώνευση (striping). Με την επικόλληση έχετε καλύτερα
αποτελέσματα στην ταχύτητα επειδή μοιράζονται οι εγγραφές και οι
αναγνώσεις στους δίσκους. Διαβάστε τις manual pages &man.ccd.4; και
&man.ccdconfig.8; ή την <ulink
url="http://stampede.cs.berkeley.edu/ccd/">αρχική σελίδα του
CCD</ulink> για περισσότερες λεπτομέρειες.</para>
<para>Για να τρέξετε CCD πλέον δεν χρειάζεστε ειδικό πυρήνα. Με την
εντολή <command>ccdconfig</command>, φορτώνεται το κατάλληλο KLD
αυτόματα αν ο πυρήνας δεν έχει ήδη υποστήριξη για CCD.</para>
<para>Τα CCD φτιάχνονται σε partitions τύπου
<emphasis>4.2BSD</emphasis>. Αν θέλετε να χρησιμοποιήσετε όλο τον
δίσκο και πάλι πρέπει να φτιάξετε ένα νέο partition. Για παράδειγμα,
η εντολή <userinput>disklabel -e</userinput> μπορεί να δείξει:</para>
<informalexample>
<screen># size offset fstype [fsize bsize bps/cpg]
c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)</screen>
</informalexample>
<para>Δεν μπορείτε να χρησιμοποιήσετε το partition
<emphasis>c</emphasis> για CCD, εφόσον είναι τύπου
<emphasis>unused</emphasis>. Αντίθετα δημιουργήστε ένα νέο partition
ακριβώς ίδιου μεγέθους αλλά τύπου <emphasis>4.2BSD</emphasis>:</para>
<informalexample>
<screen># size offset fstype [fsize bsize bps/cpg]
c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)
<userinput> e: 60074784 0 4.2BSD 0 0 0 # (Cyl. 0 - 59597)</userinput></screen>
</informalexample>
<para>Για να δημιουργήσετε ένα νέο CCD, εκτελέστε τις παρακάτω
εντολές. Περιγράφουν πώς να προσθέσετε τρείς δίσκους. Απλώς αλλάξτε
τις συσκευές όπου χρειάζεται. Θυμηθείτε ότι οι δίσκοι πρέπει να
είναι <emphasis>όμοιοι</emphasis>.</para>
<informalexample>
<screen>&prompt.root; <userinput>cd /dev ; sh MAKEDEV ccd0</userinput>
&prompt.root; <userinput>disklabel -r -w da0 auto</userinput>
&prompt.root; <userinput>disklabel -r -w da1 auto</userinput>
&prompt.root; <userinput>disklabel -r -w da2 auto</userinput>
&prompt.root; <userinput>disklabel -e da0</userinput>
<lineannotation>Προσθέστε το partition e τύπου 4.2BSD</lineannotation>
&prompt.root; <userinput>disklabel -e da1</userinput>
<lineannotation>Προσθέστε το partition e τύπου 4.2BSD</lineannotation>
&prompt.root; <userinput>disklabel -e da2</userinput>
<lineannotation>Προσθέστε το partition e τύπου 4.2BSD</lineannotation>
&prompt.root; <userinput>ccdconfig ccd0 273 0 /dev/da0e /dev/da1e /dev/da2e</userinput>
&prompt.root; <userinput>newfs /dev/ccd0c</userinput></screen>
</informalexample>
<para>Η τιμή 273 είναι το μέγεθος του stripe. Είναι ο αριθμός των
sectors (512 bytes ο καθένας) σε κάθε block δεδομένων του CCD.
Θα πρέπει να είναι τουλάχιστον 128 kB, και δεν πρέπει να είναι δύναμη
του 2.</para>
<para>Τώρα μπορείτε να κάνετε mount και να χρησιμοποιήσετε το CCD σας
μέσω της συσκευής <filename>/dev/ccd0c</filename>.</para>
<para>Ένα πιό δυνατό και ευέλικτο εναλλακτικό του CCD είναι το Vinum.
Περισσότερες πληροφορίες στο <ulink
url="http://www.vinumvm.org/">Vinum Project home page</ulink>.</para>
</sect2>
</sect1>
<sect1>
<title>Ευχαριστίες</title>
<para>Ο συγγραφέας θα ήθελε να ευχαριστήσει τους παρακάτω για την
συνεισφορά τους σε αυτή την εργασία τους:</para>
<itemizedlist>
<listitem>
<para>Darryl Okahata (<email>darrylo@hpnmhjw.sr.hp.com</email>)
για τις απλές οδηγίες εγκατάστασης ενός δίσκου σε αποκλειστικό τρόπο
λειτουργίας, τις οποίες έχω πολλές φορές χρησιμοποιήσει στην
FreeBSD-questions.</para>
</listitem>
<listitem>
<para>&a.jkh;
που έκανε το sysinstall χρήσιμο για τέτοιου είδους δουλειές.</para>
</listitem>
<listitem>
<para>John Fieber (<email>jfieber@indiana.edu</email>)
που έδωσε τις πληροφορίες και τα παραδείγματα για το DocBook DTD
πάνω στα οποία αυτό το κείμενο βασίζεται.</para>
</listitem>
<listitem>
<para>&a.grog;
που έλεγξε την δουλειά μου, ψάχνοντας για ανακρίβειες, και για την
υποστήριξη του σε διάφορα θέματα.</para>
</listitem>
</itemizedlist>
</sect1>
</article>

View file

@ -149,10 +149,6 @@ in your /etc/rc.conf. Extra options can be found in startup script.</screen>
<ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6-stable/Latest/"></ulink>
θα κατεβάσετε τα πιο πρόσφατα πακέτα που υπάρχουν για τη σειρά
6.X.</para>
<para>Μπορείτε να διαβάσετε περισσότερα για τις εκδόσεις του &os;
στο άρθρο <ulink
url="&url.base;/doc/en_US.ISO8859-1/articles/version-guide/">Επιλέγοντας τη Σωστή για Εσάς Έκδοση του &os;</ulink>.</para>
</note>
<para>Για περισσότερες πληροφορίες σχετικά με τα πακέτα, παρακαλούμε

View file

@ -1,17 +0,0 @@
# $FreeBSD$
#
# %SOURCE% en_US.ISO8859-1/articles/multi-os/Makefile
# %SRCID% 1.12
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,806 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-7" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EL" "../../share/sgml/entities.ent">
%entities;
]>
<!--
Εγκατάσταση και χρήση του FreeBSD μαζί με άλλα λειτουργικά συστήματα.
The FreeBSD Greek Documentation Project
%SOURCE% en_US.ISO8859-1/articles/multi-os/article.sgml
%SRCID% 1.39
$FreeBSD$
-->
<article lang="el">
<articleinfo>
<title>Εγκατάσταση και χρήση του FreeBSD μαζί με άλλα λειτουργικά συστήματα</title>
<authorgroup>
<author>
<firstname>Jay</firstname>
<surname>Richmond</surname>
<affiliation>
<address>
<email>jayrich@sysc.com</email>
</address>
</affiliation>
</author>
</authorgroup>
<pubdate>6 August 1996</pubdate>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.ibm;
&tm-attrib.linux;
&tm-attrib.microsoft;
&tm-attrib.powerquest;
&tm-attrib.general;
</legalnotice>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Αυτό το κείμενο περιγράφει πως μπορεί το FreeBSD να συνυπάρξει
αρμονικά με άλλα δημοφιλή λειτουργικά συστήματα, όπως το Linux, το
&ms-dos;, το &os2; και τα &windows;&nbsp;95. Για την βοήθειά τους στη
συγγραφή αυτού του κειμένου, θέλω να ευχαριστήσω τους:
Annelise Anderson <email>andrsn@stanford.edu</email>,
Randall Hopper <email>rhh@ct.picker.com</email>, και &a.jkh;.</para>
</abstract>
</articleinfo>
<sect1>
<title>Περίληψη</title>
<para>Οι περισσότεροι άνθρωποι δεν μπορούν να στήσουν παραπάνω από ένα
λειτουργικό σύστημα χωρίς μεγάλο δίσκο, γι αυτό παρακάτω θα βρείτε και
πληροφορίες για μεγάλους EIDE δίσκους. Επειδή υπάρχουν πάρα πολλοί
συνδυασμοί από πιθανά λειτουργικά συστήματα και ρυθμίσεις σκληρών
δίσκων, το τμήμα <xref linkend="ch5"/> είναι το πιο χρήσιμο.
Περιγράφει συγκεκριμένα παραδείγματα από εγκαταστάσεις, που δουλεύουν
χρησιμοποιώντας περισσότερα από ένα λειτουργικά συστήματα.</para>
<para>Αυτό το κείμενο θεωρεί δεδομένο ότι έχετε ήδη κάνει χώρο στο δίσκο
σας για κάποιο πρόσθετο λειτουργικό σύστημα. Κάθε φορά που αλλάζετε
τις κατατμήσεις του δίσκου σας υπάρχει ο κίνδυνος να χάσετε ή να
καταστρέψετε τα δεδομένα στις υπάρχουσες κατατμήσεις. Παρόλ' αυτά, αν ο
δίσκος σας αυτή τη στιγμή περιέχει μόνο DOS κατατμήσεις, μπορεί να σας
φανεί χρήσιμο το εργαλείο FIPS (περιέχεται στα CD-ROM εγκατάστασης του
FreeBSD, στον κατάλογο <filename class="directory">\TOOLS</filename>,
αλλά μπορείτε να το βρείτε και μέσω <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">ftp</ulink>).
Με το FIPS μπορείτε να αλλάξετε το μέγεθος των κατατμήσεων στο δίσκο
σας, χωρίς να καταστραφούν τα δεδομένα που υπάρχουν ήδη σε αυτόν.
Υπάρχει κι ένα εμπορικό πρόγραμμα, που λέγεται <application>&partitionmagic;</application>, το οποίο
επιτρέπει να αλλάξετε το μέγεθος που έχουν ή να σβήσετε τις κατατμήσεις
σας χωρίς δυσάρεστες συνέπειες.</para>
</sect1>
<sect1 id="ch2">
<title>Σύγκριση Διαχειριστών Εκκίνησης (boot managers)</title>
<para>Εδώ περιγράφονται κάποιοι από τους διάφορους διαχειριστές εκκίνησης
που μπορεί να συναντήσετε. Ανάλογα με τις ρυθμίσεις του υπολογιστή σας,
μπορεί να χρειαστεί να χρησιμοποιήσετε ένα ή περισσότερους στο ίδιο
σύστημα.</para>
<variablelist>
<varlistentry>
<term>Το Boot Easy</term>
<listitem>
<para>Αυτός είναι ο προκαθορισμένος διαχειριστής εκκίνησης που
χρησιμοποιείται με το FreeBSD. Έχει τη δυνατότητα να ξεκινήσει
σχεδόν όλα τα λειτουργικά συστήματα, συμπεριλαμβανομένων των BSD,
&os2; (HPFS), &windows;&nbsp;95 (FAT ή FAT32), και Linux. Η κατάτμηση που
θα χρησιμοποιηθεί διαλέγεται με τα πλήκτρα <keycap>F1</keycap>,
<keycap>F2</keycap>, &hellip;.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Ο διαχειριστής εκκίνησης του &os2;</term>
<listitem>
<para>Αυτός ο διαχειριστής εκκίνησης μπορεί να ξεκινήσει κατατμήσεις
τύπου FAT, FAT32, HPFS, FFS (FreeBSD) και EXT2 (Linux).
Η κατάτμηση που θα ξεκινήσει
επιλέγεται με τα βελάκια. Ο διαχειριστής εκκίνησης του &os2; είναι
ο μόνος που χρησιμοποιεί το δικό του ξεχωριστό χώρο στο δίσκο για
να κρατάει πληροφορίες, αντίθετα με όλους τους άλλους που
χρησιμοποιούν το master boot record (MBR). Γι αυτό πρέπει να
εγκαθίσταται σε περιοχή κοντά στην αρχή του δίσκου, πριν από τον
κύλινδρο 1024, ώστε να αποφεύγονται προβλήματα κατά την εκκίνηση.
Μπορεί να ξεκινήσει και το Linux με χρήση του LILO, όταν το LILO
δεν έχει εγκατασταθεί στο MBR αλλά στο boot record της Linux
κατάτμησης. Διαβάστε περισσότερα για τη χρήση του διαχειριστή
εκκίνησης &os2; με Linux στα <ulink
url="http://www.linuxresources.com/LDP/HOWTO/HOWTO-INDEX.html">Linux
HOWTOs</ulink>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>OS-BS</term>
<listitem>
<para>Εναλλακτικός διαχειριστής που μπορείτε να χρησιμοποιήσετε αντί
για το Boot Easy. Δίνει μεγαλύτερο έλεγχο της διαδικασίας
εκκίνησης, με δυνατότητα να αλλάξετε την προκαθορισμένη κατάτμηση
και τον χρόνο αναμονής. Οι beta εκδόσεις του προγράμματος
επιλέγουν την επιλογή της κατάτμησης με τα βελάκια. Μπορείτε να
βρείτε τον OS-BS στα CD εγκατάστασης του FreeBSD, στον κατάλογο
<filename class="directory">\TOOLS</filename> ή να τον κατεβάσετε μέσω
<ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">ftp</ulink>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>LILO, ή LInux LOader</term>
<listitem>
<para>Αυτός είναι ένας διαχειριστής εκκίνησης με
περιορισμένες δυνατότητες. Μπορεί να ξεκινήσει και το
FreeBSD, αν και χρειάζεται κάποιες αλλαγές στο αρχείο
ρυθμίσεων του LILO.</para>
</listitem>
</varlistentry>
</variablelist>
<note id="fat32">
<title>Σχετικά με το FAT32</title>
<para>Το FAT32 είναι το σύστημα αρχείων που άρχισε να
χρησιμοποιείται στην έκδοση OEM SR2 των &windows;&nbsp;95 της
Microsoft, περίπου στα τέλη του 1996. Είναι μια εξέλιξη του
FAT συστήματος αρχείων, που επιτρέπει τη χρήση μικρότερου
μεγέθους cluster σε μεγάλους δίσκους. Έχει κάποιες διαφορές
όμως στη μορφή του boot sector και του allocation table, που
το κάνουν ασύμβατο με κάποιους διαχειριστές εκκίνησης.</para>
</note>
</sect1>
<sect1 id="ch3">
<title>Μια τυπική εγκατάσταση</title>
<para>Ας πούμε ότι έχετε δυο μεγάλους EIDE σκληρούς δίσκους, και θέλετε να
εγκαταστήσετε σε αυτούς FreeBSD, Linux και &windows;&nbsp;95.</para>
<para>Παρακάτω θα δούμε πως εγώ (ΣΤΜ: ο συγγραφέας του άρθρου, Jay
Richmond) θα χρησιμοποιούσα αυτούς τους δίσκους:</para>
<itemizedlist>
<listitem>
<para><filename>/dev/wd0</filename> (πρώτος φυσικός δίσκος)</para>
</listitem>
<listitem>
<para><filename>/dev/wd1</filename> (δεύτερος φυσικός δίσκος)</para>
</listitem>
</itemizedlist>
<para>Και οι δυο δίσκοι έχουν 1416 κυλίνδρους ο καθένας.</para>
<procedure>
<step>
<para>Ξεκινάω από μια δισκέττα εκκίνησης MS-DOS ή &windows;&nbsp;95 που
περιέχει το πρόγραμμα <filename>FDISK.EXE</filename> και δημιουργώ
μια μικρή κατάτμηση των 50&nbsp;MB (35-40 για τα &windows;&nbsp;95,
και λίγο ελεύθερο χώρο) στον πρώτο δίσκο. Επίσης δημιουργώ μια
μεγαλύτερη κατάτμηση στον δεύτερο δίσκο, για τα υπόλοιπα δεδομένα
και τις εφαρμογές των &windows;.</para>
</step>
<step>
<para>Κάνω επανεκκίνηση και στήνω τα &windows;&nbsp;95 στην κατάτμηση
<filename>C:</filename>.</para>
</step>
<step>
<para>Το επόμενο βήμα είναι να στήσω το Linux. Δεν είμαι σίγουρος για
όλες τις διανομές του Linux, αλλά τουλάχιστον το <ulink url="http://www.slackware.com">Slackware</ulink>
χρησιμοποιεί το LILO (βλ. <xref linkend="ch2"/>). Όταν δημιουργώ
κατατμήσεις στο δίσκο μου με το <command>fdisk</command> πρόγραμμα
του Linux, τοποθετώ όλο το Linux στον πρώτο δίσκο (μια κατάτμηση των
300&nbsp;MB φτάνει για ένα καλό root partition και λίγο swap).</para>
</step>
<step>
<para>Αφού στήσω το Linux, την ώρα που με ρωτάει για να στήσει το
LILO, <emphasis>προσέχω</emphasis> να στήσω το LILO στο boot sector
της Linux κατάτμησής μου, κι όχι στο MBR (master boot record).</para>
</step>
<step>
<para>Ο υπόλοιπος χώρος του δίσκου μπορεί να χρησιμοποιηθεί από το
FreeBSD. Προσέχω η κατάτμηση στην οποία βρίσκεται το root σύστημα
αρχείων του FreeBSD μου να μην υπερβαίνει τον κύλινδρο 1024. (Ο
κύλινδρος 1024 είναι περίπου στα 528&nbsp;MB στους υποθετικούς μας
δίσκους των 720&nbsp;MB.) Θα χρησιμοποιήσω τον υπόλοιπο δίσκο
(περίπου 270&nbsp;MB) για τα συστήματα αρχείων
<filename class="directory">/</filename> και
<filename class="directory">/usr</filename> αν χρειαστεί.
Ο υπόλοιπος χώρος του δεύτερου σκληρού δίσκου (το μέγεθος εξαρτάται
από το χώρο που θα αφήσω για τις εφαρμογές των &windows;, που
δημιούργησα στο βήμα 1) μπορεί να χρησιμοποιηθεί για το σύστημα
αρχείων <filename class="directory">/usr/src</filename> και σαν
δευτερεύουσα μνήμη (swap space).</para>
</step>
<step>
<para>Όταν βλέπω τους δίσκους με το πρόγραμμα <command>fdisk</command>
των &windows;&nbsp;95, θα πρέπει να φαίνονται όπως παρακάτω:</para>
<screen>---------------------------------------------------------------------
Display Partition Information
Current fixed disk drive: 1
Partition Status Type Volume_Label Mbytes System Usage
C: 1 A PRI DOS 50 FAT** 7%
2 A Non-DOS (Linux) 300 43%
Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
Press Esc to continue
---------------------------------------------------------------------
Display Partition Information
Current fixed disk drive: 2
Partition Status Type Volume_Label Mbytes System Usage
D: 1 A PRI DOS 420 FAT** 60%
Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
Press Esc to continue
---------------------------------------------------------------------</screen>
<para>** Εδώ μπορεί ο τύπος κατάτμησης να είναι FAT16 ή FAT32 αν
χρησιμοποιείται η έκδοση OEM SR2 των &windows;.
Βλ.&nbsp;<xref linkend="ch2"/>.</para>
</step>
<step>
<para>Εγκαθιστώ το FreeBSD. Πριν την εγκατάσταση βεβαιώνομαι ότι ο
πρώτος δίσκος είναι δηλωμένος σαν <quote>NORMAL</quote> στο BIOS.
Αν δεν είναι, μπορεί να χρειαστεί να δώσω την κανονική γεωμετρία του
δίσκου όταν ξεκινάει ο υπολογιστής (για να βρείτε τη γεωμετρία του
δίσκου, ξεκινήστε τον υπολογιστή σας με τα &windows;&nbsp;95 και
τρέξτε το πρόγραμμα Microsoft Diagnostics
(<filename>MSD.EXE</filename>),ή ελέγξτε το BIOS). Τη γεωμετρία
του δίσκου θα την δώσετε με την παράμετρο
<literal>hd0=1416,16,63</literal>, όπου
<replaceable>1416</replaceable> είναι ο αριθμός των κυλίνδρων του
σκληρού δίσκου, <replaceable>16</replaceable> είναι ο αριθμός των
κεφαλών σε κάθε track και <replaceable>63</replaceable> είναι ο
αριθμός των sectors σε κάθε track του δίσκου.</para>
</step>
<step>
<para>Όταν φτιάξω τις κατατμήσεις στο δίσκο μου, προσέχω να
εγκατασταθεί το Boot Easy στον πρώτο δίσκο. Δεν έχει σημασία να
κάνω το ίδιο για τον δεύτερο δίσκο, αφού τίποτα δεν ξεκινάει από
αυτόν.</para>
</step>
<step>
<para>Όταν κάνω επανεκκίνηση, το Boot Easy θα πρέπει να αναγνωρίσει
τις τρεις κατατμήσεις από τις οποίες μπορεί να ξεκινήσει ο
υπολογιστής σαν DOS (&windows;&nbsp;95), Linux, και BSD (FreeBSD).</para>
</step>
</procedure>
</sect1>
<sect1 id="ch4">
<title>Ειδικές Παρατηρήσεις</title>
<para>Τα πιο πολλά λειτουργικά συστήματα είναι πολύ αυστηρά σχετικά με τη
θέση και τον τρόπο που τοποθετούνται στον δίσκο. Τα &windows;&nbsp;95 και το
DOS απαιτούν να είναι στην πρώτη κύρια κατάτμηση (primary partition) του
πρώτου σκληρού δίσκου. Το &os2; αποτελεί εξαίρεση. Μπορεί να
εγκατασταθεί σε οποιοδήποτε δίσκο, σε κύρια ή εκτεταμένη κατάτμηση. Αν
δεν είστε σίγουροι, κρατήστε την αρχή της κατάτμησης εκκίνησης σε
κύλινδρο μικρότερο από τον 1024.</para>
<para>Αν εγκαταστήσετε τα &windows;&nbsp;95 σε ένα υπάρχον BSD σύστημα, θα
<emphasis>καταστρέψει</emphasis> το MBR και θα πρέπει να ξαναστήσετε τον
προηγούμενο boot manager σας. Το Boot Easy μπορεί να εγκατασταθεί
χρησιμοποιώντας το πρόγραμμα <filename>BOOTINST.EXE</filename> που
υπάρχει στον κατάλογο <filename class="directory">\TOOLS</filename> του
CD-ROM κα στηνν διεύθυνση <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">ftp</ulink>.
Μπορείτε επίσης να ξεκινήσετε πάλι την διαδικασία εγκατάστασης και να
πάτε στον partition editor. Από εκεί, σημειώστε την κατάτμηση του
FreeBSD σαν bootable, επιλέξτε Boot Manager, και τότε δώστε W για να
γράψετε ((W)rite) τις πληροφορίες στο MBR. Μπορείτε τώρα να κάνετε
επανεκκίνηση και το Boot Easy θα πρέπει να αναγνωρίσει τηνν κατάτμηση
των &windows;&nbsp;95 σαν DOS.</para>
<para>Σημειώστε εδώ ότι το &os2; μπορεί να διαβάσει FAT ή HPFS κατατμήσεις,
αλλά όχι κατατμήσεις τύπου FFS (FreeBSD) ή EXT2 (Linux). Αντίστοιχα, τα
&windows;&nbsp;95 μπορούν να διαβάσουν μόνο FAT και FAT32 συστήματα αρχείων
(βλ. <xref linkend="ch2"/>). Το FreeBSD μπορεί να διαβάσει τα
περισσότερα συστήματα αρχείων, αλλά αυτή τη στιγμή δεν μπορεί να
διαβάσει HPFS κατατμήσεις. Το Linux μπορεί να διαβάσει κατατμήσεις
τύπου HPFS, αλλά δεν μπορεί να γράψει σε αυτές. Σχετικά πρόσφατες
εκδόσεις του Linux πηρύνα (2.x) μπορούν να διαβάσουν και να γράψουν από
&windows;&nbsp;95 κατατμήσεις τύπου VFAT (το VFAT είναι περίπου σαν το FAT, με
πιο ουσιαστική διαφορά τα μεγάλα ονόματα αρχείων). Το Linux μπορεί να
διαβάσει και να γράψει στα περισσότερα συστήματα αρχείων. Το καταλάβατε
αυτό; Ελπίζω ναι.</para>
</sect1>
<sect1 id="ch5">
<title>Παραδείγματα</title>
<para><emphasis>(Αυτό το τμήμα χρειάζεται βελτιώσεις,
παρακαλώ στείλε τα παραδείγματά σας στην διεύθυνση
<email>jayrich@sysc.com</email>)</emphasis>.</para>
<para>FreeBSD + Win95: Αν εγκαταστήσετε το FreeBSD μετά από τα &windows;&nbsp;95,
θα πρέπει να δείτε μια κατάτμηση <literal>DOS</literal> στο μενού
επιλογών του Boot Easy. Αυτή είναι η κατάτμηση των &windows;&nbsp;95.
Αν εγκαταστήσετε τα &windows;&nbsp;95 μετά από το FreeBSD, διαβάστε παραπάνω
<xref linkend="ch4"/>. Αν ο δίσκος σας δεν έχει παραπάνω από 102
κυλίνδρους, δεν θα πρέπει να έχετε πρόβλημα να ξεκινήσετε κάποιο από τα
λειτουργικά συστήματα. Αν όμως κάποια από τις κατατμήσεις σας βρίσκεται
σε κύλινδρο μετά από τον 1024ο κύλινδρο του δίσκου, και παίρνετε
μηνύματα όπως <errorname>invalid system disk</errorname> κάτω από το DOS
(&windows;&nbsp;95) ή το FreeBSD δεν ξεκινάει, δοκιμάστε να ψάξετε στο BIOS σας
για μια επιλογή με όνομα <quote>&gt; 1024 cylinder support</quote> ή
<quote>NORMAL/LBA mode</quote>. Το DOS μπορεί να χρειάζεται να
ενεργοποιήσετε την επιλογή LBA (Logical Block Addressing) για να
ξεκινήσει σωστά. Αν η ιδέα της αλλαγής σε LBA mode κάθε φορά που θέλετε
να ξεκινήσετε το DOS δεν σας αρέσει πολύ, μπορείτε να ξεκινήσετε το
FreeBSD από το DOS χρησιμοποιώντας το πρόγραμμα
<filename>FBSDBOOT.EXE</filename> από το CD (αυτό πρέπει να βρει μόνο
του και να ξεκινήσει την FreeBSD κατάτμησή σας).</para>
<para>FreeBSD + &os2; + Win95: Τίποτα διαφορετικό εδώ. Ο boot manager του
&os2; μπορεί να ξεκινήσει οποιοδήποτε από αυτά τα λειτουργικά συστήματα,
οπότε δεν θα έχετε πρόβλημα.</para>
<para>FreeBSD + Linux: Μπορείτε να χρησιμοποιήσετε το Boot Easy για να
ξεκινήσετε αυτά τα δυο λειτουργικά συστήματα.</para>
<para>FreeBSD + Linux + Win95: (βλ. <xref linkend="ch3"/>)</para>
</sect1>
<sect1 id="sources">
<title>Διάφορες Πηγές Βοήθειας</title>
<para>Υπάρχουν πολλά κείμενα HOWTO στην συλλογή των <ulink
url="http://www.linuxresources.com/LDP/HOWTO/HOWTO-INDEX.html">Linux
HOW-TOs</ulink> που αναφέρονται στο θέμα των πολλαπλών λειτουργικών
στον ίδιο σκληρό δίσκο.</para>
<para>Το κείμενο <ulink
url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+DOS+Win95+OS2.html">Linux+DOS+Win95+OS2
mini-HOWTO</ulink> προσφέρει βοήθεια για τις ρυθμίσεις του &os2; boot
manager, και το κείμενο <ulink
url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+FreeBSD.html">Linux+FreeBSD
mini-HOWTO</ulink> μπορεί να σας ενδιαφέρει αρκετά. Ένα άλλο κείμενο
που είναι χρήσιμο είναι το <ulink
url="http://www.in.net/~jkatz/win95/Linux-HOWTO.html">Linux-HOWTO</ulink>.</para>
<para>Ο οδηγός <ulink
url="http://www.tburke.net/info/ntldr/ntldr_hacking_guide.htm">The NTLDR
Hacking Guide</ulink> περιέχει πολλές πληροφορίες για την
εκκίνηση των &windows;&nbsp;NT, '95 και του DOS μαζί με άλλα λειτουργικά
συστήματα.</para>
<para>Και η συλλογή οδηγών <quote>How It Works</quote> του Hale Landis
περιέχει κάποιες χρήσιμες πληροφορίες σχετικά με την γεωμετρία των
δίσκων και την εκκίνηση των υπολογιστών. Μπορείτε να βρείτε αυτή τη
συλλογή στην διεύθυνση
<ulink url="ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip"></ulink>.</para>
<para>Τέλος, μην ξεχνάτε την τεκμηρίωση του πηρύνα του FreeBSD για την
διαδικασία εκκίνησης, που διανέμεται μαζί με τον πηγαίο κώδικα
(αποσυυμπιέζεται στο αρχείο <ulink
url="/usr/src/sys/i386/boot/biosboot/README.386BSD"></ulink>.</para>
</sect1>
<sect1>
<title>Τεχνικές Λεπτομέρειες</title>
<para><emphasis>(Γράφτηκε από τον Randall Hopper,
<email>rhh@ct.picker.com</email>)</emphasis></para>
<para>Αυτό το τμήμα προσπαθεί να σας δώσει αρκετές από τις βασικές
πληροφορίες για τους σκληρούς δίσκους σας και την διαδικασία εκκίνησης
ώστε να μπορείτε να αντιμετωπίσετε τα πιο πολλά από τα προβλήματα που
μπορεί να συναντήσετε καθώς προσπαθείτε να εγκαταστήσετε ένα ή
περισσότερα λειτουργικά συστήματα. Ξεκινά με πολύ βασικά πράγματα,
οπότε μπορείτε να αγνοήσετε τα πρώτα μέρη και να αρχίσετε να διαβάζετε
αργότερα, όταν φανεί ότι αυτά που γράφονται δεν σας είναι ήδη
γνωστά.</para>
<sect2>
<title>Σκληροί Δίσκοι</title>
<para>Τρεις βασικοί όροι χρησιμοποιούνται για να περιγράψουν τη θέση των
δεδομένων στο σκληρό δίσκο σας: οι κύλινδροι (cylinders), οι κεφαλές
(heads) και οι τομείς (sectors). Δεν είναι ιδιαίτερα σημαντικό να
γνωρίζετε τι ακριβώς σημαίνουν αυτοί οι όροι, εκτός από το γεγονός ότι
προσδιορίζουν την φυσική θέση των δεδομένων στο δίσκο σας.</para>
<para>Ο δίσκος σας έχει ένα συγκεκριμένο αριθμό από κυλίνδρους, ένα
αριθμό από κεφαλές και κάποιο αριθμό από τομείς σε κάθε ζευγάρι
κυλίνδρου-κεφαλής (το ζευγάρι κυλίνδρου-κεφαλής είναι γνωστό και ως
μονοπάτι ή track). Συνολικά αυτές οι πληροφορίες ορίζουν την
<quote>φυσική γεωμετρία δίσκου</quote> του σκληρού δίσκου. Το τυπικό
μέγεθος ενός τομέα είναι 512 bytes και συνήθως υπάρχουν 63 τομείς σε
κάθε μονοπάτι. Ο αριθμός των κεφαλώ και κυλίδρων διαφέρει αρκετά από
δίσκο σε δίσκο. Έτσι μπορείτε να υπολογίσετε τον αριθμό των bytes που
χωράνε να αποθηκευθούν στο δίσκο σας υπολογίζοντας την τιμή:</para>
<informalexample>
<para>(κύλινδροι) &times; (κεφαλές) &times; (63
τομείς/μονοπάτι) &times; (512 bytes/τομέα)</para>
</informalexample>
<para>Για παράδειγμα, στον 1.6 GigWestern Digital AC31600 EIDE σκληρό
δίσκο μου, αυτές οι τιμές είναι:</para>
<informalexample>
<para>(3148 cyl) &times; (16 heads) &times; (63
sectors/track) &times; (512 bytes/sect)</para>
</informalexample>
<para>που μας δίνει 1.624.670.208 bytes, ή περίπου 1.6 Gig.</para>
<para>Μπορείτε να βρείτε την φυσική γεωμετρία του δίσκου σας (τον αριθμό
των κυλίνδρων, των κεφαλών και το πλήθος των τομέων ανά μονοπάτι)
χρησιμοποιώντας το πρόγραμμα ATAID ή άλλα προγράμματα που είναι
διαθέσιμα μέσω δικτύου. Προσοχή όμως. Αν έχετε ενεργοποιήσει την
πρόσβαση με LBA στο BIOS σας (βλ. <xref linkend="limits"/>), δεν
μπορείτε να χρησιμοποιήσετε οποιοδήποτε πρόγραμμα για να διαβάσετε την
φυσική γεωμετρία του δίσκου. Αυτό συμβαίνει γιατί πολλά προγράμματα
(π.χ. το <filename>MSD.EXE</filename> ή το fdisk του FreeBSD) δεν
διαβάζουν την φυσική γεωμετρία του δίσκου, αλλά την
<firstterm>μεταφρασμένη γεωμετρία</firstterm> (εικονικούς αριθμούς που
προκύπτουν από την χρήση LBA πρόσβασης). Δείτε παρακάτω τι σημαίνει
αυτό.</para>
<para>Κάτι άλλο που είναι χρήησιμο γι αυτούς τους όρους. Με μια τριάδα
αριθμών&mdash;ένα αριθμό κυλίνδρου, ένα αριθμό κεφαλής κι ένα αριθμό
τομέα μέσα στο μονοπάτι&mdash;μπορείτε να αναφερθείτε στην φυσική θέση
ενός συγκεκριμένου τομέα του δίσκου σας (ένα μπλοκ δεδομένων, μεγέθους
512 bytes). Οι κύλινδροι και οι κεφαλές έχουν αριθμούς από 0 και
πάνω, ενώ οι τομείς από 1 και πάνω.</para>
<para>Για αυτούς που ενδιαφέρονται για περισσότερες τεχνικές
λεπτομέρειες, πληροφορίες για την γεωμετρία των δίσκων, τους τομείς
εκκίνησης (boot sectors), τα BIOS, κλπ. μπορούν να βρεθούν σε πολλά
μέρη στο διαδίκτυο. Ψάξτε στο Lycos, στο Yahoo, κλπ. για
<literal>boot sector</literal> ή για <literal>master boot
record</literal>. Ανάμεσα στις χρήσιμες πληροφορίες θα βρείτε και την
σειρά κειμένων <citetitle>How It Works</citetitle> του Hale Landis.
Δείτε το τμήμα <xref linkend="sources"/> για περισσότερες λεπτομέρειες
κι αναφορές σε πηγές.</para>
<para>Ok, αρκετά με την ορολογία. Υποτίθεται μιλάμε για την διαδικασίας
εκκίνησης.</para>
</sect2>
<sect2 id="booting">
<title>Η διαδικασία Εκκίνησης</title>
<para>Στον πρώτο τομέα του δίσκου (Κυλ. 0, Κεφαλή 0, Τομέας 1) υπάρχει ο
Κύριος Τομέας Εκκίνησης (Master Boot Record ή MBR). Περιέχει ένα
χάρτη του δίσκου. Ορίζει μέχρι 4 <firstterm>κατατμήσεις</firstterm>
(partitions), κάθε μια από τις οποίες είναι ένα συνεχές κομμάτι του
δίσκου. Το FreeBSD ονομάζει τις κατατμήσεις
<firstterm>slices</firstterm> για να αποφύγει την σύγχυση με τα δικά
του partitions, αλλά δεν θα το κάνουμε αυτό εδώ. Κάθε κατάτμηση
μπορεί να περιέχει το δικό της, ξεχωριστό λειτουργικό σύστημα.</para>
<para>Κάθε εγγραφή κατάτμησης στο MBR έχει ένα <firstterm>Partition
ID</firstterm>, ένα <firstterm>αρχικό κύλινδρο</firstterm> και ένα
<firstterm>τελικό κύλινδρο/κεφαλή/τομέα</firstterm>. Το Partition ID
ορίζει τι τύπου είναι η κατάτμηση (τι λειτουργικό σύστημα περιέχει)
και η αρχή/τέλος ορίζουν που βρίσκεται. Ο <xref linkend="tbl-pid"/>
δείχνει κάποιους από τους πιο κοινούς τύπους κατάτμησης.</para>
<table id="tbl-pid">
<title>Τύποι κατατμήσεων</title>
<tgroup cols="2">
<thead>
<row>
<entry>Τύπος (στο δεκαεξαδικό)</entry>
<entry>Περιγραφή</entry>
</row>
</thead>
<tbody>
<row>
<entry>01</entry>
<entry>Κύρια κατάτμηση DOS12 (12-bit FAT)</entry>
</row>
<row>
<entry>04</entry>
<entry>Κύρια κατάτμηση DOS16 (16-bit FAT)</entry>
</row>
<row>
<entry>05</entry>
<entry>Εκτεταμένη κατάτμηση DOS</entry>
</row>
<row>
<entry>06</entry>
<entry>Κύρια κατάτμηση DOS μεγάλυ μεγέθους (&gt; 32MB)</entry>
</row>
<row>
<entry>0A</entry>
<entry>&os2;</entry>
</row>
<row>
<entry>83</entry>
<entry>Linux (EXT2FS)</entry>
</row>
<row>
<entry>A5</entry>
<entry>FreeBSD, NetBSD, 386BSD (UFS)</entry>
</row>
</tbody>
</tgroup>
</table>
<para>Σημειώστε πως δεν είναι δυνατή η εκκίνηση από οποιοδήποτε τύπο
κατάτμησης (π.χ. από εκτεταμένες κατατμήσεις DOS). Από κάποιους
τύπους γίνεται, από άλλους όχι. Αυτό που κάνει δυνατή την εκκίνηση
από μια κατάτμηση είναι οι ρυθμίσεις του <firstterm>Τομέα Εκκίνησης
Κατάτμησης</firstterm> που βρίσκεται στην αρχή κάθε κατάτμησης.</para>
<para>Όταν ρυθμίσετε τον boot manager της προτιμήσεώς σας, αυτός ψάχνει
όλες τις εγγραφές κατατμήσεων τον πίνακα MBR όλων των δίσκων σας και
σας δίνει τη δυνατότητα να ονομάσετε εγγραφές από τη λίστα. Έτσι,
μόλις ξεκινάτε τον υπολογιστή σας, ειδικός κώδικας στο Master Boot
Sector του πρώτου δίσκου του συστήματος τρέχει και ξεκινάει τον boot
manager. Ο boot manager βρίσκει στον πίνακα MBR την εγγραφή για την
κατάτμηση που επιλέξατε, βρίσκει την αρχή και το τέλος της κατάτμησης,
φορτώνει στη μνήμη τονν Τομέα Εκκίνησης Κατάτμησης από αυτή την
κατάτμηση και περνάει τον έλεγχο σε αυτόν. Ο Τομέας Εκκίνησης της
κατάτμησης περιέχει αρκετές πληροφορίες για να ξεκινήσει να φορτώνει
το λειτουργικό σύστημα από αυτή την κατάτμηση.</para>
<para>Κάτι που δε το αναφέραμε με πολλές λεπτομέρειες είναι σημαντικό
και πρέπει να το ξέρετε. Όλοι οι δίσκοι σας έχουν MBR. Αλλά, ο
τομέας MBR που είναι σημαντικός είναι αυτός που είναι στον πρώτο δίσκο
του συστήματος που αναγνωρίζεται από το BIOS. Αν έχετε μόνο IDE
δίσκους είναι ο πρώτος IDE δίσκος (δηλ. ο κύριος δίσκος του πρώτου
ελεγκτή δίσκων). Αντίστοιχα για τα συστήματα που έχουν μόνο SCSI
δίσκους. Αν έχετε και IDE και SCSI δίσκους όμως, συνήθως είναι οι IDE
δίσκοι που αναγνωρίζονται πρώτα από το BIOS. Τότε ο boot manager
πρέπει να τοποθετηθεί στο MBR αυτού του δίσκου, όπως περιγράψαμε
πριν.</para>
</sect2>
<sect2 id="limits">
<title>Περιορισμοί Εκκίνησης και Προειδοποιήσεις</title>
<para>Και τώρα τα ενδιαφέροντα πράγματα για τα οποία θα πρέπει να
προσέχετε.</para>
<sect3>
<title>Το περίφημο όριο του κυλίνδρου 1024 και πως βοηθάει το LBA
BIOS</title>
<para>Το πρώτο κομμάτι της διαδικασίας εκκίνησης γίνεται εξ' ολοκλήρου
μέσω του BIOS (αν αυτός είναι καινούριος όρος για σας, το BIOS είναι
ένα κομμάτι λογισμικού, αποθηκευμένο σε ένα chip της μητρικής
πλακέτας του συστήματός σας, που περιέχει τον κώδικα εκκίνησης του
σύστηματος). Γι αυτό το λόγο το πρώτο κομμάτι της εκκίνησης
υπόκειται στους περιορισμούς του BIOS.</para>
<para>Ο τρόπος με τον οποίο το BIOS καλείται να διαβάσει τον σκληρό
δίσκο σε αυτό το στάδιο της εκκίνησης (INT 13H, Συνάρτηση 2)
δεσμεύει 10 bits για τον αριθμό κυλίνδρου, 8 bits για τον αριθμό
κεφαλής και 6 bits για τον αριθμό τομέα. Αυτό περιορίζει κάπως τους
χρήστες αυτής της κλήσης (π.χ. τους boot managers που υπάρχουν στο
MBR του δίσκου σας, καθώς και τους loaders των λειτουργικών
συστημάτων που υπάρχουν στους άλλους τομείς εκκίνησης).
Τα όρια που επιβάλλει αυτή η κλήση είναι:</para>
<itemizedlist>
<listitem>
<para>μέγιστος αριθμός κυλίνδρων = 1024</para>
</listitem>
<listitem>
<para>μέγιστος αριθμός κεφαλώνν = 256 heads</para>
</listitem>
<listitem>
<para>μέγιστος αριθμός τομέων/μονοπάτι = 64 (βασικά 63, ο τομέας
<literal>0</literal> δεν είναι διαθέσιμος)</para>
</listitem>
</itemizedlist>
<para>Σήμερα οι δίσκοι είναι αρκετά μεγάλοι, και έχουν πάρα πολλούς
κυλίνδρους αλλά όχι πάρα πολλές κεφαλές. Έτσι λοιπόν, χωρίς
εξαίρεση, οι μεγάλοι σκληροί δίσκοι έχουν περισσότερους από 1024
κυλίνδρους. Αυτό σημαίνει πως το BIOS δεν μπορεί να εκκινήσει τον
υπολογιστή σας από οποιοδήποτε σημείο του δίσκου. Ο κώδικας
εκκίνησης (ο boot manager και ο OS loader που έχει εγκατασταθεί σε
όλες τις κατατμήσεις από τις οποίες θέλουμε να είναι δυνατή η
εκκίνηση) πρέπει να είναι κάτω από το όριο του κυλίνδρου 1024.
Γενικά, αν ο δίσκος σας είναι ένας τυπικός δίσκος κι έχει 16
κεφαλές, αυτό σημαίνει:</para>
<informalexample>
<para>1024 κυλ/δίσκο &times; 16 κεφαλές/δίσκο &times;
63 τομείς/(κυλ-κεφαλή) &times; 512 bytes/τομέα</para>
</informalexample>
<para>που είναι περίπου κοντά στο όριο των 528&nbsp;MB που συχνά θα
ακούσετε να αναφέρεται.</para>
<para>Εδώ είναι που η χρήση του BIOS LBA (Logical Block
Addressing&mdash;Λογική Διευθυνσιοδότηση Μπλοκ) έρχεται να μας
βοηθήσει. Η διευθυνσιοδότηση LBA δίνει στον χρήστη των κλήσεων του
BIOS API ένα τρόπο να προσπελάσει κυλίνδρους πάνω από τον κύλινδρο
1024 χρησιμοποιώντας τις ίδιες κλήσεις BIOS ορίζοντας διαφορετικά
τον κύλινδρο. Ορίζει μια διαφορετική οργάνωση των κυλίνδρων και των
κεφαλών, για να δώσει μέσω του BIOS διαφορετική μορφή στο δίσκο, με
λιγότερους κυλίνδρους και περισσότερες κεφαλές από ότι πραγματικά
έχει. Με λίγα λόγια, εκμεταλλεύεται το γεγονός ότι οι δίσκοι έχουν
σχετικά λίγες κεφαλές και πολύ περισσότερους κυλίνδρους αλλάζοντας
λίγο την ισορροπία μεταξύ του αριθμού των κυλίνδρων και του αριθμού
των κεφαλών, έτσι ώστε και οι δυο αριθμοί να φαίνονται κάτω από τα
όρια που αναφέραμε (1024 κύλινδροι, 256 κεφαλές).</para>
<para>Με χρήση BIOS LBA, το όριο μεγέθους του δίσκου δεν είναι πλέον
εμπόδιο (τουλάχιστον, όχι μέχρι τα 8 Gigabytes). Αν έχετε LBA BIOS,
μπορείτε να βάλετε το FreeBSD ή οποιοδήποτε άλλο λειτουργικό σύστημα
οπουδήποτε θέλετε και να μην περιορίζεστε από το όριο του κυλίνδρου
1024.</para>
<para>Για να χρησιμοποιήσω ξανά τον 1.6 Gig Western Digital δίσκο μου
σαν παράδειγμα, η φυσική γεωμετρία του είναι:</para>
<informalexample>
<para>(3148 κυλ, 16 κεφ, 63 τομείς/μονοπάτι, 512 bytes/τομέα)</para>
</informalexample>
<para>Αλλά, η διευθυνσιοδότηση LBA του BIOS τον αλλάζει σε:</para>
<informalexample>
<para>(787 κυλ, 64 κεφ, 63 τομείς/μονοπάτι, 512 bytes/τομέα)</para>
</informalexample>
<para>δίνοντας πρακτικά το ίδιο μέγεθος δίσκου, αλλά με τους αριθμούς
κυλίνδρων και κεφαλών μέσα στα όρια των κλήσεων του BIOS API
(Παρεπιπτόντως, έχω στήσει και Linux και FreeBSD σε ένα από τουυς
δίσκους μου, πάνω από το όριο του κυλίνδρου 1024. Και τα δυο
λειτουργικά συστήματα δουλεύουν μια χαρά, χάρη στην διευθυνσιοδότηση
LBA του BIOS).</para>
</sect3>
<sect3>
<title>Boot Managers και Κατανομή Δίσκων</title>
<para>Ένα άλλο σημαντικό σημείο που αξίζει να προσέξετε όταν στήνετε
κάποιο boot manager είναι να κρατήσετε αρκετό χώρο για τον boot
manager. Είναι καλύτερα να τοο ξέρετε αυτό από την αρχή για να
γλιτώσετε από τον κόπο της επανεγκατάστασης ενός η περισσότερων από
τα λειτουργικά συστήματά σας.</para>
<para>Αν ακολουθήσατε τις οδηγίες στο <xref linkend="booting"/> σχετικά
με το MBR (που είναι το MBR), τους Τομείς Εκκίνησης, και την
διαδικασία εκκίνησης, μπορεί να αναρωτιέστε ήδη που ακριβώς στον
δίσκο σας υπάρχει αυτός ο καλός boot manager. Ε λοιπόν, κάποιοι
boot managers είναι αρκετά μικροί ώστε να χωρέσουν μέσα στον Κύριο
Τομέα Εκκίνησης (MBR. Κύλινδρος 0, κεφαλή 0, τομέας 1) μαζί με τον
πίνακα κατατμήσεων. Κάποιοι άλλοι χρειάζονται περισσότερο χώρο και
ουσιαστικά καταλαμβάνουν αρκετούς τομείς μετά τον MBR, μέσα στο
μονοπάτι με κύλινδρο 0 και κεφαλή 0, αφού τυπικά αυτός ο χώρος είναι
ελεύθερος&mdash;τυπικά.</para>
<para>Εδώ είναι κι η παγίδα. Κάποια λειτουργικά συστήματα (ένα από
αυτά είναι και το FreeBSD) σας επιτρέπουν να ξεκινήσετε την
κατάτμησή τους ακριβώς μετά το MBR στον κύλινδρο 0, κεφαλή 0, και
τομέα 2 αν θέλετε. Για παράδειγμα, αν δώσετε το sysinstall
πρόγραμμα εγκατάστασης του FreeBSD ένα δίσκο με άδειο χώρο στην αρχή
του δίσκου ή ένα τελείως άδειο δίσκο, εκεί θα προσπαθήσει να βάλει
την κατάτμηση του FreeBSD (τουλάχιστον αυτό έκανε όταν την πάτησα
εγώ). Έτσι, όταν πάτε να στήσετε τον boot manager σας, αν χρειαστεί
να πιάσει κάποιους τομείς αμέσως μετά το MBR, θα σβηστεί η αρχή της
πρώτης κατάτμησης με δεδομένα. Στην περίπτωση του FreeBSD, αυτό
καταστρέφει την περιοχή του disklabel, κάνοντας αδύνατη την εκκίνηση
από αυτή την κατάτμηση.</para>
<para>Η εύκολη λύση για να αποφύγετε τέτοια προβλήματα (και να
κρατήσετε για τον εαυτό σας την δυνατότητα χρήσης κάποιου
διαφορετικού boot manager στο μέλλον) είναι να αφήνετε πάντα
ελεύθερο το πρώτο μονοπάτι όταν φτιάχνετε κάποιες κατατμήσεις στο
δίσκο σας. Με λίγα λόγια, αφήστε ελεύθερο τον χώρο από τον
κύλινδρο&nbsp;0, κεφαλή&nbsp;0, τομέα&nbsp;2 μέχρι και τον
κύλινδροnbsp;0, κεφαλή&nbsp;1, τομέα&nbsp;1. Βασικά, όταν φτιάχνετε
κατατμήσεις στην αρχή του δίσκου με το DOS, το DOS αφήνει αυτό τονν
χώρο ελεύθερο (γι αυτό και πολλοί boot manager θεωρούν ότι θα είναι
ελεύθερος). Αν φτιάξετε μια μικρή κατάτμηση DOS στην αρχή του
δίσκου σας δεν θα συναντήσετε αυτό το πρόβλημα. Προσωπικά μ' αρέσει
να δημιουργώ στην αρχή μια μικρή κατάτμηση DOS μεγέθους 1 MB, καθώς
έτσι αποφεύγω και τις αλλαγές στα drive letter των κύριων DOS
κατατμήσεών μου αργότερα αν αλλάξω τις κατατμήσεις του δίσκου.</para>
<para>Αναφορικά, οι παρακάτω boot managers χρησιμοποιούν το Master
Boot Sector αποθηκεύσουν δικό τους κώδικα ή/και δεδομένα:</para>
<itemizedlist>
<listitem>
<para>OS-BS 1.35</para>
</listitem>
<listitem>
<para>Boot Easy</para>
</listitem>
<listitem>
<para>LILO</para>
</listitem>
</itemizedlist>
<para>Αυτοί οι boot managers χρησιμοποιούν και λίγους ακόμα τομείς
μετά το Master Boot Sector:</para>
<itemizedlist>
<listitem>
<para>OS-BS 2.0 Beta 8 (sectors 2-5)</para>
</listitem>
<listitem>
<para>&os2;'s boot manager</para>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Τι γίνεται αν ο υπολογιστής σας δεν ξεκινάει;</title>
<para>Κάποια στιγμή, καθώς στήνετε διάφορους boot managers, μπορεί να
αφήσετε το MBR σε τέτοια κατάσταση που να μην είναι δυνατόν να
ξεκινήσετε τον υπολογιστή σας. Αυτό είναι απίθανο, αλλά μπορεί να
γίνει καθώς αλλάζετε κατατμήσεις μετά από την εγκατάσταση ενός boot
manager.</para>
<para>Αν έχετε κάποια bootable DOS κατάτμηση στον δίσκο σας, μπορείτε
να ξεκινήσετε με μια δισκέττα εκκίνησης DOS και να τρέξετε:</para>
<informalexample>
<screen>A:\> <userinput>FDISK /MBR</userinput></screen>
</informalexample>
<para>για να επαναφέρετε τον αρχικό, απλό κώδικα εκκίνησης του DOS στο
σύστημά σας. Μπορείτε τότε να ξεκινήσετε με το DOS (και μόνο με το
DOS) από το σκληρό σας δίσκο. Εναλλακτικά, μπορείτε να ξανατρέξετε
το πρόγραμμα εγκατάστασης του boot manager σας από μια δισκέττα
εκκίνησης.</para>
</sect3>
</sect2>
</sect1>
</article>

View file

@ -1348,18 +1348,6 @@ File: +DESC (ignored)</screen>
</answer>
</qandaentry>
<qandaentry>
<question id="multiboot">
<para>Ìðïñþ íá Ý÷ù ðåñéóóüôåñá áðü Ýíá ëåéôïõñãéêÜ óõóôÞìáôá óôïí
õðïëïãéóôÞ ìïõ;</para>
</question>
<answer>
<para>Ñßîôå ìéá ìáôéÜ óôçí <ulink
url="&url.articles.multi-os;/index.html">óåëßäá ðïëëáðëþí ëåéôïõñãéêþí</ulink>.</para>
</answer>
</qandaentry>
<qandaentry>
<question id="windows-coexist">
<para>Ìðïñïýí íá óõíõðÜñîïõí ôá &windows; ìå ôï &os;;</para>
@ -5195,18 +5183,6 @@ kern.sched.name: 4BSD</screen>
<title>Äßóêïé, ÓõóôÞìáôá Áñ÷åßùí êáé ÖïñôùôÝò Åêêßíçóçò</title>
<qandaset>
<qandaentry>
<question id="adding-disks">
<para>How can I add my new hard disk to my FreeBSD system?</para>
</question>
<answer>
<para>See the Disk Formatting Tutorial at <ulink
url="&url.articles.formatting-media;/index.html">
www.FreeBSD.org</ulink>.</para>
</answer>
</qandaentry>
<qandaentry>
<question id="new-huge-disk">
<para>How do I move my system over to my huge new disk?</para>
@ -5229,10 +5205,7 @@ kern.sched.name: 4BSD</screen>
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. See the <ulink
url="&url.articles.formatting-media;/index.html">
formatting-media article</ulink> for details on this
process.</para>
is done.</para>
<para>Now you have the new disk set up, and are ready
to move the data. Unfortunately, you cannot just blindly

View file

@ -1,19 +0,0 @@
#
# $FreeBSD$
#
# Article: FreeBSD 5-STABLE roadmap
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
CSS_SHEET_ADDITIONS= extra.css
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,633 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN" "../../share/sgml/entities.ent">
%entities;
<!ENTITY t.releng.3 "<literal>RELENG_3</literal>">
<!ENTITY t.releng.4 "<literal>RELENG_4</literal>">
<!ENTITY t.releng.5 "<literal>RELENG_5</literal>">
<!ENTITY t.releng.5.1 "<literal>RELENG_5_1</literal>">
<!ENTITY t.releng.5.2 "<literal>RELENG_5_2</literal>">
<!ENTITY t.releng.5.3 "<literal>RELENG_5_3</literal>">
<!ENTITY t.releng.head "<literal>HEAD</literal>">
]>
<article lang='en'>
<articleinfo>
<title>The Road Map for 5-STABLE</title>
<authorgroup>
<corpauthor>The &os; Release Engineering Team</corpauthor>
</authorgroup>
<copyright>
<year>2003</year>
<holder role="mailto:re@FreeBSD.org">The &os; Release
Engineering Team</holder>
</copyright>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.ieee;
&tm-attrib.intel;
&tm-attrib.sparc;
&tm-attrib.sun;
&tm-attrib.opengroup;
&tm-attrib.general;
</legalnotice>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para> This document is now mostly of historical value. It
presented a roadmap for the development of &os;'s &t.releng.5;
branch. It was originally written in February 2003 (between
the 5.0 and 5.1 releases), and was intended to provide a plan
for making the &t.releng.5; branch <quote>stable</quote>, both
in terms of code quality and finalization of various
APIs/ABIs. For a different perspective, the article
<ulink url="&url.articles.version-guide;">
<quote>Choosing the &os; Version That Is Right For You</quote>
</ulink>
may be of interest. The version-guide article was written in August
2005 (two and a half years later), and it contains a section
discussing how these plans and events actually unfolded, as well as
some lessons learned.</para>
</abstract>
</articleinfo>
<sect1 id="intro">
<title>Introduction and Background</title>
<para>After nearly three years of work, &os; 5.0 was released in January
of 2003. Features like the GEOM block layer, Mandatory Access Controls,
ACPI, &sparc64; and ia64 platform support, and UFS snapshots, background
filesystem checks, and 64-bit inode sizes make it an exciting operating
system for both desktop and enterprise users. However, some important
features are not complete. The foundations for fine-grained locking
and preemption in the kernel exist, but much more work is left to be
done. Performance and stability compared to &os;
4.<replaceable>X</replaceable> has declined and must be restored and
surpassed.</para>
<para>This is somewhat similar to the situation that &os; faced in the
3.<replaceable>X</replaceable> series. Work on 3-CURRENT trudged along
seemingly forever, and finally a cry was made to <quote>just ship
it</quote> and clean up later. This decision resulted in the 3.0 and
3.1 releases being very unsatisfying for most, and it was not until 3.2
that the series was considered <quote>stable</quote>. To make matters
worse, the &t.releng.3; branch was created along with the 3.0 release,
and the &t.releng.head; branch was allowed to advance immediately
towards 4-CURRENT. This resulted in a quick divergence between
&t.releng.head; and &t.releng.3;, making maintenance of the &t.releng.3;
branch very difficult. &os; 2.2.8 was left for quite a while as the
last production-quality version of &os;.</para>
<para>Our intent is to avoid repeating that scenario with &os; 5.X.
Delaying the &t.releng.5; branch until it is stable and production quality
will ensure that it stays maintainable and provides a compelling reason
to upgrade from 4.<replaceable>X</replaceable>. To do this, we must
identify the current areas of weakness and set clear goals for
resolving them. This document contains what we as the release
engineering team feel are the milestones and issues that must be
resolved for the &t.releng.5; branch. It does not dictate every aspect of
&os; development, and we welcome further input. Nothing that follows
is meant to be a sleight against any person or group, or to trivialize
any work that has been done. There are some significant issues,
though, that need decisive and unbiased action.</para>
</sect1>
<sect1 id="major-issues">
<title>Major issues</title>
<para>The success of the 5.<replaceable>X</replaceable> series hinges on
the ability to deliver fine-grained threading and re-entrancy in the
kernel (also known as SMPng) and kernel-supported POSIX threads in
userland, while not sacrificing overall system stability or
performance.</para>
<sect2 id="SMPng">
<title>SMPng</title>
<para>The state of SMPng and kernel lockdown is the biggest concern for
5.<replaceable>X</replaceable>. To date, few major systems have come
out from under the kernel-wide mutex known as <quote>Giant</quote>.
The SMP status page at <ulink url="&url.base;/smp"></ulink>
provides a comprehensive breakdown
of the overall SMPng status. Status specific to SMPng progress in
device drivers can be found at
<ulink url="&url.base;/projects/busdma"></ulink>.
In summary:</para>
<itemizedlist>
<listitem>
<para>VM: Kernel malloc is locked and free of Giant. The UMA zone
allocator is also free of Giant. vm_object locking is in progress
and is an important step to making the buffer/cache free of
Giant. Pmap locking remains to be started.</para>
</listitem>
<listitem>
<para>GEOM: The GEOM block layer was designed to run free of Giant
and allow GEOM modules and underlying block drivers to run free
of Giant. Currently, only the &man.ata.4; and &man.aac.4; drivers
are locked and run without Giant. Work on other block drivers is
in progress. Locking the CAM subsystem is required for nearly all
SCSI drivers to run without Giant; this work has not started
yet.</para>
<para>Additionally, GEOM has the potential to suffer performance loss
due to its upcall and downcall data paths happening in kernel threads.
Improved lightweight context switches might help this.</para>
</listitem>
<listitem>
<para>Network: Work has restarted on locking the network stack.
Routing tables, ARP, bridge, IPFW, Fast-Forward, TCP, UDP, IP,
Fast IPSEC, and interface layers are being targeted initially, along
with several Ethernet device drivers. The socket layer, IPv6, and
other protocol layers will be targeted later. The primary goal
of this work is to regain the performance found in
&os; 4.<replaceable>X</replaceable>. The cost of context switching
to the device driver ithreads and the netisr is still hampering
performance.</para>
</listitem>
<listitem>
<para>VFS: Initial pre-cleanup started.</para>
</listitem>
<listitem>
<para>buffer/cache: Initial work complete on locking the buffer.</para>
</listitem>
<listitem>
<para>Proc: Initial proc locking is in place, further progress is
expected for &os; 5.2.</para>
</listitem>
<listitem>
<para>CAM: No significant work has occurred on the CAM SCSI
layer.</para>
</listitem>
<listitem>
<para>Newbus: some work has started on locking down the device_t
structure.</para>
</listitem>
<listitem>
<para>Pipes: complete</para>
</listitem>
<listitem>
<para>File descriptors: complete.</para>
</listitem>
<listitem>
<para>Process accounting: jails, credentials, MAC labels, and
scheduler are out from under Giant.</para>
</listitem>
<listitem>
<para>MAC Framework: complete</para>
</listitem>
<listitem>
<para>Timekeeping: complete</para>
</listitem>
<listitem>
<para>kernel encryption: crypto drivers and core &man.crypto.4;
framework are Giant-free. KAME IPsec has not been locked.</para>
</listitem>
<listitem>
<para>Sound subsystem: complete, but lock order reversal problems seem
to persist.</para>
</listitem>
<listitem>
<para>kernel preemption: preemption for interrupt threads is enabled.
However, contention due to Giant covering much of the kernel and
most of the device driver interrupt routines causes excessive
context switches and might actually be hurting performance. Work
is underway to explore ways to make preemption be
conditional.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 id="interrupts">
<title>Interrupt latency and servicing</title>
<para>SMPng introduced the concept of dedicating kernel threads, known as
ithreads, to servicing interrupts. With this, driver interrupt
service routines are allowed to block for mutexes, memory allocations,
etc. While this makes writing drivers easier, it introduces considerable
latency into the system due to the complete process context switch which must
be performed in order to service the ithread. This is aggravated by the
extensive coverage over the kernel by the Giant mutex, and often results
in multiple sleeps and context switches in order to service an interrupt.
Drivers that register their interrupt as INTR_MPSAFE are less likely to
feel these aggravating effects, but the overhead of doing a context
switch remains. Interrupt service routines that are registered as
INTR_FAST are run directly from the interrupt context and do not suffer
these problems at all. However, the INTR_FAST property forces the
interrupt line to be exclusive; no sharing can occur on it. The
proliferation of shared interrupts on PC systems makes this
undesirable.</para>
<para>Several ideas have been proposed to help combat this problem:</para>
<itemizedlist>
<listitem>
<para>Special casing ithreads to be lightweight is a possibility. This
might involve reducing the amount of saved context for the ithread,
stack-borrowing from another kthread, and/or creating a new fast-path
to avoid the mi_switch() routine.</para>
</listitem>
<listitem>
<para>A new interrupt model can be introduced to allow drivers to
register an 'interrupt filter' along with a normal service routine.
This would be similar to the Mac OS X model in use today. Interrupt
filter routines would allow the driver to determine if it is
interested in servicing the interrupt, allow it to squelch the
interrupt source, and possibly determine and schedule service
actions. It would run in the same context as the low-level interrupt
service routine, so sleeping would be strictly forbidden. If actions
that result in sleeping or blocking for long periods are required,
the filter would signal to the caller that its normal ithread routine
should be scheduled.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 id="KSE">
<title>Kernel-supported application threads</title>
<para>The FreeBSD 5.1 development cycle saw the KSE package jump into a
highly usable state. THR, an alternate threading package based on some
of the KSE kernel primitives but implementing purely 1:1 scheduling
semantics also appeared and is in a similarly experimental but usable
state. Users may interchange these two libraries along with the legacy
libc_r library via relinking their apps or by using the new libmap
feature of the runtime linker. This excellent progress must be driven
to completion before the &t.releng.5; branch point so that the libc_r
package can be deprecated.</para>
<itemizedlist>
<listitem>
<para>The kernel and userland components for KSE and THR must be
completed for all Tier-1 platforms. The decision on which thread
package to sanction as the default will likely be made on a
per-platform basis depending on the stability and completeness of
each package.</para>
<para>
<table id="KSETable">
<title>KSE Status</title>
<tgroup cols="4">
<thead>
<row>
<entry>Platform</entry>
<entry>Kernel</entry>
<entry>Userland</entry>
<entry>Works?</entry>
</row>
</thead>
<tbody>
<row>
<entry>i386</entry>
<entry>YES</entry>
<entry>YES</entry>
<entry>YES</entry>
</row>
<row>
<entry>alpha</entry>
<entry>NO</entry>
<entry>YES</entry>
<entry>NO</entry>
</row>
<row>
<entry>sparc64</entry>
<entry>YES</entry>
<entry>NO</entry>
<entry>NO</entry>
</row>
<row>
<entry>ia64</entry>
<entry>YES</entry>
<entry>YES</entry>
<entry>YES</entry>
</row>
<row>
<entry>amd64</entry>
<entry>YES</entry>
<entry>YES</entry>
<entry>YES</entry>
</row>
</tbody>
</tgroup>
</table>
<table id="THRTable">
<title>THR Status</title>
<tgroup cols="4">
<thead>
<row>
<entry>Platform</entry>
<entry>Kernel</entry>
<entry>Userland</entry>
<entry>Works?</entry>
</row>
</thead>
<tbody>
<row>
<entry>i386</entry>
<entry>YES</entry>
<entry>YES</entry>
<entry>YES</entry>
</row>
<row>
<entry>alpha</entry>
<entry>YES</entry>
<entry>YES</entry>
<entry>YES</entry>
</row>
<row>
<entry>sparc64</entry>
<entry>YES</entry>
<entry>YES</entry>
<entry>NO</entry>
</row>
<row>
<entry>ia64</entry>
<entry>YES</entry>
<entry>YES</entry>
<entry>YES</entry>
</row>
<row>
<entry>amd64</entry>
<entry>NO</entry>
<entry>NO</entry>
<entry>NO</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
</listitem>
<listitem>
<para>KSE must pass the ACE test suite on all Tier-1 platforms.
Additional real-world testing must also be performed to ensure
that the libraries are indeed useful. At a minimum, the following
packages should be tested:</para>
<itemizedlist>
<listitem><para>OpenOffice</para></listitem>
<listitem><para>KDE Desktop</para></listitem>
<listitem><para>Apache 2.x</para></listitem>
<listitem><para>BIND 9.2.x</para></listitem>
<listitem><para>MySQL</para></listitem>
<listitem><para>&java; 1.4.x</para></listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="goals">
<title>Requirements for 5-STABLE</title>
<para>The &t.releng.5; branch must offer users the same stability and
performance that is currently enjoyed in the &t.releng.4; branch.
While the goal of SMPng is to allow performance to far exceed what
is found in &t.releng.4; and its sibling BSDs, regaining performance
to the basic level is of the utmost importance. The branch must also
be mature enough to avoid ABI and API changes while still allowing
potential problems to be resolved.</para>
<sect2 id="API">
<title>ABI/API/Infrastructure stability</title>
<para>Enough infrastructure must be in place and stable to allow
fixes from &t.releng.head; to easily and safely be merged into
&t.releng.5;. Also, we must draw a line as to what subsystems are
to be locked down when we go into 5-STABLE.</para>
<itemizedlist>
<listitem>
<para>KSE: Both kernel and userland components must
reach the same level of functionality for all Tier-1 platforms,
in both UP and SMP configurations. The definition of <quote>Tier-1
platforms</quote> can be found in
<ulink url="&url.articles.committers-guide;/archs.html"></ulink>.
Continued testing against the ACE test
suite must be made as the &t.releng.5; branch draws near. KSE
must pose no functional regressions for the ongoing &java;
certification program. Common desktop and server applications
must run seamlessly under KSE. A policy must be decided on as
to which platforms will enable KSE as the default threading
package, how to allow the user to switch threading packages, and
how third-party packages will be made aware of these choices.</para>
</listitem>
<listitem>
<para>busdma interface and drivers: architectures like PAE/&i386; and
sparc64 which do not have a direct mapping between host memory
address space and expansion bus address space require the
elimination of vtophys() and friends. The busdma interface was
created to handle exactly this problem, but many drivers do not use
it yet. The busdma project at
<ulink url="&url.base;/projects/busdma"></ulink>
tracks the
progress of this and should be used to determine which drivers
must be converted for &t.releng.5; and which can be left behind.
No new storage or network drivers shall be allowed into the
&os; source tree. Exceptions for other classes of drivers must
be justified in public discussion.</para>
</listitem>
<listitem>
<para>PCI resource allocation: PC2003 compliance requires that x86
systems no longer configure PCI devices from the system BIOS,
leaving this task solely to the OS. &os; must gain the ability to
manage and allocate PCI memory resources on its own. Implementing
this should take into account cardbus, PCI-HotPlug, and laptop
docking-station requirements. This feature will become increasingly
critical through the lifetime of &t.releng.5;, and therefore is a
requirement for the &t.releng.5; branch.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 id="performance">
<title>Performance</title>
<para>Performance hinges on the progress of SMPng infrastructure in
the following areas:</para>
<itemizedlist>
<listitem>
<para>Storage: The GEOM block layer allows storage drivers to
run without Giant. All drivers that interface directly with
GEOM (as opposed to sitting underneath CAM or another middleware)
must be locked and free of Giant in both their strategy and
completion paths. Their interrupt handlers must also run free
of Giant.</para>
</listitem>
<listitem>
<para>Network: The layers in the IPv4 path below the socket layer
must be locked and free of Giant. This includes the protocol,
routing, bridging, filtering, and hardware layers. Allowances must
be made for protocols that are not locked, especially IPv6.
Testing must also be performed to ensure stability, correctness,
and performance.</para>
</listitem>
<listitem>
<para>Interrupt and context switching: As discussed above, interrupt
latency and context switching have a severe impact of performance.
Context switching for ithreads and kthreads must be improved.
New interrupt handling models that allow for faster and
more flexible handling of both traditional and MSI interrupts must
be investigated and implemented.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 id="benchmarks">
<title>Benchmarks and performance testing</title>
<para>Having a source of reliable and useful benchmarks is essential
to identifying performance problems and guarding against performance
regressions. A <quote>performance team</quote> that is made up of
people and resources for formulating, developing, and executing
benchmark tests should be put into place soon. Comparisons should
be made against both &os; 4.<replaceable>X</replaceable> and Linux
2.4/2.6. Tests to consider are:</para>
<itemizedlist>
<listitem>
<para>the classic <quote>worldstone</quote></para>
</listitem>
<listitem>
<para>webstone: <filename role="package">www/webstone</filename></para>
</listitem>
<listitem>
<para>Fstress: <ulink url="http://www.cs.duke.edu/ari/fstress/"></ulink></para>
</listitem>
<listitem>
<para>ApacheBench: <filename role="package">www/p5-ApacheBench</filename></para>
</listitem>
<listitem>
<para>netperf: <filename role="package">benchmarks/netperf</filename></para>
</listitem>
<listitem>
<para>Web Polygraph: <ulink url="http://www.web-polygraph.org/"></ulink>
Note: does not compile with gcc 3.x yet.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 id="features">
<title>Features:</title>
<itemizedlist>
<listitem>
<para>NEWCARD/OLDCARD: The NEWCARD subsystem was made the default
for &os;&nbsp;5.0. Unfortunately, it does not include support for
non-Cardbus bridges and falls victim to interrupt routing
problems on some laptops. The classic 16-bit bridge support,
OLDCARD, still exists and can be compiled in, but this is highly
inconvenient for users of older laptops. If OLDCARD cannot be
completely deprecated for &t.releng.5;, then provisions must be made
to allow users to easily install an OLDCARD-enabled kernel.
Documentation should be written to help transition users from
OLDCARD to NEWCARD and from &man.pccardd.8; to
&man.devd.8;. The power management and
<quote>dumpcis</quote> functionality of &man.pccardc.8; needs to be
brought forward to work with NEWCARD, along with the ability to
load CIS quirk entries. Most of this functionality can be
integrated into &man.devd.8; and
&man.devctl.4;.</para>
</listitem>
<listitem>
<para>New scheduler framework: The new scheduler framework is in
place, and users can select between the classic 4BSD scheduler
and the new ULE scheduler. A scheduler that demonstrates
processor affinity, HyperThreading and KSE awareness, and no
regressions in performance or interactivity characteristics must
be available for &t.releng.5;.</para>
</listitem>
<listitem>
<para>GDB: GDB in the base system must work for sparc64, and
must also understand KSE thread semantics. GDB 5.3 is available
and is reported to address the sparc64 issues.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2 id="documentation">
<title>Documentation:</title>
<itemizedlist>
<listitem>
<para>The manual pages, Handbook, and FAQ should be free from
content specific to &os; 4.<replaceable>X</replaceable>, i.e. all
text should be equally applicable to &os;
5.<replaceable>X</replaceable>. The installation section of the
handbook needs the most work in this area.</para>
</listitem>
<listitem>
<para>The release documentation needs to be complete and accurate
for all Tier-1 architectures. The hardware notes and
installation guides need specific attention.</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="future">
<title>Post &t.releng.5; direction</title>
<para>The focus should be bug fixes and incremental improvements, as with
all the -STABLE development branches. Following the usual procedure,
everything should be vetted through the &t.releng.head; branch first and
committed to &t.releng.5; with caution. New device drivers, incremental
features, etc, will be welcome in the branch once they have been tested
in &t.releng.head; and found stable enough.</para>
<para>Further SMPng lockdowns will be divided into two categories: driver
and subsystem. The only subsystem that will be sufficiently locked
down for &t.releng.5; will be GEOM, so incrementally locking down device
drivers under it is a worthy goal for the branch. Full subsystem
lockdowns will have to be fully tested and proven in &t.releng.head; before
consideration will be given to merging them into &t.releng.5;.</para>
</sect1>
</article>

View file

@ -1,16 +0,0 @@
/*
* Netscape 4 does not recognize the @import directive of CSS, so we
* can't add an additional stylesheet layer on top of the default one.
* Instead, we use this hack to copy this file to the end of
* docbook.css.
*
* $FreeBSD$
*/
/* @import "docbook.css"; */
/* Customization that looks good for this particular article. */
DIV.TITLEPAGE {
text-align: center;
}

View file

@ -1,11 +1,9 @@
# $FreeBSD$
SUBDIR =
SUBDIR+= 5-roadmap
SUBDIR+= bsdl-gpl
SUBDIR+= building-products
SUBDIR+= casestudy-argentina.com
SUBDIR+= checkpoint
SUBDIR+= committers-guide
SUBDIR+= compiz-fusion
SUBDIR+= console-server
@ -16,14 +14,10 @@ SUBDIR+= cups
SUBDIR+= custom-gcc
SUBDIR+= cvs-freebsd
SUBDIR+= cvsup-advanced
SUBDIR+= dialup-firewall
SUBDIR+= diskless-x
SUBDIR+= euro
SUBDIR+= explaining-bsd
SUBDIR+= fbsd-from-scratch
SUBDIR+= filtering-bridges
SUBDIR+= fonts
SUBDIR+= formatting-media
SUBDIR+= freebsd-questions
SUBDIR+= freebsd-update-server
SUBDIR+= geom-class
@ -37,7 +31,6 @@ SUBDIR+= linux-emulation
SUBDIR+= linux-users
SUBDIR+= mailing-list-faq
SUBDIR+= mh
SUBDIR+= multi-os
SUBDIR+= nanobsd
SUBDIR+= new-users
SUBDIR+= p4-primer
@ -53,12 +46,8 @@ SUBDIR+= releng-packages
SUBDIR+= remote-install
SUBDIR+= serial-uart
SUBDIR+= solid-state
SUBDIR+= storage-devices
SUBDIR+= version-guide
SUBDIR+= vinum
SUBDIR+= vm-design
SUBDIR+= wp-toolbox
SUBDIR+= zip-drive
# ROOT_SYMLINKS+= new-users

View file

@ -1,18 +0,0 @@
#
# $FreeBSD$
#
# Article: Integration of Check Point Firewall-1 and FreeBSD IPsec
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
IMAGES_EN= networks.pic
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,435 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN" "../../share/sgml/entities.ent">
%entities;
]>
<!-- Copyright (c) 2001 The FreeBSD Documentation Project
Redistribution and use in source (SGML DocBook) and 'compiled' forms
(SGML, HTML, PDF, PostScript, RTF and so forth) with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code (SGML DocBook) must retain the above
copyright notice, this list of conditions and the following
disclaimer as the first lines of this file unmodified.
2. Redistributions in compiled form (transformed to other DTDs,
converted to PDF, PostScript, RTF and other formats) must reproduce
the above copyright notice, this list of conditions and the
following disclaimer in the documentation and/or other materials
provided with the distribution.
THIS DOCUMENTATION IS PROVIDED BY THE FREEBSD DOCUMENTATION PROJECT "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL NIK CLAYTON BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
-->
<article lang='en'>
<articleinfo>
<title>Integration of Check Point <trademark class='registered'>VPN-1</trademark>/<trademark class='registered'>Firewall-1</trademark> and FreeBSD IPsec</title>
<authorgroup>
<author>
<firstname>Jon</firstname>
<surname>Orbeton</surname>
<affiliation>
<address><email>jono@securityreports.com</email></address>
</affiliation>
</author>
<author>
<firstname>Matt</firstname>
<surname>Hite</surname>
<affiliation>
<address><email>mhite@hotmail.com</email></address>
</affiliation>
</author>
</authorgroup>
<copyright>
<year>2001</year>
<year>2002</year>
<year>2003</year>
<holder role="mailto:jono@securityreports.com">Jon Orbeton</holder>
</copyright>
&legalnotice;
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.check-point;
&tm-attrib.general;
</legalnotice>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>This document explains how to configure a <acronym>VPN</acronym>
tunnel between FreeBSD and Check Point's
<trademark class='registered'>VPN-1</trademark>/
<trademark class='registered'>Firewall-1</trademark>. Other
documents provide similar information, but do not contain instructions
specific to VPN-1/Firewall-1 and its integration with FreeBSD. These
documents are listed at the conclusion of this paper for further
reference.</para>
</abstract>
</articleinfo>
<sect1 id="prerequisites">
<title>Prerequisites</title>
<para>The following is a diagram of the machines and networks referenced
in this document.</para>
<mediaobject>
<imageobject>
<imagedata fileref="networks"/>
</imageobject>
<textobject>
<literallayout class="monospaced">External Interface External Interface
208.229.100.6 216.218.197.2
| |
+--&gt; Firewall-1 &lt;--&gt; Internet &lt;--&gt; FreeBSD GW &lt;--+
| |
FW-1 Protected Nets Internal Nets
199.208.192.0/24 192.168.10.0/24</literallayout>
</textobject>
<textobject>
<phrase>FW-1 net and FreeBSD net</phrase>
</textobject>
</mediaobject>
<para>The FreeBSD gateway <acronym>GW</acronym> serves as a firewall and
<acronym>NAT</acronym> device for <quote>internal nets.</quote></para>
<para>The FreeBSD kernel must be compiled to support IPsec. Use the
following kernel options to enable IPsec support in your kernel:</para>
<programlisting>options IPSEC
options IPSEC_ESP
options IPSEC_DEBUG</programlisting>
<para>For instructions on building a custom kernel, refer to the
<ulink url="&url.books.handbook;/kernelconfig.html">FreeBSD
handbook</ulink>. Please note that <acronym>IP</acronym>
protocol&nbsp;50 (<acronym>ESP</acronym>) and <acronym>UDP</acronym>
port&nbsp;<literal>500</literal> must be open between the <trademark class='registered'>Firewall-1</trademark>
host and the FreeBSD <acronym>GW</acronym>.</para>
<para>Also, <application>racoon</application> must be installed to support
key exchange. <application>Racoon</application> is part of the FreeBSD
ports collection in <filename role="package">security/racoon</filename>.
The <application>racoon</application> configuration file will be covered
later in this document.</para>
</sect1>
<sect1 id="object">
<title>Firewall-1 Network Object Configuration</title>
<para>Begin by configuring the Firewall-1 Policy. Open the Policy Editor
on the Firewall-1 Management server and create a new
<quote>Workstation</quote> Network Object representing FreeBSD
<acronym>GW</acronym>.</para>
<programlisting>General Tab:
Set name and IP address
VPN Tab:
Encryption Schemes Defined: IKE ---&gt; Edit
IKE Properties:
Key Negotiation Encryption Methods: 3DES
Authentication Method:
Pre-Shared Secret ---&gt; Edit</programlisting>
<para>Select the Firewall Object and set a pre-shared secret.
(Do not use our example.)</para>
<programlisting>Support Aggressive Mode: Checked
Supports Subnets: Checked</programlisting>
<para>After setting the pre-shared secret in the Firewall-1 Network Object
definition, place this secret in the
<filename>/usr/local/etc/racoon/psk.txt</filename> file on FreeBSD
<acronym>GW</acronym>. The format for <filename>psk.txt</filename>
is:</para>
<programlisting>208.229.100.6 rUac0wtoo?</programlisting>
</sect1>
<sect1 id="rulecfg">
<title>Firewall-1 VPN Rule Configuration</title>
<para>Next, create a Firewall-1 rule enabling encryption between the
FreeBSD <acronym>GW</acronym> and the Firewall-1 protected network.
In this rule, the network services permitted through the
<acronym>VPN</acronym> must be defined.</para>
<programlisting>Source | Destination | Service | Action | Track
------------------------------------------------------------------------
FreeBSD GW | FW-1 Protected Net | VPN services | Encrypt | Long
FW-1 Protected Net| FreeBSD GW | | |</programlisting>
<para><quote>VPN services</quote> are any services (i.e.
<command>telnet</command>, <acronym>SSH</acronym>,
<acronym>NTP</acronym>, etc.) which remote hosts are permitted to access
through the <acronym>VPN</acronym>. Use caution when permitting
services; hosts connecting through a <acronym>VPN</acronym> still
represent a potential security risk. Encrypting the traffic between the
two networks offers little protection if a host on either side of the
tunnel has been compromised.</para>
<para>Once the rule specifying data encryption between the FreeBSD
<acronym>GW</acronym> and the Firewall-1 protected network has been
configured, review the <quote>Action Encrypt</quote> settings.</para>
<programlisting>Encryption Schemes Defined: IKE ---&gt; Edit
Transform: Encryption + Data Integrity (ESP)
Encryption Algorithm: 3DES
Data Integrity: MD5
Allowed Peer Gateway: Any or Firewall Object
Use Perfect Forward Secrecy: Checked</programlisting>
<para>The use of Perfect Forward Secrecy (<acronym>PFS</acronym>) is
optional. Enabling <acronym>PFS</acronym> will add another layer of
encryption security, but does come at the cost of increased
<acronym>CPU</acronym> overhead. If <acronym>PFS</acronym> is not used,
uncheck the box above and comment out the
<literal>pfs_group&nbsp;1</literal> line in the
<filename>racoon.conf</filename> file on FreeBSD <acronym>GW</acronym>.
An example <filename>racoon.conf</filename> file is provided later in
this document.</para>
</sect1>
<sect1 id="policy">
<title>FreeBSD <acronym>VPN</acronym> Policy Configuration</title>
<para>At this point, the <acronym>VPN</acronym> policy on FreeBSD
<acronym>GW</acronym> must be defined. The &man.setkey.8; tool performs
this function.</para>
<para>Below is an example shell script which will flush &man.setkey.8; and
add your <acronym>VPN</acronym> policy rules.</para>
<programlisting>#
# /etc/vpn1-ipsec.sh
#
# IP addresses
#
# External Interface External Interface
# 208.229.100.6 216.218.197.2
# | |
# +--&gt; Firewall-1 &lt;--&gt; Internet &lt;--&gt; FreeBSD GW &lt;--+
# | |
# FW-1 Protected Nets Internal Nets
# 199.208.192.0/24 192.168.10.0/24
#
# Flush the policy
#
setkey -FP
setkey -F
#
# Configure the Policy
#
setkey -c &lt;&lt; END
spdadd 216.218.197.2/32 199.208.192.0/24 any -P out ipsec
esp/tunnel/216.218.197.2-208.229.100.6/require;
spdadd 199.208.192.0/24 216.218.197.2/32 any -P in ipsec
esp/tunnel/208.229.100.6-216.218.197.2/require;
END
#</programlisting>
<para>Execute the &man.setkey.8; commands:</para>
<screen>&prompt.root; <userinput>sh /etc/vpn1-ipsec.sh</userinput></screen>
</sect1>
<sect1 id="racoon">
<title>FreeBSD <application>Racoon</application> Configuration</title>
<para>To facilitate the negotiation of IPsec keys on the FreeBSD
<acronym>GW</acronym>, the
<filename role="package">security/racoon</filename> port must be
installed and configured.</para>
<para>The following is a <application>racoon</application> configuration
file suitable for use with the examples outlined in this document.
Please make sure you fully understand this file before using it in a
production environment.</para>
<programlisting># racoon.conf for use with Check Point VPN-1/Firewall-1
#
# search this file for pre_shared_key with various ID key.
#
path pre_shared_key "/usr/local/etc/racoon/psk.txt" ;
log debug;
#
# "padding" defines some parameter of padding. You should not touch these.
#
padding
{
maximum_length 20; # maximum padding length.
randomize off; # enable randomize length.
strict_check off; # enable strict check.
exclusive_tail off; # extract last one octet.
}
listen
{
#isakmp ::1 [7000];
#isakmp 0.0.0.0 [500];
#admin [7002]; # administrative port by kmpstat.
#strict_address; # required all addresses must be bound.
}
#
# Specification of default various timers.
#
timer
{
#
# These values can be changed per remote node.
#
counter 5; # maximum trying count to send.
interval 20 sec; # maximum interval to resend.
persend 1; # the number of packets per a send.
#
# timer for waiting to complete each phase.
#
phase1 30 sec;
phase2 15 sec;
}
remote anonymous
{
exchange_mode aggressive,main; # For Firewall-1 Aggressive mode
#my_identifier address;
#my_identifier user_fqdn "";
#my_identifier address "";
#peers_identifier address "";
#certificate_type x509 "" "";
nonce_size 16;
lifetime time 10 min; # sec,min,hour
lifetime byte 5 MB; # B,KB,GB
initial_contact on;
support_mip6 on;
proposal_check obey; # obey, strict or claim
proposal {
encryption_algorithm 3des;
hash_algorithm md5;
authentication_method pre_shared_key;
dh_group 2 ;
}
}
sainfo anonymous
{
pfs_group 1;
lifetime time 10 min;
lifetime byte 50000 KB;
encryption_algorithm 3des;
authentication_algorithm hmac_md5;
compression_algorithm deflate ;
}</programlisting>
<para>Ensure that the <filename>/usr/local/etc/racoon/psk.txt</filename>
file contains the pre-shared secret configured in the <quote>Firewall-1
Network Object Configuration</quote> section of this document and has
mode <literal>600</literal> permissions.</para>
<screen>&prompt.root; <userinput>chmod 600 /usr/local/etc/racoon/psk.txt</userinput></screen>
</sect1>
<sect1 id="startingvpn">
<title>Starting the <acronym>VPN</acronym></title>
<para>You are now ready to launch <application>racoon</application> and
test the <acronym>VPN</acronym> tunnel. For debugging purposes, open
the Firewall-1 Log Viewer and define a log filter to isolate entries
pertaining to FreeBSD <acronym>GW</acronym>. You may also find it
helpful to &man.tail.1; the <application>racoon</application>
log:</para>
<screen>&prompt.root; <userinput>tail -f /var/log/racoon.log</userinput></screen>
<para>Start <application>racoon</application> using the following
command:</para>
<screen>&prompt.root; <userinput>/usr/local/sbin/racoon -f /usr/local/etc/racoon/racoon.conf</userinput></screen>
<para>Once <application>racoon</application> has been launched,
&man.telnet.1; to a host on the Firewall-1 protected network.</para>
<screen>&prompt.root; <userinput>telnet -s 192.168.10.3 199.208.192.66 22</userinput></screen>
<para>This command attempts to connect to the &man.ssh.1; port on <hostid
role="ipaddr">199.208.192.66</hostid>, a machine in the Firewall-1
protected network. The <option>-s</option> switch indicates the source
interface of the outbound connection. This is particularly important
when running <acronym>NAT</acronym> and <acronym>IPFW</acronym> on
FreeBSD <acronym>GW</acronym>. Using <literal>-s</literal> and
specifying an explicit source address prevents <acronym>NAT</acronym>
from mangling the packet prior to tunneling.</para>
<para>A successful <application>racoon</application> key exchange will
output the following to the <filename>racoon.log</filename> log
file:</para>
<programlisting>pfkey UPDATE succeeded: ESP/Tunnel 216.218.197.2->208.229.100.6
pk_recvupdate(): IPSec-SA established: ESP/Tunnel 216.218.197.2->208.229.100.6
get pfkey ADD message IPsec-SA established: ESP/Tunnel 208.229.100.6->216.218.197.2</programlisting>
<para>Once key exchange completes (which takes a few seconds), an
&man.ssh.1; banner will appear. If all went well, two <quote>Key
Install</quote> messages will be logged in the Firewall-1 Log
Viewer.</para>
<programlisting>Action | Source | Dest. | Info.
Key Install | 216.218.197.2 | 208.229.100.6 | IKE Log: Phase 1 (aggressive) completion.
Key Install | 216.218.197.2 | 208.229.100.6 | scheme: IKE methods</programlisting>
<para>Under the information column, the full log detail will read:</para>
<programlisting>IKE Log: Phase 1 (aggressive) completion. 3DES/MD5/Pre shared secrets Negotiation Id:
scheme: IKE methods: Combined ESP: 3DES + MD5 + PFS (phase 2 completion) for host:</programlisting>
</sect1>
<sect1 id="References">
<title>References</title>
<itemizedlist>
<listitem>
<para>The FreeBSD Handbook: VPN over IPsec.
<ulink url="&url.books.handbook;/ipsec.html"></ulink></para>
</listitem>
<listitem>
<para>KAME Project.
<ulink url="http://www.kame.net"></ulink></para>
</listitem>
</itemizedlist>
</sect1>
</article>

View file

@ -1,18 +0,0 @@
#
# $FreeBSD$
#
# Article: Dialup firewalling with FreeBSD
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,318 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN" "../../share/sgml/entities.ent">
%entities;
]>
<article lang='en'>
<articleinfo>
<title>Dialup firewalling with FreeBSD</title>
<authorgroup>
<author>
<firstname>Marc</firstname>
<surname>Silver</surname>
<affiliation>
<address><email>marcs@draenor.org</email></address>
</affiliation>
</author>
</authorgroup>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.general;
</legalnotice>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>This article documents how to set up a firewall using a PPP
dialup with FreeBSD and IPFW, and specifically with firewalling over
a dialup with a dynamically assigned IP address. This document does
not include information on setting up an initial PPP connection.
For more information on setting up a PPP connection, consult
the &man.ppp.8; manual page.</para>
</abstract>
</articleinfo>
<sect1 id="preface">
<title>Preface</title>
<para>This document outlines the steps required to set up
firewalling with FreeBSD when an IP address is assigned dynamically
by your ISP. While every effort has been made to make this document
as informative and correct as possible, you are welcome to mail
any corrections, comments or suggestions to the author at
<email>marcs@draenor.org</email>.</para>
</sect1>
<sect1 id="kernel">
<title>Kernel Options</title>
<para>In order to use IPFW, support for it must be compiled into the
kernel. For more information on how to recompile the kernel,
please see the <ulink
url="&url.books.handbook;/kernelconfig.html">kernel configuration
section in the Handbook</ulink>. The following options must be
added into your kernel configuration file for IPFW support:</para>
<variablelist>
<varlistentry>
<term><literal>options IPFIREWALL</literal></term>
<listitem>
<para>Enables the kernel firewall code.</para>
<note><para>This document assumes that you are running
&os; 5.X. Users running &os; 4.X will need to
recompile their kernels with <emphasis>IPFW2</emphasis>
support. &os; 4.X users should consult the &man.ipfw.8;
manual page for more information on using IPFW2 on their
systems, and should pay particular attention to the
<emphasis>USING IPFW2 IN FreeBSD-STABLE</emphasis>
section.</para></note>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options IPFIREWALL_VERBOSE</literal></term>
<listitem>
<para>Sends logged packets to the system logger.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options
IPFIREWALL_VERBOSE_LIMIT=<replaceable>500</replaceable></literal></term>
<listitem>
<para>Limits the number of times a matching entry may be logged.
This allows you to log firewall activity without the risk of
syslog flooding in the event of a denial of service attack.
<replaceable>500</replaceable> is a reasonable number to use, but
may be adjusted based on your requirements.</para>
</listitem>
</varlistentry>
</variablelist>
<warning><para>Once the kernel recompile has been completed,
<emphasis>do not reboot</emphasis> your system. Doing so may result
in you being locked out of your own system. You must only reboot
once the ruleset is in place and all the relevant configuration
files have been updated.</para></warning>
</sect1>
<sect1 id="rcconf">
<title>Changing <filename>/etc/rc.conf</filename> to load the
firewall</title>
<para><filename>/etc/rc.conf</filename> needs to be slightly
modified in order to tell the system about the firewall and to
specify the location for our rules file. Add the following lines
to <filename>/etc/rc.conf</filename>:</para>
<programlisting>firewall_enable="YES"
firewall_script="/etc/firewall/fwrules"</programlisting>
<para>For more information on the functions of these statements take
a look at <filename>/etc/defaults/rc.conf</filename> and read
&man.rc.conf.5;</para>
</sect1>
<sect1>
<title>Enable PPP's network address translation</title>
<para>In order to allow clients on your network to connect via
your gateway, you will need to enable PPP's network address
translation (NAT). In order to use PPP's NAT functions, add the
following lines to <filename>/etc/rc.conf</filename>:</para>
<programlisting>ppp_enable="YES"
ppp_mode="auto"
ppp_nat="YES"
ppp_profile="<replaceable>your_profile</replaceable>"</programlisting>
<note><para>Take care to change <literal>your_profile</literal> to
the name of your own dialup profile. The profile name should match the
name of the dialup connection in
your <filename>/etc/ppp/ppp.conf</filename> file.</para></note>
</sect1>
<sect1 id="rules">
<title>The rule set for the firewall</title>
<para>This is the point where we define the firewall rules for your
system. The ruleset that we are about to describe is a generic
template for most dialup users. While it will not suit the exact
needs of every user, it provides you with a basic idea of how IPFW
works and should be fairly easy to customize.</para>
<para>First, let's start with the basics of closed firewalling.
Closed firewalling is based on the idea that everything is denied
by default. The system administrator may then explicitly add
rules for traffic that he or she would like to allow. Rules
should be in the order of allow first, and then deny. The premise
is that you add the rules for everything you would like to allow,
and then everything else is automatically denied.</para>
<para>Following that, let's create the directory where we will store our
firewall rules. In this example, we will use <filename
class="directory">/etc/firewall</filename>. Change into the
directory and edit the file <filename>fwrules</filename> as we
specified in <filename>rc.conf</filename>. Please note that you
can change this filename to anything you wish. This guide merely
gives an example of a filename you may want to use.</para>
<para>Now, let's look at a nicely commented sample firewall
file.</para>
<programlisting># Define the firewall command (as in /etc/rc.firewall) for easy
# reference. Helps to make it easier to read.
fwcmd="/sbin/ipfw"
# Define our outside interface. With userland-ppp this
# defaults to tun0.
oif="tun0"
# Define our inside interface. This is usually your network
# card. Be sure to change this to match your own network
# interface.
iif="fxp0"
# Force a flushing of the current rules before we reload.
$fwcmd -f flush
# Check the state of all packets.
$fwcmd add check-state
# Stop spoofing on the outside interface.
$fwcmd add deny ip from any to any in via $oif not verrevpath
# Allow all connections that we initiate, and keep their state.
# but deny established connections that don't have a dynamic rule.
$fwcmd add allow ip from me to any out via $oif keep-state
$fwcmd add deny tcp from any to any established in via $oif
# Allow all connections within our network.
$fwcmd add allow ip from any to any via $iif
# Allow all local traffic.
$fwcmd add allow all from any to any via lo0
$fwcmd add deny all from any to 127.0.0.0/8
$fwcmd add deny ip from 127.0.0.0/8 to any
# Allow internet users to connect to the port 22 and 80.
# This example specifically allows connections to the sshd and a
# webserver.
$fwcmd add allow tcp from any to me dst-port 22,80 in via $oif setup keep-state
# Allow ICMP packets: remove type 8 if you don't want your host
# to be pingable.
$fwcmd add allow icmp from any to any via $oif icmptypes 0,3,8,11,12
# Deny and log all the rest.
$fwcmd add deny log ip from any to any</programlisting>
<para>You now have a fully functional firewall that only allows
connections to ports 22 and 80 and will log any other connection
attempts. You may now safely reboot and the firewall should
be automatically started and the ruleset loaded. If you find this
incorrect in any way or experience any problems, or have any
suggestions to improve this page, please email me.</para>
</sect1>
<sect1>
<title>Questions</title>
<qandaset>
<qandaentry>
<question>
<para>I get messages like <errorname>limit 500 reached on entry
2800</errorname> and after that my machine stops logging
denied packets that match that rule number. Is my firewall
still working?</para>
</question>
<answer>
<para>This merely means that the maximum logging count for
the rule has been reached. The rule itself is still
working, but it will no longer log until such time as you
reset the logging counters. An example of how to clear your
counters can be found below:</para>
<screen>&prompt.root; <userinput>ipfw resetlog</userinput></screen>
<para>Alternatively, you may increase the log limit in
your kernel configuration with the
<option>IPFIREWALL_VERBOSE_LIMIT</option> option as
described above. You may also change this limit (without
recompiling your kernel and having to reboot) by using the
net.inet.ip.fw.verbose_limit &man.sysctl.8; value.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>There must be something wrong. I followed your instructions
to the letter and now I am locked out.</para>
</question>
<answer>
<para>This tutorial assumes that you are running
<emphasis>userland-ppp</emphasis>, therefore the supplied rule set
operates on the <devicename>tun0</devicename> interface, which
corresponds to the first connection made with &man.ppp.8; (aka
<emphasis>user-ppp</emphasis>). Additional connections would use
<devicename>tun1</devicename>, <devicename>tun2</devicename> and so
on.</para>
<para>You should also note that &man.pppd.8; uses the
<devicename>ppp0</devicename> interface instead, so if you
start the connection with &man.pppd.8; you must substitute
<devicename>tun0</devicename> for
<devicename>ppp0</devicename>. A quick way to edit the
firewall rules to reflect this change is shown below. The
original rule set is backed up as
<filename>fwrules_tun0</filename>.</para>
<screen> &prompt.user; <userinput>cd /etc/firewall</userinput>
/etc/firewall&prompt.user; <userinput>su</userinput>
<prompt>Password:</prompt>
/etc/firewall&prompt.root; <userinput>mv fwrules fwrules_tun0</userinput>
/etc/firewall&prompt.root; <userinput>cat fwrules_tun0 | sed s/tun0/ppp0/g > fwrules</userinput>
</screen>
<para>To know whether you are currently using &man.ppp.8; or
&man.pppd.8; you can examine the output of
&man.ifconfig.8; once the connection is up. E.g., for a
connection made with &man.pppd.8; you would see something
like this (showing only the relevant lines):</para>
<screen> &prompt.user; <userinput>ifconfig</userinput>
<emphasis>(skipped...)</emphasis>
ppp0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
inet <replaceable>xxx.xxx.xxx.xxx</replaceable> --&gt; <replaceable>xxx.xxx.xxx.xxx</replaceable> netmask <replaceable>0xff000000</replaceable>
<emphasis>(skipped...)</emphasis>
</screen>
<para>On the other hand, for a connection made with
&man.ppp.8; (<emphasis>user-ppp</emphasis>) you should see
something similar to this:</para>
<screen> &prompt.user; <userinput>ifconfig</userinput>
<emphasis>(skipped...)</emphasis>
ppp0: flags=<replaceable>8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1500</replaceable>
<emphasis>(skipped...)</emphasis>
tun0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
<emphasis>(IPv6 stuff skipped...)</emphasis>
inet <replaceable>xxx.xxx.xxx.xxx</replaceable> --&gt; <replaceable>xxx.xxx.xxx.xxx</replaceable> netmask <replaceable>0xffffff00</replaceable>
Opened by PID <replaceable>xxxxx</replaceable>
<emphasis>(skipped...)</emphasis></screen>
</answer>
</qandaentry>
</qandaset>
</sect1>
</article>

View file

@ -1,16 +0,0 @@
#
# $FreeBSD$
#
# Article: Diskless X Server: a how to guide
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,353 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN" "../../share/sgml/entities.ent">
%entities;
]>
<!--
The FreeBSD Documentation Project
$FreeBSD$
-->
<article lang='en'>
<articleinfo>
<title>Diskless X Server: a how to guide</title>
<authorgroup>
<author>
<firstname>Jerry</firstname>
<surname>Kendall</surname>
<affiliation>
<address>
<email>jerry@kcis.com</email>
</address>
</affiliation>
</author></authorgroup>
<pubdate>28-December-1996</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<copyright>
<year>1996</year>
<holder>Jerry Kendall</holder>
</copyright>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.3com;
&tm-attrib.microsoft;
&tm-attrib.sun;
&tm-attrib.general;
</legalnotice>
<abstract>
<para>With the help of some friends on the FreeBSD-hackers list, I have
been able to create a diskless X terminal. The creation of the X
terminal required first creating a diskless system with minimal
utilities mounted via NFS. These same steps were used to create 2
separate diskless systems. The first is <hostid
role="fqdn">altair.example.com</hostid>. A diskless X terminal that I
run on my old 386DX-40. It has a 340Meg hard disk but, I did not want
to change it. So, it boots from <hostid
role="fqdn">antares.example.com</hostid> across a Ethernet. The second
system is a 486DX2-66. I set up a diskless FreeBSD (complete) that
uses no local disk. The server in that case is a Sun 670MP running
&sunos; 4.1.3. The same setup configuration was needed for both.</para>
<para>I am sure that there is stuff that needs to be added
to this. Please send me any comments.</para>
</abstract>
</articleinfo>
<sect1>
<title>Creating the boot floppy (On the diskless system)</title>
<para>Since the network boot loaders will not work with some of the TSR's
and such that &ms-dos; uses, it is best to create a dedicated boot floppy
or, if you can, create an &ms-dos; menu that will (via the
<filename>config.sys</filename>/<filename>autoexec.bat</filename> files)
ask what configuration to load when the system starts. The later is the
method that I use and it works great. My &ms-dos; (6.x) menu is
below.</para>
<example>
<title><filename>config.sys</filename></title>
<programlisting>[menu]
menuitem=normal, normal
menuitem=unix, unix
[normal]
....
normal config.sys stuff
...
[unix]</programlisting>
</example>
<example>
<title><filename>autoexec.bat</filename></title>
<programlisting>@ECHO OFF
goto %config%
:normal
...
normal autoexec.bat stuff
...
goto end
:unix
cd \netboot
nb8390.com
:end</programlisting>
</example>
</sect1>
<sect1>
<title>Getting the network boot programs (On the server)</title>
<para>Compile the <quote>net-boot</quote> programs that are located in
<filename>/usr/src/sys/i386/boot/netboot</filename>. You should read
the comments at the top of the <filename>Makefile</filename>. Adjust as
required. Make a backup of the original in case something goes wrong. When
the build is done, there should be 2 &ms-dos; executables,
<filename>nb8390.com</filename> and <filename>nb3c509.com</filename>.
One of these two programs will be what you need to run on the diskless
server. It will load the kernel from the boot server. At this point,
put both programs on the &ms-dos; boot floppy created earlier.</para>
</sect1>
<sect1>
<title>Determine which program to run (On the diskless system)</title>
<para>If you know the chipset that your Ethernet adapter uses, this is
easy. If you have the NS8390 chipset, or a NS8390 based chipset, use
<filename>nb8390.com</filename>. If you have a &tm.3com; 509 based chipset,
use the <filename>nb3C509.com</filename> boot program. If you are not
sure which you have, try using one, if it says <errorname>No adapter
found</errorname>, try the other. Beyond that, you are pretty much on
your own.</para>
</sect1>
<sect1>
<title>Booting across the network</title>
<para>Boot the diskless system with out any config.sys/autoexec.bat
files. Try running the boot program for your Ethernet adapter.</para>
<para>My Ethernet adapter is running in WD8013 16bit mode so I run
<filename>nb8390.com</filename></para>
<screen><prompt>C:&gt;</prompt> <userinput>cd \netboot</userinput>
<prompt>C:&gt;</prompt> <userinput>nb8390</userinput>
<prompt>Boot from Network (Y/N) ?</prompt> <userinput>Y</userinput>
BOOTP/TFTP/NFS bootstrap loader ESC for menu
Searching for adapter..
WD8013EBT base 0x0300, memory 0x000D8000, addr 00:40:01:43:26:66
Searching for server...</screen>
<para>At this point, my diskless system is trying to find a machine to act
as a boot server. Make note of the <literal>addr</literal> line above,
you will need this number later. Reset the diskless system and modify
your <filename>config.sys</filename> and
<filename>autoexec.bat</filename> files to do these steps automatically
for you. Perhaps in a menu. If you had to run
<command>nb3c509.com</command> instead of <command>nb8390.com</command>
the output is the same as above. If you got <errorname>No adapter
found</errorname> at the <literal>Searching for adapter...</literal>
message, verify that you did indeed set the compile time defines in the
<filename>Makefile</filename> correctly.</para>
</sect1>
<sect1>
<title>Allowing systems to boot across the network (On the server)</title>
<para>Make sure the <filename>/etc/inetd.conf</filename> file has entries
for tftp and bootps. Mine are listed below:</para>
<programlisting>tftp dgram udp wait nobody /usr/libexec/tftpd tftpd /tftpboot
#
# Additions by who ever you are
bootps dgram udp wait root /usr/libexec/bootpd bootpd /etc/bootptab</programlisting>
<para>If you have to change the <filename>/etc/inetd.conf</filename> file,
send a <literal>HUP</literal> signal to &man.inetd.8;. To do this, get the
process ID of <command>inetd</command> with <command>ps -ax | grep inetd | grep -v
grep</command>. Once you have it, send it a <literal>HUP</literal> signal. Do this by
<command>kill -HUP &lt;pid&gt;</command>. This will force <command>inetd</command> to
re-read its config file.</para>
<para>Did you remember to note the <literal>addr</literal> line from the
output of the boot loader on the diskless system? Guess what, here is
where you need it.</para>
<para>Add an entry to <filename>/etc/bootptab</filename> (maybe creating the
file). It should be laid out identical to this:</para>
<programlisting>altair:\
:ht=ether:\
:ha=004001432666:\
:sm=255.255.255.0:\
:hn:\
:ds=199.246.76.1:\
:ip=199.246.76.2:\
:gw=199.246.76.1:\
:vm=rfc1048:</programlisting>
<para>The lines are as follows:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<tbody>
<row>
<entry><literal>altair</literal></entry>
<entry>the diskless systems name without the domain name.</entry>
</row>
<row>
<entry><literal>ht=ether</literal></entry>
<entry>the hardware type of <quote>ethernet</quote>.</entry>
</row>
<row>
<entry><literal>ha=004001432666</literal></entry>
<entry>the hardware address (the number noted above).</entry>
</row>
<row>
<entry><literal>sm=255.255.255.0</literal></entry>
<entry>the subnet mask.</entry>
</row>
<row>
<entry><literal>hn</literal></entry>
<entry>tells server to send client's hostname to the
client.</entry>
</row>
<row>
<entry><literal>ds=199.246.76.1</literal></entry>
<entry>tells the client who the domain server is.</entry>
</row>
<row>
<entry><literal>ip=199.246.76.2</literal></entry>
<entry>tells the client what its IP address is.</entry>
</row>
<row>
<entry><literal>gw=199.246.76.1</literal></entry>
<entry>tells the client what the default gateway is.</entry>
</row>
<row>
<entry><literal>vm=...</literal></entry>
<entry>just leave it there.</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<note>
<para>Be sure to set up the IP addresses correctly, the addresses above
are my own.</para>
</note>
<para>Create the directory <filename>/tftpboot</filename> on the server it will contain the
configuration files for the diskless systems that the server will serve.
These files will be named <filename>cfg.<replaceable>ip</replaceable></filename> where <replaceable>ip</replaceable> is the IP
address of the diskless system. The config file for <hostid>altair</hostid> is
<filename>/tftpboot/cfg.199.246.76.2</filename>. The contents is:</para>
<programlisting>rootfs 199.246.76.1:/DiskLess/rootfs/altair
hostname altair.example.com</programlisting>
<para>The line <literal>hostname altair.example.com</literal> simply tells
the diskless system what its fully qualified domain name is.</para>
<para>The line <literal>rootfs
199.246.76.1:/DiskLess/rootfs/altair</literal> tells the diskless
system where its NFS mountable root filesystem is located.</para>
<note>
<para>The NFS mounted root filesystem will be mounted <emphasis>read
only</emphasis>.</para>
</note>
<para>The hierarchy for the diskless system can be re-mounted allowing
read-write operations if required.</para>
<para>I use my spare 386DX-40 as a dedicated X terminal.</para>
<para>The hierarchy for <hostid>altair</hostid> is:</para>
<literallayout>/
/bin
/etc
/tmp
/sbin
/dev
/dev/fd
/usr
/var
/var/run</literallayout>
<para>The actual list of files is:</para>
<screen>-r-xr-xr-x 1 root wheel 779984 Dec 11 23:44 ./kernel
-r-xr-xr-x 1 root bin 299008 Dec 12 00:22 ./bin/sh
-rw-r--r-- 1 root wheel 499 Dec 15 15:54 ./etc/rc
-rw-r--r-- 1 root wheel 1411 Dec 11 23:19 ./etc/ttys
-rw-r--r-- 1 root wheel 157 Dec 15 15:42 ./etc/hosts
-rw-r--r-- 1 root bin 1569 Dec 15 15:26 ./etc/XF86Config.altair
-r-x------ 1 bin bin 151552 Jun 10 1995 ./sbin/init
-r-xr-xr-x 1 bin bin 176128 Jun 10 1995 ./sbin/ifconfig
-r-xr-xr-x 1 bin bin 110592 Jun 10 1995 ./sbin/mount_nfs
-r-xr-xr-x 1 bin bin 135168 Jun 10 1995 ./sbin/reboot
-r-xr-xr-x 1 root bin 73728 Dec 13 22:38 ./sbin/mount
-r-xr-xr-x 1 root wheel 1992 Jun 10 1995 ./dev/MAKEDEV.local
-r-xr-xr-x 1 root wheel 24419 Jun 10 1995 ./dev/MAKEDEV</screen>
<para>If you are not using &man.devfs.5; (which is the default
in FreeBSD&nbsp;5.X), you should make sure that you
do not forget to run <command>MAKEDEV all</command> in the
<filename>dev</filename> directory.</para>
<para>My <filename>/etc/rc</filename> for <hostid>altair</hostid>
is:</para>
<programlisting>#!/bin/sh
#
PATH=/bin:/
export PATH
#
# configure the localhost
/sbin/ifconfig lo0 127.0.0.1
#
# configure the ethernet card
/sbin/ifconfig ed0 199.246.76.2 netmask 0xffffff00
#
# mount the root filesystem via NFS
/sbin/mount antares:/DiskLess/rootfs/altair /
#
# mount the /usr filesystem via NFS
/sbin/mount antares:/DiskLess/usr /usr
#
/usr/X11R6/bin/XF86_SVGA -query antares -xf86config /etc/XF86Config.altair > /dev/null 2>&amp;1
#
# Reboot after X exits
/sbin/reboot
#
# We blew up....
exit 1</programlisting>
<para>Any comments and all questions welcome.</para>
</sect1>
</article>

View file

@ -1,18 +0,0 @@
#
# $FreeBSD$
#
# Article: The Euro symbol on FreeBSD
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,347 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN" "../../share/sgml/entities.ent">
%entities;
]>
<article lang='en'>
<articleinfo>
<title>The Euro symbol on
<systemitem class="osname">FreeBSD</systemitem></title>
<authorgroup>
<author>
<firstname>Aaron</firstname>
<surname>Kaplan</surname>
<affiliation>
<address>
<email>aaron@lo-res.org</email>
</address>
</affiliation>
</author>
</authorgroup>
<copyright>
<year>2002</year>
<year>2003</year>
<holder>The FreeBSD Documentation Project</holder>
</copyright>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.general;
</legalnotice>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>This document will try to help you in getting started with the new
<keycap>Euro</keycap> Symbol on your new keyboard that you had to buy
in early 2002 because of the switch to the new common currency. We
will first focus on the more important parts like being able to
correctly display the symbol on the console. Later sections will deal
with configuring particular programs like
<application>X11</application>.
</para>
<para>Lots of helpful input came from Oliver Fromme, Tom Rhodes and
countless others. Thanks! Without you this article would not have been
possible!
</para>
</abstract>
</articleinfo>
<sect1>
<title>The Euro in a nutshell</title>
<para>If you already feel comfortable with
<ulink url="&url.books.handbook;/l10n.html">localization</ulink> as
described in the <systemitem class="osname">FreeBSD</systemitem>
Handbook you might be only interested in the following facts which
will get you started quickly:</para>
<variablelist>
<varlistentry>
<term>ISO8859-15</term>
<listitem>
<para>This is a slight modification of the commonly used ISO8859-1
character map. It includes the Euro symbol. Used for the
<envar>LANG</envar>, <envar>LC_CTYPE</envar> environment
variables.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>iso15-8x16.fnt</filename></term>
<listitem>
<para>The &man.vidcontrol.1; font for the console</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>/usr/share/syscons/keymaps/*.iso.kbd</filename></term>
<listitem>
<para>Appropriate keyboard maps depending on your language. Set your
<literal>keymap</literal> entry in <filename>rc.conf</filename> to
one of these.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><envar>LC_CTYPE</envar></term>
<listitem>
<para>Used to specify the correct character type in your
locale.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>XkbLayout "<replaceable>lang</replaceable>(euro)"</literal></term>
<listitem>
<para><application>Xorg</application> config option.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>/etc/X11/xorg.conf</filename></term>
<listitem>
<para>Be sure to adapt your X11 fonts to
<literal>-*-..-*-iso8859-15</literal></para>
</listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1 id="general">
<title>A general remark</title>
<para>In the following sections we will often refer to
<emphasis>ISO8859-15</emphasis>. This is the standard notation starting
with <systemitem class="osname">FreeBSD</systemitem> 4.5. In older
versions, the standard notation was either
<emphasis>ISO_8859-15</emphasis> or <emphasis>DIS_8859-15</emphasis>.
</para>
<para>If you are using an older version of
<systemitem class="osname">FreeBSD</systemitem>, be sure to take a
look at <filename>/usr/share/locale/</filename> in order to find out
which naming convention is in place.</para>
</sect1>
<sect1 id="console">
<title>The console</title>
<sect2>
<title>Setting up your console font</title>
<para>Depending on your console resolution and size you will need one of
the following lines in <filename>rc.conf</filename>:</para>
<programlisting>font8x16="iso15-8x16.fnt" # from /usr/share/syscons/fonts/*
font8x14="iso15-8x14.fnt"
font8x8="iso15-8x8.fnt"</programlisting>
<para>This will effectively select the ISO8859-15 also known as Latin-9
font. ISO8859-15 is a variation of ISO8859-1. You can tell the
difference between the two by looking at the Euro symbol: its decimal
value is 164. In ISO8859-1 you will notice a circle with four little
strokes at the corners. This is often termed the <quote>universal currency
symbol</quote>. In ISO8859-15, instead of the little circle, you have the
Euro Symbol. Otherwise the fonts are more or less identical.</para>
<warning>
<para>As of the time of this writing the only usable font seems to be
<literal>iso15-8x16.fnt</literal>. The others seem to only show
ISO8859-1 even though the name suggest otherwise.</para>
</warning>
<note>
<para>By specifying this font some console applications will look
garbled. This is due to the fact that they assume you are using a
different font/character set such as ANSI 850. One notable example
is <application>sysinstall</application>. However most of the
time this should not be of much concern.</para>
</note>
<para>As the next step you should either reboot your system to let the
changes take effect or (manually) take the steps that would have been
taken at the system startup:</para>
<screen>&prompt.user; <userinput>vidcontrol -f <replaceable>iso15-8x16.fnt</replaceable></userinput></screen>
<para>To check if the font has been selected execute the following short
<command><anchor id="awk-test"/>awk</command> script:</para>
<programlisting>#!/usr/bin/awk -f
BEGIN {
for(i = 160; i &lt; 180 ; i++)
printf"%3d %c\n",i,i
}</programlisting>
<para>The result should reveal the Euro sign at position 164.</para>
</sect2>
<sect2>
<title>Setting up your keyboard for the Euro</title>
<para>Most keyboard maps should already be set up correctly. I.e: If you
have a german keyboard and your Umlaut keys are working, you can
safely skip this section since the keyboard already maps whatever key
combination is necessary (e.g.: <keycombo action="simul"><keycap>Alt
Gr</keycap><keycap>e</keycap></keycombo>) to decimal value 164.
If running into problems, the best way to check is to take a look at
<filename>/usr/share/syscons/keymaps/*.kbd</filename>. The format of
the key mapping files is described in &man.keyboard.4;.
&man.kbdcontrol.1; can be used to load a custom keymap.</para>
<para>Once the correct keyboard map is selected, it should be added to
<filename>/etc/rc.conf</filename> with the line:</para>
<programlisting>keymap="<replaceable>german.iso</replaceable>" # or another map</programlisting>
<para>As stated above, this step has most probably already been taken
by you at installation time (with
<application>sysinstall</application>). If not, either reboot or
load the new keymap via &man.kbdcontrol.1;.</para>
<para>To verify the keyboard mapping, switch to a new console and at
the login prompt, <emphasis>instead of logging</emphasis> in, try to
type the <keycap>Euro</keycap> key. If it is not working, either
file a bug report via &man.send-pr.1; or make sure you in fact chose
the right keyboard map.</para>
<note>
<para>At this stage the Euro key will not yet work in
<application>bash </application> or
<application>tcsh</application>.</para>
</note>
</sect2>
<sect2>
<title>Fixing the environment variables</title>
<para>The shells (<application>bash</application>, <application>tcsh</application>) revert to the &man.readline.3; library
which in turn respects the <envar>LC_CTYPE</envar> environment
variable. <envar>LC_CTYPE</envar> must be set before the shell is
completely running. Luckily it suffices to add the line:</para>
<programlisting>export LC_CTYPE=<replaceable>de_DE</replaceable>.ISO8859-15</programlisting>
<para>to your <filename>.bash_profile</filename> (<application>bash</application>), or:</para>
<programlisting>setenv LC_CTYPE <replaceable>de_DE</replaceable>.ISO8859-15</programlisting>
<para>to your <filename>.login</filename> (<application>tcsh</application>) file. Of course,
<replaceable>de_DE</replaceable> should be replaced by your language.
Next, log out, log back in again, and verify your Euro key is working.
By now most console applications should respond to the Euro key. Extra
configuration steps for special programs like
<application>pine</application> might still be necessary
however.</para>
<note>
<para>An alternative to modifying <filename>.login</filename> and
<filename>.bash_profile</filename> is to set the environment
variables through the &man.login.conf.5; mechanism. This approach
has the advantage of assigning login classes to certain users (e.g.
French users, Italian users, etc) <emphasis>in one
place</emphasis>.</para>
</note>
</sect2>
</sect1>
<sect1 id="x11">
<title>Modifying X11</title>
<para>Modify <filename>/etc/X11/xorg.conf</filename>
in the following manner:</para>
<programlisting>Option "XkbLayout" "<replaceable>de</replaceable>(euro)"</programlisting>
<para>Again, replace <replaceable>de</replaceable> with your language. By
now, the keyboard should be set up correctly. As in the console section,
the correct font must be chosen. For <application>KDE</application>, go
to the <application>KDE control center</application> -&gt;
Personalization -&gt; Country &amp; Language -&gt; Charset and change it
to <literal>ISO8859-15</literal>. Similar steps apply to
<application>kmail</application> and other applications.</para>
<para>Another good idea is to modify your <filename>fonts.alias</filename>
files. Notably the <literal>fixed</literal> font should be changed to
the right character set: The author's
<filename>/usr/X11R6/lib/X11/fonts/misc/fonts.alias</filename> looks
like this:</para>
<programlisting>! $Xorg: fonts.alias,v 1.3 2000/08/21 16:42:31 coskrey Exp $
fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15
variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15
(...)</programlisting>
<para>As in the console sections, special applications still have
ISO8859-1 fonts configured in their respective &man.xrdb.1; databases. One
notable example is <application>xterm</application>. As a general rule
of thumb it suffices to change the corresponding configuration file in
<filename>/usr/X11R6/lib/X11/app-defaults</filename> and add the correct
font. Let us demonstrate this with
<application>xterm</application>.</para>
<screen>&prompt.root; cd /usr/X11R6/lib/X11/app-defaults/
&prompt.root; vi XTerm</screen>
<para>Add the following line to the beginning of the file:</para>
<programlisting>*font: -misc-fixed-medium-r-normal-*-*-120-*-*-c-*-iso8859-15</programlisting>
<para>Finally, restart X and make sure, fonts can be displayed by
executing the above <link linkend="awk-test">awk script</link>. All
major applications should respect the keyboard mapping and the font
settings.</para>
</sect1>
<sect1 id="problems">
<title>Open problems</title>
<para>Of course, the author would like to receive feedback. In addition,
at least let me know if you have fixes for one of these open
problems:</para>
<itemizedlist>
<listitem>
<para>Describe alternative way of setting up <application>Xorg</application>:
<filename role="package">x11/xkeycaps</filename></para>
</listitem>
<listitem>
<para>Settings in <application>GNOME</application></para>
</listitem>
<listitem>
<para>Settings in <application>XFCE</application></para>
</listitem>
<listitem>
<para>Settings for <application>(X)Emacs</application></para>
</listitem>
<listitem>
<para>Describe UTF-8</para>
</listitem>
<listitem>
<para>Describe <application>libiconv</application> as a effective way
to convert between ISO8859-15 and UTF-{8,16} from within
applications</para>
</listitem>
</itemizedlist>
</sect1>
</article>

View file

@ -1,16 +0,0 @@
#
# $FreeBSD$
#
# Article: Formatting Media For Use With FreeBSD
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,637 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN" "../../share/sgml/entities.ent">
%entities;
]>
<!-- $FreeBSD$ -->
<article lang='en'>
<articleinfo>
<title>Formatting Media For Use With FreeBSD</title>
<subtitle>A Tutorial</subtitle>
<authorgroup>
<author>
<firstname>Doug</firstname>
<surname>White</surname>
<affiliation>
<address>
<email>dwhite@resnet.uoregon.edu</email>
</address>
</affiliation>
</author>
</authorgroup>
<pubdate>March 1997</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.iomega;
&tm-attrib.opengroup;
&tm-attrib.general;
</legalnotice>
<abstract>
<para>This document describes how to slice, partition, and
format hard disk drives and similar media for use with
FreeBSD. The examples given have been tested under FreeBSD
2.2 and should work for other releases. The text has been updated
for FreeBSD version 4.</para>
</abstract>
</articleinfo>
<sect1>
<title>Introduction &amp; Definitions</title>
<sect2>
<title>Overview</title>
<para>Successfully adding disks to an existing system is the
mark of an experienced system administrator. Slicing,
partitioning, and adding disks requires a careful dance of
proper command and name syntax. One slipped finger and an
entire disk could disappear in seconds. This document is
written in an attempt to simplify this process and avoid
accidents. Thankfully, enhancements to existing tools
(notably sysinstall) have greatly improved this process in
recent releases of FreeBSD.</para>
<para>There are two possible modes of disk formatting:</para>
<itemizedlist>
<listitem>
<para><firstterm>compatibility mode</firstterm>: Arranging a
disk so that it has a slice table for use with other
operating systems.</para>
</listitem>
<listitem>
<para><firstterm>dedicated mode</firstterm>, sometimes called
<firstterm>dangerously dedicated mode</firstterm>: Formatting a disk
with no slice table. This makes the process of adding disks easier,
however non-FreeBSD operating systems may not accept the disk. The
term <emphasis>dangerously</emphasis> refers to the danger that the
system may not recognize a disk formatted in this manner.</para>
</listitem> </itemizedlist>
<para>For most cases, dedicated mode is the easiest to set up
and use in existing systems, as a new disk is usually
dedicated entirely to FreeBSD. However, compatibility mode
insures optimum interoperability with future installations at
a cost of increased complexity.</para>
<para>In addition to selecting the mode, two methods of slicing
the disk are available. One is using the system installation
tool <command>/stand/sysinstall</command>. 2.1.7-RELEASE and
later versions of <command>sysinstall</command> contain code
to ease setup of disks during normal system operation, mainly
allowing access to the Label and Partition editors and a Write
feature which will update just the selected disk and slice
without affecting other disks. The other method is running
the tools manually from a root command line. For
dedicated mode, only three or four commands are involved while
<command>sysinstall</command> requires some
manipulation.</para>
</sect2>
<sect2>
<title>Definitions</title>
<para>&unix; disk management over the centuries has invented many
new definitions for old words. The following glossary covers
the definitions used in this document and (hopefully) for
FreeBSD in general.</para>
<!-- I'm tempted to use GLOSSARY here but will resort to a list for
now. -->
<itemizedlist>
<listitem>
<para>compatibility mode: Arranging a disk so that it has a
slice table for use with other operating systems. Oppose
dedicated mode.</para>
</listitem>
<listitem>
<para>(dangerously) dedicated mode: Formatting a disk with no
slice table. This makes the process of adding disks
easier, however non-FreeBSD operating systems may not
accept the disk. Oppose compatibility mode.</para>
</listitem>
<listitem>
<para>disk: Hard disks, CDROMs, magneto-optical devices and
&iomegazip;/&jaz; removable media are example of storage devices
commonly used today. The basic principle of the way these
work is that one or more spinning disks spin by a motor,
while a head, moving on a radial path close to the disks,
reads from or writes data to the disk. Writing is done by
modifying some physical properties of the disk (magnetic
flow, reflectivity, etc.) while reading is done by
<quote>detecting</quote> changes to the same physical
properties of the disk.</para>
</listitem>
<listitem>
<para>slice: A division of a disk. Up to four slices are
permitted on one disk in the PC standard. Slices are
composed of contiguous sectors. Slices are recorded in a
<quote>slice table</quote> used by the system BIOS to
locate bootable partitions. The slice table is usually
called the <quote>partition table</quote> in DOS parlance. Maintained by
the fdisk utility.</para>
</listitem>
<listitem>
<para>partition: A division of a slice. Usually used in
reference to divisions of the FreeBSD slice of a disk.
Each filesystem and swap area on a disk resides in a
partition. Maintained using the disklabel utility.</para>
</listitem>
<listitem>
<para>sector: Smallest subdivision of a disk. One sector
usually represents 512 bytes of data.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2>
<title>Warnings &amp; Pitfalls</title>
<para>Building disks is not something to take lightly. It is
quite possible to destroy the contents of other disks in your
system if the proper precautions are not taken.</para>
<para><emphasis>Check your work carefully.</emphasis> It is very simple
to destroy the incorrect disk when working with these
commands. When in doubt consult the kernel boot output for
the proper device.</para>
<para>Needless to say, we are not responsible for any damage to
any data or hardware that you may experience. You work at
your own risk!</para>
</sect2>
<sect2>
<title>Zip, Jaz, and Other Removables</title>
<para>Removable disks can be formatted in the same way as normal
hard disks. It is essential to have the disk drive connected
to the system and a disk placed in the drive during startup,
so the kernel can determine the drive's geometry. Check the
<command>dmesg</command> output and make sure your device and
the disk's size is listed. If the kernel reports
<informalexample>
<screen>Can't get the size</screen>
</informalexample>
then the disk was not in the drive. In this case, you will
need to restart the machine before attempting to format
disks.</para>
</sect2>
</sect1>
<sect1>
<title>Formatting Disks in Dedicated Mode</title>
<sect2>
<title>Introduction</title>
<para>This section details how to make disks that are totally
dedicated to FreeBSD. Remember, dedicated mode disks sometimes
cannot be booted by the PC architecture.</para>
</sect2>
<sect2>
<title>Making Dedicated Mode Disks using Sysinstall</title>
<para><command>/stand/sysinstall</command>, the system
installation utility, has been expanded in recent versions to
make the process of dividing disks properly a less tiring
affair. The fdisk and disklabel editors built into sysinstall
are GUI tools that remove much of the confusion from slicing
disks. For FreeBSD versions 2.1.7 and later, this is perhaps
the simplest way to slice disks.</para>
<procedure>
<step>
<para>Start sysinstall as root by typing
<informalexample>
<screen>&prompt.root; <userinput>/stand/sysinstall</userinput></screen>
</informalexample>
from the command prompt.</para>
</step>
<step>
<para>Select <command>Index</command>.</para>
</step>
<step>
<para>Select <command>Partition</command>.</para>
</step>
<step>
<para>Select the disk to edit with arrow keys and
<keycap>SPACE</keycap>.</para>
</step>
<step>
<para>If you are using this entire disk for FreeBSD, select
<command>A</command>.</para>
</step>
<step>
<para>When asked if you still want to do this, answer
<command>Yes</command>.</para>
</step>
<step>
<para>Select <command>Write</command>.</para>
</step>
<step>
<para>When warned about writing on installed systems, answer
<command>Yes</command>.</para>
</step>
<step>
<para>When asked about installing a boot loader, select
<command>None</command> to leave the Master Boot Record
untouched. This is only needed on a new install of &os;
unless the disk will be placed into another machine.</para>
</step>
<step>
<para>Press <keycap>ENTER</keycap> on the message stating
<quote>Wrote FDISK partition information out
successfully</quote>.</para>
</step>
<step>
<para><command>Quit</command>the FDISK Editor and
<keycap>ESCAPE</keycap> back to the Index menu.</para>
</step>
<step>
<para>Select <command>Label</command> from the Index
menu.</para>
</step>
<step>
<para>Label as desired. For a single partition, enter
<command>C</command> to Create a partition, accept the
default size, partition type Filesystem, and a mountpoint
(which is not used).</para>
</step>
<step>
<para>Enter <command>W</command> when done and confirm to
continue. The filesystem will be newfs'd for you, unless
you select otherwise (for new partitions you will want to
do this!). You will get the error:
<informalexample>
<screen>Error mounting /mnt/dev/ad2s1e on /mnt/blah : No such file or directory</screen>
</informalexample>
Ignore.</para>
</step>
<step>
<para>Exit out by repeatedly pressing
<keycap>ESCAPE</keycap>.</para>
</step>
</procedure>
</sect2>
<sect2>
<title>Making Dedicated Mode Disks Using the Command Line</title>
<para>Execute the following commands, replacing <devicename>ad2</devicename> with the
disk name.</para>
<informalexample>
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/ad2 count=2</userinput>
&prompt.root; <userinput>disklabel /dev/ad2 | disklabel -B -R -r ad2 /dev/stdin</userinput>
<lineannotation>We only want one partition, so using slice 'c' should be fine:</lineannotation>
&prompt.root; <userinput>newfs /dev/ad2c</userinput></screen>
</informalexample>
<para>If you need to edit the disklabel to create multiple
partitions (such as swap), use the following: </para>
<informalexample>
<screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/ad2 count=2</userinput>
&prompt.root; <userinput>disklabel /dev/ad2 > /tmp/label</userinput>
<lineannotation>Edit disklabel to add partitions:</lineannotation>
&prompt.root; <userinput>vi /tmp/label</userinput>
&prompt.root; <userinput>disklabel -B -R -r ad2 /tmp/label</userinput>
<lineannotation>newfs partitions appropriately</lineannotation></screen>
</informalexample>
<para>Your disk is now ready for use.</para>
</sect2>
</sect1>
<sect1>
<title>Making Compatibility Mode Disks</title>
<sect2>
<title>Introduction</title>
<para>The command line is the easiest way to make dedicated
disks, and the worst way to make compatibility disks. The
command-line <command>fdisk</command> utility requires higher math skills and an
in-depth understanding of the slice table, which is more than
most people want to deal with. Use sysinstall for
compatibility disks, as described below.</para>
</sect2>
<sect2>
<title>Making Compatibility Mode Disks Using Sysinstall</title>
<procedure>
<step>
<para>Start sysinstall as root by typing
<informalexample>
<screen>&prompt.root; <userinput>/stand/sysinstall</userinput></screen>
</informalexample>
from the command prompt.</para>
</step>
<step>
<para>Select <command>Index</command>.</para>
</step>
<step>
<para>Select <command>Partition</command>.</para>
</step>
<step>
<para>Select the disk to edit with arrow keys and
<keycap>SPACE</keycap>.</para>
</step>
<step>
<para>If you are using this entire disk for FreeBSD, select
<command>A</command>.</para>
</step>
<step>
<para>When asked:
<informalexample>
<screen>Do you want to do this with a true partition entry so as to remain
cooperative with any future possible operating systems on the
drive(s)?</screen>
</informalexample>
answer <command>yes</command>.</para>
</step>
<step>
<para>Select <command>Write</command>.</para>
</step>
<step>
<para>When asked to install the boot manager, select None
with <keycap>SPACE</keycap> then hit
<keycap>ENTER</keycap> for OK.</para>
</step>
<step>
<para><command>Quit</command> the FDISK Editor.</para>
</step>
<step>
<para>You will be asked about the boot manager, select
<command>None</command> again. </para>
</step>
<step>
<para>Select <command>Label</command> from the Index
menu.</para>
</step>
<step>
<para>Label as desired. For a single partition, accept the
default size, type filesystem, and a mountpoint (which
is not used).</para>
</step>
<step>
<para>The filesystem will be newfs'd for you, unless you
select otherwise (for new partitions you will want to do
this!). You will get the error:
<informalexample>
<screen>Error mounting /mnt/dev/ad2s1e on /mnt/blah : No such file or directory</screen>
</informalexample>
Ignore.</para>
</step>
<step>
<para>Exit out by repeatedly pressing
<keycap>ESCAPE</keycap>.</para>
</step>
</procedure>
<para>Your new disk is now ready for use.</para>
</sect2>
</sect1>
<sect1>
<title>Other Disk Operations</title>
<sect2>
<title>Adding Swap Space</title>
<para>As a system grows, its need for swap space can also grow.
Although adding swap space to existing disks is very
difficult, a new disk can be partitioned with additional swap
space.</para>
<para>To add swap space when adding a disk to a system:</para>
<procedure>
<step>
<para>When partitioning the disk, edit the disklabel and
allocate the amount of swap space to add in partition `b'
and the remainder in another partition, such as `a' or
`e'. The size is given in 512 byte blocks.</para>
</step>
<step>
<para>When newfsing the drive, do NOT newfs the `c'
partition. Instead, newfs the partition where the
non-swap space lies.</para>
</step>
<step>
<para>Add an entry to <filename>/etc/fstab</filename> as
follows:</para>
<informalexample>
<programlisting>/dev/ad0b none swap sw 0 0
</programlisting>
</informalexample>
<para>Change <filename>/dev/ad0b</filename> to the device of the newly added
space.</para>
</step>
<step>
<para>To make the new space immediately available, use the
<command>swapon</command> command.
<informalexample>
<screen>&prompt.root; <userinput>swapon /dev/da0b</userinput>
swapon: added /dev/da0b as swap space</screen>
</informalexample>
</para>
</step>
</procedure>
</sect2>
<sect2>
<title>Copying the Contents of Disks</title>
<!-- Should have specific tag -->
<para>Submitted By: Renaud Waldura
(<email>renaud@softway.com</email>) </para>
<para>To move file from your original base disk to the fresh new
one, do:
<informalexample>
<screen>&prompt.root; <userinput>mount /dev/ad2 /mnt</userinput>
&prompt.root; <userinput>pax -r -w -p e /usr/home /mnt</userinput>
&prompt.root; <userinput>umount /mnt</userinput>
&prompt.root; <userinput>rm -rf /usr/home/*</userinput>
&prompt.root; <userinput>mount /dev/ad2 /usr/home</userinput></screen>
</informalexample>
</para>
</sect2>
<sect2>
<title>Creating Striped Disks using CCD</title>
<para>Commands Submitted By: Stan Brown
(<email>stanb@awod.com</email>) </para>
<para>The Concatenated Disk Driver, or CCD, allows you to treat
several identical disks as a single disk. Striping can result
in increased disk performance by distributing reads and writes
across the disks. See the &man.ccd.4; and &man.ccdconfig.8;
manual pages or the <ulink
url="http://stampede.cs.berkeley.edu/ccd/">CCD
Homepage</ulink> for further details.</para>
<para>You no longer need to build a special kernel to run ccd. When you
run <command>ccdconfig</command>, it will load the KLD for you if the
kernel does not contain CCD support.</para>
<para>You build CCDs on disk partitions of type
<emphasis>4.2BSD</emphasis>. If you want to use the entire disk, you
still need to create a new partition. For example, <userinput>disklabel
-e</userinput> might show:</para>
<informalexample>
<screen># size offset fstype [fsize bsize bps/cpg]
c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)</screen>
</informalexample>
<para>You should not use partition <emphasis>c</emphasis> for the CCD,
since it is of type <emphasis>unused</emphasis>. Instead, create a new
partition of exactly the same size, but with type
<emphasis>4.2BSD</emphasis>:</para>
<informalexample>
<screen># size offset fstype [fsize bsize bps/cpg]
c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)
<userinput> e: 60074784 0 4.2BSD 0 0 0 # (Cyl. 0 - 59597)</userinput></screen>
</informalexample>
<para>To create a new CCD, execute the following commands. This
describes how to add three disks together; simply add or remove devices
as necessary. Remember that the disks to be striped must be
<emphasis>identical.</emphasis></para>
<informalexample>
<screen>&prompt.root; <userinput>cd /dev ; sh MAKEDEV ccd0</userinput>
&prompt.root; <userinput>disklabel -r -w da0 auto</userinput>
&prompt.root; <userinput>disklabel -r -w da1 auto</userinput>
&prompt.root; <userinput>disklabel -r -w da2 auto</userinput>
&prompt.root; <userinput>disklabel -e da0</userinput>
<lineannotation>Add partition e with type 4.2BSD</lineannotation>
&prompt.root; <userinput>disklabel -e da1</userinput>
<lineannotation>Add partition e with type 4.2BSD</lineannotation>
&prompt.root; <userinput>disklabel -e da2</userinput>
<lineannotation>Add partition e with type 4.2BSD</lineannotation>
&prompt.root; <userinput>ccdconfig ccd0 273 0 /dev/da0e /dev/da1e /dev/da2e</userinput>
&prompt.root; <userinput>newfs /dev/ccd0c</userinput></screen>
</informalexample>
<para>The value 273 is the stripe size. This is the number of disk
sectors (of 512 bytes each) in each block of data on the CCD. It should
be at least 128 kB, and it should not be not be a power of 2.</para>
<para>Now you can mount and use your CCD by referencing device
<filename>/dev/ccd0c</filename>.</para>
<para>A more powerful and flexible alternative to CCD is Vinum. See the
<ulink url="http://www.vinumvm.org/">Vinum Project home page</ulink>
for further details.</para>
</sect2>
</sect1>
<sect1>
<title>Credits</title>
<para>The author would like to thank the following individuals for
their contributions to this project:</para>
<itemizedlist>
<listitem>
<para>Darryl Okahata
(<email>darrylo@hpnmhjw.sr.hp.com</email>) for his simple
dedicated mode setup documentation which I have used
repeatedly on FreeBSD-questions.</para>
</listitem>
<listitem>
<para>&a.jkh; for making sysinstall useful for this type of task.
</para>
</listitem>
<listitem>
<para>John Fieber (<email>jfieber@indiana.edu</email>) for
making information and examples of the DocBook DTD on which
this document is based.</para>
</listitem>
<listitem>
<para>&a.grog; for checking my work and pointing out inaccuracies,
as well as miscellaneous support.</para>
</listitem>
</itemizedlist>
</sect1>
</article>

View file

@ -129,10 +129,6 @@ in your /etc/rc.conf. Extra options can be found in startup script.</screen>
<ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6-stable/Latest/"></ulink>
to download the most recent packages built for the
6.X series.</para>
<para>You can read more about the &os; versions in the article
<ulink url="&url.base;/doc/en_US.ISO8859-1/articles/version-guide/">
Choosing the &os; Version That Is Right For You</ulink>.</para>
</note>
<para>For more information on packages please refer to section 4.4 of

View file

@ -1,17 +0,0 @@
#
# $FreeBSD$
#
# Article: Installing and Using FreeBSD With Other Operating Systems
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,756 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN" "../../share/sgml/entities.ent">
%entities;
]>
<!-- $FreeBSD$ -->
<article lang='en'>
<articleinfo>
<title>Installing and Using FreeBSD With Other Operating Systems</title>
<authorgroup>
<author>
<firstname>Jay</firstname>
<surname>Richmond</surname>
<affiliation>
<address>
<email>jayrich@sysc.com</email>
</address>
</affiliation>
</author>
</authorgroup>
<pubdate>6 August 1996</pubdate>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.ibm;
&tm-attrib.linux;
&tm-attrib.microsoft;
&tm-attrib.powerquest;
&tm-attrib.general;
</legalnotice>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>This document discusses how to make FreeBSD coexist nicely
with other popular operating systems such as Linux, &ms-dos;,
&os2;, and &windows; 95. Special thanks to: Annelise Anderson
<email>andrsn@stanford.edu</email>, Randall Hopper
<email>rhh@ct.picker.com</email>, and &a.jkh;.</para>
</abstract>
</articleinfo>
<sect1>
<title>Overview</title>
<para>Most people can not fit these operating systems together
comfortably without having a larger hard disk, so special
information on large EIDE drives is included. Because there are
so many combinations of possible operating systems and hard disk
configurations, the <xref linkend="ch5"/> section may be of the
most use to you. It contains descriptions of specific working
computer setups that use multiple operating systems.</para>
<para>This document assumes that you have already made room on
your hard disk for an additional operating system. Any time you
repartition your hard drive, you run the risk of destroying the
data on the original partitions. However, if your hard drive is
completely occupied by DOS, you might find the FIPS utility
(included on the FreeBSD CDROM in the
<filename>\TOOLS</filename> directory or via <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">ftp</ulink>)
useful. It lets you repartition your hard disk without
destroying the data already on it. There is also a commercial
program available called <application>&partitionmagic;</application>, which lets you size
and delete partitions without consequence.</para>
</sect1>
<sect1 id="ch2">
<title>Overview of Boot Managers</title>
<para>These are just brief descriptions of some of the different
boot managers you may encounter. Depending on your computer
setup, you may find it useful to use more than one of them on
the same system.</para>
<variablelist>
<varlistentry>
<term>Boot Easy</term>
<listitem>
<para>This is the default boot manager used with FreeBSD.
It has the ability to boot most anything, including BSD,
&os2; (HPFS), &windows; 95 (FAT and FAT32), and Linux.
Partitions are selected with the function keys.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>&os2; Boot Manager</term>
<listitem>
<para>This will boot FAT, FAT32, HPFS, FFS (FreeBSD), and EXT2
(Linux). Partitions
are selected using arrow keys. The &os2; Boot Manager is
the only one to use its own separate partition, unlike the
others which use the master boot record (MBR). Therefore,
it must be installed below the 1024th cylinder to avoid
booting problems. It can boot Linux using LILO when it is
part of the boot sector, not the MBR. Go to <ulink
url="http://www.linuxresources.com/LDP/HOWTO/HOWTO-INDEX.html">Linux
HOWTOs</ulink> on the World Wide Web for more
information on booting Linux with the &os2; boot
manager.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>OS-BS</term>
<listitem>
<para>This is an alternative to Boot Easy. It gives you more
control over the booting process, with the ability to set
the default partition to boot and the booting timeout.
The beta version of this programs allows you to boot by
selecting the OS with your arrow keys. It is included on
the FreeBSD CD in the <filename class="directory">\TOOLS</filename>
directory, and via <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">ftp</ulink>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>LILO, or LInux LOader</term>
<listitem>
<para>This is a limited boot manager. It will boot FreeBSD,
though some customization work is required in the LILO
configuration file.</para>
</listitem>
</varlistentry>
</variablelist>
<note id="fat32">
<title>About FAT32</title>
<para>FAT32 is the replacement to the FAT filesystem included in
Microsoft's OEM SR2 Beta release, which started replacing FAT
on computers pre-loaded with &windows; 95 towards the
end of 1996. It converts the normal FAT filesystem and
allows you to use smaller cluster sizes for larger hard
drives. FAT32 also modifies the traditional FAT boot sector
and allocation table, making it incompatible with some boot
managers.</para>
</note>
</sect1>
<sect1 id="ch3">
<title>A Typical Installation</title>
<para>Let's say I have two large EIDE hard drives, and I want to
install FreeBSD, Linux, and &windows; 95 on them.</para>
<para>Here is how I might do it using these hard disks:</para>
<itemizedlist>
<listitem>
<para><filename>/dev/wd0</filename> (first physical hard disk)</para>
</listitem>
<listitem>
<para><filename>/dev/wd1</filename> (second hard disk)</para>
</listitem>
</itemizedlist>
<para>Both disks have 1416 cylinders.</para>
<procedure>
<step>
<para>I boot from a &ms-dos; or &windows; 95 boot disk that
contains the <filename>FDISK.EXE</filename> utility and make a small
50&nbsp;MB primary partition (35-40 for &windows; 95, plus a
little breathing room) on the first disk. Also create a
larger partition on the second hard disk for my &windows;
applications and data.</para>
</step>
<step>
<para>I reboot and install &windows; 95 (easier said than done)
on the <filename>C:</filename> partition.</para>
</step>
<step>
<para>The next thing I do is install Linux. I am not sure
about all the distributions of Linux, but <ulink url="http://www.slackware.com">Slackware</ulink> includes
LILO (see <xref linkend="ch2"/>). When I am partitioning out
my hard disk with Linux <command>fdisk</command>, I would
put all of Linux on the first drive (maybe 300&nbsp;MB for a
nice root partition and some swap space).</para>
</step>
<step>
<para>After I install Linux, and are prompted about installing
LILO, make <emphasis>sure</emphasis> that I install it on the boot sector of my
root Linux partition, not in the MBR (master boot
record).</para>
</step>
<step>
<para>The remaining hard disk space can go to FreeBSD. I also
make sure that my FreeBSD root slice does not go beyond the
1024th cylinder. (The 1024th cylinder is 528&nbsp;MB into the
disk with our hypothetical 720&nbsp;MB disks). I will use the
rest of the hard drive (about 270&nbsp;MB) for the
<filename class="directory">/usr</filename> and <filename class="directory">/</filename> slices if I wish. The
rest of the second hard disk (size depends on the amount of
my &windows; application/data partition that I created in step
1) can go to the <filename class="directory">/usr/src</filename> slice and swap
space.</para>
</step>
<step>
<para>When viewed with the &windows; 95 <command>fdisk</command>
utility, my hard drives should now look something like this:
<screen>---------------------------------------------------------------------
Display Partition Information
Current fixed disk drive: 1
Partition Status Type Volume_Label Mbytes System Usage
C: 1 A PRI DOS 50 FAT** 7%
2 A Non-DOS (Linux) 300 43%
Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
Press Esc to continue
---------------------------------------------------------------------
Display Partition Information
Current fixed disk drive: 2
Partition Status Type Volume_Label Mbytes System Usage
D: 1 A PRI DOS 420 FAT** 60%
Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
Press Esc to continue
---------------------------------------------------------------------</screen>
** May say FAT16 or FAT32 if you are using the OEM SR2
update. See <xref linkend="ch2"/>.</para>
</step>
<step>
<para>Install FreeBSD. I make sure to boot with my first hard
disk set at <quote>NORMAL</quote> in the BIOS. If it is not,
I will have the enter my true disk geometry at boot time (to
get this, boot &windows; 95 and consult Microsoft Diagnostics
(<filename>MSD.EXE</filename>), or check your BIOS) with the
parameter <literal>hd0=1416,16,63</literal> where
<replaceable>1416</replaceable> is the number of cylinders on my hard
disk, <replaceable>16</replaceable> is the number of heads per track,
and <replaceable>63</replaceable> is the number of sectors per track on
the drive.</para>
</step>
<step>
<para>When partitioning out the hard disk, I make sure to
install Boot Easy on the first disk. I do not worry about
the second disk, nothing is booting off of it.</para>
</step>
<step>
<para>When I reboot, Boot Easy should recognize my three
bootable partitions as DOS (&windows; 95), Linux, and BSD
(FreeBSD).</para>
</step>
</procedure>
</sect1>
<sect1 id="ch4">
<title>Special Considerations</title>
<para>Most operating systems are very picky about where and how
they are placed on the hard disk. &windows; 95 and DOS need to be
on the first primary partition on the first hard disk. &os2; is
the exception. It can be installed on the first or second disk
in a primary or extended partition. If you are not sure, keep
the beginning of the bootable partitions below the 1024th
cylinder.</para>
<para>If you install &windows; 95 on an existing BSD system, it will
<quote>destroy</quote> the MBR, and you will have to reinstall your
previous boot manager. Boot Easy can be reinstalled by using
the <filename>BOOTINST.EXE</filename> utility included in the <filename class="directory">\TOOLS</filename> directory on the
CDROM, and via <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">ftp</ulink>.
You can also re-start the installation process and go to the
partition editor. From there, mark the FreeBSD partition as
bootable, select Boot Manager, and then type W to (W)rite out
the information to the MBR. You can now reboot, and Boot Easy
should then recognize &windows; 95 as DOS.</para>
<para>Please keep in mind that &os2; can read FAT and HPFS
partitions, but not FFS (FreeBSD) or EXT2 (Linux) partitions.
Likewise, &windows; 95 can only read and write to FAT and FAT32
(see <xref linkend="ch2"/>) partitions. FreeBSD can read most
filesystems, but currently cannot read HPFS partitions. Linux
can read HPFS partitions, but can not write to them. Recent
versions of the Linux kernel (2.x) can read and write to &windows;
95 VFAT partitions (VFAT is what gives &windows; 95 long file
names - it is pretty much the same as FAT). Linux can read and
write to most filesystems. Got that? I hope so.</para>
</sect1>
<sect1 id="ch5">
<title>Examples</title>
<para><emphasis>(section needs work, please send your example to
<email>jayrich@sysc.com</email>)</emphasis>.</para>
<para>FreeBSD + &windows; 95: If you installed FreeBSD after &windows; 95,
you should see <literal>DOS</literal> on the Boot Easy menu. This is
&windows; 95. If you installed &windows; 95 after FreeBSD, read
<xref linkend="ch4"/> above. As long as your hard disk does not
have 1024 cylinders you should not have a problem booting. If
one of your partitions goes beyond the 1024th cylinder however,
and you get messages like <errorname>invalid system disk</errorname>
under DOS (&windows; 95) and FreeBSD will not boot, try looking
for a setting in your BIOS called <quote>&gt; 1024 cylinder
support</quote> or <quote>NORMAL/LBA</quote> mode. DOS may need LBA
(Logical Block Addressing) in order to boot correctly. If the
idea of switching BIOS settings every time you boot up does not
appeal to you, you can boot FreeBSD through DOS via the
<filename>FBSDBOOT.EXE</filename> utility on the CD (It should find your
FreeBSD partition and boot it.)</para>
<para>FreeBSD + &os2; + &windows; 95: Nothing new here. The &os2; boot manager
can boot all of these operating systems, so that should not be a
problem.</para>
<para>FreeBSD + Linux: You can also use Boot Easy to boot both
operating systems.</para>
<para>FreeBSD + Linux + &windows; 95: (see <xref linkend="ch3"/>)</para>
</sect1>
<sect1 id="sources">
<title>Other Sources of Help</title>
<para>There are many <ulink
url="http://www.linuxresources.com/LDP/HOWTO/HOWTO-INDEX.html">Linux
HOW-TOs</ulink> that deal with multiple operating systems on
the same hard disk.</para>
<para>The <ulink
url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+DOS+Win95+OS2.html">Linux+DOS+Win95+OS2
mini-HOWTO</ulink> offers help on configuring the &os2; boot
manager, and the <ulink
url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+FreeBSD.html">Linux+FreeBSD
mini-HOWTO</ulink> might be interesting as well. The <ulink
url="http://www.in.net/~jkatz/win95/Linux-HOWTO.html">Linux-HOWTO</ulink>
is also helpful.</para>
<para>The <ulink
url="http://www.tburke.net/info/ntldr/ntldr_hacking_guide.htm">&windowsnt;
Loader Hacking Guide</ulink> provides good information on
multibooting &windowsnt;, &windows; 95, and DOS with other operating
systems.</para>
<para>And Hale Landis's <quote>How It Works</quote> document pack contains some
good info on all sorts of disk geometry and booting related
topics. You can find it at
<ulink url="ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip"></ulink>.</para>
<para>Finally, do not overlook FreeBSD's kernel documentation on
the booting procedure, available in the kernel source
distribution (it unpacks to <ulink
url="file://localhost/usr/src/sys/i386/boot/biosboot/README.386BSD">/usr/src/sys/i386/boot/biosboot/README.386BSD</ulink>.</para>
</sect1>
<sect1>
<title>Technical Details</title>
<para><emphasis>(Contributed by Randall Hopper,
<email>rhh@ct.picker.com</email>)</emphasis></para>
<para>This section attempts to give you enough basic information
about your hard disks and the disk booting process so that you
can troubleshoot most problems you might encounter when getting
set up to boot several operating systems. It starts in pretty
basic terms, so you may want to skim down in this section until
it begins to look unfamiliar and then start reading.</para>
<sect2>
<title>Disk Primer</title>
<para>Three fundamental terms are used to describe the location
of data on your hard disk: Cylinders, Heads, and Sectors.
It is not particularly important to know what these terms
relate to except to know that, together, they identify where
data is physically on your disk.</para>
<para>Your disk has a particular number of cylinders, number of
heads, and number of sectors per cylinder-head (a
cylinder-head also known now as a track). Collectively this
information defines the <quote>physical disk geometry</quote> for your hard
disk. There are typically 512 bytes per sector, and 63
sectors per track, with the number of cylinders and heads
varying widely from disk to disk. Thus you can figure the
number of bytes of data that will fit on your own disk by
calculating:</para>
<informalexample>
<para>(# of cylinders) &times; (# heads) &times; (63
sectors/track) &times; (512 bytes/sect)</para>
</informalexample>
<para>For example, on my 1.6 Gig Western Digital AC31600 EIDE hard
disk, that is:</para>
<informalexample>
<para>(3148 cyl) &times; (16 heads) &times; (63
sectors/track) &times; (512 bytes/sect)</para>
</informalexample>
<para>which is 1,624,670,208 bytes, or around 1.6 Gig.</para>
<para>You can find out the physical disk geometry (number of
cylinders, heads, and sectors/track counts) for your hard
disks using ATAID or other programs off the net. Your hard
disk probably came with this information as well. Be careful
though: if you are using BIOS LBA (see <xref
linkend="limits"/>), you can not use just any program to get
the physical geometry. This is because many programs (e.g.
<filename>MSD.EXE</filename> or FreeBSD fdisk) do not identify the
physical disk geometry; they instead report the
<firstterm>translated geometry</firstterm> (virtual numbers from using
LBA). Stay tuned for what that means.</para>
<para>One other useful thing about these terms. Given 3
numbers&mdash;a cylinder number, a head number, and a
sector-within-track number&mdash;you identify a specific
absolute sector (a 512 byte block of data) on your disk.
Cylinders and Heads are numbered up from 0, and Sectors are
numbered up from 1.</para>
<para>For those that are interested in more technical details,
information on disk geometry, boot sectors, BIOSes, etc. can
be found all over the net. Query Lycos, Yahoo, etc. for
<literal>boot sector</literal> or <literal>master boot record</literal>.
Among the useful info you will find are Hale Landis's
<citetitle>How It Works</citetitle> document pack. See the <xref
linkend="sources"/> section for a few pointers to this
pack.</para>
<para>Ok, enough terminology. We are talking about booting
here.</para>
</sect2>
<sect2 id="booting">
<title>The Booting Process</title>
<para>On the first sector of your disk (Cyl 0, Head 0, Sector 1)
lives the Master Boot Record (MBR). It contains a map of your
disk. It identifies up to 4 <firstterm>partitions</firstterm>, each of
which is a contiguous chunk of that disk. FreeBSD calls
partitions <firstterm>slices</firstterm> to avoid confusion with its
own partitions, but we will not do that here. Each partition can
contain its own operating system.</para>
<para>Each partition entry in the MBR has a <firstterm>Partition
ID</firstterm>, a <firstterm>Start Cylinder/Head/Sector</firstterm>, and an
<firstterm>End Cylinder/Head/Sector</firstterm>. The Partition ID
tells what type of partition it is (what OS) and the Start/End
tells where it is. <xref linkend="tbl-pid"/> lists a
smattering of some common Partition IDs.</para>
<table id="tbl-pid">
<title>Partition IDs</title>
<tgroup cols="2">
<thead>
<row>
<entry>ID (hex)</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry>01</entry>
<entry>Primary DOS12 (12-bit FAT)</entry>
</row>
<row>
<entry>04</entry>
<entry>Primary DOS16 (16-bit FAT)</entry>
</row>
<row>
<entry>05</entry>
<entry>Extended DOS</entry>
</row>
<row>
<entry>06</entry>
<entry>Primary big DOS (&gt; 32MB)</entry>
</row>
<row>
<entry>0A</entry>
<entry>&os2;</entry>
</row>
<row>
<entry>83</entry>
<entry>Linux (EXT2FS)</entry>
</row>
<row>
<entry>A5</entry>
<entry>FreeBSD, NetBSD, 386BSD (UFS)</entry>
</row>
</tbody>
</tgroup>
</table>
<para>Note that not all partitions are bootable (e.g. Extended
DOS). Some are&mdash;some are not. What makes a partition
bootable is the configuration of the <firstterm>Partition Boot
Sector</firstterm> that exists at the beginning of each
partition.</para>
<para>When you configure your favorite boot manager, it looks up
the entries in the MBR partition tables of all your hard disks
and lets you name the entries in that list. Then when you
boot, the boot manager is invoked by special code in the
Master Boot Sector of the first probed hard disk on your
system. It looks at the MBR partition table entry
corresponding to the partition choice you made, uses the Start
Cylinder/Head/Sector information for that partition, loads up
the Partition Boot Sector for that partition, and gives it
control. That Boot Sector for the partition itself contains
enough information to start loading the operating system on
that partition.</para>
<para>One thing we just brushed past that is important to know.
All of your hard disks have MBRs. However, the one that is
important is the one on the disk that is first probed by the
BIOS. If you have only IDE hard disks, it is the first IDE disk
(e.g. primary disk on first controller). Similarly for SCSI
only systems. If you have both IDE and SCSI hard disks
though, the IDE disk is typically probed first by the BIOS, so
the first IDE disk is the first probed disk. The boot manager
you will install will be hooked into the MBR on this first
probed hard disk that we have just described.</para>
</sect2>
<sect2 id="limits">
<title>Booting Limitations and Warnings</title>
<para>Now the interesting stuff that you need to watch out
for.</para>
<sect3>
<title>The dreaded 1024 cylinder limit and how BIOS LBA helps</title>
<para>The first part of the booting process is all done
through the BIOS, (if that is a new term to you, the BIOS is
a software chip on your system motherboard which provides
startup code for your computer). As such, this first part
of the process is subject to the limitations of the BIOS
interface.</para>
<para>The BIOS interface used to read the hard disk during
this period (INT 13H, Subfunction 2) allocates 10 bits to
the Cylinder Number, 8 bits to the Head Number, and 6 bits
to the Sector Number. This restricts users of this
interface (i.e. boot managers hooked into your disk's MBR as
well as OS loaders hooked into the Boot Sectors) to the
following limits:</para>
<itemizedlist>
<listitem>
<para>1024 cylinders, max</para>
</listitem>
<listitem>
<para>256 heads, max</para>
</listitem>
<listitem>
<para>64 sectors/track, max (actually 63, <literal>0</literal>
is not available)</para>
</listitem>
</itemizedlist>
<para>Now big hard disks have lots of cylinders but not a lot
of heads, so invariably with big hard disks the number of
cylinders is greater than 1024. Given this and the BIOS
interface as is, you can not boot off just anywhere on your
hard disk. The boot code (the boot manager and the OS
loader hooked into all bootable partitions' Boot Sectors)
has to reside below cylinder 1024. In fact, if your hard
disk is typical and has 16 heads, this equates to:</para>
<informalexample>
<para>1024 cyl/disk &times; 16 heads/disk &times; 63
sect/(cyl-head) &times; 512 bytes/sector</para>
</informalexample>
<para>which is around the often-mentioned 528MB limit.</para>
<para>This is where BIOS LBA (Logical Block Addressing) comes
in. BIOS LBA gives the user of the BIOS API calls access to
physical cylinders above 1024 though the BIOS interfaces by
redefining a cylinder. That is, it remaps your cylinders
and heads, making it appear through the BIOS as though the
disk has fewer cylinders and more heads than it actually
does. In other words, it takes advantage of the fact that
hard disks have relatively few heads and lots of cylinders
by shifting the balance between number of cylinders and
number of heads so that both numbers lie below the
above-mentioned limits (1024 cylinders, 256 heads).</para>
<para>With BIOS LBA, the hard disk size limitation is
virtually removed (well, pushed up to 8 Gigabytes anyway).
If you have an LBA BIOS, you can put FreeBSD or any OS
anywhere you want and not hit the 1024 cylinder
limit.</para>
<para>To use my 1.6 Gig Western Digital as an example again,
its physical geometry is:</para>
<informalexample>
<para>(3148 cyl, 16 heads, 63 sectors/track, 512
bytes/sector)</para>
</informalexample>
<para>However, my BIOS LBA remaps this to:</para>
<informalexample>
<para>(787 cyl, 64 heads, 63 sectors/track, 512
bytes/sector)</para>
</informalexample>
<para>giving the same effective size disk, but with cylinder
and head counts within the BIOS API's range (Incidentally, I
have both Linux and FreeBSD existing on one of my hard disks
above the 1024th physical cylinder, and both operating
systems boot fine, thanks to BIOS LBA).</para>
</sect3>
<sect3>
<title>Boot Managers and Disk Allocation</title>
<para>Another gotcha to watch out when installing boot
managers is allocating space for your boot manager. It is
best to be aware of this issue up front to save yourself
from having to reinstall one or more of your OSs.</para>
<para>If you followed the discussion in <xref
linkend="booting"/> about the Master Boot Sector (where the
MBR is), Partition Boot Sectors, and the booting process,
you may have been wondering just exactly where on your hard
disk that nifty boot manager is going to live. Well, some
boot managers are small enough to fit entirely within the
Master Boot Sector (Cylinder 0, Head 0, Sector 0) along with
the partition table. Others need a bit more room and
actually extend a few sectors past the Master Boot Sector in
the Cylinder 0 Head 0 track, since that is typically
free&hellip;typically.</para>
<para>That is the catch. Some operating systems (FreeBSD
included) let you start their partitions right after the
Master Boot Sector at Cylinder 0, Head 0, Sector 2 if you
want. In fact, if you give FreeBSD's sysinstall a disk with
an empty chunk up front or the whole disk empty, that is
where it will start the FreeBSD partition by default (at least
it did when I fell into this trap). Then when you go to
install your boot manager, if it is one that occupies a few
extra sectors after the MBR, it will overwrite the front of
the first partition's data. In the case of FreeBSD, this
overwrites the disk label, and renders your FreeBSD
partition unbootable.</para>
<para>The easy way to avoid this problem (and leave yourself
the flexibility to try different boot managers later) is
just to always leave the first full track on your disk
unallocated when you partition your disk. That is, leave
the space from Cylinder 0, Head 0, Sector 2 through Cylinder
0, Head 0, Sector 63 unallocated, and start your first
partition at Cylinder 0, Head 1, Sector 1. For what it is
worth, when you create a DOS partition at the front of your
disk, DOS leaves this space open by default (this is why
some boot managers assume it is free). So creating a DOS
partition up at the front of your disk avoids this problem
altogether. I like to do this myself, creating 1 Meg DOS
partition up front, because it also avoids my primary DOS
drive letters shifting later when I repartition.</para>
<para>For reference, the following boot managers use the
Master Boot Sector to store their code and data:</para>
<itemizedlist>
<listitem>
<para>OS-BS 1.35</para>
</listitem>
<listitem>
<para>Boot Easy</para>
</listitem>
<listitem>
<para>LILO</para>
</listitem>
</itemizedlist>
<para>These boot managers use a few additional sectors after
the Master Boot Sector:</para>
<itemizedlist>
<listitem>
<para>OS-BS 2.0 Beta 8 (sectors 2-5)</para>
</listitem>
<listitem>
<para>The &os2; boot manager</para>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>What if your machine will not boot?</title>
<para>At some point when installing boot managers, you might
leave the MBR in a state such that your machine will not boot.
This is unlikely, but possible when re-FDISKing underneath
an already-installed boot manager.</para>
<para>If you have a bootable DOS partition on your disk, you
can boot off a DOS floppy, and run:</para>
<informalexample>
<screen>A:\> <userinput>FDISK /MBR</userinput></screen>
</informalexample>
<para>to put the original, simple DOS boot code back into the
system. You can then boot DOS (and DOS only) off the hard
drive. Alternatively, just re-run your boot manager
installation program off a bootable floppy.</para>
</sect3>
</sect2>
</sect1>
</article>

View file

@ -1,16 +0,0 @@
#
# $FreeBSD$
#
# Article: Storage Devices
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

File diff suppressed because it is too large Load diff

View file

@ -1,19 +0,0 @@
#
# $FreeBSD$
#
# Article: FreeBSD Version Guide
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,398 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN" "../../share/sgml/entities.ent">
%entities;
<!ENTITY % freebsd.urls.absolute "INCLUDE">
]>
<article lang='en'>
<title>Choosing the FreeBSD Version That Is Right For You</title>
<articleinfo>
<authorgroup>
<author>
<surname>The FreeBSD Documentation Project</surname>
</author>
</authorgroup>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
</legalnotice>
<copyright>
<year>2005</year>
<holder>The FreeBSD Documentation Project</holder>
</copyright>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>So you have chosen to install &os;. Welcome! This
document is designed to help you to decide which version to
install.</para>
</abstract>
</articleinfo>
<sect1 id="background">
<title>Background</title>
<para>To decide which version of &os; is the best for your needs,
it is important to understand a few concepts about our development
and Release Engineering (<literal>RE</literal>) processes.</para>
<para>&os; is developed by a large group of individuals who are
almost entirely volunteers. The source code to the kernel and
the most common libraries and utilities is maintained in a
<firstterm>source control system</firstterm> and available for
the general public to download at any time. Separately, compiled
versions (<literal>binaries</literal>) are made available on a
recurring basis. Some of these binary versions undergo an
extensive testing process and are then termed a
<firstterm>release</firstterm>.</para>
<sect2 id="releases">
<title>Releases</title>
<para><literal>Releases</literal> are named with a <firstterm>major
version number</firstterm> and <firstterm>minor version
number</firstterm>.</para>
<itemizedlist>
<listitem>
<para>The goal of a major release is to introduce a set of new
features. Inevitably, as new features are added to &os;, or as
older features are no longer useful or are dropped, it is
sometimes necessary to break compatibility with previous major
releases.</para>
</listitem>
<listitem>
<para>The goal of a minor release is primarily to fix bugs and
improve performance and stability. Keeping both source-level and binary compatibility
from one minor release to another is a priority. On occasion,
new features may be added to a minor release when it is
believed that these other goals will not be compromised.</para>
</listitem>
</itemizedlist>
<para>However, keep in mind that a <quote>release version</quote>
is merely a snapshot of the source tree at a particular point in
time which is given a particular name (or <emphasis>tag</emphasis>).
(For instance, the tag that Release Engineering assigned for the
5.4 release was <literal>RELENG_5_4_0_RELEASE</literal>.) Development
always continues on what is known as the <literal>HEAD</literal>
tag.</para>
</sect2>
<sect2 id="branches">
<title>Branches</title>
<para>At the time of each release, a <firstterm>branch</firstterm>
is created, such as <literal>RELENG_5_4</literal>. Although
the source files named by <literal>RELENG_5_4_0_RELEASE</literal>
will never change, those on <literal>RELENG_5_4</literal> can,
by the adoption of changes from <literal>HEAD</literal> such
as fixes for security and other bugs.</para>
<para>During the life of each major release, another tag is
created such as <literal>RELENG_5</literal>. In addition
to security and other bug fixes, other new changes can be
brought in from <literal>HEAD</literal> so as to constitute
the changes for the next minor release in the sequence.</para>
</sect2>
<sect2 id="stable-vs-current">
<title><firstterm>STABLE</firstterm> versus
<firstterm>CURRENT</firstterm></title>
<para>During the lifetime of each major release, an individual
branch may also be termed <literal>STABLE</literal>. This
indicates that the &os; Project believes that the branch is
of sufficiently proven quality to be used by a wide range of
users. Branches that need further testing before being widely
adopted are named <literal>CURRENT</literal>.</para>
<note><para>The &os; Project cannot in and of itself guarantee
that the software that it ships is <emphasis>stable</emphasis>
enough for any given installation. Only each individual user
can make that decision. Please keep in mind that the Project
is primarily composed of volunteers and is not able to offer
any kind of warranty of fitness.</para></note>
</sect2>
<sect2 id="ports-vs-packages">
<title><firstterm>Ports</firstterm> versus
<firstterm>Packages</firstterm></title>
<para>Separately from the files distributed above, &os;
supports thousands of applications that are developed by third
parties outside of the project itself. (Examples include
windowing systems, Internet browsers, email programs, office
suites, and so forth.) In general, the project itself does
not develop this software, only the framework to allow these
programs to be installed (termed the <firstterm>Ports
Collection</firstterm>). Applications may be installed
either from source, if its licensing terms allow such
redistribution (these are called <emphasis>ports</emphasis>),
or as compiled binaries if allowed (these are called
<emphasis>packages</emphasis>).</para>
</sect2>
</sect1>
<sect1 id="past-schedules">
<title>Release Scheduling In The Past</title>
<para>During the development and release of &os; 5.X, many lessons
were learned which only became clear in retrospect. The goals
of the 5.X series were very aggressive, and included:</para>
<itemizedlist>
<listitem>
<para>To provide support for Symmetric MultiProcessing (SMP)
machines;</para>
</listitem>
<listitem>
<para>To increase performance by adopting a new strategy
for dealing with resource contention in the kernel;</para>
</listitem>
<listitem>
<para>To add several new processor architectures;</para>
</listitem>
<listitem>
<para>To introduce a new threading model;</para>
</listitem>
<listitem>
<para>To introduce a new scheduler;</para>
</listitem>
<listitem>
<para>To add support for new technologies such as power
management (especially important for laptops); and,
most critically,</para>
</listitem>
<listitem>
<para>Not to declare the release series as <literal>STABLE</literal>
until all these tasks were finished.</para>
</listitem>
</itemizedlist>
<para>This led to a situation where it was several years between
the time that a release in the 4.X series was declared
<literal>STABLE</literal> and that a release in the 5.X series
was declared <literal>STABLE</literal>. This had several
undesirable effects:</para>
<itemizedlist>
<listitem>
<para>The number of simultaneous feature-set changes made it
very difficult to isolate one set of changes for merging
back into the <literal>STABLE</literal> branch;</para>
</listitem>
<listitem>
<para>which meant that users who absolutely had to have certain
new features (for instance, to be able to run on modern hardware)
wound up adopting (for instance) &os; 5.2.1 even though it was
advertised as a developer-only release, and regardless of the
fact that a <literal>CURRENT</literal> release was not really
suitable for their needs.</para>
</listitem>
<listitem>
<para>In the cases where backmerges were made, this put the
developers in a position of trying to support features on a
version that they themselves were not using as their primary
development platform.</para>
</listitem>
<listitem>
<para>The time lag also meant that when 5.3 was finally declared
as the latest <literal>STABLE</literal> release, the accumulated
weight of changes made the upgrading process very painful.</para>
</listitem>
</itemizedlist>
<para>To put it bluntly, no one was satisfied with this result.</para>
<para>The lessons that were learned are:</para>
<itemizedlist>
<listitem>
<para>New major releases must have a smaller number of
feature-set changes and be released more often.</para>
</listitem>
<listitem>
<para>To the maximum extent possible, feature-set changes
should be isolated from each other. (This implies that
some development must take place outside of the main
tree and only be merged in when it will not destabilize
other simultaneous development.)</para>
</listitem>
<listitem>
<para>Major releases should be targeted at a time
deadline rather than a feature-set deadline. If some
feature is not ready in time, then it should be disabled
by default and left for the next major release.</para>
</listitem>
</itemizedlist>
<para>By releasing smaller sets of changes more often, it is
also hoped that less time will be spent trying to merge features
from <literal>HEAD</literal> back into the latest
<literal>STABLE</literal> version (and thus trying to support
those features in more than one major version); and further, that
as the changes are more isolated, that the risk of introducing
more bugs by doing so is much less.</para>
<para>Also, by focusing on a time deadline rather than a
feature set, it should finally be possible for users, developers
of external applications, and the &os; developers themselves to
be able to better plan for the future.</para>
</sect1>
<sect1 id="future-goals">
<title>Release Scheduling Goals Going Forward</title>
<para>Here are the current scheduling goals for the Project:</para>
<itemizedlist>
<listitem>
<para>To release a new major release every 18 months;</para>
</listitem>
<listitem>
<para>To release a new minor release every 4 months;</para>
</listitem>
<listitem>
<para>To provide prebuilt packages for the most recent minor
release of each major version;</para>
</listitem>
<listitem>
<para>To provide security updates and other critical bug fixes
for the last several minor versions of each major version
(termed <firstterm>security branches</firstterm>).</para>
</listitem>
</itemizedlist>
<para>Due to the large number of possible combinations of installable
versions, it is not possible to support every version
indefinitely; this is due somewhat to the availability of machine
resources but primarily due to the amount of volunteer effort
that is available.</para>
<para>Interested readers should also see:</para>
<variablelist>
<varlistentry>
<term><ulink url="&url.base;/releng/index.html#schedule"></ulink></term>
<listitem>
<para>The Release Engineering Schedule</para>
</listitem>
</varlistentry>
<varlistentry>
<term><ulink url="&url.base;/security/security.html#supported-branches"></ulink></term>
<listitem>
<para>The Security Branch Schedule</para>
</listitem>
</varlistentry>
</variablelist>
<para>These documents go into much greater depth about the background and
rationale behind the decisions regarding the supported branches and the
lifetime of each branch.</para>
</sect1>
<sect1 id="decision-points">
<title>How Do These Factors Affect My Decision?</title>
<para>The major factors that should affect your decision as to
which version to install include:</para>
<itemizedlist>
<listitem>
<para>What degree of stability does your installation need?</para>
</listitem>
<listitem>
<para>How much effort do you wish to devote to upgrading?</para>
</listitem>
<listitem>
<para>How long do you intend to stay on a particular version
between upgrades?</para>
</listitem>
<listitem>
<para>How important is security to your installation?</para>
</listitem>
<listitem>
<para>Will you be installing from source, or from binaries?</para>
</listitem>
<listitem>
<para>Are you willing to help participate in the &os; development
process?</para>
</listitem>
</itemizedlist>
<para>Here are some rough guidelines to help you in your decision:</para>
<itemizedlist>
<listitem>
<para>If you have a short-term need, would benefit from the highest degree of
stability currently available, and are not able to devote many
resources to upgrading, then you will probably want to install
the latest <literal>STABLE</literal> minor release and remain
with that. Depending on your security needs, you may or may not
wish to track changes to that branch as they are released.</para>
</listitem>
<listitem>
<para>If you have a short-term need, and feature completeness or
the best levels of security are most important to you, and you
are willing to spend time upgrading, you may wish to track the
latest <literal>STABLE</literal> branch.</para>
</listitem>
<listitem>
<para>If you are not immediately planning on going into
production, you are willing to work through a certain number
of problems, and a new major release is upcoming within the
next few months, you may wish to investigate installing that
branch to help the project to test it and stabilize it
to make it the best release possible in the medium to long
term.</para>
</listitem>
<listitem>
<para>Only if you are willing to install from source, and spend
time debugging problems with the base system and follow up
with problem reports, and track the mailing list that deals
with such issues, should you consider tracking
<literal>HEAD</literal>.</para>
</listitem>
</itemizedlist>
</sect1>
<sect1 id="conclusion">
<title>Conclusion</title>
<para>We hope that this article serves as a useful starting point
for understanding the &os; development model and deciding what version
is right for your needs.</para>
</sect1>
</article>

View file

@ -1,20 +0,0 @@
#
# $FreeBSD$
#
# Article: Bootstrapping Vinum
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
IMAGES_EN= ad0b4aft.eps
IMAGES_EN+= ad2b4aft.eps
IMAGES_EN+= arch.eps
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

File diff suppressed because it is too large Load diff

View file

@ -1,16 +0,0 @@
#
# $FreeBSD$
#
# Article: IOmega ZIP Drives
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,289 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//EN" "../../share/sgml/entities.ent">
%entities;
]>
<!-- $FreeBSD$ -->
<article lang='en'>
<articleinfo>
<title>&iomegazip; Drives</title>
<authorgroup>
<author>
<firstname>Jason</firstname>
<surname>Bacon</surname>
<affiliation>
<address><email>acadix@execpc.com</email></address>
</affiliation>
</author>
</authorgroup>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.adaptec;
&tm-attrib.iomega;
&tm-attrib.microsoft;
&tm-attrib.opengroup;
&tm-attrib.general;
</legalnotice>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
</articleinfo>
<sect1>
<title>&iomegazip; Drive Basics</title>
<para>&iomegazip; disks are high capacity, removable, magnetic disks, which can be
read or written by ZIP drives from IOMEGA corporation. ZIP disks are
similar to floppy disks, except that they are much faster, and have a
much greater capacity. While floppy disks typically hold 1.44
megabytes, ZIP disks are available in two sizes, namely 100 megabytes
and 250 megabytes. ZIP drives should not be confused with the
super-floppy, a 120 megabyte floppy drive which also handles traditional
1.44 megabyte floppies.</para>
<para>IOMEGA also sells a higher capacity, higher performance drive called
the &jaz;/JAZZ drive. Jaz drives come in 1 gigabyte and 2 gigabyte
sizes.</para>
<para>ZIP drives are available as internal or external units, using one of
three interfaces:</para>
<orderedlist>
<listitem>
<para>The SCSI (Small Computer Standard Interface) interface is the
fastest, most sophisticated, most expandable, and most expensive
interface. The SCSI interface is used by all types of computers
from PC's to RISC workstations to minicomputers, to connect all
types of peripherals such as disk drives, tape drives, scanners, and
so on. SCSI ZIP drives may be internal or external, assuming your
host adapter has an external connector.</para>
<note>
<para>If you are using an external SCSI device, it is important
never to connect or disconnect it from the SCSI bus while the
computer is running. Doing so may cause file-system damage on the
disks that remain connected.</para>
</note>
<para>If you want maximum performance and easy setup, the SCSI
interface is the best choice. This will probably require adding a
SCSI host adapter, since most PC's (except for high-performance
servers) do not have built-in SCSI support. Each SCSI host adapter
can support either 7 or 15 SCSI devices, depending on the
model.</para>
<para>Each SCSI device has its own controller, and these
controllers are fairly intelligent and well standardized, (the
second `S' in SCSI is for Standard) so from the operating system's
point of view, all SCSI disk drives look about the same, as do all
SCSI tape drives, etc. To support SCSI devices, the operating
system need only have a driver for the particular host adapter, and
a generic driver for each type of device, i.e. a SCSI disk driver,
SCSI tape driver, and so on. There are some SCSI devices that can
be better utilized with specialized drivers (e.g. DAT tape drives),
but they tend to work OK with the generic driver, too. It is just
that the generic drivers may not support some of the special
features.</para>
<para>Using a SCSI zip drive is simply a matter of determining which
device file in the <filename>/dev</filename> directory represents
the ZIP drive. This can be determined by looking at the boot
messages while FreeBSD is booting (or in
<filename>/var/log/messages</filename> after booting), where you
will see a line something like this:</para>
<programlisting>da1: &lt;IOMEGA ZIP 100 D.13&gt; Removable Direct Access SCSI-2 Device</programlisting>
<para>This means that the ZIP drive is represented by the file
<filename>/dev/da1</filename>.</para>
</listitem>
<listitem>
<para>The IDE (Integrated Drive Electronics) interface is a low-cost
disk drive interface used by many desktop PC's. Most IDE devices
are strictly internal.</para>
<para>Performance of IDE ZIP drives is comparable to SCSI ZIP drives.
(The IDE interface is not as fast as SCSI, but ZIP drives
performance is limited mainly by the mechanics of the drive, not by
the bus interface.)</para>
<para>The drawback of the IDE interface is the limitations it imposes.
Most IDE adapters can only support 2 devices, and IDE interfaces are
not typically designed for the long term. For example, the original
IDE interface would not support hard disks with more than 1024
cylinders, which forced a lot of people to upgrade their hardware
prematurely. If you have plans to expand your PC by adding another
disk, a tape drive, or scanner, you may want to invest in a SCSI
host adapter and a SCSI ZIP drive to avoid problems in the
future.</para>
<para>IDE devices in FreeBSD are prefixed with an <literal>a</literal>.
For example, an IDE hard disk might be
<filename>/dev/ad0</filename>, an IDE (ATAPI) CDROM might be
<filename>/dev/acd1</filename>, and so on.</para>
</listitem>
<listitem>
<para>The parallel port interface is popular for portable external
devices such as external ZIP drives and scanners, because virtually
every computer has a standard parallel port (usually used for
printers). This makes things easy for people to transfer data
between multiple computers by toting around their ZIP drive.</para>
<para>Performance will generally be slower than a SCSI or IDE ZIP
drive, since it is limited by the speed of the parallel port.
Parallel port speed varies considerably between various computers,
and can often be configured in the system BIOS. Some machines will
also require BIOS configuration to operate the parallel port in
bidirectional mode. (Parallel ports were originally designed only
for output to printers)</para>
</listitem>
</orderedlist>
</sect1>
<sect1>
<title>Parallel ZIP: The <devicename>vpo</devicename> Driver</title>
<para>To use a parallel-port ZIP drive under FreeBSD, the
<devicename>vpo</devicename> driver must be configured into the kernel.
Parallel port ZIP drives also have a built-in SCSI controller. The vpo
driver allows the FreeBSD kernel to communicate with the ZIP drive's
SCSI controller through the parallel port.</para>
<para>Since the vpo driver is not a standard part of the kernel (as of
FreeBSD 3.2), you will need to rebuild the kernel to enable this device.
The process of building a kernel is outlined in detail in the
<ulink url="&url.books.handbook;/kernelconfig.html">&os; Handbook</ulink>.
The following steps outline the process in brief for the
purpose of enabling the vpo driver:</para>
<orderedlist>
<listitem>
<para>Run <command>/stand/sysinstall</command>, and install the kernel
source code on your system.</para>
</listitem>
<listitem>
<para>Create a custom kernel configuration, that includes the
driver for the vpo driver:</para>
<screen>&prompt.root; <userinput>cd /sys/i386/conf</userinput>
&prompt.root; <userinput>cp GENERIC MYKERNEL</userinput></screen>
<para>Edit <filename>MYKERNEL</filename>, change the
<literal>ident</literal> line to <literal>MYKERNEL</literal>, and
uncomment the line describing the vpo driver.</para>
<para>If you have a second parallel port, you may need to copy the
section for <literal>ppc0</literal> to create a
<literal>ppc1</literal> device. The second parallel port usually
uses IRQ 5 and address 378. Only the IRQ is required in the config
file.</para>
<para>If your root hard disk is a SCSI disk, you might run into a
problem with probing order, which will cause the system to attempt
to use the ZIP drive as the root device. This will cause a boot
failure, unless you happen to have a FreeBSD root file-system on
your ZIP disk! In this case, you will need to <quote>wire
down</quote> the root disk, i.e. force the kernel to bind a
specific device to <filename>/dev/da0</filename>, the root SCSI
disk. It will then assign the ZIP disk to the next available SCSI
disk, e.g. <literal>/dev/da1</literal>. To wire down your SCSI hard
drive as <literal>da0</literal>, change the line
<programlisting>device da0</programlisting>
to
<programlisting>disk da0 at scbus0 target 0 unit 0</programlisting></para>
<para>You may need to change the target above to match the SCSI ID of
your disk drive. You should also wire down the scbus0 entry to your
controller. For example, if you have an &adaptec; 15xx controller,
you would change
<programlisting>controller scbus0</programlisting>
to
<programlisting>controller scbus0 at aha0</programlisting></para>
<para>Finally, since you are creating a custom kernel configuration,
you can take the opportunity to remove all the unnecessary drivers.
This should be done with a great deal of caution, and only if you
feel confident about making modifications to your kernel
configuration. Removing unnecessary drivers will reduce the kernel
size, leaving more memory available for your applications. To
determine which drivers are not needed, go to the end of the file
<filename>/var/log/messages</filename>, and look for lines reading
"not found". Then, comment out these devices in your config file.
You can also change other options to reduce the size and increase
the speed of your kernel. Read the section on rebuilding your kernel
for more complete information.</para>
</listitem>
<listitem>
<para>Now it is time to compile the kernel:</para>
<screen>&prompt.root; <userinput>/usr/sbin/config MYKERNEL</userinput>
&prompt.root; <userinput>cd ../../compile/MYKERNEL</userinput>
&prompt.root; <userinput>make clean depend &amp;&amp; make all install</userinput></screen>
</listitem>
</orderedlist>
<para>After the kernel is rebuilt, you will need to reboot. Make sure the
ZIP drive is connected to the parallel port before the boot begins. You
should see the ZIP drive show up in the boot messages as device vpo0 or
vpo1, depending on which parallel port the drive is attached to. It
should also show which device file the ZIP drive has been bound to. This
will be <filename>/dev/da0</filename> if you have no other SCSI disks in
the system, or <filename>/dev/da1</filename> if you have a SCSI hard
disk wired down as the root device.</para>
</sect1>
<sect1>
<title>Mounting ZIP disks</title>
<para>To access the ZIP disk, you simply mount it like any other disk
device. The file-system is represented as slice 4 on the device, so for
SCSI or parallel ZIP disks, you would use:</para>
<screen>&prompt.root; <userinput>mount_msdos /dev/da1s4 /mnt</userinput></screen>
<para>For IDE ZIP drives, use:</para>
<screen>&prompt.root; <userinput>mount_msdos /dev/ad1s4 /mnt</userinput></screen>
<para>It will also be helpful to update <filename>/etc/fstab</filename> to
make mounting easier. Add a line like the following, edited to suit your
system:
<programlisting>/dev/da1s4 /zip msdos rw,noauto 0 0</programlisting>
and create the directory <filename>/zip</filename>.</para>
<para>Then, you can mount simply by typing
<screen>&prompt.root; <userinput>mount /zip</userinput></screen>
and unmount by typing
<screen>&prompt.root; <userinput>umount /zip</userinput></screen></para>
<para>For more information on the format of
<filename>/etc/fstab</filename>, see &man.fstab.5;.</para>
<para>You can also create a FreeBSD file-system on the ZIP disk using
&man.newfs.8;. However, the disk will only be usable on a FreeBSD
system, or perhaps a few other &unix; clones that recognize FreeBSD
file-systems. (Definitely not &ms-dos; or &windows;.)</para>
</sect1>
</article>

View file

@ -714,8 +714,7 @@
<para>
Many committers have a special area of responsibility. These
roles are called hats
<citation><xref linkend="bsd-hats"/></citation>.
roles are called hats.
These hats can
be either project roles, such as public relations officer, or
maintainer for a certain area of the
@ -2572,17 +2571,6 @@
<bibliomisc role="url"><ulink url="http://election.uk.freebsd.org/candidates.html"></ulink></bibliomisc>
</biblioentry>
<biblioentry id="bsd-hats" xreflabel="Losh, 2002">
<authorgroup>
<author><firstname>Warner</firstname><surname>Losh</surname></author>
</authorgroup>
<copyright><year>2002</year>
<holder>The FreeBSD Documentation Project</holder>
</copyright>
<title>Working with Hats</title>
<bibliomisc role="url"><ulink url="http://www.freebsd.org/doc/en/articles/hats/article.html"></ulink></bibliomisc>
</biblioentry>
<biblioentry id="freebsd-handle-pr" xreflabel="FreeBSD, 2002C">
<authorgroup>
<author><firstname>Dag-Erling</firstname><surname>Sm&oslash;rgrav</surname></author>

View file

@ -1309,19 +1309,6 @@
</answer>
</qandaentry>
<qandaentry>
<question id="multiboot">
<para>Can I have more than one operating system on my
PC?</para>
</question>
<answer>
<para>Have a look at <ulink
url="&url.articles.multi-os;/index.html"> the multi-OS page</ulink>.
</para>
</answer>
</qandaentry>
<qandaentry>
<question id="windows-coexist">
<para>Can &windows; co-exist with &os;?</para>
@ -4804,9 +4791,7 @@ kern.sched.name: 4BSD</screen>
&man.sysinstall.8;, 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. See the <ulink
url="&url.articles.formatting-media;/index.html">formatting-media article</ulink>
for details on this process.</para>
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

View file

@ -94,9 +94,6 @@
<dd><a href="http://www.cybershade.us/freebsd/bg/fdp/split/">FreeBSD
Documentation Project Primer for New Contributors</a></dd>
<dd><a href="http://www.cybershade.us/freebsd/bg/multi-os/">Installing and
Using FreeBSD With Other Operating Systems</a></dd>
<dt><i>Documents currently being worked on</i></dt>
<dd>FreeBSD Handbook</dd>

View file

@ -93,12 +93,6 @@
<!-- Articles are sorted by pathname -->
<p><a href="&url.articles;/5-roadmap/index.html">The
Roadmap for 5-STABLE</a> (5-roadmap)<br/>
Describes medium-term development and release engineering
plans leading to the 5-STABLE branch point. This
article is primarily of historical interest.</p>
<p><a href="&url.articles;/bsdl-gpl/index.html">Why you should use
a BSD style license for your Open Source Project</a> (bsdl-gpl)<br/>
Describes the benefits of releasing code under a BSD
@ -111,12 +105,6 @@
<p><a href="&url.articles;/casestudy-argentina.com/index.html">Argentina.com : A Case Study</a> (casestudy-argentina.com)<br/>
How FreeBSD helped a large ISP in Latin America.</p>
<p><a href="&url.articles;/checkpoint/index.html">Integration
of Checkpoint VPN-1/Firewall-1 and FreeBSD IPsec</a>
(checkpoint)<br/>
How to configure Checkpoint VPN-1/Firewall-1 and FreeBSD
IPsec.</p>
<p><a href="&url.articles;/committers-guide/index.html">The
Committer's Guide</a> (committers-guide)<br/>
Introductory information for FreeBSD committers.</p>
@ -166,15 +154,6 @@
An article with some tips about the subtleties of
CVSup.</p>
<p><a href="&url.articles;/dialup-firewall/index.html">Dialup
firewalling with FreeBSD</a> (dialup-firewall)<br/>
How to set up a firewall using PPP and ipfw over a dialup link
with dynamically assigned IP addresses.</p>
<p><a href="&url.articles;/diskless-x/index.html">Creating
a diskless X server</a> (diskless-x)<br/>
How to create a diskless X server.</p>
<p><a href="&url.articles;/euro/index.html">The Euro symbol
on FreeBSD</a> (euro)<br/>
How to configure FreeBSD and related applications to display the
@ -200,11 +179,6 @@
A description of the various font technologies in FreeBSD, and
how to use them with different programs.</p>
<p><a href="&url.articles;/formatting-media/index.html">Formatting
media on FreeBSD</a> (formatting-media)<br/>
How to slice, partition, and format fixed and removable media on
FreeBSD.</p>
<p><a href="&url.articles;/freebsd-questions/index.html">How
to get the best results from the FreeBSD-questions mailing list</a>
(freebsd-questions)<br/>
@ -227,12 +201,6 @@
A guide to create UFS partitions configured with journaling
for desktop use.</p>
<p><a href="&url.articles;/hats/index.html">Working with Hats</a>
(hats)<br/>
A committer's guide to working with ``hats'' (other
committers with authority over specific areas of
FreeBSD).</p>
<p><a href="&url.articles;/hubs/index.html">Mirroring FreeBSD</a>
(hubs)
<br/>The all in one guide for mirroring the FreeBSD website,
@ -278,11 +246,6 @@
An introduction to using the MH mail reader on
FreeBSD.</p>
<p><a href="&url.articles;/multi-os/index.html">Using
FreeBSD with other operating systems</a> (multi-os)<br/>
How to install FreeBSD alongside one or more different operating
systems on the same computer.</p>
<p><a href="&url.articles;/nanobsd/index.html">Introduction
to NanoBSD</a> (nanobsd)<br/>
Information about the NanoBSD tools, which can be used to
@ -378,35 +341,11 @@
and Solid State Devices</a> (solid-state)<br/>
The use of solid state disk devices in FreeBSD.</p>
<p><a href="&url.articles;/storage-devices/index.html">Storage Devices</a>
(storage-devices)<br/>
Detailed information about using storage devices with FreeBSD,
including ESDI disks, and SCSI disks, tape drives, and CDROM
drives.</p>
<p><a href="&url.articles;/version-guide/index.html">Choosing the
FreeBSD Version That Is Right For You</a> (version-guide)<br/>
How to decide which version of FreeBSD is right for your
needs. Topics include the releases, branches, the difference
between -CURRENT and -STABLE, and the current scheduling goals
of the project.</p>
<p><a href="&url.articles;/vinum/index.html">Bootstrapping
Vinum: A Foundation for Reliable Servers</a> (vinum)<br/>
A gentle introduction to failure-resilient servers and
step-by-step instructions for building one with Vinum.</p>
<p><a href="&url.articles;/vm-design/index.html">Design
elements of the FreeBSD VM system</a> (vm-design)<br/>
An easy to follow description of the design of the FreeBSD
virtual memory system.</p>
<p><a href="&url.articles;/zip-drive/index.html">Zip-drives
and FreeBSD</a> (zip-drive)<br/>
How to format, mount, and use an Iomega Zip (SCSI, IDE, or
parallel) Drive on FreeBSD.</p>
<h2>On other web sites</h2>
<p>Various independent efforts have also produced a great deal of useful

View file

@ -278,7 +278,7 @@
href="http://www.jp.FreeBSD.org/">http://www.jp.FreeBSD.org/</a>.</p>
<p>A new article is available, explaining how to <a
href="&base;/tutorials/dialup-firewall/index.html">use PPP, natd,
href="http://docs.freebsd.org/doc/9.0-RELEASE/usr/share/doc/freebsd/en_US.ISO8859-1/articles/dialup-firewall/index.html">use PPP, natd,
and ipfw</a> to implement a firewall with a PPP dialup
connection.</p>

View file

@ -295,7 +295,7 @@
<title>Bootstrapping Vinum: A Foundation for Reliable Servers</title>
<p><a href="mailto:Bob@BGPBook.Com">Bob Van Valzah</a> has submitted
an article introducing <a
href="&base;/doc/en_US.ISO8859-1/articles/vinum/index.html">
href="http://docs.freebsd.org/doc/9.0-RELEASE/usr/share/doc/freebsd/en_US.ISO8859-1/articles/vinum/index.html">
failure-resilient servers and step-by-step instructions
for building one with Vinum</a>.</p>
</event>

View file

@ -809,7 +809,7 @@
<p>Aaron Kaplan has submitted a new article explaining how to
adjust your system configuration to use the new <a
href="&base;/doc/en_US.ISO8859-1/articles/euro/article.html">Euro
href="http://docs.freebsd.org/doc/9.0-RELEASE/usr/share/doc/freebsd/en_US.ISO8859-1/articles/euro/index.html">Euro
symbol on FreeBSD</a>.</p>
</event>
</day>

View file

@ -409,7 +409,7 @@
<title>New Article: Choosing a FreeBSD Version</title>
<p>A new article, <a
href="&base;/doc/en_US.ISO8859-1/articles/version-guide/">
href="http://docs.freebsd.org/doc/9.0-RELEASE/usr/share/doc/freebsd/en_US.ISO8859-1/articles/version-guide/index.html">
Choosing the FreeBSD Version That Is Right For You</a>,
discusses considerations that should go into the selection
of the most suitable version of FreeBSD for individual needs.

View file

@ -20,8 +20,8 @@
projects. FreeBSD 5.1 is expected to ship in late May or early
June, with 5.2 following at the end of summer. A roadmap for
the push to 5-STABLE is available at <a
href="http://www.FreeBSD.org/doc/en/articles/5-roadmap">
http://www.FreeBSD.org/doc/en/articles/5-roadmap</a>. Although
href="http://docs.freebsd.org/doc/5.2-RELEASE/usr/share/doc/en_US.ISO8859-1/articles/5-roadmap/index.html">
http://docs.freebsd.org/doc/5.2-RELEASE/usr/share/doc/en_US.ISO8859-1/articles/5-roadmap/index.html</a>. Although
the 5.x series isn't expected to fully stabilize until the 5.2
release, 5.1 promises to be an exciting release and a significant
improvement over 5.0 in terms of speed and stability.</p>

View file

@ -53,11 +53,7 @@
<h2><a name="fbsd">Learning about &os;</a></h2>
<ul>
<li><p>If you have not yet installed, and have not yet decided
which version of &os; is the best for your needs, the <a
href="&url.articles;/version-guide/index.html">Choosing
the &os; Version That Is Right For You</a> article is meant
to help you to decide. You should most probably look for the
<li><p>You should most probably look for the
<a href="&u.rel.announce;">latest mainstream release</a>.
(See the Handbook for why you should <strong>not</strong> be tempted
by any of the other branches.) Before you begin, carefully read the

View file

@ -167,7 +167,7 @@
target="_top">``FreeBSD Release Engineering''</a> article.
Specific issues for the upcoming 5-STABLE development
branch can be found in <a
href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/5-roadmap/index.html"
href="http://docs.freebsd.org/doc/5.1-RELEASE/usr/share/doc/en_US.ISO8859-1/articles/5-roadmap/index.html"
target="_top">``The Roadmap for 5-STABLE''</a>.</p>
</div>

View file

@ -36,7 +36,7 @@
<p>FreeBSD 5.1 will continue to be released from the 5-CURRENT development
stream. For more details about the milestones for reaching
5-STABLE, see the <a href="&base;/doc/en/articles/5-roadmap">5-STABLE
5-STABLE, see the <a href="http://docs.freebsd.org/doc/5.1-RELEASE/usr/share/doc/en_US.ISO8859-1/articles/5-roadmap/index.html">5-STABLE
Roadmap</a> page.</p>
<p>The current release engineering <a

View file

@ -141,7 +141,7 @@ pages</a> and in the <a
href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/releng/index.html"
target="_top">``FreeBSD Release Engineering''</a> article. Specific issues for the
upcoming 5-STABLE development branch can be found in <a
href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/5-roadmap/index.html"
href="http://docs.freebsd.org/doc/5.2.1-RELEASE/usr/share/doc/en_US.ISO8859-1/articles/5-roadmap/index.html"
target="_top">``The Roadmap for 5-STABLE''</a>.</p>
</div>

View file

@ -141,7 +141,7 @@ pages</a> and in the <a
href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/releng/index.html"
target="_top">``FreeBSD Release Engineering''</a> article. Specific issues for the
upcoming 5-STABLE development branch can be found in <a
href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/articles/5-roadmap/index.html"
href="http://docs.freebsd.org/doc/5.2-RELEASE/usr/share/doc/en_US.ISO8859-1/articles/5-roadmap/index.html"
target="_top">``The Roadmap for 5-STABLE''</a>.</p>
</div>

View file

@ -31,7 +31,7 @@
<p>FreeBSD 5.2 will continue to be released from the 5-CURRENT development
stream. For more details about the milestones for reaching
5-STABLE, see the <a href="&base;/doc/en/articles/5-roadmap">5-STABLE
5-STABLE, see the <a href="http://docs.freebsd.org/doc/5.2-RELEASE/usr/share/doc/en_US.ISO8859-1/articles/5-roadmap/index.html">5-STABLE
Roadmap</a> page.</p>
<p>The current release engineering <a

View file

@ -400,22 +400,6 @@
ports cluster, how to split up the packages for the release
media, and how to verify that a package set is
consistent.</small></p></li>
<li><p><a href="&base;/doc/en_US.ISO8859-1/articles/5-roadmap/index.html">FreeBSD
5-STABLE Roadmap</a><br/>
<small>Described the roadmap for the project for reaching the RELENG_5
branch. Included overall status of 5.x, what was left to be done, and
tentative schedules. Note that this document is now mainly of
historical interest.</small></p></li>
<li><p><a href="&base;/doc/en_US.ISO8859-1/articles/version-guide/index.html">Choosing
the FreeBSD Version That Is Right For You</a><br/>
<small>How to decide which version of FreeBSD is right for your
needs. Topics include the releases, branches, the difference
between -CURRENT and -STABLE, and the current scheduling goals
of the project.</small></p></li>
</ul>
<h2><a name="team" id="team">Release Engineering Team</a></h2>

View file

@ -5,8 +5,6 @@ SUBDIR =
SUBDIR+= casestudy-argentina.com
SUBDIR+= contributing
SUBDIR+= cvs-freebsd
SUBDIR+= dialup-firewall
SUBDIR+= euro
SUBDIR+= explaining-bsd
SUBDIR+= fbsd-from-scratch
SUBDIR+= fdp-es
@ -19,8 +17,6 @@ SUBDIR+= p4-primer
SUBDIR+= problem-reports
SUBDIR+= pxe
SUBDIR+= releng
SUBDIR+= version-guide
SUBDIR+= zip-drive
DOC_PREFIX?= ${.CURDIR}/../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,14 +0,0 @@
# $FreeBSD$
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,430 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//ES" "../../share/sgml/entities.ent">
%entities;
]>
<article lang="es">
<articleinfo>
<title>Cortafuegos con Dialup en FreeBSD</title>
<authorgroup>
<author>
<firstname>Marc</firstname>
<surname>Silver</surname>
<affiliation>
<address><email>marcs@draenor.org</email></address>
</affiliation>
</author>
</authorgroup>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>En éste artículo se describe cómo
configurar un cortafuegos que utiliza conexión PPP con
FreeBSD e IPFW y más concretamente el uso de un
cortafuegos en una conexión telefónica
a la que se le asigna una IP dinámica. Éste
documento no se ocupa de la configuración de la
conexión PPP necesaria.</para>
&trans.es.carvay;
</abstract>
</articleinfo>
<sect1 id="preface">
<title>Prefacio</title>
<para>Uso de un Cortafuegos en una Conexión Telefónica
en FreeBSD</para>
<para>En éste documento se expone el proceso necesario para
configurar un cortafuegos en FreeBSD cuando la dirección IP
es asignada dinámicamente por el ISP. Aunque se ha hecho
todo lo posible por hacer éste documento tan informativo
y correcto como sea posible puede enviar comentarios y/o
sugerencias al autor a <email>marcs@draenor.org</email>, que
serán bien recibidas.</para>
</sect1>
<sect1 id="kernel">
<title>Configuración del Kernel</title>
<para>Lo primero que tendrá que hacer es recompilar su
kernel. Si necesita más información sobre cómo
hacerlo el mejor recurso es <ulink
url="../../books/handbook/kernelconfig.html">la sección de
Handbook acerca de la configuración del
kernel</ulink>. Necesitará añadir a su fichero de
configuración del kernel las siguientes opciones:</para>
<variablelist>
<varlistentry>
<term><literal>options IPFIREWALL</literal></term>
<listitem>
<para>Activa el código necesario para el cortafuegos
en el kernel.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options IPFW2</literal></term>
<listitem>
<para>Activa la nueva versión de IPFW.</para>
<important><para>Esto solo debe hacerse en FreeBSD 4.X puesto
que en las versiones más recientes vienen incluído
por defecto.</para></important>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options IPFIREWALL_VERBOSE</literal></term>
<listitem>
<para>Envia los paquetes que se ha decidido sean incluídos
en un <filename>log</filename> a la aplicación encargada
de gestionar los <filename>logs</filename> del sistema.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options
IPFIREWALL_VERBOSE_LIMIT=<replaceable>100</replaceable></literal></term>
<listitem>
<para>Limita el número de veces que una entrada que cumple
las reglas puede ser incluída en los <filename>logs
</filename> del sistema. Esto previene que sus <filename>logs
</filename> se vean inundados por entradas repetidas.
<replaceable>100</replaceable> es un número razonable,
pero puede ajustarlo a sus necesidades.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options IPDIVERT</literal></term>
<listitem>
<para>Activa los <quote>sockets</quote> <emphasis>divert</emphasis>,
que serán descritos más tarde.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Hay otras entradas <emphasis>opcionales</emphasis> que pueden
compilarse en el kernel para incrementar la seguridad. No hacen
falta para el funcionamiento del cortafuegos pero algunos usuarios
especialmente paranoicos pueden querer usarlos.</para>
<variablelist>
<varlistentry>
<term><literal>options TCP_DROP_SYNFIN</literal></term>
<listitem>
<para>Ignorar paquetes TCP con SYN y FIN. Esto evita ser
vulnerable al uso de herramientas como
<filename role="package">security/nmap</filename>, que permiten
identificar la pila TCP/IP de la máquina, pero incumple
el soporte a las extensiones incluídas en el
RFC1644. <emphasis>No</emphasis> se recomienda hacer tal cosa
si la máquina va a ejecutar un servidor web.</para>
</listitem>
</varlistentry>
</variablelist>
<para>No reinicie tras recompilar el kernel. Si todo sale bien
sólo necesitaremos reiniciar una vez en todo el proceso
de instalación del cortafuegos.</para>
</sect1>
<sect1 id="rcconf">
<title>Modificación de <filename>/etc/rc.conf</filename> para
cargar el cortafuegos</title>
<para>Necesitamos hacer algunos cambios en
<filename>/etc/rc.conf</filename> para darle ciertos detalles
del cortafuegos. Es tan simple como añadir las siguientes
líneas:</para>
<programlisting>firewall_enable="YES"
firewall_script="/etc/firewall/fwrules"
natd_enable="YES"
natd_interface="tun0"
natd_flags="-dynamic"</programlisting>
<para>Para más información sobre éstas entradas
consulte
<filename>/etc/defaults/rc.conf</filename> y lea
&man.rc.conf.5;</para>
</sect1>
<sect1>
<title>Desactivación de la Traducción de Direcciones
de Red (NAT) de PPP</title>
<para>Es posible que ya esté usando la NAT que incluye
PPP. Si es su caso tendrá que desactivarla puesto que
los casos que vamos a usar emplean &man.natd.8; para hacerlo.</para>
<para>Si ya dispone de un grupo de entradas para arrancar
automáticamente PPP probablemente se parezca a
ésto:</para>
<programlisting>ppp_enable="YES"
ppp_mode="auto"
ppp_nat="YES"
ppp_profile="<replaceable>profile</replaceable>"</programlisting>
<para>Si es su caso, tendrá que desactivar
específicamente <literal>ppp_nat</literal>
asegurándose de que
<literal>ppp_nat="NO"</literal> existe en su
in <filename>/etc/rc.conf</filename>. Tendrá tambié que
borrar todas las entradas como
<literal>nat enable yes</literal> o
<literal>alias enable yes</literal> en
<filename>/etc/ppp/ppp.conf</filename>.</para>
</sect1>
<sect1 id="rules">
<title>Las Reglas del Cortafuegos</title>
<para>Casi hemos acabado. Lo único que nos falta es
definir las reglas del cortafuegos, reiniciar y deberíamos
tener nuestro cortafuegos funcionando perfectamente. Soy
consciente de que cada cual tendrá necesidades distintas
como reglas básicas. He intentado escribir unas reglas
básicas que puedan cubrir las necesidades de un usuario
de conexión telefónica normal. Vamos a comenzar
por lo básico de un cortafuegos cerrado. Lo que se
busca es rechazar todo por defecto y dejar pasar solamente
lo que necesitemos. Las reglas deberían ir en la forma
<quote>al principio permitir, luego rechazar</quote>. La premisa
es que vamos a an&tilde;adir reglas para lo que vamos a aceptar y
luego rechazamos todo lo demás. :)</para>
<para>Ahora vamos a crear el directorio <filename
class="directory">/etc/firewall</filename>. Sitúese en el
directorio y edite el fichero <filename>fwrules</filename> tal y
como hemos escrito dentro de <filename>rc.conf</filename>. Por favor,
no olvide que puede cambiar el nombre del fichero por cualquier otro
que prefiera. Éste documento solamente facilita un ejemplo
del nombre del fichero.</para>
<para>Vamos a echar un vistazo a un ejemplo de fichero de
configuración del cortafuegos que hemos comentado
cuidadosamente.</para>
<programlisting># Definimos el comando con el que invocamos al cortafuegos
# (tal y como hemos incluído en /etc/rc.firewall) para
# facilitarnos la lectura.
fwcmd="/sbin/ipfw"
# Fuerza el borrado de todas las reglas existentes en nuestro
# cortafuegos antes de cargar el contenido de éste fichero.
$fwcmd -f flush
# Desvía todos los paquetes a través del interfaz tunnel.
$fwcmd add divert natd all from any to any via tun0
# Permite todas las conexiones incluídas en reglas
# dinámicas pero rechaza todas aquellas conexiones
# establecidas que no estén incluídas en alguna
# regla dinámica.
$fwcmd add check-state
$fwcmd add deny tcp from any to any established
# Aceptar todas las conexiones de localhost.
$fwcmd add allow tcp from me to any out via lo0 setup keep-state
$fwcmd add deny tcp from me to any out via lo0
$fwcmd add allow ip from me to any out via lo0 keep-state
# Aceptar todas las conexiones desde mi tarjeta de red que yo inicie.
$fwcmd add allow tcp from me to any out xmit any setup keep-state
$fwcmd add deny tcp from me to any
$fwcmd add allow ip from me to any out xmit any keep-state
# Todo el mundo a lo largo y ancho de Internet puede conectarse
# a los siguientes servicios de la máquina. Éste
# ejemplo permite específicamente las conexiones a sshd
# y al servidor web.
$fwcmd add allow tcp from any to me dst-port 22,80 in recv any setup keep-state
# Ésto envía un RESET a todos los paquetes ident.
$fwcmd add reset log tcp from any to me 113 in recv any
# Activa ICMP: borre el tipo 8 si no quiere que su máquina
# responda al ping.
$fwcmd add allow icmp from any to any icmptypes 0,3,8,11,12,13,14
# Rechazamos todo lo demás.
$fwcmd add deny log ip from any to any</programlisting>
<para>Ya tiene usted un cortafuegos totalmente funcional que
acepta todas las conexiones a los puertos 22 y 80 y registrará
cualquier otro tipo de intento de conexión en un fichero
<filename>log</filename>. Ahora podemos reiniciar tranquilamente
y su cortafuegos debería empezar a trabajar tal y como le
hemos dicho. Si le parece que hay algún dato incorrecto o
tiene alguna sugerencia para mejorar éste documento por
favor envíeme un correo electrónico.</para>
</sect1>
<sect1>
<title>Preguntas</title>
<qandaset>
<qandaentry>
<question>
<para>?Por qué utiliza &man.natd.8; y
&man.ipfw.8; cuando podría usar los filtros
incluídos en &man.ppp.8;?</para>
</question>
<answer>
<para>Seré honesto y diré que no hay una
razón clara por la que use <command>ipfw</command> y
<command>natd</command> en lugar de los filtros que incorpora
<command>ppp</command>. Tras hablarlo con mucha gente el
consenso parece ser que <command>ipfw</command>
es mucho más potente y configurable que el filtrado
de <command>ppp</command> pero lo que se gana en
funcionalidad lo pierde en facilidad de
personalización. Una de las razones por las que
prefiero usar esas aplicaciones es que creo má conveniente
ejecutar un cortafuegos desde el kernel que desde una
aplicación de entorno de usuario.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>Me aparecen mensajes como <errorname>limit 100 reached on
entry 2800</errorname> y después de eso ya no me aparecen
más entradas indicando tráfico rechazado en mis
<filename>logs</filename>. ?Funciona mi
cortafuegos?</para>
</question>
<answer>
<para>Esto significa simplemente que se ha alcanzado el
máximo de entradas que pueden incluírse en el
<filename>log</filename> cuando una determinada regla
se ha cumplido. Esa regla sigue
funcionando pero no enviaría más entradas al
<filename>log</filename> hasta que el contador vuelva a
cero. Puede poner a cero ese contador mediante
<command>ipfw resetlog</command>. Además es posible
elevar el límite de entradas a introducir en el
<filename>log</filename> incluyendo la <quote>option</quote>
<option>IPFIREWALL_VERBOSE_LIMIT</option> en el fichero de
de configuración del kernel. Por otra parte puede
modificar ese valor (sin modificar su kernel y en consecuencia
sin reiniciar la máquina) mediante el valor de
&man.sysctl.8; net.inet.ip.fw.verbose_limit.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>Supongamos que estoy usando direcciones privadas internas,
por ejemplo el rango 192.168.0.0. ?Puedo añadir
una regla al cortafuegos mediante un comando como
<literal>$fwcmd add
deny all from any to 192.168.0.0:255.255.0.0 via tun0</literal>
para prevenir intentos de acceso desde el exterior para conectar
con máquinas de mi red?.</para>
</question>
<answer>
<para>La respuesta corta es no. La razón es que
<command>natd</command> efectúa la traducción
de direcciones para <emphasis>cualquier cosa</emphasis> que
sea redirigida a través del dispositivo
<devicename>tun0</devicename>. Eso significa que todos los
paquetes entrantes hablarán exclusivamente con la IP
asignada dinámicamente y <emphasis>no</emphasis> con la
red interna. Hay que tener en cuenta sin embargo que es posible
añadir una regla como
<literal>$fwcmd add deny all from 192.168.0.4:255.255.0.0
to any via tun0</literal>, que evitaría que una de las
máquinas de esa red enviara tráfico al exterior
a través del cortafuegos.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>Debo de haber hecho algo mal. He seguido las instrucciones
al pie de la letra y no tengo acceso a Internet.</para>
</question>
<answer>
<para>Estamos asumiendo que está usando
<emphasis>userland-ppp</emphasis>, en consecuencia el conjunto
de reglas que aquí se proponen operan en el interfaz
<devicename>tun0</devicename>, que corresponde a la primera
conexión efectuada mediante &man.ppp.8; (más
conocido como <emphasis>user-ppp</emphasis>). Las conexiones
efectuadas más tarde recibirán nombres como
<devicename>tun1</devicename>, <devicename>tun2</devicename> y
así sucesivamente.</para>
<para>Hay que tener también presente que &man.pppd.8;
en cambio utiliza el interfaz <devicename>ppp0</devicename>,
de modo que si se inicia la conexión con &man.pppd.8; hay
que sustituír <devicename>tun0</devicename> por
<devicename>ppp0</devicename>. A continuación se muestra
una forma muy limpia de modificar las reglas del
cortafuegos. Conservaremos un fichero con las reglas originales
con el nombre de
<filename>fwrules_tun0</filename>.</para>
<screen> &prompt.user; <userinput>cd /etc/firewall</userinput>
/etc/firewall&prompt.user; <userinput>su</userinput>
<prompt>Password:</prompt>
/etc/firewall&prompt.root; <userinput>mv fwrules fwrules_tun0</userinput>
/etc/firewall&prompt.root; <userinput>cat fwrules_tun0 | sed s/tun0/ppp0/g > fwrules</userinput>
</screen>
<para>Para saber exactamente si está usando &man.ppp.8; o
&man.pppd.8; examine la salida de &man.ifconfig.8; una vez que
establezca la conexión. V.g., en una conexión
hecha mediante &man.pppd.8; debería encontrarse con
algo muy similar a lo siguiente (se muestran sólo las
líneas relevantes):</para>
<screen> &prompt.user; <userinput>ifconfig</userinput>
<emphasis>(eliminado...)</emphasis>
ppp0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
inet <replaceable>xxx.xxx.xxx.xxx</replaceable> --&gt; <replaceable>xxx.xxx.xxx.xxx</replaceable> netmask <replaceable>0xff000000</replaceable>
<emphasis>(eliminado...)</emphasis>
</screen>
<para>Si por el contrario la conexión fué
establecida mediante &man.ppp.8;
(<emphasis>user-ppp</emphasis>) ésto es más o
menos lo que se encontraría:</para>
<screen> &prompt.user; <userinput>ifconfig</userinput>
<emphasis>(eliminado...)</emphasis>
ppp0: flags=<replaceable>8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1500</replaceable>
<emphasis>(skipped...)</emphasis>
tun0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
<emphasis>(IPv6 stuff skipped...)</emphasis>
inet <replaceable>xxx.xxx.xxx.xxx</replaceable> --&gt; <replaceable>xxx.xxx.xxx.xxx</replaceable> netmask <replaceable>0xffffff00</replaceable>
Opened by PID <replaceable>xxxxx</replaceable>
<emphasis>(eliminado...)</emphasis></screen>
</answer>
</qandaentry>
</qandaset>
</sect1>
</article>

View file

@ -1,18 +0,0 @@
#
# $FreeBSD$
#
# Article: The Euro symbol on FreeBSD
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,398 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//ES" "../../share/sgml/entities.ent">
%entities;
]>
<!-- The FreeBSD Spanish Documentation Project
$FreeBSD$
-->
<article lang="es">
<articleinfo>
<title>El símbolo del Euro en
<systemitem class="osname">FreeBSD</systemitem></title>
<authorgroup>
<author>
<firstname>Aaron</firstname>
<surname>Kaplan</surname>
<affiliation>
<address>
<email>aaron@lo-res.org</email>
</address>
</affiliation>
</author>
</authorgroup>
<copyright>
<year>2002</year>
<year>2003</year>
<holder>The FreeBSD Documentation Project</holder>
</copyright>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<!--
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.general;
</legalnotice>
-->
<abstract>
<para>Este documento intentará ayudarle a empezar
a usar el nuevo símbolo del <keycap>Euro</keycap>
en su nuevo teclado, adquirido a principios del 2002
debido al cambio de la nueva moneda común.
Primero trataremos los aspectos más importantes,
como mostrar correctamente el símbolo en la consola.
Las secciones posteriores tratarán sobre la
configuración de programas en concreto, como
<application>X11</application>.
</para>
<para>Se recibió ayuda muy provechosa de Oliver Fromme,
Tom Rhodes y de muchos otros. ¡Gracias! ¡Sin su
ayuda, este artículo no habría sido posible!
</para>
&trans.es.jcamou;
</abstract>
</articleinfo>
<sect1>
<title>El Euro hecho fácil</title>
<para>Si ya se siente cómodo con la
<!--
<ulink url="&url.books.handbook;/l10n.html">localización</ulink>
-->
<ulink url="http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/l10n.html">localización</ulink>
descrita en el Handbook de <systemitem class="osname">FreeBSD
</systemitem> puede que sólo esté interesado en los
siguientes pasos, que pueden ayudarle a empezar
rápidamente:</para>
<variablelist>
<varlistentry>
<term>ISO8859-15</term>
<listitem>
<para>Ésta es una ligera modificación del
mapa de caracteres ISO8859-1.
Incluye ademá el símbolo del Euro, usado por
las variables <envar>LANG</envar> y <envar>LC_CTYPE</envar>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>iso15-8x16.fnt</filename></term>
<listitem>
<para>La fuente &man.vidcontrol.1; para consola</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>/usr/share/syscons/keymaps/*.iso.kbd</filename></term>
<listitem>
<para>Un mapa de caracteres apropiado depende de su idioma.
Defina su entrada de <literal>keymap</literal> en <filename>
rc.conf</filename> usando alguno de éstos.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><envar>LC_CTYPE</envar></term>
<listitem>
<para>Usado para especificar el tipo correcto de caracteres
correcto.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>XkbLayout "<replaceable>idioma</replaceable>(euro)"
</literal></term>
<listitem>
<para>Opción de configuración de
<application>XFree86</application>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>/usr/X11R6/lib/X11/fonts/*/fonts.alias</filename></term>
<listitem>
<para>Asegúrese de adaptar sus fuentes X11 a
<literal>-*-..-*-iso8859-15</literal></para>
</listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1>
<title>Observación general</title>
<para>En las siguientes secciones a menudo nos referiremos a
<emphasis>ISO8859-15</emphasis>. Esta es la notación
estándar a partir de <systemitem class="osname">FreeBSD
</systemitem> 4.5. En versiones anteriores la notación
estándar era <emphasis>ISO_8859-15</emphasis> o
<emphasis>DIS_8859-15</emphasis>.
</para>
<para>Si está usando una versión anterior de
<systemitem class="osname"> FreeBSD</systemitem> asegúrese
de revisar <filename>/usr/share/locale/ </filename> para averiguar
la notación que está usando.</para>
</sect1>
<sect1>
<title>La consola</title>
<sect2>
<title>Cómo establecer la fuente de la consola</title>
<para>Dependiendo de la resolución y tamaño de su consola
necesesitará una de las siguientes líneas en
<filename> rc.conf</filename>:</para>
<programlisting>font8x16="iso15-8x16.fnt" # from /usr/share/syscons/fonts/*
font8x14="iso15-8x14.fnt"
font8x8="iso15-8x8.fnt"</programlisting>
<para>Esto seleccionará ISO8859-15, también
conocida como la fuente Latin-9. ISO8859-15 es una variación
de ISO8859-1. Es posible encontrar la diferencia entre las dos al
ver el símbolo del Euro: su valor decimal es 164. En
ISO8859-1 notará un círculo con cuatro pequeños
brazos en las esquinas. A menudo recibe el nombre de
<quote>símbolo de la moneda universal</quote>. En ISO8859-15
en lugar del pequeño círculo se tiene el símbolo
del Euro. Aparte de eso, las fuentes son idénticas.</para>
<warning>
<para>Cuando se redacta este artículo la única
fuente que es posible usar es, al parecer,
<literal>iso15-8x16.fnt</literal>.
Las otras aparentemente sólo muestran ISO8859-1 aunque el
nombre sugiera lo contrario.</para>
</warning>
<note>
<para>Al especificar esta fuente algunos programas de consola
podrán ver muy alterado su comportamiento. Esto es debido a
que se asume que se está usando una fuente o caracter
diferente, por ejemplo ANSI 850. Un ejemplo notable de ello es
<application>sysinstall</application>. En muchas ocasiones esto
carece de mayor importancia.</para>
</note>
<para>El siguiente paso es reiniciar el sistema para que los cambios
tengan efecto o hacer los pasos que hubiese hecho el sistema al ser
reiniciado (manualmente):</para>
<screen>&prompt.user; <userinput>vidcontrol -f <replaceable>iso15-8x16.fnt</replaceable></userinput></screen>
<para>Para asegurarse de que la fuente haya sido correctamente
seleccionada ejecute el siguiente <quote>script</quote> de
<command><anchor id="awk-test"/>awk</command>:</para>
<programlisting>#!/usr/bin/awk -f
BEGIN {
for(i=160;i&lt;180;i++)
printf~%3d %c\n",i,i
}</programlisting>
<para>El resultado debe mostrar el símbolo del Euro en
la posición 164.</para>
</sect2>
<sect2>
<title>Configuración del teclado para el símbolo del
Euro</title>
<para>La mayoría de los teclados ya están configurados
correctamente. Por ejemplo: si se tiene un teclado en alemán
y sus teclas Umlaut funcionan puede saltarse esta sección
ya que su teclado ya tiene la combinación necesaria (e.g.:
<keycombo action="simul"><keycap>Alt Gr</keycap><keycap>e</keycap>
</keycombo>) al valor decimal 164. Si se experimentan
problemas la mejor manera de revisarlo es echándole un ojo
a <filename>/usr/share/syscons/keymaps/*.kbd</filename>. El formato
de los ficheros de mapeo de teclas se describe en
&man.keyboard.4;. &man.kbdcontrol.1; puede usarse para cargar
un mapa en particular.</para>
<para>Una vez seleccionado el mapa de teclas correcto debe
añadirse a <filename>/etc/rc.conf</filename> con la
línea:</para>
<programlisting>keymap="<replaceable>german.iso</replaceable>" # u otro mapa</programlisting>
<para>Como ya se mencionó este paso probablemente ya haya
sido realizado por usted durante la instalación
(con la ayuda de <application>sysinstall</application>). Si no
fue así puede reiniciar o cargar el nuevo mapa de teclado
mediante &man.kbdcontrol.1;.</para>
<para>Para verificar el mapeo de las teclas es posible cambiar de
consola y cuando pida nombre de usuario, <emphasis>en lugar de
teclearlo</emphasis>, intente teclear el <keycap>Euro</keycap>.
De no funcionar esto puede mandar un informe de error mediante
&man.send-pr.1; o asegurarse de que haya escogido el mapa
correcto para el teclado.</para>
<note>
<para>En este momento la tecla del Euro no funcionará en
<application>bash </application> o
<application>tcsh</application>.</para>
</note>
</sect2>
<sect2>
<title>Modificar las variables de ambiente</title>
<para>Las shells (<application>bash</application>,
<application>tcsh</application>)
recurren a la biblioteca &man.readline.3;, que respeta la
variable <envar>LC_CTYPE</envar>. <envar>LC_CTYPE</envar> debe
ser establecida antes de que la shell se ejecute.
Afortunadamente es suficiente añadir la siguiente
línea:</para>
<programlisting>exoprt LC_CTYPE=<replaceable>de_DE</replaceable>.ISO8859-15</programlisting>
<para>a su <filename>.bash_profile</filename>
(<application>bash</application>), o:</para>
<programlisting>setenv LC_CTYPE <replaceable>de_DE</replaceable>.ISO8859-15</programlisting>
<para>a su <filename>.login</filename>
(<application>tcsh</application>).
Por supuesto, <replaceable>de_DE</replaceable> debe ser remplazado
con su idioma. A continuación finalice la sesión,
inicie sesión nuevamente y verifique si su símbolo
del Euro funciona. A partir de ahora la gran
mayoríia de los programas de consola deben responder al Euro.
Es probable que sean necesarios algunos pasos adicionales de
configuración para programas especiales como
<application>pine</application>.
</para>
<note>
<para>Una alternativa para modificar <filename>.login</filename> y
<filename>.bash_profile</filename> es establecer las variables
a partir del mecanismo de &man.login.conf.5;. Este método
tiene la ventaja de asignar tipos de <quote>login</quote> a
ciertos usuarios (por ejemplo usuarios que desean tener su entorno
en francés, italiano, etc) mediante modificaciones de
configuración <emphasis>en un solo lugar</emphasis>.</para>
</note>
</sect2>
</sect1>
<sect1>
<title>Modificar X11</title>
<para>Modifique <filename>/etc/XF86Config</filename> de la siguiente
manera:</para>
<programlisting>Option "XkbLayout" "<replaceable>de</replaceable>(euro)"</programlisting>
<para>Recuerde que tendrá que reemplazar
<replaceable>de</replaceable> con el código de idioma que haya
elegido. Su teclado debería estar configurado correctamente.
De igual modo que en la sección de consola, debe seleccionarse la
fuente correcta. En <application>KDE</application> vaya
a su <application>KDE control center</application> -&gt;
Personalization -&gt; Country &amp; Language -&gt; Charset
y cámbielo a <literal>ISO8859-15</literal>. En
<application>kmail</application> y otros programas tendrá que
proceder de forma muy similar.</para>
<para>Otra buena idea es modificar su ficheros en <filename>
fonts.alias</filename>. Existe un caso especial: la fuente
<quote><literal>fixed</literal></quote> debe cambiarse al mapa de
caracteres correcto: El
<filename>/usr/X11R6/lib/x11/fonts/misc/fonts.alias</filename>
del autor; este es:</para>
<programlisting>! $Xorg: fonts.alias,v 1.3 2000/08/21 16:42:31 coskrey Exp $
fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15
ariable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15
(...)</programlisting>
<para>Así como en las secciones de consola, ciertos programas
aún tienen las fuentes ISO8859-1 configuradas en su respectiva
base de datos de &man.xrdb.1;. Un ejemplo de esto es
<application>xterm</application>. Como regla general es suficiente
con cambiar la configuración correspondiente en
<filename>/usr/X11R6/lib/X11/app-defaults</filename> y añadir la
fuente correcta. Veamos un ejemplo con
<application>xterm</application>.</para>
<screen>&prompt.root; cd /usr/X11R6/lib/X11/app-defaults/
&prompt.root; vi XTerm</screen>
<para>Añada la siguiente línea al principio del
fichero:</para>
<programlisting>*font: -misc-fixed-medium-r-normal-*-*-120-*-*-c-*-iso8859-15</programlisting>
<para>Para finalizar reinicie X y asegúrese de que las fuentes
puedan mostrarse al ejecutar el
<link linkend="awk-test">script de awk</link>
anterior. La mayoría de los programas deben respetar el mapa de
caracteres y las configuraciones de fuente.</para>
</sect1>
<sect1>
<title>Problemas</title>
<para>Por supuesto que el autor agradecería que le enviara sus
comentarios.
Además, al menos me gustaría saber si tiene usted
solución para alguno de los siguientes problemas:</para>
<itemizedlist>
<listitem>
<para>Alguna manera alternativa de configurar
<application>XFree86</application>:
<filename role="package">x11/xkeycaps</filename></para>
</listitem>
<listitem>
<para>Configuraciones para <application>GNOME</application></para>
</listitem>
<listitem>
<para>Configuraciones para <application>KDE</application></para>
</listitem>
<listitem>
<para>Configuraciones para <application>XFCE</application></para>
</listitem>
<listitem>
<para>Configuraciones para <application>(X)Emacs</application></para>
</listitem>
<listitem>
<para>Configuración para UTF-8</para>
</listitem>
<listitem>
<para>Una configuración que incluya
<application>libiconv</application> como una manera
efectiva de convertir entre ISO8859-15 y UTF-{8, 16} dentro
de los programas</para>
</listitem>
</itemizedlist>
</sect1>
</article>

View file

@ -145,11 +145,6 @@ in your /etc/rc.conf. Extra options can be found in startup script.</screen>
url="ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6-stable/Latest/"/>
si quiere descargar los packages más recientes compilados
para la versión 6.X.</para>
<para>Si quiere saber más sobre las versiones de &os;
consulte el artículo <ulink
url="&url.base;/doc/es_ES.ISO8859-1/articles/version-guide/">
Cómo elegir la versión apropriada de &os;</ulink>.</para>
</note>
<para>Para más información sobre los packages consulte

View file

@ -1,19 +0,0 @@
#
# $FreeBSD$
#
# Article: FreeBSD Version Guide
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,439 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//ES" "../../share/sgml/entities.ent">
%entities;
]>
<!-- The FreeBSD Spanish Documentation Project
Original Revision: r1.11 -->
<article lang='es'>
<title>Cómo elegir la versión apropriada de &os;</title>
<articleinfo>
<authorgroup>
<author>
<surname>El Proyecto de Documentación de &os;</surname>
</author>
</authorgroup>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
</legalnotice>
<copyright>
<year>2005</year>
<holder>El Proyecto de Documentación de &os;</holder>
</copyright>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Así que ha decidido instalar &os;. ¡Bienvenido!
el propósito de este documento es ayudarle seleccionar la
versión apropriada.</para>
&trans.es.gabor;
</abstract>
</articleinfo>
<sect1 id="background">
<title>Introducción</title>
<para>Antes de decidir cuál de las versiones de &os; quiere
usar es importante que comprenda los conceptos relacionados con
el desarrollo y el proceso de Ingeniería de Releases
(<literal>RE</literal>).</para>
<para>&os; se desarrolla gracias a un gran grupo de gente,
casi siempre voluntarios. El código fuente del kernel, de las
utilidades y de las bibliotecas más
comúnes están en un <firstterm>sistema de
gestión de código</firstterm> del cual es posible
descargarlo en cualquier momento. Aparte de esto, existen versiones
(<literal>binarias</literal>) ya compiladas que se liberan
cada poco tiempo. Una de estas versiones binarias cuidadosamente
revisada será en su momento declarada
<firstterm>releases</firstterm>.</para>
<sect2 id="releases">
<title>Releases</title>
<para>El nombre de las <literal>releases</literal> contiene un
<firstterm>número mayor de release</firstterm> y un
<firstterm>número menor de release</firstterm>.</para>
<itemizedlist>
<listitem>
<para>El propósito de una release mayor es incluir
nuevas funciones. Es inevitable que, al añadir
nuevas funciones a &os; o al quitarlas, sea necesario algunas
veces perder la compatibilidad con versiones anteriores del
sistema operativo.</para>
</listitem>
<listitem>
<para>El propósito de una release menor es ante todo
corregir errores y mejorar el rendimiento y la estabilidad.
Es importante mantener la compatibilidad entre releases menores
tanto cuando se trata de código como con los programas
ejecutables. Si se da la ocasión, se añaden nuevas
características a una release menor si estos principios
se mantienen.</para>
</listitem>
</itemizedlist>
<para>No obstante, tenga en cuenta que una <quote>release</quote>
es solamente una instantánea del árbol de
código en un momento dado, gracias a lo cual se le da
una etiqueta o <emphasis>tag</emphasis>. Por ejemplo, la
etiqueta que el grupo de ingeniería de releases dio a la
release 5.4 fue <literal>RELENG_5_4_0_RELEASE</literal>. El
desarrollo tiene lugar bajo la etiqueta
<literal>HEAD</literal>.</para>
</sect2>
<sect2 id="branches">
<title>Bifurcaciones</title>
<para>En el tiempo de sacar cada release, se crea una
<firstterm>rama</firstterm>, por ejemplo
<literal>RELENG_5_4</literal>. Aunque el código bajo
<literal>RELENG_5_4_0_RELEASE</literal> no cambien,
los que están bajo <literal>RELENG_5_4</literal>
sí, al aplicar cambios en <literal>HEAD</literal>
al corregir problemas de seguridad u otro tipo de fallo.</para>
</sect2>
<sect2 id="stable-vs-current">
<title><firstterm>STABLE</firstterm> y
<firstterm>CURRENT</firstterm></title>
<para>Durante la vida de cada release mayor una rama
individual puede convertirse en <literal>STABLE</literal>. Esto
indica que el Proyecto &os; cree que la rama ha
demostrado suficiente calidad para que la mayoría de los
usuarios puedan usarla. Las ramas que necesitan más
pruebas antes de que pueda usarlas cualquiera reciben el nombre
de <literal>CURRENT</literal>.</para>
<note><para>El Proyecto &os; no puede garantizar que el software
que se distribuye sea todo lo <emphasis>estable</emphasis>
que sea necesario para cualquier necesidad o uso. Es el usuario
quien tiene la última palabra sobre esto. Por favor,
tenga muy en cuenta que el proyecto lo forman voluntarios y no
puede ofrecer ningún tipo de garantía.</para></note>
</sect2>
<sect2 id="ports-vs-packages">
<title><firstterm>Ports</firstterm> y
<firstterm>packages</firstterm></title>
<para>Aparte de los ficheros que se distribuyen del modo ya descrito
antes, &os; permite el uso de miles de aplicaciones fruto del
trabajo de desarrolladores que no forman parte del proyecto.
Podemos citar como ejemplos sistemas de ventanas, navegadores web,
programas de correo electrónico, software ofimático,
etc.) El proyecto en sí no desarrolla estos programas,
solamente el <quote>framework</quote> que permite que éstos
puedan instalarse; este <quote>framework</quote> recibe el
nombre de <firstterm>Colección de Ports</firstterm>).
Se pueden instalar aplicaciones desde el código fuente si su
licencia permite este tipo de redistribución; es lo que en
&os; se llaman los <emphasis>ports</emphasis>)), o como software
compilado si está permitido distribuirlos como tal, en cuyo
caso reciben el nombre de <emphasis>packages</emphasis>.</para>
</sect2>
</sect1>
<sect1 id="past-schedules">
<title>El calendario de releases anteriores</title>
<para>Durante el desarrollo de la release 5.X de &os; hubo que aprender
en carne propia muchas lecciones que solamente pudieron verse con
posterioridad. Los objetivos de la serie 5.X fueron muy
ambiciosos. Veamos algunos:</para>
<itemizedlist>
<listitem>
<para>Ofrecer soporte para máquinas dotadas de
multiproceso simétrico (Symmetric MultiProcessing,
o SMP)</para>
</listitem>
<listitem>
<para>Mejoras del rendimiento gracias a la adopción
de una nueva estrategia de gestión de recursos en el
kernel</para>
</listitem>
<listitem>
<para>Añadir numerosas arquitecturas de procesador</para>
</listitem>
<listitem>
<para>Introducción de un nuevo modelo de
<quote>threading</quote></para>
</listitem>
<listitem>
<para>Introducción de un nuevo
<quote>scheduler</quote></para>
</listitem>
<listitem>
<para>Añadir soporte de nuevas tecnologías como
la gestión de energía (especialmente importante en
máquinas portátiles), y sobre todo</para>
</listitem>
<listitem>
<para>no declarar ninguna versión como
<literal>STABLE</literal> hasta que estas tareas no se
hubieran terminado</para>
</listitem>
</itemizedlist>
<para>Esto llevó al problema de que había varios
años de diferencia entre el momento en el que 4.X
se declaró <literal>STABLE</literal> y el momento en el que
5.X se llegó a <literal>STABLE</literal>. Esta circunstancia
tuvo diversos efectos no deseados:</para>
<itemizedlist>
<listitem>
<para>El número funciones cambiadas simultáneamente
hizo muy difícil aislar esos cambios para hacerlos
compatibles con las versiones anteriores a la creació de
la rama <literal>STABLE</literal>.</para>
</listitem>
<listitem>
<para>Eso significó que los usuarios que necesitaban
imperiosamente una nueva función en particular
(por ejemplo el poder ejecutar &os; en hardware moderno)
estaban obligados a usar (por ejemplo) &os; 5.2.1 a pesar de
que oficialmente era una release de uso exclusivo de
desarrolladores, y sin tener en cuenta el hecho de que una
release <literal>CURRENT</literal> no cumplía sus
demandas.</para>
</listitem>
<listitem>
<para>En los casos en los que se consiguió la compatibilidad
con versiones anteriores los desarrolladores se encontraron con otro
problema al intentar adaptar ciertas características a una
versión que ellos mismos hacía tiempo que no usaban
como su plataforma de desarrollo principal.</para>
</listitem>
<listitem>
<para>El retraso también provocó que cuando 5.3 se
declaró nueva release <literal>STABLE</literal> la
cantidad acumulada de cambios hizo la actualización
complicada.</para>
</listitem>
</itemizedlist>
<para>A decir verdad, nadie estaba contento con el resultado.</para>
<para>Las lecciones que se aprendieron de todo esto fueron:</para>
<itemizedlist>
<listitem>
<para>Las nuevas releases mayores deben tener meno cambios
estructurales importantes y deben publicarse con mayor
frecuencia.</para>
</listitem>
<listitem>
<para>Siempre que sea posible los cambios estructurales deben
aislarse unos de otros. Esto obliga a que parte del
desarrollo tengan lugar fuera del árbol principal
y que se integren solamente cuando no afecten a otros
procesos simultáneos de desarrollo.</para>
</listitem>
<listitem>
<para>Las releases mayores deben tener fecha de salida
propia no dependiente de la fecha de entrega asignada
a un cambio estructural. Si un cambio estructural no
está listo a tiempo se incluirá desactivado
por omisión y será incluido en la siguiente
release.</para>
</listitem>
</itemizedlist>
<para>Al publicar grupos de cambios más pequeños y
de una forma más habitual se intenta también dedicar
menos tiempo y esfuerzo aplicando nuevas características de
<literal>HEAD</literal> a a la última versión
<literal>STABLE</literal> (y poder así usar dichas
nuevas características en más de una versión
mayor); aún más, al estar los cambios más
aislados el riesgo de provocar nuevos problemas de seguridad es
mucho menor.</para>
<para>Además, el concentrarse en una fecha y no en la
consecución de una característica lista para
integrarse en el sistema, es más fácil planificar
para el futuro tanto para los usuarios como a los desarrolladores
de aplicaciones ajenas al proyecto y, cómo no, para los
desarrolladores de &os;.</para>
<para>Estas razones (y no el intentar ir a la par de las versiones
mayores de otro sistema operativo) son el principal motivo del
cambio en el calendario de liberación de versiones de
&os;.</para>
</sect1>
<sect1 id="future-goals">
<title>Calendario de releases de aquí en adelante</title>
<para>Estos son los objetivos actuales del calendario del
Proyecto:</para>
<itemizedlist>
<listitem>
<para>Sacar uan release mayor cada 18 meses</para>
</listitem>
<listitem>
<para>Sacar una release menor cada 4 meses</para>
</listitem>
<listitem>
<para>Ofrecer paquetes compilados para la release menor más
reciente de cada release mayor</para>
</listitem>
<listitem>
<para>Ofrecer actualizaciones de seguridad y otras correcciones de
fallos críticos para las versiones menores más
recientes de cada versión mayor (que reciben el nombre
de <firstterm>ramas de seguridad</firstterm>).</para>
</listitem>
</itemizedlist>
<para>Dado el gran número de combinaciones de versiones
instalables no es posible dar soporte a todas las releases.
Esto es, en parte, debido a la cantidad limitada de máquinas
de las que el Proyecto puede disponer, pero sobre todo a que
la cantidad de voluntarios disponibles es limitada y su tiempo
también.</para>
<para>Si quiere leer más sobre esto visite</para>
<variablelist>
<varlistentry>
<term><ulink url="&url.base;/releng/index.html#schedule"></ulink></term>
<listitem>
<para>Calendario de ingeniería de releases</para>
</listitem>
</varlistentry>
<varlistentry>
<term><ulink url="&url.base;/security/security.html#supported-branches"></ulink></term>
<listitem>
<para>Calendario de ramas de seguridad</para>
</listitem>
</varlistentry>
</variablelist>
<para>Estos documentos profundizan en los porqués de las
decisiones tomadas sobre las ramas soportadas y el ciclo de vida
de cada rama.</para>
</sect1>
<sect1 id="decision-points">
<title>?Cómo afectan estos factores a su decisión?</title>
<para>Los principales factores que influyen en su decisión de
qué versión instalar son, entre otros:</para>
<itemizedlist>
<listitem>
<para>?Qué grado de estabilidad necesita su
sistema?</para>
</listitem>
<listitem>
<para>?Cuántos trabajo quiere dedicar a la
actualización?</para>
</listitem>
<listitem>
<para>?Durante cuánto tiempo va a usar una
versión dada entre una actualización y la
que venga más adelante?</para>
</listitem>
<listitem>
<para>?Cuánta importancia le da a la seguridad de su
sistema?</para>
</listitem>
<listitem>
<para>?Instalará desde código fuente o
binarios?</para>
</listitem>
<listitem>
<para>?Va a participar en el desarrollo de &os;?</para>
</listitem>
</itemizedlist>
<para>Aquí hay unas normas para ayudarle a tomar una
decisión:</para>
<itemizedlist>
<listitem>
<para>Si sus necesidades son a corto plazo y quiere disfrutar del
más alto grado posible de estabilidad (y no puede
dedicar muchos recursos a la actualización) probablemente
lo mejor sea instalar la release <literal>STABLE</literal>
más reciente y dejarla como está. Según
sean sus requisitos de seguridad puede o no aplicar los
parches de seguridad que vayan apareciendo.</para>
</listitem>
<listitem>
<para>Si sus necesidades son a corto plazo y las nuevas
características o la seguridad son muy
importantes para usted (y está dispuesto a dedicar
tiempo a las actualizaciones) debería seguir la
rama <literal>STABLE</literal> más reciente.</para>
</listitem>
<listitem>
<para>Si no va a poner la máquina en producción,
va a dedicar tiempo a depurar unos cuantos problemas y en
unos cuantos meses va a salir una nueva versión mayor,
puede instalar esa rama y ayudar al Proyecto haciendo pruebas
para hacer el sistema más estable y disponer de la
mejor release posible a medio y largo plazo.</para>
</listitem>
<listitem>
<para>Sólamente si quiere instalar desde código
fuente y pasar tiempo depurando problemas del sistema base,
enviar informes de fallos y utilizar las listas de correo
dedicadas a esos fallos debe usar
<literal>HEAD</literal>.</para>
</listitem>
</itemizedlist>
</sect1>
<sect1 id="conclusion">
<title>Conclusión</title>
<para>Esperamos que este artículo haya servido de ayuda
para que comprender el modelo de desarrollo de &os; y
pueda decidir qué versión se ajusta más a sus
necesidades.</para>
</sect1>
</article>

View file

@ -1,14 +0,0 @@
# $FreeBSD$
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,327 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//ES" "../../share/sgml/entities.ent">
%entities;
]>
<!-- $FreeBSD$ -->
<article lang="es">
<articleinfo>
<title>Unidades ZIP</title>
<authorgroup>
<author>
<firstname>Jason</firstname>
<surname>Bacon</surname>
<affiliation>
<address><email>acadix@execpc.com</email></address>
</affiliation>
</author>
</authorgroup>
<abstract>
&trans.es.bazcar;
</abstract>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
</articleinfo>
<sect1>
<title>Introducción a las Unidades ZIP</title>
<para>Los discos ZIP son dispositivos magnéticos,
extraíbles y de alta capacidad que pueden leerse y
escribirse mediante unidades ZIP de IOMEGA. Los discos ZIP son
similares a los disquetes (floppy) pero son mucho más
rápidos y ofrecen una capacidad de almacenamiento mucho
mayor. Así como los disquetes suelen ser de 1'44 MB los
discos ZIP existen en dos tamaños, de 100 y 250 MB. Los
discos ZIP no deben ser confundidos con el formato super-floppy,
un dispositivo que usa disquetes de 120 MB pero que admite los
discos tradicionales de 1'44 MB.</para>
<para>IOMEGA distribuye asímismo unidades de rendimiento
más alto y mucha mayor capacidad llamadas JAZZ. Las
unidades JAZZ usan discos de 1 y 2 GB.</para>
<para>Las unidades ZIP están disponibles como dispositivos
internos y externos y emplean una de los siguientes
interfaces:</para>
<orderedlist>
<listitem>
<para>El interfaz SCSI es el más rápido, sofisticado,
expandible y caro. El interfaz SCSI se usa en todo tipo de
plataformas, desde PC y estaciones RISC a miniordenadores para
conectar todo tipo de periféricos como discos duros,
unidades de cinta, scanners, etc. Los dispositivos ZIP SCSI pueden
ser internos o externos, que requieren que la controladora SCSI
disponga de un conector externo.</para>
<note>
<para>Si usa una unidad SCSI externa es importante que nunca
la conecte o desconecte del bus SCSI mientras el ordenador
está funcionando. Si lo hace puede causar daños
en el sistema de ficheros del resto de los discos del
sistema.</para>
</note>
<para>Si lo que busca es el máximo rendimiento y una
sencilla configuración el interfaz SCSI es la mejor
elección. Probablemente tendrá que
añadir una controladora SCSI dado que la mayoría
de los PC (salvo los servidores de alto rendimiento) no
ofrecen soporte SCSI integrado. Cada controladora SCSI puede
admitir entre 7 y 15 dispositivos SCSI dependiendo del
modelo.</para>
<para>Cada unidad SCSI tiene su propio controlador y
esos controladores son razonablemente inteligentes y
están bien estandarizados (la segunda S de SCSI
viene de Standard), de manera que desde el punto de vista
del sistema operativo, todos los dispositivos SCSI parecen
ser el mismo, como sucede con las unidades de cinta
SCSI, etc. Para poder utilizar dispositivos SCSI el
sistema operativo necesita únicamente un
<quote>driver</quote> específico para la controladora
que se desea usar y un <quote>driver</quote> genérico
para cada tipo de dispositivo, ésto es, un disco SCSI,
una unidad de cinta SCSI, etc. Algunos dispositivos SCSI pueden
ser mejor aprovechados mediante <quote>drivers</quote>
especializados (v.g. unidades de cinta DAT) pero tienden a
funcionar perfectamente con los <quote>drivers</quote>
genéricos, que sencillamente puede que no incluyan alguna
de las características especiales.</para>
<para>El usar una unidad ZIP SCSI es algo tan simple como determinar
cuál es el fichero de dispositivo en el directorio
<filename>/dev</filename> que representa la unidad
ZIP. Esto puede saberse examinando el mensaje de arranque
de FreeBSD (o en <filename>/var/log/messages</filename> tras
el arranque), donde debería encontrar algo parecido
a:</para>
<programlisting>da1: &lt;IOMEGA ZIP 100 D.13&gt; Removable Direct Access SCSI-2 Device</programlisting>
<para>Esto significa que la unidad ZIP está representada por
el fichero <filename>/dev/da1</filename>.</para>
</listitem>
<listitem>
<para>El interfaz IDE es un interfaz de acceso a discos duros de
bajo coste que se usa en la mayoría de los PC de
escritorio. La mayoría de los dispositivos IDE son
exclusivamente internos.</para>
<para>El rendimiento de los dispositivos ZIP IDE es comparable al
de los ZIP SCSI. (El interfaz IDE no es tan rápido como el
SCSI pero el rendimiento de los dispositivos ZIP está
condicionado principalmente por la parte mecánica del
dispositivo, no por el interfaz del bus).</para>
<para>El inconveniente del interfaz IDE son las limitaciones que
conlleva. La mayoría de adaptadores IDE sólo
permiten utilizar dos dispositivos y generalmente los interfaces
IDE no están diseñados para perpetuarse en el
tiempo. Por ejemplo, el interfaz IDE original no admite
discos duros con más de 1.024 cilindros, lo que
obligó a mucha gente a actualizar su hardware antes de lo
esperado. Si prevé añadir nuevo hardware a su PC
(otro disco duro, una unidad de cinta, un scanner, etc.) no
estaría de más que considerara la idea de adquirir
una controladora y un ZIP SCSI para evitar problemas en el
futuro.</para>
<para>En FreeBSD los dispositivos IDE llevan el prefijo
<literal>a</literal>. Por ejemplo, un disco duro IDE
podría ser
<filename>/dev/ad0</filename>, y un CDROM IDE (ATAPI)
podría ser
<filename>/dev/acd1</filename>, y así sucesivamente.</para>
</listitem>
<listitem>
<para>El interfaz de puerto paralelo es muy común en
dispositivos externos portátiles como dispositivos
ZIP externos y scanners debido a que virtualmente todos los
ordenadores disponen de un puerto paralelo estándar
(que generalmente se usa con impresoras). De éste modo
se le facilitan las cosas a mucha gente a la hora de transferir
datos entre distintos equipos.</para>
<para>Generalmente el rendimiento es menor que el de dispositivos
ZIP IDE o SCSI dadas las limitaciones de velocidad del puerto
paralelo. Ésta puede variar según el caso concreto
y con frecuencia puede configurarse en la BIOS del
sistema. En algunos casos es imprescindible configurar en la
BIOS el puerto paralelo para que admita el modo bidireccional
puesto que los puertos paralelos fueron originalmente concebidos
para verter su salida hacia las impresoras.</para>
</listitem>
</orderedlist>
</sect1>
<sect1>
<title>ZIP de Puerto Paralelo: El <quote>driver</quote> <devicename>vpo
</devicename></title>
<para>Para usar en FreeBSD un dispositivo ZIP de puerto paralelo debe
incluírse en el kernel el <quote>driver</quote> <devicename>vpo
</devicename>. Los
dispositivos ZIP de puerto paralelo disponen de un controlador SCSI
integrado. El <quote>driver</quote> vpo permite al kernel de FreeBSD
comunicarse con el controlador SCSI del dispositivo ZIP a través
del puerto paralelo.</para>
<para>Dado que el <quote>driver</quote> vpo no forma parte del kernel
GENERIC (el kernel que se instala con FreeBSD) a partir de FreeBSD 3.2
necesita recompilar su kernel para activar éste
dispositivo. Una de las maneras de recompilar el kernel se detalla
más adelante en éste mismo texto. Los pasos a seguir
para activar el <quote>driver</quote> vpo podrían ser los
siguientes:</para>
<orderedlist>
<listitem>
<para>Ejecute <command>/stand/sysinstall</command> e instale los
fuentes del kernel en su sistema.</para>
</listitem>
<listitem>
<para>Crearemos un fichero de configuración del kernel
que incluya el <quote>driver</quote> vpo:</para>
<screen>&prompt.root; <userinput>cd /sys/i386/conf</userinput>
&prompt.root; <userinput>cp GENERIC MIKERNEL</userinput></screen>
<para>Editamos <filename>MIKERNEL</filename> para sustituír
la entrada <literal>ident</literal> por <literal>MIKERNEL</literal>
y descomentamos la línea en la que aparece el <quote>driver
</quote>vpo.</para>
<para>Si dispone de un segundo puerto paralelo deberá
copiar la sección <literal>ppc0</literal> para crear
el dispositivo <literal>ppc1</literal>. El segundo puerto
paralelo suele usar la IRQ 5 y la dirección
378. Solamente es imprescindible asignar la IRQ en
el fichero de configuración.</para>
<para>Si su disco duro principal es SCSI puede tener problemas
durante la prueba de dispositivos SCSI que FreeBSD efectúa
en el arranque, dado que el sistema puede intentar utilizar el
dispositivo ZIP como disco de inicio. Esto produciría un
fallo en el arranque salvo, claro está, que disponga de
un sistema de ficheros raíz en su disco ZIP. Si ese es
su caso debe forzar al kernel a enlazar un dispositivo concreto
(en éste caso su disco duro raíz) con
<filename>/dev/da0/</filename>. El kernel asignará al
disco ZIP el siguiente nombre SCSI disponible, es decir,
<literal>/dev/da1</literal>. Para fijar su disco duro SCSI como
<literal>da0</literal> cambie la línea
<programlisting>device da0</programlisting>
a
<programlisting>disk da0 at scbus0 target 0 unit 0</programlisting></para>
<para>Quizás necesite modificar la línea anterior para
que concuerde con los datos de su dispositivo SCSI. Del mismo modo
tendría que asociar la entrada scbus0 con su controladora.
Por ejemplo, si tiene una controladora Adaptec 15xx debería
cambiar
<programlisting>controller scbus0</programlisting>
por
<programlisting>controller scbus0 at aha0</programlisting></para>
<para>Para concluír, dado que está creando un kernel
personalizado debería aprovechar la ocasión para
eliminar todos los <quote>drivers</quote> que no necesita. Esto
debe hacerse con precaución y solamente cuando tenga
la seguridad de que sabe lo que está haciendo con su fichero
de configuración. Si borra los <quote>drivers</quote> que
no necesita reducirá el tamaño de su kernel y por
lo tanto dispondrá de más memoria que ofrecer a sus
aplicaciones. Para saber qué <quote>drivers</quote> puede
borrar vaya al final del fichero <filename>/var/log/messages
</filename> y busque líneas que incluyan <literal>not
found</literal> (no encontrado). Comente las líneas de
esos <quote>drivers</quote> en su fichero de
configuración. Puede cambiar otras opciones más
para reducir el tamaño e incrementar la velocidad de su
kernel. Lea la sección del Handbook correspondiente a la
recompilación del kernel para conocer todos los
detalles.</para>
</listitem>
<listitem>
<para>Ha llegado el momento de compilar nuestro kernel:</para>
<screen>&prompt.root; <userinput>/usr/sbin/config MIKERNEL</userinput>
&prompt.root; <userinput>cd ../../compile/MIKERNEL</userinput>
&prompt.root; <userinput>make clean depend &amp;&amp; make all install</userinput></screen>
</listitem>
</orderedlist>
<para>Una vez finalizado el proceso necesitará
reiniciar. Asegúrese de que la unidad ZIP esté conectada
al puerto paralelo antes del arranque. Verá aparecer el
dispositivo ZIP en los mensajes del arranque como vpo0 o vpo1,
dependiendo del puerto paralelo al que esté
conectado. Debería aparecer también a qué
nombre de dispositivo ha sido enlazado. Por ejemplo
sería <filename>/dev/da0</filename> si no hay en el sistema
discos SCSI o <filename>/dev/da1</filename> si tiene como dispositivo
principal un disco SCSI.</para>
</sect1>
<sect1>
<title>Cómo montar discos ZIP</title>
<para>Para acceder a un disco ZIP simplemente hay que montarlo como
cualquier otro dispositivo de disco. El sistema de ficheros
estará representado como <quote>slice</quote> 4 dentro del
dispositivo, tanto para discos SCSI o paralelos. Por ejemplo:</para>
<screen>&prompt.root; <userinput>mount_msdos /dev/da1s4 /mnt</userinput></screen>
<para>Para unidades ZIP IDE, utilice:</para>
<screen>&prompt.root; <userinput>mount_msdos /dev/ad1s4 /mnt</userinput></screen>
<para>Puede serle útil modificar <filename>/etc/fstab</filename>
para montar los discos más fácilmente. Añada una
línea como la siguiente (con las modificaciones necesarias para
sus necesidades):
<programlisting>/dev/da1s4 /zip msdos rw,noauto 0 0</programlisting>
y crée el directorio <filename>/zip</filename>.</para>
<para>Hecho esto, puede montar su disco ZIP escribiendo:
<screen>&prompt.root; <userinput>mount /zip</userinput></screen>
y para desmontarlo escriba
<screen>&prompt.root; <userinput>umount /zip</userinput></screen></para>
<para>Tiene todos los detalles del formato en el que incluír
o modificar entradas en <filename>/etc/fstab</filename> en
&man.fstab.5;.</para>
<para>Si quiere puede crear un sistema de ficheros de FreeBSD en un
disco ZIP empleando &man.newfs.8;. Sin embargo eso convertiría
a ese disco en legible solamente en un sistema FreeBSD y
y quizás en unos pocos sistemas clónicos de &unix;
que reconocen el sistema de ficheros de FreeBSD. En cualquier caso
DOS y Windows <emphasis>no</emphasis> están entre ellos.</para>
</sect1>
</article>

View file

@ -12,13 +12,9 @@ SUBDIR+= contributing
SUBDIR+= contributing-ports
SUBDIR+= contributors
SUBDIR+= cvsup-advanced
SUBDIR+= dialup-firewall
SUBDIR+= diskless-x
SUBDIR+= euro
SUBDIR+= explaining-bsd
SUBDIR+= filtering-bridges
SUBDIR+= fonts
SUBDIR+= formatting-media
SUBDIR+= ip-aliasing
SUBDIR+= ipsec-must
SUBDIR+= java-tomcat
@ -26,7 +22,6 @@ SUBDIR+= laptop
SUBDIR+= linux-users
SUBDIR+= make-world
SUBDIR+= mh
SUBDIR+= multi-os
SUBDIR+= nanobsd
SUBDIR+= new-users
SUBDIR+= ntfs
@ -37,7 +32,6 @@ SUBDIR+= problem-reports
SUBDIR+= programming-tools
SUBDIR+= pxe
SUBDIR+= releng-packages
SUBDIR+= zip-drive
ROOT_SYMLINKS+= new-users

View file

@ -1,21 +0,0 @@
#
# The FreeBSD Documentation Project
# The FreeBSD French Documentation Project
#
# $FreeBSD$
# Original revision: 1.1
#
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,417 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//FR" "../../share/sgml/entities.ent">
%entities;
<!ENTITY % not.published "IGNORE">
]>
<!--
The FreeBSD Documentation Project
The FreeBSD French Documentation Project
$FreeBSD$
$Id: article.sgml,v 1.4 2007-01-20 13:34:48 blackend Exp $
Original revision: 1.25
-->
<article lang="fr">
<articleinfo>
<title>Coupe-feu pour connexion par modem avec FreeBSD</title>
<authorgroup>
<author>
<firstname>Marc</firstname>
<surname>Silver</surname>
<affiliation>
<address><email>marcs@draenor.org</email></address>
</affiliation>
</author>
</authorgroup>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Cet article expose comment mettre en place un coupe-feu
utilisant une connexion PPP par modem avec FreeBSD et IPFW, et
spécifiquement l'utilisation de coupe-feux pour une connexion par
modem avec adresse IP dynamique. Ce document ne couvre pas en
premier lieu la configuration de votre connexion PPP.</para>
&trans.a.fonvieille;
</abstract>
</articleinfo>
<sect1 id="preface">
<title>Préface</title>
<para>Coupe-feu pour connexion par modem avec FreeBSD</para>
<para>Ce document couvre le processus requis pour configurer un
coupe-feu avec FreeBSD quand votre fournisseur d'accès vous
assigne une adresse IP dynamique. Alors que de nombreux efforts
ont été faits afin de rendre ce document aussi instructif et
correct que possible, vous êtes encouragés &agrave; envoyer vos
commentaires/suggestions &agrave; l'adresse
<email>marcs@draenor.org</email>.</para>
</sect1>
<sect1 id="kernel">
<title>Options du noyau</title>
<para>La première chose dont vous aurez besoin est de recompiler votre
noyau. Si vous avez besoin de plus d'informations sur comment
recompiler un noyau, alors le meilleur endroit pour commencer est
la <ulink url="../../books/handbook/kernelconfig.html">section de
configuration du noyau du manuel</ulink>. Vous devez rajouter les
options suivantes dans le fichier de configuration de votre
noyau:</para>
<variablelist>
<varlistentry>
<term><literal>options IPFIREWALL</literal></term>
<listitem>
<para>Intègre au noyau le code de filtrage de paquets.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options IPFIREWALL_VERBOSE</literal></term>
<listitem>
<para>Envoie les paquets tracés au système de traces.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options
IPFIREWALL_VERBOSE_LIMIT=<replaceable>100</replaceable></literal></term>
<listitem>
<para>Limite le nombre de paquets similaires tracés. Cela
évite que votre fichier de traces soit submergé de nombreuses
entrées répétées. <replaceable>100</replaceable> est une
valeur raisonnable, mais vous pouvez l'ajuster en fonction
de vos besoins.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options IPDIVERT</literal></term>
<listitem>
<para>Autorise le <emphasis>détournement</emphasis> des
sockets, cela sera explicité plus tard.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Il y a d'autres éléments <emphasis>optionnels</emphasis> que
vous pouvez rajouter dans le noyau pour plus de sécurité. Ils ne
sont pas requis pour avoir un filtrage de paquets qui fonctionne,
mais il se peut que quelques utilisateurs un peu plus paranoïaques
désirent les utiliser.</para>
<variablelist>
<varlistentry>
<term><literal>options TCP_DROP_SYNFIN</literal></term>
<listitem>
<para>Cette option ignore les paquets TCP avec les indicateurs
SYN et FIN activés. Cela empêche certains utilitaires tel
que nmap etc. d'identifier la pile TCP/IP de la machine,
mais cela rompt le support des extensions RFC1644. Cela
<emphasis>n'est pas</emphasis> recommandé si la machine
héberge un serveur web.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Ne pas redémarrer une fois que vous avez recompilé le noyau.
Avec un peu de chance, nous n'aurons besoin de redémarrer qu'une
fois pour achever l'installation du coupe-feu.</para>
</sect1>
<sect1 id="rcconf">
<title>Modifier <filename>/etc/rc.conf</filename> pour charger le
coupe-feu</title>
<para>Nous avons maintenant besoin de quelques modifications de
<filename>/etc/rc.conf</filename> afin de signaler notre
coupe-feu. Ajoutez simplement les lignes suivantes:</para>
<programlisting>firewall_enable="YES"
firewall_script="/etc/firewall/fwrules"
natd_enable="YES"
natd_interface="tun0"
natd_flags="-dynamic"</programlisting>
<para>Pour plus d'informations sur la fonction de ces éléments
jetez un coup d'oeil &agrave; <filename>/etc/defaults/rc.conf</filename>
et lisez la page de manuel &man.rc.conf.5;.</para>
</sect1>
<sect1>
<title>Désactiver la traduction d'adresse réseau de PPP</title>
<para>Il se peut que vous utilisiez déj&agrave; la traduction d'adresse
réseau (NAT) intégrée &agrave; PPP. Si c'est le cas alors vous aurez &agrave;
la désactiver, étant donné que nos exemples utilisent &man.natd.8;
pour faire la même chose.</para>
<para>Si vous avez déj&agrave; un ensemble d'options pour démarrer
automatiquement PPP, cela doit probablement ressembler &agrave;
ceci:</para>
<programlisting>ppp_enable="YES"
ppp_mode="auto"
ppp_nat="YES"
ppp_profile="<replaceable>profile</replaceable>"</programlisting>
<para>Si c'est le cas, vous devrez spécifiquement désactiver
<literal>ppp_nat</literal> en vous assurant que vous avez bien
la ligne <literal>ppp_nat="NO"</literal> dans
<filename>/etc/rc.conf</filename>. Vous devrez également
retirer les lignes <literal>nat enable yes</literal> ou
<literal>alias enable yes</literal> de
<filename>/etc/ppp/ppp.conf</filename>.</para>
</sect1>
<sect1 id="rules">
<title>Le jeu de règles pour le coupe-feu</title>
<para>Nous avons presque terminé. Tout ce qu'il reste &agrave; faire est
de définir les règles du coupe-feu et alors nous pourrons
redémarrer, et notre coupe-feu devrait fonctionner. Je me suis rendu
compte que chacun désirera quelque chose de légèrement différent
quand il est question de son ensemble de règles. Ce que j'ai
essayé de faire est d'écrire un ensemble de règles qui conviendra
&agrave; la plupart des utilisateurs de modems. Vous pouvez bien
évidement le modifier selon vos besoins en utilisant les règles
suivantes comme fondation pour votre propre ensemble de règles.
Tout d'abord commençons avec les bases du filtrage fermé. Ce que
vous voulez faire est de refuser tout par défaut et ensuite
n'autoriser que les choses dont vous avez vraiment besoin. Les
règles devraient être ordonnées de façon &agrave; autoriser tout d'abord
puis ensuite refuser. Le principe est que vous ajoutiez les règles
pour vos autorisations, et ensuite tout est refusé. :)</para>
<para>Maintenant, créons le répertoire <filename
class="directory">/etc/firewall</filename>. Allez dans ce
répertoire et éditez le fichier <filename>fwrules</filename> comme
nous l'avons spécifié dans <filename>rc.conf</filename>. S'il
vous plaît, notez que vous pouvez changer le nom de ce fichier
pour celui que vous désirez. Ce guide donne juste un exemple de
nom de fichier.</para>
<para>Maintenant, jettons un coup d'oeil &agrave; cet exemple de fichier de
coupe-feu, qui est minutieusement commenté.</para>
<programlisting># Règles du coupe-feu
# Ecrit par Marc Silver (marcs@draenor.org)
# http://draenor.org/ipfw
# Librement distribuable
# Définie la commande du coupe-feu (comme dans /etc/rc.firewall)
# pour une référence aisée. Facilite la lecture.
fwcmd="/sbin/ipfw"
# Vide les règles actuelles avant rechargement.
$fwcmd -f flush
# Détourne tous les paquets &agrave; travers l'interface tunnel
$fwcmd add divert natd all from any to any via tun0
# Autorise toutes les données de ma carte réseau et de l'hôte local.
# Soyez sûr de changer votre carte réseau (la mienne était fxp0) avant
# de redémarrer. :)
$fwcmd add allow ip from any to any via lo0
$fwcmd add allow ip from any to any via fxp0
# Autorise toute les connexions dont je suis l'initiateur.
$fwcmd add allow tcp from any to any out xmit tun0 setup
# Une fois les connexions établies, les autorise &agrave; rester ouvertes.
$fwcmd add allow tcp from any to any via tun0 established
# Tous le monde sur internet est autorisé &agrave; se connecter aux services
# suivants sur la machine. Cet exemple autorise spécifiquement les
# connexions &agrave; ssh et apache.
$fwcmd add allow tcp from any to any 80 setup
$fwcmd add allow tcp from any to any 22 setup
# Ceci envoie un RESET &agrave; tous les paquets ident.
$fwcmd add reset log tcp from any to any 113 in recv tun0
# Autorise les requettes DNS sortantes SEULEMENT vers les serveurs
# spécifiés.
$fwcmd add allow udp from any to <replaceable>x.x.x.x</replaceable> 53 out xmit tun0
# Autorise leur retour avec les réponses... :)
$fwcmd add allow udp from <replaceable>x.x.x.x</replaceable> 53 to any in recv tun0
# Autorise l'ICMP (pour permettre &agrave; ping et traceroute de fonctionner).
# Vous pouvez peut-être désirer désactiver ceci, mais je pense que cela
# répond &agrave; mes besoins de les conserver ainsi.
$fwcmd add allow icmp from any to any
# Bloque tout le reste.
$fwcmd add deny log ip from any to any</programlisting>
<para>Vous disposez désormais d'un coupe-feu tout &agrave; fait fonctionnel
qui autorisera les connexions sur les ports 80 et 22 et tracera
tout autre tentative de connexion. Maintenant, vous devriez être
en mesure de redémarrer sans risques et votre coupe-feu devrait se
lancer sans problèmes. Si vous trouvez une quelconque erreur ou
expérimentez des problèmes, ou que vous avez des suggestions pour
améliorer ce document, s'il vous plaît écrivez-moi.</para>
</sect1>
<sect1>
<title>Questions</title>
<qandaset>
<qandaentry>
<question>
<para>Pourquoi utilisez-vous &man.natd.8; et &man.ipfw.8;
alors que vous pourriez utiliser les filtres intégrés &agrave;
&man.ppp.8;?
</para>
</question>
<answer>
<para>Je serais honnête et dirais qu'il n'y a aucune raison
définitive pour que j'utilise <command>ipfw</command> et
<command>natd</command> plutôt que les filtres intégrés &agrave;
<command>ppp</command>. D'après les discussions que j'ai eu
avec de nombreuses personnes le consensus semble être
qu'<command>ipfw</command> est certainement plus
puissant et configurable que les filtres
<command>ppp</command>, mais ce qu'il apporte dans la
fonctionnalité il le perd en facilité d'utilisation. Une
des raisons de mon utilisation est que je préfère que le
filtrage de paquets soit fait au niveau du noyau plutôt que
par un programme utilisateur.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>J'obtiens des messages du type <errorname>limit 100
reached on entry 2800</errorname> et après cela je ne vois
plus jamais de refus dans mes traces. Mon coupe-feu
fonctionne-t-il toujours?
</para>
</question>
<answer>
<para>Cela signifie simplement que le nombre maximal de
traces pour la règle a été atteint. La règle fonctionne
toujours, mais elle n'enregistrera plus de trace jusqu'au
moment ou vous réinitialiserez les compteurs de traces.
Vous pouvez réinitialiser les compteurs de traces avec la
commande <command>ipfw resetlog</command>. Alternativement,
vous pouvez augmenter la limite de trace dans la
configuration de votre noyau avec l'option
<option>IPFIREWALL_VERBOSE_LIMIT</option> comme décrit
précédemment. Vous pouvez également changer cette limite
(sans recompiler votre noyau ou avoir &agrave; redémarrer) en
utilisant la valeur &man.sysctl.8;
net.inet.ip.fw.verbose_limit.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>Si j'utilise des adresses privées en interne, comme
dans la plage 192.168.0.0, pourrais-je ajouter une commande
comme <literal>$fwcmd add deny all from any to
192.168.0.0:255.255.0.0 via tun0</literal> aux règles du
coupe-feu pour prévenir les tentatives externes de
connexions vers les machines internes?</para>
</question>
<answer>
<para>Une réponse simple est non. La raison de cela est que
<command>natd</command> effectue la traduction d'adresse
pour <emphasis>tout</emphasis> ce qui sera détourné &agrave;
travers le périphérique <devicename>tun0</devicename>. En
ce qui concerne les paquets entrant, ces derniers ne
parleront qu'&agrave; l'adresse IP dynamiquement assignée et
<emphasis>non pas</emphasis> au réseau interne. Notez que
cependant vous pouvez ajouter une règle comme
<literal>$fwcmd add deny all from 192.168.0.4:255.255.0.0 to
any via tun0</literal> qui limiterait un hôte de votre réseau
interne de sortir via le coupe-feu.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>Il doit y avoir quelque chose d'erroné. J'ai suivi vos
instructions &agrave; la lettre et maintenant tout est bloqué.</para>
</question>
<answer>
<para>Ce guide suppose que vous utilisez
<emphasis>userland-ppp</emphasis> aussi le jeu de règle
donné intervient sur l'interface
<devicename>tun0</devicename>, qui correspond &agrave; la première
connexion établie avec &man.ppp.8; (a.k.a.
<emphasis>user-ppp</emphasis>). Les connexions
supplémentaires utiliseront <devicename>tun1</devicename>,
<devicename>tun2</devicename> et ainsi de suite.</para>
<para>Vous devriez également noter que &man.pppd.8; utilise
&agrave; la place l'interface <devicename>ppp0</devicename>, donc
si vous établissez une connexion avec &man.pppd.8; vous
devez remplacer <devicename>tun0</devicename> par
<devicename>ppp0</devicename>. Une façon rapide d'éditer
les règles du coupe-feu pour refléter ce changement est
présentée ci-dessous. Le jeu de règles original est
sauvegardé sous <filename>fwrules_tun0</filename>.</para>
<screen> &prompt.user; <userinput>cd /etc/firewall</userinput>
/etc/firewall&prompt.user; <userinput>su</userinput>
<prompt>Password:</prompt>
/etc/firewall&prompt.root; <userinput>mv fwrules fwrules_tun0</userinput>
/etc/firewall&prompt.root; <userinput>cat fwrules_tun0 | sed s/tun0/ppp0/g > fwrules</userinput>
</screen>
<para>Pour savoir si vous utilisez actuellement &man.ppp.8; ou
&man.pppd.8; vous pouvez examiner la sortie
d'&man.ifconfig.8; une fois que la connexion est établie.
E.g., pour une connexion faite par &man.pppd.8; vous verriez
quelque chose comme ceci (on ne montre que les lignes
importantes):</para>
<screen> &prompt.user; <userinput>ifconfig</userinput>
<emphasis>(skipped...)</emphasis>
ppp0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
inet <replaceable>xxx.xxx.xxx.xxx</replaceable> --&gt; <replaceable>xxx.xxx.xxx.xxx</replaceable> netmask <replaceable>0xff000000</replaceable>
<emphasis>(skipped...)</emphasis>
</screen>
<para>D'autre part, pour une connexion faite avec &man.ppp.8;
(<emphasis>user-ppp</emphasis>) vous devriez voir quelque
chose de similaire &agrave;:</para>
<screen> &prompt.user; <userinput>ifconfig</userinput>
<emphasis>(skipped...)</emphasis>
ppp0: flags=<replaceable>8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1500</replaceable>
<emphasis>(skipped...)</emphasis>
tun0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
<emphasis>(IPv6 stuff skipped...)</emphasis>
inet <replaceable>xxx.xxx.xxx.xxx</replaceable> --&gt; <replaceable>xxx.xxx.xxx.xxx</replaceable> netmask <replaceable>0xffffff00</replaceable>
Opened by PID <replaceable>xxxxx</replaceable>
<emphasis>(skipped...)</emphasis></screen>
</answer>
</qandaentry>
</qandaset>
</sect1>
</article>

View file

@ -1,20 +0,0 @@
#
# The FreeBSD Documentation Project
# The FreeBSD French Documentation Project
#
# $FreeBSD$
# Original revision: 1.4
#
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,285 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//FR" "../../share/sgml/entities.ent">
%entities;
<!ENTITY % not.published "IGNORE">
]>
<!--
The FreeBSD Documentation Project
The FreeBSD French Documentation Project
$FreeBSD$
Original revision: n.nn
-->
<article lang="fr">
<articleinfo>
<title>Mise en oeuvre d'un terminal X sans disque dur</title>
<authorgroup>
<author>
<firstname> Jerry</firstname>
<surname>Kendall</surname>
<affiliation>
<address>
<email>jerry@kcis.com</email>
</address>
</affiliation>
</author></authorgroup>
<pubdate>28 Décembre 1996</pubdate>
<copyright>
<year>1996</year>
<holder>Jerry Kendall</holder>
</copyright>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Avec l'aide de quelques amis de la &a.hackers;, j'ai pu mettre en service un terminal X sans disque dur. Pour cela, j'ai d'abord dû installer une station sans disque qui dispose d'un minimum d'utilitaires montés par NFS. J'ai répété l'opération pour disposer de deux systèmes sans disque. Pour les deux, j'ai procédé de la même façon. Le premier est <hostid role="fqdn">altair.kcis.com</hostid>. C'est un terminal X sur mon vieux 386DX-40. Il a bien un disque dur de 340 Mo, mais je ne voulais pas y toucher. Il démarre donc &agrave; partir de <hostid role="fqdn">antares.kcis.com</hostid> sur le réseau Ethernet. Le second est un 486DX2-66. J'ai installé un système FreeBSD (complet) qui n'utilise pas de disque local. Le serveur de démarrage est un Sun 670MP sous SunOs 4.1.3. Les deux systèmes FreeBSD sont configurés de la même façon.</para>
<para>Je suis sûr qu'il y a des choses &agrave; ajouter &agrave; ce document. Faites-moi s'il vous plaît part de vos commentaires.</para>
&trans.a.haby;
</abstract>
</articleinfo>
<sect1>
<title>Préparation de la disquette de démarrage (sur le système sans disque)</title>
<para>Les gestionnaires de démarrage via le réseau ne sont pas compatibles avec les TSRs et autres qu'utilise MS-DOS, il est préférable de préparer une disquette de démarrage, ou, si vous le pouvez, de mettre en place un menu MS-DOS qui (par l'intermédiaire des fichiers <filename>config.sys</filename>/<filename>autoexec.bat</filename>) vous demande au démarrage quelle configuration charger. C'est cette dernière méthode que j'ai utilisée et elle fonctionne &agrave; merveille. Voici mon menu MS-DOS&nbsp;:</para>
<example>
<title><filename>config.sys</filename></title>
<programlisting>[menu]
menuitem=normal, normal
menuitem=unix, unix
[normal]
....
config.sys habituel
...
[unix]</programlisting>
</example>
<example>
<title><filename>autoexec.bat</filename></title>
<programlisting>@ECHO OFF
goto %config%
:normal
...
autoexec.bat habituel
...
goto end
:unix
cd \netboot
nb8390.com
:end</programlisting>
</example>
</sect1>
<sect1>
<title>Générer les programmes de démarrage en réseau (sur le serveur)</title>
<para>Compilez les programmes de &ldquo;démarrage en réseau&rdquo; que vous trouverez dans <filename>/usr/src/sys/i386/boot/netboot</filename>. Lisez les commentaires au début du <filename>Makefile</filename>. Faites les modifications nécessaires. Faites une sauvegarde de l'original, pour vous prémunir en cas de problèmes. Après compilation, vous devriez obtenir deux exécutables, <filename>nb8390.com</filename> et <filename>nb3c509.com</filename>. C'est l'un de ces programmes que vous devrez exécuter sur la machine sans disque. Il chargera le noyau depuis le serveur de démarrage. Recopiez alors ces deux programmes sur la disquette de démarrage que vous avez créée auparavant.</para>
</sect1>
<sect1>
<title>Déterminer le programme &agrave; utiliser (sur la machine sans disque)</title>
<para>Si vous savez quel composant utilise votre carte Ethernet, c'est facile. Si vous avez un circuit NS8390 ou équivalent, servez vous de <filename>nb8390.com</filename>. Si vous avez un circuit de type 3Com 509, utilisez le programme de démarrage <filename>nb3C509.com</filename>. Si vous ne savez pas, essayez l'un et si vous avez le message &ldquo;<errorname>No adapter found</errorname>&rdquo;, essayez avec l'autre. Si rien ne marche, vous êtes livré &agrave; vous-même.</para>
</sect1>
<sect1>
<title>Démarrer en réseau</title>
<para>Démarrez la station sans disque sans fichiers <filename>config.sys/autoexec.bat</filename>. Essayez d'exécuter le programme de démarrage qui correspond &agrave; votre carte Ethernet.</para>
<para>Ma carte Ethernet utilise le mode 16bit WD8013 16bit, j'exécute donc
<filename>nb8390.com</filename>&nbsp;:</para>
<screen><prompt>C:&gt;</prompt> <userinput>cd \netboot</userinput>
<prompt>C:&gt;</prompt> <userinput>nb8390</userinput>
<prompt>Boot from Network (Y/N) ?</prompt> <userinput>Y</userinput>
BOOTP/TFTP/NFS bootstrap loader ESC for menu
Searching for adapter..
WD8013EBT base 0x0300, memory 0x000D8000, addr 00:40:01:43:26:66
Searching for server...</screen>
<para>La machine sans disque essaye maintenant de trouver un serveur de démarrage. Notez la valeur de <literal>addr</literal> sur l'avant dernière ligne, vous en aurez besoin ensuite. Redémarrez la machine sans disque et modifiez vos
fichiers <filename>config.sys</filename> et <filename>autoexec.bat</filename> pour qu'ils fassent automatiquement ce que vous venez de faire &agrave; la main. Peut-être avec un menu. Si vous aviez dû utiliser <command>nb3c509.com</command> au lieu de <command>nb8390.com</command>, les messages seraient identiques. Si vous obtenez le message &ldquo;<errorname>No adapter found</errorname>&rdquo; après &ldquo;<literal>Searching for adapter...</literal>&rdquo;, vérifiez que vous avez défini les bonnes valeurs dans le <filename>Makefile</filename> au moment de compiler.</para>
</sect1>
<sect1>
<title>Permettre aux systèmes de démarrer via le réseau (sur le serveur)</title>
<para>Vérifiez qu'il y a bien des entrées pour <citerefentry><refentrytitle>tftp</refentrytitle></citerefentry> et <citerefentry><refentrytitle>bootps</refentrytitle></citerefentry> dans le fichier <filename>/etc/inetd.conf</filename>. Voici le mien&nbsp;:</para>
<programlisting>tftp dgram udp wait nobody /usr/libexec/tftpd tftpd
#
# Ajout de qui que vous soyez
bootps dgram udp wait root /usr/libexec/bootpd bootpd /etc/bootptab</programlisting>
<para>Si vous devez modifier le fichier <filename>/etc/inetd.conf</filename>, envoyez ensuite un signal <literal>HUP</literal> &agrave; <citerefentry><refentrytitle>inetd</refentrytitle></citerefentry>. Pour cela, utilisez la commande <command>ps -ax | grep inetd | grep -v grep</command> pour connaître le numéro de processus d'<citerefentry><refentrytitle>inetd</refentrytitle></citerefentry>. Une fois que vous l'avez, envoyez lui le signal HUP. Cela se fait avec <command>kill -HUP &lt;pid&gt;</command>. Cela obligera <citerefentry><refentrytitle>inetd</refentrytitle></citerefentry> &agrave; relire ses fichiers de configuration.</para>
<para>Vous avez bien noté la valeur de <literal>addr</literal> dans les messages du programme de démarrage sur la machine sans disque&nbsp;? C'est maintenant que vous allez en avoir besoin.</para>
<para>Ajoutez une entrée &agrave; <literal>/etc/bootptab</literal> (vous devrez peut-être créer ce fichier). Voici &agrave; quoi elle doit ressembler&nbsp;:</para>
<programlisting>altair:\
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:ht=ether:\
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:ha=004001432666:\
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:sm=255.255.255.0:\
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:hn:\
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:ds=199.246.76.1:\
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:ip=199.246.76.2:\
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:gw=199.246.76.1:\
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:vm=rfc1048:</programlisting>
<para>Ce qui, ligne par ligne, signifie&nbsp;:</para>
<informaltable frame="none">
<tgroup cols="2">
<tbody>
<row>
<entry><literal>altair</literal></entry>
<entry>nom du système sans disque, sans nom de domaine</entry>
</row>
<row>
<entry><literal>ht=ether</literal></entry>
<entry>type matériel &ldquo;ethernet&rdquo;</entry>
</row>
<row>
<entry><literal>ha=004001432666</literal></entry>
<entry>adresse matérielle (le nombre que vous avez noté auparavant)</entry>
</row>
<row>
<entry><literal>sm=255.255.255.0</literal></entry>
<entry>masque de sous-réseau</entry>
</row>
<row>
<entry><literal>hn</literal></entry>
<entry>dit au serveur de donner au client son nom de machine</entry>
</row>
<row>
<entry><literal>ds=199.246.76.1</literal></entry>
<entry>dit au client quel est son serveur de noms de domaine</entry>
</row>
<row>
<entry><literal>ip=199.246.76.2</literal></entry>
<entry>dit au client quelle est son adresse IP</entry>
</row>
<row>
<entry><literal>gw=199.246.76.1</literal></entry>
<entry>dit au client quelle est sa passerelle par défaut</entry>
</row>
<row>
<entry><literal>vm=...</literal></entry>
<entry>laissez cela tel que</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<note>
<para>Veillez &agrave; bien définir les adresses IP, j'ai inventé celles de l'exemple.</para>
</note>
<para>Créez le répertoire <filename>/tftpboot</filename> sur le serveur. Il contiendra les fichiers de configuration pour les systèmes sans disque dont ce sera le serveur de démarrage. Ces fichiers s'appelleront <filename>cfg.&lt;ip&gt;</filename>, où &lt;ip&gt; est l'adresse IP de la machine sans disque. Le fichier de configuration pour &ldquo;altair&rdquo; est <filename>/tftpboot/cfg.199.246.76.2</filename>. Voici son contenu&nbsp;:</para>
<programlisting>rootfs 199.246.76.1:/DiskLess/rootfs/altair
hostname altair.kcis.com</programlisting>
<para>La ligne <literal>hostname altair.kcis.com</literal> indique seulement au système sans disque quel est son nom qualifié.</para>
<para>La ligne <literal>rootfs 199.246.76.1:/DiskLess/rootfs/altair</literal> lui dit où est son système de fichiers racine qui sera monté par NFS.</para>
<note>
<para>Ce système de fichiers racine sera monté en <emphasis>lecture seule</emphasis> par NFS.</para>
</note>
<para>L'arborescence de la machine sans disque peut ensuite être remontée pour autoriser les opérations de lecture/écriture.</para>
<para>J'utilise mon 386DX-40 comme terminal X dédié.</para>
<para>Voici l'arborescence d'&ldquo;altair&rdquo;&nbsp;:</para>
<literallayout>/
/bin
/etc
/tmp
/sbin
/dev
/dev/fd
/usr
/var
/var/run</literallayout>
<para>Et la liste des fichiers qu'elle contient&nbsp;:</para>
<screen>-r-xr-xr-x 1 root wheel 779984 Dec 11 23:44 ./kernel
-r-xr-xr-x 1 root bin 299008 Dec 12 00:22 ./bin/sh
-rw-r--r-- 1 root wheel 499 Dec 15 15:54 ./etc/rc
-rw-r--r-- 1 root wheel 1411 Dec 11 23:19 ./etc/ttys
-rw-r--r-- 1 root wheel 157 Dec 15 15:42 ./etc/hosts
-rw-r--r-- 1 root bin 1569 Dec 15 15:26 ./etc/XF86Config.altair
-r-x------ 1 bin bin 151552 Jun 10 1995 ./sbin/init
-r-xr-xr-x 1 bin bin 176128 Jun 10 1995 ./sbin/ifconfig
-r-xr-xr-x 1 bin bin 110592 Jun 10 1995 ./sbin/mount_nfs
-r-xr-xr-x 1 bin bin 135168 Jun 10 1995 ./sbin/reboot
-r-xr-xr-x 1 root bin 73728 Dec 13 22:38 ./sbin/mount
-r-xr-xr-x 1 root wheel 1992 Jun 10 1995 ./dev/MAKEDEV.local
-r-xr-xr-x 1 root wheel 24419 Jun 10 1995 ./dev/MAKEDEV</screen>
<para>N'oubliez pas d'exécuter <command>MAKEDEV all</command> dans le répertoire <filename>dev</filename>.</para>
<para>Voici enfin mon <filename>/etc/rc</filename> pour <hostid>altair</hostid>&nbsp;:</para>
<programlisting>#!/bin/sh
#
PATH=/bin:/
export PATH
#
# configurer l'interface &ldquo;en boucle&rdquo;
/sbin/ifconfig lo0 127.0.0.1
#
# configurer la carte Ethernet
/sbin/ifconfig ed0 199.246.76.2 netmask 0xffffff00
#
# monter le système de fichiers racine via NFS
/sbin/mount antares:/DiskLess/rootfs/altair /
#
# monter le système de fichiers /usr via NFS
/sbin/mount antares:/DiskLess/usr /usr
#
/usr/X11R6/bin/XF86_SVGA -query antares -xf86config /etc/XF86Config.altair > /dev/null 2>&amp;1
#
# Rédemarrer lorsque l'on quitte X
/sbin/reboot
#
# Nous avons planté ...
exit 1</programlisting>
<para>Vos commentaires et questions sont bienvenus.</para>
</sect1>
</article>

View file

@ -1,22 +0,0 @@
#
# The FreeBSD Documentation Project
# The FreeBSD French Documentation Project
#
# $FreeBSD$
# Original revision: 1.1
#
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,385 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//FR" "../../share/sgml/entities.ent">
%entities;
<!ENTITY % not.published "IGNORE">
]>
<!--
The FreeBSD Documentation Project
The FreeBSD French Documentation Project
$FreeBSD$
$Id: article.sgml,v 1.5 2003-12-29 12:57:18 gioria Exp $
Original revision: 1.8
-->
<article lang="fr">
<articleinfo>
<title>L'Euro et <systemitem class="osname">FreeBSD</systemitem></title>
<authorgroup>
<author>
<firstname>Aaron</firstname>
<surname>Kaplan</surname>
<affiliation>
<address>
<email>aaron@lo-res.org</email>
</address>
</affiliation>
</author>
</authorgroup>
<copyright>
<year>2002</year>
<year>2003</year>
<holder>Groupe de Documentation de FreeBSD</holder>
</copyright>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.general;
</legalnotice>
<abstract>
<para>Ce document essaiera de vous aider &agrave; démarrer avec le
symbole <keycap>Euro</keycap> présent sur le nouveau clavier
que vous avez dû acheter au début 2002 en raison du passage &agrave; la
monnaie unique. Nous nous focaliserons en premier lieu sur les
parties les plus importantes comme être capable d'afficher
correctement le symbole sur la console.
Les sections suivantes traiterons de la configuration de
programmes particuliers comme <application>X11</application>.
</para>
<para>De nombreuses remarques utiles sont venues d'Oliver Fromme,
Tom Rhodes et d'innombrables autres personnes. Merci! Sans vous
cet article n'aurait pas été possible!
</para>
&trans.a.fonvieille;
</abstract>
</articleinfo>
<sect1>
<title>L'Euro en bref</title>
<para>Si vous vous sentez déj&agrave; &agrave; l'aise avec la
<ulink url="../../books/handbook/l10n.html">localisation</ulink>
comme elle est décrite dans le manuel
<systemitem class="osname">FreeBSD</systemitem>
vous pourriez être uniquement intéressé que par les faits
suivants qui vous permettront de démarrer rapidement:
</para>
<variablelist>
<varlistentry>
<term>ISO8859-15</term>
<listitem>
<para>C'est une légère modification du jeu de caractères
ISO8859-1 habituellement utilisé. Il inclut le symbole Euro.
Il est utilisé par les variables d'environnement
<envar>LANG</envar>, et <envar>LC_CTYPE</envar>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>iso15-8x16.fnt</filename></term>
<listitem>
<para>La police de caractères de &man.vidcontrol.1; pour la
console</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>/usr/share/syscons/keymaps/*.iso.kbd</filename></term>
<listitem>
<para>Les tables de clavier appropriées en fonction de votre
langue. Configurez votre table de clavier dans
<filename>rc.conf</filename> avec une de ces dernières.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><envar>LC_CTYPE</envar></term>
<listitem>
<para>Utilisé pour spécifier le type correct de caractères
locaux.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>XkbLayout "<replaceable>lang</replaceable>(euro)"</literal></term>
<listitem>
<para>Option de configuration d'<application>XFree86</application>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>/usr/X11R6/lib/X11/fonts/*/fonts.alias</filename></term>
<listitem>
<para>Soyez sûr d'ajuster vos polices de caractères pour X11 &agrave;
<literal>-*-..-*-iso8859-15</literal></para>
</listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1>
<title>Remarque générale</title>
<para>Dans les sections suivantes nous ferons souvent référence &agrave;
<emphasis>ISO8859-15</emphasis>. C'est la notation standard
introduite avec <systemitem class="osname">FreeBSD</systemitem> 4.5.
Dans les anciennes versions, la notation standard était soit
<emphasis>ISO_8859-15</emphasis> soit <emphasis>DIS_8859-15</emphasis>.
</para>
<para>Si vous utilisez une ancienne version de
<systemitem class="osname">FreeBSD</systemitem>, soyez sûr de
jeter un oeil &agrave; <filename>/usr/share/locale/</filename> afin de
déterminer quelle convention de notation est utilisée.</para>
</sect1>
<sect1>
<title>La console</title>
<sect2>
<title>Configurer la police de caractères de la console</title>
<para>En fonction de la taille et la résolution de votre console
vous aurez besoin d'une des lignes suivantes dans
<filename>rc.conf</filename>:</para>
<programlisting>font8x16="iso15-8x16.fnt" # from /usr/share/syscons/fonts/*
font8x14="iso15-8x14.fnt"
font8x8="iso15-8x8.fnt"</programlisting>
<para>Cela sélectionnera la police de caractère ISO8859-15 aussi
connue sous le nom de Latin-9. L'ISO8859-15 est une variation de
l'ISO8859-1. On peut voir la différence entre les deux en
regardant le symbole Euro: ça valeur décimale est 164. En
ISO8859-1 vous remarquerez un cercle avec quatre petits traits
aux coins. Il est souvent dénommé le &ldquo;symbole monétaire
international&rdquo;. En ISO8859-15, au lieu du cercle, vous avez le
symbole Euro. En dehors de cela les polices sont plus ou moins
identiques.</para>
<warning>
<para>Au moment de l'écriture de cet article, la seule police
utilisable semble être l'<literal>iso15-8x16.fnt</literal>. Les
autres semblent uniquement afficher de l'ISO8859-1 en dépit de
ce que suggère leur nom.</para>
</warning>
<note>
<para>En spécifiant cette police de caractères quelques
applications pour la console s'afficheront altérées. Cela est dû
au fait qu'elles supposent que vous êtes en train d'utiliser une
police différente telle que l'ANSI 850. Un exemple précis est
<application>sysinstall</application>. Cependant la
plupart du temps cela ne devrait pas affecter les
applications.</para>
</note>
<para>Comme étape suivante vous devrez soit redémarrer le système pour que
les changements prennent effet soit (manuellement) effectuer les commandes
lancées au démarrage du système:</para>
<screen>&prompt.user; <userinput>vidcontrol -f <replaceable>iso15-8x16.fnt</replaceable></userinput></screen>
<para>Pour vérifier si la police a bien été sélectionnée, exécuter la courte
procédure <command><anchor id="awk-test"/>awk</command> suivante :</para>
<programlisting>#!/usr/bin/awk -f
BEGIN {
for(i=160;i&lt;180;i++)
printf"%3d %c\n",i,i
}</programlisting>
<para>Le résultat devrait faire apparaître le signe Euro &agrave; la
position 164.</para>
</sect2>
<sect2>
<title>Configurer votre clavier pour l'Euro</title>
<para>La plupart des tables de clavier devraient déj&agrave; être
correctement configurées. I.e: Si vous avez un clavier allemand et que
vos touches Umlaut fonctionnent, vous pouvez sans risque passer
cette section dès lors que le clavier fait correspondre quelque soit la
combinaison de touches nécessaire (e.g.: <keycombo
action="simul"><keycap>Alt Gr</keycap><keycap>e</keycap></keycombo>) la
valeur décimale 164. Si des problèmes apparaissent, la meilleur
façon de vérifier est de jeter un oeil &agrave;
<filename>/usr/share/syscons/keymaps/*.kbd</filename>. Le format
des tables de correspondance des touches est décrit dans
&man.keyboard.4;. &man.kbdcontrol.1; peut être utilisé pour
charger une table de clavier sur spécifique.</para>
<para>Une fois que la table de clavier correcte est sélectionnée,
elle devrait être ajoutée dans <filename>/etc/rc.conf</filename> avec la
ligne:</para>
<programlisting>keymap="<replaceable>german.iso</replaceable>" # ou une autre table</programlisting>
<para>Comme cela a été exposé au-dessus, cette étape a
probablement déj&agrave; été effectuée par vous-même lors de
l'installation (avec <application>sysinstall</application>).
Sinon redémarrer ou charger la nouvelle table de clavier via
&man.kbdcontrol.1;.</para>
<para>Pour vérifier le clavier, basculer sur une nouvelle console
et &agrave; l'invite de session, <emphasis>au lieu de s'attacher</emphasis>,
essayez de taper sur la touche <keycap>Euro</keycap>. Si cela ne
fonctionne pas, remplissez un rapport de bogue via &man.send-pr.1; ou
vérifiez que vous avez choisi effectivement la bonne table de clavier.</para>
<note>
<para>A ce stade la touche Euro ne fonctionnera pas encore avec
<application>bash</application> ou
<application>tcsh</application>.</para>
</note>
</sect2>
<sect2>
<title>Corriger les variables d'environnement</title>
<para>Les interpréteurs de commandes (<application>bash</application>, <application>tcsh</application>) renvoient vers
la bibliothèque &man.readline.3; qui alors respecte la
variable d'environnement <envar>LC_CTYPE</envar>. <envar>LC_CTYPE</envar>
doit être configurée avant que l'interpréteur de commandes ne soit
complètement lancé. Heureusement il suffit d'ajouter la ligne:</para>
<programlisting>export LC_CTYPE=<replaceable>de_DE</replaceable>.ISO8859-15</programlisting>
<para>&agrave; votre <filename>.bash_profile</filename> (<application>bash</application>), ou:</para>
<programlisting>setenv LC_CTYPE <replaceable>de_DE</replaceable>.ISO8859-15</programlisting>
<para>&agrave; votre fichier <filename>.login</filename> (<application>tcsh</application>). Bien sûr,
<replaceable>de_DE</replaceable> devra être remplacé par votre langue.
Ensuite, fermez la session, ouvrez une nouvelle session et vérifiez
que la touche Euro fonctionne. A partir de maintenant la plupart
des applications pour la console devrait répondre &agrave; la touche
Euro. Cependant des configurations supplémentaires pour des programmes
spécifiques comme <application>pine</application> pourraient
être encore nécessaires.</para>
<note>
<para>Une alternative &agrave; la modification des fichiers
<filename>.login</filename> et <filename>.bash_profile</filename>
est de définir les variables d'environnement par l'intermédiaire
de &man.login.conf.5;. Cette approche a l'avantage d'assigner,
<emphasis>en un seul endroit</emphasis>, des classes de session pour
certains utilisateurs (e.g. utilisateurs français, italiens, etc...).</para>
</note>
</sect2>
</sect1>
<sect1>
<title>Modifier X11</title>
<para>Modifiez <filename>/etc/XF86Config</filename> de la manière
suivante:</para>
<programlisting>Option "XkbLayout" "<replaceable>de</replaceable>(euro)"</programlisting>
<para>Encore une fois, remplacez <replaceable>de</replaceable> avec
votre langue. A partir de maintenant, le clavier devrait être
correctement configuré. Comme dans la partie consacrée &agrave; la
console la police de caractères correcte doit être choisie. Pour
<application>KDE</application>, aller dans le
<application>centre de contrôle de KDE</application> -&gt;
Personnalisation -&gt; Pays &amp; Langue -&gt; Jeu de caractères
et le changer pour <literal>ISO8859-15</literal>. Les mêmes
étapes s'appliquent &agrave; <application>kmail</application> et
autres applications.</para>
<para>Une autre bonne idée est de modifier votre fichier
<filename>fonts.alias</filename>. En particulier la police de
caractères <literal>fixed</literal> devra être changée pour le
bon jeu de caractère : le fichier
<filename>/usr/X11R6/lib/X11/fonts/misc/fonts.alias</filename>
de l'auteur ressemble &agrave; :</para>
<programlisting>! $Xorg: fonts.alias,v 1.3 2000/08/21 16:42:31 coskrey Exp $
fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15
variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15
(...)</programlisting>
<para>Comme dans les parties au sujet de la console, des
applications spécifiques ont encore les polices de caractères
ISO8859-1 configurées dans leur base de données &man.xrdb.1;
respectives. Un exemple notable est <application>xterm</application>.
En général il suffit juste de modifier le fichier de
configuration correspondant dans
<filename>/usr/X11R6/lib/X11/app-defaults</filename> et ajouter
la police de caractères correcte. Faisons la démonstration avec
<application>xterm</application>.</para>
<screen>&prompt.root; cd /usr/X11R6/lib/X11/app-defaults/
&prompt.root; vi XTerm</screen>
<para>Ajoutez la ligne suivante au début du fichier :</para>
<programlisting>*font: -misc-fixed-medium-r-normal-*-*-120-*-*-c-*-iso8859-15</programlisting>
<para>Finalement, redémarrer X et vérifier que les polices de
caractères peuvent être affichées en exécutant la
<link linkend="awk-test">procédure awk</link> précédente. Les
principales applications devraient respecter la table de clavier
et la configuration des polices de caractères.</para>
</sect1>
<sect1>
<title>Problèmes en suspens</title>
<para>Bien évidemment l'auteur souhaiterait avoir un retour. Et aussi, tout au moins,
contactez-moi si vous avez des éléments pour l'un de ces problèmes en
suspens:</para>
<itemizedlist>
<listitem>
<para>Décrire une autre façon de configurer <application>XFree86</application>:
<filename role="package">x11/xkeycaps</filename></para>
</listitem>
<listitem>
<para>Configuration sous <application>GNOME</application></para>
</listitem>
<listitem>
<para>Configuration sous <application>XFCE</application></para>
</listitem>
<listitem>
<para>Configuration d'<application>(X)Emacs</application></para>
</listitem>
<listitem>
<para>Décrire UTF-8</para>
</listitem>
<listitem>
<para>Décrire <application>libiconv</application> comme une
méthode efficace de conversion entre ISO8859-15 et UTF-{8,16}
directement &agrave; partir des applications.</para>
</listitem>
</itemizedlist>
</sect1>
</article>

View file

@ -1,20 +0,0 @@
#
# The FreeBSD Documentation Project
# The FreeBSD French Documentation Project
#
# $FreeBSD$
# Original revision: 1.4
#
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,555 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//FR" "../../share/sgml/entities.ent">
%entities;
<!ENTITY % not.published "IGNORE">
]>
<!--
The FreeBSD Documentation Project
The FreeBSD French Documentation Project
$FreeBSD$
Original revision: n.nn
-->
<article lang="fr">
<articleinfo>
<title>Formatage des supports pour FreeBSD 2.2-RELEASE</title>
<subtitle>Un guide</subtitle>
<authorgroup>
<author>
<firstname>Doug</firstname>
<surname>White</surname>
</author>
</authorgroup>
<abstract>
<para><email>dwhite@resnet.uoregon.edu</email></para>
<para>Mars 1997</para>
<para>Ce document décrit comment découper, partitionner et formater les
disques durs et autres supports similaires pour les utiliser avec
FreeBSD. Les exemples proposés ont été testés avec FreeBSD 2.2-GAMMA et
devraient être applicables &agrave; d'autres versions.</para>
&trans.a.haby;
</abstract>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
</articleinfo>
<sect1>
<title>Introduction et définitions</title>
<sect2>
<title>Résumé</title>
<para>Réussir &agrave; ajouter des disques &agrave; un système existant est la
marque d'un administrateur système expérimenté. Découper, partitionner
et ajouter des disques requiert de combiner avec soin commande
adéquate et syntaxe de nommage. Une frappe malheureuse et un disque
entier peut disparaître en quelques secondes. Ce document est une
tentative pour simplifier le processus et éviter les accidents.
Heureusement, les outils existants (tout particulièrement
<citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>)
ont notablement amélioré ce processus dans les dernières versions de
FreeBSD.</para>
<para>Il y a deux possibilités de formatage d'un disque:</para>
<itemizedlist>
<listitem>
<para><emphasis>mode compatible</emphasis>: Configurer un disque
pour qu'il ait une table des
tranches&nbsp;-&nbsp;&ldquo;<foreignphrase>slices</foreignphrase>&rdquo;&nbsp;-&nbsp;utilisable
avec d'autres systèmes d'exploitation.</para>
</listitem>
<listitem>
<para><emphasis>mode dangereusement dédié</emphasis>: Formater un
disque sans table des
tranches&nbsp;-&nbsp;&ldquo;<foreignphrase>slices</foreignphrase>&rdquo;.
Cela facilite l'ajout de disques, mais des systèmes d'exploitation
autres que FreeBSD risquent de ne pas reconnaître de tels
disques.</para>
</listitem>
</itemizedlist>
<para>Dans la plupart des cas, le mode dédié est le plus facile &agrave; mettre
en oeuvre et &agrave; utiliser sur des systèmes existants, auquel cas le
nouveau disque est en général entièrement dédié &agrave; FreeBSD. Cependant,
le mode compatible garantit le maximum d'interopérabilité avec des
installations ultérieures, au prix d'une plus grande complexité.</para>
<para>En plus du choix du mode, il existe deux méthodes pour découper le
disque. La première est d'utiliser l'outil
<citerefentry><refentrytitle>/stand/sysinstall</refentrytitle></citerefentry>
d'installation du système. A partir de la version 2.1.7-RELEASE de
FreeBSD,
<citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
contient du code qui facilite la
configuration de disques en cours d'opération normale du système,
donnant essentiellement accès aux éditeurs de labels et de partitions,
et comportant un fonctionnalité d'écriture qui ne met &agrave; jour que le
disque sélectionné sans toucher aux autres disques. La seconde méthode
consiste &agrave; employer les utilitaires, &agrave; la main, depuis la ligne de
commande, en session sous le compte super-utilisateur
<username>root</username>. Pour le mode dangereusement dédié, il n'y
a que trois ou quatre commandes concernées, alors que
<citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
demande quelques manipulations.</para>
</sect2>
<sect2>
<title>Définitions</title>
<para>La gestion de disques Unix a, au fil des siècles, inventé de
nombreuses nouvelles définitions pour d'anciens mots. Le glossaire
ci-dessous donne les définitions des expressions utilisées dans
ce document et (espérons-le) pour ce qui concerne FreeBSD en
général.</para>
<itemizedlist>
<listitem>
<para><emphasis>mode compatible</emphasis>: Configurer un disque
pour qu'il ait une table des
tranches&nbsp;-&nbsp;&ldquo;<foreignphrase>slices</foreignphrase>&rdquo;&nbsp;-&nbsp;utilisable
avec d'autres systèmes d'exploitation. C'est le contraire du mode
dangereusement dédié.</para>
</listitem>
<listitem>
<para><emphasis>mode dangereusement dédié</emphasis>: Formater un
disque sans table des
tranches&nbsp;-&nbsp;&ldquo;<foreignphrase>slices</foreignphrase>&rdquo;.
Cela facilite l'ajout de disques, mais des systèmes d'exploitation
autres que FreeBSD risquent de ne pas reconnaître de tels
disques. C'est le contraire du mode compatible.</para>
</listitem>
<listitem>
<para>disque: un disque circulaire recouvert d'un matériau magnétique
ou équivalent, qui tourne, mû par un moteur, devant une tête de
lecture. Les données sont enregistrées sur le disque en modifiant
la magnétisation du support, et peuvent être ensuite relues. Les
disques durs, CD-ROMs, disques magnéto-optiques et supports
amovibles Zip ou Jaz, sont des exemples de disques.</para>
</listitem>
<listitem>
<para>tranche&nbsp;-&nbsp;&ldquo;<foreignphrase>slice</foreignphrase>&rdquo;:
une subdivision du disque. Il peut y avoir jusqu'&agrave; quatre tranches
sur un disque d'après le standard PC. Les tranches sont constituées
de secteurs adjacents. Les tranches sont décrites par une
&ldquo;table des tranches&rdquo; utilisée par le BIOS du système
pour localiser les partitions démarrables. La table des tranches
est habituellement appelée &ldquo;table des partitions&rdquo; en
langage DOS. Les tranches sont gérées par l'utilitaire
<citerefentry><refentrytitle>fdisk</refentrytitle></citerefentry>.</para>
</listitem>
<listitem>
<para>partition: une subdivision de la
tranche&nbsp;-&nbsp;&ldquo;<foreignphrase>slice</foreignphrase>&rdquo;.
Habituellement utilisée pour désigner les divisions de la tranche
FreeBSD du disque. Chaque système de fichiers et espace de
pagination réside sur une partition. Les partitions sont gérées par
l'utilitaire
<citerefentry><refentrytitle>disklabel</refentrytitle></citerefentry>.</para>
</listitem>
<listitem>
<para>secteur: la plus petite subdivision d'un disque. Un secteur
contient habituellement 512 octets de données.</para>
</listitem>
</itemizedlist>
</sect2>
<sect2>
<title>Avertissements et pièges &agrave; éviter</title>
<para>Installer des disques n'est pas quelque chose &agrave; prendre &agrave; la
légère. Il est tout &agrave; fait possible de détruire le contenu d'autres
disques de votre système si vous ne prenez pas les précautions
nécessaires.</para>
<para><emphasis>Vérifiez avec soin ce que vous faites</emphasis>. Il est
très facile d'effacer le mauvais disque quand vous utilisez ces
commandes. En cas de doute, consultez les messages de démarrage du
noyau pour connaître le nom exact du périphérique.</para>
<para>Inutile de préciser que nous ne serions en rien responsable des
dégâts que vous causeriez &agrave; vos données ou &agrave; votre matériel. Vous
travaillez &agrave; vos risques et périls.</para>
</sect2>
<sect2>
<title>Zip, Jaz et autres disques amovibles</title>
<para>Les disques amovibles peuvent être formatés de la même façon que les
disques durs ordinaires. Il est indispensable que le lecteur soit
connecté et qu'il y ait un disque dedans au démarrage du système, pour
que le noyau puisse déterminer la géométrie du disque. Consultez les
résultats de
<citerefentry><refentrytitle>dmesg</refentrytitle></citerefentry>
et vérifiez que le disque et sa taille y figurent. Si le noyau émet le
message:</para>
<programlisting>
Can't get the size
</programlisting>
<para>c'est que le disque n'était pas dans le lecteur. Dans ce cas, vous
devrez redémarrer la machine avant de formater des disques.</para>
</sect2>
</sect1>
<sect1>
<title>Formater des disques en mode dédié</title>
<sect2>
<title>Introduction</title>
<para>Cette section explique en détail comment configurer des disques
entièrement dédiés &agrave; FreeBSD. N'oubliez pas que des disques en mode
dédié ne peuvent pas être utilisés par l'architecture PC pour démarrer
le système.</para>
</sect2>
<sect2>
<title>Formater des disques en mode dédié avec Sysinstall</title>
<para><filename>/stand/sysinstall</filename>, l'utilitaire
d'installation du système, a été amélioré dans les versions récentes
pour rendre le processus de découpage propre des disques moins
pénible. Les éditeurs
<citerefentry><refentrytitle>fdisk</refentrytitle></citerefentry> et
<citerefentry><refentrytitle>disklabel</refentrytitle></citerefentry>
inclus dans
<citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
sont des outils interactifs qui
dissipent une bonne partie de la confusion liée aux opérations de
découpage de disques en &ldquo;tranches&rdquo;. Avec FreeBSD 2.1.7 et
ultérieur, c'est probablement la méthode la plus simple pour le
faire.</para>
<orderedlist>
<listitem>
<para>Lancez
<citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
en tant que super-utilisateur <username>root</username> en
tapant:</para>
<informalexample>
<screen>&prompt.root; <userinput>/stand/sysinstall</userinput></screen>
</informalexample>
<para>sur la ligne de commande.</para>
</listitem>
<listitem>
<para>Sélectionnez <option>Index</option>.</para>
</listitem>
<listitem>
<para>Sélectionnez <option>Partition</option>.</para>
</listitem>
<listitem>
<para>Sélectionnez le disque &agrave; configurer avec les touches Flèches et
la barre d'espacement.</para>
</listitem>
<listitem>
<para>Si vous utilisez tout le disque pour FreeBSD, sélectionnez
<option>A</option>.</para>
</listitem>
<listitem>
<para>A la question:</para>
<programlisting>
Do you want to do this with a true partition entry so as to remain
cooperative with any future possible operating systems on the
drive(s)?
[Voulez-vous créer une vraie entrée de partition pour rester
compatible avec d'éventuels futurs systèmes d'exploitation
sur le(s) disque(s)?]
</programlisting>
<para>répondez <option>No</option> (Non).</para>
</listitem>
<listitem>
<para>Quand on vous demande si vous voulez continuer, répondez
<option>Yes</option> (Oui).</para>
</listitem>
<listitem>
<para>Sélectionnez <option>Write</option> (Ecrire).</para>
</listitem>
<listitem>
<para>A l'avertissement &agrave; propos de l'écriture sur des systèmes
déj&agrave; installés, répondez <option>Yes</option> (Oui).</para>
</listitem>
<listitem>
<para><option>Quit</option>tez l'éditeur
<citerefentry><refentrytitle>fdisk</refentrytitle></citerefentry>
et revenez au menu d'<option>Index</option> avec
<keycap>Echap</keycap>.</para>
</listitem>
<listitem>
<para>Sélectionnez <option>Label</option> dans le menu
d'<option>Index</option>.</para>
</listitem>
<listitem>
<para>Libellez le disque comme vous le souhaitez. Si vous ne voulez
qu'une seule partition, tapez <keycap>C</keycap> pour créer une
partition, validez la taille proposée par défaut, prenez comme
type de partition <option>Filesystem</option> (système de fichiers)
et indiquez un point de montage (qui dans ce cas ne sert &agrave;
rien).</para>
</listitem>
<listitem>
<para>Tapez <keycap>W</keycap> une fois que vous avez terminé. Le
système de fichiers sera initialisé avec
<citerefentry><refentrytitle>newfs</refentrytitle></citerefentry>
sans que vous n'ayez autre chose &agrave; faire, &agrave; moins que vous ne
fassiez un autre choix (pour les nouvelles partitions, il faut
initialiser le système de fichiers!). Vous aurez un message
d'erreur:</para>
<programlisting>
Error mounting /mnt/dev/wd2s1e on /mnt/blah : No such file or directory
</programlisting>
<para>Ne vous en occupez pas.</para>
</listitem>
<listitem>
<para>Quittez le programme, en utilisant &agrave; plusieurs reprises la
touche <keycap>Echap</keycap>.</para>
</listitem>
</orderedlist>
</sect2>
<sect2>
<title>Formater des disques en mode dédié depuis la ligne de
commande</title>
<para>Exécutez les commandes suivantes, en substituant &agrave;
<devicename>wd2</devicename> le nom de votre disque. Les lignes
qui commencent par <literal>#</literal> sont des commentaires.</para>
<informalexample>
<screen><userinput>dd if=/dev/zero of=/dev/rwd2 count=2</userinput>
<userinput>disklabel /dev/rwd2 | disklabel -B -R -r wd2 /dev/stdin</userinput>
# Nous ne voulons qu'une partition, utiliser la tranche 'c' devrait aller:
<userinput>newfs /dev/rwd2c</userinput></screen>
</informalexample>
<para>Si vous avez besoin de modifier le label du disque pour créer
plusieurs partitions (pour la pagination par exemple), utilisez la
séquence suivante:</para>
<informalexample>
<screen><userinput>dd if=/dev/zero of=/dev/rwd2 count=2</userinput>
<userinput>disklabel /dev/r$d > /tmp/label</userinput>
# Modifiez le label du disque pour ajouter des partitions:
<userinput>vi /tmp/label</userinput>
<userinput>disklabel -B -R -r wd2 /tmp/label</userinput>
# Créez les systèmes de fichiers sur les partitions avec newfs selon les besoins</screen>
</informalexample>
<para>Votre disque est maintenant prêt &agrave; être utilisé.</para>
</sect2>
</sect1>
<sect1>
<title>Formater des disques en mode compatible</title>
<sect2>
<title>Introduction</title>
<para>Travailler depuis la ligne de commande est la manière la plus facile
de formater des disques dédiés, et la pire pour formater des disques
compatibles. L'utilitaire en ligne de commande
<citerefentry><refentrytitle>fdisk</refentrytitle></citerefentry>
demande une bonne connaissance des mathématiques et une compréhension en
profondeur de la structure de la table des &ldquo;tranches&rdquo;, qui
dépassent ce dont la plupart des gens souhaitent se préoccuper. Utilisez
<citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
comme décrit dans ce qui suit.</para>
</sect2>
<sect2>
<title>Formater des disques en mode compatible avec Sysinstall</title>
<orderedlist>
<listitem>
<para>Lancez
<citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
en tant que super-utilisateur <username>root</username> en
tapant:</para>
<informalexample>
<screen>&prompt.root; <userinput>/stand/sysinstall</userinput></screen>
</informalexample>
<para>sur la ligne de commande.</para>
</listitem>
<listitem>
<para>Sélectionnez <option>Index</option>.</para>
</listitem>
<listitem>
<para>Sélectionnez <option>Partition</option>.</para>
</listitem>
<listitem>
<para>Sélectionnez le disque &agrave; configurer avec les touches Flèches et
la barre d'espacement.</para>
</listitem>
<listitem>
<para>Si vous utilisez tout le disque pour FreeBSD, sélectionnez
<option>A</option>.</para>
</listitem>
<listitem>
<para>A la question:</para>
<programlisting>
Do you want to do this with a true partition entry so as to remain
cooperative with any future possible operating systems on the
drive(s)?
[Voulez-vous créer une vraie entrée de partition pour rester
compatible avec d'éventuels futurs systèmes d'exploitation
sur le(s) disque(s)?]
</programlisting>
<para>répondez <option>Yes</option> (Oui).</para>
</listitem>
<listitem>
<para>Sélectionnez <option>Write</option> (Ecrire).</para>
</listitem>
<listitem>
<para><option>Quit</option>tez l'éditeur
<citerefentry><refentrytitle>fdisk</refentrytitle></citerefentry>.</para>
</listitem>
<listitem>
<para>A la question &agrave; propos du gestionnaire de démarrage, répondez
encore <option>None</option> (aucun).</para>
</listitem>
<listitem>
<para>Sélectionnez <option>Label</option> dans le menu
d'<option>Index</option>.</para>
</listitem>
<listitem>
<para>Libellez le disque comme vous le souhaitez. Si vous ne voulez
qu'une seule partition, validez la taille proposée par
défaut, prenez comme type de partition <option>Filesystem</option>
(système de fichiers) et indiquez un point de montage (qui dans ce
cas ne sert &agrave; rien).</para>
</listitem>
<listitem>
<para>Le système de fichiers sera initialisé avec
<citerefentry><refentrytitle>newfs</refentrytitle></citerefentry>
sans que vous n'ayez autre chose &agrave; faire, &agrave; moins que vous ne
fassiez un autre choix (pour les nouvelles partitions, il faut
initialiser le système de fichiers!). Vous aurez un message
d'erreur:</para>
<programlisting>
Error mounting /mnt/dev/wd2s1e on /mnt/blah : No such file or directory
</programlisting>
<para>Ne vous en occupez pas.</para>
</listitem>
<listitem>
<para>Quittez le programme, en utilisant &agrave; plusieurs reprises la
touche <keycap>Echap</keycap>.</para>
</listitem>
</orderedlist>
<para>Votre nouveau disque est prêt &agrave; être utilisé.</para>
</sect2>
</sect1>
<sect1>
<title>Autres opérations sur les disques</title>
<sect2>
<title>Ajout d'espace de pagination</title>
<para>Au fur et &agrave; mesure que le système grossit, ses besoins d'espace de
pagination peuvent aussi augmenter. Alors qu'il est très difficile
d'ajouter de l'espace de pagination &agrave; des disques en service, un nouveau
disque peut être partitionné pour mettre en oeuvre de l'espace de
pagination supplémentaire.</para>
<para>Pour ajouter de l'espace de pagination au moment de l'installation
d'un nouveau disque:</para>
<orderedlist>
<listitem>
<para>Au moment de partitionner le disque, éditez son label et
allouer la quantité d'espace de pagination voulue en ajoutant une
partition 'b' et en affectant le reste &agrave; une autre partition,
telle que 'a' ou 'e'. La taille est &agrave; donner en blocs de 512
octets.</para>
</listitem>
<listitem>
<para>Au moment de créer les systèmes de fichiers avec
<citerefentry><refentrytitle>newfs</refentrytitle></citerefentry>,
ne formatez pas la partition 'c'. Formatez &agrave; la place la partition
qui n'est pas réservée &agrave; la pagination.</para>
</listitem>
<listitem>
<para>Ajoutez la ligne qui suit &agrave;
<filename>/etc/fstab</filename>:</para>
<programlisting>
/dev/wd0b none swap sw 0 0
</programlisting>
<para>En remplacant <filename>/dev/wd0b</filename> par le nom du
nouvel espace de pagination.</para>
</listitem>
<listitem>
<para>Pour que l'espace de pagination soit immédiatement utilisable,
utilisez la commande
<citerefentry><refentrytitle>newfs</refentrytitle></citerefentry>:</para>
<informalexample>
<screen>&prompt.user; <userinput>swapon /dev/sd0b</userinput>
swapon: added /dev/sd0b as swap space</screen>
</informalexample>
</listitem>
</orderedlist>
</sect2>
<sect2>
<title>Copier le contenu d'un disque sur un autre</title>
<para>Proposé par: Renauld Waldura
<email>renaud@softway.com</email>.</para>
<para>Pour déplacer le contenu d'un disque sur un nouveau, faites:</para>
<informalexample>
<screen>&prompt.root; <userinput>mount /dev/wd2 /mnt</userinput>
&prompt.root; <userinput>pax -r -w -p e /usr/home /mnt</userinput>
&prompt.root; <userinput>umount /mnt</userinput>
&prompt.root; <userinput>rm -rf /usr/home/*</userinput>
&prompt.root; <userinput>mount /dev/wd2 /usr/home</userinput></screen>
</informalexample>
</sect2>
<sect2>
<title>Créer des disques &agrave; écritures réparties avec
<devicename>ccd</devicename></title>
<para>Commandes transmises par: Stan Brown
<email>stanb@awod.com</email>.</para>
<para>Le pilote de disques
concaténés&nbsp;-&nbsp;&ldquo;<foreignphrase>Concatenated Disk
Driver</foreignphrase>&rdquo;, ou CCD&nbsp;-&nbsp;vous permet
d'utiliser plusieurs disques comme s'il s'agissait d'un seul. Les
écritures réparties peuvent augmenter les performances disque en
distribuant les lectures et les écritures sur plusieurs disques.
Voyez les pages de manuel de
<citerefentry><refentrytitle>ccd</refentrytitle>
<manvolnum>4</manvolnum></citerefentry> et
<citerefentry><refentrytitle>ccdconfig</refentrytitle>
<manvolnum>4</manvolnum></citerefentry> ou la
<ulink url="http://stampede.cs.berkeley.edu/ccd/">page de
CCD</ulink>, pour plus d'informations.</para>
<para>Pour créer un nouveau CCD, exécutez les commandes ci-dessous.
Elles décrivent comment concaténer trois disques; ajoutez ou
supprimez des périphériques selon vos besoins. Rappelez-vous
que les disques sur lesquels se fera la répartition doivent être
<emphasis>identiques</emphasis>.</para>
<para>Avant d'exécuter ces commandes, vérifiez que vous avez bien
ajouté la ligne:</para>
<programlisting>
pseudo-device ccd 4
</programlisting>
<para>&agrave; la configuration de votre noyau.</para>
<informalexample>
<screen>&prompt.root; <userinput>cd /dev ; sh MAKDEV ccd0</userinput></screen>
</informalexample>
<informalexample>
<screen>&prompt.root; <userinput>disklabel -r -w sd0 auto</userinput>
&prompt.root; <userinput>disklabel -r -w sd1 auto</userinput>
&prompt.root; <userinput>disklabel -r -w sd2 auto</userinput></screen>
</informalexample>
<informalexample>
<screen>&prompt.root; <userinput>disklabel -e sd0c</userinput> # changer le type en 4.2BSD
&prompt.root; <userinput>disklabel -e sd1c</userinput> # changer le type en 4.2BSD
&prompt.root; <userinput>disklabel -e sd2c</userinput> # changer le type en 4.2BSD</screen>
</informalexample>
<informalexample>
<screen>&prompt.root; <userinput>ccdconfig ccd0 32 0 /dev/sd0c /dev/sd1c /dev/sd2c</userinput></screen>
</informalexample>
<informalexample>
<screen>&prompt.root; <userinput>newfs /dev/rccd0c</userinput></screen>
</informalexample>
<para>Vous pouvez maintenant monter et utiliser votre CCD en le
référençant comme périphérique
<filename>/dev/ccd0c</filename>.</para>
</sect2>
</sect1>
<sect1>
<title>Remerciements</title>
<para>L'auteur aimerait remercier les personnes suivantes pour leur
contribution &agrave; ce projet:</para>
<itemizedlist>
<listitem>
<para>Darryl Okahata <email>darrylo@hpnmhjw.sr.hp.com</email>,
pour sa documentation simple sur la configuration de
disques en mode dédié, que j'ai utilisée &agrave; plusieurs reprises
sur la &a.questions;.</para>
</listitem>
<listitem>
<para>&a.jkh; pour avoir rendu
<citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
utile &agrave; ce type de tâches.</para>
</listitem>
<listitem>
<para>John Fieber <email>jfieber@indiana.edu</email> pour avoir
mis au point la documentation et les exemples d'utilisation de
la <foreignphrase>DTD Docbook</foreignphrase> utilisée
pour mettre en forme ce document.</para>
</listitem>
<listitem>
<para>&a.grog; pour avoir contrôlé mon travail et mentionné les
inexactitudes, ainsi que pour son concours sur divers points.</para>
</listitem>
</itemizedlist>
</sect1>
</article>

View file

@ -168,12 +168,6 @@ in your /etc/rc.conf. Extra options can be found in startup script.</screen>
&agrave; <envar>PACKAGESITE</envar> pour
télécharger les paquetages les plus
récents construits pour les versions 6.X.</para>
<para>Vous pouvez en savoir plus sur les versions de &os; dans
l'article <ulink
url="&url.base;/doc/en_US.ISO8859-1/articles/version-guide/">
Choisir la version de &os; qui vous convient le
mieux</ulink>.</para>
</note>
<para>Pour plus d'information concernant les paquetages vous

View file

@ -1,20 +0,0 @@
#
# The FreeBSD Documentation Project
# The FreeBSD French Documentation Project
#
# $FreeBSD$
# Original revision: 1.4
#
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,698 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//FR" "../../share/sgml/entities.ent">
%entities;
]>
<!--
The FreeBSD Documentation Project
The FreeBSD French Documentation Project
$FreeBSD$
Original revision: n.nn
-->
<article lang="fr">
<articleinfo>
<title>Installer et utiliser FreeBSD en même temps que d'autres systèmes d'exploitation</title>
<authorgroup>
<author>
<firstname>Jay</firstname>
<surname>Richmond</surname>
</author>
</authorgroup>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para><email>jayrich@sysc.com</email></para>
<para>6 Aout 1996</para>
<para>Ce document explique comment faire cohabiter proprement FreeBSD et
d'autres systèmes d'exploitation courants tels que Linux, MS-DOS, OS/2
et Windows 95. Remerciements particuliers &agrave; Annelise Anderson
<email>andrsn@stanford.edu</email>, Randall Hopper
<email>rhh@ct.picker.com</email> et Jordan K. Hubbard
<email>jkh@time.cdrom.com</email>.</para>
&trans.a.haby;
</abstract>
</articleinfo>
<sect1>
<title>Résumé</title>
<para>La plupart des gens n'arrivent pas &agrave; faire cohabiter leurs divers
systèmes d'exploitation sans des disques de grande capacité,
des informations sur les gros disques EIDE sont donc incluses. Comme il
y a de nombreuses combinaisons possibles de systèmes d'exploitation et
de configurations de disques durs, la section
<link linkend="examples">Exemples</link> sera peut-être celle
qui vous sera la plus utile. Elle décrit plusieurs configurations
d'ordinateurs utilisant plusieurs systèmes d'exploitation.</para>
<para>Ce document suppose que vous avez déj&agrave; préparé de la place sur votre
disque dur pour un système d'exploitation supplémentaire. Chaque fois que
vous repartitionnez votre disque dur, vous prenez le risque de détruire
les données qui se trouvent sur les partitions existantes. Toutefois, si
votre disque est entièrement occupé par DOS, vous trouverez peut-être le
programme FIPS (qui se trouve sur le CD-ROM FreeBSD dans le répertoire
<filename>\TOOLS</filename> ou que vous pouvez télécharger par
<ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>) utile.
Il vous permet de repartitionner votre disque sans détruire les données
qui s'y trouvent. Il existe aussi une programme commercial appelé
Partition Magic, qui vous permet de dimensionner et de supprimer des
partitions sans dégât.</para>
</sect1>
<sect1 id="boot-managers">
<title>Revue des gestionnaires de démarrage</title>
<para>Ce ne sont que de brèves descriptions des différents gestionnaires
de démarrage que vous rencontrerez. Selon la configuration de votre
ordinateur, vous pourrez trouver utile d'en employer plus d'un sur le
même système.</para>
<variablelist>
<varlistentry>
<term>Boot Easy</term>
<listitem>
<para>C'est le gestionnaire de démarrage par défaut de FreeBSD. Il
peut démarrer &agrave; peu près n'importe quoi, y compris BSD, OS/2
(HPFS), Windows 95 (FAT et FAT32) et Linux. Les partitions sont
sélectionnées &agrave; l'aide des touches fonction.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><foreignphrase>OS/2 Boot Manager</foreignphrase></term>
<listitem>
<para>Il démarrera depuis la FAT, HPFS, FFS (FreeBSD) et EXT2
(Linux). Il peut aussi démarrer depuis des partitions FAT32.
Les partitions sont sélectionnées avec les touches Flèches.
Le gestionnaire de démarrage
<foreignphrase>OS/2 Boot Manager</foreignphrase> est le
seul &agrave; utiliser sa propre partition distincte, &agrave; l'inverse des
autres qui utilisent l'enregistrement principal de démarrage
(<foreignphrase>Master Boot
Record</foreignphrase>&nbsp;-&nbsp;MBR). Il doit donc être
installé dans les 1024 premiers cylindres pour éviter des
problèmes de démarrage. Il peut charger Linux en utilisant LILO
lorsque ce dernier se trouve sur le secteur de démarrage et non sur
le MBR. Allez sur les
<ulink url="http://www.freenix.fr/linux/HOWTO">HOWTO Linux</ulink>
sur le World Wide Web pour plus d'informations sur le démarrage
de Linux avec le gestionnaire de démarrage d'OS/2.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>OS-BS</term>
<listitem>
<para>C'est une alternative &agrave; Boot Easy. Il vous donne plus de
contrôle sur le processus de démarrage, avec la possibilité de
sélectionner la partition &agrave; démarrer par défaut et le délai de
démarrage. La version béta de ce programme vous permet de
sélectionner le système d'exploitation &agrave; démarrer avec les
touches Flèches. Il est inclus sur le CD-ROM FreeBSD dans le
répertoire <filename>\TOOLS</filename> et vous pouvez le
télécharger par
<ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>LILO, ou LInux LOader (&ldquo;chargeur Linux&rdquo;)</term>
<listitem>
<para>C'est un gestionnaire de démarrage limité. Il peut démarrer
FreeBSD, mais il faut acommoder son fichier de configuration.</para>
</listitem>
</varlistentry>
</variablelist>
<informaltable>
<tgroup cols="1">
<tbody>
<row>
<entry><emphasis>A propos de la FAT32:</emphasis> La FAT32
remplace le système de fichiers FAT depuis la version Microsoft
OEM SR2 Béta, qui sera utilisée sur les ordinateurs avec Windows
95 pré-installé vers la fin de 1996. Elle convertit le système
de fichiers FAT habituel et permet d'utiliser des tailles
d'agrégat&nbsp;-&nbsp;&ldquo;<foreignphrase>cluster</foreignphrase>&rdquo;&nbsp;-&nbsp;plus
petites sur de plus gros disques. La FAT32 modifie aussi le
secteur de démarrage et la table d'allocation habituels de la FAT,
ce qui la rend incompatible avec certains gestionnaires de
démarrage.</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect1>
<sect1 id="typical">
<title>Une configuration typique</title>
<para>Supposons que nous ayons deux gros disques EIDE, et que nous
voulions y installer FreeBSD, Linux et Windows 95.</para>
<para>Voici comment je procéderais avec ces disques durs:</para>
<itemizedlist>
<listitem>
<para><filename>/dev/wd0</filename> (premier disque dur
physique),</para>
</listitem>
<listitem>
<para><filename>/dev/wd1</filename> (second disque dur).</para>
</listitem>
</itemizedlist>
<para>Ils ont tous deux 1416 cylindres.</para>
<orderedlist>
<listitem>
<para>Je démarre avec une disquette de démarrage MS-DOS ou
Windows qui contient l'utilitaire <filename>FDISK.EXE</filename>
et crée une petite partition primaire de 50 Mo (35-40 pour Windows
95 et un peu d'espace libre) sur le premier disque. Je crée aussi
une partition plus importante sur le second disque pour mes
applications et mes données Windows.</para>
</listitem>
<listitem>
<para>Je redémarre et installe Windows 95 (plus facile &agrave; dire qu'&agrave;
faire) sur la partition <filename>C:</filename>.</para>
</listitem>
<listitem>
<para>J'installe ensuite Linux. Je ne suis pas certain pour qui
concerne toutes les distributions de Linux, mais la Slackware
comprend LILO (voyez la section
<link linkend="boot-managers">Revue des gestionnaires de
démarrage</link>). Au moment de partitionner mon disque dur
avec l'utilitaire <filename>fdisk</filename> de Linux,
je mets tout Linux sur le premier disque (peut-être 300 Mo
pour une partition racine confortable et de l'espace de
pagination).</para>
</listitem>
<listitem>
<para>Après avoir installé Linux, et quand on me demande si je veux
installer LILO, je fais <emphasis>attention</emphasis> &agrave; l'installer
sur le secteur de démarrage de ma partition racine Linux, et non
sur le MBR (<foreignphrase>Master Boot
Record</foreignphrase>&nbsp;-&nbsp;enregistrement principal de
démarrage).</para>
</listitem>
<listitem>
<para>L'espace restant disponible sur le disque peut servir &agrave;
FreeBSD. Je vérifie aussi que la
tranche&nbsp;-&nbsp;&ldquo;<foreignphrase>slice</foreignphrase>&rdquo;&nbsp;-&nbsp;racine
de FreeBSD ne déborde pas de la limite des 1024 cylindres (1024
cylindres correspond &agrave; 528 Mo &agrave; partir du début du disque sur nos
hypothétiques disques de 720 Mo). J'utiliserai éventuellement le
reste du disque dur (environ 270 Mo) pour les tranches
<filename>/usr</filename> et <filename>/var</filename>. Le
reste du second
disque (l'espace disponible dépend de la taille de ma partition
d'applications/données Windows que j'ai créée &agrave; l'étape 1) peut être
utilisé pour la tranche <filename>/usr/src</filename> et l'espace
de pagination.</para>
</listitem>
<listitem>
<para>Vus de l'utilitaire <filename>fdisk</filename> de Windows 95, mes
disques ressembleraient &agrave; ceci:</para>
<programlisting>
---------------------------------------------------------------------
Display Partition Information
Current fixed disk drive: 1
Partition Status Type Volume_Label Mbytes System Usage
C: 1 A PRI DOS 50 FAT** 7%
2 A Non-DOS (Linux) 300 43%
Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
Press Esc to continue
---------------------------------------------------------------------
Display Partition Information
Current fixed disk drive: 2
Partition Status Type Volume_Label Mbytes System Usage
D: 1 A PRI DOS 420 FAT** 60%
Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
Press Esc to continue
---------------------------------------------------------------------
</programlisting>
<para>Disons FAT16, ou FAT32 si vous utilisez la mise &agrave; jour
OEM SR2 (voyez la section
<link linkend="boot-managers">Revue des gestionnaires de
démarrage</link>).</para>
</listitem>
<listitem>
<para>J'installe FreeBSD. Je veille &agrave; démarrer avec le premier
disque dur défini comme &ldquo;NORMAL&rdquo; dans le paramétrage
du BIOS. Sans cela, je devrais indiquer la géométrie réelle de mon
disque au démarrage (pour la connaître, démarrez Windows 95 et
consultez les diagnostics Microsoft (<filename>MSD.EXE</filename>)
ou allez voir dans le BIOS) avec le paramètre
<literal>hd0=1416,16,63</literal> où <replaceable>1416</replaceable>
est le nombre de cylindres de mon disque dur,
<replaceable>16</replaceable> est le nombre de têtes par piste et
<replaceable>63</replaceable> est le nombre de secteurs par
tête.</para>
</listitem>
<listitem>
<para>Au moment de partitionner le disque dur, je fais attention &agrave;
bien installer Boot Easy sur le premier disque. Je ne m'occupe pas
du second disque, &agrave; partir duquel rien n'est démarré.</para>
</listitem>
<listitem>
<para>Au redémarrage, Boot Easy devrait reconnaître mes trois
partitions démarrables comme DOS (Windows 95), Linux et BSD
(FreeBSD)</para>
</listitem>
</orderedlist>
</sect1>
<sect1 id="special">
<title>Considérations particulières</title>
<para>La plupart des systèmes d'exploitation sont très chatouilleux sur la
façon et l'endroit où ils sont installés sur le disque dur. Windows 95 et
DOS doivent être sur la première partition primaire du premier disque dur.
OS/2 fait exception. Il peut être sur le premier ou le second disque et
sur une partition primaire ou étendue. Si vous n'êtes pas sûr de vous,
gardez le début des partitions démarrables avant le 1024ème
cylindre.</para>
<para>Si vous installez Windows 95 sur un système BSD existant, cela va
&ldquo;écraser&rdquo; le MBR, et vous devrez réinstaller votre précédent
gestionnaire de démarrage. Boot Easy peut être réinstallé avec
l'utilitaire <filename>BOOTINST.EXE</filename> qui se trouve dans le
répertoire <filename>\TOOLS</filename> du CD-ROM, ou peut être téléchargé
par <ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>.
Vous pouvez aussi relancer le processus d'installation et aller dans
l'éditeur de partitions. De l&agrave;, indiquez que la partition FreeBSD est
démarrable, choisissez l'option <option>Boot Manager</option>
(gestionnaire de démarrage) et tapez
<literal>W</literal> pour écrire les informations sur le MBR. Vous
pouvez maintenant redémarrer, et Boot Easy reconnaîtra votre Windows 95
en tant que DOS.</para>
<para>N'oubliez pas s'il vous plaît qu'OS/2 peut lire les partitions FAT
et HPFS, mais pas les partitions FFS (FreeBSD) ou EXT2 (Linux). De même,
Windows 95 ne peut que lire et écrire sur les partitions FAT et FAT32
(voyez la section <link linkend="boot-managers">Revue des gestionnaire
de démarrage</link>). FreeBSD peut lire la plupart des systèmes de
fichiers, mais ne sait pas actuellement lire les partitions HPFS. Linux
peut lire les partitions HPFS, mais ne peut pas y écrire. Les versions
récentes du noyau Linux (2.x) peuvent lire et écrire les partitions VFAT
de Windows 95 (La VFAT est ce qui permet &agrave; Windows d'utiliser des noms
de fichiers longs&nbsp;-&nbsp;c'est &agrave; peu près la même chose que la
FAT). Linux peut lire et écrire sur la plupart des systèmes de fichiers.
Pigé? Je l'espère.</para>
</sect1>
<sect1 id="examples">
<title>Exemples</title>
<para><emphasis>(Cette section a besoin d'être revue, envoyez s'il vous
plaît vos exemples &agrave; <email>jayrich@sysc.com</email>.)</emphasis></para>
<para>FreeBSD + Windows 95: Si vous avez installé FreeBSD après Windows 95,
vous devriez voir la mention <literal>DOS</literal> sur le menu de Boot
Easy. C'est Windows 95. Si vous avez installé Windows 95 après FreeBSD,
lisez la section <link linkend="special">Considérations
particulières</link> ci-dessus. Tant que votre disque n'a pas 1024
cylindres, vous ne devriez pas avoir de problèmes pour démarrer. Si
toutefois une de vos partitions va au-del&agrave; du 1024ème cylindre, et que
vous avez des messages du type <literal>invalid system disk</literal>
sous DOS (Windows 95) et que FreeBSD ne démarre pas, cherchez dans les
paramètres de configuration de votre BIOS quelque chose appelé
&ldquo;<literal>&gt; 1024 cylinder support</literal>&rdquo; ou
mode &ldquo;<literal>NORMAL/LBA</literal>&rdquo;. DOS peut avoir besoin
du LBA (<foreignphrase>Logical Block
Adressing</foreignphrase>&nbsp;-&nbsp;Adressage de bloc logique) pour
démarrer correctement. Si la perspective de modifier les paramètres du
BIOS &agrave; chaque démarrage ne vous enchante pas, vous pouvez démarrer
FreeBSD depuis DOS avec l'utilitaire <filename>FBSDBOOT.EXE</filename>
du CD (il devrait reconnaître votre partition FreeBSD et la
démarrer).</para>
<para>FreeBSD + OS/2 + Windows: Rien de nouveau dans ce cas. Le gestionnaire
de démarrage d'OS/2 peut démarrer tous ces systèmes d'exploitation, il ne
devrait pas y avoir de problème.</para>
<para>FreeBSD + Linux: Vous pouvez aussi utiliser Boot Easy pour démarrer
les deux systèmes d'exploitation.</para>
<para>FreeBSD + Linux + Windows 95: (voyez la section
<link linkend="typical">Une installation typique</link>).</para>
</sect1>
<sect1 id="help">
<title>Autres endroits où trouver de l'aide</title>
<para>Il y a de nombreux
<ulink url="http://www.freenix.fr/linux/HOWTO">HOWTO Linux</ulink>
qui traitent des systèmes d'exploitation multiples sur un même
disque.</para>
<para>Le
<ulink url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+DOS+Win95+OS2.html">mini-HOWTO
Linux+DOS+Win95+OS2</ulink> donne des indications sur la configuration
du gestionnaire de démarrage d'OS/2, et le
<ulink url="http://www.freenix.fr/linux/HOWTO/mini/Linux+FreeBSD.html">mini-HOWTO
Linux+FreeBSD</ulink> peut aussi vous intéresser.
L'<ulink url="http://www.in.net/~jkatz/win95/Linux-HOWTO.html">HOWTO
Linux</ulink> est aussi utile.</para>
<para>Le
<ulink url="http://www.dorsal.org/~dcl/publications/NTLDR_hacking">Guide
de programmation du chargeur NT</ulink> fournit des informations
intéressantes sur le démarrage de Windows NT, 95 et DOS avec d'autres
systèmes d'exploitation.</para>
<para>Le jeu de documents d'Hale Landis, &ldquo;Comment ça marche&rdquo;,
contient de bonnes informations sur toutes sortes de géométries de disques
et autres sujets liés au démarrage. Voici quelques liens qui peuvent vous
aider &agrave; le trouver:</para>
<itemizedlist>
<listitem>
<para><ulink url="ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip">ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip</ulink>,</para>
</listitem>
<listitem>
<para><ulink url="http://www.cs.yorku.ca/People/frank/docs/">http://www.cs.yorku.ca/People/frank/docs/</ulink>.</para>
</listitem>
</itemizedlist>
<para>Enfin, ne négligez pas la documentation du noyau de FreeBSD sur le
processus de démarrage, disponible dans la distribution du source du
noyau (elle est installée dans
<ulink url="file://localhost/usr/src/sys/i386/boot/biosboot/README.386BSD">/usr/src/sys/i386/boot/biosboot/README.386BSD</ulink>).</para>
</sect1>
<sect1>
<title>Détails Techniques</title>
<para><emphasis>(Contribution de Randall Hopper
<email>rhh@ct.picker.com</email>)</emphasis></para>
<para>Cette section tente de vous donner assez d'informations de base
sur vos disques durs et sur le processus de démarrage &agrave; partir d'un
disque pour vous permettre de régler la plupart des problèmes que vous
pourriez rencontrer lorsque vous configurerez le démarrage de plusieurs
systèmes d'exploitation. Elle commence par des choses relativement
élémentaires, vous préférerez donc peut-être la parcourir en diagonale
jusqu'&agrave; ce que les points abordés vous paraissent moins familiers et
commencer alors &agrave; la lire en détail.</para>
<sect2>
<title>Introduction aux disques</title>
<para>Trois termes fondamentaux décrivent la localisation des données
sur vos disques durs: Cylindres, Têtes et Secteurs. Il n'est pas très
important de savoir &agrave; quoi ils se rapportent sinon qu'ensemble, ils
définissent où sont physiquement les données sur le disque.</para>
<para>Votre disque a un nombre donné de cylindres, de têtes, et de
secteurs par tête-cylindre (un doublet tête-cylindre est aussi appelé
une piste). Ensemble, ces informations définissent la &ldquo;géométrie
physique&rdquo; de votre disque. Il y a typiquement 512 octets par
secteur et 63 secteurs par pistes, le nombre de cylindres et de têtes
variant très largement d'un disque &agrave; l'autre. Vous pouvez alors
calculer la quantité d'informations que peut enregistrer votre disque
par la formule:</para>
<programlisting>
nombre de cylindres X nombre de têtes X 63 secteurs/piste X 512 octets/secteur
</programlisting>
<para>Par exemple, pour mon disque Western Digital AC31600 EIDE de 1,6 Go,
cela donne:</para>
<programlisting>
3148 cylindres X 16 têtes X 63 secteurs/piste X 512 octets/secteur
</programlisting>
<para>c'est-&agrave;-dire 1.624.670.208 octets, ou environ 1,6 Go.</para>
<para>Vous pouvez connaître la géométrie physique de votre disque dur
(nombre de cylindres, de têtes et de secteurs par piste) avec ATAID
ou d'autres programmes que vous trouverez sur l'Internet. Ces
informations sont peut-être aussi fournies avec votre disque. Faites
cependant attention: si vous utilisez le LBA du BIOS (voyez la section
<link linkend="limits">Restrictions pour le démarrage et
avertissements</link>), vous ne pouvez pas vous servir de n'importe
quel programme pour connaître la géométrie physique. Cela parce que de
nombreux programmes (e.g., <filename>MSD.EXE</filename> ou
le <filename>fdisk</filename> de FreeBSD) ne reconnaissent pas la
géométrie physique, ils listent &agrave; la place la <emphasis>géométrie
redéfinie</emphasis> (des valeurs virtuelles dues &agrave; l'utilisation
du LBA). Continuez &agrave; lire pour savoir ce que cela veut dire.</para>
<para>Une autre chose &agrave; savoir &agrave; propos de ces termes. 3
valeurs&nbsp;-&nbsp;un numéro de cylindre, un numéro de tête, et un
numéro du secteur sur la piste&nbsp;-&nbsp;identifient l'adresse absolue
d'un secteur sur votre disque. Les cylindres et les têtes sont
numérotés &agrave; partir de 0, et les numéros de secteurs commencent &agrave;
1.</para>
<para>Ceux que des détails plus techniques intéressent peuvent
trouver un peu partout sur l'Internet des informations sur la géométrie
des disques, les secteurs de démarrage, les BIOS, etc. Faites une
recherche sur Yahoo, Lycos, etc. pour <literal>boot sector</literal> ou
<literal>master boot record</literal>. Parmi les choses utiles que vous
trouverez, il y a le jeu de documents
&ldquo;Comment ça marche&rdquo;&nbsp;-&nbsp;<foreignphrase>How It
Works</foreignphrase> de Hale Landis. Voyez la section
<link linkend="help">Autres endroits où trouver de l'aide</link> pour
avoir quelques pointeurs vers ces documents.</para>
<para>OK, assez de terminologie. Nous sommes censés parler de démarrage
ici.</para>
</sect2>
<sect2 id="booting">
<title>Le processus de démarrage</title>
<para>Sur le premier secteur de votre disque (cylindre 0, tête 0,
secteur 1) se trouve l'enregistrement principal de
démarrage&nbsp;-&nbsp;<foreignphrase>Master Boot
Record</foreignphrase> (MBR). Il contient une carte de votre disque.
Il identifie jusqu'&agrave; <emphasis>4 partitions</emphasis>, chacune d'elle
étant un espace contigu sur ce disque. FreeBSD appelle les partitions
des tranches&nbsp;-&nbsp;<foreignphrase>slices</foreignphrase>&nbsp;-&nbsp;pour
éviter la confusion avec ses propres partitions, mais nous
n'utiliserons pas ici ce terme. Chaque partition peut contenir son
propre système d'exploitation.</para>
<para>Chaque entrée de partition dans le MBR comprend un
<emphasis>IDentifiant de partition</emphasis>, un
<emphasis>Cylindre/Tête/Secteur de Début</emphasis> et un
<emphasis>Cylindre/Tête/Secteur de Fin</emphasis>. L'IDentifiant de
partition dit de quel type de partition il s'agit (de quel OS) et le
Début/Fin dit où elle se trouve. La table des
<link linkend="partitions">IDs de partitions</link> liste un
échantillon d'identifiants de partitions usuels.</para>
<informaltable id="partitions">
<tgroup cols="2">
<thead>
<row>
<entry>ID (hex)</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry>01</entry>
<entry>DOS12 primaire (FAT 12-bit)</entry>
</row>
<row>
<entry>04</entry>
<entry>DOS16 primaire (FAT 16-bit)</entry>
</row>
<row>
<entry>05</entry>
<entry>DOS12 étendue</entry>
</row>
<row>
<entry>06</entry>
<entry>DOS primaire large (&gt; 32 Mo)</entry>
</row>
<row>
<entry>0A</entry>
<entry>OS/2</entry>
</row>
<row>
<entry>83</entry>
<entry>Linux (EXT2FS)</entry>
</row>
<row>
<entry>A5</entry>
<entry>FreeBSD, NetBSD, 386BSD (UFS)</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<note>
<para>Toutes les partitions ne dont pas démarrables (e.g. DOS étendue).
Certaines le sont&nbsp;-&nbsp;d'autres ne le sont pas. Ce qui rend
une partition démarrable est la configuration du secteur de démarrage
de la
partition&nbsp;-&nbsp;<foreignphrase>Partition Boot Sector</foreignphrase>&nbsp;-&nbsp;qui
est toujours présent au début de chaque partition.</para>
</note>
<para>Quand vous configurez votre gestionnaire de démarrage favori, il
consulte les entrées dans les tables de partitions du MBR de tous vos
disques et vous donne la possibilité de donner un nom &agrave; ces entrées.
Quand vous démarrez ensuite, le gestionnaire de démarrage
est appelé par du code prévu pour cela &agrave; partir secteur principal de
démarrage&nbsp;-&nbsp;<foreignphrase>Master Boot Sector</foreignphrase>&nbsp;-&nbsp;du
premier disque trouvé sur votre système. Le gestionnaire consulte
l'entrée de la table de partitions du MBR correspondant &agrave; la partition
que vous avez choisie, charge le secteur de démarrage de cette partition
et lui passe le contrôle. Ce secteur de démarrage de la partition
elle-même contient suffisamment d'informations pour commencer &agrave; charger
le système d'exploitation qui se trouve sur cette partition.</para>
<para>Il y a une chose importante &agrave; savoir dont nous n'avons pas encore
parlé. Tous vos disques durs ont un MBR. Toutefois, celui qui est
important est celui qui se trouve sur le premier disque reconnu par le
BIOS. Si vous n'avez que des disques durs IDE, c'est le premier disque
IDE (e.g. le disque maître sur le premier contrôleur). De même pour les
systèmes entièrement SCSI. Si vous avez et des disques durs IDE et des
disques durs SCSI, le disque IDE est habituellement le premier disque
dont la présence est testée par le BIOS, le premier disque IDE est donc
le premier disque reconnu. Le gestionnaire de démarrage que vous
installerez sera implémenté sur le premier disque dur reconnu comme
nous venons de l'expliquer.</para>
</sect2>
<sect2 id="limits">
<title>Restrictions pour le démarrage et avertissements</title>
<para>Voici maintenant les choses intéressantes auxquelles il faut
faire attention.</para>
<sect3>
<title>La redoutable limitation &agrave; 1024 cylindres et en quoi le LBA du
BIOS peut être utile</title>
<para>La première partie du processus de démarrage est entièrement
confiée au BIOS, (si ce terme est nouveau pour vous, le BIOS est
un circuit électronique sur votre carte mère qui contient le
code de démarrage de votre ordinateur). C'est pourquoi cette
première partie du processus est soumise aux limitations du
BIOS.</para>
<para>L'interface BIOS utilisée pour lire le disque dur durant
cette phase (INT 13H, Sous-fonction 2) alloue 10 bits pour le
numéro de cylindre, 8 bits pour le numéro de tête, et 6 bits
pour le numéro de secteur. Cela limite les utilisateurs de
cette interface (i.e. les gestionnaires de démarrage implémentés
sur le MBR du disque ainsi que les chargeurs de systèmes
d'exploitation implémentés sur les secteurs de démarrage) &agrave;:</para>
<itemizedlist>
<listitem>
<para>1024 cylindres au plus,</para>
</listitem>
<listitem>
<para>256 têtes au plus,</para>
</listitem>
<listitem>
<para>64 secteurs/piste au plus, (en fait 63, 0 n'est pas
disponible).</para>
</listitem>
</itemizedlist>
<para>Or les diques durs de grande capacité ont beaucoup de
cylindres et peu de têtes, le nombre de cylindres de ces disques
est donc invariablement supérieurs &agrave; 1024. De ce fait et &agrave; cause
de l'interface BIOS telle qu'elle est, vous ne pouvez pas démarrer
n'importe où sur votre disque dur. Le code de démarrage (le
gestionnaire de démarrage et le chargeur du système d'exploitation
implémenté sur les secteurs de démarrage de chaque partition
démarrable) doivent se situer avant le 1024ème cylindre. Si votre
disque dur est standard et a 16 têtes, cela équivaut &agrave;:</para>
<programlisting>
1024 cylindres/disque X 16 têtes/disque X 63 secteurs/piste X 512 octets
</programlisting>
<para>c'est-&agrave;-dire la limite souvent citée de 528 Mo.</para>
<para>C'est l&agrave; qu'intervient le LBA (<foreignphrase>Logical Block
Adressing</foreignphrase>&nbsp;-&nbsp;&ldquo;adressage de bloc
logique&rdquo;) du BIOS. Le LBA du BIOS donne &agrave; l'utilisateur
des routines de l'API (<foreignphrase>Application Programming
Interface</foreignphrase>&nbsp;-&nbsp;&ldquo;interface de
programmation&rdquo;) du BIOS, la possibilité d'accéder aux
cylindres au-del&agrave; de 1024 avec les interfaces du BIOS en
redéfinissant le cylindre. Cela signifie qu'il construit une
nouvelle géométrie de vos cylindres et têtes, faisant croire
au BIOS que votre disque a moins de cylindres et plus de têtes
qu'en réalité. En d'autres termes, il profite du fait que les
disques ont relativement peu de têtes et beaucoup de cylindres,
pour modifier le rapport entre nombre de cylindres et nombre de
têtes de façon &agrave; ce que tous deux soient inférieurs aux limites
mentionnées ci-dessus (1024 cylindres, 256 têtes).</para>
<para>Pour prendre de nouveau l'exemple de mon Western Digital 1,6
Go, il a pour géométrie physique:</para>
<programlisting>
(3148 cylindres, 16 têtes, 63 secteurs/piste, 512 octets/secteur)
</programlisting>
<para>Alors que le LBA du BIOS la redéfinit comme suit:</para>
<programlisting>
( 787 cylindres, 64 têtes, 63 secteurs/piste, 512 octets/secteur)
</programlisting>
<para>ce qui correspond &agrave; la même capacité physique, mais avec des
nombres de cylindres et de têtes dans les limites acceptables par
les API du BIOS. (Au passage, j'ai sur l'un de mes disques, et
Linux et FreeBSD au-del&agrave; du 1024ème cylindre, et les deux démarrent
sans problème, grâce au LBA du BIOS.)</para>
</sect3>
<sect3>
<title>Gestionnaires de démarrage et allocation de l'espace
disque</title>
<para>Une autre chose &agrave; laquelle il faut faire attention lorsque vous
installez un gestionnaire de démarrage est l'allocation d'espace
disque pour ce gestionnaire. Il vaut mieux être informé de cette
question avant de commencer pour vous éviter d'avoir &agrave; réinstaller un
ou plusieurs de vos systèmes d'exploitation.</para>
<para>Si vous avez suivi ce qui a été dit sur le
<link linkend="booting">processus de démarrage</link>
&agrave; propos du secteur principal de démarrage (où se trouve le MBR),
des secteurs de démarrage des partitions et du processus de démarrage,
vous vous êtes peut-être demandé où va se trouver ce foutu
gestionnaire de démarrage. Bien, certains gestionnaires de démarrage
sont suffisamment légers pour tenir entièrement dans le secteur
principal de démarrage (cylindre 0, tête 0, secteur 1) avec la table
de partitions. D'autres ont besoin d'un peu plus d'espace et débordent
en fait de quelques secteurs après le secteur principal de démarrage
sur la piste cylindre 0 tête 0, qui sont normalement libres...
normalement.</para>
<para>L&agrave; est le hic... Certains systèmes d'exploitation (y compris
FreeBSD) vous permettent de faire débuter vos partitions juste après
le secteur principal de démarrage au cylindre 0, tête 0, secteur 2,
si vous le voulez. En fait, si vous donnez au programme
<citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
de FreeBSD, un disque dont le début est vierge ou un disque totalement
vide, c'est l&agrave; qu'il fera commencer par défaut la partition FreeBSD
(c'est tout du moins ce qu'il a fait quand je suis tombé dans ce
piège). Quand vous installez ensuite le gestionnaire de démarrage, si
c'est l'un de ceux qui occupent quelques secteurs supplémentaires
après le MBR, il écrase les données qui se trouvent au début de la
première partie. Dans le cas de FreeBSD, cela écrase le label du
disque et empêche de démarrer votre partition FreeBSD.</para>
<para>Le moyen facile d'éviter ce problème (et de vous garder le
possibilité d'essayer différents gestionnaires de démarrage par la
suite) est de ne pas allouer la première piste du disque quand vous le
partitionnez. Cela réserve l'espace entre le cylindre 0, tête 0,
secteur 2 et le cylindre 0, tête 0, secteur 63, et votre partition
commence au cylindre 1, tête 1, secteur 1. Pour ce que cela vaut,
quand vous créez une partition DOS au début de votre disque, DOS
laisse par défaut cet espace inoccupé (c'est pourquoi certains
gestionnaires de démarrage font l'hypothèse qu'il est disponible).
Mettre une partition DOS au début de votre disque vous permet aussi
d'éviter le problème. C'est ce que je préfère personnellement faire,
mettre une partition DOS de 1 Mo au début, parce que cela évite
aussi que la lettre désignant mon disque DOS primaire soit modifiée
ensuite quand je repartitionne.</para>
<para>Pour servir de référence, les gestionnaires de démarrage
suivants n'utilisent que le secteur principal de démarrage pour
mettre leur code et leurs données:</para>
<itemizedlist>
<listitem>
<para>OS-BS 1.35,</para>
</listitem>
<listitem>
<para>Boot Easy,</para>
</listitem>
<listitem>
<para>LILO.</para>
</listitem>
</itemizedlist>
<para>Ces gestionnaires de démarrage occupent quelques secteurs
supplémentaires après le secteur principal de démarrage:</para>
<itemizedlist>
<listitem>
<para>OS-BS 2.0 Béta 8 (secteurs 2-5),</para>
</listitem>
<listitem>
<para>gestionnaire de démarrage d'OS/2.</para>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Que faire si votre système ne démarre pas?</title>
<para>Il se peut qu'&agrave; un moment donné
de l'installation d'un gestionnaire
de démarrage, vous laissiez le MBR dans un état tel que votre machine
ne redémarre plus. C'est peu probable, mais possible lorsque vous
refaites un FDISK alors qu'il y a déj&agrave; un gestionnaire de démarrage
installé.</para>
<para>Si vous avez une partition DOS démarrable, vous pouvez démarrer
avec une disquette de démarrage DOS, et lancer:</para>
<informalexample>
<screen><prompt>A:\></prompt> <userinput>FDISK /MBR</userinput></screen>
</informalexample>
<para>pour réinstaller le code d'origine de démarrage simple du DOS
seul sur le système. Vous pouvez alors démarrer DOS (et DOS
uniquement) depuis le disque dur. Une autre solution consiste &agrave;
réexécuter le programme d'installation de votre gestionnaire de
démarrage &agrave; partir d'une disquette démarrable.</para>
</sect3>
</sect2>
</sect1>
</article>

View file

@ -1,14 +0,0 @@
# $FreeBSD$
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,300 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//FR" "../../share/sgml/entities.ent">
%entities;
]>
<!--
The FreeBSD Documentation Project
The FreeBSD French Documentation Project
$FreeBSD$
Version française : Michel Boucey
Original revision: n.nn
-->
<article lang="fr">
<articleinfo>
<title>Les lecteurs ZIP</title>
<authorgroup>
<author>
<firstname>Jason</firstname>
<surname>Bacon</surname>
<affiliation>
<address><email>acadix@execpc.com</email></address>
</affiliation>
</author>
</authorgroup>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
&trans.a.boucey;
</abstract>
</articleinfo>
<sect1>
<title>Les bases au sujet des lecteurs ZIP</title>
<para>Les disques ZIP sont des disques magnétiques amovibles de grande
capacité, accessibles en lecture et en écriture par les lecteurs ZIP de
marque IOMEGA. Les disques ZIP sont similaires aux disquettes, en
étant cependant bien plus rapides et en ayant une capacité bien
supérieure. Alors qu'une disquette comporte typiquement 1.44 Mo,
les disques ZIP sont disponibles en deux capacités, &agrave; savoir 100 Mo
et 250 Mo. Les lecteurs ZIP ne doivent pas être confondus avec
super-disquette, un lecteur de disquette de 120 Mo de capacité,
qui accepte aussi les traditionnelles disquettes de 1.44 Mo de
capacité.</para>
<para>IOMEGA vends aussi un lecteur &agrave; la capacité et aux performances
supérieurs appelé JAZZ. Les lecteurs JAZZ sont livrés en 1 Go et 2
Go de capacité.</para>
<para>Les lecteurs ZIP sont disponibles en unité interne ou externe,
utilisant l'une des trois interfaces suivantes :</para>
<orderedlist>
<listitem>
<para>L'interface SCSI (Small Computer Standard Interface) est
l'interface la plus rapide, la plus sophistiquée, la plus extensible,
et la plus chère. L'interface SCSI est utilisée sur tous types
d'ordinateur, du PC &agrave; la station de travail RISC, jusqu'aux
mini-ordinateurs, pour connecter tous types de périphériques
tels que lecteurs de disque, lecteurs de bande, scanners, etc.
Les lecteurs ZIP SCSI peuvent être internes ou externes, étant
entendu que votre adaptateur SCSI possède un connecteur
externe.</para>
<note>
<para>Si vous utilisez un matériel SCSI externe, il est important
de ne jamais le connecter ni le déconnecter tout pendant
que l'ordinateur est en fonctionnement. Faire ceci risque de
causer des dommages aux systèmes de fichiers sur les disques
en cours de connection.</para>
</note>
<para>Si vous souhaitez le maximum de performance et la plus grande
facilité d'installation, l'interface SCSI est le meilleur choix. Cela
demandera certainement l'adjonction d'un adaptateur SCSI, puisque la
majorité des PC (exception faite des serveurs hautes performances)
ne comportent pas d'origine de support SCSI. Chaque adaptateur peut
prendre en charge 7 ou 15 périphériques SCSI, selon le modèle.</para>
<para>Chaque périphérique SCSI a son propre contrôleur, et ces
contrôleurs sont assez intelligents et bien standardisés (le
second `S' de SCSI est l'abréviation de Standard), ce qui signifie
, du point de vue du système d'exploitation, que tous les lecteurs de
disques SCSI sont quasiment identiques, ceci vaut aussi pour les
lecteurs de bandes, etc. Pour prendre en charge du matériel SCSI, le
système d'exploitation n'a besoin que d'un pilote (driver) propre &agrave;
l'adaptateur utilisé, et un pilote générique propre &agrave; chaque type de
matériel, &agrave; savoir un pilote pour disque SCSI, un pilote pour lecteur
de bande, et ainsi de suite. Il y a certains matériels SCSI qui
peuvent être mieux utilisés grâce &agrave; des pilotes spécialisés (comme par
exemple les lecteurs DAT), mais, généralement, ils fonctionnent bien
avec le pilote générique. Il se peut alors que le pilote générique ne prenne pas
en compte un certain nombre de caractéristiques spécifiques.</para>
<para>Utiliser un lecteur ZIP SCSI consiste simplement &agrave; déterminer
quel fichier matériel dans le répertoire <filename>/dev</filename>
représente le lecteur ZIP. Pour ce faire, on peut observer les messages lors
de l'amorçage de BSD (ou dans <filename>/var/log/messages</filename> après le
démarrage), où vous verrez une ligne ressemblant fort &agrave; ceci:</para>
<programlisting>da1: &lt;IOMEGA ZIP 100 D.13&gt; Removable Direct Access SCSI-2 Device</programlisting>
<para>Cela signifie que le lecteur ZIP est représenté par le fichier
<filename>/dev/da1</filename>.</para>
</listitem>
<listitem>
<para>L'interface IDE (Integrated Drive Electronics) est une interface
de lecteur de disque bon marché utilisée pour les ordinateurs de bureau.
La plus grande partie des matériels IDE est strictement interne.</para>
<para>Les performances des lecteurs ZIP IDE sont comparables &agrave; celles des
lecteurs ZIP SCSI (l'interface IDE n'est pas aussi rapide que l'interface
SCSI, mais les performances des lecteurs ZIP sont limitées essentiellement
par leur mécanique, non pas &agrave; cause du bus SCSI).</para>
<para>L'inconvénient de l'interface IDE sont les limites qu'elle impose.
La plupart des adaptateurs IDE ne peuvent prendre en charge que deux
périphériques, et ne sont en général pas conçues pour le long terme. Par
exemple, l'interface originelle IDE ne prend pas en charge les disques durs
comportant plus de 1024 cylindres, ce qui oblige de nombreuses personnes &agrave;
mettre &agrave; jour prématurément leurs équipements. Si vous prévoyez d'étendre
votre PC par l'adjonction d'un nouveau disque dur, d'un lecteur de bande,
ou d'un scanner, vous pouvez investir dans un adaptateur SCSI et ZIP SCSI
afin d'éviter des problèmes dans le futur.</para>
<para>Les périphériques IDE sous FreeBSD sont préfixés par un <literal>w</literal>.
Par exemple, un disque dur IDE peut être <filename>/dev/wd0</filename>,
un lecteur de CDROM IDE (ATAPI) peut être <filename>/dev/wcd1</filename>,
et ainsi de suite.</para>
</listitem>
<listitem>
<para>L'interface port parallèle est populaire grâce aux périphériques externes
portables tels que lecteurs ZIP externes, scanners, parce que potentiellement
chaque ordinateur possède un port parallèle standard (habituellement utilisé
pour les imprimantes). Ceci rend aisé pour tout un chacun le transfert de données
entre ordinateurs par simple le transport de ces lecteurs ZIP.</para>
<para>Les performances seront en général moindre qu'avec un lecteur ZIP ou IDE,
du fait de la vitesse limitée du port parallèle. Cette vitesse varie
considérablement d'un ordinateur &agrave; l'autre, et peut souvent être configurée
&agrave; partir du système BIOS. Certaines machines demanderont une configuration du
BIOS pour pouvoir faire fonctionner le port parallèle en mode bidirectionnel
(Les ports parallèles ont seulement été conçus &agrave; l'origine pour fournir des
données sortantes vers les imprimantes)</para>
</listitem>
</orderedlist>
</sect1>
<sect1>
<title>ZIP parallèle : Le pilote <devicename>vpo</devicename></title>
<para>Pour utiliser un lecteur ZIP port parallèle sous FreeBSD, le pilote
<devicename>vpo</devicename> doit être configuré dans le noyau. Les lecteurs
ZIP port parallèle ont aussi un contrôleur SCSI intégré. Le pilote vpo autorise
le noyau FreeBSD &agrave; communiquer avec le contrôleur SCSI du lecteur ZIP au travers
du port parallèle.</para>
<para>Depuis que le pilote vpo ne fait plus parti du noyau en standard (au
moins pour FreeBSD 3.2), vous avez &agrave; reconstruire le noyau afin de rendre
accessible ce périphérique. La démarche de reconstruction d'un noyau est indiquée
en détails dans une autre section. Les étapes suivantes indiquent brièvement
la démarche &agrave; suivre afin de mettre en état de marche le pilote vpo:</para>
<orderedlist>
<listitem>
<para>Lancer <command>/stand/sysinstall</command>, et installer les sources
du noyau sur votre système.</para>
<screen>&prompt.root; <userinput>cd /sys/i386/conf</userinput>
&prompt.root; <userinput>cp GENERIC MYKERNEL</userinput></screen>
<para>Editer <filename>MYKERNEL</filename>, changer la ligne
<literal>ident</literal> en <literal>MYKERNEL</literal>, et décommenter
la ligne décrivant le pilote vpo.</para>
<para>Si vous possédez un second port parallèle, vous pourriez avoir besoin
de copier la section dédiée &agrave; <literal>ppc0</literal> pour créer le
périphérique <literal>ppc1</literal>. Le second port parallèle utilise
généralement l'IRQ 5 et l'adresse 378. Seul l'IRQ est requise pour le
fichier de configuration.</para>
<para>Si votre disque dur est un SCSI, vous courez au devant d'un problème
dans l'ordre de la détection des périphériques, qui entraînera le système
&agrave; tenter d'utiliser le lecteur ZIP en tant que périphérique racine. Le démarrage
échouera alors, &agrave; moins que vous ayez installé un système de fichiers racine
sur le disque ZIP! Dans ce cas, vous aurez besoin de forcer le noyau &agrave; lier
le disque SCSI racine &agrave; <filename>/dev/da0</filename>, &agrave; savoir le disque SCSI
racine. Cela assignera alors le disque ZIP au prochain disque SCSI disponible,
&agrave; savoir <literal>/dev/da1</literal>. Pour forcer votre disque dur SCSI en
<literal>da0</literal>, changer la ligne
<programlisting>device da0</programlisting>
en
<programlisting>disk da0 at scbus0 target 0 unit 0</programlisting></para>
<para>Vous aurez probablement &agrave; changer la cible afin de la faire correspondre &agrave;
l' ID SCSI de votre disque dur. Vous devrez aussi forcer l'entrée scbus0 afin
de l'ajuster &agrave; votre contrôleur. Par exemple, si vous avez un contrôleur 15xx
de chez Adaptec, vous changerez
<programlisting>controller scbus0</programlisting>
en
<programlisting>controller scbus0 at aha0</programlisting></para>
<para>En dernier lieu, puisque vous êtes en train d'éditer le fichier de
configuration du noyau, profitez-en pour ôter tous les pilotes inutiles.
Cela doit être fait avec de grandes précautions, et seulement si vous avez
assez confiance en vous en ce qui concerne les modifications du noyau. Ôter
les pilotes inutiles réduira la taille du noyau, laissant plus de mémoire disponible
&agrave; vos applications. Afin de déterminer les pilotes qui ne sont pas nécessaires,
allez &agrave; la fin du fichier <filename>/var/log/messages</filename>, et recherchez
les lignes comportant "not found" (non trouvé). Commenter alors ces périphériques
dans votre fichier de configuration (par un # en tête de ligne). Vous pouvez aussi
changer d'autres options afin de réduire la taille et d'accroître la rapidité de
votre noyau. Lisez la section concernant la reconstruction du noyau pour de
plus amples informations.</para>
</listitem>
<listitem>
<para>Il est maintenant temps de compiler le noyau:</para>
<screen>&prompt.root; <userinput>/usr/sbin/config MYKERNEL</userinput>
&prompt.root; <userinput>cd ../../compile/MYKERNEL</userinput>
&prompt.root; <userinput>make clean depend &amp;&amp; make all install</userinput></screen>
</listitem>
</orderedlist>
<para>Après le reconstruction du noyau, vous devez redémarrer. Assurez-vous
que le lecteur ZIP est connecté au port parallèle avant que le démarrage ne
commence. Vous devriez voir apparaître le lecteur ZIP parmi les messages de
démarrage en tant que périphérique vp0 ou vp1, selon le port parallèle auquel
le lecteur est rattaché. Vous devez pouvoir voir aussi &agrave; quel fichier
périphérique le lecteur ZIP a été associé. Ce sera <filename>/dev/da0</filename>
si vous n'avez pas d'autre disque SCSI dans le système, ou <filename>/dev/da1</filename>
si vous avez un disque dur SCSI &agrave; la racine de votre système.</para>
</sect1>
<sect1>
<title>Monter les disques ZIP</title>
<para>Pour accéder &agrave; un disque ZIP, vous avez simplement &agrave; le monter, comme
n'importe quel autre périphérique. Le système de fichiers est représenté
par la quatrième tranche sur le périphérique, que ce soit pour un disque ZIP
en SCSI ou en parallèle, vous devriez faire:</para>
<screen>&prompt.root; <userinput>mount_msdos /dev/da1s4 /mnt</userinput></screen>
<para>Pour les lecteurs ZIP IDE:</para>
<screen>&prompt.root; <userinput>mount_msdos /dev/wd1s4 /mnt</userinput></screen>
<para>Cela facilitera aussi les choses de mettre &agrave; jour <filename>/etc/fstab</filename>
afin de rendre le montage plus aisé. Ajoutez une ligne telle que la suivante, ajustée
&agrave; votre système:
<programlisting>/dev/da1s4 /zip msdos rw,noauto 0 0</programlisting>
et créer le répertoire <filename>/zip</filename>.</para>
<para>Vous pouvez alors monter simplement en tapant
<screen>&prompt.root; <userinput>mount /zip</userinput></screen>
et démonter en entrant
<screen>&prompt.root; <userinput>umount /zip</userinput></screen></para>
<para>Pour savoir plus sur le format de <filename>/etc/fstab</filename>,
voir &man.fstab.5;.</para>
<para>Vous pouvez aussi créer un système de fichiers FreeBSD sur un disque
ZIP en utilisant &man.newfs.8;. Cependant, le disque ne sera utilisable
que par un système FreeBSD, et peut-être par quelques clônes Unix
reconnaissant le système de fichiers FreeBSD (mais certainement pas par
DOS ou Windows).</para>
</sect1>
</article>

View file

@ -114,9 +114,6 @@
<dd><a href="http://www.cybershade.us/freebsd/bg/fdp/split/">Introduction au Projet de
Documentation de FreeBSD pour les nouveaux participants</a></dd>
<dd><a href="http://www.cybershade.us/freebsd/bg/multi-os/">Installer et
Utiliser FreeBSD avec d'autres Systèmes d'Exploitation</a></dd>
<dt><i>Documents en cours de traduction</i></dt>
<dd>Manuel de référence FreeBSD</dd>

View file

@ -116,14 +116,6 @@
<!-- Articles are sorted by pathname -->
<p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/5-roadmap/index.html">Le
planning de développement de la 5-STABLE.</a>
(5-roadmap)<br/>
Décrit les projets de développement &agrave;
moyen terme et de production de version menant &agrave; la
branche 5-STABLE.</p>
<p><a href="&enbase;/&url.articles;/bsdl-gpl/index.html">Pourquoi
devriez-vous utiliser une licence de type BSD pour votre
projet de logiciel libre</a> (bsdl-gpl)<br/>
@ -141,13 +133,6 @@
Comment FreeBSD a aidé un important FAI en
Amérique latine.</p>
<p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/checkpoint/index.html">Intégration
de Checkpoint VPN-1/Firewall-1 et FreeBSD IPsec.</a>
(checkpoint)<br/>
Comment configurer Checkpoint VPN-1/Firewall-1 et FreeBSD
IPsec.</p>
<p><a
href="&enbase;/doc/&url.doc.langcode;/articles/committers-guide/index.html">Le
Guide du "Committer"</a> (committers-guide)<br/>
@ -192,23 +177,6 @@
Un article avec quelques astuces sur les subtilités
de CVSup.</p>
<p><a href="&enbase;/doc/&url.doc.langcode;/articles/dialup-firewall/index.html">Firewall
avec connexion modem sous FreeBSD</a> (dialup-firewall)<br/>
Comment mettre en place un firewall en utilisant PPP et ipfw
avec une connexion modem et des adresses IP dynamiques.</p>
<p><a
href="&enbase;/doc/&url.doc.langcode;/articles/diskless-x/index.html">Mise
en oeuvre d'un terminal X sans disque dur</a>
(diskless-x)<br/>
Comment mettre en place un terminal X sans disque dur.</p>
<p><a
href="&enbase;/doc/&url.doc.langcode;/articles/euro/article.html">Le
symbole Euro sous FreeBSD</a> (euro)<br/>
Comment configurer FreeBSD et les applications pour afficher
le symbole Euro.</p>
<p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/explaining-bsd/index.html">Expliquer
BSD</a> (explaining-bsd)<br/>
@ -234,13 +202,6 @@
sous FreeBSD et comment les utiliser avec différents
programmes.</p>
<p><a
href="&enbase;/doc/&url.doc.langcode;/articles/formatting-media/index.html">Formatage
des supports de données sous FreeBSD</a>
(formatting-media)<br/>
Comment découper, partitionner et formater les
supports fixes et amovibles sous FreeBSD.</p>
<p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/freebsd-questions/index.html">Comment
obtenir les meilleurs résultats sur la liste de
@ -249,13 +210,6 @@
chances d'obtenir des informations utiles sur la liste de
diffusion -questions.</p>
<p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/hats/index.html">Travailler
avec les "chefs"</a> (hats)<br/>
Un guide du "committer" pour travailler avec les "chefs"
(d'autres "committers" qui ont autorité sur certaines
parties spécifiques de FreeBSD).</p>
<p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/hubs/index.html">Créer
un site miroir de FreeBSD</a> (hubs)<br/>
@ -298,14 +252,6 @@
Une introduction &agrave; l'utilisation du lecteur de
courrier électronique MH sur FreeBSD.</p>
<p><a
href="&enbase;/doc/&url.doc.langcode;/articles/multi-os/index.html">Utiliser
FreeBSD avec d'autres systèmes d'exploitation</a>
(multi-os)<br/>
Comment installer FreeBSD en plus d'un ou plusieurs
systèmes d'exploitation différents sur le
même ordinateur.</p>
<p><a href="&enbase;/doc/&url.doc.langcode;/articles/new-users/index.html">Premiers
Pas avec FreeBSD</a> (new-users)<br/>
Pour les nouveaux venus &agrave; FreeBSD et &unix;.</p>
@ -405,31 +351,6 @@
L'utilisation des périphériques disques
&agrave; état solide sous FreeBSD.</p>
<p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/storage-devices/index.html">Les
Périphériques de Stockage</a>
(storage-devices)<br/>
Informations détaillées sur l'utilisation des
périphériques de stockage avec FreeBSD,
notamment les disques ESDI et SCSI, les lecteurs de bandes
et les lecteurs de CDROM.</p>
<p><a href="&enbase;/&url.articles;/version-guide/index.html">Choisir la
bonne version de FreeBSD</a> (version-guide)<br/>
Comment décider quelle version de FreeBSD est la plus
adaptée &agrave; vos besoins. Parmi les sujets
abordés, les versions officielles, les branches, les
différences entre -CURRENT et -STABLE, et les
objectifs de planification actuels du projet.</p>
<p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/vinum/index.html">Aborder
Vinum: une base pour des serveurs &agrave; haute
fiabilité</a> (vinum)<br/>
Une première introduction aux serveurs &agrave;
tolérance de panne et un guide pas-&agrave;-pas pour
en construire un avec l'aide de Vinum.</p>
<p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/vm-design/index.html">Conception
du système de mémoire virtuelle de FreeBSD</a>
@ -437,12 +358,6 @@
Une description simple d'accès de la conception du
système de mémoire virtuelle de FreeBSD.</p>
<p><a
href="&enbase;/doc/&url.doc.langcode;/articles/zip-drive/index.html">Les
lecteurs Zip et FreeBSD</a> (zip-drive)<br/>
Comment formater, monter et utiliser un Zip Iomega (SCSI,
IDE, ou parallèle) sous FreeBSD.</p>
<h2>Sur d'autres sites web</h2>
<p>Divers efforts indépendants ont aussi produit une

View file

@ -285,7 +285,7 @@
href="http://www.jp.FreeBSD.org/">http://www.jp.FreeBSD.org/</a>.</p>
<p>Nouvel article qui explique comment <a
href="&base;/tutorials/dialup-firewall/index.html">utiliser PPP, natd,
href="http://docs.freebsd.org/doc/9.0-RELEASE/usr/share/doc/freebsd/en_US.ISO8859-1/articles/dialup-firewall/index.html">utiliser PPP, natd,
et ipfw</a> pour mettre en place un firewall avec une connexion
PPP en dialup.</p>

View file

@ -314,7 +314,7 @@
<title>"Bootstrapping" Vinum : une base pour des serveurs fiables</title>
<p><a href="mailto:Bob@BGPBook.Com">Bob Van Valzah</a> propose
un article d'introduction <a
href="$base/../doc/en_US.ISO8859-1/articles/vinum/index.html">
href="http://docs.freebsd.org/doc/9.0-RELEASE/usr/share/doc/freebsd/en_US.ISO8859-1/articles/vinum/index.html">
aux serveurs à haute-disponibilité et décrit les étapes à suivre
pour réaliser ce type de serveur avec l'aide de Vinum</a>.</p>
</event>

View file

@ -836,7 +836,7 @@
<p>Aaron Kaplan a réalisé un nouvel article qui explique comment
configurer votre système pour utiliser le nouveau <a
href="$base/../doc/fr_FR.ISO8859-1/articles/euro/article.html">symbole
href="http://docs.freebsd.org/doc/9.0-RELEASE/usr/share/doc/freebsd/fr_FR.ISO8859-1/articles/euro/index.html">symbole
Euro sur FreeBSD</a>.</p>
</event>
</day>

View file

@ -277,25 +277,6 @@
configurer un groupe de machines pour en faire un "cluster de ports", comment
regrouper les paquetages pour le media utilisé et comment vérifier la cohérence
d'un ensemble de paquetages.</small></p></li>
<li><p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/5-roadmap/index.html">Feuille de route de FreeBSD
5-STABLE</a><br/>
<small>Décrit la feuille de route du projet pour atteindre la branche RELENG_5.
Incluait le statut général de 5.x, ce qu'il restait &agrave; faire et
des plannings (provisoires). Notez que ce document a maintenant un intérêt
principalement historique.</small></p></li>
<li><p><a
href="&enbase;/doc/en_US.ISO8859-1/articles/version-guide/index.html">Choisir
la bonne version de FreeBSD</a><br/>
<small>Comment décider quelle version de FreeBSD est la plus
adaptée &agrave; vos besoins. Parmi les sujets abordés, les versions officielles, les branches, les différences
entre -CURRENT et -STABLE, et les objectifs de planification actuels
du projet.</small></p></li>
</ul>
<a name="team"></a>

View file

@ -10,14 +10,11 @@ MAINTAINER= gabor@FreeBSD.org
SUBDIR = compiz-fusion
SUBDIR+= cups
SUBDIR+= dialup-firewall
SUBDIR+= explaining-bsd
SUBDIR+= gjournal-desktop
SUBDIR+= laptop
SUBDIR+= linux-comparison
SUBDIR+= linux-users
SUBDIR+= multi-os
SUBDIR+= version-guide
DOC_PREFIX?= ${.CURDIR}/../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,28 +0,0 @@
# $FreeBSD$
#
# Article: Dialup firewalling with FreeBSD
#
# %SOURCE% en_US.ISO8859-1/articles/dialup-firewall/Makefile
# %SRCID% 1.5
#
#
# Tidy messes up iso-8859-2 characters
#
NO_TIDY= yes
MAINTAINER= doc@FreeBSD.org
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,425 +0,0 @@
<?xml version="1.0" encoding="iso-8859-2" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//HU" "../../share/sgml/entities.ent">
%entities;
]>
<!-- The FreeBSD Hungarian Documentation Project
Translated by: PALI, Gabor <pgj@FreeBSD.org>
%SOURCE% en_US.ISO8859-1/articles/dialup-firewall/article.sgml
%SRCID% 1.43
-->
<article lang="hu">
<articleinfo>
<title>Tűzfal létrehozása
betárcsázós kapcsolatokhoz &os;-vel</title>
<authorgroup>
<author>
<firstname>Marc</firstname>
<surname>Silver</surname>
<affiliation>
<address><email>marcs@draenor.org</email></address>
</affiliation>
</author>
</authorgroup>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.general;
</legalnotice>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Ebben a cikkben bemutatjuk, hogyan lehet beállítani
tűzfalat a PPP-típusú kapcsolatokhoz a &os; valamint
az IPFW segítségével, különös
tekintettel az olyan esetekre, ahol dinamikusan kiosztott
IP-címmel használjuk a rendszert. Ez a
leírás azonban nem tartalmazza magának a
PPP-kapcsolatnak a beállítását. A
PPP-kapcsolatok létrehozásához kérjük
tekintse át a &man.ppp.8; man oldalt.</para>
<para><emphasis>Fordította: Páli Gábor,
utolsó ellenőrzés:
2010.11.28.</emphasis></para>
</abstract>
</articleinfo>
<sect1 id="preface">
<title>Bevezetés</title>
<para>A leírásban felvázoljuk azokat a
lépéseket, amelyek szükségesek az Internet
szolgáltatónk által dinamikusan kiosztott
IP címmel rendelkező rendszerünk
tűzfalának kiépítéséhez.
Habár ezen cikk szerzője minden megtett, hogy ez a
leírás minél hasznosabb és pontosabb
legyen, örömmel várja az esetleges
megjegyzéseket és javaslatokat a
<email>marcs@draenor.org</email> címen.</para>
</sect1>
<sect1 id="kernel">
<title>Beállítások a rendszermagban</title>
<para>Az IPFW használatához bele kell fordítani
némi támogatást a rendszer magjába. Ha
többet szeretne tudni a rendszermag
újrafordításáról,
kérjük, olvassa el a <ulink
url="&url.books.handbook;/kernelconfig.html"> a rendszermag
beállításáról szóló
fejezetet a Kézikönyvben</ulink>. Az IPFW
támogatásához az alábbi sorokat kell
még hozzáírni a rendszermag
konfigurációs állományához:</para>
<variablelist>
<varlistentry>
<term><literal>options IPFIREWALL</literal></term>
<listitem>
<para>Elérhetővé teszi a rendszermag
tűzfalért felelős rutinjait.</para>
<note><para>A cikk a &os; 5.X-es verziójának
használatát feltételezi. Azoknak a
felhasználóknak, akik még a &os; 4.X-es
verzióját használják, a
rendszermagjukat a <emphasis>IPFW2</emphasis>
támogatással kell újrafordítaniuk.
A &os; 4.X felhasználóknak továbbá
javasolt elolvasniuk ezzel kapcsolatosan a &man.ipfw.8; man
oldalt, kiemelten odafigyelve a
<emphasis>IPFW2 HASZNÁLATA A &os;-STABLE-ben</emphasis>
fejezetre.</para></note>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options IPFIREWALL_VERBOSE</literal></term>
<listitem>
<para>Naplózott csomagok küldése a
rendszernaplóba.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>options
IPFIREWALL_VERBOSE_LIMIT=<replaceable>500</replaceable></literal></term>
<listitem>
<para>Korlátozza az egyező tartalmú sorok
naplózásának mennyiségét.
Ezzel lehetővé válik, hogy a
rendszernapló elárasztásának
kockázata nélkül naplózzuk a
tűzfal minden egyes tevékenységét,
például egy "denial of service" (DoS)
típusú támadás esetén.
Itt az <replaceable>500</replaceable> egy viszonylag jó
kiindulási érték lehet, de nyugodtan
változtathajuk igényeink szerint.</para>
</listitem>
</varlistentry>
</variablelist>
<warning><para>Amikor a rendszermag újrafordítása
befejeződött, <emphasis>ne indítsuk újra
egyből</emphasis> a rendszerünket. Ha így
cselekszünk, könnyedén kizárhatjuk magunkat
belőle! Csak azután szabad újraindítanunk
és ezzel működésbe hozni a tűzfalat,
miután a hozzá tartozó szabályok a
megfelelő helyre kerültek és minden hozzájuk
kapcsolódó konfigurációs
állományt megfelelően
beállítottunk.</para></warning>
</sect1>
<sect1 id="rcconf">
<title>Az <filename>/etc/rc.conf</filename> módosítása
a tűzfal betöltéséhez</title>
<para>Az <filename>/etc/rc/rc.conf</filename> konfigurációs
állományt kell némileg átírnunk
a tűzfal betöltéséhez, valamint a
hozzá tartozó szabályokat tartalmazó
állomány helyének megadásához.
Adjuk tehát hozzá az alábbi sorokat a
<filename>/etc/rc/rc.conf</filename>-hoz:</para>
<programlisting>firewall_enable="YES"
firewall_script="/etc/firewall/fwrules"</programlisting>
<para>Ha többet szeretne tudni ezeknek a soroknak a
jelentéséről, akkor nézze át a
<filename>/etc/defaults/rc.conf</filename> állományt
és olvassa el a &man.rc.conf.5; man oldalt.</para>
</sect1>
<sect1>
<title>A PPP-ben levő címfordítás
bekapcsolása</title>
<para>Amennyiben a helyi hálózatunkban fellelhető
további kliensek számára is szeretnénk
elérhetővé tenni az Internetet az
átjárónkon át, szükségünk
lesz a PPP-ben található hálózati
címfordítás (Network Address Translation, NAT)
beindítására. Ezt az
<filename>/etc/rc.conf</filename>-ben a következő
sorok hozzáadásával tehetjük meg:</para>
<programlisting>ppp_enable="YES"
ppp_mode="auto"
ppp_nat="YES"
ppp_profile="<replaceable>internet_beallitasok</replaceable>"</programlisting>
<note>
<para>Ne felejtsük el kicserélni az
<literal>internet_beallitasok</literal>
értékét a saját
betárcsázós
beállításait tartalmazó
állomány nevére! Ennek nevének meg
kell egyeznie a beállításaink
<filename>/etc/ppp/ppp.conf</filename> állományban
szereplő nevével.</para>
</note>
</sect1>
<sect1 id="rules">
<title>A tűzfal szabályai</title>
<para>Most fogjuk megadni a rendszerünk tűzfalának
szabályait. Az itt ismertetésre kerülő
szabályok egy olyan általános sablont
kívánnak bemutatni, amely a legtöbb
betárcsázós felhasználó
számára megfelelnek. Habár
kétségtelen, hogy nem fogja mindenki igényeit
tökéletesen kielégíteni, azonban segít
megmutatni az IPFW működésének alapelveit
és könnyedén tovább is
fejleszthető.</para>
<para>Elsőként kezdjük a "zárt tűzfal"
alapjaival. A zárt tűzfal lényegében azon a
feltevésen alapszik, hogy alapvetően mindent kizárunk
a rendszerből. Ezt követően a rendszergazda
egyesével megadhatja azokat szabályokat, amelyeket
engedélyezni kíván valamit. A szabályok
közül elöszőr mindig azokat adjuk meg, amikkel
engedélyezünk, majd azokat, amikkel tiltunk. Az
alapfeltételezés szerint tehát a szabályokkal
megadunk mindent, amit engedélyezünk a tűzfalon,
és minden más pedig automatikusan tiltásra
kerül.</para>
<para>Ezt követően hozzunk létre egy
könyvtárat, ahol majd tárolni a fogjuk a
tűzfalunk beállításait. Ebben a
példában a
<filename class="directory">/etc/firewall/</filename>
könyvtárat fogjuk használni erre a célra.
Lépjünk be ebbe a könyvtárba és hozzunk
létre egy <filename>fwrules</filename> nevű
állományt, ahogy azt az <filename>rc.conf</filename>-ban
is megadtuk. Természetesen ez az elnevezés sem
kötött, nyugodtan megváltoztathatjuk bármire.
A leírás pusztán csak egy példát
ad erre.</para>
<para>Most pedig nézzünk egy megjegyzésekkel
tűzdelt szabályokat tartalmazó
állományt:</para>
<programlisting># Definiálunk egy parancsot a tűzfalat összeállító program elérésére
# (ld. /etc/rc.firewall). Remélhetőleg így könnyebb is lesz olvasni.
fwcmd="/sbin/ipfw"
# Megadjuk a külső hálózati csatolót. Ha felhasználói ppp-t használunk,
# akkor ez valószínűleg a tun0 lesz.
oif="tun0"
# Megadjuk a belső hálózati csatolót. Ez többnyire (a helyi hálózaton
# is elerhető) hálózati kártyánk lesz. Mindenképpen ellenőrizzük, hogy
# jól adtuk-e meg!
iif="fxp0"
# Töröltessünk a rendszerben jelenleg érvényben levő össze szabályt,
# még mielőtt betöltenénk a sajátjainkat.
$fwcmd -f flush
# Ellenőrizzük az összes csomag állapotát.
$fwcmdl add check-state
# Tiltsuk le az elrejtést a külső csatolón.
$fwcmd add deny ip from any to any in via $oif not verrevpath
# Engedélyezzünk minden általunk kezdeményezett kapcsolatot és
# tartsuk is meg az állapotukat. Ellenben tiltsunk minden olyat,
# amihez nincs semmilyen dinamikus szabály.
$fwcmd add allow ip from me to any out via $oif keep-state
$fwcmd add deny tcp from any to any established in via $oif
# Engedélyezzünk minden kapcsolatot a helyi hálózaton.
$fwcmd add allow ip from any to any via $iif
# Engedélyezzük a helyi (gépen belüli) forgalmat.
$fwcmd add allow all from any to any via lo0
$fwcmd add deny all from any to 127.0.0.0/8
$fwcmd add deny ip from 127.0.0.0/8 to any
# Engedélyezzük az Internetről hozzánk látogatóknak, hogy elérhessék
# a 22-es ill. a 80-as portokat. Így ez a példa kifejezetten az SSH
# (sshd) es HTTP (webszerver) típusú kapcsolatokat engedélyezi.
$fwcmd add allow tcp from any to me dst-port 22,80 in via $oif setup keep-state
# Engedélyezzük az ICMP csomagokat: vegyük ki a 8-as típust, ha nem
# szeretnénk a gépünket pingek által elérhetővé tenni.
$fwcmd add allow icmp from any to any via $oif icmptypes 0,3,8,11,12
# Tiltsunk és naplózzunk minden mást.
$fwcmd add deny log ip from any to any</programlisting>
<para>Most már van egy teljesen működőképes
tűzfalunk, amely csak és kizárólag a 22-es,
80-es portokon enged kapcsolatot létesíteni, és
minden egyéb próbálkozást naplóz.
Így már nyugodtan újraindíthatjuk a
rendszerünket, és ezt követően a tűzfalunk
magától elindul és a hozzá tartozó
szabályrendszer betöltődik. Ha bármilyen
hibát találna benne vagy problémába
ütközne a használata során, esetleg valamilyen
építő jellegű javaslata van, kérem,
keressen meg e-mailben!</para>
</sect1>
<sect1>
<title>Kérdések</title>
<qandaset>
<qandaentry>
<question>
<para><errorname>limit 500 reached on entry 2800</errorname>.
Ilyen és ehhez hasonló hibaüzeneteket kapok,
miután a számítógépem abbahagyja
a szabályhoz tartozó eldobott csomagok
naplózását. Működik még
ilyenkor ea tűzfalam?</para>
</question>
<answer>
<para>Ez csupán annyit jelent, hogy az adott szabályt
elérte a hozzá tartozó maximális
naplóbejegyzést. A szabály maga még
mindig aktív, viszont addig nem fog tudni naplózni,
amíg nem töröljük valahogy a
bejegyzésszámlálóját.
Például így lehet törölni az
említett számlálót:
</para>
<screen>&prompt.root; <userinput>ipfw resetlog</userinput></screen>
<para>Vagy úgy is elkerülhetjük ezt a
hibaüzenetet, ha növeljük a szabályhoz
tartozó naplóbejegyzések számát
a rendszermag konfigurációs
állományában, az
<option>IPFIREWALL_VERBOSE_LIMIT</option>
beállítás
megváltoztatásával, a fentebb leírt
módon. A rendszermag újrafordítása
eacute;s a rendszer újraindítása
nélkül is megváltoztatható ez a
korlát, a net.inet.ip.fw.verbose_limit &man.sysctl.8;
használatával.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>Valami nem stimmel. Követtem a leírásban
szereplő utasításokat pontról pontra, de
kizártam magamat.</para>
</question>
<answer>
<para>A leírás feltételezi, hogy
<emphasis>felhasználói ppp-t</emphasis>
használunk, és ezért a megadott
szabályok a <devicename>tun0</devicename> (amely megfelel
a &man.ppp.8; (azaz <emphasis>felhasználói ppp,
user-ppp</emphasis>) által létrehozott első
kapcsolatnak) felületen keresztül működnek.
A további kapcsolatok rendre a
<devicename>tun1</devicename>, <devicename>tun2</devicename> stb.
neveket használják.</para>
<para>Továbbá érdemes megjegyezni, hogy a
&man.pppd.8; ehelyett a <devicename>ppp0</devicename>
felületet használja, így tehát ha a
PPP-kapcsolatot a &man.pppd.8;-al indítottuk el, akkor a
<devicename>tun0</devicename> neveket mindenhol
<devicename>ppp0</devicename> nevekre kell cserélni.
Íme egy példa arra, hogyan írjuk át
gyorsan a szabályainkat ilyen alakúra (az
eredeti szabályokat pedig
<filename>fwrules_tun0</filename> néven
elmentjük):</para>
<screen>&prompt.user; <userinput>cd /etc/firewall</userinput>
/etc/firewall&prompt.user; <userinput>su</userinput>
<prompt>Password:</prompt>
/etc/firewall&prompt.root; <userinput>mv fwrules fwrules_tun0</userinput>
/etc/firewall&prompt.root; <userinput>cat fwrules_tun0 | sed s/tun0/ppp0/g > fwrules</userinput></screen>
<para>Legkönnyebben úgy tudjuk kideríteni, hogy
van &man.ppp.8;-t vagy éppen &man.pppd.8;-t
használunk, hogy átnézzük az
&man.ifconfig.8; kimenetét, amikor már van
aktív kapcsolatunk. Például, ha a
kapcsolatot a &man.pppd.8;-vel hoztuk létre, akkor valami
ilyesmit kellene látnunk (csak a lényeget
mutatjuk):</para>
<screen>&prompt.user; <userinput>ifconfig</userinput>
<emphasis>(kimarad...)</emphasis>
ppp0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
inet <replaceable>xxx.xxx.xxx.xxx</replaceable> --&gt; <replaceable>xxx.xxx.xxx.xxx</replaceable> netmask <replaceable>0xff000000</replaceable>
<emphasis>(kimarad...)</emphasis></screen>
<para>Másrészt viszont a &man.ppp.8;-vel (vagyis
<emphasis>felhasználói ppp</emphasis>-vel)
létesített kapcsolatok esetén
nagyjából ezt:</para>
<screen>&prompt.user; <userinput>ifconfig</userinput>
<emphasis>(kimarad...)</emphasis>
ppp0: flags=<replaceable>8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1500</replaceable>
<emphasis>(kimarad...)</emphasis>
tun0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
<emphasis>(IPv6 kimarad...)</emphasis>
inet <replaceable>xxx.xxx.xxx.xxx</replaceable> --&gt; <replaceable>xxx.xxx.xxx.xxx</replaceable> netmask <replaceable>0xffffff00</replaceable>
Opened by PID <replaceable>xxxxx</replaceable>
<emphasis>(kimarad...)</emphasis></screen>
</answer>
</qandaentry>
</qandaset>
</sect1>
</article>

View file

@ -1,28 +0,0 @@
# $FreeBSD$
#
# Article: Installing and Using FreeBSD With Other Operating Systems
#
# %SOURCE% en_US.ISO8859-1/articles/multi-os/Makefile
# %SRCID% 1.12
#
#
# Tidy messes up iso-8859-2 characters
#
NO_TIDY= yes
MAINTAINER= doc@FreeBSD.org
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,975 +0,0 @@
<?xml version="1.0" encoding="iso-8859-2" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//HU" "../../share/sgml/entities.ent">
%entities;
]>
<!-- The FreeBSD Hungarian Documentation Project
Translated by: PALI, Gabor <pgj@FreeBSD.org>
%SOURCE% en_US.ISO8859-1/articles/multi-os/article.sgml
%SRCID% 1.39
-->
<article lang="hu">
<articleinfo>
<title>A &os; telepítése és használata
más operációs rendszerekkel együtt</title>
<authorgroup>
<author>
<firstname>Jay</firstname>
<surname>Richmond</surname>
<affiliation>
<address>
<email>jayrich@sysc.com</email>
</address>
</affiliation>
</author>
</authorgroup>
<pubdate>1996. augusztus 6.</pubdate>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.ibm;
&tm-attrib.linux;
&tm-attrib.microsoft;
&tm-attrib.powerquest;
&tm-attrib.general;
</legalnotice>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Ez a leírás azt tárgyalja, miképpen
lehet a &os;-t olyan más népszerű
operációs rendszerek, mint mondjuk a &linux; &ms-dos;,
&os2; és &windows;&nbsp;95 mellé telepíteni
és használni. Külön köszönet:
Annelise Anderson <email>andrsn@stanford.edu</email>,
Randall Hopper <email>rhh@ct.picker.com</email> és
&a.jkh;.</para>
<para><emphasis>Fordította: Páli Gábor,
utolsó ellenőrzés:
2010.11.28.</emphasis></para>
</abstract>
</articleinfo>
<sect1>
<title>Áttekintés</title>
<para>A legtöbben nem tudják az említett
operációs rendszereket kényelmesen egymás
mellé rakni egy kisebb méretű merevlemezen,
ezért a nagyobb EIDE-meghajtókkal kapcsolatos
ismeretekről is szó fog esni. Mivel rengeteg
kombinációja létezik a különféle
operációs rendszereknek és merevlemezeknek,
valószínűleg az <xref linkend="ch5"/> fog a
leírás leghasznosabb részének bizonyulni.
Itt találhatóak meg ugyanis azok a speciális
beállítási sémák, amelyek több
operációs rendszer használata esetén
alkalmazhatóak.</para>
<para>Ez a cikk feltételezi, hogy a merevlemezünkön
már előkészítettünk kellő
mennyiségű szabad helyet az újabb
operációs rendszer(ek) számára. Minden egyes
alkalommal, amikor újra felosztjuk a merevlemezünket,
egyúttal kockára tesszük a meglevő
partícióinkon levő adataink
épségét is. Viszont ha a merevlemezünkön
teljes egészében csak a DOS található, akkor
a FIPS nevű segédprogramot hasznosnak fogjuk találni
(megtalálható a &os; CDROM-on, a
<filename class="directory">\TOOLS</filename> alkönyvtárban,
vagy <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">FTP-n</ulink>.
Segítségével anélkül tudjuk
partícionálni a merevlemezünket,
hogy kockára tennénk a rajta levő adatainkat
biztonságát. Valamint létezik még egy
<application>&partitionmagic;</application> nevű kereskedelmi
alkalmazás is, amellyel minden komoly következmény
nélkül tudunk partíciókat
átméretezni és törölni.</para>
</sect1>
<sect1 id="ch2">
<title>A boot managerek áttekintése</title>
<para>Csak röviden bemutatnánk néhány elterjedt
boot managert. Közülük, a
számítógépünk
kiépítésétől függően, egyet
vagy többet jó eséllyel tudunk majd
használni.</para>
<variablelist>
<varlistentry>
<term>Boot Easy</term>
<listitem>
<para> Ez a &os; alapértelmezett boot managere. Szinte
bármilyen rendszert képes indítani,
többek közt a BSD, &os2; (HPFS), &windows;&nbsp;95 (FAT
és FAT32) és &linux; típusú
rendszereket. Az indítandó partíciót a
funkcióbillentyűkkel választhatjuk ki.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>&os2; Boot Manager</term>
<listitem>
<para> Elindítja a FAT, FAT32, HPFS, FFS (&os;) és EXT2
(&linux;) partíciókat, amelyet a nyilakkal
választhatunk ki. Az &os2; Boot Manager az egyetlen az itt
felsoroltak közül, amely a saját
partícióját használja, miközben az
összes többi a Master Boot Record (MBR)-ot. Ennek
következtében az 1024. cilinder elé kell
telepítenünk, hogy elkerüljük az ezzel
kapcsolatos esetleges indítási
problémákat. LILO-val telepített &linux;-ot
csak akkor képes indítani, amikor az a boot
szektorban található, nem pedig az MBR-ben. Az
Interneten található <ulink
url="http://www.linuxresources.com/LDP/HOWTO/HOWTO-INDEX.html">&linux; hogyanok</ulink>
között további információkat
találhatunk az &os2; boot manager és a &linux;
kapcsolatáról.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>OS-BS</term>
<listitem>
<para>Ez egy másik boot manager a Boot Easy mellett.
Valamivel több kontrollt ad a rendszerindítási
folyamat felett, például
beállítható benne az alapértelmezett
indított partíció és egy
várakozási idő. A program béta
változatában már a nyilak
segítségével lehet kiválasztani az
indítandó operációs rendszert.
Szintén megtalálható a &os; CD-jén
a <filename class="directory">\TOOLS</filename>
könyvtárban vagy <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">FTP-n</ulink>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>LILO, avagy LInux LOader</term>
<listitem>
<para>Ez egy korlátozott képességű boot
manager. Képes elindítani a &os;-t, habár
ehhez szükség van némi finomhangolásra
a hozzátartozó konfigurációs
állományban.</para>
</listitem>
</varlistentry>
</variablelist>
<note id="fat32">
<title>Röviden FAT32-ről</title>
<para>A FAT32 a FAT állományrendszer
kiváltására szolgál, amelyet a Microsoft
1996 végén, a &windows;&nbsp;95&nbsp;OSR2 béta
változatától kezdődően indított
útjának, ezzel lecserélve a &windows;&nbsp;95-tel
telepített számítógépek
alapértelmezett FAT típusú
állományrendszerét. Úgy alakítja
át a megszokott FAT-ot, hogy lehetővé teszi a
kisebb kiosztási egységek használatát
nagyobb merevlemezeken is. Továbbá a FAT32-ben
megváltoztatták a hagyományos FAT boot
szektorát és kiosztási
táblázatát is,
összeférhetetlenné téve ezáltal
néhány boot managerrel.</para>
</note>
</sect1>
<sect1 id="ch3">
<title>Egy átlagos telepítés</title>
<para>Tegyük fel, hogy van két nagyobb EIDE merevlemezünk
és szeretnénk rájuk &os;-t, &linux;-ot és
&windows;&nbsp;95-öt telepíteni.</para>
<para>Íme, hogyan tennénk mindezt az alábbi
merevlemezekkel:</para>
<itemizedlist>
<listitem>
<para><filename>/dev/wd0</filename> (az első fizikai lemez)</para>
</listitem>
<listitem>
<para><filename>/dev/wd1</filename> (második fizikai
lemez)</para>
</listitem>
</itemizedlist>
<para>Mindkét lemeznek 1416 cilindere van.</para>
<procedure>
<step><para>Elsőként indítsunk az &ms-dos; vagy
&windows;&nbsp;95 rendszerindító lemezével,
amelyen az <filename>FDISK.EXE</filename> segédprogram
található. Ennek segítségével
készítünk egy kis, nagyjából
50&nbsp;MB méretű elsődleges partíciót
(35-40-et a &windows;&nbsp;95-nek, meg hagyunk egy kis helyet
levegőzni is) az első lemezen. Ezen kívül
még készítsünk egy nagyobb
partíciót a második merevlemezen, ahol a
&windows;os alkalmazásaink és az adataink foglalnak
majd helyet.</para></step>
<step><para>Indítsuk újra a gépet és
telepítsük fel a &windows;&nbsp;95-öt a
<filename>C:</filename> partícióra (amit
egyébként könnyebb mondani, mint
megtenni).</para></step>
<step><para>Következőként a &linux;-ot
telepítsük fel. Nem vagyok benne biztos, hogy ez mindegyik
&linux;-disztribúcióra igaz, de a <ulink
url="http://www.slackware.com">Slackware</ulink> tartalmazza a LILO-t
(ld. <xref linkend="ch2"/>). A &linux;-os <command>fdisk</command>
parancsával tovább partíciónálva
én a &linux;-ot az első lemezre tenném
(nagyjából 300&nbsp;MB elegendő egy
kövérebb rendszerpartíciónak és
némi lapozóállománynak).</para></step>
<step><para>Miután feltelepítettük a &linux;-ot
és éppen a LILO elhelyezése előtt
állunk, <emphasis>mindenképpen</emphasis>
ellenőrizzük, hogy a &linux;-os
rendszerpartíció boot szektorába
telepítjük, nem pedig az MBR-be!</para></step>
<step><para>A fennmaradó hely mehet mind a &os;-nek.
Vigyázzunk, hogy a &os; rendszerslice-a ne kerüljön az
1024. cilinderen túlra. (Az 1024. cilinder az
528.&nbsp;MB-nál található a most
feltételezett 720&nbsp;MB-os lemezükön.) A merevlemez
többi részét (nagyjából 270&nbsp;MB)
az <filename class="directory">/usr</filename> és
<filename class="directory">/</filename> slice-okra is fel lehet
használni. A második lemez fennmaradó
részén (aminek a mérete az 1.
lépésben kialakított, &windows;-os
alkalmazásoknak és adatoknak szánt
partíció méretétől függ)
még elfér a
<filename class="directory">/usr/src</filename> slice és
a lapozóállomány.</para></step>
<step><para>Ha most megnézzük a &windows;&nbsp;95
<command>fdisk</command> programjával, a merevlemezeket
valahogy így láthatjuk:
<screen>
---------------------------------------------------------------------
Partíció információinak megjelenítése
Aktuális merevlemezes meghajtó: 1
Partíció Állapot Típus Kötetcímke Megabájt Rendszer Felhasznált
C: 1 A PRI DOS 50 FAT** 7%
2 A Non-DOS (Linux) 300 43%
Teljes lemezterület: 696 megabájt (1 megabájt = 1048576 bájt)
A folytatáshoz nyomja meg az Esc billentyűt.
---------------------------------------------------------------------
Partíció információinak megjelenítése
Aktuális merevlemezes meghajtó: 2
Partíció Állapot Típus Kötetcímke Megabájt Rendszer Felhasznált
D: 1 A PRI DOS 420 FAT** 60%
Teljes lemezterület: 696 megabájt (1 megabájt = 1048576 bájt)
A folytatáshoz nyomja meg az Esc billentyűt.
---------------------------------------------------------------------
</screen>** Ez FAT16 vagy FAT32 lehet attól függően,
hogy OSR2-t használunk-e. Lásd
<xref linkend="ch2"/>.</para></step>
<step><para> Telepítsük fel a &os;-t. Mindenképpen
az első merevlemezről indítsuk el a
számítógépet, ezért a BIOS-ban
állítsuk <quote>NORMAL</quote>-ra. Ha nem az lenne,
adjuk meg a lemez valós geometriáját
indításkor (a lekérdezéséhez
indítsuk el &windows;&nbsp;95-öt, majd a Microsoft
Diagnostics-ot (<filename>MSD.EXE</filename>, esetleg
nézzük meg a BIOS-ban) a <literal>hd0=1416,16,63</literal>
paraméterrel, ahol a <replaceable>1416</replaceable> megadja a
merevlemez cilindereinek számát, a
<replaceable>16</replaceable> a fejek számát
sávonként, valamint a <replaceable>63</replaceable> a
szektorok számát sávonként.</para></step>
<step><para>A merevlemez partícionálása során
a Boot Easy-t mindenképpen az első lemezre tegyük.
A második lemez miatt különösebben ne
aggódjunk, semmi bootolni való nincs rajta.</para></step>
<step><para>Újraindítás után a Boot Easy
várhatóan felismeri mind a három
indítható partíciót: DOS
(&windows;&nbsp;95), &linux; és BSD (&os;)
néven.</para></step>
</procedure>
</sect1>
<sect1 id="ch4">
<title>Különösen megfontolandók</title>
<para>A legtöbb operációs rendszer meglehetősen
kényes abban a tekintetben, hogy hova helyezzük őket a
merevlemezen. A &windows;&nbsp;95-öt és DOS-t az első
merevlemez első elsődleges partíciójára
kell telepítenünk. Az &os2; innen nézve
kívételnek számít, mivel egyaránt
telepíthető az első vagy a második merevlemezre
is, tetszőleges elsődleges vagy kiterjesztett
partícióra. Ha nem vagyunk benne biztosak, az
indítható partíciókat tegyük mindig az
1024. cilinder elé.</para>
<para>Ha a &windows;&nbsp;95-öt egy már meglévő BSD
rendszer mellé telepítjük, <quote>tönkre fogja
tenni</quote> az MBR-t, és ezért újra kell
telepítenünk a korábbi boot managerünket. A Boot
Easy-t a &os; telepítő CDROM-jának
<filename class="directory">\TOOLS</filename>
könyvtárában található, vagy az <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">FTP-n</ulink>
letölthető <filename>BOOTINST.EXE</filename>
segítségével tudjuk visszarakni. Másik
lehetőség gyanánt elindíthatjuk a
telepítőt is, és megkereshetjük benne a
partíciószerkesztőt. Itt jelöljük meg
&os;-t tartalmazó partíciót
indíthatónak (<emphasis>bootable</emphasis>), majd
válasszuk a Boot Managert és nyomjuk le a W-t (mint
(W)rite out) a boot manager tényleges MBR-be
írásához. Most már
újraindíthatjuk a számítógépet
és a Boot Easy pedig felismeri a &windows;&nbsp;95-öt mint
DOS.</para>
<para>Nem szabad elfelejtenünk, hogy az &os2; ugyan képes FAT
és HPFS partíciókat olvasni, viszont FFS-t (&os;)
és EXT2-t (&linux;) nem! Ehhez hasonlóan a
&windows;&nbsp;95 csak FAT és FAT32 partícókat (ld.
<xref linkend="ch2"/>) tud írni és olvasni. A &os; ismeri a
legtöbb állományrendszert, de jelenleg nem tud HPFS
partíciókat olvasni. A &linux; képes HPFS
partíciókat olvasni, de nem tudja írni őket. A
&linux; kernel legújabb (2.x-es) változatai már
képesek írni és olvasni a &windows;&nbsp;95 VFAT
partícióit (a VFAT az, aminek a
segítségével a &windows;&nbsp;95 képes
hosszú állományneveket kezelni &mdash;
egyébként teljesen olyan, mint a FAT). A &linux;
tehát képes írni és olvasni a legtöbb
állományrendszert. Érthető?
Remélem!</para>
</sect1>
<sect1 id="ch5">
<title>Példák</title>
<para><emphasis>(ennek a szakasznak szüksége van még
némi átdolgozásra, várjuk
a hozzászólásokat a témában a
<email>jayrich@sysc.com</email> címre)</emphasis>.</para>
<para>&os; + &windows;&nbsp;95: Ha a &os;-t a &windows;&nbsp;95 után
telepítettük, akkor a &windows;&nbsp;95-öt a Boot Easy
menüjében <literal>DOS</literal>-ként kell
látnunk. Ha viszont a &windows;&nbsp;95-öt a &os;
után telepítettük, olvassuk el a fenti <xref
linkend="ch4"/>t. Amíg nincsenek olyan merevlemezeink, amelyek
mérete meghaladná az 1024 cilindert, nem kell
különösebben aggódnunk a bootolás miatt.
Amikor azonban valamelyik partíciónk az 1024. cilinder
fölé merészkedik és DOS (vagy
&windows;&nbsp;95) alatt olyan hibaüzeneteket kapunk, mint mondjuk a
<errorname>Rossz rendszerlemez</errorname>, valamint a
&os; sem képes elindulni, keressünk meg a BIOS-unk
beállításai között <quote>&gt; 1024
cylinder support</quote>-ot (1024-nél több cilinder
támogatása) vagy a <quote>NORMAL/LBA</quote> nevezetű
módot. A DOS-nak ebben az esetben ugyanis szüksége
lehet az LBA (Logical Block Addressing) bekapcsolására a
bootoláshoz. Ha nem akarjunk minden egyes
rendszerindításkor eljátszani ezt, a CD-n
található <filename>FBSDBOOT.EXE</filename>
segítségével akár a DOS-on keresztül is
el tudjuk indítani a &os;-t. (Ez ugyanis megkeresi a &os;-s
partíciót és elindítja azt).</para>
<para>&os; + &os2; + &windows;&nbsp;95: Nincs új a nap alatt. Az
&os2; boot managere képes elindítani mindezen
operációs rendszereket, ez a kombináció
tehát nem okozhat problémát.</para>
<para>&os; + &linux;: A Boot Easy segítségével mind a
két rendszer elindítható.</para>
<para>&os; + &linux; + &windows;&nbsp;95: (ld. <xref linkend="ch3"/>)</para>
</sect1>
<sect1 id="sources">
<title>Egyéb hasznos helyek</title>
<para>Számtalan <ulink
url="http://www.linuxresources.com/LDP/HOWTO/HOWTO-INDEX.html">&linux;
hogyan</ulink> foglalkozik az egy merevlemezre telepíthető
operációs rendszerek
problémájával.</para>
<para>A <ulink
url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+DOS+Win95+OS2.html">&linux;+DOS+Win95+OS2
mini-hogyan</ulink> az &os2; boot managerével kapcsolatosan
nyújt némi segítséget, valamint a <ulink
url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+FreeBSD.html">&linux;+&os;
mini-hogyan</ulink> is érdekes olvasmány lehet. A <ulink
url="http://www.in.net/~jkatz/win95/Linux-HOWTO.html">&linux;-hogyan</ulink>
is fontos információkat tartalmazhat.</para>
<para>A <ulink
url="http://www.tburke.net/info/ntldr/ntldr_hacking_guide.htm">&windowsnt;
Loader Hacking Guide</ulink>-ban sok érdekesség
megtalálható a &windowsnt;, &windows;&nbsp;95 és DOS
más operációs rendszerekkel együtt
történő használatáról.</para>
<para>Hale Landis <quote>Hogyan is működik?</quote> c.
leírása is rengeteg hasznos apróságot
árul el a különfél lemez
geometriákról és a rendszerindítással
kapcsolatos egyéb tudnivalókról. Ezt
<ulink url="ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip">itt</ulink>
találhatjuk meg.</para>
<para>Végezetül, erősen javallott tüzetesen
átnézni a &os; rendszermag
rendszerindításáról szóló
dokumentációját is, amely megtalálható
a rendszermag forrásában (alapértelmezés
szerint a <ulink
url="file://localhost/usr/src/sys/i386/boot/biosboot/README.386BSD">/usr/src/sys/i386/boot/biosboot/README.386BSD</ulink>
helyre kerül).</para>
</sect1>
<sect1>
<title>Technikai részletek</title>
<para><emphasis>(Köszönet érte Randall Hoppernek
<email>rhh@ct.picker.com</email>)</emphasis></para>
<para>Ebben a szakaszban megpróbálunk kellő
mennyiségű alapvető ismeretet átadni a
használatban levő merevlemezekről, valamint ezen lemezek
rendszerindítási folyamatáról, elegendőt
ahhoz, hogy le tudjuk küzdeni azokat a leggyakoribb
problémákat, amelyek több operációs
rendszer indítása során leselkednek ránk.
Teljesen a kezdetektől indul, ezért javasolt egészen
addig a pontig ugrani az olvasásban, ahol már ismeretlen
dolgok is kezdenek feltűnni.</para>
<sect2>
<title>Amit tudni érdemes a lemezekről</title>
<para>Három alapvető jellemző írja le a
merevlemezen található adatok pontos helyét:
cilinder, fej, szektor. Igazából nem teljesen
lényeges tudni, hogy ezek milyen viszonyban is állnak
egymással, kivéve annyit, hogy ezek együttesen
azonosítják be fizikailag a lemezen
található adatokat.</para>
<para>Egy merevlemeznek van adott számú cilindere, feje
és szektora az egyes cilinder-fej párosok mentén
(amelyet egyébként sávnak is neveznek). Ezek az
információk adják meg együttesen a merevlemez
<quote>fizikai geometriáját</quote>.
Általában 512 byte található
szektoronként valamint 63 szektor fejenként, azonban a
cilinderek és a fejek száma jelentősen
változik lemezenként. Ezért a merevlemezen
maximálisan tárolható adatok
mennyiségét a következőképpen lehet
kiszámítani ezek ismeretében:</para>
<informalexample><para>(a cilinderek száma) &times; (a fejek
száma) &times; (63 szektor/sáv) &times; (512
byte/szektor)</para></informalexample>
<para>Például, ez egy 1,6 gigabyte-os Western Digial
AC31600 EIDA merevlemez esetén:</para>
<informalexample><para>(3148 cilinder) &times; (16 fej) &times;
(63 szektor/sáv) &times; (512
byte/szektor)</para></informalexample>
<para>amely 1 624 670 208 byte-nak felel meg, ami pedig
nagyjából 1,6 gigabyte.</para>
<para>Az egyes merevlemezek fizikai geometriáját (a
cilinderek, fejek és a sávonkénti szektorok
számát) az ATAID és az Interneten
megtalálható egyéb hasonló programokkal
lehet lekérdezni. De valószínűleg
magán a merevlemezen is megtalálható ez az adat.
Azonban nem árt óvatosnak lennünk: ha a BIOS-ban
LBA-t állítottunk be (ld. <xref linkend="limits"/>),
az említett programok egyikét sem tudjuk
használni. Ezért sem képes sok más program
(pl. az <filename>MSD.EXE</filename> vagy a &os; fdisk)
megállapítani a fizikai lemez geometriát; helyette
az <firstterm>átértelmezett geometriát</firstterm>
(a LBA-ból származó virtuális
azámadatokat) adják vissza. Erről még
beszélni fogunk.</para>
<para>Még egy apróság ezzel kapcsolatban. A 3
szám &mdash; nevezetesen a cilinderek, a fejek és a
szektorok sávonkénti száma &mdash;
ismeretében képesek vagyunk betájolni egy
konkrét abszolút szektort (vagyis egy 512 byte-os
adatblokkot) a lemezünkön. A cilindereket és fejeket
0-tól, míg a szektorokat 1-től szokták
számozni.</para>
<para>Azok számára, akik még jobban el akarnak
mélyedni a technikai részletekben, a lemezek
geometriájában, a boot szektorok és BIOS-ok stb.
titkaiban, mindent megtalálhatnak róluk az Interneten.
Keressenek rá bátran a Lycos, Yahoo stb.
szolgáltatásokban a <literal>boot sector</literal> vagy
<literal>master boot record</literal> szavakra. A sok hasznos ismeret
között esetleg találkozni fogunk Hale Landis
<citetitle>Hogyan is működik?</citetitle> c.
leírásgyűjteményével is. Ezzel
kapcsolatban ld. a <xref linkend="sources"/>t.</para>
<para>Rendben, ennyi elég is lesz a
terminológiáról. Beszéljük a
bootolásról!</para>
</sect2>
<sect2 id="booting">
<title>A rendszerindítás folyamata</title>
<para>A merevlemez első szektorában (azaz a 0. cilinder, 0.
fej, 1. szektor) lakozik a Master Boot Record (MBR). Ez tartalmazza
lényegében a teljes lemez térképét.
Legfeljebb 4 <firstterm>partíciót</firstterm>
képes tárolni, amelyek mindegyike a lemez egy-egy
folytonos darabkája. A &os; ezeket a partíciókat
egyébként <firstterm>slice-oknak</firstterm> hívja
annak érdekében, hogy elkerülje a saját
partícióival történő
összetévesztésüket, habár mi most nem
így fogunk tenni. Minden egyes partícióra
telepíthető egy-egy operációs rendszer
is.</para>
<para>Az MBR-ben található összes
partíciós bejegyzésnek van egy ún.
<firstterm>partíció
azonosítója</firstterm>, egy <firstterm>kezdő
cilinder/fej/szektor értéke</firstterm> és egy
<firstterm>befejező cilinder/fej/szektor
értéke</firstterm>. A partíció
azonosítója megadja, hogy az adott partíció
milyen típusú (milyen operációs rendszer
használja), a kezdő/befejező értéke
pedig azt, hol található. A <xref linkend="tbl-pid"/>ban
a teljesség igénye nélkül felsoroltunk
néhány ismertebb azonosítót.</para>
<table id="tbl-pid">
<title>Partíció azonosítók</title>
<tgroup cols="2">
<thead>
<row>
<entry>Az. (hex)</entry>
<entry>Leírás</entry>
</row>
</thead>
<tbody>
<row>
<entry>01</entry>
<entry>Elsődleges DOS12 (12 bites FAT)</entry>
</row>
<row>
<entry>04</entry>
<entry>Elsődleges DOS16 (16 bites FAT)</entry>
</row>
<row>
<entry>05</entry>
<entry>Kiterjesztett DOS</entry>
</row>
<row>
<entry>06</entry>
<entry>Elsődleges nagy DOS (&gt; 32MB)</entry>
</row>
<row>
<entry>0A</entry>
<entry>&os2;</entry>
</row>
<row>
<entry>83</entry>
<entry>&linux; (EXT2FS)</entry>
</row>
<row>
<entry>A5</entry>
<entry>&os;, NetBSD, 386BSD (UFS)</entry>
</row>
</tbody>
</tgroup>
</table>
<para>Megjegyezzük, hogy nem mindegyik partíció
indítható (ilyen pl. a kiterjesztett DOS). Egyesek igen
&mdash; mások pedig nem. Amitől egy partíció
bootolhatóvá válik, az a
<firstterm>partíció boot szektora</firstterm>, amely az
egyes partíciók elején
található.</para>
<para>Amikor beállítjuk a kedvenc boot managerünket,
az tulajdonképpen átnézi az összes merevlemez
MBR-jeinek partíciós táblájában
található bejegyzéseket és
lehetővé teszi számunkra, hogy elnevezgessük
őket. Majd amikor elindítjuk a
számítógépet, a boot manager az
elsőként próbált merevlemez Master Boot
Recordjában elhelyezett speciális program
segítségével életre kel. Felkeresi
a választásunknak megfelelő partíciót
az MBR partíciós táblájában,
és felhasználva az így megismert kezdő
cilinder/fej/szektor adatokat, betölti az adott
partíció boot szektorát, majd átadja neki a
vezérlést. A partíció boot szektora ezek
után már elegendő információt
tartalmaz a rajta levő operációs rendszer
indításához.</para>
<para>Egyetlen fontos tudnivalót nem említettünk meg
még: minden merevlemezen található MBR. Azonban
ezek közül csak az tekinthető fontosnak, amely a BIOS
által elsőként próbált lemezen
található. Ha csak IDE csatolós merevlemezeink
vannak, ez általában az első IDE lemez (pl. az
elsődleges lemez az első vezérlőn). Ugyanez a
helyzet a csak SCSI-t tartalmazó rendszerekben. Ha viszont van
IDE és SCSI merevlemezünk is, a BIOS
általában az IDE lemezeket próbálja
először elindítani, így az elsőként
elindított lemez az első IDE lemez. A boot managert
tehát az elsőként elinduló merevlemez
MBR-jébe kell elhelyeznünk a fentiekben leírtak
szerint.</para>
</sect2>
<sect2 id="limits">
<title>A rendszerindítás korlátai és
veszélyei</title>
<para>Most pedig következzen mindaz, amire nagyon oda kell
figyelnünk.</para>
<sect3>
<title>A rettegett 1024 cilinderes korlát és hogyan
segít ezen az LBA</title>
<para>A bootolás folyamatának első
része a BIOS-on keresztül megy végbe (ha
még nem ismernénk: a BIOS az az alaplapon
található chip, amely a
számítógép
indításához nélkülözhetetlen
rutinokat tárolja). Mint olyan, a folyamat első
része tehát a BIOS interfészének
korlátozásaitól függ.</para>
<para>Ezen időtartam alatt a BIOS által nyújtott
interfészt használjuk a merevlemez
olvasására (13H megszakítás, 2-es
funkció), amely 10 bitet használ a cilinderek, 8 bitet
a fejek és 6 bitet a szektorok
számozására. Ezzel lekorlátozza
használóját (tehát az MBR-ből
induló boot managereket és a boot szektorokban
található betöltőket) az
alábbiakra:</para>
<itemizedlist>
<listitem>
<para>legfejlebb 1024 cilinderre</para>
</listitem>
<listitem>
<para>legfejlebb 256 fejre</para>
</listitem>
<listitem>
<para>legfejlebb 64 szektorra sávonként (ami
ténylegesen 63, mivel a <literal>0.</literal>
nem használható)</para>
</listitem>
</itemizedlist>
<para>Mostanában azonban a nagyobb merevlemezeknek tengernyi
cilinderük van, de nem túl sok fejük, ezért
ezek a lemezek szinte kivétel nélkül
átlépik az 1024 cilinderes határt. Ha
vesszük ezt a tényt és összevetjük a
BIOS által kínált interfésszel,
rájöhetünk, hogy nem bootolhatunk akárhonnan
a lemezről. A rendszerindító kódnak
(tehát a boot managernek és az összes
indítható partícióban
található betöltőnek) az 1024. cilinder alatt
kell lennie. Tényekre fordítva a szót, ha van
egy átlagos merevlemezünk, aminek 16 feje van, ez
nagyjából:</para>
<informalexample><para>1024 cilinder/lemez &times; 16 fej/lemez
&times; 63 szektor/(cilinder - fej) &times; 512
byte/szektor,</para></informalexample>
<para>ami megfelel a sokszor emlegetett 528 MB-os
határnak.</para>
<para>Itt jön a képbe a BIOS LBA (Logical Block
Addressing). Ennek segítségével ugyanis a
BIOS-hívások használója képes
hozzáférni az 1024. feletti fizikai cilinderekhez is a
BIOS-on keresztül, méghozzá a cilinderek
átdefiniálásával. Vagyis
újraértelmezi a cilinderek és a fejek
számát, és ezzel olyan képzetet ad,
mintha a merevlemeznek kevesebb cilindere de több feje lenne,
mint a valóságban. Másképp fogalmazva,
kihasználja azt a helyzetet, hogy a modern merevlemezekben
viszonylag kevés fej és sok cilinder
található, ezért eltolja a kettő
között nyugvó osztást, aminek
köszönhetően mind a két érték az
imént említett határok (1024 cilinder, 256 fej)
alatt tud maradni.</para>
<para>A BIOS LBA használatával a merevlemezek ezen
korlátozása virtuálisan el is tűnik (nos,
valójában csak 8 gigabyte-nyival arrébb
kerül). Ha LBA-t támogató BIOS-unk van, akkor a
&os;-t és minden más operációs
rendszert bárhova pakolhatunk, hiszen így nem fogunk az
1024 cilinderes korlátba ütközni.</para>
<para>Az előbb példaként felhozott 1,6 gigabyte-os
Western Digital esetén tehát a fizikai
geometria:</para>
<informalexample><para>(3148 cilinder, 16 fej, 63 szektor/sáv,
512 byte/szektor)</para></informalexample>
<para>Azonban a BIOS LBA ezt így fordítja
át:</para>
<informalexample><para>(787 cilinder, 64 fej, 63 szektor/sáv,
512 byte/szektor),</para></informalexample>
<para>ami ugyanazt a tényleges lemezméretet
eredményezi, azonban a cilinder- és fejadatok a
BIOS-hívások által kezelhető
tartományba esnek. (Mellékesen megjegyzem, hogy nekem
pont egy &linux; és egy &os; partícióm van az
egyik merevlemezemen, éppen az 1024. cilinder felett,
és mind a kettő remekül bootol, hála az
LBA-nak).</para>
</sect3>
<sect3>
<title>Boot managerek és a lemez kiosztása</title>
<para> Egy másik fontos dolog, amire figyelnünk kell a boot
managerek telepítése során, az éppen a
boot managernek foglalt hely a lemezen. A legjobb erre már
előre gondolni, és ezzel elkerüljük egy vagy
több operációs rendszerünk
újratelepítését.</para>
<para>Ha nyomonkövettük a Master Boot Recordról (avagy
hol is található az MBR), a partíciók
boot szektoráról és a
rendszerindítási folyamatról szóló
<xref linkend="booting"/>t, felmerülhet bennünk a
kérdés, hogy a merevlemezükön hova is fog
kerülni maga a boot manager. Nos, egyes boot managerek
kellően kis méretűek ahhoz, hogy teljes
egészében elférjenek a Master Boot Recordban
(0. cilinder, 0. fej, 1. szektor), a partíciós
tábla mellett. Másoknak ellenben valamivel több
helyre van szüksége és tulajdonképpen a 0.
cilinder 0. fejének sávjában nyúlnak
túl az MBR-en néhány szektornyival, mivel azok
általában szabadon maradnak&hellip;
általában.</para>
<para>És itt jön a csel! Egyes operációs
rendszerek (köztük a &os; is) megengedik, hogy a
partíciójuk akár közvetlenül a Master
Boot Record után kezdődjön a 0. cilinder 0.
fejének 2. szektorában. Tulajdonképpen, ha
a &os; telepítőjének egy olyan lemezt adunk meg,
amelynek az eleje vagy a teljes egésze
éppenséggel üres, a &os;
partícióját alapértelmezés szerint
közvetlenül ide rakja (legalább is így tette,
amikor megpróbáltam telepíteni). Ezután
szépen felrakjuk a boot managert, és ha az
éppenséggel hajlamos elfoglalni az MBR után
következő néhány szektort, akkor ezzel
együtt felül is írja az első
partíció adatait. A &os; esetében így
felülírja a lemezcímkét, amitől a &os;
partíció ezáltal bootolhatatlanná
válik.</para>
<para>Ha egyszerűen el akarjuk kerülni ezt a
problémát (és megadni az esélyt
más, kevésbé rugalmas boot managerek
számára), akkor hagyjuk szabadon a lemezen
található első sávot. Vagyis ne
tegyünk semmilyen partíciót a 0. cilinder, 0. fej,
2. szektorától kezdődően egészen a 0.
cilinder, 0. fej 63. szektoráig, hanem helyezzük azt a
0. cilinder 1. fejének 1. szektorára. Ugyan nem
mernék rá megesküdni, de ha létrehozunk egy
DOS partíciót a lemez elején, a DOS
alapértelmezés szerint ezt a területet szabadon
hagyja (ezért is gondolja úgy néhány boot
manager, hogy szabad). Ezt inkább magam szeretem
csinálni, ezért létrehozok egy 1 megás
DOS partíciót a lemez elején, mivel ezzel
ráadásul meg tudom akadályozni, hogy
elsőleges DOS meghajtónevek felcserélődjenek
egy újrapartícionálást
követően.</para>
<para>Hivatkozásképpen, a következő boot
managerek használják a Master Boot Recordot az adataik
és kódjuk tárolására:</para>
<itemizedlist>
<listitem>
<para>OS-BS 1.35</para>
</listitem>
<listitem>
<para>Boot Easy</para>
</listitem>
<listitem>
<para>LILO</para>
</listitem>
</itemizedlist>
<para>Ezek a boot managerek használnak további
szektorokat a Master Boot Record után:</para>
<itemizedlist>
<listitem>
<para>OS-BS 2.0 Beta 8 (2-5. szektorok)</para>
</listitem>
<listitem>
<para>Az &os2; boot managere</para>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Mit tegyünk, ha nem indul el a rendszer a
számítógépünkön?</title>
<para>Egyes esetekben előfordulhat, hogy a boot managerek
telepítése során az MBR-t olyan állapotba
sikerül hozni, ahonnan a
számítógépünk nem képes
elindulni. Ugyan nem valószínű, de
megtörténhet, amikor ismételten használjuk
az FDISK-et egy már meglevő boot manager alatt.</para>
<para>Ha van a lemezen egy bootolható DOS
partíció, akkor indítsuk el azt egy
DOS-os rendszerlemezről, és írjuk be:</para>
<informalexample>
<screen>A:\> <userinput>FDISK /MBR</userinput></screen>
</informalexample>
<para>Ennek segítségével vissza tudunk rakni egy
egyszerű DOS rendszerbetöltő kódot az MBR-be,
ami után be tudjuk tölteni a DOS-t (de csak a DOS-t)
a merevlemezről. Másik megoldás lehet, hogy
simán újra felrakjuk a boot managerünket egy
rendszerindító lemezről.</para>
</sect3>
</sect2>
</sect1>
</article>

View file

@ -1,28 +0,0 @@
# $FreeBSD$
#
# Article: FreeBSD Version Guide
#
# %SOURCE% en_US.ISO8859-1/articles/version-guide/Makefile
# %SRCID% 1.3
#
#
# Tidy messes up iso-8859-2 characters
#
NO_TIDY= yes
MAINTAINER= doc@FreeBSD.org
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -1,525 +0,0 @@
<?xml version="1.0" encoding="iso-8859-2" standalone="no"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V4.2-Based Extension//EN"
"../../../share/sgml/freebsd42.dtd" [
<!ENTITY % entities PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Entity Set//HU" "../../share/sgml/entities.ent">
%entities;
]>
<!-- The FreeBSD Hungarian Documentation Project
Translated by: PALI, Gabor <pgj@FreeBSD.org>
%SOURCE% en_US.ISO8859-1/articles/version-guide/article.sgml
%SRCID% 1.15
-->
<article lang="hu">
<title>Válasszuk ki a nekünk igazán megfelelő &os;
verziót!</title>
<articleinfo>
<authorgroup>
<author>
<surname>A &os; Dokumentációs Projekt</surname>
</author>
</authorgroup>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
</legalnotice>
<copyright>
<year>2005</year>
<holder>A &os; Dokumentációs Projekt</holder>
</copyright>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
<abstract>
<para>Ön a &os; telepítését választotta.
Üdvözöljük! Ezt a leírást annak
szellemében készítettük, hogy
segítsünk eligazodni a telepíthető
verziók között.</para>
<para><emphasis>Fordította: Páli Gábor,
utolsó ellenőrzés:
2010.11.28.</emphasis></para>
</abstract>
</articleinfo>
<sect1 id="background">
<title>Háttér</title>
<para>A leginkább megfelelő verzió
kiválasztásához fontos megértenünk
néhány alapvető fogalmat a &os; fejlesztési
modelljével és az ún.
Release Engineering (<literal>RE</literal>,
<quote>kiadásépítés</quote>)
folyamatával kapcsolatosan.</para>
<para>A &os;-t nagyrészt független önkéntesek
hatalmas csoportja fejleszti. A rendszermag, a legalapvetőbb
függvénykönyvtárak, valamint a hozzájuk
tartozó segédprogramok forrásait egy
<firstterm>verziókövető rendszerben</firstterm>
tárolják, amely bárki által és
bármikor tetszőlegesen letölthető. Ettől
függetlenül ezek lefordított változatai
(<literal>binárisai</literal>) is rendszeresen
elérhetőek. Néhány ilyen binárist
alapos és széleskörű tesztelési
folyamatnak vetnek alá, majd
<firstterm>kiadásnak</firstterm> címkézik fel
őket.</para>
<sect2 id="releases">
<title>Kiadások</title>
<para>A <literal>kiadások</literal> (release)
általában rendelkeznek egy
<firstterm>főverziószámmal</firstterm> és
egy <firstterm>alverziószámmal</firstterm>.</para>
<itemizedlist>
<listitem>
<para>A főverziószámok feladata, hogy jelezze az
újabb, nagyobb változtatásokat a rendszerben.
Ilyenkor természetesen elkerülhetetlen, hogy ennek
következtében komolyabb átszervezéseken
menjen át a &os;, vagy éppen a régebbi,
már hasztalannak tekintett részei eltűnjenek.
Emiatt gyakran még a korábbi főbb
kiadásokkal kapcsolatban is elveszhet bizonyos
mértékű kompatibilitás.</para>
</listitem>
<listitem>
<para>Az alverziószámok jelzik a
megbízhatóságot és a
teljesítményt érintő kisebb
hibajavításokat. Ebben az esetben mind a
forráskód-, mind pedig a bináris szintű
kompatibilitás megtartása egyik elsődleges
feladatunk. Alkalmanként az alverziókba is
kerülhetnek újítások, de csak akkor, ha
ezek nem fenyegetik a velük szemben kitűzött
összes többi célt.</para>
</listitem>
</itemizedlist>
<para>Azonban sose szabad elfelejtenünk, hogy egy <quote>kiadott
verzió</quote> nem több, mint a forrásról egy
adott időben és egy adott néven
(<emphasis>címkével</emphasis> ellátott)
készített pillanatfelvétel.
(Például az 5.4-es kiadáshoz a
kiadásépítők a
<literal>RELENG_5_4_0_RELEASE</literal> címkét
tették.) A fejlesztés a <literal>HEAD</literal>
néven ismert címkével azonban mindig halad
tovább.</para>
</sect2>
<sect2 id="branches">
<title>Fejlesztési ágak</title>
<para>Minden kiadás alkalmával létrehoznak egy
<firstterm>fejlesztési ágat</firstterm>, mint mondjuk a
<literal>RELENG_5_4</literal>. Habár a
<literal>RELENG_5_4_0_RELEASE</literal> címkével
ellátott források már nem fognak a
továbbiakban változni, a <literal>RELENG_5_4</literal>
címkével rendelkezők ellenben még igen,
méghozzá a <literal>HEAD</literal> ágból
származó biztonsági vagy egyéb
javítások, esetleg kisebb változtatások
nyomán.</para>
<para>Egy-egy főbb kiadáshoz még egy másik
címkét is létrehoznak, mint mondjuk a
<literal>RELENG_5</literal>. A biztonsági és
egyéb javításokon túl más
módosítások is áthozhatóak a
<literal>HEAD</literal> ágból, így
tulajdonképpen ez lesz az aktív ág, amikor a
következő kiadást készítik
elő az adott vonalban.</para>
</sect2>
<sect2 id="stable-vs-current">
<title><firstterm>STABLE</firstterm> vagy
<firstterm>CURRENT</firstterm>?</title>
<para>Minden egyes nagyobb kiadás életciklusában
létrejön még egy további fejlesztési
ág, amelyet <literal>STABLE</literal>-nek
(megbízhatónak) neveznek. Ezzel jelzi a &os; Projekt,
hogy véleménye szerint az adott ágban
szereplő módosítások minősége
elegendő a szélesebb körű használathoz.
Azokat az ágakat pedig, amelyeknek további
tesztelésre van szükségük a komolyabb
használathoz, <literal>CURRENT</literal>-nek
(aktuálisnak) nevezik.</para>
<note><para>A &os; Projekt nem tudja garantálni, hogy
<emphasis>stable</emphasis>-ként szállított
szoftverek elegendőek egy telepítéshez. Ezt
mindenkinek magának kell eldöntenie. Nem szabad
elfelejteni, hogy ez a projekt elsősorban
önkéntesekből áll és nem képes a
működésre semminemű szavatosságot
vállalni.</para></note>
</sect2>
<sect2 id="ports-vs-packages">
<title><firstterm>Portok</firstterm> vagy
<firstterm>csomagok</firstterm>?</title>
<para>Az említett állományokon kívül a
&os; még több ezernyi, külső fejlesztők
által készített alkalmazásokat is
támogat. (Ilyenek a különböző
ablakkezelő rendszerek, böngészők, levelező
kliensek, irodai programcsomagok, és így tovább.)
Általánosságban véve nem a projekt maga
fejleszti ezeket a szoftvereket, csupán egy keretrendszert
biztosít a telepítésükhöz (amelyet
<firstterm>Ports Collection</firstterm>-nek
(<quote>portgyűjtemények</quote>) neveznek).
Attól függően, ahogy ezt a licenszelésük
megengedi, ezek az alkalmazások telepíthetőek
forrásból (ezeket nevezik
<emphasis>portoknak</emphasis>), vagy előre lefordított
binárisokból (ezeket nevezik
<emphasis>csomagoknak</emphasis>).</para>
</sect2>
</sect1>
<sect1 id="past-schedules">
<title>Ahogy eddig ütemeztük a kiadásokat</title>
<para>A &os;&nbsp;5.X verziójának fejlesztése
és kiadása során sok-sok olyan tapasztalatot
szereztünk, amelyek csak utólag váltak
világossá számunkra. Az 5.X-es vonal
célkitűzései meglehetősen agresszívek
voltak és magukban foglalták a
következőket:</para>
<itemizedlist>
<listitem>
<para>Az SMP (Symmetric MultiProcessing) rendszerek
támogatása</para>
</listitem>
<listitem>
<para>A teljesítmény növelése a kernelen
belüli erőforrás-kiosztás egy új
stratégia szerinti átdolgozásával</para>
</listitem>
<listitem>
<para>Számos új processzor architektúra
támogatása</para>
</listitem>
<listitem>
<para>Egy új szálkezelési modell
bevezetése</para>
</listitem>
<listitem>
<para>Egy új ütemező bevezetése</para>
</listitem>
<listitem>
<para>Új technológiák, mint például
az energiagazdálkodás, támogatása
(különösen laptopok esetén); és ami a
legfontosabb:</para>
</listitem>
<listitem>
<para>Addig nem tekintjük ezt a vonalt
<literal>STABLE</literal>-nek, amíg az imént felsorolt
feladatok be nem fejeződnek.</para>
</listitem>
</itemizedlist>
<para>Ez egy olyan helyzet kialakulásához vezetett, ahol
évek teltek el a 4.X vonal <literal>STABLE</literal> és az
5.X vonal <literal>STABLE</literal> kiadásai között. Ez
magával hozott néhány tényleges
kellemetlenséget:</para>
<itemizedlist>
<listitem>
<para>Az egyszerre kivitelezendő újításokhoz
kapcsolódó módosítások nagy
száma jelentős mértékben
megnehezítette az egyes módosítások
elkülönítését és
beolvasztását a <literal>STABLE</literal>
ágba.</para>
</listitem>
<listitem>
<para>Ez pedig azt jelentette, hogy azok a felhasználók,
akiknek igazán szüksége volt bizonyos
újításokra (például, hogy
képesek legyenek futattni a rendszer egy modern hardveren),
kényszerűen átálltak (mondjuk) a
&os;&nbsp;5.2.1-es verziójára, annak ellenére,
hogy az kifejezetten egy fejlesztői kiadás volt,
és hogy <literal>CURRENT</literal> kiadás
lévén nem felelt meg teljes egészében
minden igényüknek.</para>
</listitem>
<listitem>
<para>A beolvasztások során a fejlesztők néha
olyan helyzetbe kerültek, ahol olyan verzión kellett az
újításaikat támogatniuk, amelyeket nem
elsődleges fejlesztői platformként
használtak.</para>
</listitem>
<listitem>
<para>A késés továbbá azt jelentette, hogy
mire az 5.3 végre <literal>STABLE</literal> szintű
kiadássá válhatott, az időközben
felgyülemlett módosítások terhe
kínszenvedéssé tette a frissítési
folyamatot.</para>
</listitem>
</itemizedlist>
<para>Úgy szólván senki sem volt elégedett
ezzel az eredménnyel.</para>
<para>A következőket tanultuk mindezekből:</para>
<itemizedlist>
<listitem>
<para>A főbb kiadásoknak kevesebb
újítást kell tartalmazniuk és gyakrabban
kell megjelenniük.</para>
</listitem>
<listitem>
<para>A lehető legjobban el kell szigetelni
egymástól a különböző
újításokhoz kapcsolódó
módosításokat. (Ez egyben arra is utal, hogy
bizonyos fejlesztéseket nem az aktív forrásokon
belül végezni, és majd csak akkor beolvasztani
őket, ha már nem veszélyeztetik egyik
párhuzamos fejlesztést sem.)</para>
</listitem>
<listitem>
<para>A főbb kiadások határidejét
inkább időben kell megszabni, nem pedig az
újítások mértékében. Ha az
egyes újítások nem készülnek el
időre, akkor ki kell őket kapcsolni és meghagyni egy
későbbi kiadásra.</para>
</listitem>
</itemizedlist>
<para>Kevesebb újítással és gyakoribb
megjelenéssel remélhetőleg csökkeni fog az egyes
módosítások beolvasztásához
szükséges idő a <literal>HEAD</literal>
ágból a legfrissebb <literal>STABLE</literal> ágba
(és ezáltal nem csak egyetlen fejlesztési vonalban
maradnak támogathatók). Továbbá, mivel ezek
az módosítások kellőképpen elszigeltek
egymástól, az integrálás során
keletkező hibák kockázata is csökken.</para>
<para>Sőt, az időben megkötött határidőknek
köszönhetően végre könnyebben tervezhetnek
előre a felhasználók, a külső
alkalmazások fejlesztői és maguk a &os;
fejlesztői is egyaránt.</para>
</sect1>
<sect1 id="future-goals">
<title>Ahogyan majd szeretnénk ütemezni a
kiadásokat</title>
<para>Íme a Projekt jelenlegi céljai az
ütemezésben:</para>
<itemizedlist>
<listitem>
<para>Minden 18 hónapban új főbb kiadás
megjelentetése;</para>
</listitem>
<listitem>
<para>Minden 4 hónapban új kisebb kiadás
megjelentetése;</para>
</listitem>
<listitem>
<para>Minden főbb kiadás legfrissebb
kiadásához előkészített csomagokat
nyújtani;</para>
</listitem>
<listitem>
<para>Minden főbb kiadás legutóbbi
néhány kiadásához biztonsági
frissítéseket és kritikus
hibajavításokat (<firstterm>biztonsági
fejlesztői ágak</firstterm>) nyújtani;</para>
</listitem>
</itemizedlist>
<para>Tekintettel a telepíthető verziók
kombinációjának nagy számára, nem
lehet minden egyes verziót korlátlanul támogatni;
ezt részben a rendelkezésre álló gépi
erőforrások korlátozzák, de leginkább a
projektben résztvevő önkéntesek által
nyújtott segítség mennyisége.</para>
<para>Az érdeklődők figyelmébe ajánljuk
továbbá:</para>
<variablelist>
<varlistentry>
<term>
<ulink
url="&url.base;/releng/index.html#schedule"></ulink></term>
<listitem>
<para>The Release Engineering Schedule</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<ulink
url="&url.base;/security/security.html#supported-branches"></ulink></term>
<listitem>
<para>The Security Branch Schedule</para>
</listitem>
</varlistentry>
</variablelist>
<para>Az említett dokumentumok még nagyobb
mélységben részletezik a tárgyalt
hátteret, és feltárják azokat folyamatokat,
amelyek a támogatott fejlesztői ágakat és azok
élettartalmát illető döntéseket
befolyásolják.</para>
</sect1>
<sect1 id="decision-points">
<title>Hogyan befolyásolják ezek a tényezők
a döntésünket?</title>
<para>Az alábbi kérdések megválaszolása
határozhatja meg a döntést a megfelelő
verzió kiválasztásában:</para>
<itemizedlist>
<listitem>
<para>Milyen mértékű
megbízhatóságot várunk el a
rendszertől?</para>
</listitem>
<listitem>
<para>Mennyire vagyunk hajlandóak frissíteni a
rendszerünket?</para>
</listitem>
<listitem>
<para>Mennyire gyakran szeretnénk frissíteni a
rendszerünket?</para>
</listitem>
<listitem>
<para>Mennyire fontos számunkra a biztonság?</para>
</listitem>
<listitem>
<para>Forráskódból vagy bináris
állományokból akarunk telepíteni?</para>
</listitem>
<listitem>
<para>Szeretnénk részt venni a &os;
fejlesztésében?</para>
</listitem>
</itemizedlist>
<para>Néhány további vázlatos
útmutatás a döntéshez:</para>
<itemizedlist>
<listitem>
<para>Ha rövid időn belül az elérhető
legnagyobb mértékű
megbízhatóságból szeretnénk
profitálni, viszont nincs lehetőségünk
frissíteni, akkor minden bizonnyal a legfrissebb
<literal>STABLE</literal> jelzésű kiadást lenne
hasznos feltelepítenünk és használnunk.
Biztonsági igényeinknek megfelelően érdemes
követni az adott kiadáshoz megjelenő
javításokat.</para>
</listitem>
<listitem>
<para>Ha rövid időn belül vagy
szükségünk van a legfrissebb
újításokra vagy pedig a biztonsági
javításokra, valamint az időt és
erőforrást sem sajnáljuk a
frissítésre, érdemes a legújabb
<literal>STABLE</literal> ágat követnünk.</para>
</listitem>
<listitem>
<para>Ha nem kívánjuk közvetlenül
élesben használni a rendszert és csak bizonyos
problémák érdekelnek minket, valamint a
következő nagyobb kiadás néhány
hónapon belül megjelenik, valószínűleg
érdemes elgondolkodni annak az ágnak
telepítésén, ezzel is segítve a projektet
a kiadás tesztelésében,
megbízhatóvá tételében és
úgy egyáltalán jobbá tenni a
hosszú távú használatra.</para>
</listitem>
<listitem>
<para>Ha csak forrásból szeretnénk
telepíteni és hibákat keresni az
alaprendszerben, vagy éppen utánajárni az ismert
hibáknak, illetve nyomon követni őket az ezzel
kapcsolatos levelezőlistán, érdemes a
<literal>HEAD</literal> fejlesztési ágat
használnunk.</para>
</listitem>
</itemizedlist>
</sect1>
<sect1 id="conclusion">
<title>Végszó</title>
<para>Reméljük, ez a leírás hasznos
kiindulásnak szolgált a &os; fejlesztési
modelljének megértésében és az
igényeinknek legjobban megfelelő verzió
kiválasztásában!</para>
</sect1>
</article>

View file

@ -1651,22 +1651,6 @@
</answer>
</qandaentry>
<qandaentry>
<question id="multiboot">
<para>A számítógépre lehet
egynél több operációs rendszert is
telepíteni?</para>
</question>
<answer>
<para>Olvassuk el a <quote><ulink
url="&url.articles.multi-os;/index.html">A &os;
telepítése és használata
más operációs rendszerekkel
együtt</ulink></quote> címû cikket.</para>
</answer>
</qandaentry>
<qandaentry>
<question id="windows-coexist">
<para>&windows; mellé is telepíhető
@ -6680,11 +6664,7 @@ kern.sched.name: 4BSD</screen>
mind a két lemezre, így miután
átmásoltuk a régi rendszerünket az
új lemezre, ennek megtartásával ki
tudjuk próbálni az új rendszert. A
<ulink
url="&url.articles.formatting-media.en;/index.html">lemezek formázásáról szóló</ulink>
cikkben olvashatunk ennek pontosabb
részleteirõl.</para>
tudjuk próbálni az új rendszert.</para>
<para>Most, miután sikeresen beállítottuk
az új lemezt, készen állunk az adatok

View file

@ -145,12 +145,6 @@
Hogyan segített a &os; egy nagy latin-amerikai
internetszolgáltatónak.</p>
<p><a
href="&url.articles;/checkpoint/index.html">A Checkpoint VPN-1/Firewall-1 és a &os; IPSec integrációja</a>
(checkpoint)<br/>
Hogyan konfiguráljunk Checkpoint VPN-1/Firewall-1-et a &os;
IPSec implementációjával együtt.</p>
<p><a
href="&url.articles;/committers-guide/index.html">A committerek útmutatója</a>
(committers-guide)<br/>
@ -219,27 +213,6 @@
Néhány tipp, hogyan használjuk ki a CVSup
bonyolultabb funkcióit.</p>
<p><a
href="&url.articles;/dialup-firewall/index.html">Tűzfal létrehozása betárcsázós kapcsolatokhoz &os;-vel</a>
(dialup-firewall) [<a href="&url.articles.hu;/dialup-firewall/index.html">magyarul</a>]<br/>
Hogyan állítsunk be egy tűzfalat a PPP
és az ipfw használatával dinamikusan
kiosztott IP-címek esetén.</p>
<p><a
href="&url.articles;/diskless-x/index.html">Lemez nélküli X szerver használata</a>
(diskless-x)<br/>
Hogyan hozzunk létre lemez nélküli X
szervert.</p>
<p><a
href="&url.articles;/euro/index.html">Az euró szimbólum használata a &os;-ben</a>
(euro)<br/>
Hogyan konfiguráljuk a &os;-t és a hozzá
kapcsolódó alkalmazásokat az euró
szimbólumának
megjelenítéséhez.</p>
<p><a
href="&url.articles;/explaining-bsd/index.html">A BSD bemutatása</a>
(explaining-bsd) [<a href="&url.articles.hu;/explaining-bsd/index.html">magyarul</a>]<br/>
@ -271,14 +244,6 @@
tartozó technológiákról és azok
használatáról.</p>
<p><a
href="&url.articles;/formatting-media/index.html">Adathordozók formázása &os; alatt</a>
(formatting-media)<br/>
Hogyan osszuk fel slice-okra és partíciókra a
fix vagy éppen cserélhető lemezt, és
hogyan formázzuk meg azokat a &os; operációs
rendszerben.</p>
<p><a
href="&url.articles;/freebsd-questions/index.html">Hogyan használjuk hatékonyan a &os;-questions levelezési listát?</a>
(freebsd-questions)<br/>
@ -301,13 +266,6 @@
partíciók létrehozását otthoni
környezetben bemutató leírás.</p>
<p><a
href="&url.articles;/hats/index.html">Munka kitüntetett szerepekkel</a>
(hats)<br/>
A committerek útmutatója, hogyan dolgozzanak
kitüntetett szerepekben, fennhatósággal a &os;
bizonyos területei felett.</p>
<p><a
href="&url.articles;/hubs/index.html">A &os; tükrözése</a>
(hubs)<br/>
@ -367,13 +325,6 @@
Bevezetés az MH e-mail olvasó szoftver
használatába &os; alatt.</p>
<p><a
href="&url.articles;/multi-os/index.html">A &os; telepítése és használata más operációs rendszerekkel együtt</a>
(multi-os) [<a href="&url.articles.hu;/multi-os/index.html">magyarul</a>]<br/>
Hogyan telepítsük a &os;-t más
operációs rendszer mellé, ugyanarra a
számítógépre.</p>
<p><a
href="&url.articles;/nanobsd/index.html">A NanoBSD bemutatása</a>
(nanobsd)<br/>
@ -507,33 +458,6 @@
Solid state lemezeszközök használata a
&os;-ben.</p>
<p><a
href="&url.articles;/storage-devices/index.html">Háttértárak</a>
(storage-devices)<br/>
Részletes információk a
háttértárak
használatáról a &os;-ben, beleértve az
ESDI és SCSI eszközöket, szalagos tárakat
és CD-ROM olvasókat.</p>
<p><a
href="&url.articles;/version-guide/index.html">Válasszuk ki a nekünk igazán megfelelő &os; verziót!</a>
(version-guide) [<a href="&url.articles.hu;/version-guide/index.html">magyarul</a>]<br/>
Hogyan válasszuk ki az igényeinek megfelelő
&os; verziót. Elmagyarázza a kiadások
és a fejlesztési ágak rendszerét,
és leírja a -CURRENT és -STABLE közti
különbségeket, illetve a projekt jelenlegi
fejlesztési ütemezését.</p>
<p><a
href="&url.articles;/vinum/index.html">Rendszerindítás Vinummal: A megbízható szerverek alapja</a>
(vinum)<br/>
Egy remek bevezetés a hibatűrő szerverekről
és egy lépésről-lépésre
haladó útmutató, amely bemutatja, hogyan
hozhatunk létre ilyet Vinummal.</p>
<p><a
href="&url.articles;/vm-design/index.html">A &os; VM alrendszer elemeinek felépítése</a>
(vm-design)<br/>
@ -541,13 +465,6 @@
virtuális memóriát kezelő
alrendszeréről.</p>
<p><a
href="&url.articles;/zip-drive/index.html">Zip meghajtók és a &os;</a>
(zip-drive)<br/>
Hogyan formázzunk, csatlakoztassunk és
használjunk Iomega Zip (SCSI, IDE, vagy párhuzamos)
meghajtókat a &os;-n.</p>
<h2>Egyéb oldalakon</h2>
<p>Számos önálló

Some files were not shown because too many files have changed in this diff Show more