aboutsummaryrefslogtreecommitdiff
path: root/pl_PL.ISO8859-2
diff options
context:
space:
mode:
authorMarc Fonvieille <blackend@FreeBSD.org>2002-09-26 17:51:34 +0000
committerMarc Fonvieille <blackend@FreeBSD.org>2002-09-26 17:51:34 +0000
commitddeb945f3acb6e349d25e54247eb9762249aa4a0 (patch)
treed012e55c152121c1818bf9cae949a4157e3c4f99 /pl_PL.ISO8859-2
parent563ac269557659a784c4d906f2e3555f41a25039 (diff)
Notes
Diffstat (limited to 'pl_PL.ISO8859-2')
-rw-r--r--pl_PL.ISO8859-2/Makefile9
-rw-r--r--pl_PL.ISO8859-2/articles/Makefile9
-rw-r--r--pl_PL.ISO8859-2/articles/Makefile.inc3
-rw-r--r--pl_PL.ISO8859-2/articles/dialup-firewall/Makefile14
-rw-r--r--pl_PL.ISO8859-2/articles/dialup-firewall/article.sgml397
-rw-r--r--pl_PL.ISO8859-2/articles/filtering-bridges/Makefile14
-rw-r--r--pl_PL.ISO8859-2/articles/filtering-bridges/article.sgml418
-rw-r--r--pl_PL.ISO8859-2/articles/new-users/Makefile14
-rw-r--r--pl_PL.ISO8859-2/articles/new-users/article.sgml1145
-rw-r--r--pl_PL.ISO8859-2/share/sgml/authors.ent715
-rw-r--r--pl_PL.ISO8859-2/share/sgml/bookinfo.ent16
-rw-r--r--pl_PL.ISO8859-2/share/sgml/catalog11
-rw-r--r--pl_PL.ISO8859-2/share/sgml/freebsd.dsl274
-rw-r--r--pl_PL.ISO8859-2/share/sgml/legalnotice.sgml47
-rw-r--r--pl_PL.ISO8859-2/share/sgml/mailing-lists.ent218
-rw-r--r--pl_PL.ISO8859-2/share/sgml/newsgroups.ent25
-rw-r--r--pl_PL.ISO8859-2/share/sgml/teams.ent76
17 files changed, 3405 insertions, 0 deletions
diff --git a/pl_PL.ISO8859-2/Makefile b/pl_PL.ISO8859-2/Makefile
new file mode 100644
index 0000000000..c531e8258f
--- /dev/null
+++ b/pl_PL.ISO8859-2/Makefile
@@ -0,0 +1,9 @@
+# $FreeBSD$
+
+SUBDIR = articles
+#SUBDIR+= books
+
+COMPAT_SYMLINK = pl
+
+DOC_PREFIX?= ${.CURDIR}/..
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/pl_PL.ISO8859-2/articles/Makefile b/pl_PL.ISO8859-2/articles/Makefile
new file mode 100644
index 0000000000..062991f2e2
--- /dev/null
+++ b/pl_PL.ISO8859-2/articles/Makefile
@@ -0,0 +1,9 @@
+# $FreeBSD$
+
+SUBDIR =
+SUBDIR+= dialup-firewall
+SUBDIR+= filtering-bridges
+SUBDIR+= new-users
+
+DOC_PREFIX?= ${.CURDIR}/../..
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/pl_PL.ISO8859-2/articles/Makefile.inc b/pl_PL.ISO8859-2/articles/Makefile.inc
new file mode 100644
index 0000000000..813184ed86
--- /dev/null
+++ b/pl_PL.ISO8859-2/articles/Makefile.inc
@@ -0,0 +1,3 @@
+# $FreeBSD$
+
+DESTDIR?= ${DOCDIR}/pl_PL.ISO8859-2/articles/${.CURDIR:T}
diff --git a/pl_PL.ISO8859-2/articles/dialup-firewall/Makefile b/pl_PL.ISO8859-2/articles/dialup-firewall/Makefile
new file mode 100644
index 0000000000..886e21cc9d
--- /dev/null
+++ b/pl_PL.ISO8859-2/articles/dialup-firewall/Makefile
@@ -0,0 +1,14 @@
+# $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"
diff --git a/pl_PL.ISO8859-2/articles/dialup-firewall/article.sgml b/pl_PL.ISO8859-2/articles/dialup-firewall/article.sgml
new file mode 100644
index 0000000000..6a03d0e36e
--- /dev/null
+++ b/pl_PL.ISO8859-2/articles/dialup-firewall/article.sgml
@@ -0,0 +1,397 @@
+<!--
+ The FreeBSD Polish Documentation Project
+
+ $FreeBSD$
+ Original revision: 1.25
+-->
+
+<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN">
+%man;
+]>
+
+<article lang="pl">
+ <articleinfo>
+ <title>Firewall na połączeniu modemowym w FreeBSD</title>
+
+ <authorgroup>
+ <author>
+ <firstname>Marc</firstname>
+ <surname>Silver</surname>
+ <affiliation>
+ <address><email>marcs@draenor.org</email></address>
+ </affiliation>
+ </author>
+ </authorgroup>
+
+ <releaseinfo>$FreeBSD$</releaseinfo>
+
+ <abstract>
+ <para>W niniejszym artykule przedstawiono instrukcję konfiguracji
+ firewalla przy dynamicznie przydzielanym adresie IP, a także
+ przepis na uruchomienie takiego firewalla w FreeBSD, korzystając
+ z IPFW.
+ Artykuł nie zawiera instrukcji konfigurowania połączenia
+ PPP.</para>
+ </abstract>
+ </articleinfo>
+
+ <sect1 id="preface">
+ <title>Wstęp</title>
+
+ <para>Firewall na połączeniu modemowym w FreeBSD</para>
+
+ <para>Niniejszy artykuł opisuje konfigurację firewalla w FreeBSD
+ w przypadku, gdy adres IP przydzielany jest dynamicznie przez
+ dostawcę usług internetowych. Dołożono wszelkich starań, aby
+ artykuł zawierał przydatne informacje i był wolny od błędów,
+ jednakże wszelkie uwagi i sugestie są mile widziane, proszę
+ kierować je do <email>marcs@draenor.org</email>.</para>
+ </sect1>
+
+ <sect1 id="kernel">
+ <title>Opcję jądra</title>
+
+ <para>Na początek będziemy musieli przekompilować jądro. Wiecej
+ informacji na temat kompilowania jądra znaleźć można w <ulink
+ URL="../../books/handbook/kernelconfig.html">części Podręcznika
+ poświęconej konfiguracji jądra</ulink>. Do pliku konfiguracyjnego
+ jądra dopisujemy następujące opcje:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><literal>options IPFIREWALL</literal></term>
+
+ <listitem>
+ <para>Właczenie obsługi firewalla w jądrze.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>options IPFIREWALL_VERBOSE</literal></term>
+
+ <listitem>
+ <para>Wysyłanie informacji o pakietach do logów systemowych.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>options
+ IPFIREWALL_VERBOSE_LIMIT=<replaceable>100</replaceable></literal></term>
+
+ <listitem>
+ <para>Ograniczenie liczby pakietów zapisywanych w logach;
+ dzięki temu plik loga nie zostanie zapchany wieloma
+ powtarzającymi się wpisami. Wartość
+ <replaceable>100</replaceable> jest sensowna, można jednak
+ wstawić inną, odpowiednią dla własnych potrzeb.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>options IPDIVERT</literal></term>
+
+ <listitem>
+ <para>Włączenie gniazd divert.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>Można dopisać jeszcze kilka wierszy
+ <emphasis>opcjonalnych</emphasis>, które zwiększają poziom
+ bezpieczeństwa. Firewall pracuje poprawnie również bez nich,
+ jednakże bardziej ostrożni użytkownicy mogą zechcieć z nich
+ skorzystać.</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><literal>options TCP_DROP_SYNFIN</literal></term>
+
+ <listitem>
+ <para>Ignorowanie pakietów TCP z ustawionymi flagami
+ SYN i FIN. Zapobiega to możliwości identyfikacji stosu TCP/IP
+ przy pomocy narzędzi takich jak nmap, jest to jednak wbrew
+ ustaleniom dokumentu RFC1644. Nie powinno być stosowane,
+ jeśli na maszynie ma działać serwer WWW.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>Po kompilacji jądra nie trzeba od razu przeładowywać systemu.
+ Jeśli wszystko pójdzie zgodnie z planem, wystarczy jedno
+ przeładowanie po ukończeniu konfiguracji firewalla.</para>
+ </sect1>
+
+ <sect1 id="rcconf">
+ <title>Uruchamianie firewalla w
+ <filename>/etc/rc.conf</filename></title>
+
+ <para>Trzeba teraz wprowadzić pewne zmiany w
+ <filename>/etc/rc.conf</filename>, by uwzględniał on firewalla.
+ Dodajemy następujące linijki:</para>
+
+ <programlisting>firewall_enable="YES"
+firewall_script="/etc/firewall/fwrules"
+natd_enable="YES"
+natd_interface="tun0"
+natd_flags="-dynamic"</programlisting>
+
+ <para>Informacje na temat działania powyższych poleceń można
+ znaleźć w <filename>/etc/defaults/rc.conf</filename> oraz
+ &man.rc.conf.5;.</para>
+ </sect1>
+
+ <sect1>
+ <title>Wyłączenie tłumaczenia adresów przez PPP</title>
+
+ <para>Jeżeli wykorzystywane jest tłumaczenie adresów
+ sieciowych
+ wbudowane w PPP, trzeba będzie je wyłączyć. W naszych przykładach
+ tłumaczeniem zajmuje się &man.natd.8;.</para>
+
+ <para>Fragment pliku odpowiedzialny za automatyczne uruchomienie
+ PPP wygląda zapewne tak:</para>
+
+ <programlisting>ppp_enable="YES"
+ppp_mode="auto"
+ppp_nat="YES"
+ppp_profile="<replaceable>profile</replaceable>"</programlisting>
+
+ <para>Jeśli tak właśnie jest, trzeba będzie wyłączyć
+ <literal>ppp_nat</literal> wpisując
+ <literal>ppp_nat="NO"</literal> w
+ <filename>/etc/rc.conf</filename>. Ponadto należy usunąć
+ wpisy <literal>nat enable yes</literal> lub
+ <literal>alias enable yes</literal> w
+ <filename>/etc/ppp/ppp.conf</filename>.</para>
+ </sect1>
+
+ <sect1 id="rules">
+ <title>Reguły firewalla</title>
+
+ <para>Większość pracy mamy już za sobą. Pozostało już tylko
+ ustalenie reguł firewalla, po czym będzie można dokonać
+ przeładowania systemu i powinniśmy otrzymać działającego
+ firewalla. Zdaję sobie sprawę, że zbiór reguł zależy od
+ indywidualnych
+ potrzeb, starałem się jednak przygotować reguły odpowiednie
+ dla większości użytkowników łącz komutowanych. Można je
+ oczywiście dostosować samodzielnie, traktując poniższe reguły
+ jako punkt wyjścia. Zacznijmy od zamkniętego firewalla: z
+ założenia wszystkie pakiety są blokowane, przepuszczać
+ będziemy jedynie to, co jest nam rzeczywiście potrzebne.
+ Reguły powinny najpierw określać, co jest przepuszczane, potem
+ co jest blokowane. Podajemy więc wszystkie reguły
+ przepuszczające, a potem nakazujemy blokować całą resztę.
+ :)</para>
+
+ <para>Stwórzmy teraz katalog <filename
+ class="directory">/etc/firewall</filename>. W nim utwórzmy plik
+ <filename>fwrules</filename>, zgodnie z tym, co napisaliśmy
+ w <filename>rc.conf</filename>. Możemy oczywiście nazwać ten
+ plik jak nam się żywnie podoba, proponowana tu nazwa jest
+ jedną z możliwości.</para>
+
+ <para>Spójrzmy teraz na przykładowy plik firewalla, opatrzony
+ komentarzami.</para>
+
+
+ <programlisting>
+# Reguły firewalla
+# Autor: Marc Silver (marcs@draenor.org)
+# http://draenor.org/ipfw
+#
+
+# Definicja komendy firewalla (jak w /etc/rc.firewall) upraszcza
+# jej wywoływanie i czyni plik bardziej czytelnym.
+fwcmd="/sbin/ipfw"
+
+# Wyczyszczenie aktualnie obowiązujących reguł.
+$fwcmd -f flush
+
+# Przekierowanie wszystkich pakietów przez interfejs tun0.
+$fwcmd add divert natd all from any to any via tun0
+
+# Przepuszczanie danych przesyłanych przez kartę sieciową i lokalnie.
+# Upewnij się, że wpisałeś tu właściwą kartę (w moim przypadku fxp0)
+# zanim przeładujesz system. :)
+$fwcmd add allow ip from any to any via lo0
+$fwcmd add allow ip from any to any via fxp0
+
+# Przepuszczanie wszystkich połączeń nawiązywanych przez nas.
+$fwcmd add allow tcp from any to any out xmit tun0 setup
+
+# Pozwalamy, by połączenia nawiązane mogły pozostać otwarte.
+$fwcmd add allow tcp from any to any via tun0 established
+
+# Zezwolenie na połączenia z zewnątrz z określonymi usługami na
+# naszej maszynie. Przykładowo dopuszczamy połączenia z ssh i apache.
+$fwcmd add allow tcp from any to any 80 setup
+$fwcmd add allow tcp from any to any 22 setup
+
+# Wysyłamy RESET w odpowiedzi na pakiety ident.
+$fwcmd add reset log tcp from any to any 113 in recv tun0
+
+# Pozwalamy na wychodzące zapytania DNS do wybranych serwerów.
+$fwcmd add allow udp from any to <replaceable>x.x.x.x</replaceable> 53 out xmit tun0
+
+# I oczywiście pozwalamy im odpowiedzieć... :)
+$fwcmd add allow udp from <replaceable>x.x.x.x</replaceable> 53 to any in recv tun0
+
+# Dopuszczenie pakietów ICMP (dzięki którym działają ping i traceroute).
+# Można zdecydować się na ich blokowanie, ja jednak myślę, że mi się
+# przydadzą.
+$fwcmd add allow icmp from any to any
+
+# Odrzucenie całej reszty.
+$fwcmd add deny log ip from any to any
+</programlisting>
+
+ <para>Zbudowaliśmy w pełni sprawny firewall zezwalający na połączenia
+ z portami 80 i 22, oraz rejestrujący próby połączenia z czymkolwiek
+ innym. Po przeładowaniu systemu powinien już należycie
+ funkcjonować. Jeżeli jakiekolwiek z podanych tu informacji
+ okażą się błędne, bądź będą powodować problemy, proszę o
+ zawiadomienie emailem. Mile widziane są również pomysły
+ na ulepszenie niniejszej strony.</para>
+ </sect1>
+
+ <sect1>
+ <title>Pytania</title>
+
+ <qandaset>
+ <qandaentry>
+ <question>
+ <para>Dlaczego korzystasz z &man.natd.8; i &man.ipfw.8;, a
+ nie z filtrów wbudowanych w &man.ppp.8;?</para>
+ </question>
+
+ <answer>
+ <para>Mówiąc szczerze, nie ma konkretnego powodu dla którego
+ zdecydowałem się na <command>ipfw</command> i
+ <command>natd</command>, a nie filtrowanie wbudowane w
+ <command>ppp</command>. Dyskusje przeprowadzone z
+ różnymi osobami doprowadziły do stwierdzenia, iż
+ <command>ipfw</command> jest z pewnością bardziej
+ rozbudowany i ma większe możliwości konfiguracji niż
+ filtry <command>ppp</command>, jest jednak trudniejszy
+ w używaniu. Jednym z powodów mojego wyboru jest
+ to, że wolę, by firewall działał na poziomie jądra systemu,
+ a nie programu użytkownika.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question>
+ <para>Otrzymuję komunikat w rodzaju <errorname>limit 100
+ reached on entry 2800</errorname>, po którym w logach
+ nie pojawiają się informacje o zablokowanych pakietach.
+ Czy mój firewall nadal działa?</para>
+ </question>
+
+ <answer>
+ <para>Taki komunikat oznacza jedynie, że osiągnięty został
+ limit rejestrowania reguły. Sama reguła wciąż obowiązuje,
+ nie będzie już jednak rejestrowana, dopóki liczniki
+ rejestrowania nie zostaną wyzerowane; można to zrobić
+ poleceniem <command>ipfw resetlog</command>. Innym
+ rozwiązaniem jest zwiększenie limitu w konfiguracji
+ jądra przy pomocy opcji
+ <option>IPFIREWALL_VERBOSE_LIMIT</option>, tak jak
+ jest to opisane wcześniej. Limit można także ustawić
+ zmieniając wartość net.inet.ip.fw.verbose_limit
+ przy pomocy &man.sysctl.8;.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question>
+ <para>W sieci wewnętrznej korzystam z adresów z puli prywatnej,
+ np. z zakresu 192.168.0.0, czy mogę uzupełnić reguły firewalla
+ wpisem w rodzaju
+ <literal>$fwcmd add deny all from any to
+ 192.168.0.0:255.255.0.0 via tun0</literal> aby uniemożliwić
+ próby połączeń z zewnątrz z lokalnymi maszynami?</para>
+ </question>
+
+ <answer>
+ <para>Nie, ponieważ <emphasis>wszystko</emphasis> co
+ przechodzi przez <devicename>tun0</devicename> podlega
+ tłumaczeniu adresów realizowanemu przez
+ <command>natd</command>.
+ Pakiety przychodzące z zewnątrz trafiają wyłącznie do
+ dynamicznie przydzielonego adresu IP, a
+ <emphasis>nie</emphasis> do sieci wewnętrznej. Zauważmy
+ jednak, że można dodać regułę w rodzaju <literal>$fwcmd
+ add deny all from 192.168.0.4:255.255.0.0 to any
+ via tun0</literal>, która zabroni maszynie w sieci
+ wewnętrznej komunikowania się ze światem przez
+ firewall.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question>
+ <para>Coś musi być nie tak. Postępowałem dokładnie według
+ wskazówek i jestem w kropce.</para>
+ </question>
+
+ <answer>
+ <para>W artykule przyjmujemy, że korzystamy z
+ <emphasis>userland-ppp</emphasis>, reguły obowiązują więc
+ dla interfejsu <devicename>tun0</devicename>, odpowiadającemu
+ pierwszemu połączeniu nawiązanemu przez &man.ppp.8;
+ (zwanemu także <emphasis>user-ppp</emphasis>). Dodatkowym
+ połączeniom odpowiadać będą interfejsy
+ <devicename>tun1</devicename>, <devicename>tun2</devicename>
+ itd. </para>
+
+ <para>W przypadku &man.pppd.8; jest
+ z kolei wykorzystywany
+ interfejs <devicename>ppp0</devicename>, jeśli
+ więc połączenie jest realizowane za pośrednictwem
+ &man.pppd.8;, w miejscu <devicename>tun0</devicename>
+ trzeba wstawić <devicename>ppp0</devicename>. Poniżej
+ przedstawiona jest szybka metoda uwzględnienia tej zmiany
+ w regułach firewalla. Oryginalny plik z regułami
+ zachowywany jest pod nazwą
+ <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>By przekonać się, czy w użyciu jest &man.ppp.8;, czy
+ &man.pppd.8;, można po nawiązaniu połączenia
+ posłużyć się &man.ifconfig.8;. W przypadku połączenia
+ nawiązanego przez &man.pppd.8; zobaczylibyśmy coś
+ w rodzaju (pomijając nieistotne informacje):</para>
+
+ <screen> &prompt.user; <userinput>ifconfig</userinput>
+ <emphasis>(nieistotne...)</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>(nieistotne...)</emphasis>
+ </screen>
+
+ <para>Natomiast gdy nawiązanie połączenia odbyło się za
+ pośrednictwem &man.ppp.8; (<emphasis>user-ppp</emphasis>),
+ ujrzymy coś takiego:</para>
+
+ <screen> &prompt.user; <userinput>ifconfig</userinput>
+ <emphasis>(nieistotne...)</emphasis>
+ ppp0: flags=<replaceable>8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1500</replaceable>
+ <emphasis>(nieistotne...)</emphasis>
+ tun0: flags=<replaceable>8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1524</replaceable>
+ <emphasis>(nieistotne IPv6...)</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>(nieistotne...)</emphasis></screen>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </sect1>
+</article>
diff --git a/pl_PL.ISO8859-2/articles/filtering-bridges/Makefile b/pl_PL.ISO8859-2/articles/filtering-bridges/Makefile
new file mode 100644
index 0000000000..886e21cc9d
--- /dev/null
+++ b/pl_PL.ISO8859-2/articles/filtering-bridges/Makefile
@@ -0,0 +1,14 @@
+# $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"
diff --git a/pl_PL.ISO8859-2/articles/filtering-bridges/article.sgml b/pl_PL.ISO8859-2/articles/filtering-bridges/article.sgml
new file mode 100644
index 0000000000..c58e274ea5
--- /dev/null
+++ b/pl_PL.ISO8859-2/articles/filtering-bridges/article.sgml
@@ -0,0 +1,418 @@
+<!--
+ The FreeBSD Polish Documentation Project
+
+ $FreeBSD$
+ Original revision: 1.12
+-->
+
+<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN">
+%man;
+]>
+
+<article lang="pl">
+ <articleinfo>
+ <title>Mosty filtrujące</title>
+
+ <authorgroup>
+ <author>
+ <firstname>Alex</firstname>
+ <surname>Dupre</surname>
+ <affiliation>
+ <address><email>sysadmin@alexdupre.com</email></address>
+ </affiliation>
+ </author>
+ </authorgroup>
+
+ <releaseinfo>$FreeBSD$</releaseinfo>
+
+ <abstract>
+ <para>Częstokroć zdarza się, że trzeba podzielić jedną sieć fizyczną
+ (np. Ethernet) na dwa oddzielne segmenty, nie tworząc przy tym
+ podsieci, a oba segmenty połączyć ze sobą ruterem. Urządzenie
+ łączące w ten sposób dwie sieci nazywane jest mostem. Komputer z
+ FreeBSD posiadający dwa interfejsy sieciowe może z powodzeniem
+ pracować jako most.</para>
+
+ <para>Zadaniem mostu jest analizowanie adresów <acronym>MAC</acronym>
+ (adresów ethernetowych) należących do urządzeń przyłączonych do obu
+ interefejsów sieciowych, a następnie przekazywaniu danych pomiędzy
+ obiema sieciami tylko wtedy, gdy nadawca i odbiorca należą do
+ innych segmentów. Pod wieloma względami most przypomina przełącznik
+ ethernetowy wyposażony w jedynie dwa porty.</para>
+ </abstract>
+ </articleinfo>
+
+ <sect1 id="filtering-bridges-why">
+ <title>Dlaczego korzysta się z mostów filtrujących?</title>
+
+ <para>Dzięki obniżającym się kosztom szerokopasmowych połączeń
+ internetowych (xDSL), jak również z powodu niewielkiej liczby dostępnych
+ adresów IPv4, coraz częściej zdarza się, że firmy dysponują stałym
+ połączeniem z Internetem, nie posiadając przy tym zbyt wielu adresów IP.
+ W takiej sytuacji przydatne jest stosowanie firewalla filtrującego
+ pakiety wysyłane do Internetu i z niego nadchodzące. Może się jednak
+ zdarzyć, że filtrowania pakietów na poziomie rutera nie da się
+ zrealizować, na przykład ze względu na podział sieci,
+ lub dlatego, że to dostawca usług interentowych jest właścicielem
+ rutera, bądź też sam ruter nie umożliwia takiego rozwiązania. Wtedy
+ właśnie wskazane jest skorzystanie z mostu filtrującego.</para>
+
+ <para>Firewall będący jednocześnie mostem może być wstawiony pomiędzy
+ ruter xDSL a koncentrator/przełącznik ethernetowy. Jego konfiguracja
+ nie wymaga zajmowania się numeracją IP.</para>
+ </sect1>
+
+ <sect1 id="filtering-bridges-how">
+ <title>Instalacja</title>
+
+ <para>W FreeBSD włączenie funkcji mostu nie jest trudnym przedsięwzięciem.
+ Począwszy od wydania 4.5 owe funkcje mogą być dołączone jako moduły, nie
+ trzeba więc przebudowywać jądra, co jest znacznym udogodnieniem.
+ Poniżej opisuję obydwa sposoby.</para>
+
+ <important>
+ <para><emphasis>Nie należy</emphasis> postępować według obu poniższych
+ przepisów: skorzystanie z jednego z nich
+ <emphasis>wyklucza</emphasis> korzystanie z drugiego. Wybór powinien
+ zależeć od własnych potrzeb i możliwości.</para>
+ </important>
+
+ <para>Przed rozpoczęciem należy upewnić się, że dysponujemy przynajmniej
+ dwiema kartami sieciowymi zdolnymi do pracy w trybie pośredniczenia
+ zarówno przy odbiorze, jak i nadawaniu; karty będą wysyłać pakiety
+ opatrzone niekoniecznie ich własnymi adresami. Co więcej, by osiągnąć
+ dobrą wydajność, powinny być to karty PCI obsługujące zarządzanie
+ magistralą. Do takich należą karty Intel EtherExpress Pro, a także
+ karty 3Com z serii 3c9xx. Dla uproszczenia konfiguracji firewalla
+ pożytecznym okazać się może posiadanie kart dwóch różnych producentów
+ (korzystających z innych sterowników), by łatwiej było odróżnić
+ interfejs podłączony do rutera od interfejsu połączonego z siecią
+ wewnętrzną.</para>
+
+ <sect2 id="filtering-bridges-kernel">
+ <title>Konfigurowanie jądra</title>
+
+ <para>Pierwsza z metod jest starsza, lecz sprawdzona. Na początek
+ należy dodać następujące wiersze do pliku konfiguracyjnego
+ jądra:</para>
+
+ <programlisting>options BRIDGE
+options IPFIREWALL
+options IPFIREWALL_VERBOSE</programlisting>
+
+ <para>Pierwszy wiersz włącza do jądra obsługę mostu, drugi obsługę
+ firewalla, a trzeci funkcje rejestrujące firewalla.</para>
+
+ <para>Teraz trzeba skompilować i zainstalować nowe jądro. Szczegółowy
+ opis tych czynności znaleźć można w Podręczniku FreeBSD, w części
+ "<ulink
+ url="../../books/handbook/kernelconfig-building.html">Building
+ and Installing a Custom Kernel</ulink>".</para>
+ </sect2>
+
+ <sect2 id="filtering-bridges-modules">
+ <title>Ładowanie modułów</title>
+
+ <para>Ta metoda instalacji jest nowsza i prostsza, polega jedynie
+ na dodaniu poniższego wiersza do
+ <filename>/boot/loader.conf</filename>:</para>
+
+ <programlisting>bridge_load="YES"</programlisting>
+
+ <para>W efekcie podczas ładowania systemu wraz z jądrem zostanie
+ załadowany moduł <filename>bridge.ko</filename>. Nie trzeba dodawać
+ analogicznego wiersza dla modułu <filename>ipfw.ko</filename>, gdyż
+ zostanie on załadowany automatycznie po wykonaniu czynności
+ opisanych w następnej części.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="filtering-bridges-finalprep">
+ <title>Przygotowanie do pracy</title>
+
+ <para>Przed ponownym uruchomieniem systemu oraz załadowaniem nowego jądra
+ lub modułów (w zależności od wybranej metody instalacji), trzeba
+ jeszcze dokonać kilku zmian w pliku konfiguracyjnym
+ <filename>/etc/rc.conf</filename>. Domyślną regułą firewalla jest
+ zatrzymywanie wszystkich pakietów IP. Zaczniemy od skonfigurowania
+ firewalla <option>otwartego</option>, by sprawdzić jego działanie przy
+ wyłączonym filtrowaniu (dzięki temu maszyna będzie mogła utrzymać
+ połączenie z siecią, co jest niezbędne w przypadku, gdy konfiguracja
+ przeprowadzana jest poprzez sieć).
+ W pliku <filename>/etc/rc.conf</filename> należy umieścić poniższe
+ wpisy:</para>
+
+ <programlisting>firewall_enable="YES"
+firewall_type="open"
+firewall_quiet="YES"
+firewall_logging="YES"</programlisting>
+
+ <para>Pierwszy wiersz powoduje uruchomienie firewalla (ładowany jest
+ moduł <filename>ipfw.ko</filename>, jeśli nie został wkompilowany do
+ jądra), w drugim ustawiany jest
+ <option>otwarty</option> tryb jego pracy (zgodnie z opisem w
+ <filename>/etc/rc.firewall</filename>). Następny wiersz nakazuje nie
+ pokazywać ładowanych reguł, a w ostatnim włączane jest
+ rejestrowanie.</para>
+
+ <para>Interfejsy sieciowe są najczęściej skonfigurowane tak, że tylko
+ jedna z kart sieciowych ma przypisany adres IP, jednakże most działa
+ tak samo również wtedy, gdy adresy przypisane są do obu kart lub nie są
+ przypisane do żadnej z nich. W tym ostatnim przypadku (brak IP) maszyna
+ pełniąca rolę mostu będzie jeszcze bardziej ukryta, gdyż nie będzie
+ dostępna z sieci; dostęp do niej możliwy będzie poprzez konsolę lub
+ trzeci interfejs sieciowy odseparowany od mostu. Niekiedy dostęp do
+ sieci potrzebny jest programom uruchamianym podczas
+ ładowania systemu, na przykład do określenia nazwy domeny. W takiej
+ sytuacji adres IP należy przydzielić interfejsowi zewnętrznemu (czyli
+ temu, który połączony jest z Internetem, gdzie znajduje się serwer
+ <acronym>DNS</acronym>), ponieważ most będzie uruchomiony dopiero w
+ końcowej fazie uruchamiania systemu. Oznacza to, że interfejs
+ <devicename>fxp0</devicename> (jak w przykładzie) musi być uwzględniony
+ w sekcji ifconfig pliku <filename>/etc/rc.conf</filename>, w
+ przeciwieństwie do interfejsu <devicename>xl0</devicename>.
+ Przydzielanie adresów IP obu kartom sieciowym nie ma raczej sensu,
+ chyba, że podczas uruchamiania systemu programy potrzebują dostępu
+ do obu segmentów sieci.</para>
+
+
+ <para>Należy mieć na uwadze, że w sieci IP opartej na Ethernecie działają
+ w rzeczywistości dwa protokoły: jednym jest oczywiście IP, drugim
+ jest <acronym>ARP</acronym>. Zadaniem protokołu <acronym>ARP</acronym>
+ jest przekształcenie adresu IP stacji na jej adres ethernetowy (adres
+ <acronym>MAC</acronym>). By możliwa była komunikacja między dwoma
+ stacjami znajdującymi się po dwóch stronach mostu, pakiety
+ <acronym>ARP</acronym> muszą być przekazywane przez most. Protokół
+ <acronym>ARP</acronym> nie jest składnikiem warstwy IP, ponieważ
+ jest używany tylko wtedy, gdy IP działa w sieci Ethernet. Filtrowanie
+ pakietów przez firewall w FreeBSD dotyczy warstwy IP, więc pakiety
+ innego typu (w tym także <acronym>ARP</acronym>) będą przekazywane
+ dalej bez filtrowania, nawet jeśli konfiguracja firewalla nakazuje
+ blokowanie wszystkiego.</para>
+
+ <para>Można już uruchomić system ponownie i korzystać z niego jak
+ dotychczas. Pojawią się nowe komunikaty dotyczące mostu i firewalla,
+ most jednak nie będzie jeszcze pracować, natomiast firewall będzie
+ działać w trybie <option>otwartym</option>, bez jakiegokolwiek
+ blokowania.</para>
+
+ <para>Jeśli pojawią się jakiekolwiek problemy, należy się z nimi
+ uporać przed przystąpieniem do kolejnego etapu pracy.</para>
+ </sect1>
+
+ <sect1 id="filtering-bridges-enabling">
+ <title>Uruchamianie mostu</title>
+
+ <para>Uruchomienie mostu polega na wykonaniu następującej sekwencji
+ poleceń (nazwy przykładowych interfejsów sieciowych
+ <devicename>fxp0</devicename> i <devicename>xl0</devicename> należy
+ zastąpić nazwami własnych interfejsów):</para>
+
+ <screen>&prompt.root; <userinput>sysctl net.link.ether.bridge_cfg=fxp0:0,xl0:0</userinput>
+&prompt.root; <userinput>sysctl net.link.ether.bridge_ipfw=1</userinput>
+&prompt.root; <userinput>sysctl net.link.ether.bridge=1</userinput></screen>
+
+ <para>Pierwsze polecenie wskazuje interfejsy obsługiwane przez most,
+ drugie włącza firewalla, wreszcie trzecie polecenie włącza sam
+ most.</para>
+
+ <para>Tak skonfigurowana maszyna może zostać włączona między dwie grupy
+ połączonych w sieć komputerów bez zakłócania ich wzajemnej komunikacji.
+ Jeśli to się powiedzie, można dodać do pliku
+ <filename>/etc/sysctl.conf</filename> wpisy
+ <literal>net.link.ether.<replaceable>[coś]</replaceable>=<replaceable>[coś]</replaceable></literal>
+ zgodne z powyższymi, by zostały uwzględnione przy ładowaniu systemu.</para>
+ </sect1>
+
+ <sect1 id="filtering-bridges-ipfirewall">
+ <title>Konfiguracja firewalla</title>
+
+ <para>Następnym krokiem jest przygotowanie reguł firewalla,
+ zabezpieczających sieć wewnętrzną. Wiąże się to z pewnymi utrudnieniami,
+ gdyż nie wszystkie możliwości firewalla mogą być wykorzystywane w
+ przypadku pakietów przechodzących przez most. Trzeba też wiedzieć, że
+ między pakietami przekazywanymi, a odbieranymi przez maszynę lokalną
+ jest pewna różnica. Pakiety przychodzące przechodzą przez firewall
+ tylko raz, a nie dwa razy jak w zwykłych warunkach. Mówiąc dokładniej,
+ są one filtrowane tylko przy odbiorze, tak więc reguły zawierające
+ <option>out</option> lub <option>xmit</option> będą bezużyteczne.
+ Ja osobiście używam starszej składni <option>in via</option>, którą
+ rozsądniej się czyta. Trzeba również pamiętać, że filtrując pakiety
+ przechodzące przez most, można używać tylko poleceń
+ <option>pass</option> lub <option>drop</option>. Bardziej wymyślne
+ polecenia, jak <option>divert</option>, <option>forward</option> czy
+ <option>reject</option> są niedozwolone. Można z nich korzystać tylko
+ w odniesieniu do pakietów wysyłanych przez maszynę mostu lub do niej
+ przychodzących (jeśli oczywiście ma ona adres IP).</para>
+
+ <para>Nowością w FreeBSD 4.0 jest filtrowanie z utrzymywaniem stanu. Jest
+ ono znacznym ułatwieniem obsługi komunikacji przez
+ <acronym>UDP</acronym>, polegającej najczęściej na wysłaniu żądania, a
+ za chwilę odebraniu odpowiedzi, z takimi samymi adresami IP i numerami
+ portów (przy czym nadawca i odbiorca są oczywiście zamienieni
+ miejscami). Praktycznie nie da się potraktować takiej wymiany jako
+ pojedynczej sesji,
+ posługując się firewallem nie przechowującym informacji o stanie
+ połączenia. Jednakże gdy firewall potrafi <quote>zapamiętać</quote>
+ wychodzący pakiet <acronym>UDP</acronym> i zezwolić na odpowiedź w
+ ciągu kilku następnych minut, wówczas zarządzanie komunikacją
+ <acronym>UDP</acronym> staje się dziecinnie proste. Jak to zrobić,
+ pokazuje poniższy przykład. Podobnie można traktować pakiety
+ <acronym>TCP</acronym>, chroni to przed niektórymi atakami przez
+ uniemożliwienie działania oraz innymi figlami, prowadzi jednak do
+ szybkiego rozrastania się tablicy stanów.</para>
+
+
+ <para>Spójrzmy na przykładową konfigurację. Zwróćmy uwagę, że na początku
+ pliku <filename>/etc/rc.firewall</filename> umieszczono domyślne reguły
+ dla interfejsu pseudosieci <devicename>lo0</devicename>, nie trzeba
+ się więc już nimi przejmować. Inne reguły powinny być umieszczone w
+ oddzielnym pliku (np. <filename>/etc/rc.firewall.local</filename>),
+ który byłby dołączany podczas ładowania systemu dzięki zmianie
+ w pliku <filename>/etc/rc.conf</filename> tego wiersza, w którym
+ typ firewalla był zdefiniowany jako <option>otwarty</option>:</para>
+
+ <programlisting>firewall_type="/etc/rc.firewall.local"</programlisting>
+
+ <important>
+ <para>Należy tu podać <emphasis>pełną</emphasis> ścieżkę, w przeciwnym
+ razie plik nie zostanie załadowany, co grozi utratą dostępu do
+ sieci.</para>
+ </important>
+
+ <para>Na potrzeby przykładu przyjmujemy, że interfejs
+ <devicename>fxp0</devicename> połączony jest z Internetem, natomiast
+ <devicename>xl0</devicename> z siecią wewnętrzną
+ (<acronym>LAN</acronym>). Adres IP maszyny mostu to
+ <hostid role="ipaddr">1.2.3.4</hostid> (w rzeczywistości dostawca
+ usług interenetowych nie mógłby przydzielić adresu klasy A, jednak
+ świetnie nadaje się on jako przykład).</para>
+
+ <programlisting># Szybkie przepuszczanie pakietów, których stan został zapamiętany
+add check-state
+
+# Blokada sieci z RFC 1918
+add drop all from 10.0.0.0/8 to any in via fxp0
+add drop all from 172.16.0.0/12 to any in via fxp0
+add drop all from 192.168.0.0/16 to any in via fxp0
+
+# Maszyna będąca mostem może wysyłać co tylko zechce
+# (jeśli maszyna nie ma adresu IP, pomiń poniższe wiersze)
+add pass tcp from 1.2.3.4 to any setup keep-state
+add pass udp from 1.2.3.4 to any keep-state
+add pass ip from 1.2.3.4 to any
+
+# Stacje sieci wewnętrznej mogą wysyłać co tylko zechcą
+add pass tcp from any to any in via xl0 setup keep-state
+add pass udp from any to any in via xl0 keep-state
+add pass ip from any to any in via xl0
+
+# Protokół TCP
+# Przepuszczanie SSH
+add pass tcp from any to any 22 in via fxp0 setup keep-state
+# Przepuszczanie SMTP jedynie do serwera poczty
+add pass tcp from any to relay 25 in via fxp0 setup keep-state
+# Informacje o obszarach mogą być przesyłane tylko przez podrzędny
+# serwer nazw [dns2.nic.it]
+add pass tcp from 193.205.245.8 to ns 53 in via fxp0 setup keep-state
+# Przepuszczanie zapytań ident - takie rozwiązanie jest lepsze
+# niż oczekiwanie na przekroczenie czasu
+add pass tcp from any to any 113 in via fxp0 setup keep-state
+# Przepuszczenie zakresu portów dynamicznych
+add pass tcp from any to any 49152-65535 in via fxp0 setup keep-state
+
+# Protokół UDP
+# Przepuszczanie zapytań DNS jedynie do serwera DNS
+add pass udp from any to ns 53 in via fxp0 keep-state
+# Przepuszczenie zakresu portów dynamicznych
+add pass udp from any to any 49152-65535 in via fxp0 keep-state
+
+# Protokół ICMP
+# Przepuszczanie 'pingów'
+add pass icmp from any to any icmptypes 8 keep-state
+# Przepuszczanie komunikatów o błędach generowanych przez 'traceroute'
+add pass icmp from any to any icmptypes 3
+add pass icmp from any to any icmptypes 11
+
+# Wszystko inne jest podejrzane
+add drop log all from any to any</programlisting>
+
+ <para>Czytelnicy mający już doświadczenie z konfiguracją firewalla mogą
+ zwrócić uwagę na brak pewnych rzeczy. W szczególności, brakuje reguł
+ zapobiegających podszywaniu się. Rzeczywiście, wśród powyższych reguł
+ <emphasis>nie było</emphasis> takiej:</para>
+
+ <programlisting>add deny all from 1.2.3.4/8 to any in via fxp0</programlisting>
+
+ <para>Nakazuje ona odrzucanie pakietów, które nadchodzą z zewnątrz, a
+ udają, że są z sieci wewnętrznej. Jest to zwykle stosowane w celu
+ zabezpieczenia się przed próbami prześliznięcia się przez filtrowanie,
+ polegającymi na tworzeniu fałszywych pakietów, wyglądających jak
+ wysłane z sieci wewnętrznej. Kłopot w tym, że jest
+ <emphasis>co najmniej</emphasis> jedna stacja połączona z interfejsem
+ zewnętrznym, której nie można zignorować: jest nią ruter. Zwykle
+ jednak ochrona przed podszywaniem się realizowana jest przez
+ dostawcę usług internetowych na jego ruterze, nie trzeba się więc
+ tym przejmować.</para>
+
+ <para>Ostatnia reguła jest bardzo podobna do reguły przyjmowanej
+ domyślnie, czyli odrzucania wszystkiego, co nie jest ściśle dozwolone.
+ Jest jednak różnica: wszystko, co jest podejrzane, jest
+ rejestrowane.</para>
+
+ <para>Dwie reguły odpowiedzialne są za przekazywanie pakietów
+ <acronym>SMTP</acronym> i <acronym>DNS</acronym> do serwera poczty i
+ serwera nazw, o ile takowe serwery są. Zestaw reguł powinien być
+ oczywiście dostosowany do własnych potrzeb, tutaj pokazany jest tylko
+ pewien przykład (składnia reguł jest dokładnie opisana w dokumentacji
+ systemowej &man.ipfw.8;). Trzeba mieć na uwadze, że aby poprawnie
+ działały
+ <quote>relay</quote> i <quote>ns</quote>, wymagane jest, by zapytania
+ DNS działały <emphasis>zanim</emphasis> pracę rozpoczyna most. Dzięki
+ temu można też się przekonać, czy adres IP został przypisany do
+ właściwiej karty sieciowej. Alternatywnym rozwiązaniem jest
+ wpisanie adresu IP zamiast nazwy stacji (jest to jedyna możliwość
+ w przypadku, gdy maszyna nie ma adresu IP).</para>
+
+ <para>Osoby, które już kiedyś miały pewne doświadczenia z konfiguracją
+ firewalla, przyzwyczajone są zapewne do reguł <option>reset</option>
+ lub <option>forward</option> dla pakietów ident (port
+ <acronym>TCP</acronym> o numerze 113). Niestety, w przypadku mostu
+ takie rozwiązanie nie wchodzi w grę, najlepiej jest po prostu
+ przepuścić owe pakiety do ich adresata. Jest to stosunkowo niegroźne,
+ gdy adresat ma wyłączoną usługę ident. Można także blokować połączenia
+ z portem 113, co powoduje pewne problemy np. z usługą
+ <acronym>IRC</acronym> (ponieważ zapytanie ident musi przekroczyć
+ czas oczekiwania).</para>
+
+ <para>Niezrozumiała może wydać się obecność oddzielnych reguł, z
+ których jedne zezwalaja na wysyłanie maszynie będącej mostem, drugie
+ natomiast stacjom sieci wewnętrznej. Jest tak dlatego, że pakiety
+ wysyłane przez maszynę lokalną docierają do filtra inną drogą niż
+ pakiety wysłane z sieci wewnętrznej. Te ostatnie muszą przejść przez
+ most, natomiast pakiety wysłane lokalnie trafiają na stos IP maszyny.
+ Osobne zestawy reguł obsługują obydwa przypadki. Z kolei reguły
+ zawierające <literal>in via <devicename>fxp0</devicename></literal>
+ odnoszą się do obu rodzajów pakietów. Mówiąc ogólnie, pisząc reguły
+ <option>in via</option> trzeba zrobić wyjątek dla pakietów wysyłanych
+ z lokalnej maszyny, ponieważ one nie przyszły przez żaden z
+ interfejsów.</para>
+ </sect1>
+
+ <sect1 id="filtering-bridges-contributors">
+ <title>Podziękowania</title>
+
+ <para>Duża część niniejszego artykułu zaczerpnięta została ze starego
+ dokumentu o mostach autorstwa Nicka Sayera. Inspiracją było również
+ wprowadzenie do tematyki mostów napisane przez Steve'a Petersona.</para>
+
+ <para>Bardzo dziękuję Luigiemu Rizzo za implementację kodu mostu w
+ FreeBSD, jak również za czas poświęcony na odpowiedzi na moje
+ pytania.</para>
+
+ <para>Dziękuję też Tomowi Rhodesowi, który zechciał przyjrzeć się
+ mojemu tłumaczeniu tego artykułu z włoskiego (w takim języku napisany
+ był oryginał) na angielski.</para>
+ </sect1>
+</article>
diff --git a/pl_PL.ISO8859-2/articles/new-users/Makefile b/pl_PL.ISO8859-2/articles/new-users/Makefile
new file mode 100644
index 0000000000..886e21cc9d
--- /dev/null
+++ b/pl_PL.ISO8859-2/articles/new-users/Makefile
@@ -0,0 +1,14 @@
+# $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"
diff --git a/pl_PL.ISO8859-2/articles/new-users/article.sgml b/pl_PL.ISO8859-2/articles/new-users/article.sgml
new file mode 100644
index 0000000000..d79a4474c6
--- /dev/null
+++ b/pl_PL.ISO8859-2/articles/new-users/article.sgml
@@ -0,0 +1,1145 @@
+<!--
+ The FreeBSD Polish Documentation Project
+
+ $FreeBSD$
+ Original revision: 1.33
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN">
+%man;
+<!ENTITY % mailing-lists PUBLIC "-//FreeBSD//ENTITIES DocBook Mailing List Entities//PL">
+%mailing-lists;
+]>
+
+<article lang="pl">
+ <articleinfo>
+ <title>Wprowadzenie do FreeBSD i Uniksa</title>
+
+ <authorgroup>
+ <author>
+ <firstname>Annelise</firstname>
+ <surname>Anderson</surname>
+ <affiliation>
+ <address><email>andrsn@andrsn.stanford.edu</email></address>
+ </affiliation>
+ </author>
+ </authorgroup>
+
+ <releaseinfo>$FreeBSD$</releaseinfo>
+
+ <abstract>
+ <para>Niniejsze wprowadzenie przeznaczone jest dla osób
+ nie znających ani FreeBSD, ani Uniksa; omówione są tu
+ zagadnienia podstawowe. Zakładam, że korzystasz z
+ FreeBSD w wersji 2.0.5 lub późniejszej, a twój system
+ ma (przynajmniej na razie) jednego użytkownika (ciebie).
+ Powinieneś też dość dobrze znać DOS-a/Windows lub
+ OS/2.</para>
+ </abstract>
+ </articleinfo>
+
+ <sect1>
+ <title>Logowanie się i wychodzenie z systemu</title>
+
+ <para>Gdy ujrzysz komunikat <prompt >login:</prompt>, zaloguj
+ się jako użytkownik utworzony podczas instalacji lub jako
+ <firstterm>root</firstterm> (konto root jest już w systemie;
+ root może dostać się wszędzie i robić co mu się podoba, także
+ usuwać ważne pliki, więc trzeba z nim uważać). Znaki
+ &prompt.user; i &prompt.root; są znakami gotowości (mogą
+ wyglądać inaczej), przy czym &prompt.user; odpowiada zwykłemu
+ użytkownikowi, a &prompt.root; kontu roota.</para>
+
+ <para>Aby się wylogować (i powrócić do komunikatu
+ <prompt >login:</prompt>), napisz:</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>exit</userinput></screen>
+ </informalexample>
+
+ <para>Oczywiście, wydane polecenia potwierdza się wciskając
+ <keysym>enter</keysym>. Trzeba także pamiętać, że Unix
+ rozróżnia małe i duże litery, więc <command>exit</command>
+ i <command>EXIT</command> to nie to samo.</para>
+
+ <para>By wyłączyć komputer, napisz</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>/sbin/shutdown -h now</userinput></screen>
+ </informalexample>
+
+ <para>By natomiast uruchomić go ponownie</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>/sbin/shutdown -r now</userinput></screen>
+ </informalexample>
+
+ <para>lub</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>/sbin/reboot</userinput></screen>
+ </informalexample>
+
+ <para>Ponowne uruchomienie można też wykonać za pomocą
+ <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Delete</keycap></keycombo>.
+ W obecnych wydaniach FreeBSD jest to odpowiednik
+ <command>/sbin/reboot</command>, i korzystanie z niego jest
+ o wiele lepszym rozwiązaniem od używania przycisku reset.
+ Nie masz przecież ochoty na ponowną instalację,
+ prawda?</para>
+ </sect1>
+
+ <sect1>
+ <title>Dodawanie użytkownika z uprawnieniami roota</title>
+
+ <para>Jeżeli nie dodawałeś użytkowników podczas instalacji
+ systemu, i jesteś zalogowany jako root, powinieneś teraz
+ utworzyć użytkownika poleceniem</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>adduser</userinput></screen>
+ </informalexample>
+
+ <para>Przy pierwszym korzystaniu z adduser mogą pojawić się
+ pytania o pewne ustawienia domyślne. Na przykład jako
+ domyślną powłokę możesz wybrać &man.csh.1; zamiast
+ &man.sh.1;, jeśli proponowana będzie <command>sh</command>.
+ Aby zaakceptować sugerowane ustawienia, wciśnij po prostu
+ enter. Domyślne ustawienia trafiają do pliku
+ <filename>/etc/adduser.conf</filename>, który można
+ samodzielnie edytować.</para>
+
+ <para>Dla przykładu, chcesz dodać użytkownika
+ <username>marek</username> o nazwisku <emphasis>Marek
+ Piegus</emphasis>. Dla bezpieczeństwa przydziel markowi
+ hasło (choćby w obawie przed wszędobylskimi dzieciakami).
+ Gdy zobaczysz pytanie, do jakich innych grup ma należeć
+ marek, wpisz <groupname>wheel</groupname></para>
+
+ <informalexample>
+ <screen>Login group is ``marek''. Invite marek into other groups: <userinput>wheel</userinput></screen>
+ </informalexample>
+
+ <para>Dzięki temu po zalogowaniu się jako
+ <username>marek</username> będzie można skorzystać z
+ polecenia &man.su.1; by zostać rootem. Nie będziesz już
+ teraz besztany za logowanie się jako root.</para>
+
+ <para>Możesz przerwać <command>adduser</command> w dowolnym
+ momencie wciskając
+ <keycombo><keycap>Ctrl</keycap><keycap>C</keycap></keycombo>,
+ na koniec będziesz też mieć możliwość zatwierdzenia nowego
+ użytkownika lub odrzucenia go, wpisując <keycap>n</keycap>.
+ Jeśli chcesz, możesz dodać drugiego użytkownika; gdy
+ będziesz zmieniać ustawienia konta marka i coś pójdzie nie
+ tak, będziesz mieć zapas.</para>
+
+ <para>Po wykonaniu powyższych czynności, wpisz
+ <command>exit</command> aby móc znów się zalogować, i
+ zaloguj się jako <username>marek</username>. Należy raczej
+ pracować jako zwykły użytkownik, jeśli nie są potrzebne
+ uprawnienia roota (i związane z nimi ryzyko).</para>
+
+ <para>Jeśli wcześniej dodałeś użytkownika i chcesz dać mu
+ możliwość zostania rootem za pomocą <command>su</command>,
+ możesz to zrobić logując się jako root i modyfikując plik
+ <filename>/etc/group</filename>; dopisz marka w pierwszej
+ linii tego pliku (grupa <groupname>wheel</groupname>).
+ Wcześniej jednak powinieneś zapoznać się z edytorem
+ &man.vi.1;, lub skorzystać z prostszego edytora &man.ee.1;
+ dostępnego w nowych wersjach FreeBSD.</para>
+
+
+ <para>Użytkownika usuwa się poleceniem
+ <command>rmuser</command>.</para>
+ </sect1>
+
+ <sect1>
+ <title>Rozglądanie się</title>
+
+ <para>Zaloguj się jako zwykły użytkownik, rozejrzyj się
+ wokoło i spróbuj skorzystać z kilku poleceń służących
+ uzyskiwaniu informacji i pomocy.</para>
+
+ <para>Oto niektóre polecenia z krótkim opisem:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><command>id</command></term>
+
+ <listitem>
+ <para>Pokazuje kim jesteś.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>pwd</command></term>
+
+ <listitem>
+ <para>Pokazuje gdzie jesteś, czyli bieżący
+ katalog.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>ls</command></term>
+
+ <listitem>
+ <para>Wyświetla listę plików w bieżącym katalogu.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>ls <option>-F</option></command></term>
+
+ <listitem>
+ <para>Wyświetla listę plików w bieżącym katalogu,
+ znakiem <literal>*</literal> oznaczając pliki
+ wykonywalne, znakiem <literal>/</literal>
+ katalogi, a znakiem <literal>@</literal> dowiązania
+ symboliczne.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>ls <option>-l</option></command></term>
+
+ <listitem>
+ <para>Wyświetla listę plików w długim formacie,
+ pokazując rozmiar, datę, uprawnienia.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>ls <option>-a</option></command></term>
+
+ <listitem>
+ <para>Wyświetla również pliki ukryte (o nazwie
+ rozpoczynającej się kropką). Gdy jesteś rootem,
+ pliki ukryte są pokazywane bez stosowania opcji
+ <option>-a</option>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>cd</command></term>
+
+ <listitem>
+ <para>Zmiana katalogu. <command>cd
+ <parameter>..</parameter></command> przechodzi o
+ jeden poziom wyżej; uwaga na odstęp po
+ <command>cd</command>. <command>cd
+ <parameter>/usr/local</parameter></command> przejdzie
+ do wskazanego katalogu. <command>cd
+ <parameter>~</parameter></command> przechodzi do
+ domowego katalogu obecnego użytkownika, np.
+ <filename>/usr/home/marek</filename>. Poleceniem
+ <command>cd <parameter>/cdrom</parameter></command>,
+ a następnie <command>ls</command> możesz przekonać
+ się, czy Twój CDROM jest zamontowany i czy
+ działa.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>view
+ <replaceable>nazwapliku</replaceable></command></term>
+
+ <listitem>
+ <para>Pokazuje zawartość pliku (o nazwie
+ <replaceable>nazwapliku</replaceable>) bez
+ możliwości dokonywania zmian. Spróbuj napisać
+ <command>view
+ <parameter>/etc/fstab</parameter></command>.
+ Wpisz <command>:q</command> by zakończyć.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>cat
+ <replaceable>nazwapliku</replaceable></command></term>
+
+ <listitem>
+ <para>Pokazuje na ekranie zawartość pliku
+ <replaceable>nazwapliku</replaceable>. Jeśli jest
+ on zbyt duży i widać tylko koniec, wciśnij
+ <keycap>ScrollLock</keycap> i posłuż się
+ <keycap>strzałką w górę</keycap> by przesunąć się
+ wstecz. <keycap>ScrollLock</keycap> może być też
+ stosowany przy przeglądaniu dokumentacji systemowej.
+ By zakończyć przewijanie, ponownie wciśnij
+ <keycap>ScrollLock</keycap>. Możesz wypróbować
+ <command>cat</command> na ukrytych plikach w Twoim
+ katalogu domowym:
+ <command>cat <parameter>.cshrc</parameter></command>,
+ <command>cat <parameter>.login</parameter></command>,
+ <command>cat
+ <parameter>.profile</parameter></command>.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>W <filename>.cshrc</filename> znajdziesz aliasy dla
+ polecenia <command>ls</command> (są bardzo wygodne).
+ Własne aliasy możesz tworzyć modyfikując plik
+ <filename>.cshrc</filename>. Gdy chcesz udostępnić aliasy
+ wszystkim użytkownikom, umieść je w pliku konfiguracyjnym
+ <command>csh</command> dla całego systemu,
+ <filename>/etc/csh.cshrc</filename>.</para>
+ </sect1>
+
+ <sect1>
+ <title>Gdzie szukać pomocy i informacji</title>
+
+ <para>Oto niektóre przydatne źródła pomocy.
+ <replaceable>Tekst</replaceable> oznacza coś, co wpisałeś;
+ zwykle będzie to jakieś polecenie lub nazwa pliku.</para>
+ <para>
+
+ <variablelist>
+ <varlistentry>
+ <term><command>apropos
+ <replaceable>tekst</replaceable></command></term>
+
+ <listitem>
+ <para>Wszystkie wystąpienia
+ <replaceable>tekstu</replaceable> w
+ <database>bazie danych whatis</database>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>man
+ <replaceable>tekst</replaceable></command></term>
+
+ <listitem>
+ <para>Dokumentacja systemowa na temat
+ <replaceable>tekstu</replaceable>. Jest to podstawowe
+ źródło informacji w systemach Un*ksowych. Przykładowo
+ <command>man <parameter>ls</parameter></command>
+ podpowie, jak korzystać z polecenia
+ <command>ls</command>. Naciśnij <keycap>Enter</keycap>
+ by przejść dalej,
+ <keycombo><keycap>Ctrl</keycap><keycap>B</keycap></keycombo>
+ by zobaczyć poprzednią stronę,
+ <keycombo><keycap>Ctrl</keycap><keycap>F</keycap></keycombo>
+ by zobaczyć następną, <keycap>q</keycap> albo
+ <keycombo><keycap>Ctrl</keycap><keycap>C</keycap></keycombo>
+ aby zakończyć.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>which
+ <replaceable>tekst</replaceable></command></term>
+
+ <listitem>
+ <para>Znajduje <replaceable>tekst</replaceable> w
+ ścieżce użytkownika.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>locate
+ <replaceable>tekst</replaceable></command></term>
+
+ <listitem>
+ <para>Pokazane będą wszystkie ścieżki, w których
+ znaleziony został
+ <replaceable>tekst</replaceable>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>whatis
+ <replaceable>tekst</replaceable></command></term>
+
+ <listitem>
+ <para>Informuje, jak działa polecenie
+ <replaceable>tekst</replaceable> i na której stronie
+ dokumentacji systemowej znajduje się jego opis.
+ Wpisując <command>whatis *</command> otrzymasz opis
+ wszystkich plików w bieżącym katalogu.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>whereis
+ <replaceable>tekst</replaceable></command></term>
+
+ <listitem>
+ <para>Odnajduje plik <replaceable>tekst</replaceable>
+ i podaje jego pełną ścieżkę.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>Spróbuj użyć <command>whatis</command> by otrzymać
+ opisy najczęściej używanych poleceń, na przykład
+ <command>cat</command>, <command>more</command>,
+ <command>grep</command>, <command>mv</command>,
+ <command>find</command>, <command>tar</command>,
+ <command>chmod</command>, <command>chown</command>,
+ <command>date</command> i <command>script</command>.
+ <command>more</command> pozwala na oglądanie kolejnych
+ stron jedna po drugiej (znane z DOS'a), na przykład
+ <command>ls -l | more</command> lub
+ <command>more
+ <replaceable>nazwapliku</replaceable></command>.
+ Znak <literal>*</literal> działa jak szablon, np.
+ polecenie <command>ls w*</command> pokaże pliki o nazwach
+ zaczynających się literą <literal>w</literal>.</para>
+
+ <para>Niektóre z powyższych poleceń mogą działać nie całkiem
+ prawidłowo. Działanie &man.locate.1; i &man.whatis.1;
+ uzależnione jest od bazy danych, która aktualizowana jest
+ raz na tydzień. Jeżeli nie planujesz zostawiać włączonego
+ komputera (z uruchomionym FreeBSD) na weekend, powinieneś
+ co jakiś czas uruchomić polecenia codziennej,
+ cotygodniowej i comiesięcznej obsługi. Uruchamiaj je jako
+ root i daj każdemu z nich nieco czasu na wykonanie pracy
+ przed uruchomieniem kolejnego.</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>periodic daily</userinput>
+<lineannotation>pominięto wyniki</lineannotation>
+&prompt.root; <userinput>periodic weekly</userinput>
+<lineannotation>pominięto wyniki</lineannotation>
+&prompt.root; <userinput>periodic monthly</userinput>
+<lineannotation>pominięto wyniki</lineannotation></screen>
+ </informalexample>
+
+ <para>Jeżeli nudzi cię czekanie, wciśnij
+ <keycombo><keycap>Alt</keycap><keycap>F2</keycap></keycombo>
+ by przejść do następnej <firstterm>konsoli
+ wirtualnej</firstterm> i ponownie się zalogować; w końcu
+ to system wielodostępny i wielozadaniowy. Tak czy inaczej,
+ uruchomione polecenia będą zapewne wypisywać na ekranie
+ komunikaty; możesz wyczyścić ekran wpisując
+ <command>clear</command>. Gdy polecenia obsługi zakończą
+ pracę, możesz zajrzeć do
+ <filename>/var/mail/root</filename> i
+ <filename>/var/log/messages</filename>.</para>
+
+ <para>Wykonywanie tego typu poleceń jest częścią
+ administracji systemem - a jako samodzielny użytkownik
+ systemu jesteś administratorem sam dla siebie. Właściwie
+ wszystko, co wymaga uprawnień roota, to administracja
+ systemem. Zagadnienia z tym związane nie są zbyt dobrze
+ omówione nawet w opasłych księgach o Uniksie, gdzie często
+ wiele miejsca poświęcone jest omówieniu rozwijanych menu w
+ menedżerach okien. Jeśli chcesz, możesz zaopatrzyć się
+ w jedną z dwóch najpopularniejszych książek o
+ administrowaniu systemem, pierwsza z nich to
+ <citetitle>UNIX System Administration Handbook</citetitle>
+ autorstwa Evi Nemeth i in. (Prentice-Hall, 1995, ISBN
+ 0-13-15051-7), wydanie drugie z czerwoną okładką; druga
+ napisana przez &AElig;leen Frisch
+ <citetitle>Essential System Administration</citetitle>
+ (O'Reilly &amp; Associates, 1993, ISBN 0-937175-80-3).
+ Ja korzystałam z tej pierwszej.</para>
+ </sect1>
+
+ <sect1>
+ <title>Edycja tekstu</title>
+
+ <para>Konfigurowanie systemu wiąże się z edytowaniem plików
+ tekstowych. Większość z nich znajduje się w katalogu
+ <filename>/etc</filename>; do ich modyfikacji wymagane
+ będą uprawnienia roota. Możesz posługiwać się prostym
+ edytorem <command>ee</command>, jednakże na dłuższą metę
+ warto nauczyć się obsługi edytora <command>vi</command>.
+ Znakomite wprowadzenie do vi można znaleźć w
+ <filename>/usr/src/contrib/nvi/docs/tutorial</filename>;
+ jeśli go tam nie ma, możesz pobrać je przez FTP z
+ <hostid>ftp.cdrom.com</hostid> z katalogu
+ FreeBSD/FreeBSD-current/src/contrib/nvi/docs/tutorial.</para>
+
+ <para>Zanim zabierzesz się za edycję pliku, dobrze byłoby
+ zrobić jego kopię zapasową. Jeżeli na przykład chcesz
+ edytować <filename>/etc/rc.conf</filename>, możesz
+ przejść do katalogu <filename>/etc</filename>
+ poleceniem <command>cd /etc</command> i napisać:</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>cp rc.conf rc.conf.orig</userinput></screen>
+ </informalexample>
+
+ <para>W rezultacie plik <filename>rc.conf</filename> zostałby
+ skopiowany jako <filename>rc.conf.orig</filename>. Mógłbyś
+ później przywrócić oryginalny plik kopiując
+ <filename>rc.conf.orig</filename> jako
+ <filename>rc.conf</filename>. Jeszcze lepszym wyjściem
+ jest przeniesienie pliku (zmiana nazwy) i późniejsze
+ skopiowanie go z powrotem:</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>mv rc.conf rc.conf.orig</userinput>
+&prompt.root; <userinput>cp rc.conf.orig rc.conf</userinput></screen>
+ </informalexample>
+
+ <para>Polecenie <command>mv</command> zachowuje oryginalną
+ datę i właściciela pliku. Możesz już edytować
+ <filename>rc.conf</filename>. Gdy zechcesz powrócić do
+ poprzedniego pliku, napisz
+ <userinput>mv rc.conf rc.conf.moje</userinput> (o ile
+ chcesz również zachować swoją wersję), a następnie</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>mv rc.conf.orig rc.conf</userinput></screen>
+ </informalexample>
+
+ <para>Powrócisz w ten sposób do poprzedniego stanu.</para>
+
+ <para>Edycję pliku rozpoczyna się poleceniem</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>vi <replaceable>nazwapliku</replaceable></userinput></screen>
+ </informalexample>
+
+ <para>Do poruszania się w tekście użyj klawiszy
+ strzałek. Klawisz <keycap>Esc</keycap> powoduje
+ przełączenie <command>vi</command> w tryb poleceń.
+ Oto niektóre z poleceń:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><command>x</command></term>
+
+ <listitem>
+ <para>usunięcie litery pod kursorem</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>dd</command></term>
+
+ <listitem>
+ <para>usunięcie całego wiersza</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>i</command></term>
+
+ <listitem>
+ <para>wstawianie tekstu w miejscu kursora</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>a</command></term>
+
+ <listitem>
+ <para>wstawianie tekstu za kursorem</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>Po wpisaniu <command>i</command> lub <command>a</command>
+ możesz wprowadzac tekst. Klawiszem <keycap>Esc</keycap>
+ powracasz do trybu poleceń, oto kolejne z nich</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><command>:w</command></term>
+
+ <listitem>
+ <para>zapisanie pliku na dysku i powrót do edycji</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>:wq</command></term>
+
+ <listitem>
+ <para>zapisanie pliku i wyjście z edytora</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>:q!</command></term>
+
+ <listitem>
+ <para>wyjście bez zapisywania zmian</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>/<replaceable>tekst</replaceable></command></term>
+
+ <listitem>
+ <para>przeniesienie kursora do
+ <replaceable>tekstu</replaceable>;
+ <command>/<keycap>Enter</keycap></command> (klawisz
+ enter) znajduje kolejne wystąpienie
+ <replaceable>tekstu</replaceable>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>G</command></term>
+
+ <listitem>
+ <para>przejście na koniec pliku</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command><replaceable>n</replaceable>G</command></term>
+
+ <listitem>
+ <para>przejście do linii o numerze
+ <replaceable>n</replaceable></para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><keycombo><keycap>Ctrl</keycap><keycap>L</keycap></keycombo></term>
+
+ <listitem>
+ <para>przerysowanie ekranu</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><keycombo><keycap>Ctrl</keycap><keycap>b</keycap></keycombo> i
+ <keycombo><keycap>Ctrl</keycap><keycap>f</keycap></keycombo></term>
+
+ <listitem>
+ <para>przejście wstecz i do przodu o jeden ekran,
+ podobnie jak w <command>more</command> i
+ <command>view</command>.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>Możesz poćwiczyć korzystanie z <command>vi</command>
+ w katalogu domowym; utwórz nowy plik poleceniem
+ <command>vi <replaceable>nazwapliku</replaceable></command>,
+ spróbuj wpisać i usunąć tekst, zapisać plik i następnie
+ go wczytać. <command>vi</command> może niekiedy sprawiać
+ niespodzianki, gdyż jest w gruncie rzeczy bardzo
+ skomplikowany. Czasami zdarza się, że niechcący wydasz
+ polecenie, które zachowa się inaczej niż oczekiwałeś.
+ (Niektórzy naprawdę lubią <command>vi</command>, jest
+ o wiele potężniejszy od DOS-owego edytora EDIT;
+ poszukaj informacji o poleceniu <command>:r</command>.)
+ Jeśli będziesz mieć kłopoty, wciskając <keycap>Esc</keycap>
+ wróć do trybu poleceń i spróbuj jeszcze raz; często
+ zapisuj poleceniem <command>:w</command>, i używaj
+ <command>:q!</command> by wyjść i zacząć od nowa (od
+ ostatniego użycia <command>:w</command>) jeśli to
+ konieczne.</para>
+
+ <para>Możesz teraz, przy pomocy <command>cd</command>,
+ przejść do <filename>/etc</filename> i zostać rootem
+ korzystając z <command>su</command>. Uruchom
+ <command>vi</command> i zmodyfikuj plik
+ <filename>/etc/group</filename> dodając użytkownika
+ do grupy wheel, by mógł on otrzymywać uprawnienia roota.
+ Dopisz przecinek i nazwę użytkownika na końcu pierwszego
+ wiersza pliku, następnie wciśnij <keycap>Esc</keycap> i
+ wpisz <command>:wq</command> by zapisać plik i zakończyć
+ edycję. Efekt natychmiastowy. (Nie wstawiłeś spacji za
+ przecinkiem, zgadza się?)</para>
+ </sect1>
+
+ <sect1>
+ <title>Drukowanie plików w DOS-ie</title>
+
+ <para>Zapewne twoja drukarka nie jest jeszcze gotowa do pracy
+ w FreeBSD, by więc wydrukować plik trzeba będzie przenieść
+ go na dyskietkę i wydrukować w DOS-ie. Załóżmy, iż
+ chciałbyś uważnie przeczytać stronę dokumentacji
+ omawiającą dokonywanie zmian w prawach dostępu do plików
+ (co jest dosyć ważnym zagadnieniem); możesz ją zobaczyć
+ wpisując <command>man chmod</command>. Natomiast
+ polecenie</para>
+ <informalexample>
+ <screen>&prompt.user; <userinput>man chmod | col -b &gt; chmod.txt</></screen>
+ </informalexample>
+
+ <para>spowoduje usunięcie znaczników formatujących i
+ zamiast pokazywać stronę dokumentacji na ekranie,
+ zapisze ją w pliku <filename>chmod.txt</filename>. Włóż
+ teraz sformatowaną dyskietkę do stacji A, skorzystaj z
+ <command>su</command> by zostać rootem, i wpisz</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>/sbin/mount -t msdos /dev/fd0 /mnt</></screen>
+ </informalexample>
+
+ <para>Powyższe polecenie zamontuje stację dyskietek
+ w katalogu <filename>/mnt</filename>.</para>
+
+ <para>Uprawnienia roota nie są już potrzebne, możesz więc
+ wpisać <command>exit</command> by z powrotem korzystać
+ z konta marka. Przejdź teraz do katalogu, w którym
+ utworzyłeś plik <filename>chmod.txt</filename> i skopiuj
+ go na dyskietkę poleceniem:</para>
+
+ <informalexample>
+ <screen>&prompt.user; <userinput>cp chmod.txt /mnt</></screen>
+ </informalexample>
+
+ <para>Po wpisaniu <command>ls /mnt</command> powinieneś
+ zobaczyć, że w katalogu <filename>/mnt</filename> znajduje
+ się plik <filename>chmod.txt</filename>.</para>
+
+ <para>Niekiedy warto zapisać w pliku to, co wyświetla
+ <filename>/sbin/dmesg</filename>. Można to zrobić
+ wpisując</para>
+
+ <informalexample>
+ <screen>&prompt.user; <userinput>/sbin/dmesg &gt; dmesg.txt</></screen>
+ </informalexample>
+
+ <para>Potem można skopiować <filename>dmesg.txt</filename>
+ na dyskietkę. <command>/sbin/dmesg</command> pokazuje
+ komunikaty wyświetlane podczas ładowania systemu; można
+ dzięki temu prześledzić przebieg procesu ładowania
+ FreeBSD. Kiedy zadajesz pytanie na &a.pl.questions.ms;
+ lub na grupie USENET, na przykład: <quote>FreeBSD nie
+ chce wykryć mojego dysku, co zrobić?</quote>, wówczas
+ inni będą chcieli dowiedzieć się, co pokazuje
+ <command>dmesg</command>.</para>
+
+ <para>Możesz już odmontować stację dyskietek (jako root),
+ wydając polecenie</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>/sbin/umount /mnt</></screen>
+ </informalexample>
+
+ <para>Dyskietkę możesz już wyjąć. Uruchom komputer ponownie
+ by załadować DOS-a. Skopiuj pliki z dyskietki do jakiegoś
+ katalogu i otwórz je przy pomocy DOS-owego EDIT-a,
+ Notatnika Windows albo WordPada, dokonaj jakiejś drobnej
+ zmiany aby wymusić zapisanie pliku, po czym wydrukuj go
+ w sposób tradycyjny dla DOS-a lub Windows. Udało się?
+ Strony dokumentacji systemowej najlepiej jest drukować
+ korzystając z DOS-wego polecenia
+ <command>print</command>. (Kopiowanie plików z FreeBSD
+ na zamontowaną partycję DOS-a ciągle jeszcze bywa
+ niebezpieczne.)</para>
+
+ <para>Aby korzystać z drukarki w FreeBSD, należy dodać
+ odpowiedni wpis w <filename>/etc/printcap</filename>
+ oraz utworzyć katalog buforowania w
+ <filename>/var/spool/output</filename>. Jeśli drukarka
+ jest podłączona do portu <hardware>lpt0</hardware>
+ (oznaczonego <hardware>LPT1</hardware> w DOS-ie), być
+ może wystarczy tylko przejść do
+ <filename>/var/spool/output</filename> i (będąc rootem)
+ utworzyć katalog <filename>lpd</filename> za pomocą
+ polecenia: <command>mkdir lpd</command> (chyba, że taki
+ katalog już tam jest). Od tej chwili drukarka powinna się
+ zgłaszać podczas ładowania systemu, jeśli jest włączona,
+ a drukowanie plików powinno być możliwe dzięki poleceniu
+ <command>lp</command> lub <command>lpr</command>.
+ Konfiguracja drukowania opisana jest w
+ <ulink URL="../../books/handbook/index.html">Podręczniku
+ FreeBSD</ulink>.</para>
+ </sect1>
+
+ <sect1>
+ <title>Inne przydatne polecenia</title>
+
+ <variablelist>
+ <varlistentry>
+ <term><command>df</command></term>
+
+ <listitem>
+ <para>pokazuje zamontowane systemy plików i
+ zajmowaną przestrzeń.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>ps aux</command></term>
+
+ <listitem>
+ <para>lista działających procesów.
+ <command>ps ax</command> wyświetla
+ bardziej zwięzłą postać listy.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>rm <replaceable>nazwapliku</replaceable></command></term>
+
+ <listitem>
+ <para>usunięcie pliku <replaceable>nazwapliku</replaceable>.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>rm -R <replaceable>katalog</replaceable></command></term>
+
+ <listitem>
+ <para>usunięcie katalogu
+ <replaceable>katalog</replaceable> wraz z
+ podkatalogami. (ostrożnie!)</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>ls -R</command></term>
+
+ <listitem>
+ <para>lista plików w katalogu bieżącym i wszystkich
+ jego podkatalogach. Swego czasu stosowałam
+ <command>ls -AFR &gt; where.txt</command> aby
+ sporządzić listę wszystkich plików w
+ <filename>/</filename> oraz (oddzielnie)
+ <filename>/usr</filename>, zanim poznałam lepsze
+ sposoby wyszukiwania plików.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>passwd</command></term>
+
+ <listitem>
+ <para>zmiana hasła użytkownika (lub roota)</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><command>man hier</command></term>
+
+ <listitem>
+ <para>dokumentacja Uniksowego systemu plików</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+
+ <para>Aby odnaleźć plik <filename>nazwapliku</filename>
+ w <filename>/usr</filename> lub jego podkatalogach,
+ skorzystaj z polecenia <command>find</command>:</para>
+
+ <informalexample>
+ <screen>&prompt.user; <userinput>find /usr -name "<replaceable>nazwapliku</>"</></screen>
+ </informalexample>
+
+ <para>Możesz wykorzystać znak <literal>*</literal> jako
+ wzorzec nazwy
+ <parameter>"<replaceable>nazwapliku</replaceable>"</parameter>
+ (wówczas należy ją ująć w cudzysłów). Jeśli wybierzesz,
+ by <command>find</command> szukało w katalogu
+ <filename>/</filename> zamiast <filename>/usr</filename>,
+ wówczas poszukiwania obejmą wszystkie zamontowane
+ systemy plików, w tym CDROM i partycje DOS-owe.</para>
+
+ <para>Polecenia i programy narzędziowe Uniksa są omówione
+ w znakomitej książce <citetitle>Unix for the
+ Impatient</citetitle> (wyd. drugie, Addison-Wesley, 1996),
+ autorstwa Abrahamsa i Larsona. Jest także mnóstwo
+ informacji na ten temat w Internecie, przykładem może być
+ <ulink URL="http://www.geek-girl.com/unix.html">Unix
+ Reference Desk</ulink>.</para>
+ </sect1>
+
+ <sect1>
+ <title>Co dalej</title>
+
+ <para>Masz już wszystko, co będzie potrzebne by sprawnie
+ posługiwać się systemem i edytować pliki, możesz więc
+ zająć się dostosowywaniem systemu do własnych potrzeb.
+ Wiele przydatnych informacji można
+ znaleźć w podręczniku FreeBSD (który zapewne masz na dysku)
+ oraz na <ulink URL="../../../../index.html">stronie
+ FreeBSD</ulink>. Na stronie, a także na CDROM-ie,
+ dostępny jest również pokaźny zbiór pakietów i portów.
+ O tym, jak z nich korzystać, można dowiedzieć się z
+ podręcznika (znajdź potrzebny pakiet, dodaj go poleceniem
+ <command>pkg_add
+ /cdrom/packages/All/<replaceable>nazwapakietu</replaceable></command>,
+ przy czym <replaceable>nazwapakietu</replaceable> jest
+ nazwą pliku pakietu). Listę pakietów i portów wraz z krótkim
+ opisem można znaleźć na CDROM-ie, w
+ <filename>cdrom/packages/index</filename>,
+ <filename>cdrom/packages/index.txt</filename>, oraz
+ <filename>cdrom/ports/index</filename>; dokładniejsze
+ opisy znajdują się w
+ <filename>/cdrom/ports/*/*/pkg/DESCR</filename>, przy czym
+ znaki <literal>*</literal> oznaczają odpowiednio rodzaj
+ programu i jego nazwę.</para>
+
+ <para>Jeżeli opis instalacji portów z CDROM-u zawarty w
+ podręczniku wydaje ci się zbyt skomplikowany (przez jakieś
+ <command>lndir</command>, czy coś), możesz spróbować
+ poniższego sposobu:</para>
+
+ <para>Znajdź port, który chcesz zainstalować, powiedzmy, że
+ będzie to <command>kermit</command>. Na CDROM-ie
+ znajdziesz jego katalog. Skopiuj ten katalog do
+ <filename>/usr/local</filename> (to dobre miejsce na
+ dodatkowe programy, które mają być dostępne dla wszystkich
+ użytkowników) poleceniem:</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>cp -R /cdrom/ports/comm/kermit /usr/local</></screen>
+ </informalexample>
+
+ <para>W efekcie powinien powstać katalog
+ <filename>/usr/local/kermit</filename> zawierający te same
+ pliki, co katalog <command>kermita</command> na
+ CDROM-ie.</para>
+
+ <para>Następnie korzystając z polecenia
+ <command>mkdir</command> utwórz katalog
+ <filename>/usr/ports/distfiles</filename>, chyba że już
+ taki istnieje. Sprawdź teraz, czy w katalogu
+ <filename>/cdrom/ports/distfiles</filename> znajduje się
+ plik o nazwie odpowiadającej instalowanemu portowi.
+ Skopiuj go do <filename>/usr/ports/distfiles</filename>;
+ w obecnych wersjach nie trzeba tego robić, ponieważ
+ zajmuje się tym samo FreeBSD. W przypadku
+ <command>kermita</command> pliku nie ma.</para>
+
+ <para>Teraz poleceniem <command>cd</command> przejdź do
+ podkatalogu <filename>/usr/local/kermit</filename>
+ zawierającego plik <filename>Makefile</filename>.
+ Napisz</para>
+
+ <informalexample>
+ <screen>&prompt.root; <userinput>make all install</></screen>
+ </informalexample>
+
+ <para>Spowoduje to, iż wszystkie potrzebne pliki, których
+ nie ma na CDROM-ie lub w
+ <filename>/usr/ports/distfiles</filename>, zostaną
+ pobrane przez FTP. Jeżeli jeszcze nie skonfigurowałeś
+ sieci, a w <filename>/cdrom/ports/distfiles</filename>
+ nie ma pliku potrzebnego do instalacji, będziesz musiał
+ uzyskać ten plik korzystając z innego komputera i
+ skopiować go do <filename>/usr/ports/distfiles</filename>
+ z dyskietki albo partycji DOS-a. Zajrzyj do
+ <filename>Makefile</filename> (poleceniem
+ <command>cat</command>, <command>more</command> lub
+ <command>view</command>) by dowiedzieć się, skąd wziąć
+ potrzebny plik (lokalizacja w sieci) i jak się on nazywa.
+ Jeżeli ściągasz plik korzystając z DOS-a, jego nazwa
+ zostanie obcięta, tak więc po umieszczeniu go w
+ <filename>/usr/ports/distfiles</filename> będziesz musiał
+ zmienić nazwę pliku (poleceniem
+ <command>mv</command>) na prawidłową. (Pamiętaj, by
+ pobierać pliki w trybie binarnym!) Przejdź z powrotem do
+ <filename>/usr/local/kermit</filename>, odnajdź katalog
+ zawierający <filename>Makefile</filename>, i wpisz
+ <command>make all install</command>.</para>
+
+ <para>Może się zdarzyć, że do instalacji jakiegoś portu
+ bądź pakietu wymagany będzie jakiś inny program. Jeżeli
+ instalacja zostanie przerwana komunikatem <errorname>can't
+ find unzip</errorname> (nie znaleziono unzip) lub podobnym,
+ prawdopodobnie trzeba będzie zainstalować pakiet lub port
+ unzip by móc kontynuować instalację.</para>
+
+ <para>Po instalacji wpisz <command>rehash</command> aby
+ uwzględnić ewentualne zmiany ścieżki. (Jeżeli używając
+ <command>whereis</command> lub <command>which</command>
+ często trafiasz na komunikat
+ <errorname>path not found</errorname> (nie znaleziono
+ ścieżki), powinieneś uzupełnić katalogi umieszczone w
+ ścieżce w pliku <filename>.cshrc</filename> w katalogu
+ domowym. Ścieżka pełni w Uniksie taką samą rolę jak w
+ DOS-ie, z tym, że (domyślnie) nie zawiera katalogu
+ bieżącego ze względów bezpieczeństwa; chcąc uruchomić
+ plik z bieżącego katalogu, należy przed jego nazwą
+ napisać <filename>./</filename>; bez spacji po znaku
+ ukośnika.)</para>
+
+
+ <para>Być może zechcesz ściągnąć najnowszą wersję przeglądarki
+ Netscape z ich <ulink URL="ftp://ftp.netscape.com/">serwera
+ FTP</ulink>. (Netscape wymaga zainstalowanego X Window
+ System.) Dostępna jest wersja dla FreeBSD, więc poszukaj
+ jej. Rozpakuj plik poleceniami <command>gunzip
+ <replaceable>nazwapliku</replaceable></command> oraz
+ <command>tar xvf
+ <replaceable>nazwapliku</replaceable></command> i przenieś
+ otrzymany plik wykonywalny do
+ <filename>/usr/local/bin</filename>
+ lub podobnego. Wykonaj <command>rehash</command>, oraz
+ dodaj następujące polecenia do plików
+ <filename>.cshrc</filename> w katalogu domowym każdego
+ użytkownika, lub (szybciej) do pliku
+ <filename>/etc/csh.cshrc</filename>, głównego
+ pliku konfiguracyjnego <command>csh</command>:</para>
+
+ <informalexample>
+ <programlisting>setenv XKEYSYMDB /usr/X11R6/lib/X11/XKeysymDB
+setenv XNLSPATH /usr/X11R6/lib/X11/nls</programlisting>
+ </informalexample>
+
+ <para>Zakładamy tu, że plik <filename>XKeysymDB</filename> i
+ katalog <filename>nls</filename> znajdują się w
+ <filename>/usr/X11R6/lib/X11</filename>; jeśli tak nie jest,
+ odnajdź je i umieść tam.</para>
+
+ <para>Jeżeli początkowo zainstalowałeś Netscape jako port
+ z CDROM-u (lub FTP), nie umieszczaj nowego pliku wykonywalnego
+ w miejscu starego <filename>/usr/local/bin/netscape</filename>;
+ jest to zwykły skrypt powłoki zajmujący się przygotowaniem
+ zmiennych środowiskowych. Zamiast tego zmień nazwę nowego
+ pliku na <filename>netscape.bin</filename> i zastąp
+ poprzedni plik wykonywalny
+ <filename>/usr/local/netscape/netscape</filename>.</para>
+ </sect1>
+
+ <sect1>
+ <title>Własne środowisko pracy</title>
+
+ <para>Najważniejszym elementem środowiska pracy jest
+ powłoka. W DOS-ie rolę powłoki pełni command.com. Powłoka
+ zajmuje się przetwarzaniem poleceń wpisywanych w linii
+ poleceń, jest więc pośrednikiem w komunikacji z systemem
+ operacyjnym. Może także wykonywać skypty, podobne do
+ znanych z DOS-a plików wsadowych, składające się z serii
+ poleceń wykonywanych bez ingerencji użytkownika.</para>
+
+ <para>W FreeBSD zainstalowane są dwie powłoki:
+ <command>csh</command> i <command>sh</command>.
+ <command>csh</command> dobrze obsługuje linię poleceń,
+ skrypty powinny być jednak pisane w
+ <command>sh</command> (lub <command>bash</command>).
+ Wpisując <command>echo $SHELL</command> możesz dowiedzieć
+ się, z jakiej powłoki korzystasz.</para>
+
+ <para>Powłoka <command>csh</command> jest niezła, jednakże
+ <command>tcsh</command> potrafi wszystko to, co
+ <command>csh</command> i jeszcze więcej. Umożliwia
+ wywoływanie wcześniej wpisanych poleceń za pomocą klawiszy
+ strzałek. Pozwala uzupełniać nazwy plików przy pomocy
+ klawisza <keycap>Tab</keycap> (<command>csh</command>
+ wykorzystuje do tego <keycap>Esc</keycap>), jak również
+ powrót do ostatnio odwiedzonego katalogu poleceniem
+ <command>cd -</command>. W <command>tcsh</command> można
+ też w prosty sposób zmienić swój znak zachęty. Wszystko to
+ bardzo ułatwia życie.</para>
+ <para>Nową powłokę instaluje się w następujący sposób:</para>
+
+ <procedure>
+ <step>
+ <para>Zaintaluj powłokę w postaci portu lub pakietu.
+ Wpisz <command>rehash</command>, a potem
+ <command>which tcsh</command> (zakładając, że
+ instalujesz <command>tcsh</command>), by mieć pewność,
+ że instalacja powiodła się.</para>
+ </step>
+
+ <step>
+ <para>Działając jako root, dopisz w pliku
+ <filename>/etc/shells</filename> wiersz odpowiadający
+ nowej powłoce, w naszym przypadku
+ <filename>/usr/local/bin/tcsh</filename>, i zapisz
+ zmiany. (W przypadku niektórych portów może być to
+ zrobione automatycznie.)</para>
+ </step>
+
+ <step>
+ <para>Aby na stałe zmienić swoją powłokę na
+ <command>tcsh</command>, skorzystaj z polecenia
+ <command>chsh</command>. Możesz także wpisać
+ <command>tcsh</command> w linii poleceń, by zmienić
+ powłokę bez powtórnego logowania się.</para>
+ </step>
+ </procedure>
+
+ <note>
+ <para>Zmiana powłoki roota na inną niż
+ <command>sh</command> lub <command>csh</command>
+ we wczesnych wersjach FreeBSD i wielu wersjach Uniksa
+ może okazać się niebezpieczna, ponieważ może prowadzić
+ do braku działającej powłoki w trybie jednego
+ użytkownika. Można sobie z tym poradzić stosując
+ <command>su -m</command> do zostania rootem, dzięki
+ czemu możliwe jest korzystanie z <command>tcsh</command>,
+ gdyż powłoka jest elementem środowiska. Aby takie
+ rozwiązanie było stosowane na stałe, utwórz alias w
+ <filename>.tcshrc</filename> dopisując polecenie
+ <command>alias su su -m</command></para>
+ </note>
+
+ <para>Podczas uruchamiania, <command>tcsh</command>
+ odczytuje pliki <filename>/etc/csh.cshrc</filename>
+ i <filename>/etc/csh.login</filename>, podobnie jak to
+ robi <command>csh</command>. Ponadto wczytywane są
+ pliki <filename>.login</filename> i
+ <filename>.cshrc</filename>, chyba, że istnieje plik
+ <filename>.tcshrc</filename>. Można go utworzyć
+ kopiując po prostu plik <filename>.cshrc</filename>
+ jako <filename>.tcshrc</filename>.</para>
+
+ <para>Gdy powłoka <command>tcsh</command> jest już
+ zainstalowana, możesz zająć się wyborem odpowiadającego ci
+ znaku zachęty. Szczegółowo jest to opisane w dokumentacji
+ <command>tcsh</command>, przykładowe polecenie
+ przedstawione poniżej wpisane do
+ <filename>.tcshrc</filename> spowoduje, iż znak zachęty
+ będzie informował o tym, ile wydałeś poleceń, która jest
+ godzina, oraz jaki jest bieżący katalog. Na końcu pojawi
+ się znak <literal>></literal>, jeśli jesteś zwykłym
+ użytkownikiem, lub znak <literal>#</literal>, jeśli jesteś
+ rootem:</para>
+
+ <para><command>set prompt = "%h %t %~ %# "</command></para>
+
+ <para>Powyższy wiersz umieść w miejscu starego "set
+ prompt", albo pod "if($?prompt) then". Poprzedni wiersz
+ zamień w komentarz, dzięki temu będziesz mógł do niego
+ wrócić, jeśli zechcesz. Przepisz dokładnie spacje i
+ cudzysłowy. Aby plik <filename>.tcshrc</filename> został
+ przeczytany ponownie, wpisz
+ <command>source .tcshrc</command>.</para>
+
+ <para>Listę innych zmiennych środowiskowych uzyskać można
+ korzystając z polecenia <command>env</command>. Lista zawiera
+ domyślny edytor, program do przeglądania plików tekstowych,
+ typ terminala i wiele innych. Jeżeli logujesz się do systemu
+ przez sieć i jakiś program nie daje się uruchomić z powodu
+ nieodpowiedniego terminala, przydatne może okazać się
+ polecenie <command>setenv TERM vt100</command>.</para>
+ </sect1>
+
+ <sect1>
+ <title>Na koniec</title>
+
+ <para>Mając uprawnienia roota, można odmontować CDROM
+ poleceniem <command>/sbin/umount /cdrom</command>, następnie
+ wyjąć płytę z napędu, włożyć inną i zamontować ją poleceniem
+ <command>/sbin/mount_cd9660 /dev/cd0a /cdrom</command> (o
+ ile <hardware>cd0a</hardware> odpowiada napędowi CDROM).
+ Najnowsze wersje FreeBSD pozwalają na montowanie CDROM-u
+ poleceniem <command>/sbin/mount /cdrom</command>.</para>
+
+ <para>Jeśli masz do dyspozycji niewiele miejsca na dysku,
+ możesz skorzystać z bezpośredniego systemu plików na drugiej
+ płycie CD FreeBSD. Jej zawartość zmienia się z każdym
+ nowym wydaniem systemu. Spróbuj na przykład zagrać w jedną
+ z gier umieszczonych na CDROM-ie. Przyda się przy tym
+ <command>lndir</command>, instalowane wraz z X Window System,
+ aby powiadomić programy gdzie znajdują się potrzebne im
+ pliki, ponieważ są one w systemie plików
+ <filename>/cdrom</filename>, a nie jak zazwyczaj w
+ <filename>/usr</filename> i jego podkatalogach. Skorzystaj z
+ <command>man lndir</command>.</para>
+ </sect1>
+
+ <sect1>
+ <title>Uwagi mile widziane</title>
+
+ <para>Jeśli skorzystałeś z niniejszego wprowadzenia, chętnie
+ dowiem się, czy w czymś ci ono pomogło, co było
+ niedostatecznie wyjaśnione i czego brakowało.
+ Dziękuję profesorowi Eugene W. Stark z SUNY-Stony
+ Brook, oraz Johnowi Fieberowi za pomocne uwagi.</para>
+
+ <para>Annelise Anderson,
+ <email>andrsn@andrsn.stanford.edu</email></para>
+ </sect1>
+</article>
diff --git a/pl_PL.ISO8859-2/share/sgml/authors.ent b/pl_PL.ISO8859-2/share/sgml/authors.ent
new file mode 100644
index 0000000000..3fea4d3801
--- /dev/null
+++ b/pl_PL.ISO8859-2/share/sgml/authors.ent
@@ -0,0 +1,715 @@
+<!--
+ The FreeBSD Polish Documentation Project
+
+ Nazwiska i adresy email autorów wnoszących swój wkład oraz edytorów CVS.
+ Nazwy obiektów dla edytorów powinny być takie same jak ich login na
+ freefall.FreeBSD.org.
+
+ Należy używać tych obiektów gdy odnosimy się do osób.
+
+ Prosimy utrzymywać tę listę w alfabetycznym porządku według nazw obiektów.
+
+ WAŻNE: Jeśli usuwasz nazwiska z tego pliku, *musisz* upewnić się, że
+ wszystkie odnośniki do nich zostały usunięte z tłumaczeń
+ podręcznika. Jeśli nie zostały, *zepsujesz* budowania
+ w innych językach, a w konsekwencji zostaniesz publicznie
+ wyśmiany.
+
+ $FreeBSD$
+ Original revision: 1.237
+-->
+
+<!ENTITY a.abial "Andrzej Bialecki <email>abial@FreeBSD.org</email>">
+
+<!ENTITY a.ache "Andrey A. Chernov <email>ache@FreeBSD.org</email>">
+
+<!ENTITY a.adam "Adam David <email>adam@FreeBSD.org</email>">
+
+<!ENTITY a.ade "Ade Lovett <email>ade@FreeBSD.org</email>">
+
+<!ENTITY a.adrian "Adrian Chadd <email>adrian@FreeBSD.org</email>">
+
+<!ENTITY a.akiyama "Shunsuke Akiyama <email>akiyama@FreeBSD.org</email>">
+
+<!ENTITY a.alane "Alan Eldridge <email>alane@FreeBSD.org</email>">
+
+<!ENTITY a.alc "Alan L. Cox <email>alc@FreeBSD.org</email>">
+
+<!ENTITY a.alex "Alexander Langer <email>alex@FreeBSD.org</email>">
+
+<!ENTITY a.alfred "Alfred Perlstein <email>alfred@FreeBSD.org</email>">
+
+<!ENTITY a.ambrisko "Doug Ambrisko <email>ambrisko@FreeBSD.org</email>">
+
+<!ENTITY a.amorita "Akio Morita <email>amorita@FreeBSD.org</email>">
+
+<!ENTITY a.amurai "Atsushi Murai <email>amurai@FreeBSD.org</email>">
+
+<!ENTITY a.anders "Anders Nordby <email>anders@FreeBSD.org</email>">
+
+<!ENTITY a.andreas "Andreas Klemm <email>andreas@FreeBSD.org</email>">
+
+<!ENTITY a.andy "Andrey Zakhvatov <email>andy@FreeBSD.org</email>">
+
+<!ENTITY a.anholt "Eric Anholt <email>anholt@FreeBSD.org</email>">
+
+<!ENTITY a.archie "Archie Cobbs <email>archie@FreeBSD.org</email>">
+
+<!ENTITY a.arr "Andrew R. Reiter <email>arr@FreeBSD.org</email>">
+
+<!ENTITY a.asami "Satoshi Asami <email>asami@FreeBSD.org</email>">
+
+<!ENTITY a.asmodai "Jeroen Ruigrok/Asmodai <email>asmodai@FreeBSD.org</email>">
+
+<!ENTITY a.assar "Assar Westerlund <email>assar@FreeBSD.org</email>">
+
+<!ENTITY a.awebster "Andrew Webster <email>awebster@pubnix.net</email>">
+
+<!ENTITY a.babkin "Sergey Babkin <email>babkin@FreeBSD.org</email>">
+
+<!ENTITY a.bbraun "Rob Braun <email>bbraun@FreeBSD.org</email>">
+
+<!ENTITY a.bde "Bruce Evans <email>bde@FreeBSD.org</email>">
+
+<!ENTITY a.bean "Rebecca Visger <email>bean@FreeBSD.org</email>">
+
+<!ENTITY a.ben "Ben Smithurst <email>ben@FreeBSD.org</email>">
+
+<!ENTITY a.benno "Benno Rice <email>benno@FreeBSD.org</email>">
+
+<!ENTITY a.billf "Bill Fumerola <email>billf@FreeBSD.org</email>">
+
+<!ENTITY a.blackend "Marc Fonvieille <email>blackend@FreeBSD.org</email>">
+
+<!ENTITY a.bmah "Bruce A. Mah <email>bmah@FreeBSD.org</email>">
+
+<!ENTITY a.bmilekic "Bosko Milekic <email>bmilekic@FreeBSD.org</email>">
+
+<!ENTITY a.bp "Boris Popov <email>bp@FreeBSD.org</email>">
+
+<!ENTITY a.brandon "Brandon Gillespie <email>brandon@FreeBSD.org</email>">
+
+<!ENTITY a.brian "Brian Somers <email>brian@FreeBSD.org</email>">
+
+<!ENTITY a.brooks "Brooks Davis <email>brooks@FreeBSD.org</email>">
+
+<!ENTITY a.bsd "Brian S. Dean <email>bsd@FreeBSD.org</email>">
+
+<!ENTITY a.cawimm "Charles A. Wimmer <email>cawimm@FreeBSD.org</email>">
+
+<!ENTITY a.ceri "Ceri Davies <email>ceri@FreeBSD.org</email>">
+
+<!ENTITY a.cg "Cameron Grant <email>cg@FreeBSD.org</email>">
+
+<!ENTITY a.charnier "Philippe Charnier <email>charnier@FreeBSD.org</email>">
+
+<!ENTITY a.chern "Chern Lee <email>chern@FreeBSD.org</email>">
+
+<!ENTITY a.chm "Christoph Herrmann <email>chm@FreeBSD.org</email>">
+
+<!ENTITY a.chris "Chris Costello <email>chris@FreeBSD.org</email>">
+
+<!ENTITY a.chuckr "Chuck Robey <email>chuckr@FreeBSD.org</email>">
+
+<!ENTITY a.cjc "Crist J. Clark <email>cjc@FreeBSD.org</email>">
+
+<!ENTITY a.cjh "Junho CHOI <email>cjh@FreeBSD.org</email>">
+
+<!ENTITY a.clive "Clive Lin <email>clive@FreeBSD.org</email>">
+
+<!ENTITY a.cokane "Coleman Kane <email>cokane@FreeBSD.org</email>">
+
+<!ENTITY a.cp "Chuck Paterson <email>cp@FreeBSD.org</email>">
+
+<!ENTITY a.cpiazza "Chris Piazza <email>cpiazza@FreeBSD.org</email>">
+
+<!ENTITY a.cracauer "Martin Cracauer <email>cracauer@FreeBSD.org</email>">
+
+<!ENTITY a.csgr "Geoff Rehmet <email>csgr@FreeBSD.org</email>">
+
+<!ENTITY a.cshumway "Christopher Shumway <email>cshumway@FreeBSD.org</email>">
+
+<!ENTITY a.cwt "Chris Timmons <email>cwt@FreeBSD.org</email>">
+
+<!ENTITY a.cy "Cy Schubert <email>cy@FreeBSD.org</email>">
+
+<!ENTITY a.dan "Dan Moschuk <email>dan@FreeBSD.org</email>">
+
+<!ENTITY a.danny "Daniel O'Callaghan <email>danny@FreeBSD.org</email>">
+
+<!ENTITY a.dannyboy "Daniel Harris <email>dannyboy@FreeBSD.org</email>">
+
+<!ENTITY a.darrenr "Darren Reed <email>darrenr@FreeBSD.org</email>">
+
+<!ENTITY a.davidc "Chad David <email>davidc@FreeBSD.org</email>">
+
+<!ENTITY a.davidn "David Nugent <email>davidn@FreeBSD.org</email>">
+
+<!ENTITY a.dbaker "Daniel Baker <email>dbaker@FreeBSD.org</email>">
+
+<!ENTITY a.dburr "Donald Burr <email>dburr@FreeBSD.org</email>">
+
+<!ENTITY a.dcs "Daniel C. Sobral <email>dcs@FreeBSD.org</email>">
+
+<!ENTITY a.dd "Dima Dorfman <email>dd@FreeBSD.org</email>">
+
+<!ENTITY a.dec "David E. Cross <email>dec@FreeBSD.org</email>">
+
+<!ENTITY a.deischen "Daniel Eischen <email>deischen@FreeBSD.org</email>">
+
+<!ENTITY a.demon "Dmitry Sivachenko <email>demon@FreeBSD.org</email>">
+
+<!ENTITY a.des "Dag-Erling C. Sm&oslash;rgrav <email>des@FreeBSD.org</email>">
+
+<!ENTITY a.dfr "Doug Rabson <email>dfr@FreeBSD.org</email>">
+
+<!ENTITY a.dg "David Greenman <email>dg@FreeBSD.org</email>">
+
+<!ENTITY a.dick "Richard Seaman Jr. <email>dick@FreeBSD.org</email>">
+
+<!ENTITY a.dillon "Matthew Dillon <email>dillon@FreeBSD.org</email>">
+
+<!ENTITY a.dima "Dima Ruban <email>dima@FreeBSD.org</email>">
+
+<!ENTITY a.dinoex "Dirk Meyer <email>dinoex@FreeBSD.org</email>">
+
+<!ENTITY a.dirk "Dirk Fr&ouml;mberg <email>dirk@FreeBSD.org</email>">
+
+<!ENTITY a.dmlb "Duncan Barclay <email>dmlb@FreeBSD.org</email>">
+
+<!ENTITY a.dougb "Doug Barton <email>DougB@FreeBSD.org</email>">
+
+<!ENTITY a.dt "Dmitrij Tejblum <email>dt@FreeBSD.org</email>">
+
+<!ENTITY a.dufault "Peter Dufault <email>dufault@FreeBSD.org</email>">
+
+<!ENTITY a.dwcjr "David W. Chapman Jr. <email>dwcjr@FreeBSD.org</email>">
+
+<!ENTITY a.dwhite "Doug White <email>dwhite@FreeBSD.org</email>">
+
+<!ENTITY a.dwmalone "David Malone <email>dwmalone@FreeBSD.org</email>">
+
+<!ENTITY a.eivind "Eivind Eklund <email>eivind@FreeBSD.org</email>">
+
+<!ENTITY a.ejc "Eric J. Chet <email>ejc@FreeBSD.org</email>">
+
+<!ENTITY a.eric "Eric Melville <email>eric@FreeBSD.org</email>">
+
+<!ENTITY a.erich "Eric L. Hernes <email>erich@FreeBSD.org</email>">
+
+<!ENTITY a.fanf "Tony Finch <email>fanf@FreeBSD.org</email>">
+
+<!ENTITY a.fenner "Bill Fenner <email>fenner@FreeBSD.org</email>">
+
+<!ENTITY a.fjoe "Max Khon <email>fjoe@FreeBSD.org</email>">
+
+<!ENTITY a.flathill "Seiichirou Hiraoka <email>flathill@FreeBSD.org</email>">
+
+<!ENTITY a.foxfair "Howard F. Hu <email>foxfair@FreeBSD.org</email>">
+
+<!ENTITY a.fsmp "Steve Passe <email>fsmp@FreeBSD.org</email>">
+
+<!ENTITY a.furuta "Atsushi Furuta <email>furuta@FreeBSD.org</email>">
+
+<!ENTITY a.gad "Garance A Drosehn <email>gad@FreeBSD.org</email>">
+
+<!ENTITY a.gallatin "Andrew Gallatin <email>gallatin@FreeBSD.org</email>">
+
+<!ENTITY a.gerald "Gerald Pfeifer <email>gerald@FreeBSD.org</email>">
+
+<!ENTITY a.ghelmer "Guy Helmer <email>ghelmer@FreeBSD.org</email>">
+
+<!ENTITY a.gibbs "Justin T. Gibbs <email>gibbs@FreeBSD.org</email>">
+
+<!ENTITY a.gioria "Sebastien Gioria <email>gioria@FreeBSD.org</email>">
+
+<!ENTITY a.gj "Gary Jennejohn <email>gj@FreeBSD.org</email>">
+
+<!ENTITY a.glewis "Greg Lewis <email>glewis@FreeBSD.org</email>">
+
+<!ENTITY a.gordon "Gordon Tetlow <email>gordon@FreeBSD.org</email>">
+
+<!ENTITY a.gpalmer "Gary Palmer <email>gpalmer@FreeBSD.org</email>">
+
+<!ENTITY a.graichen "Thomas Graichen <email>graichen@FreeBSD.org</email>">
+
+<!ENTITY a.green "Brian F. Feldman <email>green@FreeBSD.org</email>">
+
+<!ENTITY a.greid "George C. A. Reid <email>greid@FreeBSD.org</email>">
+
+<!ENTITY a.grog "Greg Lehey <email>grog@FreeBSD.org</email>">
+
+<!ENTITY a.groudier "Gerard Roudier <email>groudier@FreeBSD.org</email>">
+
+<!ENTITY a.gryphon "Coranth Gryphon <email>gryphon@FreeBSD.org</email>">
+
+<!ENTITY a.gshapiro "Gregory Neil Shapiro <email>gshapiro@FreeBSD.org</email>">
+
+<!ENTITY a.gsutter "Gregory Sutter <email>gsutter@FreeBSD.org</email>">
+
+<!ENTITY a.guido "Guido van Rooij <email>guido@FreeBSD.org</email>">
+
+<!ENTITY a.hanai "Hiroyuki HANAI <email>hanai@FreeBSD.org</email>">
+
+<!ENTITY a.helbig "Wolfgang Helbig <email>helbig@FreeBSD.org</email>">
+
+<!ENTITY a.hm "Hellmuth Michaelis <email>hm@FreeBSD.org</email>">
+
+<!ENTITY a.hoek "Tim Vanderhoek <email>hoek@FreeBSD.org</email>">
+
+<!ENTITY a.horikawa "Kazuo Horikawa <email>horikawa@FreeBSD.org</email>">
+
+<!ENTITY a.hosokawa "Tatsumi Hosokawa <email>hosokawa@FreeBSD.org</email>">
+
+<!ENTITY a.hrs "Hiroki Sato <email>hrs@FreeBSD.org</email>">
+
+<!ENTITY a.hsu "Jeffrey Hsu <email>hsu@FreeBSD.org</email>">
+
+<!ENTITY a.iedowse "Ian Dowse <email>iedowse@FreeBSD.org</email>">
+
+<!ENTITY a.ijliao "Ying-Chieh Liao <email>ijliao@FreeBSD.org</email>">
+
+<!ENTITY a.ikob "Katsushi Kobayashi <email>ikob@FreeBSD.org</email>">
+
+<!ENTITY a.imp "Warner Losh <email>imp@FreeBSD.org</email>">
+
+<!ENTITY a.imura "R. Imura <email>imura@FreeBSD.org</email>">
+
+<!ENTITY a.issei "Issei Suzuki <email>issei@FreeBSD.org</email>">
+
+<!ENTITY a.itojun "Jun-ichiro Itoh <email>itojun@itojun.org</email>">
+
+<!ENTITY a.iwasaki "Mitsuru IWASAKI <email>iwasaki@FreeBSD.org</email>">
+
+<!ENTITY a.jake "Jake Burkholder <email>jake@FreeBSD.org</email>">
+
+<!ENTITY a.jasone "Jason Evans <email>jasone@FreeBSD.org</email>">
+
+<!ENTITY a.jayanth "Jayanth Vijayaraghavan <email>jayanth@FreeBSD.org</email>">
+
+<!ENTITY a.jb "John Birrell <email>jb@FreeBSD.org</email>">
+
+<!ENTITY a.jdp "John Polstra <email>jdp@FreeBSD.org</email>">
+
+<!ENTITY a.jedgar "Chris D. Faulhaber <email>jedgar@FreeBSD.org</email>">
+
+<!ENTITY a.jeff "Jeff Roberson <email>jeff@FreeBSD.org</email>">
+
+<!ENTITY a.jeh "James Housley <email>jeh@FreeBSD.org</email>">
+
+<!ENTITY a.jehamby "Jake Hamby <email>jehamby@FreeBSD.org</email>">
+
+<!ENTITY a.jesper "Jesper Skriver <email>jesper@FreeBSD.org</email>">
+
+<!ENTITY a.jesusr "Jesus Rodriguez <email>jesusr@FreeBSD.org</email>">
+
+<!ENTITY a.jfieber "John Fieber <email>jfieber@FreeBSD.org</email>">
+
+<!ENTITY a.jfitz "James FitzGibbon <email>jfitz@FreeBSD.org</email>">
+
+<!ENTITY a.jgreco "Joe Greco <email>jgreco@FreeBSD.org</email>">
+
+<!ENTITY a.jhay "John Hay <email>jhay@FreeBSD.org</email>">
+
+<!ENTITY a.jhb "John Baldwin <email>jhb@FreeBSD.org</email>">
+
+<!ENTITY a.jhs "Julian Stacey <email>jhs@FreeBSD.org</email>">
+
+<!ENTITY a.jim "Jim Mock <email>jim@FreeBSD.org</email>">
+
+<!ENTITY a.jkh "Jordan K. Hubbard <email>jkh@FreeBSD.org</email>">
+
+<!ENTITY a.jkoshy "Joseph Koshy <email>jkoshy@FreeBSD.org</email>">
+
+<!ENTITY a.jlemon "Jonathan Lemon <email>jlemon@FreeBSD.org</email>">
+
+<!ENTITY a.jlrobin "James L. Robinson <email>jlrobin@FreeBSD.org</email>">
+
+<!ENTITY a.jmacd "Joshua Peck Macdonald <email>jmacd@FreeBSD.org</email>">
+
+<!ENTITY a.jmallett "Juli Mallett <email>jmallett@FreeBSD.org</email>">
+
+<!ENTITY a.jmas "Jose M. Alcaide <email>jmas@FreeBSD.org</email>">
+
+<!ENTITY a.jmb "Jonathan M. Bresler <email>jmb@FreeBSD.org</email>">
+
+<!ENTITY a.jmg "John-Mark Gurney <email>jmg@FreeBSD.org</email>">
+
+<!ENTITY a.jmz "Jean-Marc Zucconi <email>jmz@FreeBSD.org</email>">
+
+<!ENTITY a.joe "Josef Karthauser <email>joe@FreeBSD.org</email>">
+
+<!ENTITY a.joerg "J&ouml;rg Wunsch <email>joerg@FreeBSD.org</email>">
+
+<!ENTITY a.johan "Johan Karlsson <email>johan@FreeBSD.org</email>">
+
+<!ENTITY a.john "John Cavanaugh <email>john@FreeBSD.org</email>">
+
+<!ENTITY a.jon "Jonathan Chen <email>jon@FreeBSD.org</email>">
+
+<!ENTITY a.jseger "Justin Seger <email>jseger@FreeBSD.org</email>">
+
+<!ENTITY a.julian "Julian Elischer <email>julian@FreeBSD.org</email>">
+
+<!ENTITY a.jvh "Johannes Helander <email>jvh@FreeBSD.org</email>">
+
+<!ENTITY a.jwd "John W. DeBoskey <email>jwd@FreeBSD.org</email>">
+
+<!ENTITY a.kan "Alexander Kabaev <email>kan@FreeBSD.org</email>">
+
+<!ENTITY a.karl "Karl Strickland <email>karl@FreeBSD.org</email>">
+
+<!ENTITY a.kato "Takenori KATO <email>kato@FreeBSD.org</email>">
+
+<!ENTITY a.kbyanc "Kelly Yancey <email>kbyanc@FreeBSD.org</email>">
+
+<!ENTITY a.keichii "Michael C. Wu <email>keichii@FreeBSD.org</email>">
+
+<!ENTITY a.keith "Jing-Tang Keith Jang <email>keith@FreeBSD.org</email>">
+
+<!ENTITY a.ken "Kenneth D. Merry <email>ken@FreeBSD.org</email>">
+
+<!ENTITY a.keramida "Giorgos Keramidas <email>keramida@FreeBSD.org</email>">
+
+<!ENTITY a.kevlo "Kevin Lo <email>kevlo@FreeBSD.org</email>">
+
+<!ENTITY a.kiri "Kazuhiko Kiriyama <email>kiri@FreeBSD.org</email>">
+
+<!ENTITY a.kjc "Kenjiro Cho <email>kjc@FreeBSD.org</email>">
+
+<!ENTITY a.knu "Akinori MUSHA <email>knu@FreeBSD.org</email>">
+
+<!ENTITY a.kris "Kris Kennaway <email>kris@FreeBSD.org</email>">
+
+<!ENTITY a.kuriyama "Jun Kuriyama <email>kuriyama@FreeBSD.org</email>">
+
+<!ENTITY a.lars "Lars Fredriksen <email>lars@FreeBSD.org</email>">
+
+<!ENTITY a.lile "Larry Lile <email>lile@FreeBSD.org</email>">
+
+<!ENTITY a.lioux "M&aacute;rio S&eacute;rgio Fujikawa Ferreira <email>lioux@FreeBSD.org</email>">
+
+<!ENTITY a.ljo "L Jonas Olsson <email>ljo@FreeBSD.org</email>">
+
+<!ENTITY a.lkoeller "Lars Koeller <email>lkoeller@FreeBSD.org</email>">
+
+<!ENTITY a.logo "Valentino Vaschetto <email>logo@FreeBSD.org</email>">
+
+<!ENTITY a.luigi "Luigi Rizzo <email>luigi@FreeBSD.org</email>">
+
+<!ENTITY a.luoqi "Luoqi Chen <email>luoqi@FreeBSD.org</email>">
+
+<!ENTITY a.marcel "Marcel Moolenaar <email>marcel@FreeBSD.org</email>">
+
+<!ENTITY a.marcus "Joe Marcus Clarke <email>marcus@FreeBSD.org</email>">
+
+<!ENTITY a.markm "Mark Murray <email>markm@FreeBSD.org</email>">
+
+<!ENTITY a.marko "Mark Ovens <email>marko@FreeBSD.org</email>">
+
+<!ENTITY a.markp "Mark Pulford <email>markp@FreeBSD.org</email>">
+
+<!ENTITY a.martin "Martin Renters <email>martin@FreeBSD.org</email>">
+
+<!ENTITY a.matusita "Makoto Matsushita <email>matusita@FreeBSD.org</email>">
+
+<!ENTITY a.max "Masafumi NAKANE <email>max@FreeBSD.org</email>">
+
+<!ENTITY a.maxim "Maxim Konovalov <email>maxim@FreeBSD.org</email>">
+
+<!ENTITY a.mb "Maxim Bolotin <email>mb@FreeBSD.org</email>">
+
+<!ENTITY a.mbarkah "Ade Barkah <email>mbarkah@FreeBSD.org</email>">
+
+<!ENTITY a.mbr "Martin Blapp <email>mbr@FreeBSD.org</email>">
+
+<!ENTITY a.mckay "Stephen McKay <email>mckay@FreeBSD.org</email>">
+
+<!ENTITY a.mckusick "Kirk McKusick <email>mckusick@FreeBSD.org</email>">
+
+<!ENTITY a.mdodd "Matthew N. Dodd <email>mdodd@FreeBSD.org</email>">
+
+<!ENTITY a.mharo "Michael Haro <email>mharo@FreeBSD.org</email>">
+
+<!ENTITY a.mi "Mikhail Teterin <email>mi@FreeBSD.org</email>">
+
+<!ENTITY a.mike "Mike Barcroft <email>mike@FreeBSD.org</email>">
+
+<!ENTITY a.mikeh "Mike Heffner <email>mikeh@FreeBSD.org</email>">
+
+<!ENTITY a.mini "Jonathan Mini <email>mini@FreeBSD.org</email>">
+
+<!ENTITY a.mita "Yoshio MITA <email>mita@FreeBSD.org</email>">
+
+<!ENTITY a.mjacob "Matthew Jacob <email>mjacob@FreeBSD.org</email>">
+
+<!ENTITY a.mks "Mike Spengler <email>mks@FreeBSD.org</email>">
+
+<!ENTITY a.motoyuki "Motoyuki Konno <email>motoyuki@FreeBSD.org</email>">
+
+<!ENTITY a.mp "Mark Peek <email>mp@FreeBSD.org</email>">
+
+<!ENTITY a.mph "Matthew Hunt <email>mph@FreeBSD.org</email>">
+
+<!ENTITY a.mpp "Mike Pritchard <email>mpp@FreeBSD.org</email>">
+
+<!ENTITY a.mr "Michael Reifenberger <email>mr@FreeBSD.org</email>">
+
+<!ENTITY a.msmith "Michael Smith <email>msmith@FreeBSD.org</email>">
+
+<!ENTITY a.mtaylor "Mark J. Taylor <email>mtaylor@FreeBSD.org</email>">
+
+<!ENTITY a.murray "Murray Stokely <email>murray@FreeBSD.org</email>">
+
+<!ENTITY a.mux "Maxime Henrion <email>mux@FreeBSD.org</email>">
+
+<!ENTITY a.mwlucas "Michael W. Lucas <email>mwlucas@FreeBSD.org</email>">
+
+<!ENTITY a.naddy "Christian Weisgerber <email>naddy@FreeBSD.org</email>">
+
+<!ENTITY a.nakai "Yukihiro Nakai <email>nakai@FreeBSD.org</email>">
+
+<!ENTITY a.nate "Nate Williams <email>nate@FreeBSD.org</email>">
+
+<!ENTITY a.nbm "Neil Blakey-Milner <email>nbm@FreeBSD.org</email>">
+
+<!ENTITY a.nectar "Jacques Vidrine <email>nectar@FreeBSD.org</email>">
+
+<!ENTITY a.netchild "Alexander Leidinger <email>netchild@FreeBSD.org</email>">
+
+<!ENTITY a.newton "Mark Newton <email>newton@FreeBSD.org</email>">
+
+<!ENTITY a.nhibma "Nick Hibma <email>n_hibma@FreeBSD.org</email>">
+
+<!ENTITY a.nik "Nik Clayton <email>nik@FreeBSD.org</email>">
+
+<!ENTITY a.nobutaka "Nobutaka MANTANI <email>nobutaka@FreeBSD.org</email>">
+
+<!ENTITY a.non "Noriaki Mitsunaga <email>non@FreeBSD.org</email>">
+
+<!ENTITY a.nork "Norikatsu Shigemura <email>nork@FreeBSD.org</email>">
+
+<!ENTITY a.nsayer "Nick Sayer <email>nsayer@FreeBSD.org</email>">
+
+<!ENTITY a.nsouch "Nicolas Souchu <email>nsouch@FreeBSD.org</email>">
+
+<!ENTITY a.nyan "Yoshihiro Takahashi <email>nyan@FreeBSD.org</email>">
+
+<!ENTITY a.obrien "David O'Brien <email>obrien@FreeBSD.org</email>">
+
+<!ENTITY a.okazaki "Tetsurou OKAZAKI <email>okazaki@FreeBSD.org</email>">
+
+<!ENTITY a.olgeni "Jimmy Olgeni <email>olgeni@FreeBSD.org</email>">
+
+<!ENTITY a.onoe "Atsushi Onoe <email>onoe@FreeBSD.org</email>">
+
+<!ENTITY a.orion "Orion Hodson <email>orion@FreeBSD.org</email>">
+
+<!ENTITY a.pat "Patrick Li <email>pat@FreeBSD.org</email>">
+
+<!ENTITY a.patrick "Patrick S. Gardella <email>patrick@FreeBSD.org</email>">
+
+<!ENTITY a.paul "Paul Richards <email>paul@FreeBSD.org</email>">
+
+<!ENTITY a.pb "Pierre Beyssac <email>pb@FreeBSD.org</email>">
+
+<!ENTITY a.pdeuskar "Prafulla S. Deuskar <email>pdeuskar@FreeBSD.org</email>">
+
+<!ENTITY a.pds "Peter da Silva <email>pds@FreeBSD.org</email>">
+
+<!ENTITY a.perky "Hye-Shik Chang <email>perky@FreeBSD.org</email>">
+
+<!ENTITY a.petef "Pete Fritchman <email>petef@FreeBSD.org</email>">
+
+<!ENTITY a.peter "Peter Wemm <email>peter@FreeBSD.org</email>">
+
+<!ENTITY a.phantom "Alexey Zelkin <email>phantom@FreeBSD.org</email>">
+
+<!ENTITY a.phk "Poul-Henning Kamp <email>phk@FreeBSD.org</email>">
+
+<!ENTITY a.pho "Peter Holm <email>pho@FreeBSD.org</email>">
+
+<!ENTITY a.piero "Piero Serini <email>piero@FreeBSD.org</email>">
+
+<!ENTITY a.pirzyk "Jim Pirzyk <email>pirzyk@FreeBSD.org</email>">
+
+<!ENTITY a.proven "Chris Provenzano <email>proven@FreeBSD.org</email>">
+
+<!ENTITY a.ps "Paul Saab <email>ps@FreeBSD.org</email>">
+
+<!ENTITY a.pst "Paul Traina <email>pst@FreeBSD.org</email>">
+
+<!ENTITY a.reg "Jeremy Lea <email>reg@FreeBSD.org</email>">
+
+<!ENTITY a.rgrimes "Rodney Grimes <email>rgrimes@FreeBSD.org</email>">
+
+<!ENTITY a.ricardag "Ricardo AG <email>ricardag@FreeBSD.org</email>">
+
+<!ENTITY a.rich "Rich Murphey <email>rich@FreeBSD.org</email>">
+
+<!ENTITY a.rnordier "Robert Nordier <email>rnordier@FreeBSD.org</email>">
+
+<!ENTITY a.roam "Peter Pentchev <email>roam@FreeBSD.org</email>">
+
+<!ENTITY a.robert "Robert Drehmel <email>robert@FreeBSD.org</email>">
+
+<!ENTITY a.roberto "Ollivier Robert <email>roberto@FreeBSD.org</email>">
+
+<!ENTITY a.roger "Roger Hardiman <email>roger@FreeBSD.org</email>">
+
+<!ENTITY a.rpratt "Randy Pratt <email>rpratt@FreeBSD.org</email>">
+
+<!ENTITY a.rse "Ralf S. Engelschall <email>rse@FreeBSD.org</email>">
+
+<!ENTITY a.ru "Ruslan Ermilov <email>ru@FreeBSD.org</email>">
+
+<!ENTITY a.rv "Rajesh Vaidheeswarran <email>rv@FreeBSD.org</email>">
+
+<!ENTITY a.rvb "Robert V. Baron <email>rvb@FreeBSD.org</email>">
+
+<!ENTITY a.rwatson "Robert Watson <email>rwatson@FreeBSD.org</email>">
+
+<!ENTITY a.sada "SADA Kenji <email>sada@FreeBSD.org</email>">
+
+<!ENTITY a.sam "Sam Leffler <email>sam@FreeBSD.org</email>">
+
+<!ENTITY a.sanpei "Yoshiro Sanpei MIHIRA <email>sanpei@FreeBSD.org</email>">
+
+<!ENTITY a.schweikh "Jens Schweikhardt <email>schweikh@FreeBSD.org</email>">
+
+<!ENTITY a.scop "Ville Skytt&auml; <email>scop@FreeBSD.org</email>">
+
+<!ENTITY a.scottl "Scott Long <email>scottl@FreeBSD.org</email>">
+
+<!ENTITY a.scrappy "Marc G. Fournier <email>scrappy@FreeBSD.org</email>">
+
+<!ENTITY a.se "Stefan Esser <email>se@FreeBSD.org</email>">
+
+<!ENTITY a.sef "Sean Eric Fagan <email>sef@FreeBSD.org</email>">
+
+<!ENTITY a.semenu "Semen Ustimenko <email>semenu@FreeBSD.org</email>">
+
+<!ENTITY a.sf "Satsuki FUJISHIMA <email>sf@FreeBSD.org</email>">
+
+<!ENTITY a.shafeeq "Shafeeq Sinnamohideen <email>shafeeq@FreeBSD.org</email>">
+
+<!ENTITY a.sheldonh "Sheldon Hearn <email>sheldonh@FreeBSD.org</email>">
+
+<!ENTITY a.shiba "Takeshi Shibagaki <email>shiba@FreeBSD.org</email>">
+
+<!ENTITY a.shige "Shigeyuki Fukushima <email>shige@FreeBSD.org</email>">
+
+<!ENTITY a.shin "Yoshinobu Inoue <email>shin@FreeBSD.org</email>">
+
+<!ENTITY a.silby "Mike Silbersack <email>silby@FreeBSD.org</email>">
+
+<!ENTITY a.simokawa "Hidetoshi Shimokawa <email>simokawa@FreeBSD.org</email>">
+
+<!ENTITY a.skv "Sergey Skvortsov <email>skv@FreeBSD.org</email>">
+
+<!ENTITY a.smace "Scott Mace <email>smace@FreeBSD.org</email>">
+
+<!ENTITY a.smpatel "Sujal Patel <email>smpatel@FreeBSD.org</email>">
+
+<!ENTITY a.sobomax "Maxim Sobolev <email>sobomax@FreeBSD.org</email>">
+
+<!ENTITY a.sos "S&oslash;ren Schmidt <email>sos@FreeBSD.org</email>">
+
+<!ENTITY a.stanislav "G. Adam Stanislav <email>adam@whizkidtech.net</email>">
+
+<!ENTITY a.stark "Gene Stark <email>stark@FreeBSD.org</email>">
+
+<!ENTITY a.stb "Stefan Bethke <email>stb@FreeBSD.org</email>">
+
+<!ENTITY a.steve "Steve Price <email>steve@FreeBSD.org</email>">
+
+<!ENTITY a.sumikawa "Munechika Sumikawa <email>sumikawa@FreeBSD.org</email>">
+
+<!ENTITY a.suz "SUZUKI Shinsuke <email>suz@FreeBSD.org</email>">
+
+<!ENTITY a.swallace "Steven Wallace <email>swallace@FreeBSD.org</email>">
+
+<!ENTITY a.takawata "Takanori Watanabe <email>takawata@FreeBSD.org</email>">
+
+<!ENTITY a.tanimura "Seigo Tanimura <email>tanimura@FreeBSD.org</email>">
+
+<!ENTITY a.taoka "Satoshi Taoka <email>taoka@FreeBSD.org</email>">
+
+<!ENTITY a.tedm "Ted Mittelstaedt <email>tedm@FreeBSD.org</email>">
+
+<!ENTITY a.tegge "Tor Egge <email>tegge@FreeBSD.org</email>">
+
+<!ENTITY a.tg "Thomas Gellekum <email>tg@FreeBSD.org</email>">
+
+<!ENTITY a.thepish "Peter Hawkins <email>thepish@FreeBSD.org</email>">
+
+<!ENTITY a.ticso "Bernd Walter <email>ticso@FreeBSD.org</email>">
+
+<!ENTITY a.tjr "Tim J. Robbins <email>tjr@FreeBSD.org</email>">
+
+<!ENTITY a.tmm "Thomas M&ouml;stl <email>tmm@FreeBSD.org</email>">
+
+<!ENTITY a.tobez "Anton Berezin <email>tobez@FreeBSD.org</email>">
+
+<!ENTITY a.tom "Tom Hukins <email>tom@FreeBSD.org</email>">
+
+<!ENTITY a.tomsoft "Thomas-Henning von Kamptz <email>tomsoft@FreeBSD.org</email>">
+
+<!ENTITY a.torstenb "Torsten Blum <email>torstenb@FreeBSD.org</email>">
+
+<!ENTITY a.toshi "Toshihiko Arai <email>toshi@FreeBSD.org</email>">
+
+<!ENTITY a.trevor "Trevor Johnson <email>trevor@FreeBSD.org</email>">
+
+<!ENTITY a.trhodes "Tom Rhodes <email>trhodes@FreeBSD.org</email>">
+
+<!ENTITY a.truckman "Don &ldquo;Truck&rdquo; Lewis <email>truckman@FreeBSD.org</email>">
+
+<!ENTITY a.tshiozak "Takuya SHIOZAKI <email>tshiozak@FreeBSD.org</email>">
+
+<!ENTITY a.uch "Yasushi UCHIYAMA <email>uch@FreeBSD.org</email>">
+
+<!ENTITY a.ue "Udo Erdelhoff <email>ue@FreeBSD.org</email>">
+
+<!ENTITY a.ugen "Ugen J.S.Antsilevich <email>ugen@FreeBSD.org</email>">
+
+<!ENTITY a.uhclem "Frank Durda IV <email>uhclem@FreeBSD.org</email>">
+
+<!ENTITY a.ulf "Ulf Zimmermann <email>ulf@FreeBSD.org</email>">
+
+<!ENTITY a.ume "Hajimu UMEMOTO <email>ume@FreeBSD.org</email>">
+
+<!ENTITY a.unfurl "Bill Swingle <email>unfurl@FreeBSD.org</email>">
+
+<!ENTITY a.vanilla "Vanilla I. Shu <email>vanilla@FreeBSD.org</email>">
+
+<!ENTITY a.wes "Wes Peters <email>wes@FreeBSD.org</email>">
+
+<!ENTITY a.whiteside "Don Whiteside <email>whiteside@acm.org</email>">
+
+<!ENTITY a.wilko "Wilko Bulte <email>wilko@FreeBSD.org</email>">
+
+<!ENTITY a.will "Will Andrews <email>will@FreeBSD.org</email>">
+
+<!ENTITY a.wjv "Johann Visagie <email>wjv@FreeBSD.org</email>">
+
+<!ENTITY a.wollman "Garrett Wollman <email>wollman@FreeBSD.org</email>">
+
+<!ENTITY a.wosch "Wolfram Schneider <email>wosch@FreeBSD.org</email>">
+
+<!ENTITY a.wpaul "Bill Paul <email>wpaul@FreeBSD.org</email>">
+
+<!ENTITY a.wsanchez "Wilfredo S&aacute;nchez <email>wsanchez@FreeBSD.org</email>">
+
+<!ENTITY a.wylie "Wylie Stilwell <email>wylie@magnesium.net</email>">
+
+<!ENTITY a.yar "Yar Tikhiy <email>yar@FreeBSD.org</email>">
+
+<!ENTITY a.yoichi "Yoichi NAKAYAMA <email>yoichi@FreeBSD.org</email>">
+
+<!ENTITY a.yokota "Kazutaka YOKOTA <email>yokota@FreeBSD.org</email>">
+
+<!ENTITY a.zarzycki "Dave Zarzycki <email>zarzycki@FreeBSD.org</email>">
+
+<!ENTITY a.znerd "Ernst de Haan <email>znerd@FreeBSD.org</email>">
+
diff --git a/pl_PL.ISO8859-2/share/sgml/bookinfo.ent b/pl_PL.ISO8859-2/share/sgml/bookinfo.ent
new file mode 100644
index 0000000000..bc6a20a512
--- /dev/null
+++ b/pl_PL.ISO8859-2/share/sgml/bookinfo.ent
@@ -0,0 +1,16 @@
+<!--
+ The FreeBSD Polish Documentation Project
+
+ Odnośniki do innych plików, które mogą być zawarte w elemencie
+ DocBook-owym BookInfo.
+
+ Nazwy obiektów przyjmują formę "bookinfo.<element>", gdzie <element> jest
+ nazwą najbardziej zewnętrznego elementu w obiekcie. Na przykład:
+ "bookinfo.legalnoctice", albo "bookinfo.preface".
+
+ $FreeBSD$
+ Original revision: 1.2
+-->
+
+<!ENTITY bookinfo.legalnotice SYSTEM "legalnotice.sgml">
+
diff --git a/pl_PL.ISO8859-2/share/sgml/catalog b/pl_PL.ISO8859-2/share/sgml/catalog
new file mode 100644
index 0000000000..1eff5d70df
--- /dev/null
+++ b/pl_PL.ISO8859-2/share/sgml/catalog
@@ -0,0 +1,11 @@
+ -- ...................................................................... --
+ -- FreeBSD SGML Public Identifiers ...................................... --
+
+ -- $FreeBSD$
+ --
+
+PUBLIC "-//FreeBSD//DOCUMENT DocBook Stylesheet//EN"
+ "freebsd.dsl"
+
+PUBLIC "-//FreeBSD//ENTITIES DocBook Mailing List Entities//PL"
+ "mailing-lists.ent"
diff --git a/pl_PL.ISO8859-2/share/sgml/freebsd.dsl b/pl_PL.ISO8859-2/share/sgml/freebsd.dsl
new file mode 100644
index 0000000000..1773e99933
--- /dev/null
+++ b/pl_PL.ISO8859-2/share/sgml/freebsd.dsl
@@ -0,0 +1,274 @@
+<!--
+ The FreeBSD Polish Documentation Project
+
+ $FreeBSD$
+ Original revision: 1.14
+ -->
+
+<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN" [
+<!ENTITY freebsd.dsl PUBLIC "-//FreeBSD//DOCUMENT DocBook Language Neutral Stylesheet//EN" CDATA DSSSL>
+<!ENTITY % output.html "IGNORE">
+<!ENTITY % output.print "IGNORE">
+<!ENTITY % output.print.niceheaders "IGNORE">
+]>
+
+<style-sheet>
+ <style-specification use="docbook">
+ <style-specification-body>
+ <!-- HTML only .................................................... -->
+
+ <![ %output.html; [
+ (define ($email-footer$)
+ (make sequence
+ (make element gi: "p"
+ attributes: (list (list "align" "center"))
+ (make element gi: "small"
+ (literal "This, and other documents, can be downloaded from ")
+ (create-link
+ (list (list "HREF" "ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/"))
+ (literal "ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/"))
+ (literal ".")))
+ (make element gi: "p"
+ attributes: (list (list "align" "center"))
+ (make element gi: "small"
+ (literal "For questions about FreeBSD, read the ")
+ (create-link
+ (list (list "HREF" "http://www.FreeBSD.org/docs.html"))
+ (literal "documentation"))
+ (literal " before contacting <")
+ (create-link
+ (list (list "HREF" "mailto:questions@FreeBSD.org"))
+ (literal "questions@FreeBSD.org"))
+ (literal ">.")
+ (make empty-element gi: "br")
+ (literal "For questions about this documentation, e-mail <")
+ (create-link (list (list "HREF" "mailto:doc@FreeBSD.org"))
+ (literal "doc@FreeBSD.org"))
+ (literal ">.")))))
+
+
+ <!-- Convert " ... " to `` ... '' in the HTML output. -->
+ (element quote
+ (make sequence
+ (literal "``")
+ (process-children)
+ (literal "''")))
+
+ <!-- Generate links to HTML man pages -->
+ (define %refentry-xref-link% #t)
+
+ <!-- Specify how to generate the man page link HREF -->
+ (define ($create-refentry-xref-link$ #!optional (n (current-node)))
+ (let* ((r (select-elements (children n) (normalize "refentrytitle")))
+ (m (select-elements (children n) (normalize "manvolnum")))
+ (v (attribute-string (normalize "vendor") n))
+ (u (string-append "http://www.FreeBSD.org/cgi/man.cgi?query="
+ (data r) "&" "sektion=" (data m))))
+ (case v
+ (("xfree86") (string-append u "&" "manpath=XFree86+4.2.0"))
+ (("netbsd") (string-append u "&" "manpath=NetBSD+1.5"))
+ (("ports") (string-append u "&" "manpath=FreeBSD+Ports"))
+ (else u))))
+ ]]>
+
+ <!-- More aesthetically pleasing chapter headers for print output -->
+
+ <![ %output.print.niceheaders; [
+
+ (define niceheader-rule-spacebefore (* (HSIZE 5) %head-before-factor%))
+ (define niceheader-rule-spaceafter 0pt)
+
+ (define ($component-title$)
+ (let* ((info (cond
+ ((equal? (gi) (normalize "appendix"))
+ (select-elements (children (current-node)) (normalize "docinfo")))
+ ((equal? (gi) (normalize "article"))
+ (node-list-filter-by-gi (children (current-node))
+ (list (normalize "artheader")
+ (normalize "articleinfo"))))
+ ((equal? (gi) (normalize "bibliography"))
+ (select-elements (children (current-node)) (normalize "docinfo")))
+ ((equal? (gi) (normalize "chapter"))
+ (select-elements (children (current-node)) (normalize "docinfo")))
+ ((equal? (gi) (normalize "dedication"))
+ (empty-node-list))
+ ((equal? (gi) (normalize "glossary"))
+ (select-elements (children (current-node)) (normalize "docinfo")))
+ ((equal? (gi) (normalize "index"))
+ (select-elements (children (current-node)) (normalize "docinfo")))
+ ((equal? (gi) (normalize "preface"))
+ (select-elements (children (current-node)) (normalize "docinfo")))
+ ((equal? (gi) (normalize "reference"))
+ (select-elements (children (current-node)) (normalize "docinfo")))
+ ((equal? (gi) (normalize "setindex"))
+ (select-elements (children (current-node)) (normalize "docinfo")))
+ (else
+ (empty-node-list))))
+ (exp-children (if (node-list-empty? info)
+ (empty-node-list)
+ (expand-children (children info)
+ (list (normalize "bookbiblio")
+ (normalize "bibliomisc")
+ (normalize "biblioset")))))
+ (parent-titles (select-elements (children (current-node)) (normalize "title")))
+ (info-titles (select-elements exp-children (normalize "title")))
+ (titles (if (node-list-empty? parent-titles)
+ info-titles
+ parent-titles))
+ (subtitles (select-elements exp-children (normalize "subtitle"))))
+ (make sequence
+ (make paragraph
+ font-family-name: %title-font-family%
+ font-weight: 'bold
+ font-size: (HSIZE 4)
+ line-spacing: (* (HSIZE 4) %line-spacing-factor%)
+ space-before: (* (HSIZE 4) %head-before-factor%)
+ start-indent: 0pt
+ first-line-start-indent: 0pt
+ quadding: %component-title-quadding%
+ heading-level: (if %generate-heading-level% 1 0)
+ keep-with-next?: #t
+
+ (if (string=? (element-label) "")
+ (empty-sosofo)
+ (literal (gentext-element-name-space (current-node))
+ (element-label)
+ (gentext-label-title-sep (gi)))))
+ (make paragraph
+ font-family-name: %title-font-family%
+ font-weight: 'bold
+ font-posture: 'italic
+ font-size: (HSIZE 6)
+ line-spacing: (* (HSIZE 6) %line-spacing-factor%)
+; space-before: (* (HSIZE 5) %head-before-factor%)
+ start-indent: 0pt
+ first-line-start-indent: 0pt
+ quadding: %component-title-quadding%
+ heading-level: (if %generate-heading-level% 1 0)
+ keep-with-next?: #t
+
+ (if (node-list-empty? titles)
+ (element-title-sosofo) ;; get a default!
+ (with-mode component-title-mode
+ (make sequence
+ (process-node-list titles)))))
+
+ (make paragraph
+ font-family-name: %title-font-family%
+ font-weight: 'bold
+ font-posture: 'italic
+ font-size: (HSIZE 3)
+ line-spacing: (* (HSIZE 3) %line-spacing-factor%)
+ space-before: (* 0.5 (* (HSIZE 3) %head-before-factor%))
+ space-after: (* (HSIZE 4) %head-after-factor%)
+ start-indent: 0pt
+ first-line-start-indent: 0pt
+ quadding: %component-subtitle-quadding%
+ keep-with-next?: #t
+
+ (with-mode component-title-mode
+ (make sequence
+ (process-node-list subtitles))))
+
+ (if (equal? (gi) (normalize "index"))
+ (empty-sosofo)
+ (make rule
+ length: %body-width%
+ display-alignment: 'start
+ space-before: niceheader-rule-spacebefore
+ space-after: niceheader-rule-spaceafter
+ line-thickness: 0.5pt)))))
+
+ (element authorgroup
+ (empty-sosofo))
+
+ ]]>
+
+ <!-- Print only ................................................... -->
+
+ <![ %output.print; [
+
+ (define minimal-section-labels #f)
+ (define max-section-level-labels
+ (if minimal-section-labels 3 10))
+
+ (define ($section-title$)
+ (let* ((sect (current-node))
+ (info (info-element))
+ (exp-children (if (node-list-empty? info)
+ (empty-node-list)
+ (expand-children (children info)
+ (list (normalize "bookbiblio")
+ (normalize "bibliomisc")
+ (normalize "biblioset")))))
+ (parent-titles (select-elements (children sect) (normalize "title")))
+ (info-titles (select-elements exp-children (normalize "title")))
+ (titles (if (node-list-empty? parent-titles)
+ info-titles
+ parent-titles))
+ (subtitles (select-elements exp-children (normalize "subtitle")))
+ (renderas (inherited-attribute-string (normalize "renderas") sect))
+ (hlevel ;; the apparent section level;
+ (if renderas ;; if not real section level,
+ (string->number ;; then get the apparent level
+ (substring renderas 4 5)) ;; from "renderas",
+ (SECTLEVEL))) ;; else use the real level
+ (hs (HSIZE (- 4 hlevel))))
+
+ (make sequence
+ (make paragraph
+ font-family-name: %title-font-family%
+ font-weight: (if (< hlevel 5) 'bold 'medium)
+ font-posture: (if (< hlevel 5) 'upright 'italic)
+ font-size: hs
+ line-spacing: (* hs %line-spacing-factor%)
+ space-before: (* hs %head-before-factor%)
+ space-after: (if (node-list-empty? subtitles)
+ (* hs %head-after-factor%)
+ 0pt)
+ start-indent: (if (or (>= hlevel 3)
+ (member (gi) (list (normalize "refsynopsisdiv")
+ (normalize "refsect1")
+ (normalize "refsect2")
+ (normalize "refsect3"))))
+ %body-start-indent%
+ 0pt)
+ first-line-start-indent: 0pt
+ quadding: %section-title-quadding%
+ keep-with-next?: #t
+ heading-level: (if %generate-heading-level% (+ hlevel 1) 0)
+ ;; SimpleSects are never AUTO numbered...they aren't hierarchical
+ (if (> hlevel (- max-section-level-labels 1))
+ (empty-sosofo)
+ (if (string=? (element-label (current-node)) "")
+ (empty-sosofo)
+ (literal (element-label (current-node))
+ (gentext-label-title-sep (gi sect)))))
+ (element-title-sosofo (current-node)))
+ (with-mode section-title-mode
+ (process-node-list subtitles))
+ ($section-info$ info))))
+
+ ]]>
+
+ <!-- Both sets of stylesheets ..................................... -->
+
+ (define (local-en-label-title-sep)
+ (list
+ (list (normalize "warning") ": ")
+ (list (normalize "caution") ": ")
+ (list (normalize "chapter") " ")
+ (list (normalize "sect1") " ")
+ (list (normalize "sect2") " ")
+ (list (normalize "sect3") " ")
+ (list (normalize "sect4") " ")
+ (list (normalize "sect5") " ")
+ ))
+
+ (define %html-header-tags% '(("META" ("HTTP-EQUIV" "Content-Type") ("CONTENT" "text/html; charset=iso-8859-2"))))
+
+ </style-specification-body>
+ </style-specification>
+
+ <external-specification id="docbook" document="freebsd.dsl">
+</style-sheet>
diff --git a/pl_PL.ISO8859-2/share/sgml/legalnotice.sgml b/pl_PL.ISO8859-2/share/sgml/legalnotice.sgml
new file mode 100644
index 0000000000..77a5ef3d3a
--- /dev/null
+++ b/pl_PL.ISO8859-2/share/sgml/legalnotice.sgml
@@ -0,0 +1,47 @@
+<!--
+ The FreeBSD Polish Documentation Project
+
+ Standard FreeBSD Documentation Project Legal Notice.
+
+ $FreeBSD$
+ Original revision: 1.2
+-->
+
+<legalnotice>
+ <para>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:</para>
+
+ <orderedlist>
+ <listitem>
+ <para>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.</para>
+ </listitem>
+
+ <listitem>
+ <para>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.</para>
+ </listitem>
+ </orderedlist>
+
+ <important>
+ <para>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
+ THE FREEBSD DOCUMENTATION PROJECT 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.</para>
+ </important>
+</legalnotice>
+
diff --git a/pl_PL.ISO8859-2/share/sgml/mailing-lists.ent b/pl_PL.ISO8859-2/share/sgml/mailing-lists.ent
new file mode 100644
index 0000000000..568f92722f
--- /dev/null
+++ b/pl_PL.ISO8859-2/share/sgml/mailing-lists.ent
@@ -0,0 +1,218 @@
+<!--
+ The FreeBSD Polish Documentation Project
+
+ Names of FreeBSD mailing lists and related software.
+
+ $FreeBSD$
+ Original revision: 1.7
+-->
+
+<!ENTITY a.advocacy "FreeBSD advocacy mailing list
+ <email>freebsd-advocacy@FreeBSD.org</email>">
+
+<!ENTITY a.afs "FreeBSD AFS porting mailing list
+ <email>freebsd-afs@FreeBSD.org</email>">
+
+<!ENTITY a.aic7xxx "FreeBSD Adaptec AIC7xxx discussions mailing list
+ <email>freebsd-aic7xxx@FreeBSD.org</email>">
+
+<!ENTITY a.alpha "FreeBSD Alpha porting mailing list
+ <email>freebsd-alpha@FreeBSD.org</email>">
+
+<!ENTITY a.announce "FreeBSD announcements mailing list
+ <email>freebsd-announce@FreeBSD.org</email>">
+
+<!ENTITY a.arch "FreeBSD architecture and design mailing list
+ <email>freebsd-arch@FreeBSD.org</email>">
+
+<!ENTITY a.arm "FreeBSD ARM porting mailing list
+ <email>freebsd-arm@FreeBSD.org</email>">
+
+<!ENTITY a.atm "FreeBSD ATM networking mailing list
+ <email>freebsd-atm@FreeBSD.org</email>">
+
+<!ENTITY a.audit "FreeBSD source code audit mailing list
+ <email>freebsd-audit@FreeBSD.org</email>">
+
+<!ENTITY a.binup "FreeBSD binary update system mailing list
+ <email>freebsd-binup@FreeBSD.org</email>">
+
+<!ENTITY a.bugbusters "FreeBSD bugbusters mailing list
+ <email>freebsd-bugbusters@FreeBSD.org</email>">
+
+<!ENTITY a.bugs "FreeBSD problem reports mailing list
+ <email>freebsd-bugs@FreeBSD.org</email>">
+
+<!ENTITY a.chat "FreeBSD chat mailing list
+ <email>freebsd-chat@FreeBSD.org</email>">
+
+<!ENTITY a.cluster "FreeBSD clustering mailing list
+ <email>freebsd-cluster@FreeBSD.org</email>">
+
+<!ENTITY a.committers "FreeBSD committer's mailing list
+ <email>cvs-committers@FreeBSD.org</email>">
+
+<!ENTITY a.config "FreeBSD installation and configuration tools mailing list
+ <email>freebsd-config@FreeBSD.org</email>">
+
+<!ENTITY a.core "FreeBSD core team
+ <email>freebsd-core@FreeBSD.org</email>">
+
+<!ENTITY a.current "FreeBSD-current mailing list
+ <email>freebsd-current@FreeBSD.org</email>">
+
+<!ENTITY a.cvsall "FreeBSD CVS commit message mailing list
+ <email>cvs-all@FreeBSD.org</email>">
+
+<!ENTITY a.database "FreeBSD based Databases mailing list
+ <email>freebsd-database@FreeBSD.org</email>">
+
+<!ENTITY a.developers "FreeBSD developers mailing list
+ <email>freebsd-developers@FreeBSD.org</email>">
+
+<!ENTITY a.doc "FreeBSD documentation project mailing list
+ <email>freebsd-doc@FreeBSD.org</email>">
+
+<!ENTITY a.emulation "FreeBSD-emulation mailing list
+ <email>freebsd-emulation@FreeBSD.org</email>">
+
+<!ENTITY a.firewire "FreeBSD FireWire (IEEE 1394) discussion mailing list
+ <email>freebsd-firewire@FreeBSD.org</email>">
+
+<!ENTITY a.fs "FreeBSD filesystem project mailing list
+ <email>freebsd-fs@FreeBSD.org</email>">
+
+<!ENTITY a.gnome "FreeBSD GNOME and GNOME applications mailing list
+ <email>freebsd-gnome@FreeBSD.org</email>">
+
+<!ENTITY a.hackers "FreeBSD technical discussions mailing list
+ <email>freebsd-hackers@FreeBSD.org</email>">
+
+<!ENTITY a.hardware "FreeBSD hardware and equipment mailing list
+ <email>freebsd-hardware@FreeBSD.org</email>">
+
+<!ENTITY a.hubs "FreeBSD mirror sites mailing list
+ <email>freebsd-hubs@FreeBSD.org</email>">
+
+<!ENTITY a.i18n "FreeBSD internationalization mailing list
+ <email>freebsd-i18n@FreeBSD.org</email>">
+
+<!ENTITY a.ia64 "FreeBSD IA64 porting mailing list
+ <email>freebsd-ia64@FreeBSD.org</email>">
+
+<!ENTITY a.install "FreeBSD installation development mailing list
+ <email>freebsd-install@FreeBSD.org</email>">
+
+<!ENTITY a.ipfw "FreeBSD IPFW code mailing list
+ <email>freebsd-ipfw@FreeBSD.org</email>">
+
+<!ENTITY a.isdn "FreeBSD ISDN mailing list
+ <email>freebsd-isdn@FreeBSD.org</email>">
+
+<!ENTITY a.isp "FreeBSD Internet service provider's mailing list
+ <email>freebsd-isp@FreeBSD.org</email>">
+
+<!ENTITY a.java "FreeBSD Java Language mailing list
+ <email>freebsd-java@FreeBSD.org</email>">
+
+<!ENTITY a.jobs "FreeBSD related employment mailing list
+ <email>freebsd-jobs@FreeBSD.org</email>">
+
+<!ENTITY a.lfs "FreeBSD LFS porting mailing list
+ <email>freebsd-lfs@FreeBSD.org</email>">
+
+<!ENTITY a.libh "FreeBSD libh installation and packaging system mailing list
+ <email>freebsd-libh@FreeBSD.org</email>">
+
+<!ENTITY a.mobile "FreeBSD laptop computer mailing list
+ <email>freebsd-mobile@FreeBSD.org</email>">
+
+<!ENTITY a.mozilla "FreeBSD port of the Mozilla browser mailing list
+ <email>freebsd-mozilla@FreeBSD.org</email>">
+
+<!ENTITY a.multimedia "FreeBSD multimedia mailing list
+ <email>freebsd-multimedia@FreeBSD.org</email>">
+
+<!ENTITY a.net "FreeBSD networking mailing list
+ <email>freebsd-net@FreeBSD.org</email>">
+
+<!ENTITY a.newbies "FreeBSD new users mailing list
+ <email>freebsd-newbies@FreeBSD.org</email>">
+
+<!ENTITY a.newbus "New Bus Architecture mailing list
+ <email>new-bus-arch@bostonradio.org</email>">
+
+<!ENTITY a.platforms "FreeBSD non-Intel platforms porting mailing list
+ <email>freebsd-platforms@FreeBSD.org</email>">
+
+<!ENTITY a.policy "FreeBSD core team policy decisions mailing list
+ <email>freebsd-policy@FreeBSD.org</email>">
+
+<!ENTITY a.ports "FreeBSD ports mailing list
+ <email>freebsd-ports@FreeBSD.org</email>">
+
+<!ENTITY a.ppc "FreeBSD PowerPC porting mailing list
+ <email>freebsd-ppc@FreeBSD.org</email>">
+
+<!ENTITY a.qa "FreeBSD Quality Assurance mailing list
+ <email>freebsd-qa@FreeBSD.org</email>">
+
+<!ENTITY a.questions "FreeBSD general questions mailing list
+ <email>freebsd-questions@FreeBSD.org</email>">
+<!ENTITY a.pl.questions.m "ogólna lista dyskusyjna nt. FreeBSD
+ <email>freebsd-questions@FreeBSD.org</email>">
+ <!ENTITY a.pl.questions.d "ogólnej listy dyskusyjnej nt. FreeBSD
+ <email>freebsd-questions@FreeBSD.org</email>">
+ <!ENTITY a.pl.questions.c "ogólnej liście dyskusyjnej nt. FreeBSD
+ <email>freebsd-questions@FreeBSD.org</email>">
+ <!ENTITY a.pl.questions.b "ogólną listę dyskusyjną nt. FreeBSD
+ <email>freebsd-questions@FreeBSD.org</email>">
+ <!ENTITY a.pl.questions.n "ogólną listą dyskusujną nt. FreeBSD
+ <email>freebsd-questions@FreeBSD.org</email>">
+ <!ENTITY a.pl.questions.ms "ogólnej liście dyskusyjnej nt. FreeBSD
+ <email>freebsd-questions@FreeBSD.org</email>">
+
+<!ENTITY a.realtime "FreeBSD realtime extensions mailing list
+ <email>freebsd-realtime@FreeBSD.org</email>">
+
+<!ENTITY a.scsi "FreeBSD SCSI subsystem mailing list
+ <email>freebsd-scsi@FreeBSD.org</email>">
+
+<!ENTITY a.security "FreeBSD security mailing list
+ <email>freebsd-security@FreeBSD.org</email>">
+
+<!ENTITY a.security-notifications "FreeBSD security notifications mailing list
+ <email>freebsd-security-notifications@FreeBSD.org</email>">
+
+<!ENTITY a.small "FreeBSD-small mailing list
+ <email>freebsd-small@FreeBSD.org</email>">
+
+<!ENTITY a.smp "FreeBSD symmetric multiprocessing mailing list
+ <email>freebsd-smp@FreeBSD.org</email>">
+
+<!ENTITY a.sparc "FreeBSD SPARC porting mailing list
+ <email>freebsd-sparc@FreeBSD.org</email>">
+
+<!ENTITY a.stable "FreeBSD-stable mailing list
+ <email>freebsd-stable@FreeBSD.org</email>">
+
+<!ENTITY a.standards "FreeBSD C99 and POSIX compliance mailing list
+ <email>freebsd-standards@FreeBSD.org</email>">
+
+<!ENTITY a.test "FreeBSD test mailing list
+ <email>freebsd-test@FreeBSD.org</email>">
+
+<!ENTITY a.tokenring "FreeBSD tokenring mailing list
+ <email>freebsd-tokenring@FreeBSD.org</email>">
+
+<!ENTITY a.usergroups "FreeBSD user group coordination mailing list
+ <email>freebsd-user-groups@FreeBSD.org</email>">
+
+<!ENTITY a.vendors "FreeBSD vendors pre-release coordination mailing list
+ <email>freebsd-vendors@FreeBSD.org</email>">
+
+<!ENTITY a.www "FreeBSD Webmaster mailing list
+ <email>freebsd-www@FreeBSD.org</email>">
+
+<!ENTITY a.majordomo "<email>majordomo@FreeBSD.org</email>">
+
diff --git a/pl_PL.ISO8859-2/share/sgml/newsgroups.ent b/pl_PL.ISO8859-2/share/sgml/newsgroups.ent
new file mode 100644
index 0000000000..e47d2189a1
--- /dev/null
+++ b/pl_PL.ISO8859-2/share/sgml/newsgroups.ent
@@ -0,0 +1,25 @@
+<!--
+ The FreeBSD Polish Documentation Project
+
+ Nazwy grup dyskusyjnych o FreeBSD
+
+ $FreeBSD$
+ Original revision: 1.1
+-->
+
+<!ENTITY ng.misc "the
+ <ulink url='news:comp.unix.bsd.freebsd.misc'>comp.unix.bsd.freebsd.misc</ulink>
+ newsgroup">
+<!ENTITY ng.pl.misc.m "grupa dyskusyjna
+ <ulink url='news:comp.unix.bsd.freebsd.misc'>comp.unix.bsd.freebsd.misc</ulink>">
+<!ENTITY ng.pl.misc.d "grupy dyskusyjnej
+ <ulink url='news:comp.unix.bsd.freebsd.misc'>comp.unix.bsd.freebsd.misc</ulink>">
+<!ENTITY ng.pl.misc.c "grupie dyskusyjnej
+ <ulink url='news:comp.unix.bsd.freebsd.misc'>comp.unix.bsd.freebsd.misc</ulink>">
+<!ENTITY ng.pl.misc.b "grupę dyskusyjną
+ <ulink url='news:comp.unix.bsd.freebsd.misc'>comp.unix.bsd.freebsd.misc</ulink>">
+<!ENTITY ng.pl.misc.n "grupą dyskusyjną
+ <ulink url='news:comp.unix.bsd.freebsd.misc'>comp.unix.bsd.freebsd.misc</ulink>">
+<!ENTITY ng.pl.misc.ms "grupie dyskusyjnej
+ <ulink url='news:comp.unix.bsd.freebsd.misc'>comp.unix.bsd.freebsd.misc</ulink>">
+
diff --git a/pl_PL.ISO8859-2/share/sgml/teams.ent b/pl_PL.ISO8859-2/share/sgml/teams.ent
new file mode 100644
index 0000000000..ba5a8be984
--- /dev/null
+++ b/pl_PL.ISO8859-2/share/sgml/teams.ent
@@ -0,0 +1,76 @@
+<!--
+ The FreeBSD Polish Documentation Project
+
+ Nazwiska i adresy e-mail zespołów ludzi pracujących nad określonymi
+ zadaniami. Zazwyczaj są to po prostu aliasy mailowe ustawione na hub.FreeBSD.org
+
+ Należy używać tych encji odwołując się do odpowiednich zespołów.
+
+ Prosimy utrzymywać listę w alfabetycznym porządku według nazwy encji.
+
+ WAŻNE: Jeśli usuwasz nazwiska z tego pliku, *musisz* upewnić się, że
+ wszystkie odniesienia do nich zostały usunięte z tłumaczeń
+ podręcznika. Jeśli nie zostały, *zepsujesz* budowania
+ w innych językach, a w konsekwencji zostaniesz publicznie
+ wyśmiany.
+
+ $FreeBSD$
+ Original revision: 1.4
+-->
+
+<!ENTITY a.core-secretary "Sekretariat Zespołu Głównego <email>core-secretary@FreeBSD.org</email>">
+<!ENTITY a.pl.core-secretary.m "Sekretariat Zespołu Głównego <email>core-secretary@FreeBSD.org</email>">
+<!ENTITY a.pl.core-secretary.d "Sekretariatu Zespołu Głównego <email>core-secretary@FreeBSD.org</email>">
+<!ENTITY a.pl.core-secretary.c "Sekretariatowi Zespołu Głównego <email>core-secretary@FreeBSD.org</email>">
+<!ENTITY a.pl.core-secretary.b "Sekretariat Zespołu Głównego <email>core-secretary@FreeBSD.org</email>">
+<!ENTITY a.pl.core-secretary.n "Sekretariatem Zespołu Głównego <email>core-secretary@FreeBSD.org</email>">
+<!ENTITY a.pl.core-secretary.ms "Sekretariacie Zespołu Głównego <email>core-secretary@FreeBSD.org</email>">
+
+<!ENTITY a.cvs "Mistrzowie Repozytorium CVS <email>cvs@FreeBSD.org</email>">
+<!ENTITY a.pl.cvs.m "Mistrzowie Repozytorium CVS <email>cvs@FreeBSD.org</email>">
+<!ENTITY a.pl.cvs.d "Mistrzów Repozytorium CVS <email>cvs@FreeBSD.org</email>">
+<!ENTITY a.pl.cvs.c "Mistrzom Repozytorium CVS <email>cvs@FreeBSD.org</email>">
+<!ENTITY a.pl.cvs.b "Mistrzów Repozytorium CVS <email>cvs@FreeBSD.org</email>">
+<!ENTITY a.pl.cvs.n "Mistrzami Repozytorium CVS <email>cvs@FreeBSD.org</email>">
+<!ENTITY a.pl.cvs.ms "Mistrzach Repozytorium CVS <email>cvs@FreeBSD.org</email>">
+
+<!ENTITY a.faq "Konserwator FAQ <email>faq@FreeBSD.org</email>">
+<!ENTITY a.pl.faq.m "Konserwator FAQ <email>faq@FreeBSD.org</email>">
+<!ENTITY a.pl.faq.d "Konserwatora FAQ <email>faq@FreeBSD.org</email>">
+<!ENTITY a.pl.faq.c "Konserwatorowi FAQ <email>faq@FreeBSD.org</email>">
+<!ENTITY a.pl.faq.b "Konserwatora FAQ <email>faq@FreeBSD.org</email>">
+<!ENTITY a.pl.faq.n "Konserwatorem FAQ <email>faq@FreeBSD.org</email>">
+<!ENTITY a.pl.faq.ms "Konserwatorze FAQ <email>faq@FreeBSD.org</email>">
+
+<!ENTITY a.portmgr "Zespół Zarządzający Portami <email>portmgr@FreeBSD.org</email>">
+<!ENTITY a.pl.portmgr.m "Zespół Zarządzający Portami <email>portmgr@FreeBSD.org</email>">
+<!ENTITY a.pl.portmgr.d "Zespołu Zarządzającego Portami <email>portmgr@FreeBSD.org</email>">
+<!ENTITY a.pl.portmgr.c "Zespołowi Zarządzającemu Portami <email>portmgr@FreeBSD.org</email>">
+<!ENTITY a.pl.portmgr.b "Zespół Zarządzający Portami <email>portmgr@FreeBSD.org</email>">
+<!ENTITY a.pl.portmgr.n "Zespołem Zarządzającym Portami <email>portmgr@FreeBSD.org</email>">
+<!ENTITY a.pl.portmgr.ms "Zespole Zarządzającym Portami <email>portmgr@FreeBSD.org</email>">
+
+<!ENTITY a.re "Zespół Techniczny Publikacji <email>re@FreeBSD.org</email>">
+<!ENTITY a.pl.re.m "Zespół Techniczny Publikacji <email>re@FreeBSD.org</email>">
+<!ENTITY a.pl.re.d "Zespołu Technicznego Publikacji <email>re@FreeBSD.org</email>">
+<!ENTITY a.pl.re.c "Zespołowi Technicznemu Publikacji <email>re@FreeBSD.org</email>">
+<!ENTITY a.pl.re.b "Zespół Techniczny Publikacji <email>re@FreeBSD.org</email>">
+<!ENTITY a.pl.re.n "Zespołem Technicznym Publikacji <email>re@FreeBSD.org</email>">
+<!ENTITY a.pl.re.ms "Zespole Technicznym Publikacji <email>re@FreeBSD.org</email>">
+
+<!ENTITY a.security-officer "Zespół Oficera Bezpieczeństwa <email>security-officer@FreeBSD.org</email>">
+<!ENTITY a.pl.security-officer.m "Zespół Oficera Bezpieczeństwa <email>security-officer@FreeBSD.org</email>">
+<!ENTITY a.pl.security-officer.d "Zespołu Oficera Bezpieczeństwa <email>security-officer@FreeBSD.org</email>">
+<!ENTITY a.pl.security-officer.c "Zespołowi Oficera Bezpieczeństwa <email>security-officer@FreeBSD.org</email>">
+<!ENTITY a.pl.security-officer.b "Zespół Oficera Bezpieczeństwa <email>security-officer@FreeBSD.org</email>">
+<!ENTITY a.pl.security-officer.n "Zespołem Oficera Bezpieczeństwa <email>security-officer@FreeBSD.org</email>">
+<!ENTITY a.pl.security-officer.ms "Zespole Oficera Bezpieczeństwa <email>security-officer@FreeBSD.org</email>">
+
+<!ENTITY a.www "Lista mailowa Webmasterów FreeBSD <email>www@FreeBSD.org</email>">
+<!ENTITY a.pl.www.m "Lista mailowa Webmasterów FreeBSD <email>www@FreeBSD.org</email>">
+<!ENTITY a.pl.www.d "Listy mailowej Webmasterów FreeBSD <email>www@FreeBSD.org</email>">
+<!ENTITY a.pl.www.c "Liście mailowej Webmasterów FreeBSD <email>www@FreeBSD.org</email>">
+<!ENTITY a.pl.www.b "Listę mailową Webmasterów FreeBSD <email>www@FreeBSD.org</email>">
+<!ENTITY a.pl.www.n "Listą mailową Webmasterów FreeBSD <email>www@FreeBSD.org</email>">
+<!ENTITY a.pl.www.ms "Liście mailowej Webmasterów FreeBSD <email>www@FreeBSD.org</email>">
+