diff options
author | Konrad Bielak <vandut> | 2005-12-01 12:07:40 +0000 |
---|---|---|
committer | Konrad Bielak <vandut> | 2005-12-01 12:07:40 +0000 |
commit | f740bf5fbb7a921d29031185533f9e62e69f328d (patch) | |
tree | 0b614576412389628c0c3ee965f6af60c18039f8 /polish/international/Polish | |
parent | 1b72ded16f8480cd690a7578538d5fe2e7f3b0a1 (diff) |
New update.current
CVS version numbers
polish/.wmlrc: 1.4 -> 1.5
polish/contact.wml: 1.31 -> 1.32
polish/donations.wml: 1.35 -> 1.36
polish/social_contract.wml: 1.8 -> 1.9
polish/support.wml: 1.29 -> 1.30
polish/Bugs/Developer.wml: 1.23 -> 1.24
polish/Bugs/server-control.wml: 1.10 -> 1.11
polish/Bugs/server-refcard.wml: 1.9 -> 1.10
polish/Bugs/server-request.wml: 1.7 -> 1.8
polish/CD/index.wml: 1.19 -> 1.20
polish/CD/faq/index.wml: 1.30 -> 1.31
polish/CD/http-ftp/index.wml: 1.10 -> 1.11
polish/CD/mirroring/rsync-mirrors.wml: 1.2 -> 1.3
polish/CD/vendors/index.wml: 1.24 -> 1.25
polish/CD/vendors/legal.wml: 1.8 -> 1.9
polish/MailingLists/debian-announce.wml: 1.4 -> 1.5
polish/MailingLists/disclaimer.wml: 1.2 -> 1.3
polish/News/2002/20021216.wml: 1.4 -> 1.5
polish/News/2003/20030119.wml: 1.3 -> 1.4
polish/News/2003/20030127.wml: 1.3 -> 1.4
polish/News/2003/20030811.wml: 1.5 -> 1.6
polish/News/2003/20031005.wml: 1.4 -> 1.5
polish/News/2003/20031121a.wml: 1.5 -> 1.6
polish/News/2004/20040406.wml: 1.3 -> 1.4
polish/News/2004/20040515.wml: 1.1 -> 1.2
polish/News/2004/20040524.wml: 1.4 -> 1.5
polish/News/2004/20041026.wml: 1.2 -> 1.3
polish/News/weekly/contributing.wml: 1.10 -> 1.11
polish/News/weekly/index.wml: 1.8 -> 1.9
polish/News/weekly/2004/05/index.wml: 1.3 -> 1.4
polish/News/weekly/2004/10/index.wml: 1.6 -> 1.7
polish/News/weekly/2004/11/index.wml: 1.2 -> 1.3
polish/News/weekly/2004/20/index.wml: 1.2 -> 1.3
polish/News/weekly/2004/23/index.wml: 1.5 -> 1.6
polish/News/weekly/2004/27/index.wml: 1.2 -> 1.3
polish/News/weekly/2004/32/index.wml: 1.2 -> 1.3
polish/News/weekly/2004/33/index.wml: 1.3 -> 1.4
polish/News/weekly/2004/34/index.wml: 1.3 -> 1.4
polish/News/weekly/2004/35/index.wml: 1.4 -> 1.5
polish/News/weekly/2004/36/index.wml: 1.6 -> 1.7
polish/News/weekly/2004/37/index.wml: 1.2 -> 1.3
polish/banners/index.wml: 1.2 -> 1.3
polish/consultants/757_technologies.wml: 1.3 -> 1.4
polish/consultants/aerasec.wml: 1.3 -> 1.4
polish/consultants/alex_r.wml: 1.2 -> 1.3
polish/consultants/altoros.wml: 1.3 -> 1.4
polish/consultants/andreas_o.wml: 1.2 -> 1.3
polish/consultants/andreu_i.wml: 1.2 -> 1.3
polish/consultants/andrew_f.wml: 1.2 -> 1.3
polish/consultants/anthony_p.wml: 1.3 -> 1.4
polish/consultants/avalonix.wml: 1.2 -> 1.3
polish/consultants/baltazar_q.wml: 1.2 -> 1.3
polish/consultants/bao_h.wml: 1.2 -> 1.3
polish/consultants/beeznest.wml: 1.2 -> 1.3
polish/consultants/ben_b.wml: 1.2 -> 1.3
polish/consultants/benjamin_s.wml: 1.2 -> 1.3
polish/consultants/blue_orb.wml: 1.2 -> 1.3
polish/consultants/brickred_technologies.wml: 1.2 -> 1.3
polish/consultants/bruce_p.wml: 1.2 -> 1.3
polish/consultants/bryan_b.wml: 1.2 -> 1.3
polish/consultants/carlos_hg.wml: 1.3 -> 1.4
polish/consultants/catalyst.wml: 1.3 -> 1.4
polish/consultants/filippo_giunchedi.wml: 1.2 -> 1.3
polish/consultants/heureka.wml: 1.2 -> 1.3
polish/consultants/iceguard.wml: 1.2 -> 1.3
polish/consultants/john_b.wml: 1.2 -> 1.3
polish/consultants/lawrence_c.wml: 1.2 -> 1.3
polish/consultants/linunet.wml: 1.2 -> 1.3
polish/consultants/michael_b.wml: 1.2 -> 1.3
polish/consultants/mohawk_software.wml: 1.2 -> 1.3
polish/consultants/nils_r.wml: 1.3 -> 1.4
polish/consultants/rafez_n.wml: 1.2 -> 1.3
polish/consultants/sosa.wml: 1.2 -> 1.3
polish/consultants/stuart_t.wml: 1.2 -> 1.3
polish/consultants/turo_technology.wml: 1.2 -> 1.3
polish/consultants/ultreia.wml: 1.3 -> 1.4
polish/consultants/vivek_k.wml: 1.2 -> 1.3
polish/devel/index.wml: 1.26 -> 1.27
polish/devel/debian-desktop/index.wml: 1.7 -> 1.8
polish/devel/debian-installer/archive.wml: 1.3 -> 1.4
polish/devel/debian-installer/errata.wml: 1.9 -> 1.10
polish/devel/debian-installer/gtk-frontend.wml: 1.8 -> 1.9
polish/devel/debian-installer/ports-status.wml: 1.19 -> 1.20
polish/devel/debian-installer/svn.wml: 1.5 -> 1.6
polish/devel/debian-installer/News/2004/8.wml: 1.3 -> 1.4
polish/devel/debian-installer/News/2004/9.wml: 1.3 -> 1.4
polish/devel/debian-installer/News/2004/99.wml: 1.2 -> 1.3
polish/devel/debian-med/index.wml: 1.6 -> 1.7
polish/devel/debian-med/practice.wml: 1.3 -> 1.4
polish/devel/join/index.wml: 1.2 -> 1.3
polish/devel/join/newmaint.wml: 1.2 -> 1.3
polish/devel/join/nm-step1.wml: 1.3 -> 1.4
polish/devel/join/nm-step2.wml: INITIAL -> 1.1
polish/devel/website/index.wml: 1.2 -> 1.3
polish/devel/wnpp/index.wml: 1.12 -> 1.13
polish/devel/wnpp/wnpp.wml: 1.3 -> 1.4
polish/devel/wnpp/work_needing.wml: 1.2 -> 1.3
polish/distrib/cd.wml: 1.5 -> 1.6
polish/distrib/ftplist.wml: 1.20 -> 1.21
polish/doc/books.wml: 1.17 -> 1.18
polish/doc/cvs.wml: 1.7 -> 1.8
polish/doc/ddp.wml: 1.3 -> 1.4
polish/doc/devel-manuals.wml: 1.7 -> 1.8
polish/doc/docpolicy.wml: 1.6 -> 1.7
polish/doc/misc-manuals.wml: 1.5 -> 1.6
polish/doc/todo.wml: 1.3 -> 1.4
polish/doc/topics.wml: 1.4 -> 1.5
polish/doc/user-manuals.wml: 1.15 -> 1.16
polish/international/index.wml: 1.17 -> 1.18
polish/international/Polish/bezpieczny_debian.wml: 1.5 -> 1.6
polish/international/Polish/free.wml: 1.2 -> 1.3
polish/international/Polish/index.wml: 1.17 -> 1.18
polish/international/Polish/instalacja_potato.wml: 1.3 -> 1.4
polish/international/Polish/manifest.wml: 1.2 -> 1.3
polish/international/Polish/polaczenie_z_internetem.wml: 1.2 -> 1.3
polish/international/Polish/system_pakietow.wml: 1.4 -> 1.5
polish/international/Polish/wprowadzenie.wml: 1.2 -> 1.3
polish/international/Polish/wstep_do_debiana.wml: 1.3 -> 1.4
polish/intro/about.wml: 1.39 -> 1.40
polish/intro/cn.wml: 1.38 -> 1.39
polish/intro/search.wml: 1.3 -> 1.4
polish/intro/why_debian.wml: 1.13 -> 1.14
polish/legal/cryptoinmain.wml: INITIAL -> 1.1
polish/legal/index.wml: INITIAL -> 1.1
polish/legal/notificationforarchive.wml: INITIAL -> 1.1
polish/legal/notificationfornewpackages.wml: INITIAL -> 1.1
polish/mirror/official_sponsors.wml: 1.4 -> 1.5
polish/mirror/sponsors.wml: 1.2 -> 1.3
polish/mirror/submit.wml: 1.3 -> 1.4
polish/misc/awards.wml: 1.5 -> 1.6
polish/misc/memberships.wml: 1.4 -> 1.5
polish/partners/partners-form.wml: 1.4 -> 1.5
polish/po/bugs.pl.po: 1.12 -> 1.13
polish/po/countries.pl.po: 1.11 -> 1.12
polish/po/distrib.pl.po: 1.6 -> 1.7
polish/po/doc.pl.po: 1.6 -> 1.7
polish/po/langs.pl.po: 1.15 -> 1.16
polish/po/organization.pl.po: 1.13 -> 1.14
polish/po/others.pl.po: 1.20 -> 1.21
polish/po/ports.pl.po: 1.6 -> 1.7
polish/po/security.pl.po: 1.9 -> 1.10
polish/po/templates.pl.po: 1.19 -> 1.20
polish/ports/amd64/index.wml: 1.9 -> 1.10
polish/ports/freebsd/bsd-libc-based.wml: INITIAL -> 1.1
polish/ports/i386/index.wml: 1.3 -> 1.4
polish/ports/netbsd/news.wml: 1.3 -> 1.4
polish/releases/index.wml: 1.28 -> 1.29
polish/releases/potato/index.wml: 1.29 -> 1.30
polish/releases/sarge/index.wml: 1.14 -> 1.15
polish/releases/slink/index.wml: 1.19 -> 1.20
polish/releases/woody/errata.wml: 1.7 -> 1.8
polish/releases/woody/installmanual.wml: 1.8 -> 1.9
polish/releases/woody/releasenotes.wml: 1.3 -> 1.4
polish/security/crossreferences.wml: INITIAL -> 1.1
polish/security/cve-compatibility.wml: INITIAL -> 1.1
polish/security/index.wml: 1.30 -> 1.31
polish/security/2003/dsa-231.wml: 1.3 -> 1.4
polish/security/2003/dsa-233.wml: 1.3 -> 1.4
polish/security/2004/CAN-2004-0077.wml: INITIAL -> 1.1
polish/security/2004/CAN-2004-0109.wml: INITIAL -> 1.1
polish/security/2004/dsa-423.wml: 1.3 -> 1.4
polish/security/2004/dsa-432.wml: 1.2 -> 1.3
polish/security/2004/dsa-445.wml: 1.2 -> 1.3
polish/security/2004/dsa-446.wml: 1.3 -> 1.4
polish/security/2004/dsa-447.wml: 1.2 -> 1.3
polish/security/2004/dsa-462.wml: 1.3 -> 1.4
polish/security/2004/dsa-469.wml: INITIAL -> 1.1
polish/security/2004/dsa-470.wml: INITIAL -> 1.1
polish/security/2004/dsa-471.wml: INITIAL -> 1.1
polish/security/2004/dsa-472.wml: INITIAL -> 1.1
polish/security/2004/dsa-473.wml: INITIAL -> 1.1
polish/security/2004/dsa-474.wml: INITIAL -> 1.1
polish/security/2004/dsa-475.wml: INITIAL -> 1.1
polish/security/2004/dsa-476.wml: INITIAL -> 1.1
polish/security/2004/dsa-477.wml: INITIAL -> 1.1
polish/security/2004/dsa-478.wml: INITIAL -> 1.1
polish/security/2004/dsa-479.wml: INITIAL -> 1.1
polish/security/2004/dsa-480.wml: INITIAL -> 1.1
polish/security/2004/dsa-481.wml: INITIAL -> 1.1
polish/security/2004/dsa-482.wml: INITIAL -> 1.1
polish/security/2004/dsa-483.wml: INITIAL -> 1.1
polish/security/2004/dsa-484.wml: INITIAL -> 1.1
polish/security/2004/dsa-485.wml: INITIAL -> 1.1
polish/security/2004/dsa-486.wml: INITIAL -> 1.1
polish/security/2004/dsa-487.wml: INITIAL -> 1.1
polish/security/2004/dsa-488.wml: INITIAL -> 1.1
polish/security/2004/dsa-489.wml: INITIAL -> 1.1
polish/security/2004/dsa-490.wml: INITIAL -> 1.1
polish/security/2004/dsa-491.wml: INITIAL -> 1.1
polish/security/2004/dsa-492.wml: INITIAL -> 1.1
polish/security/2004/dsa-493.wml: INITIAL -> 1.1
polish/security/2004/dsa-494.wml: INITIAL -> 1.1
polish/security/2004/dsa-531.wml: INITIAL -> 1.1
polish/security/2004/dsa-532.wml: INITIAL -> 1.1
polish/security/2004/dsa-533.wml: INITIAL -> 1.1
polish/security/2004/dsa-534.wml: INITIAL -> 1.1
polish/security/2004/dsa-535.wml: INITIAL -> 1.1
polish/security/2004/dsa-536.wml: INITIAL -> 1.1
polish/security/2004/dsa-538.wml: INITIAL -> 1.1
polish/security/2004/dsa-540.wml: 1.2 -> 1.3
polish/users/index.wml: INITIAL -> 1.1
polish/y2k/index.wml: INITIAL -> 1.1
Diffstat (limited to 'polish/international/Polish')
-rw-r--r-- | polish/international/Polish/bezpieczny_debian.wml | 720 | ||||
-rw-r--r-- | polish/international/Polish/free.wml | 151 | ||||
-rw-r--r-- | polish/international/Polish/index.wml | 16 | ||||
-rw-r--r-- | polish/international/Polish/instalacja_potato.wml | 520 | ||||
-rw-r--r-- | polish/international/Polish/manifest.wml | 113 | ||||
-rw-r--r-- | polish/international/Polish/polaczenie_z_internetem.wml | 280 | ||||
-rw-r--r-- | polish/international/Polish/system_pakietow.wml | 1461 | ||||
-rw-r--r-- | polish/international/Polish/wprowadzenie.wml | 19 | ||||
-rw-r--r-- | polish/international/Polish/wstep_do_debiana.wml | 616 |
9 files changed, 3896 insertions, 0 deletions
diff --git a/polish/international/Polish/bezpieczny_debian.wml b/polish/international/Polish/bezpieczny_debian.wml new file mode 100644 index 00000000000..70e2b429b22 --- /dev/null +++ b/polish/international/Polish/bezpieczny_debian.wml @@ -0,0 +1,720 @@ +#use wml::debian::template title="Debian GNU/Linux - bezpieczna stacja robocza" NOHEADER="yes" + +<h2>Debian GNU/Linux - bezpieczna stacja robocza</h2> + +<p>Gdy uruchamiamy linuksową stację roboczą i zamierzamy łączyć się +z Internetem, musimy podjąć prawie takie same środki ostrożności +jak administrator serwera. Wybór dystrybucji jest ważny, bo +przesądza z jakimi programami przyjdzie nam pracować i w jaki +sposób będziemy wykonywać niektóre bardziej specyficzne zadania - +nie powinien więc być pochopny. W tym artykule czytelnicy +zapoznają się z możliwościami i specyfiką tylko jednej +dystrybucji Linuksa, Debianem. Na pewno jednak dużą część +poznanej tutaj wiedzy da się zastosować także w innych -Red Hat, +Slackware czy S.u.S.E.. Ponieważ źródła większości opisywanych +programów są dostępne na popularnych serwisach FTP (adresy na +końcu artykułu), nic nie stoi na przeszkodzie, aby wykorzystać +omawiane rozwiązania we własnej dystrybucji. Wszelkie uwagi +odnośnie treści artykułu oraz ewentualnych błędów lub niedomówień +są mile widziane.</p> + +<p>Dystrybucja Debian GNU/Linux cieszy się sławą solidnej i stabilnej. +"Sztywne" zależności pomiędzy wersjami poszczególnych pakietów zwiększają +niezawodność systemu i sprawiają, że Debian sprawdza się idealnie nie +tylko jako serwer, ale także jako stacja robocza dla bardziej +wymagających użytkowników.</p> + +<p>Niemniej jednak nawet ona nie jest wolna od usterek i wad. Wszystkie +systemy operacyjne wymagają, oprócz prawidłowej instalacji i +konfiguracji, również stałej opieki ze strony użytkownika i +administratora. Dotyczy to szczególnie bezpieczeństwa, gdzie pomyłka czy +niedopatrzenie mają nieraz tragiczne konsekwencje. Problem powstaje, gdy +temat zabezpieczeń zupełnie nas nie interesuje i nie zajmujemy się nim +zawodowo czy hobbystycznie - i nie zamierzamy zatem poświęcać mu więcej +czasu niż to jest konieczne. Chcielibyśmy ograniczyć nasze "łatanie" do +rzeczy niezbędnych i tych bardziej przydatnych, które postaram się tu +opisać.</p> + +<p>Nie łudźmy się, że raz zainstalowany system będzie wiecznie sprawny i +tak samo bezpieczny. Wraz z upływem czasu odkrywane są nowe błędy w +oprogramowaniu, naprawiane są stare - za kilka miesięcy nasz podłączony +do Internetu komputer może być celem ataków ludzi z całego świata. Mówiąc +bardziej brutalnie, poziom zabezpieczeń naszej stacji roboczej maleje z +każdym dniem. Dlatego oprócz stosowania generalnych zasad właściwego +użytkowania, należy co jakiś czas odwiedzić stronę http://www.debian.org +- znajduje się tam specjalny dział poświęcony interesującemu nas +zagadnieniu - lub inne strony o podobnej tematyce, wymienione na końcu +artykułu. Możemy tam zasięgnąć informacji o ewentualnych odkrytych lukach +oraz o aktualnych wersjach pakietów nie posiadających usterek. Często +jednak na raporty trzeba czekać tygodniami a nawet miesiącami. Wiele +nieprawidłowości w działaniu programów jest znanych tylko wąskiej grupie +ludzi, którzy utrzymują je w tajemnicy ze względu na potencjalne +korzyści, jakie mogą dzięki temu osiągnąć. Co wtedy robić? Prędzej czy +później "dziura" zostanie odkryta, a wiadomość o tym znajdzie się na +którejś z popularnych list dotyczących bezpieczeństwa (a później - jeśli +program którego dotyczy jest częścią tej dystrybucji - na stronie +Debiana), jednak już wtedy może być za późno. Prawdopodobieństwo że +staniemy się wcześniej celem ataku jest nikłe, niemniej jednak trzeba się +z taką możliwością liczyć. Idealnym wyjściem byłoby stałe monitorowanie +jednej lub kilku list dyskusyjnych (może to być bugtraq lub dowolna inna +- adresy zostały podane na końcu artykułu) - ostrzeżenia pojawiają się tu +średnio 7 dni wcześniej niż na "oficjalnej" stronie Debian GNU/Linux.</p> + +<p>W chwili pisania artykułu aktualną stabilną wersją Debiana była wersja +oznaczona numerem 2.2, znana także pod nazwą Potato. Wersja niestabilna +została nazwana Woody. Oprócz tego część z omawianych bardziej +szczegółowo zagadnień można odnieść do dystrybucji Corel Linux, także +opartej na pakietach deb (choć przeznaczonej raczej dla mniej +doświadczonych użytkowników) oraz komercyjnego Storm Linux. Tekst został +jednak stworzony głównie z myślą o Debianie 2.2 (a także wcześniejszych +2.1 Slink i 2.0 Hamm). Duża liczba pakietów skłania raczej do wybrania +jednego z kilku ich "zestawów" i tak też robi większość użytkowników. +Później możemy dostosować system do swoich potrzeb instalując +interesujące nas programy lub usuwając zbędne. Podstawowa konfiguracja +odbywa się również podczas instalacji. Gdy już szczęśliwie przebrniemy +przez te wszystkie zawiłości, ustawimy hasło superużytkownika (czyli +roota) i zainstalujemy niezbędne programy, możemy zacząć przekształcanie +naszego Linuksa w "bezpieczną stację roboczą".</p> + +<h3>Ważniejsze usterki systemu mogące prowadzić do naruszenia jego +bezpieczeństwa</h3> + +<p>Poniżej przedstawiono wybrane luki obecne w wersjach dystrybucji Debian +GNU/Linux od 1.3 do 2.2 poprzez stabilne wersje poprawkowe rc2, rc5 +itp.</p> + +<ul> +<li> +Demony bootpd i ftpd z pakietu netstd w wersjach starszych niż 3.07-2 +były podatne na atak przez przepełnienie bufora (Debian 1.3 / 2.0). +Obecnie zostały już załatane. +</li> +<li> +Demon finger o nazwie cfingerd nigdy nie cieszył się sławą +bezpiecznego. Odkryto w nim dużo bardzo poważnych błędów (szczególnie w +starszych wersjach). Dlatego też większość specjalistów zaleca +korzystanie ze standartowego demona (fingerd) znajdującego się w +pakiecie netstd. +</li> + +<li> +lincity - gra lincity w wersjach 1.03-2 i 1.09-1 (Debian 1.3.1), +instalowana wraz z pakietem lincity-svga, zawiera błąd przepełnienia +bufora mogący prowadzić do nieautoryzowanego dostępu do przywilejów +superużytkownika. Późniejsze wersje są bezpieczne. +</li> + +<li> +mailx-8.1.1-9 i wcześniejsze - pozwala uzyskać intruzowi przywileje +grupy mail. +</li> + +<li> +Program suidexec dostarczany razem z pakietem suidmanager (wersje +wcześniejsze niż 0.19) pozwala na wykonanie każdemu użytkownikowi +dowolnego programu z prawami roota, jeśli istnieje w systemie choć +jeden skrypt powłoki z ustawionym bitem SUID. +</li> + +<li> +W bibliotece z pakietu ldso_1.9.2 (plik ld-linux.so.1.9.2) jest błąd +pozwalający na uzyskanie przywilejów użytkownika root. +</li> + +<li> +Program lsof w wersji 4.04 i wcześniejszych pozwala na lokalne +uzyskanie dostępu do uprawnień superużytkownika (zostało to naprawione +w wersji 4.37). +</li> + +<li> +Pakiet super_3.11.6 i wcześniejsze także mają usterki mogące prowadzić +do uzyskania nieautoryzowanego dostępu. +</li> + +<li> +Gra xsoldier (wersja 1:0.96.7 i wcześniejsze) jest domyślnie +instalowana z bitem SUID i zawiera groźny błąd mogący prowadzić do +uzyskania dostępu do całego systemu. Należy zainstalować nowszą wersję +tego programu lub zdjąć wspomniany bit: chmod -s /usr/games/xsoldier. +</li> + +<li> +Demon ftp o nazwie wuftpd począwszy od wersji 2.4.2, poprzez BETA-15 do +BETA-18, aż do 2.5.0 zawiera szereg błędów krytycznych dla +bezpieczeństwa systemu. Należy zrezygnować z jego używania (istnieje +pakiet netstd zawierający bezpieczniejszą alternatywę) lub zainstalować +najnowszą możliwą wersję (w tej chwili 2.6.0). +</li> + +<li> +fsp - w Debianie 2.0 ten program tworzył nieautoryzowane konto o nazwie +ftp. W wersji 2.71 pakietu błąd został naprawiony (jeśli jednak +instalowaliśmy starsze wersje, po aktualizacji należy też skasować +wspomniane konto). +</li> + +<li> +cfengine - w wersji 2.0 systemu program ten zawierał błąd pozwalający +na naruszenia bezpieczeństwa. Został on naprawiony w wersji 1.4.9-3 +pakietu. +</li> + +<li> +W pakietach sendmail oraz sendmail-wide występuje usterka pozwalająca +na zniszczenie zwykłemu użytkownikowi bazy aliasów pocztowych. Zostało +to naprawione w wersji sendmail_8.9.3-3slink1. +</li> + +<li> +Wcześniejsze niż 3.1.5-0.1 pakiety zawierające aplikację htdig mają +poważną usterkę mogącą prowadzić do uzyskania zdalnego dostępu do +systemu. +</li> + +<li> +Demon lpr w wersjach wcześniejszych niż 0.48-0.slink1 pozwalał na +zdalne uzyskanie przywilejów superużytkownika. Zamiast dalszego +używania tego programu zaleca się korzystanie z narzędzi zawartych w +pakiecie lprng. +</li> + +<li> +apcd - rozpowszechniany razem z Debianem 2.1 Slink jest podatny na atak +wykorzystujący dowiązania symboliczne. Błąd został naprawiony w wersji +0.6a.nr-4slink1 pakietu. +</li> + +<li> +Podobny atak można było przeprowadzić z powodu niedoskonałości programu +make. Zostało to naprawione w wersji 3.77-5slink. +</li> + +<li> +Program nmh (wcześniejsze niż 0.27-0.28-pre8-4) może zostać wprowadzony +w błąd przez odpowiednio spreparowane nagłówki MIME, co w konsekwencji +może doprowadzić do wykonania kodu z prawami użytkownika root. +</li> + +<li> +mtr (starsze od0.28-1) domyślnie zainstalowany z bitem SUID, +niewłaściwie zwalnia wykorzystywane przywileje, co może być przyczyną +lokalnego zagrożenia. +</li> +</ul> + +<p>Wszystkie wymienione luki w bezpieczeństwie zostały załatane w wersji 2.2 +systemu. Oczywiście, są to jedynie dość znane przykłady - najbardziej +aktualnych informacji należy szukać na listach dyskusyjnych i stronach +Debiana.</p> + +<h3>Blokowanie dostępu do niepotrzebnych usług</h3> + +<p>Gdy nie ma potrzeby wykorzystywania jakiejś usługi, najlepiej +uniemożliwić do niej dostęp. Na przykład, gdy nie mamy zamiaru +udostępniać innym informacji o zalogowanych użytkownikach oraz kontach w +systemie, należy zrezygnować z uruchamiania demona fingerd. Także +większość usług typu RPC (Remote Procedure Call) nie jest przydatna na +komputerze domowym.</p> + +<p>Obsługą dużej części demonów internetowych w systemach uniksowych zajmuje +się program inetd. Na wydruku 1 przedstawiono fragment przykładowego +pliku konfiguracyjnego (/etc/inetd.conf) tego demona.</p> + +<p>Gdy nie chcemy korzystać z danego programu, należy wiersz zawierający +jego wywołanie opatrzyć znakiem komentarza. W przypadku programu finger +wiersz ten będzie wyglądał następująco: + +<pre> + \#finger stream tcp nowait nobody /usr/sbin/tcpd /usr/sbin/in.fingerd +</pre> + +<p>Następnie zapisujemy zmiany i restartujemy demona inetd poleceniem +killall -HUP inetd. +Od tej chwili połączenie z fingerd (port 79) będzie niemożliwe.</p> + +<p>Zaleca się blokowanie wszystkiego, z czego nie zamierzamy korzystać. +Zakładając, że mamy dostęp do Internetu przez łącze komutowane i nie +zamierzamy uruchamiać żadnych serwisów, zostawiamy tylko: ftp (serwer +plików - kiedy zamierzamy je czasami komuś udostępnić), smtp (serwer +poczty wychodzącej - gdy zamierzamy wysyłać pocztę), ident (część +serwerów ftp oraz IRC wymaga identyfikacji użytkownika nawiązującego +połączenie). Oczywiście, tylko od nas zależy co chcemy zostawić, a co +nie. Pełny spis usług i odpowiadających im portów znajduje się w pliku +/etc/services.</p> + +<h3>Instalacja i konfiguracja programu Secure Shell (SSH)</h3> + +<p>Gdy chcemy umożliwić zdalnym użytkownikom dostęp do powłoki, nie musimy +używać do tego celu programów telnet, rsh lub rlogin. Co więcej, nie jest +to wskazane - programy te nie obsługują szyfrowania transmisji i każda +osoba dysponująca przywilejami superużytkownika na komputerze, przez +który przechodzą pakiety kierowane do naszego Linuksa może poznać +niezakodowane hasło, a nawet przebieg całej sesji. Program Secure Shell +umożliwia skorzystanie ze specjalnego protokołu zapewniającego szyfrowany +algorytmem RSA kanał komunikacyjny. Mechanizm działania SSH to temat na +osobny artykuł, jednak w skrócie można powiedzieć że identyfikacja +użytkownika opiera się na sprawdzaniu wygenerowanych wcześniej kluczy +publicznych (mogą mieć one długość od 512 bitów wzwyż) przesyłanych do +innych uczestników transmisji. Służą one do kodowania danych; do +dekodowania służą klucze prywatne. Cała transmisja jest szyfrowana +kluczem o długości 256 bitów.</p> + +<p>W Debianie 2.2 pakiety z programem ssh(d) znajdują się w dziale non-US. +Oznacza to, że jest to oprogramowanie dodatkowe, nie będące częścią +dystrybucji, a jednocześnie spełniające kryteria produktów objętych +specjalnymi przepisami eksportowymi Stanów Zjednoczonych (algorytm ma +mniejszą długość niż w wersji przeznaczonej na rynek amerykański - +obecnie wspomniane przepisy ulegają zmianie). Mamy do dyspozycji zarówno +wersję pierwszą (pakiet ssh-nonfree_1.2.27-4.deb - wersja bardziej znana +i szerzej stosowana), jak i drugą (ssh2_2.0.13-4), której wymagają +niektóre windowsowe klienty ssh. Ich darmowy odpowiednik (obie wcześniej +wspomniane wersje zamieszczone są także w dziale non-free) to tzw. +OpenSSH (wywodzący się z systemu OpenBSD) - zaleca się używanie właśnie +tej odmiany, ponieważ ma ona opinię programu dość bezpiecznego, co w +przypadku aplikacji tego rodzaju nie jest bez znaczenia. Pakiet to +ssh_1.2.1pre24-1.deb (non-US/main).</p> + +<p>Omówmy pokrótce zasadę działania narzędzia. W momencie instalacji +właściwego pakietu generowana jest para kluczy identyfikujących nasz +komputer (ssh_host_key - klucz prywatny oraz ssh_host_key.pub - klucz +publiczny), która następnie zostaje zapisana w katalogu /etc/ssh. Tam +również znajduje się plik konfiguracyjny klienta (ssh_config) i demona +(sshd_config). Oprócz tego, w katalogu /etc/init.d tworzone są skrypty +startowe uruchamiające sshd (secure shell daemon). Dzieje się to również +po udanej instalacji.</p> + +<p>Klienta ssh uruchamiamy poleceniem: +<pre> +[tm:@ ~]$ ssh -l login host.pl +</pre> + +<p>Gdzie login jest nazwą konta, a host.pl adresem komputera na który chcemy +się zalogować. Potem już tylko musimy wpisać nasze hasło.</p> + +<p>Gdy chcemy połączyć się z innym komputerem bez podawania hasła, musimy +utworzyć programem ssh-keygen oba wymagane klucze. Wybieramy ich długość +oraz hasło zabezpieczające klucz prywatny. Domyślnie są one umieszczane w +katalogu $HOME/.ssh jako identity i identity.pub. Następnie przenosimy +nasz klucz publiczny (z pliku ~/.ssh/identity.pub) do pliku +$HOME/.ssh/authorized_keys na innym serwerze. Możemy to zrobić poleceniem +<tt>cat identity.pub >> authorized_keys</tt>. Od teraz możemy logować się na nasze +konto na tym serwerze bez podawania hasła.</p> + +<p>Klientem programu Secure Shell można zalogować się na konto root, nawet +jeśli nasz terminal nie jest wymieniony w pliku /etc/securetty. Nie można +tego zrobić korzystając na przykład ze zwykłego telnetu.</p> + +Po udanej instalacji serwera możemy zablokować dostęp do usług telnet, +rlogin i rsh tak, jak zostało to opisane w poprzednim rozdziale. + +Secure Shell obsługuje jeszcze jeden bardzo przydatny mechanizm. Jest nim +tzw. przekazywanie portów (ang. port forwarding). Polega ono na łączeniu +portów lokalnej stacji roboczej z portami dowolnie wybranej internetowej +maszyny. Gdy chcemy połączyć port_zdalny serwera host.pl z portem +port_lokalny naszego komputera, wpisujemy: + +[root]# ssh -L port_lokalny:host.pl:port_zdalny localhost + +Po wpisaniu hasła i rozpoczęciu sesji wszystkie połączenia na +port_lokalny naszej maszyny będą przekazywane na port_zdalny host.pl. +Równoważne polecenie to: + +[root]# ssh -R port_zdalny:host.pl:port_lokalny localhost + +To udogodnienie można wykorzystać do obsługi usług, które standardowo nie +zapewniają możliwości szyfrowania transmisji (takich jak pop3). Dzięki +temu nie będziemy przesyłać naszych haseł czystym tekstem przez całą +drogę do zdalnego serwera. + +Do przekazywania portów o numerach mniejszych od 1024 potrzebujemy +przywilejów superużytkownika. W przypadku innych możemy to robić jako +zwykły użytkownik. + +<h3>Program SSLtelnet</h3> + +Gdy z jakichś powodów musimy używać telnetu (np. osoby, którym +chcielibyśmy udostępnić powłokę używają systemów nie-uniksowych i nie +posiadają klientów ssh - dla MS Windows 9x istnieją odpowiednie programy, +natomiast np. dla MS-DOS niestety nie), najlepiej byłoby, gdyby +obsługiwał on możliwość szyfrowania transmisji. Pomocą będzie nam tutaj +służyło narzędzie telnet(d)-ssl. Program składa się z klienta oraz demona +i ma za zadanie zastąpić standartowy telnet. Obsługuje technologię SSL +(Secure Socket Layer) i dzięki temu może nawiązać bezpieczne połączenie, +gdy druga strona także ma zaimplementowaną tę funkcję. W przeciwnym razie +używany jest kanał niezakodowany (tak jak w "zwykłym" telnecie). Dzięki +temu mamy zarówno możliwość szyfrowania, jak i łączność z innymi, nie +posiadającymi klientów ssh osobami. + +Aby zainstalować SSLtelnet(d), potrzebujemy odpowiednich bibliotek. +Znajdują się one w oddzielnym pakietach (dział non-US, numery wersji +takie jak w Debianie 2.2): +<pre> +[root]# dpkg -i libssl09_0.9.4-4.deb +[root]# dpkg -i openssl_0.9.4-4.deb +[root]# dpkg -i ssleay_0.9.4-4.deb +</pre> +Musimy usunąć stare wersje telnet i telnetd: +<pre> +[root]# dpkg --purge telnet +[root]# dpkg --purge telnetd +</pre> +Teraz możemy przystąpić do instalacji programu: +<pre> +[root]# dpkg -i telnet-ssl_0.14.9-1.deb +[root]# dpkg -i telnetd-ssl_0.14.9-1.deb +[root]# dpkg -i ssltelnet_0.14.9-1.deb +</pre> +W tym momencie zamieniane są odpowiednie pliki. Nasz telnet jest teraz +wyposażony w nowe funkcje - szczegółowe ich omówienie można znaleźć na +stronie podręcznikowej (man 1 telnet lub man 8 telnetd). + +<h3>Icmplogd i Tcplogd - programy logujące próby nawiązywania +połączeń</h3> + +<p>Zanim ktoś zdecyduje się na włamanie do danego systemu komputerowego, +zwykle stara się zebrać o nim jak najwięcej informacji. Jedną z metod +"rozpoznania celu" jest skanowanie portów. Oczywiście, nie istnieje żaden +sposób zabezpieczenia się przed próbami takiego działania - można je +tylko wykryć i ewentualnie odpowiednio na nie reagować. Standardowo +informacje o połączeniach na porty naszej maszyny przechwytuje demon +syslogd i przesyła je w odpowiednie miejsce (patrz Syslogd - standartowa +kontrola pracy systemu). Jednak tym sposobem dowiemy się tylko o +najprymitywniejszych przypadkach skanowania portów - zwykłych pełnych +połączeniach TCP z trzystopniowym potwierdzaniem (ang. three-way +handshake). Istnieją o wiele bardziej wyrafinowane metody, nie są one +jednak niewykrywalne, jak sądzono jeszcze jakiś czas temu. W rozpoznaniu +ich pomoże nam pakiet iplogger (w wersji 2.2 to iplogger_1.1-7.deb). +Zawiera dwa demony - tcplogd oraz icmplogd. Pamiętają one wszystkie +połączenia przychodzące TCP oraz pakiety ICMP wysłane do naszego +komputera i standardowo przekazują zawiadomienia o nich do syslogd jako +daemon.notice. W pliku /etc/iplogger.conf możemy zdefiniować, czego +używać do zapisu raportów oraz jakie pakiety rejestrować. Skrypty +startowe obu demonów instalują się automatycznie w katalogu +/etc/init.d.</p> + +<h3>Tripwire - sprawdzanie sum kontrolnych plików</h3> +<p>Nawet jeśli jesteśmy bardzo pewni naszych zabezpieczeń, powinniśmy być +przygotowani na najgorsze. Po włamaniu kluczową sprawą, oprócz załatania +luki i wymiany haseł jest ustalenie, które pliki zostały zmienione. +Zapewnienie spójności systemu to jedno z podstawowych zadań +administratora. Ręczne sprawdzenie sum kontrolnych oraz dat powstania i +modyfikacji plików może być dość kłopotliwe (sumę kontrolną MD5 danego +pliku możemy utworzyć poleceniem md5sum plik). Dlatego między innymi +powstał pakiet tripwire (ostatnia wersja tripwire_1.2-16.1.deb), który +powiadomi nas o każdej niezgodności zachodzącej miedzy informacjami +zapisanymi w bazie a aktualnym stanem. Po instalacji w pliku +konfiguracyjnym /etc/tripwire/tw.config możemy określić co i jak ma być +sprawdzane. Poleceniem tripwire -initialize generujemy listę, z którą +będziemy później porównywać wyniki następnych sprawdzeń (program +umieszcza ją jako aktualny_katalog_roboczy/databases/tw_db.nazwa.hosta, +później należy ją skopiować do katalogu /usr/lib/tripwire/databases). W +katalogu /etc/cron.weekly jest też umieszczany skrypt tripwire - jeśli +nie odpowiada nam cotygodniowa kontrola możemy go przenieść np. do +/etc/cron.monthly - wtedy cała operacja będzie wykonywana co miesiąc.</p> + +<h3>Programy SUID i SGID</h3> +<p>Jeśli wykonywalny plik ma ustawiony bit SUID, oznacza to że zawsze jest +uruchamiany z przywilejami użytkownika, który jest jego właścicielem. +Podobnie jest z bitem SGID - ale wtedy to grupa, do której należy program +przekazuje swoje uprawnienia. Nie trzeba wyjaśniać, dlaczego takie +ustawienia powinny być nadawane tylko w najbardziej uzasadnionych +przypadkach. Największe niebezpieczeństwo zachodzi wtedy, gdy +właścicielem jest root (lub grupa root w przypadku programów SGID). + +Obecność takich programów możemy sprawdzić poleceniem:</p> + +<pre> +[root]# find / -type f -user root -perm -04000 -ls +</pre> + +Oraz dla SGID: + +<pre> +[root]# find / -type f -user root -perm -02000 -ls +</pre> + +<p>Lista powinna być monitorowana. Zaleca się usunięcie bitów SUID z +programów /bin/mount i /bin/umount (chyba że chcemy montować inne systemy +plików jako zwykły użytkownik), a gdy zainstalujemy ssh to także z +/usr/bin/rcp (w zastępstwie mamy program scp - część pakietu ssh), +/usr/bin/rlogin i /usr/bin/rsh. Usunięcie wspomnianego bitu z innych +programów także jest możliwe (chodzi tu np. o /bin/ping i +/usr/bin/traceroute), jednak dopiero po dokonaniu niezbędnych zmian w +źródłach jądra systemu i jego rekompilacji. W przeciwnym razie programy +nie będą działać poprawnie. + +<p>Alternatywną metodą zapanowania nad popularnymi "suidami" jest instalacja +pakietu suidmanager_0.43.2.deb (Debian 2.2). Wtedy za pomocą poleceń +suidregister i suidunregister lub bezpośrednich wpisów do pliku +/etc/suid.conf kontrolujemy obecność tych potencjalnie niebezpiecznych +programów w naszym systemie. + +<p>Więcej na ten temat można dowiedzieć się z artykułu Zabezpieczenia w +popularnych dystrybucjach Linuksa, który ukazał się w numerze 1/99 +LinuxPlus. + +<h3>Filtrowanie połączeń przychodzących - program tcpd</h3> + +<p>Nie zawsze możemy przewidzieć, kto będzie łączył się z naszym komputerem. +Części "gości" chcielibyśmy odmówić dostępu do konkretnych usług, portów +lub nawet całego systemu. Do takich celów służą (między innymi) specjalne +programy zwane zaporami sieciowymi (ang. firewall). Są to w większości +produkty komercyjne (choć istnieje kilka bardzo dobrych i darmowych), +wymagające sporej wiedzy i umiejętności przy instalacji oraz stałego +nadzoru. Nie będą na pewno przeznaczone dla domowego użytkownika. Odmianą +zapór sieciowych są tak zwane filtry pakietów IP (ang. packet filter). +Jeśli chodzi o Linuksa, mamy do dyspozycji ipfwadm (jądra systemu w +wersjach 2.0.x) oraz ipchains (wersje 2.2.x). Wymagają one jednak +modyfikacji i rekompilacji jądra systemu - trzeba włączyć wszystkie opcje +umożliwiające obsługę zapór sieciowych, co znacznie zwiększy rozmiar +jądra. Oprócz tego, określenie dużej ilości adresów "zaufanych" i +"niezaufanych" może powodować później trudności w zrozumieniu sytuacji +(przynajmniej dla patrzącego na te ustawienia niezbyt obytego z Uniksem +administratora). Filtry IP to niewątpliwie narzędzie dla średnio +zaawansowanych i doświadczonych użytkowników. Stosowanie ich na stacji +roboczej co prawda nie jest wygodne, ale niewątpliwie możliwe. Więcej na +temat kompilacji jądra i ustawianiu odpowiednich opcji w części +Rekompilacja jądra. + +<p>Podstawową kontrolę połączeń z usługami obsługiwanymi przez demony +uruchamiane za pośrednictwem programu inetd zapewnia program tcpd (tak +zwany TCP Wrapper). Wpisując w /etc/inetd.conf przed ścieżką do danego +demona /usr/sbin/tcpd (tcpd może być zainstalowane w dowolnym innym +miejscu), poddajemy ten program kontroli. Kluczowe znaczenie mają tu +pliki /etc/hosts.allow i /etc/hosts.deny (w Debianie stosowany jest do +dziś ten format zapisu, w innych dystrybucjach może być używany wyłącznie +plik /etc/hosts.deny). Gdy chcemy na przykład odblokować niektóre +programy tylko dla konkretnych osób, do hosts.deny wpisujemy ALL: ALL, +natomiast do hosts.allow intersujące nas adresy IP lub domeny oraz nazwy +usług w formacie nazwa_uslugi: .domena.pl (lub nazwa_hosta) - tak jak +jest to pokazane na wydruku 2. Natomiast odwrotna operacja wymaga +wpisania ALL: ALL do /etc/hosts.allow, a poniższych reguł do +/etc/hosts.deny (wydruk 3). + +<p>To tylko najprostsze przykłady. Bardziej szczegółowe informacje można +znaleźć na stronie podręcznikowej tcpd(8) (man 8 tcpd). + +<h3>Syslogd -kontrola pracy systemu</h3> + +<p>Pakiet sysklogd oferuje nam dwa demony, których zadaniem jest +rejestrowanie pracy systemu: klogd oraz syslogd. Pierwszy przechwytuje +wiadomości wysyłane przez jądro, drugi natomiast operuje w przestrzeni +użytkownika (user space) i monitoruje działanie programów systemowych (i +nie tylko). To właśnie ten ostatni jest jednym z głównych filarów +bezpieczeństwa - gdy będziemy wiedzieli co się "u nas" dzieje, będziemy +też w stanie łatwiej zlokalizować przyczyny ewentualnych problemów. + +<p>Co, jak i gdzie rejestrować określamy w pliku konfiguracyjnym +/etc/syslog.conf. Gdy wprowadzamy zmiany do już istniejących ustawień, +musimy pamiętać o specjalnym formacie zapisu. Z grubsza można go +przedstawić tak: + +<słowo kluczowe>.<priorytet> <miejsce logwania> + +<p>Słowo kluczowe opisuje podsystem, który będzie wysyłał wiadomości. +Najważniejsze dopuszczalne wartości tego parametru to: auth, auth-priv, +cron, daemon, kern, lpr, mail, news, syslog, user, uucp oraz local0 aż do +local7. + +<p>Priorytet określa znaczenie i rodzaj wiadomości. Możemy go zdefiniować +jako (zaczynając od najmniej istotnych): debug, info, notice, warning, +warn (to samo co warning), err, error (to samo co err), crit, alert, +emerg, panic (to samo, co emerg). + +<p>Parametr miejsce logowania nie musi być koniecznie plikiem - może +wskazywać urządzenie blokowe (konsolę lub nawet terminal wirtualny), +nazwę innego komputera naszej sieci, nazwę użytkownika czy też nazwany +potok(kolejkę). + +<p>We wszystkich trzech przypadkach dopuszcza się stosowanie znaku * , który +oznacza odwołania do wszystkich typów i/lub priorytetów, a w przypadku +miejsca logowania wysyłanie wiadomości na terminale zalogowanych +użytkowników. + +<p>Kilka przykładów możliwych konfiguracji możemy zobaczyć na wydruku 4. + +<p>Od nas zależy, jakie ustawienia uznamy za najbardziej właściwe. Po każdej +zmianie należy zrestartować demona poleceniem killall -HUP syslog. Warto +poeksperymentować. + +<h3>Rekompilacja jądra systemu</h3> + +<p>Powtórna kompilacja jądra nie jest absolutnie konieczna, ale staje się +niezbędna gdy chcemy zwiększyć szybkość systemu lub gdy potrzebujemy +nowych sterowników. Czasami nowe wersje jądra mają nowe, przydatne +funkcje i nie powtarzają starych błędów. O całej operacji napisano wiele, +więc nie powinna już nikomu sprawiać kłopotów. Generalną tendencją jest +usuwanie wszystkiego, czego nie musimy używać oraz dodawanie tego, co +będzie nam potrzebne. Dzięki rozsądnemu wyborowi i skompilowaniu +niektórych sterowników jako modułów ładowalnych można znacznie +"odchudzić" jądro i wydatnie przyspieszyć naszego Linuksa. Warto też +zainteresować się niektórymi opcjami bezpośrednio dotyczącymi +bezpieczeństwa, np. TCP syncookie support (jej włączenie zapobiega atakom +typu syn-flood - zalewanie pakietami SYN) czy też Quota support +(wkompilowanie jej w jądro pozwoli nam ustawić limity przestrzeni +dyskowych w systemie plików dla określonych użytkowników za pomocą +programu quota). Opcje pozwalające uruchomić zaporę sieciową zostały +opisane w artykule Zabezpieczenia w popularnych dystrybucjach Linuksa z +LinuxPlus 1/99 (Tabela 3). + + +<h3>Ustawianie ograniczeń powłoki</h3> + +<p>Czasami chcielibyśmy dać komuś dostęp do wirtualnej konsoli, ale nie +jesteśmy w stu procentach pewni czy ta osoba (przez przypadek lub +umyślnie) nie zakłóci pracy naszego systemu. Aby odebrać jej możliwość +wykonywania niepożądanych czynności, możemy zastosować kilka rozwiązań. + +<p>Najprościej jest użyć wbudowanego polecenia powłoki bash, ulimit. Za jego +pomocą można ustawić m.in. maksymalny rozmiar plików, pamięć wirtualną, +zużycie czasu procesora, największe rozmiary plików zrzutu pamięci +(core), nieprzekraczalny limit otwartych na raz deskryptorów plików, +maksymalną liczbę procesów jakie dany użytkownik może rozpocząć oraz +maksymalny rozmiar zajmowanej pamięci. Wszystkie limity zobaczymy po +wydaniu polecenia ulimit -a. Więcej informacji na temat ich ustawiania +znajduje się na stronie podręcznikowej builtins(1) (część ulimit). + +<p>Ponieważ Debian do wersji 2.1 nie ma w pełni zaimplementowanego +mechanizmu PAM (Pluggable Authentication Modules), nie możemy określać +globalnych limitów bezpośrednio w pliku /etc/security/limits.conf (tak +jak w Red Hacie, S.u.S.E., Mandrake, Calderze czy Debianie 2.2, które te +funkcje posiadają). Jednak jeśli muszą dotyczyć one wszystkich +użytkowników (także naszego), nic nie stoi na przeszkodzie aby ustawić je +w plikach startowych powłoki. Globalnie takim plikiem jest /etc/profile +(cały czas mówimy o bashu). Do tego pliku wpisujemy polecenie ulimit +[opcja] [nasz limit] i od tej pory każdy uruchamiający powłokę będzie +objęty takimi ograniczeniami (nawet jeśli w swoim katalogu domowym +posiada plik .bash_profile, który wykonywany jest później). Raz +ustawionych w powłoce limitów nie można "złagodzić". Każdy program (np. +powłoka csh, w której odpowiednikiem ulimit jest polecenie limit) z niej +uruchomiony dziedziczy wszystkie ustawienia. + +<p>Takie rozwiązanie ma jednak dużo wad. Najważniejszą jest brak możliwości +wybrania użytkowników, których ograniczenia chcemy skonfigurować inaczej. +Jeśli mamy zamiar zrobić coś takiego, możemy zastosować inną metodę +polegającą na odpowiednim wpisie do pliku /etc/limits, z którego korzysta +program login. Limity w tym wypadku możemy przyznawać TYLKO poszczególnym +nazwom użytkowników. Więcej informacji o formacie i sposobie zapisu +znajduje się na stronie podręcznikowej limits(5) oraz w komentarzach tego +pliku. + +<p>Wróćmy teraz do Debiana 2.2. Tu już sytuacja wygląda dużo lepiej. Za +przydzielanie i kontrolę zasobów odpowiedzialny jest wcześniej wspomniany +zestaw bibliotek PAM. Szczegółowe ustawienia dotyczące takich narzędzi +jak chfn, chsh, login, ppp, su i innych możemy obejrzeć w pliku +/etc/pam.conf lub w katalogu /etc/pam.d (gdy ten drugi istnieje, +zawartość pierwszego jest ignorowana). Zmiany w konfiguracji wprowadzamy +poprzez edycję tych plików. W obszernym dokumencie Linux-PAM system +administrators' guide jest napisane jak się do tego zabrać - po +zainstalowaniu libpam-doc_0.72-3.deb (sekcja doc) dokument ten powinien +się znajdować w katalogu /usr/share/doc/libpam-doc. Należy zastanowić się +nad takimi opcjami jak maksymalna i minimalna długość hasła (passwd), +dostęp do polecenia su tylko dla członków grupy root czy też ograniczenia +w używaniu przez naszych użytkowników poleceń chfn i chsh. W połączeniu +ze zmianami w /etc/login.defs (kolejny plik konfiguracyjny programu login +- więcej szczegółów na stronie login.defs(5) ), to właściwie powinno nam +wystarczyć. + +<p>Z /etc/pam.d/login związana jest jeszcze jedna ważna kwestia - omawiane +wcześniej ograniczenia. Opcje włączamy poprzez usunięcie znaków +komentarza z odpowiednich wpisów we wspomnianym pliku (ponieważ są +opatrzone opisem, nie sądzę aby były problemy z ich znalezieniem). + +<p>Do wyboru są ograniczenia dostępu do programu login, praw innych grup, +limity czasowe (np. czy w danym dniu o określonej godzinie użytkownik +może korzystać z określonych usług), ustawienie odpowiednich zmiennych +środowiskowych, a także najbardziej nas chyba interesujące limity +zasobów. Konfiguracja poszczególnych działów jest pogrupowana tematycznie +w katalogu /etc/security: + + +<p>access.conf - dostęp do login: określamy użytkowników, adres źródłowy, +rodzaj działania (+ - przyjęcie, - - odrzucenie); + +<p>group.conf - dostęp do grup: usługa, terminal, użytkownik, czas +obowiązywania, grupa (lub grupy); + +<p>limits.conf - zasoby: użytkownik (może też być grupa), typ limitu (miękki +lub twardy), rodzaj oraz wartość; + +<p>pam_env.conf - zmienne globalne: nazwa zmiennej, wartość domyślna, +odwołanie do innej zmiennej (gdy jest ustawiona, jej wartość zostanie +przyjęta; w przeciwnym razie ustawiona będzie wartość domyślna); + +<p>time.conf - ograniczenia czasowe: usługa, terminale, użytkownik, czas +obowiązywania + +<p>W starszych Debianach (z zainstalowanym pakietem shadow) niepełnymi +odpowiednikami są /etc/login.access, kilka opcji z /etc/login.defs oraz +/etc/limits. Jednak PAM oferuje dużo większe możliwości - warto +poeksperymentować. + +<p>Istnieje jeszcze kilka możliwości ustawiania ograniczeń powłoki. +Stosunkowo najgorszą i wymagającą najwięcej zachodu jest tzw. restricted +bash (strona podręcznika to rbash(1)). Prawidłowa konfiguracja tego +narzędzia nastręcza sporo problemów, a i tak z powodu kilku przeoczeń (w +większości przypadków chodzi o aplikacje, do których użytkownik miał mieć +dostęp - czasami zaimplementowane w nich funkcje niweczą cały wysiłek +administratora) może nie wystarczyć. Możliwość uruchomienia własnej +powłoki bez ograniczeń, przegrywanie na konto i wykonywanie własnych +programów to najczęściej spotykane rezultaty. Właściwym rozwiązaniem +wydaje się odpowiednio ustawiana zmienna środowiskowa $PATH +(uniemożliwienie dostępu do powłok i katalogu domowego) oraz montowanie +partycji z katalogiem domowym użytkownika jako noexec (zapobieganie +wykonaniu przegranej na konto powłoki) jednak jest to bardzo często +czasochłonne, kłopotliwe i - co najważniejsze - niepewne. Istnieje wiele +sposobów "wyprowadzenia w pole" rbasha i dlatego nie należy go stosować. +W środowisku bardziej surowych ograniczeń (czyli takim, w którym +moglibyśmy użyć rbasha) należy sięgnąć po tak zwane wirtualne systemy. +Adresy, pod którymi można znaleźć oraz przykłady tego rodzaju programów, +znajdują się na końcu artykułu. + +<p>Ogólne wzory bezpiecznego użytkowania systemu - polityka ograniczonego +zaufania + +<p>W rękach lekkomyślnego i niedbałego administratora nawet +najbezpieczniejszy system staje się dla włamywacza łatwym celem. Dlatego +warto przyswoić sobie kilka nawyków, które w pewnych sytuacjach mogą nam +"uratować życie" czyli zaoszczędzić czas i zdrowie, a nierzadko i +zapisane na dysku cenne dane. + +<p>Przede wszystkim nie należy przyjmować, że każda osoba z którą rozmawiamy +np. za pośrednictwem usługi IRC ma wobec nas całkowicie jasne zamiary. +Zatem nie ogłaszajmy wszystkim szczegółowo ustawień naszego systemu, +odrzucajmy prośby o wysłanie ważnych plików konfiguracyjnych, nie +wykonujmy skompilowanych programów nieznanego pochodzenia (a już na pewno +nie jako użytkownik root!), zastanówmy się dobrze jeśli chodzi o +zakładanie kont nieznanym nam bliżej osobom - a jeśli już się na to +zdecydujemy, należy ustawić tym użytkownikom odpowiednie ograniczenia +(tak jak zostało to pokazane w poprzednim rozdziale). W codziennej pracy +w Internecie i poza nim używajmy specjalnie stworzonego do tego celu +konta. Zwykle zadania, które wykonujemy, nie wymagają najwyższych +przywilejów. Superużytkownik powinien nam wyłącznie służyć do +wprowadzania zmian w konfiguracji systemu - w żadnym wypadku do ściągania +poczty, pisania na grupy dyskusyjne czy też "ircowania". Pamiętajmy o +tym. + +<p>Bardzo ważne są hasła - nie trzeba chyba tłumaczyć, że powinny być takie, +aby nie można było ich odgadnąć. W tym celu warto zainstalować pakiet +pwgen (Debian 2.2 -wersja 1-15). Program służy do "losowego" tworzenia +haseł - w wierszu poleceń podajemy jedynie ich maksymalną długość oraz +określamy, czy mają się składać jedynie ze znaków alfanumerycznych +(pwgen) czy też ze wszystkich znaków należących do "dolnej połowy" +tablicy ASCII i dających się wydrukować (pwgen z opcją -s, czyli spwgen). +Niestety, wspomniane narzędzie wymaga biblioteki libc6 i nie będzie +działać na systemach w nią nie wyposażonych. Oczywiście, nawet gdy mamy +(według nas) "silne" hasło, nie należy rezygnować z jego zmian. Zmiana +hasła co pewien czas powinna również być nawykiem. + +<p>Nie udostępniajmy w pełni wszystkim zasobów naszego komputera tylko +dlatego, że ktoś o to poprosi. Nie ustawiajmy na stałe niekontrolowanego +dostępu do serwera X poleceniem xhost +. Niebezpieczeństwa takiego +postępowania nie trzeba chyba nikomu tłumaczyć. Także lokalnie pewne +usługi powinny być dostępne wyłącznie dla osób z określonych grup (np. +dostęp do programu su, serwera X, pppd, czy innych systemów plików). W +tym celu mamy już stworzone grupy audio, floppy, cdrom i inne. Jeśli +potrzebujemy dostępu do jakichś przywilejów, po prostu dodajmy naszego +użytkownika do odpowiedniej z grup. Pamiętajmy też, że nigdy nie możemy +do końca ufać stworzonym zabezpieczeniom. Trzeba jednak postępować tak, +aby ich pewność i skuteczność była jak największa. diff --git a/polish/international/Polish/free.wml b/polish/international/Polish/free.wml new file mode 100644 index 00000000000..56ff17f8020 --- /dev/null +++ b/polish/international/Polish/free.wml @@ -0,0 +1,151 @@ +#use wml::debian::template title="Free" NOHEADER="yes" + +<h2>Co znaczy "free"?</h2> + +czyli + +<h2>Co rozumieć pod pojęciem ogólnodostępnego oprogramowania?</h2> + +<p>Informacja: W lutym 1998 roku zdecydowano się zastąpić termin <i>Free +Software</i> (który możemy tłumaczyć jako "oprogramowanie darmowe") +pojęciem <i>Open Software</i> ("oprogramowanie ogólnodostępne"). Jak +za chwilę wykażemy, oba pojęcia określają tą samą koncepcję, gdyż +"ogólnodostępne" oznacza dostępność kodu źródłowego. Ponieważ oba są +w powszechnym użyciu, postanowiono utrzymać na razie niniejszy dokument (z +drobnymi zmianami). + +<p>Wielu ludzi dopiero poznających zagadnienia ogólnodostępnego oprogramowania +jest zdezorientowanych, bo słowo "free" w pojęciu "free +software" nie jest użyte w takim znaczeniu, jakiego się spodziewali. Dla +nich "free" znaczy "darmowe, rozdawane za darmo". Mój +słownik wymienia siedemnaście różnych znaczeń słowa "free". Tylko +jedno z nich brzmi "rozdawane za darmo". Reszta odnosi się do +wolności i braku przymusu. Mówiąc <i>Free Software</i> mamy na myśli wolność, +a nie cenę. + +<p>Oprogramowanie określane jako "free" tylko dlatego, że nie trzeba +zapłacić aby go używać, nie jest jeszcze ogólnodostępne. Jego rozpowszechnianie +może być zakazane, a już na pewno nie będzie można go ulepszać. Oprogramowanie +licencjonowane jako darmowe to zwykle tylko broń w kampanii marketingowej, +mająca wypromować produkt pokrewny lub usunąć z rynku słabszą konkurencję. Nie +ma żadnych gwarancji, że pozostanie darmowe. + +<p>Prawdziwe oprogramowanie "free" jest zawsze ogólnodostępne. +Programy udostępniane na zasadzie "dobra publicznego" (ang. <i>public +domain</i>) mogą zostać zabrane i wykorzystane w oprogramowaniu komercyjnym. +Wszystkie ulepszenia wykonane od tego czasu są dla szarego użytkownika +stracone. Aby pozostało darmowe, oprogramowanie musi być chronione prawem +autorskim i posiadać licencję. + +<p>Dla niewtajemniczonych, oprogramowanie albo jest "free", albo nie +jest. W rzeczywistości sprawa jest bardziej skomplikowana. Aby zrozumieć co +różni ludzie rozumieją pod pojęciem "free", wybierzemy się w małą +podróż po świecie licencji programowych. + +<p>Prawa autorskie są formą ochrony praw przynależnych autorom różnego rodzaju +prac. W większości państw program, który napiszemy zostaje automatycznie objęty +prawem autorskim. Licencja to dokument, w którym autor pozwala na wykorzystanie +swojego dzieła (w tym przypadku oprogramowania) przez innych, w sposób możliwy +do zaakceptowania przez niego samego. To, czy załączyć licencję wyjaśniającą w +jaki sposób oprogramowanie może być używane, zależy od autora. Więcej na temat +praw autorskich znajdziemy pod adresem +<a href="http://lcweb.loc.gov/copyright">http://lcweb.loc.gov/copyright</a>. + +<p>Oczywiście, różne okoliczności wymagają różnych licencji. Firmy produkujące +oprogramowanie chcą chronić swój majątek, więc udostępniają program tylko w +postaci skompilowanej (której człowiek nie jest w stanie przeczytać) i +nakładają wiele ograniczeń dotyczących jego użytkowania. Z drugiej strony +autorzy oprogramowania ogólnodostępnego starają się narzucić jeden lub kilka +z poniższych warunków: + +<ul> + +<li>Nieużywanie ich kodu w oprogramowaniu komercyjnym. Jeśli udostępniają go innym +i nie roszczą sobie prawa do jakichkolwiek zysków z tego tytułu, nie chcą też +aby na ich pracy robił pieniądze ktoś inny. + +<li>Ochrona identyfikacji kodu. Ludzie bardzo cenią swoją pracę i nie chcą aby ktoś +inny usunął z niej ich nazwisko albo przypisywał sobie jej autorstwo. + +<li>Udostępnianie kodu źródłowego. Jednym z problemów związanych z komercyjnymi +programami jest niemożność naprawienia błędów czy też modyfikacji ze względu +na brak dostępu do kodu. Firma może także zadecydować o zakończeniu wspierania +naszego sprzętu. Wiele licencji ogólnodostępnych nakazuje dystrybucję kodu +źródłowego. To ukłon w stronę użytkowników, mogących dzięki temu dopasować +oprogramowanie do swoich potrzeb. Istnieją jeszcze inne przyczyny, które +zostaną omówione później. + +<li>Nakładanie na każdy projekt, który zawiera część ich pracy (takie prace w +dyskusji nad prawami autorskimi nazywane są dziełami pochodnymi (ang. +<i>derived works</i>)) obowiązku używania tej samej licencji. + +</ul> + +<p>Wiele osób pisze swoje własne licencje. Napisanie licencji, która dobrze +spełnia postawione przez nas zadania, wiąże się z pewnymi problemami. Zbyt +często użyte słownictwo nie jest jednoznaczne albo stworzone przez autorów +warunki wzajemnie sobie przeczą. Napisanie licencji, która "obroni +się" w sądzie jest jeszcze trudniejsze. Na szczęście istnieje już szereg +gotowych dokumentów prawdopodobnie spełniających wymagania autorów: + +<ul> + +<li>Ogólna licencja publiczna GNU GPL (ang. <i>General Public License</i>). Dużo +dodatkowych informacji i samą licencję znajdziemy pod adresem +<a href="http://www.gnu.org/copyleft/copyleft.html">http://www.gnu.org/copyleft/copyleft.html</a>. +To najczęściej stosowana darmowa licencja na świecie. + +<li>Licencja twórcza (ang. <i>Artistic License</i>): +<a href="http://language.perl.com/misc/Artistic.html">http://language.perl.com/misc/Artistic.html</a>. + +<li>Licencja typu BSD + +<li>Zmodyfikowana licencja typu BSD + +</ul> + +<p>Dokumenty te mają pewne cechy wspólne: + +<ul> + +<li>Można instalować oprogramowanie na dowolnej liczbie komputerów. + +<li>Może go używać dowolna liczba ludzi. + +<li>Można wykonać dowolną liczbę kopii programu, i rozdać je dowolnym osobom (wolna +lub "otwarta" redystrybucja). + +<li>Nie ma ograniczeń związanych z modyfikacją (z wyjątkiem zatrzymania pewnych +cech identyfikujących kod). + +<li>Nie ma ograniczeń dotyczących sprzedaży programu. + +</ul> + +<p>Ostatni punkt, który pozwala na sprzedawanie programu za pieniądze, wydaje +się przeczyć całej idei oprogramowania ogólnodostępnego. W rzeczywistości to +jedna z jego silnych stron. Ponieważ licencja pozwala na nieograniczoną +redystrybucję, gdy jedna osoba dostanie kopię może już sama zająć się +udostępnianiem produktu. Może nawet próbować go sprzedać. Cały mechanizm opiera +się na tym, że wykonanie kopii elektronicznej programu nic nie kosztuje. Podaż +i popyt będą trzymały koszty na niskim poziomie. Dystrybucja oprogramowania na +nośniku, na przykład płycie CD, jest bardzo wygodna - sprzedawca może na nim +umieścić to, co uważa za stosowne. Jeśli naliczana marża będzie zbyt duża, nowi +konkurenci wejdą na rynek i spowodują obniżenie ceny. W rezultacie można nabyć +dystrybucję Debian na 2 kompaktach za mniej niż 5 dolarów (Chodzi o Debiana 2.1. +W Polsce mieszczące się na 4 płytach CD binaria Debiana 2.2 można kupić za cenę +ok. 2 razy wyższą - przyp. T. A.) + +<p>Chociaż oprogramowanie ogólnodostępne nie jest całkowicie wolne od ograniczeń +(tylko udostępnienie na zasadzie <i>public domain</i> gwarantuje tak daleko +posuniętą wolność), daje użytkownikowi elastyczność w dowolnym dostosowaniu +narzędzia do wykonywanego zadania. Równocześnie chroni prawa autora. I to jest +właśnie wolność. + +<p>Debian GNU/Linux silnie wspiera oprogramowanie ogólnodostępne. Ponieważ +programy opierają się na wielu różnych licencjach, został opracowany zestaw +wskazówek <i>Debian Free Software Guidelines</i> (DFSG) mających za zadanie +pomoc w sformułowaniu rozsądnej definicji oprogramowania ogólnodostępnego. +Podstawą (main) dystrybucji Debiana są wyłącznie programy spełniające normy +DFSG. + diff --git a/polish/international/Polish/index.wml b/polish/international/Polish/index.wml index fcb2cb3b0a5..2f68c887c26 100644 --- a/polish/international/Polish/index.wml +++ b/polish/international/Polish/index.wml @@ -16,6 +16,22 @@ na stronie z gotowymi tłumaczeniami</a> tego projektu.</li> poświęcony w całości Debianowi. Zawiera on kilka ciekawych artykułów, a co najważniejsze - aż siedem płytek CD z pakietami .deb</li> +<li>Oto kilka artykułów z tego numeru, udostępnionych dzięki uprzejmości +redaktorów i mozolnej pracy Pawła Tęczy, który przerobił je na WML: +<ul> + <li><a href="wprowadzenie.pl.html">``Wprowadzenie''</a></li> + <li><a href="wstep_do_debiana.pl.html">``Wstęp do Debiana''</a></li> + <li><a href="bezpieczny_debian.pl.html">``Debian GNU/Linux - bezpieczna + stacja robocza''</a></li> + <li><a href="polaczenie_z_internetem.pl.html">``Połączenie z internetem''</a></li> + <li><a href="system_pakietow.pl.html">``System pakietów Debiana''</a></li> + <li><a href="free.pl.html">``Co znaczy "free"? Czyli co rozumieć + pod pojęciem ogólnodostępnego oprogramowania?''</a></li> + <li><a href="instalacja_potato.pl.html">``Instalacja <i>potato</i>''</a></li> + <li><a href="manifest.pl.html">``Manifest Debiana''</a></li> +</ul> +</li> + <li>Jarosław Spirydowicz opracował polską mapę klawiatury w układzie maszynistki na konsolę dla PPC. Dostępne są wersje dla ``<a href="mac-pl_m-ext.kmap.gz">new input layer</a>'' i diff --git a/polish/international/Polish/instalacja_potato.wml b/polish/international/Polish/instalacja_potato.wml new file mode 100644 index 00000000000..49168f60ecc --- /dev/null +++ b/polish/international/Polish/instalacja_potato.wml @@ -0,0 +1,520 @@ +#use wml::debian::template title="Instalacja Potato" NOHEADER="yes" + +<h2>Instalujemy Potato</h2> + +<h3>Wymagania sprzętowe i programowe</h3> + +<p>Debiana 2.2 możemy zainstalować na następujących architekturach: i386 +(Intel x86), Motorola 680x0 (czyli m.in. Atari, Amiga i Macintosh), Alpha (DEC), +Sun SPARC oraz PowerPC. W tym artykule opiszemy instalację na platformie i386. +Bardziej szczegółowe informacje dotyczące innych konfiguracji znajdziemy w +plikach pomocy na płycie CD. + +<p>Musimy posiadać procesor szybszy od 286 (niekoniecznie produkcji Intela - +obsługiwane są także m.in. Cyrix oraz AMD), kartę graficzną kompatybilną z VGA, +minimum 45 MB miejsca na dysku twardym (na rozsądną liczbę aplikacji, system +X Window i kilka bibliotek potrzeba co najmniej 300 MB, a na w miarę kompletną +instalację - około 800 MB; najlepiej jednak zarezerwować sobie 1,1 - 1,2 GB) +oraz nie mniej niż 8 MB pamięci RAM. Wyczerpującą listę obsługiwanego sprzętu +znajdziemy w dokumencie <i>Linux Hardware Compatibility HOWTO</i> +(<a href="http://www.linuxdoc.org/HOWTO/Hardware-HOWTO.html">http://www.linuxdoc.org/HOWTO/Hardware-HOWTO.html</a>). + +<h3>Kopie zapasowe i inne środki ostrożności</h3> + +<p>Zanim rozpoczniemy dzielenie dysku na partycje oraz sam proces instalacji, +należy koniecznie pomyśleć o zabezpieczeniu narażonych na zniszczenie danych. +Pomyłka może nas wiele kosztować. Istnieje także prawdopodobieństw (choć raczej +niewielkie) wystąpienia błędu nie z naszej winy. Wykonanie kopii zapasowych jest +bardzo istotne: czy to na innym dysku, czy na dyskietkach; czy to wszystkiego +czy tylko najważniejszych plików - zależy od tego, jak ważne są znajdujące się w +komputerze dane. Należy też mieć pod ręką CD-ROM albo dyskietkę systemową - +nigdy nie wiadomo, czy po złym ustawieniu nie będziemy musieli wyczyścić sektora +startowego dysku - a to możliwe jest tylko wtedy, gdy uda nam się wystartować +jakikolwiek system operacyjny. + +<h3>Przygotowanie partycji</h3> + +<p>Jeśli zamierzamy zainstalować naszego Linuksa na oddzielnym dysku lub mamy +już przygotowaną do zapisania partycję (o odpowiednich rozmiarach), możemy +pominąć ten rozdział. Problem pojawia się, kiedy posiadamy już jakiś system +operacyjny (DOS, Windows 95/98, Windows NT, OS/2, FreeBSD, MacOS, Solaris lub +inny) i z zajmowanego przez niego obszaru zamierzamy wydzielić miejsce (czyli +stworzyć nową partycję). Wiąże się to zazwyczaj ze zniszczeniem znajdujących się +na nim danych - chyba że posiadamy komercyjny program <tt>Partition Magic</tt>, +za pomocą którego "bezboleśnie" podzielić można nawet tzw. rozszerzone +partycje DOS. Jeśli nie stać nas na zakup programu, możemy posłużyć się jeszcze +innym rozwiązaniem. Program FIPS - czyli <i>First nondestructive Interactive +Partition Splitting</i> - w wersji 2.0 znajduje się na pierwszym instalacyjnym +krążku. Całkowicie darmowy, potrafi dzielić partycje DOS (używane przez MS-DOS, +Windows 3.1 i starsze wersje Windows 95) i Win32 (Windows 95 i 98) z systemami +plików FAT16 i FAT32. Nie będzie on jednak działał, jeśli nasz dysk ma ich już +cztery partycje - dla nowo tworzonej części potrzebuje jeszcze jednego wolnego +miejsca w tablicy partycji. Przed rozpoczęciem dzielenia zalecam zapoznanie się +z dokumentacją programu. Poniższy opis powinien pomóc uniknąć pomyłki. + +<p>Zakładam, że kopia zapasowa została już zrobiona. Więc do dzieła! Najpierw +musimy sprawdzić, czy dysk nie zawiera błędów mogących przeszkodzić w pomyślnym +zakończeniu operacji. W tym celu uruchamiamy (w systemie DOS lub Windows) +<tt>CHKDSK</tt>, <tt>SCANDISK</tt>, <tt>Norton Disk Doctor</tt> lub inne podobne +narzędzie. Jeśli partycja nie zawiera błędów, możemy przystąpić do tworzenia +dyskietki startowej. W systemie DOS robimy to poleceniem <tt>sys a:</tt> lub +<tt>format a:/s</tt>; w przypadku Windows NT i OS/2 także istnieją odpowiednie +polecenia. Następnie kopiujemy na nią pliki <tt>RESTORRB.EXE</tt>, +<tt>FIPS.EXE</tt> i <tt>ERRORS.TXT</tt>. Oczywiście, możemy uruchomić FIPS-a +bezpośrednio z dysku twardego (czasem jest to jedyne wyjście, gdy system nie +chce startować z dyskietki) lecz będzie to raczej ryzykowne. Na razie jednak +spróbujmy bezpieczniejszego sposobu. Najpierw defragmentujemy dysk. Do tego celu +należy użyć dosowego programu <tt>defrag</tt> lub standardowych narzędzi +windowsowych. Problemy, jakie podczas tej operacji możemy napotkać opisane są +szerzej w dokumentacji. Próbujemy uruchomić system z dyskietki (pamiętajmy o +odblokowaniu możliwości jej zapisu, bo w razie niepowodzenia tworzone są kopie +sektorów i należy zostawić szansę odtworzenia z nośnika oryginalnej konfiguracji +- służy do tego właśnie restorrb). Kiedy wszystko pójdzie dobrze, wpisujemy +<tt>fips</tt> (lub <tt>a:\fips</tt>) i możemy przystąpić do partycjonowania. +W każdej chwili możemy opuścić menu za pomocą kombinacji klawiszy <tt>CTRL-C</tt>. +Najpierw program wykrywa zainstalowane dyski - gdy posiadamy więcej niż jeden, +musimy określić który będzie partycjonowany. Następnie FIPS czyta sektor startowy +(boot) i pokazuje tablicę partycji. Jeśli partycji jest więcej niż jedna, +zostaniemy zapytani którą chcemy dzielić. Po wyświetleniu różnych informacji +sektora startowego i sprawdzeniu ewentualnych błędów (ostatni cylinder musi być +wolny, inaczej nie będziemy mogli przeprowadzić zmian) program zapyta o numer +cylindra, od którego ma się zaczynać nowa partycja. Jeśli uważnie przyjrzeliśmy +się tablicy partycji, nie powinno być problemów z obliczeniem cylindra początkowego. +Poza tym rozmiar obu nowopowstałych części jest na bieżąco pokazywany. Za pomocą +kursorów możemy ustawić zarówno numer cylindra (lewo/prawo) jak i określać co ile +jednostek ma się on zmieniać (góra/dół). Po naciśnięciu <tt>ENTER</tt> otrzymamy +nową tablicę partycji - wprowadzając <tt>y</tt> zatwierdzamy zmiany; sprawdzenia +możemy dokonać wciskając klawisz <tt>c</tt>. Po zakończeniu działania programu +należy poczekać kilka sekund, a następnie zrestartować komputer. Będąc z powrotem +w DOS-ie, dobrze jest sprawdzić obie partycje (dzieloną i nowo powstałą) jednym z +wymienionych wcześniej narzędzi diagnostycznych. + +<h3>Start instalatora</h3> + +<p>Mamy do dyspozycji kilka możliwości pobrania systemu. Wybór nośnika zależy +tylko od nas. Podstawowe cztery sposoby to: dyskietki, płyta CD, dysk twardy +albo instalacja przez sieć. Poszczególne sposoby omówimy w dalszej części +artykułu. Tymczasem jednak musimy w ogóle uruchomić program instalacyjny. W tym +celu możemy posłużyć się dyskietką, płytą CD lub innym systemem plików. + +<ol> +<li><b>CD-ROM</b><br> +Jeśli BIOS obsługuje opcję startu systemu z płyty CD, a jednocześnie posiadamy +odpowiednio przygotowaną płytkę (pierwsza płyta dołączona do tego numeru +LinuxPlus Extra), obejdziemy się bez dyskietek. Wkładamy CD-ROM do czytnika, +restartujemy system, a w BIOS-ie zmieniamy pierwsze urządzenie, z którego ma się +ładować system operacyjny na CD-ROM. Teraz możemy już przejść do następnego +rozdziału. +<p>Alternatywna metoda polega na uruchomieniu pod DOS-em skryptu +<tt>boot.bat</tt> znajdującego się w katalogu <tt>\install</tt> na pierwszej +płycie. Może to być pomocne, gdy program instalacyjny mimo wszystko nie chce +wystartować po zmianach w konfiguracji. + +<li><b>partycja DOS</b><br> +Możemy rozpocząć instalację z systemu DOS. W tym celu musimy: + +<ol class="withlalpha"> +<li>Skopiować (z płyty lub mirrora FTP Debiana) następujące pliki na naszą +partycję: +<dl> +<dt> + <tt>disks-1.20/rescue.bin</tt>, <tt>disks-1.20/safe/rescue.bin</tt>, +</dt> +<dt> + <tt>disks-1.44/rescue.bin</tt>, <tt>disks-1.44/safe/rescue.bin</tt>, +</dt> +<dt> + <tt>disks-2.88/rescue.bin</tt>, <tt>disks-1.20/root.bin</tt>, + <tt>disks-1.44/root.bin</tt>, +</dt> +<dt> + <tt>drivers.tgz</tt>, <tt>base2_2.tgz</tt>, <tt>linux</tt>, + <tt>install.bat</tt> i <tt>loadlin.exe</tt> +</dt> +</dl> + +<li>Uruchomić system DOS bez dodatkowych sterowników (należy w odpowiednim +momencie nacisnąć <tt>F8</tt>), + +<li>Uruchomić plik <tt>install.bat</tt>. + +</ol> + +<li><b>partycja z systemem plików ext2fs (Linux) lub Minix</b><br> +Możliwa jest także instalacja z poziomu systemów plików Linuksa lub Miniksa. Nie +będziemy jej tutaj omawiali, zainteresowanych odsyłam do plików pomocy +znajdujących się na płycie CD. + +<li><b>Dyskietka</b><br> +W każdym innym przypadku musimy użyć dyskietek. Ich obrazy zapiszemy za pomocą +programu <tt>rawrite2</tt> (<tt>\tools\rawrite2</tt> na pierwszej płycie). Po +włożeniu do stacji czystej i sformatowanej wcześniej dyskietki, rozpakowaniu +archiwum i skopiowaniu programu na dysk, pod DOS-em wpisujemy: + +<p><tt>rawrite2 -f <obraz> -d <dysk></tt> + +<p>Gdzie <obraz;> to lokalizacja pliku z obrazem, a <dysk> to <tt>a:</tt> albo +<tt>b:</tt> zależnie od oznaczenia napędu dyskietek. + +<p>Potrzebujemy jeszcze tylko "dyskietki ratunkowej" (przy założeniu, +że resztę systemu doinstalujemy z CD), z której również później możemy +uruchamiać Debiana. Jej obraz to <tt>\disks-1.44\rescue.bin</tt> na pierwszej +płycie CD-ROM. Po udanym zapisie restartujemy komputer, zmieniamy odpowiednio +ustawienia BIOS (tak by system ładowany był z dyskietki) i czekamy na znak +<tt>boot:</tt>. + +<p>Oczywiście, możemy używać dyskietek innego formatu niż 3,5-calowe. +Odpowiednie pliki znajdują się w katalogach <tt>disks-1.20</tt> (dyskietki 5.25) +i <tt>disks-2.88</tt>. + +<p>Po wykryciu i pomyślnym załadowaniu instalatora powinniśmy zobaczyć znak +zachęty <tt>boot:</tt>. Gdy naciśniemy <<tt>ENTER</tt>>, zaakceptujemy +domyślne ustawienia uruchamiania (co dla początkujących i w przypadku posiadania +typowego sprzętu jest postępowaniem zalecanym). Szczegółową listę parametrów, +które możemy w tym momencie ustawić można znaleźć w dokumencie <i>BootPrompt +HOWTO</i> (<a href="http://www.linuxdoc.org/HOWTO/BootPrompt-HOWTO.html"> +http://www.linuxdoc.org/HOWTO/BootPrompt-HOWTO.html</a>). Pomoc i dodatkowe +informacje dostępne są po naciśnięciu <<tt>F1</tt>>. + +</ol> + +<h3>Instalacja i konfiguracja systemu podstawowego (Base System)</h3> + +<p>Uruchamia się program instalacyjny. Graficzny interfejs powinien dobrze +spełniać swoje zadanie i ułatwiać nam orientację. Poruszamy się za pomocą +kursorów (góra/dół) oraz tabulatora (<<tt>TAB</tt>>), zmiany zatwierdzamy +klawiszem <<tt>ENTER</tt>>. W każdej chwili możemy też przełączyć się do +trybu konsolowego kombinacją <<tt>ALT+F2</tt>>. + +<h3>Etapy instalacji</h3> + +<ol> +<li><b>Konfiguracja układu klawiatury</b><br> +Musimy wybrać odpowiedni układ klawiatury. Później ustawienia te możemy dowolnie +zmienić (służy do tego polecenie <tt>kbdconfig</tt>). Dlatego też proponuję +zdecydować się na początek na <tt>qwerty/us</tt>, gdyż układ polski +(<tt>qwerty/pl</tt>) możemy uaktywnić po zainstalowaniu wymaganych fontów. + +<li><b>Partycjonowanie dysku</b><br> +Teraz za pomocą programu <tt>cfdisk</tt> należy stworzyć odpowiednią partycję, +czyli <b>Linux native</b> oraz opcjonalnie partycję wymiany (<b>Linux swap</b>). +Użyjemy do tego wcześniej wygospodarowanego miejsca (patrz <i>Przygotowanie +partycji</i>). Pojawi się ekran, na którym będziemy mogli obejrzeć aktualny +podział dysku (jeśli mamy ich kilka, program wcześniej pozwoli nam wybrać +odpowiedni napęd). Możemy teraz skasować utworzoną wcześniej FIPS-em lub innym +narzędziem "wydzieloną" część (jeśli jeszcze tego nie zrobiliśmy). +Wybieramy <b>New</b>, aby utworzyć nową partycję główną (<b>Primary</b>). +Zakładam, że nie mamy jeszcze Linuksa i co za tym idzie innych partycji z +systemem plików ext2. Wybierając wielkość partycji podstawowej, trzeba wziąć pod +uwagę przyszły rozmiar ewentualnej partycji wymiany - nie wciskajmy od razu +<tt><ENTER</tt>> - zostawmy trochę miejsca. Ile? Oczywiście, nie musimy +tworzyć w ogóle partycji wymiany (chyba, że mamy mniej niż 14 MB RAM), jednak w +celu zapewnienia naszemu systemowi odpowiedniej ilości pamięci wirtualnej jest +to raczej wskazane. Tradycyjnie zaleca się, aby partycja wymiany była dwa razy +większa od pojemności pamięci RAM w systemie (np. gdy mamy 32 MB RAM, ma ona +wynosić 64 MB). Jednak tworzenie partycji wymiany o pojemności wyższej niż 100 +MB mija się z celem (jeśli mamy 128 MB RAM lub więcej, to po prostu zostawmy ją +na poziomie 100 MB). Kiedy już się zdecydujemy, ponownie wybieramy <b>New</b>, +podajmy rozmiar i określmy <b>Type</b> jako <b>Linux swap</b>, czyli numer 82. +Wszystko jeszcze raz sprawdzamy (pomyłki nie dałoby się naprawić!) i zapisujemy +zmiany. + +<li><b>Inicjalizacja partycji wymiany (Linux swap)</b><br> +Podajemy nazwę urządzenia odpowiadającego naszej partycji (np. +<tt>/dev/hda4</tt> - patrz dodatek <i>Przykładowe nazwy urządzeń w +Linuksie</i>). + +<li><b>Inicjalizacja partycji głównej (Linux native)</b><br> +Tu także podajemy symbol odpowiedniego urządzenia (np. <tt>/dev/hda3</tt>). +Zostaniemy ostrzeżeni o konieczności usunięcia wszystkich danych z partycji. Po +tej operacji musimy zgodzić się na zamontowanie głównego systemu plików (ang. +<i>root filesystem</i>) na partycji podstawowej. + +<li><b>Instalacja jądra systemu i modułów</b><br> +Zostaniemy zapytani o źródło, z którego chcemy pobrać wspomniane komponenty. +Mamy kilka możliwości: + +<ol class="withlalpha"> +<li><b>cdrom</b><br> +Jeśli napęd nie został wykryty, podajemy symbol reprezentującego go urządzenia +(np. <tt>/dev/hdc</tt>), a następnie katalog z systemem i obrazem dyskietki +ratunkowej (<i>Rescue Floppy</i>) znajdujący się na płycie. + +<li><b><tt>/dev/fd0</tt></b> (pierwsza stacja dysków) + +<li><b><tt>/dev/fd1</tt></b> (druga stacja dysków) +<p>W obu przypadkach musimy dysponować obrazami trzech "Driver +Floppies" - <tt>driver-1.bin</tt>, <tt>driver-2.bin</tt> i +<tt>driver-3.bin. Znajdują się one w katalogach disks-1.20 i disks-1.44</tt> +(zależnie od rodzaju dyskietek - stąd właśnie rozróżnienie na pierwszą stację +zwykle związaną z dyskietkami 3,5 i drugą obsługującą format dyskietek 5,25). +Wcześniej powinniśmy je nagrać za pomocą <tt>rawrite2</tt> (tak jak to zostało +opisane w części <i>Start instalatora</i>). Nie należy też zapominać o +potrzebnej w trakcie instalacji dyskietce ratunkowej. + +<li><b>harddisk</b> (partycja na dysku twardym)<br> +Powinniśmy podać symbol partycji oraz informacje konieczne do zlokalizowania na +niej jądra i sterowników. + +<li><b>mounted</b> (poprzednio zamontowany system plików)<br> +Tak jak w poprzednim przypadku, należy podać miejsce gdzie znajdują się +odpowiednie moduły. + +<li><b>nfs</b> (<i>Network File System</i>)<br> +Interfejsy sieciowe muszą być obsługiwane przez standartowe jądro. Dobrze jest +wcześniej zainteresować się konfiguracją sieci (punkt 7), a dopiero później +przejść do tej opcji. Musimy podać adres serwera NFS oraz ścieżkę do plików +wymaganych przez program. + +<li><b>network</b> (instalacja przez sieć)<br> +Tutaj także musimy wcześniej skonfigurować sieć. Następnie podajemy adres +serwera FTP i ścieżkę. + +</ol> + +<li><b>Konfiguracja modułów</b><br> +Przechodzimy do jednego z najważniejszych punktów instalacji. Wiedząc +wystarczająco dużo o swoim sprzęcie, powinniśmy wybrać te sterowniki urządzeń, +które będą nam rzeczywiście potrzebne. Oczywiście, ustawienia nie są ostateczne +- możemy je później zmieniać na przykład za pomocą programu <tt>modconf</tt> +(lub ponownej kompilacji jądra systemu). Dostępne części to: +<ol class="withlalpha"> +<li><b>block devices</b> - Sterowniki dysków i napędów; + +<li><b>cdrom</b> - Sterowniki do różnych rodzajów napędów CD; + +<li><b>fs</b> - Włączanie obsługi innych systemów plików; + +<li><b>ipv4</b> - Specjalne opcje protokołu IP; + +<li><b>ipv6</b> - Opcje protokołu IP w wersji 6; + +<li><b>misc</b> - Dużo różnych modułów dotyczących urządzeń peryferyjnych takich +jak np. karty dźwiękowe; + +<li><b>net</b> - Protokoły i karty sieciowe; + +<li><b>SCSI</b> - Urządzenia SCSI; + +<li><b>video</b> - Moduły związane z systemem Video4Linux; + +</ol> + +<li><b>Konfiguracja sieci</b><br> +Nawet jeśli nie zamierzamy wykorzystywać naszego Debiana w sieci LAN lub łączyć +się z Internetem, musimy ustawić niektóre z poniższych opcji. + +<ol class="withlalpha"> +<li><b>nazwa komputera</b><br> +Dowolna nazwa, za pomocą której będzie identyfikowany nasz komputer (tu mamy +całkowicie wolną rękę - naturalnie nie może zawierać spacji ani znaków innych +niż alfanumeryczne). +<p>Jeśli nie posiadamy karty sieciowej, możemy pominąć dalszą konfigurację. +Instalator sam poinformuje nas o niewykryciu interfejsów sieciowych i +zaproponuje przejście do innych ustawień. Gdy jednak na pytanie o połączenie z +siecią (nie chodzi tu oczywiście o połączenie modemowe - w takim przypadku +należy odpowiedzieć <b>Nie</b>) odpowiemy twierdząco, czeka nas jeszcze kilka +dodatkowych kroków. + +<li><b>adres IP</b><br> +Adres IP komputera w sieci. + +<li><b>maska podsieci</b><br> +Maska podsieci. + +<li><b>adres IP bramki/routera</b><br> +Adres IP domyślnego routera w naszej sieci. + +<li><b>nazwa domeny</b><br> +Możemy wypełnić to pole nazwą domeny przypisanej do naszej sieci (nie jest to +konieczne). + +<li><b>serwery nazw</b><br> +Do trzech adresów IP (oddzielonych spacjami) używanych serwerów DNS. +<p>Dane można później skorygować w skryptach startowych +(<tt>/etc/init.d/network</tt>) oraz plikach <tt>/etc/hosts</tt> i +<tt>/etc/resolv.conf</tt>. + +</ol> + +<li><b>Instalacja systemu podstawowego (Base System)</b><br> +Również tutaj musimy podać nośnik instalacyjny (wybór mamy taki sam jak w +przypadku instalacji jądra - patrz <i>Instalacja jądra systemu i modułów</i>). +Potrzebne będą także informacje konieczne do zlokalizowania pliku +<tt>base2_2.tgz zawierającego system</tt> (znajduje się na pierwszej płycie CD). +Wyjątkiem są naturalnie dyskietki - w katalogach <tt>disks-1.44</tt> i +<tt>disks-1.20</tt> mamy przygotowane obrazy w formacie +<tt>base-<numer>.bin</tt>, gdzie <numer>, to numer dyskietki - w +przypadku dyskietek 1,44 MB tych ostatnich jest 10, natomiast gdy zamierzamy +stosować dyskietki 5,25 cala będzie ich aż 12. + +<li><b>Konfiguracja systemu</b><br> +Chodzi przede wszystkim o ustawienie strefy czasowej lub państwa, w którym się +znajdujemy. Myślę, że nie sprawi to kłopotów - wystarczy znaleźć po lewej +stronie <b>Poland</b> albo po prawej <b>Europe</b> a później <b>Warsaw</b>. Ze +względu na obowiązujące w naszym kraju zmiany czasu polecam to pierwsze +rozwiązanie. Później zostaniemy zapytani, czy chcemy ustawić czas GMT czy może +wolimy pozostać przy czasie lokalnym (<b>local time</b>). Odpowiadamy <b>Tak - +chcę zmiany na GMT</b> tylko wtedy, gdy posiadamy na naszym komputerze wyłącznie +systemy UNIX-owe (należy do nich Linux, czyli również Debian GNU/Linux). W +przeciwnym razie trzeba pozostać przy <b>local time</b>. + +<li><b>Start Linuksa bezpośrednio z dysku twardego</b><br> +Zaznaczajmy tę opcję zazwyczaj wtedy, gdy jedynym systemem w naszym komputerze +będzie właśnie Debian GNU/Linux. W przeciwnym razie nie będziemy mogli korzystać +z innych, ponieważ partycja podstawowa (Linux native) będzie pełniła rolę +partycji startowej. Dużo lepszym rozwiązaniem są menedżery startu takie jak np. +LILO (<i>LInux LOader</i>), pozwalające na uruchomienie Linuksa bez pomocy +dyskietki ratunkowej, a jednocześnie zapewniające dostęp do innych systemów +operacyjnych znajdujących się na naszych dyskach. Później możemy np. umieścić +LILO w pierwszym sektorze partycji linuksowej (zgodnie z poniższym opisem), +jednak na razie bezpieczniejsze jest korzystanie z dyskietki systemowej. + +<p><i>Konfiguracja LILO (LInux LOader)</i><br> +LILO to tak zwany menedżer startu - za jego pomocą możemy uruchamiać kilka +różnych systemów operacyjnych bez użycia dyskietek systemowych i startowych +CD-ROM-ów. W Debianie 2.2 powinniśmy zainstalować pakiet <tt>lilo</tt> (sekcja +base). W <tt>/usr/doc/lilo</tt> oraz na stronach <tt>lilo(8)</tt> i +<tt>lilo.conf(5)</tt>, a także w pakiecie <tt>lilo-doc</tt> znajduje się +obszerna dokumentacja. Plik konfiguracyjny to <tt>/etc/lilo.conf</tt> i na jego +przykładzie można omówić odpowiednie ustawienia (listing 1). Po dokonaniu zmian, +jako użytkownik root wpisujemy w wierszu poleceń <tt>lilo</tt> i tym sposobem +zapisujemy zmiany w sektorze startowym (boot) dysku. Należy pamiętać (jeśli LILO +jest zainstalowane w MBR - Master Boot Record), że takie systemy operacyjne jak +Windows 95 po ponownej instalacji nadpisują ustawienia <tt>lilo</tt> (zamazując +zawartość boot sektora). Gdy tak się stanie, należy uruchomić Linuksa z +dyskietki startowej a następnie wywołać program <tt>/sbin/lilo</tt> (wpisując +<tt>lilo</tt>). + +<li><b>Tworzenie dyskietki systemowej</b><br> +Dyskietka systemowa jest niezbędna. Nawet jeśli zamierzamy uruchamiać system z +dysku twardego (za pomocą np. menadżera startu), kiedy coś pójdzie nie tak +zawsze warto mieć ją pod ręką. Również w przypadku zapisania wcześniej +spełniającej te same funkcje dyskietki startowej (Rescue Floppy), nie należy tej +opcji pomijać. + +<p>Dalej mamy jeszcze opcje dotyczące kontroli wcześniejszych ustawień +("<i>Przejrzyj tablicę partycji</i>", "<i>Restart +instalatora</i>"), konfiguracji obsługi PCMIA, a także uruchomienia powłoki +(co nie jest raczej potrzebne, skoro możemy ją wywołać niezależnie od procesu +instalacyjnego - zobacz początek rozdziału). Jeśli nie chcemy korzystać z tych +dodatkowych opcji, pozostaje nam tylko <b>Reboot the System</b> - powodzenia! +(nie zapomnijmy przywrócić ustawień <b>First Boot Device</b> w BIOS-ie - to +bardzo częste przeoczenie). + +<li><b>Pozostałe składniki</b><br> +Przechodzimy do ostatniego etapu instalacji - tutaj nie powinno już być żadnych +problemów. + +<ol> +<li><b>Hasła kodowane algorytmem MD5?</b><br> +Odpowiedź twierdząca pozwoli nam na ustawianie haseł dłuższych niż 8 znaków i +kodowanych trudniejszym do złamania metodą <i>brute force</i>. Mając na uwadze +bezpieczeństwo, radzę odpowiedzieć <b>Tak</b>. + +<li><b>Obsługa shadowingu haseł (Shadow Password Support)?</b><br> +Zamiast w dostępnym do czytania dla wszystkich pliku <tt>/etc/passwd</tt>, +zakodowane hasła będą przechowywane w <tt>/etc/shadow</tt>, do którego dostęp ma +tylko root i członkowie grupy shadow. Ze względów bezpieczeństwa odpowiedź na to +pytanie powinna zawsze brzmieć <b>Tak</b>. + +<li><b>Hasło superużytkownika</b><br> +Ustawiamy hasło użytkownika root. Na początek może być dowolne, radziłbym jednak +pamiętać o wymogach bezpieczeństwa (opisujemy je dokładniej w artykule <a +href="bezpieczny_debian.html">Debian GNU/Linux - bezpieczna stacja robocza</a>). +Najlepiej na początku zapisać wprowadzone hasło (zapomnienie hasła to nie koniec +świata, niemniej sytuacja byłaby nieco kłopotliwa) - później możemy oczywiście +wszystko zmienić. + +<li><b>Stworzenie zwykłego użytkownika</b><br> +Za jego pomocą będziemy korzystać z systemu i wykonywać zwykłe czynności nie +wymagające przywilejów. (Powód takiego postępowania również został opisany w +artykule o bezpieczeństwie.) Musimy podać nazwę (login - od 2 do 8 znaków +alfanumerycznych) i hasło (może zawierać wszystkie znaki z "dolnej +połowy" ASCII). + +<li><b>Usunięcie obsługi PCMIA</b><br> +Jeśli nie korzystamy ze złącza PCMIA, to możemy w tym momencie usunąć jego +obsługę. Przyspieszy i ułatwi to znacznie późniejszą pracę z systemem. + +<li><b>Profile instalacyjne i pozostałe pakiety</b><br> +Ostatnia faza procesu instalacyjnego - dodanie pakietów nie będących częścią +systemu podstawowego. Pierwszą rzeczą, o którą zapyta nas program będzie rodzaj +nośnika instalacyjnego - do wyboru mamy <b>cdrom</b>, <b>http</b>, <b>ftp</b> i +<b>filesystem</b> (inny system plików). Możemy też ręcznie skonfigurować plik +<b>/etc/apt/sources.list</b>, tak żeby zawierał odpowiednie ścieżki (później +więcej informacji można znaleźć na stronie <b>sources.list(5)</b>). Podobnie jak +w przypadku jądra i modułów oraz systemu podstawowego, także tu musimy podać +potrzebne do zlokalizowania pakietów informacje. Wybieramy rodzaj instalacji. W +przypadku simple będziemy mogli podać zestawy pakietów, a resztą zajmie się +program APT. Gdy wybierzemy <b>advanced</b>, musimy liczyć się z +niespodziankami, gdyż ciężar instalacji przejmie na siebie narzędzie o nazwie +<tt>dselect</tt>. Nawet doświadczonym użytkownikom może sprawiać kłopoty - nie +jest tak wygodny jak APT, ale za to mamy możliwość bardziej wnikliwego +obserwowania przebiegu całego procesu. Więcej informacji o programie +<tt>dselect</tt> znajdziemy w dokumencie <tt>dselect-beginner</tt> (znajduje się +na pierwszej płycie w katalogu <tt>install/documentation</tt>). Na początek +jednak polecam <b>simple</b> - później możemy doinstalować interesujące nas +programy przy użyciu <tt>dpkg</tt>. + +<li><b>Logowanie</b><br> +Teraz możemy zalogować się w systemie na konto wcześniej stworzonego użytkownika +lub jako root. To już koniec procesu instalacyjnego - mam nadzieję, że przebiegł +bez kłopotów, a ten artykuł służył Czytelnikowi cenną pomocą. + +</ol> + +</ol> + +<p>Dziękuję Michałowi Piskadło za udostępnienie sprzętu. + +<p><b>Przykładowe nazwy urządzeń w Linuksie (Dodatek)</b> + +<p> +<tt>/dev/hda</tt> - pierwszy dysk IDE<br> +<tt>/dev/hdb</tt> - drugi dysk IDE<br> +<tt>/dev/hdc</tt> - trzeci dysk IDE (zwykle IDE CD-ROM) + +<p> +<tt>/dev/hda3</tt> - trzecia partycja pierwszego dysku<br> +<tt>/dev/hdb1</tt> - pierwsza partycja drugiego dysku + +<p> +<tt>/dev/sda</tt> - pierwszy dysk SCSI<br> +<tt>/dev/sdb</tt> - drugi dysk SCSI + +<p> +<tt>/dev/sda2</tt> - druga partycja pierwszego dysku (SCSI) + +<p> +<tt>/dev/fd0</tt> - pierwsza stacja dysków<br> +<tt>/dev/fd1</tt> - druga stacja dysków + +<p> +<tt>/dev/lp0</tt> - pierwszy port równoległy (drukarki) (LPT1)<br> +<tt>/dev/lp1</tt> - drugi port równoległy (na niektórych maszynach może to być +właśnie LPT1) + +<p> +<tt>/dev/psaux</tt> - port PS/2 + +<p> +<tt>/dev/js0</tt> - joystick 1<br> +<tt>/dev/js1</tt> - joystick 2 + +<p> +<tt>/dev/ttyS0</tt> - port szeregowy COM1<br> +<tt>/dev/ttyS1</tt> - port szeregowy COM2<br> +<tt>/dev/ttyS2</tt> - port szeregowy COM3 + +<p> +<tt>/dev/tty0</tt> - pierwsza konsola użytkownika root<br> +<tt>/dev/tty1</tt> - pierwszy wirtualny terminal (konsola)<br> +<tt>/dev/tty6</tt> - szósty wirtualny terminal + +<p> +<tt>/dev/ttyp1</tt> - pierwszy pseudoterminal<br> +<tt>/dev/ttyp4</tt> - czwarty pseudoterminal + +<p>Więcej informacji na stronie podręcznikowej <tt>MAKEDEV(8)</tt>. + diff --git a/polish/international/Polish/manifest.wml b/polish/international/Polish/manifest.wml new file mode 100644 index 00000000000..22850b04efa --- /dev/null +++ b/polish/international/Polish/manifest.wml @@ -0,0 +1,113 @@ +#use wml::debian::template title="Manifest" NOHEADER="yes" + +<h2>The Debian Linux Manifesto</h2> + +autor: Ian A. Murdock<br> +poprawione 01/06/94 + +<h3>Czym jest Debian Linux?</h3> + +<p>Debian Linux to nowa dystrybucja Linuksa. W przeciwieństwie do innych, +tworzonych w przeszłości przez jednego autora lub wyizolowaną grupę, Debian +powstaje w systemie otwartym, w duchu Linuksa i GNU. Głównym celem projektu +Debian jest stworzenie dystrybucji, która będzie wreszcie w pełni zasługiwała +na miano Linuksa. Debian, budowany rozważnie i starannie, będzie utrzymywany i +rozwijany z podobnym samemu Linuksowi zaangażowaniem. + +<p>Istotna jest także koncepcja stworzenia dystrybucji niekomercyjnej, która +z powodzeniem będzie mogła konkurować na rynku komercyjnym. Byłaby +rozpowszechniana przez fundację <i>Free Software Foundation</i> na płytach +CD-ROM, a stowarzyszenie <i>Debian Linux Association</i> oferowałoby ją na +dyskietkach i taśmach razem z drukowanymi podręcznikami, wsparciem technicznym +i innymi zasadniczymi dla użytkownika składnikami. Wszystko będzie dostępne po +cenie niewiele wyższej od kosztów wytworzenia, a zysk zostanie przeznaczony na +rzecz przyszłego rozwoju oprogramowania ogólnodostępnego. Taki rodzaj +dystrybucji jest niezbędny do osiągnięcia sukcesu przez system operacyjny +Linux na rynku komercyjnym i musi być wdrażany z myślą o wspieraniu i rozwoju +oprogramowania ogólnodostępnego, a nie o zyskach czy wpływach. + +<h3>Dlaczego tworzony jest Debian?</h3> + +<p>Dystrybucje to sprawa zasadnicza dla przyszłości Linuksa. Eliminują potrzebę +wykonania przez użytkownika takich czynności jak lokalizacja, pozyskanie, +skompilowanie, zainstalowanie i integracja ogromnej liczby podstawowych +narzędzi koniecznych do złożenia działającego systemu. Ciężar budowania systemu +spada na twórcę dystrybucji, który może dzielić swoją pracę pomiędzy tysiące +zwykłych użytkowników. Prawie wszyscy użytkownicy Linuksa mają z nim pierwszy +kontakt właśnie poprzez dystrybucję, a większość z nich będzie jej używać dalej +ze względu na wygodę, nawet po zapoznaniu się z samym systemem operacyjnym. + +<p>Pomimo ich oczywistej ważności, tworzenie dystrybucji nie cieszy się wielkim +zainteresowaniem programistów. Istnieje proste wytłumaczenie tego faktu: nie są +one ani łatwe, ani fascynujące w tworzeniu; wymagają natomiast wielkiego +wysiłku ze strony autora, który musi zapewnić ich stabilność i aktualność. + +<p>Sklecenie systemu naprędce to jedna rzecz. Zupełnie inną sprawą jest +zagwarantowanie, że będzie on dla użytkowników łatwy w instalacji, da się go +zainstalować i używać w różnych konfiguracjach sprzętowych, zawiera +oprogramowanie które będzie przydatne dla innych i będzie aktualizowany gdy +programy wchodzące w jego skład będą się rozwijały. + +<p>Wiele dystrybucji zapowiadało się jako całkiem dobre systemy, ale z upływem +czasu przywiązywano coraz mniej uwagi do ich utrzymania. Dobrym przykładem jest +tutaj <i>Softlanding Linux System</i> (bardziej znany jako SLS). To chyba +najbardziej ,,dziurawa'' i najgorzej zarządzana z dostępnych dystrybucji Linuksa. +Niestety, prawdopodobnie także najbardziej popularna. Przyciąga najwięcej uwagi +ze strony wielu komercyjnych ,,dystrybutorów''; Linuksa, którzy +postanowili zrobić interes na rosnącej popularności tego systemu. + +<p>To bardzo zła sytuacja, ponieważ większość ludzi zaopatrujących się w +Linuksa u tych ,,dystrybutorów'' otrzyma pełną błędów i źle utrzymaną +dystrybucję. Jakby tego było mało, firmy te mają denerwujący zwyczaj +nierzetelnego reklamowania niedziałających albo krańcowo niestabilnych +,,funkcji'' swoich produktów. Większość kupujących będzie oczywiście +oczekiwała produktu takiego jak przedstawiany w reklamie i wielu będzie +wierzyło iż jest to komercyjny system operacyjny (istnieje także tendencja +niewspominania ani o tym, że Linux jest darmowy, ani o istnieniu licencji +GNU General Public License). "Dystrybutorzy" zarabiają na tym tyle +pieniędzy, że mogą sobie pozwolić na kupowanie coraz to większych ogłoszeń w +coraz większej liczbie gazet; to klasyczny przykład czerpania korzyści z +nagannego zachowania. Ta sytuacja musi się zmienić. + +<h3>Jak Debian ma rozwiązać te problemy?</h3> + +<p>Proces projektowania Debiana jest otwarty. W ten sposób zapewniamy, że +system jest najwyższej jakości i że wychodzi naprzeciw potrzebom użytkowników. +Dzięki zaangażowaniu innych osób o różnych zdolnościach i doświadczeniu, Debian +może być tworzony sposobem modułowym. Składa się z elementów wysokiej jakości, +ponieważ poszczególnymi częściami zajmują się ci, którzy mają już doświadczenie +w danym temacie. Włączenie innych do procesu tworzenia gwarantuje również, że +ważne uwagi dotyczące ulepszeń mogą zostać uwzględnione jeszcze w trakcie +przygotowywania dystrybucji. Dlatego jest ona kreowana bardziej w oparciu o +potrzeby i żądania użytkowników, niż autora. Poznanie takich potrzeb bez +wyraźnego zaangażowania innych jest dla pojedynczego człowieka lub małej grupki +ludzi sprawą bardzo trudną. + +<p>Debian Linux będzie także udostępniany na fizycznych nośnikach przez +fundację <i>Free Software Foundation</i> oraz stowarzyszenie <i>Debian Linux +Association</i>. To przybliży Debiana użytkownikom, którzy nie mają dostępu do +Internetu czy FTP, a jednocześnie pozwoli na dostęp do takich produktów i usług +jak podręczniki w formie drukowanej oraz wsparcie techniczne wszystkim +użytkownikom systemu. Tym sposobem Debian może być używany przez większą liczbę +ludzi i organizacji, niż byłoby to możliwe w jakiejkolwiek innej sytuacji. +Projekt ukierunkowany będzie na dostarczanie dobrego produktu a nie na zyski +lub obroty, a rezerwa pieniężna z oferowanych produktów i usług może być +przeznaczona na poprawę samej jakości oprogramowania - przysłuży się to +wszystkim użytkownikom, niezależnie od tego czy za produkt zapłacili czy +nie. + +<p>Fundacja <i>Free Software Foundation</i> odgrywa niezmiernie ważną rolę w +przyszłości Debiana. Już poprzez fakt udostępniania go przez tę organizację, +świat otrzyma sygnał że Linux nie jest produktem komercyjnym i nigdy nie +powinien nim zostać. Nie znaczy to, iż nigdy nie będzie mógł stanowić +konkurencji na polu komercyjnym. Tym, którzy mają przeciwne zdanie polecam +przyjrzenie się fenomenowi programów GNU Emacs albo GCC, które nie są +aplikacjami komercyjnymi, a jednakwywołały spore zamieszanie na rynku podobnego +oprogramowania. + +<p>Przyszedł czas skoncentrować się na przyszłości Linuksa bardziej niż na +zgubnym celu, jakim jest wzbogacanie się kosztem całej linuksowej społeczności. +Rozwój i dystrybucja Debiana niekoniecznie stanowią odpowiedzi na problemy, +których obraz naszkicowałem w Manifeście, ale mam nadzieję że przynajmniej +zwrócą na nie uwagę i w rezultacie doprowadzą do ich rozwiązania. + diff --git a/polish/international/Polish/polaczenie_z_internetem.wml b/polish/international/Polish/polaczenie_z_internetem.wml new file mode 100644 index 00000000000..99c3049fa80 --- /dev/null +++ b/polish/international/Polish/polaczenie_z_internetem.wml @@ -0,0 +1,280 @@ +#use wml::debian::template title="Połączenie z internetem" NOHEADER="yes" + +<h2>Połączenie z Internetem</h2> + +<h3>Jak prosto i szybko zestawić połączenie PPP za pomocą dostępnych w naszej +dystrybucji narzędzi</h3> + +<p>Możemy wymienić co najmniej kilka rzeczy, których spodziewamy się po nowo +zainstalowanym systemie operacyjnym. Oprócz oczywistej poprawy działania +(stabilność, szybkość, bezpieczeństwo) w odniesieniu do systemu poprzedniego +(jeśli - tak jak w większości przypadków - jest nim znany produkt pewnej bardzo +dużej firmy, nie będzie to szczególnie trudne), zazwyczaj chcemy by zostały nam +zapewnione podstawowe warunki konieczne do wykonywania pracy lub po prostu +uprawiania ulubionych zajęć. Dopiero potem zastanawiamy się nad rozszerzaniem +możliwości i w konsekwencji przewyższeniem funkcjonalnością poprzedniego +środowiska. Wróćmy jednak do elementów koniecznych - najczęściej chodzi tutaj o +dostęp do dysków z innymi systemami plików, możliwość drukowania, graficzny +interfejs, ułatwienia w pracy w środowisku tekstowym, obsługę myszki, polskie +znaki, korzystanie z dyskietek i CD-ROM-ów, dźwięk, programy umożliwiające +konwersję między różnymi formatami itd. Niebagatelną rolę odgrywa także +połączenie z innymi komputerami lub siecią (naturalnie tylko wtedy, gdy mamy +taką możliwość). Właściwie jest ono sprawą podstawową, gdyż zwykle dzięki niemu +uzyskujemy dostęp do informacji pomocnych w dalszej konfiguracji i +dostosowywaniu systemu do swoich potrzeb. W tym artykule opiszemy najczęściej +chyba wykorzystywane połączenie sieciowe - modemowe połączenie przez łącze +komutowane (linię telefoniczną) przy użyciu protokołu PPP (<i>Point-to-Point +Protocol</i>) z siecią Internet. Jako przykładu użyję ogólnopolskiego numeru +udostępnianego za cenę rozmowy lokalnej przez Telekomunikację Polską S.A. +Oczywiście, tekst ten powinien również okazać się pomocny w przypadku innych +usługodawców internetowych udostępniających połączenie z Siecią na podobnych +zasadach. Wszystko zostało opisane w oparciu o dystrybucję Debian 2.2 Potato +(przy czym posiadacze Debiana 2.0 Hamm i 2.1 Slink nie powinni czuć się +pokrzywdzeni, gdyż artykuł można odnieść także do tych wersji Debian +GNU/Linux) i dostępne w niej programy. + +<h3>Co nam będzie potrzebne</h3> + +<p>Dobrze byłoby, gdybyśmy posiadali modem ;). Przy czym nie może być to tzw. +,,winmodem'', czyli urządzenie przekazujące część swoich obowiązków +sterownikom Windows. Częstokroć znacznie tańsze, lecz przecież w pewien sposób +wybrakowane, urządzenie to nie może pracować pod kontrolą np. Linuksa. Dlatego +właśnie konieczny jest zwykły modem. Oprócz tego, oczywiście, potrzebujemy +zainstalowanego i działającego Debiana. Jądro musi posiadać obsługę protokołu +PPP (prawdopodobnie po zwykłej instalacji mamy ,,PPP Support'' +wkompilowane na stałe, później ewentualnie można skompilować je jako moduł w +celu zmniejszenia rozmiaru jądra). Ponadto konieczna jest instalacja pakietu +<tt>ppp</tt> (w Potato numer wersji to 2.3.11-1.1) zawierającego niezbędny +demon <tt>pppd</tt> oraz program <tt>chat</tt>. Gdy nie mamy jeszcze w +katalogu <tt>/dev</tt> stworzonych urządzeń oznaczających porty szeregowe +(są to odpowiednio <tt>ttyS0</tt> - COM1, <tt>ttyS1</tt> - COM2, +<tt>ttyS2</tt> - COM3 itp. ), należy tworzymy je za pomocą skryptu +<tt>MAKEDEV</tt>: + +<tt> +[root]# cd /dev +[root]# /MAKEDEV ttySx <gdzie ,,x'' to ,,numer portu - 1''> +</tt> + +<p>Warto też stworzyć specjalne dowiązanie: + +<tt> +[root]# ln -s /dev/ttyS1 /dev/modem <gdy mamy modem na COM2> +</tt> + +<p>W <tt>/etc/syslog.conf</tt> powinniśmy dodać następujący wiersz (jeśli +jeszcze jej tam nie ma): + +<tt> +*.* -/var/log/ppp.log <pierwszą gwiazdkę możemy zastąpić nazwą podsystemu +logowania np. local0 czy local2> +</tt> + +<p>Istotne jest ustawienie adresów serwerów DNS (<i>Domain Name System</i>) w +pliku <tt>/etc/resolv.conf</tt>, dzięki czemu nie będziemy musieli używać tylko +numerów IP, ale także zwykłych nazw domenowych. Można też wpisać do niego wiele +innych rzeczy - odsyłam do strony podręcznikowej <tt>resolv.conf(5)</tt> +(<tt>man 5 resolv.conf</tt>). My skoncentrujemy się jednak na numerach +serwerów DNS - tak powinien wyglądać efekt naszych modyfikacji (numery IP +serwerów TP S.A. - podstawowego i uzupełniającego): + +<tt> +nameserver 194.204.152.34<br> +nameserver 194.204.159.1 +</tt> + +<p>Dalsze wymagania zależą od metody, którą wybierzemy. Gdy zamierzamy +,,pójść na łatwiznę'' (część pierwsza, <i>,,Inteligentny'' +WvDial</i>), potrzebny nam będzie pakiet <tt>wvdial_1.41</tt> (sekcja comm, +numer wersji jak w Potato). W przypadku drugiego sposobu (opisanego w kolejnym +rozdziale), nie obejdzie się bez <tt>pppconfig_2.0.4</tt> (Potato). Gdy +zdecydujemy się na sposób trzeci (część <i>Połączenie w środowisku +KDE - kppp</i>), wymagane jest zainstalowanie środowiska KDE (pakiety +zaczynające się od kde* z różnych sekcji działu contrib). + +<h3>,,Inteligentny'' WvDial</h3> + +<p>Program <tt>wvdialconf</tt> powinien uruchomić się zaraz po zakończeniu +instalacji niezbędnych pakietów. Automatyczna konfiguracja połączenia tym +sposobem ma swoje niewątpliwe zalety: musimy podać tylko trzy parametry (numer +telefonu, nazwę użytkownika i hasło) - trwa to dość szybko, wykrywanie modemu +przebiega bez naszego aktywnego udziału i, co najważniejsze, nie musimy +angażować zbytnio naszych szarych komórek ;). Według mnie wad jest jednak +więcej, a najważniejsza z nich to niemożność ustawienia wielu ważnych opcji +(program robi to za nas) i co za tym idzie olbrzymia nieelastyczność narzędzia. +Jest to dobre rozwiązanie, gdy nie zamierzamy zgłębiać tajników konfiguracji +<tt>pppd</tt>. Jednak w przypadku późniejszych problemów z połączeniem, warto +sięgnąć po <tt>pppconfig</tt>. Cała konfiguracja znajduje się w pliku +<tt>/etc/wvdial.conf</tt> (wydruk 4). Możemy ją później ręcznie aktualizować +(gdy chcemy wyłącznie zmienić ustawienia modemu, wykonujemy polecenie +<tt># /usr/sbin/wvdialconf /etc/wvdial.conf</tt>). Opcje <tt>pppd</tt> +umieszczone są w <tt>/etc/ppp/peers/wvdial</tt>. Więcej informacji o +formacie pliku <tt>/etc/vwdial.conf</tt> znajdziemy na stronach +podręcznikowych <tt>wvdial(1)</tt> oraz <tt>wvdialconf(1)</tt>. + +<h3>Konfiguracja i połączenia przy użyciu pppconfig</h3> + +<p>Jedynym zadaniem graficznej nakładki o nazwie <tt>pppconfig</tt> jest +pomoc w ustawianiu i uruchomienie połączenia PPP. Gdy już stworzymy w ten +sposób odpowiednie wpisy w plikach konfiguracyjnych <tt>pppd</tt> +(<i>Point-to-Point Protocol Daemon</i>), możemy się łączyć i rozłączać przy +użyciu specjalnych skryptów: <tt>pon</tt> oraz <tt>poff</tt>. W katalogu +<tt>/etc/ppp</tt> znajdziemy większość interesujących nas informacji (te +dotyczące konkretnych połączeń znajdują się w +<tt>/etc/ppp/peers/nazwa_polaczenia</tt>). W plikach +<tt>/etc/chatscripts/nazwa_polaczenia</tt> możemy obejrzeć skrypty +programu <tt>chat</tt> służącego do przeprowadzania ,,negocjacji'' +między naszym i zdalnym demonem <tt>pppd</tt> (lub też między naszym +komputerem i modemami - zależy od punktu widzenia). Również one są tworzone za +pomocą <tt>pppconfig</tt>. Oto kolejne kroki całej procedury: + +<ol> + +<li>Uruchamiamy jako użytkownik root program <tt>pppconfig</tt> poleceniem +<tt>/usr/sbin/pppconfig</tt>. Po ekranie menu poruszamy się za pomocą +strzałek, tabulatorem przełączamy się z menu do przycisków ,,OK'' i +,,CANCEL''. Enter służy do zatwierdzenia (OK) lub cofnięcia zmian +(CANCEL - wtedy wracamy do pierwszego ekranu). + +<li>W pierwszym oknie wybieramy <b>Create a connection</b>. + +<li>Następnie ustawiamy nazwę połączenia. Gdy nie zamierzamy tworzyć innych, to po +prostu zostawmy <b>provider</b> - wtedy pozostanie domyślne (i możemy odwoływać +się do niego za pomocą poleceń <tt>pon</tt> i <tt>poff</tt> bez podawania +nazwy). W tym przykładzie postępujemy jednak inaczej - wpisujemy <b>tpsa</b>. + +<li>Kolejnym krokiem jest wybór metody identyfikacji. Przekazywanie hasła czystym +tekstem (czyli używanie Chat lub PAP w formie podstawowej) nie jest sposobem +najbezpieczniejszym. Istnieje groźba podsłuchu, a poza tym niepokoi sam wygląd +plików dziennika po próbie nawiązania takiego połączenia (to dotyczy +szczególnie podawania hasła bezpośrednio w skrypcie jak to jest w przypadku +Chat). Zaznaczamy CHAP (gdyby nasz usługodawca nie obsługiwał tej metody, +zawsze mamy do dyspozycji 2 pozostałe). + +<li>Tu wpisujemy hasło (w przypadku gdy zawiera spacje i inne dziwne znaki, należy +koniecznie ująć je w podwójny cudzysłów) - <b>ppp</b>. Teraz przechodzimy do +podstawowej konfiguracji. + +<li>Nazwa użytkownika - <b>ppp</b>. + +<li>Port, na którym mamy modem. Dla COM2 będzie to <tt>/dev/ttyS1</tt> (należy +postępować zgodnie z konfiguracją własnego systemu - sposób przyporządkowania +urządzeń portom został omówiony na wstępie). + +<li>Na pytanie <b>Czy użyć domyślnego routera w zdalnej sieci?</b> w większości +przypadków odpowiemy twierdząco. Zaznaczamy (spacją) <b>Enable default +route</b>. + +<li>Tutaj wpisujemy nasz adres IP, jeżeli jest statyczny. Ponieważ w przypadku +naszego numeru zostanie przydzielony dynamicznie, zostawiamy <b>noipdefault</b>. + +<li>Szybkość modemu. Najlepiej nie zmieniać domyślnej wartości, czyli <b>115200</b>. + +<li>Sposób inicjalizacji modemu. Powinniśmy pozostać przy <b>ATZ</b>, chyba że +mamy uzasadnione powody, by użyć innego ustawienia. + +<li>Numer telefonu. U nas <b>0202122</b>. + +<li>Rodzaj wybierania. Tonowe (ATDT) lub pulsowe (ATDP). W przypadku większości +central telefonicznych zaznaczamy to pierwsze. + +<li>Możemy jeszcze raz przejrzeć konfigurację. Wybranie <b>Finished</b> spowoduje +zapisanie zmian. + +</ol> + +<p>Teraz już możemy nawiązać połączenie wpisując (jako superużytkownik) +<tt>pon tpsa</tt>, a przerwać je poleceniem <tt>poff tpsa</tt>. Gdy chcemy +uruchamiać te skrypty z uprawnieniami zwykłego użytkownika +(<tt>/usr/sbin/pppd</tt> ma bit SUID i jest własnością użytkownika root), +powinniśmy dodać go do grup dialout i dip, zmieniając odpowiednio plik +<tt>/etc/group</tt> (a także <tt>/etc/gshadow</tt>, jeśli taki posiadamy). +Aby dowiedzieć się jak to zrobić, należy zajrzeć na stronę podręcznikową +<tt>group(5)</tt>. + +<h3>Połączenie w środowisku KDE - kppp</h3> + +<p>Nie zawsze konieczne jest użycie <tt>pppconfig</tt>. Posiadając +zainstalowane środowisko graficzne KDE, dysponujemy programem <tt>kppp</tt> +doskonale sprawdzającym się w tej samej roli. Żeby zacząć z niego korzystać, +musimy usunąć opcję lock z pliku <tt>/etc/ppp/options</tt> (<tt>kppp</tt> +sam dba o blokowanie modemu). Oprócz tego, aby program mógł uruchamiać nie +tylko superużytkownik, należy postąpić tak samo jak w przypadku poprzedniego +programu, czyli przypisać odpowiedniego użytkownika do odpowiednich grup. +Gdy program <tt>kppp</tt> nie ma bitu SUID (co jest bezpiecznym +rozwiązaniem), trzeba także nadać tej grupie pełne prawa do urządzenia +reprezentującego nasz modem - np. gdy <tt>/dev/ttyS1</tt> jest własnością +grupy dialout i ma prawa dostępu 644, jako root musimy wykonać polecenie +<tt>chmod 664 /dev/ttyS1</tt>. Oto krótka instrukcja konfiguracji omawianego +narzędzia. (Zakładam, że wcześniej zmieniono już w KDE domyślny język na polski) + +<ol> + +<li>Uruchamiamy <tt>kppp</tt> z menu (pozycja <b>Internet</b>) lub z emulatora +terminala (wpisując <tt>kppp</tt>). + +<li>Ukaże nam się okno programu. Lewym przyciskiem myszy wprowadzamy zmiany, prawym +możemy uzyskać pomoc dotyczącą wybranych opcji (które uprzednio wskażemy +kursorem). Należy utworzyć nowe połączenie. W tym celu wybieramy +<b>Opcje...->Nowe...</b> + +<li>W pierwszym okienku (<b>Dzwonienie</b>) wpisujemy: +<dl> +<dd>Nazwa połączenia: <b>tpsa</b></dd> +<dd> + Numer telefonu: <b>0202122</b> <jeśli musimy używać wybierania + pulsowego, na początku numeru dodajemy literę ,,P'' np. + <b>P0202122</b>> +</dd> +<dd>Identyfikacja: <b>CHAP</b></dd> +<dd> + Reszta nie ma większego znaczenia - możemy ją zmieniać według naszego uznania. +</dd> +</dl> + +<li><b>Adres IP</b> - pozostawiamy <b>Dynamiczny</b> + +<li><b>DNS</b> - najlepiej nie wpisywać tu nic, a opcję <b>Dezaktywuj istniejące +DNS w czasie połączenia</b> pozostawić niezaznaczoną. Stosowane będą wtedy +serwery nazw, których adresy umieszczone są w pliku <tt>/etc/resolv.conf</tt>. + +<li><b>Router</b> - pozostawiamy <b>Domyślny router</b> + +<li>W oknie <b>Skrypt logowania</b> nie wpisujemy nic, ponieważ nie zamierzamy +korzystać z tego typu identyfikacji. Opcjonalnie możemy sobie ustawić +zliczanie kosztów połączenia (<b>Koszty</b>) - musimy wtedy odwołać się do +<b>Poland->Poland Local</b>. Zamykamy <b>Ustawienia połączenia</b> i +przechodzimy do innych zakładek. + +<li><b>Port:</b> +<dl> +<dd>Port szeregowy: <b><tt>/dev/ttyS1</tt></b></dd> +<dd>Szybkość portu: <b>115200</b></dd> +<dd> + Zaznaczmy też <b>Używaj pliku blokującego</b>, resztę pozostawmy bez zmian +</dd> +</dl> + +<li>W następnej części (<b>Modem</b>) możemy sprawdzić działanie naszego modemu, +w kolejnej (<b>PPP</b>) ustawić bardziej szczegółowe instrukcje dotyczące +późniejszego zachowania się programu. W pierwszej raczej nie należy +eksperymentować (chyba że modem nie jest wykrywany), drugą można sobie zostawić +na później. + +<li>Zamykamy <b>Opcje...</b>, wpisujemy hasło i nazwę użytkownika w widoczne na +panelu miejsce. Możemy włączyć podgląd terminala (opcja <b>Pokaż podgląd</b>). +Klikamy <b>Połącz</b>. + +</ol> + +<p>Teraz powinniśmy już słyszeć nasz modem. Miłej zabawy! + +<h3>Podsumowanie</h3> + +<p>W Potato istnieje jeszcze kilka metod zestawienia połączenia. Jako przykład +można wymienić program z pakietu <tt>minicom_1.82.1-1</tt> (sekcja comm), czy +też skrypty związane z narzędziem <tt>ifconfig</tt>. Nie ma jednak sensu ich +opisywanie - trzy podstawowe sposoby omówione w tym artykule wystarczą nam w +zupełności. Życzę wszystkim owocnej pracy i dobrej zabawy w Internecie - mam +nadzieję, że ten tekst okazał się pomocny. + diff --git a/polish/international/Polish/system_pakietow.wml b/polish/international/Polish/system_pakietow.wml new file mode 100644 index 00000000000..25a642bdd88 --- /dev/null +++ b/polish/international/Polish/system_pakietow.wml @@ -0,0 +1,1461 @@ +#use wml::debian::template title="System pakietów Debiana" NOHEADER="yes" + +<h2>System pakietów Debiana</h2> + +Autor: Piotr Roszatycki + +<p>Artykuł wyjaśnia zasadę działania systemu pakietów Debiana oraz opisuje +budowę pakietów binarnych, źródłowych i dystrybucyjnych. Zawarte w nim +informacje szczególnie przydadzą się osobom tworzącym własne pakiety oraz +administratorom systemu pragnącym poznać znaczenie plików systemowych. Niektóre +wskazówki mogą się także przydać zwykłemu użytkownikowi, który chciałby umieć +odczytywać informacje zawarte w pakietach Debiana. + +<p>Administrowanie systemem wyposażonym w dużą ilość oprogramowania nie jest +proste. Instalacja dodatkowego lub aktualizacja wcześniej zainstalowanego +oprogramowania dokonywana w tradycyjny sposób, czyli przez rozpakowanie i +kompilowanie, pochłania dużo czasu i nakładów pracy. Nierzadko problemem jest +także wykonanie zmian w oryginalnych źródłach, tak aby dostosować dany program +do konkretnej instalacji systemu. Usuwanie oprogramowania bywa nawet bardziej +kłopotliwe od instalacji - oprócz samych plików binarnych czy bibliotek należy +także skasować pliki konfiguracyjne itd. Pół biedy, jeśli wiemy gdzie się +znajdują. W przeciwnym razie skazani jesteśmy na przeszukiwanie drzewa +katalogów. Innym źródłem problemów mogą być wymagania systemowe nowego +oprogramowania. Przed zainstalowaniem nowego programu należy upewnić się, czy +niczego mu nie brakuje - bibliotek, dodatkowych programów itd. + +<p>Wystarczy sprawdzić ilość plików znajdujących się w katalogu /usr/bin, aby +uzmysłowić sobie jak wiele czasu może zająć chociażby aktualizacja tych +wszystkich programów. Nieocenioną pomocą administratora wielu systemów jest +system pakietów, który automatyzuje większość czynności związanych z +zarządzaniem oprogramowaniem. + +<p>Rozbicie systemu na integralne części stworzyło potrzebę przechowywania jego +elementów w osobnych archiwach. Archiwum plików wraz z dodatkowymi informacjami +o tworzą pakiet. O rodzaju tych informacji oraz sposobie ich wykorzystania +decyduje system pakietów. W najprostszym przypadku system taki po prostu +zainstaluje archiwum plików w systemie lub skasuje te pliki, których ścieżka +pokrywa się ze ścieżką plików z archiwum. W praktyce takie rozwiązanie nie różni +się zbytnio od działania narzędzi typu <tt>tar</tt> lub <tt>ar</tt>. Ale w +pakiecie przechowuje się także dodatkowe informacje, m.in. opis danego pakietu, +wymagania systemowe, skrypty do wykonania przed/po instalacji samego archiwum +plików, sumy kontrolne itd. + +<p>Narzędzia systemu pakietów mogą udostępniać szereg dodatkowych usług, od +pobrania pakietu z odległego serwera FTP, aż po sprawdzanie integralności +zainstalowanych w systemie plików danego pakietu. + +<h3>Koncepcja systemu pakietów Debiana</h3> + +<p>Zdecydowana większość dystrybucji Linuksa, a także niektóre inne systemy +operacyjne (m.in. FreeBSD), posiada jakiś system pakietów. Oryginalny system +stworzony na potrzeby dystrybucji Debian jest rozwijany od pięciu lat, choć sama +ogólna zasada działania uległa niewielkim zmianom. + +<p>Koncepcja systemu pakietów Debiana opiera się na kilku założeniach: + +<ul> + +<li>Pakiet jest plikiem archiwum, które można rozpakować za pomocą ogólnie +dostępnych narzędzi, nie związanych z jednym systemem operacyjnym lub konkretną +dystrybucją. + +<li>Informacje wykorzystywane przez system pakietów przechowywane są w plikach +tekstowych, a więc w razie konieczności możliwy jest dostęp do tych informacji z +poziomu dowolnego edytora tekstowego. + +<li>W pakiecie źródłowym oryginalne oddzielone jest archiwum od dodatkowych łat +i informacji o pakiecie. Czasami jest to podyktowane warunkami licencji +programu. + +<li>Zamiast jednej aplikacji ogólnego przeznaczenia, do zarządzania pakietami +stworzono szereg oddzielnych, wyspecjalizowanych narzędzi. Prosta konstrukcja +systemu pakietów umożliwia w razie potrzeby dodawanie nowych narzędzi. + +<li>Proces budowania pakietu binarnego jest niezależny od procesu przygotowania +pakietu źródłowego. Możliwe jest wykorzystanie dowolnych narzędzi wspomagających +tworzenie pakietu, jeżeli tylko pozwolą one na przygotowanie odpowiednich plików +archiwum kontrolnego. + +<li>W systemie pakietów występują wielopoziomowe zależności. Dany pakiet może +być wymagany, polecany lub sugerowany przez inny pakiet; może też występować +konflikt pomiędzy pakietami. + +<li>W systemie może być zainstalowany tylko jeden pakiet o określonej nazwie. +Wyjątkiem są pakiety wirtualne, które można określić jako dodatkowa nazwa +normalnego pakietu. Można zainstalować kilka pakietów o takich samych nazwach +dodatkowych. + +<li>Przed i po zainstalowaniu lub skasowaniu pakietu może zostać wykonany +dodatkowy program, najczęściej skrypt powłoki lub Perla, który wykona dodatkowe +czynności potrzebne do poprawnego działania systemu. + +<li>Dany plik może zostać zainstalowany tylko z jednego pakietu. W przypadku, +gdy konieczne jest zainstalowanie pliku z innego pakietu, możliwe jest ominięcie +pliku (ang. overriding): zmieniana jest nazwa pierwotnie zainstalowanego pliku, +a w jego miejsce instalowany jest plik z drugiego pakietu. Podczas aktualizacji +lub kasowania pierwszego pakietu, zmiany dotyczą ominiętego pliku, czyli tego ze +zmienioną nazwą. + +<li>Specjalnym rodzajem pliku przechowywanym w pakiecie jest plik +konfiguracyjny. Podczas kasowania pakietu z systemu pliki konfiguracyjne są +pomijane i nie są usuwane, zaś w trakcie aktualizacji pakietu administrator może +dokonać wyboru, czy pozostawić stary plik konfiguracyjny, czy też zainstalować +jego nową wersję. + +<li>System pakietów ma otwartą budowę i możliwe jest rozszerzanie jego +funkcjonalności poprzez dodawanie nowych modułów, bez ingerowania w źródła +podstawowych narzędzi. + +</ul> + +<h3>Pakiet binarny (<tt>*.deb</tt>)</h3> + +<p>Podstawę dystrybucji Debiana stanowi pakiet binarny, czyli plik +<tt>*.deb</tt>. Do niewątpliwych zalet korzystania z pakietów binarnych należy +prosta instalacja pakietu oraz późniejsza aktualizacja czy usunięcie. Twórcy +pakietów binarnych starannie testują ich działanie, można więc mieć gwarancję, +że dany pakiet będzie funkcjonować poprawnie także w naszym systemie, a +ewentualne problemy można śmiało zgłaszać autorowi jako błąd. + +<p>Z drugiej strony, uzależnienie się od tej formy archiwum dystrybucyjnego +wiąże się z koniecznością dbania o porządek w systemie pakietów, co w praktyce +oznacza konieczność korzystania z oryginalnych pakietów. W przypadku zaistnienia +konieczności dokonania zmian w oryginalnym pakiecie, zmuszeni jesteśmy do +samodzielnego przygotowania pakietu binarnego, co może być bardziej uciążliwe od +tradycyjnej metody instalacji oprogramowania. Dochodzą do tego problemy z +koniecznością posiadania w systemie bibliotek o konkretnych wersjach. Mimo to +jednak korzyści płynące ze stosowania pakietów binarnych warte są wysiłku +włożonego w zachowanie spójności systemu pakietów. + +<p>Format pliku <tt>*.deb</tt> jest zgodny z formatem archiwum programu +<tt>ar</tt>. Oznacza to, że do rozpakowania pliku <tt>*.deb</tt> można +wykorzystać polecenie <tt>ar x nazwa-pliku.deb</tt>, co niekiedy przydaje się, +gdy w systemie brakuje polecenia <tt>dpkg</tt>. Archiwum składa się z kilku +części zwanych członkami archiwum. Pierwszym członkiem archiwum jest plik +<tt>debian-binary</tt> zawierający numer wersji formatu archiwum. Obecnie jest +to format 2.0, co można sprawdzić poleceniem <tt>file nazwa-pliku.deb</tt>. + +<p>Kolejnym elementem pliku <tt>*.deb</tt> jest archiwum kontrolne +<tt>control.tar.gz</tt>. Ponieważ znajduje się ono na początku pliku pakietu, +tuż za numerem wersji, aby pobrać informacje o tym pakiecie wystarczy odczytać +początek pakietu. + +<p>Niektóre pliki tego archiwum są rozpoznawane przez program <tt>dpkg</tt> lub +inne programy. Część z nich jest opcjonalna. + +<p><b><tt>control</tt></b><br> +Najważniejszy plik w archiwum kontrolnym. Informacje o pakiecie zawarte są w +formie pliku tekstowego w formacie kontrolnym. Plik tworzony jest zwykle na +podstawie pliku <tt>debian/control</tt> z pakietu źródłowego za pomocą narzędzi +<tt>dpkg-gencontrol</tt> oraz <tt>dpkg-shlibdeps</tt>. +<p>Tylko ten plik jest wymagany (obecność pozostałych jest opcjonalna). Możliwe +jest także umieszczanie własnych rozszerzeń w postaci nowych plików archiwum +kontrolnego. + +<p><b><tt>preinst</tt></b><br> +Program wykonywany przed rozpakowaniem pakietu binarnego i zainstalowaniem jego +plików w systemie. Najczęściej służy do zatrzymania uruchomionych usług +związanych z pakietem na czas aktualizacji. + +<p><b><tt>postinst</tt></b><br> +Program wykonywany po zainstalowaniu pakietu w systemie, podczas konfiguracji. W +tym czasie użytkownik może zostać zapytany o szczegółowe ustawienia i tym samym +wpłynąć na późniejsze funkcjonowanie pakietu. Skrypt <tt>postinst</tt> wykonuje +także czynności niezbędne do poprawnego działania pakietu (np. polecenie +<tt>ldconfig</tt> dla pakietu z bibliotekami) lub uruchamia dany serwis +wywołując odpowiedni skrypt z katalogu <tt>/etc/init.d</tt>. + +<p><b><tt>prerm</tt></b><br> +Program wykonywany przed usunięciem pakietu lub jego aktualizacją. Zwykle +zatrzymuje uruchomione usługi związane z pakietem. + +<p><b><tt>postrm</tt></b><br> +Program wykonywany po zakończeniu usuwania lub czyszczenia pakietu. W zależności +od sytuacji, program może usunąć dodatkowe katalogi czy pliki wykorzystywane +przez ten pakiet, a które po jego usunięciu będą zbędne w systemie. + +<p><b><tt>shlibs</tt></b><br> +Plik pojawia się w pakietach zawierających biblioteki dynamiczne i +wykorzystywany jest przez program <tt>dpkg-shlibdeps</tt> do ustalania +zależności od pakietów zawierających biblioteki dynamiczne. + +<p><b><tt>md5sums</tt></b><br> +Dodatkowy plik zawierający sumy kontrolne, które mogą posłużyć do sprawdzenia +spójności zainstalowanego pakietu za pomocą narzędzia <tt>debsums</tt>. Plik ten +nie jest częścią oryginalnego systemu pakietów i nie pojawia się we wszystkich +pakietach. + +<p><b><tt>templates</tt>, <tt>config</tt></b><br> +Pliki wykorzystywane przez system zarządzania konfiguracją <tt>Debconf</tt>. +Pierwszy z nich zawiera informacje pojawiające się w oknach dialogowych lub na +konsoli, drugi jest programem wykorzystującym interfejs programistyczny systemu +Debconf do przeprowadzenia dialogu z użytkownikiem. + +<p><b><tt>conffiles</tt></b><br> +Plik zawierający listę plików konfiguracyjnych. Po obliczeniu sum kontrolnych +MD5 tych plików, lista zostanie dołączona do pliku +<tt>/var/lib/dpkg/status</tt>. + +<p>Pliki archiwum kontrolnego <tt>control.tar.gz</tt> mają swoje +odzwierciedlenie w postaci plików katalogu <tt>/var/lib/dpkg/info/</tt>. Przed +nazwą danego pliku dodawana jest nazwa pakietu, po czym dany plik umieszczany +jest w tym katalogu, jako np. +<tt>/var/lib/dpkg/info/nazwa-pakietu.postinst</tt>. Plik control wyjątkowo +dołączany jest do bazy danych zainstalowanych pakietów, czyli do pliku +<tt>/var/lib/dpkg/status</tt>, zaś lista plików zawartych w pakiecie zapisywana +jest jako <tt>/var/lib/dpkg/info/nazwa-pakietu.list</tt>. + +<p>Skoro znamy format danych przechowywanych w bazie systemu pakietów i dobrze +władamy standardowymi poleceniami <tt>cat</tt>, <tt>ls</tt>, <tt>grep</tt>, +<tt>sed</tt> i innymi, zyskujemy nieograniczone możliwości operowania danymi +pakietu. + +<p>W pliku <tt>*.deb</tt> przewidziano także miejsce dla przyszłych członków +archiwum. Ostatnie miejsce jest zarezerwowane na archiwum z danymi +<tt>data.tar.gz</tt>. Archiwum to jest zwykłym, skompresowanym archiwum +<tt>tar</tt>, zawierającym pliki i katalogi, które zostaną zainstalowane w +systemie. Jak już zostało wspomniane, lista tych plików jest zapisywana do pliku +<tt>*.info</tt> w odpowiednim katalogu. + +<p>Nazwa pliku binarnego może być praktycznie dowolna, gdyż brane są pod uwagę +informacje pobrane z pliku kontrolnego <tt>control</tt>. Pliki w archiwum FTP +mają nazwy tworzone według pewnego schematu, aby możliwe było sprawne +zarządzanie takim archiwum. Nazwa pliku składa się nazwy pakietu, znaku +podkreślenia, numeru wersji, znaku podkreślenia, kropki oraz rozszerzenia +<tt>.deb</tt>. Jeśli nie jest to określone w nazwie katalogu, przed +rozszerzeniem nazwy pliku opcjonalnie dodaje się znak podkreślenia i nazwę +architektury. Wzór pełnej nazwy pliku jest więc następujący: + +<p><tt>nazwa-pakietu_1.2.3wersjazrodla-4wersjapakietu_i386.deb</tt> + +<h3>Pakiet źródłowy (<tt>*.dsc</tt>)</h3> + +<p>Pakiet binarny Debiana jest budowany na podstawie zawartości katalogu +roboczego +dla programu <tt>dpkg-deb</tt>. Zawartość katalogu roboczego, wraz z plikami, +trafia do pakietu binarnego do archiwum <tt>data.tar.gz</tt>, z wyjątkiem +podkatalogu <tt>DEBIAN/</tt>, który tworzy archiwum kontrolne +<tt>control.tar.gz</tt>. Taki katalog roboczy można przygotować ręcznie poprzez +stworzenie odpowiednich plików. Aby usprawnić i w dużej mierze zautomatyzować +proces budowania pakietów binarnych, stworzono formę pakietu źródłowego. + +<p>Proces przygotowania pakietu źródłowego polega na rozpakowaniu oryginalnego +źródła i zmianie nazwy katalogu ze źródłami na +<tt>nazwa-pakietu-123numer.4oryginalnej5.wersji6</tt>. W tym katalogu tworzymy +dodatkowo podkatalog <tt>debian/</tt> w którym umieszczamy niezbędne pliki +(<tt>debian/control</tt>, <tt>debian/changelog</tt>, <tt>debian/rules</tt>). +Taka operacja przygotowania pakietu źródłowego Debiana nazywa się +,,debianizacją''. + +<p>Charakterystyczne dla pakietów źródłowych Debiana jest to, że składają się z +kilku plików scalonych oddzielnym plikiem <tt>*.dsc</tt>. Jeżeli oryginalne +źródło nie jest napisane bezpośrednio dla dystrybucji Debiana, to znajduje się w +pliku <tt>*.orig.tar.gz</tt>. Dodatkowe poprawki do tego źródła, jak i cały +katalog źródłowy <tt>debian/</tt>, znajdują się w kolejnym pliku +<tt>*.diff.gz</tt>, jako łata oryginalnego źródła. W przypadku, gdy źródło +zawiera już w sobie pliki wykorzystywane do zbudowania pakietu Debiana, +dodatkowy ,,patch'' jest zbędny, a zamiast pliku <tt>*.orig.tar.gz</tt> +występuje plik <tt>*.tar.gz</tt> (bez przyrostka ,,orig''). + +<p>Plik <tt>*.dsc</tt> zawiera opis pakietu źródłowego. Jest on odpowiednikiem +pliku <tt>control</tt> z pakietu binarnego i - podobnie jak w tym ostatnim - +informacje w nim przechowywane są w formacie tekstowym. Zawiera m.in. numer +wersji pakietu, nazwę pakietu źródłowego i pakietów binarnych, adres e-mail +opiekuna pakietu itd. + +<p>Ze względów bezpieczeństwa, plik <tt>*.dsc</tt> ma zwykle podpis +elektroniczny swego autora (PGP lub GPG), co umożliwia weryfikację +autentyczności wszystkich plików składających się na pakiet źródłowy. + +<p>Aby można było uznać pakiet źródłowy za poprawny, po rozpakowaniu musimy +otrzymać katalog ze źródłami oraz specjalny podkatalog <tt>debian/</tt>. W tym +podkatalogu muszą się znaleźć co najmniej trzy pliki: + +<dl> + +<dd><b><tt>debian/control</tt></b> +<dd>Na podstawie tego pliku zostaną stworzone pliki kontrolne wszystkich +pakietów binarnych zbudowanych z danego pakietu źródłowego. Plik składa się z +kilku akapitów rozdzielonych pustą linią. Pierwszy paragraf zawiera opis pakietu +źródłowego, następne zawierają opisy kolejnych pakietów źródłowych. +<dd> + +<dd><b><tt>debian/changelog</tt></b> +<dd>Plik zawierający historię danego pakietu źródłowego. Każda zmiana w pakiecie +źródłowym powoduje dodanie nowego elementu pliku historii. Oprócz wypunktowanych +zmian, zapisanych w postaci zrozumiałej dla człowieka, każdy element zawiera +informacje wykorzystywane przy procesie budowy pakietów binarnych i pakietu +dystrybucyjnego. +<dd> + +<dd><b><tt>debian/rules</tt></b> +<dd>Jest to program, który poprzez wywołanie odpowiednich programów zewnętrznych +dokona kompilacji pakietów binarnych. Wywoływany jest z odpowiednimi argumentami +i w zależności od tych argumentów wykonywana jest odpowiednia czynność +(kompilacja źródeł, zbudowanie pakietu, usunięcie pozostałości po kompilacji). +Utarło się, że programem tym jest skrypt <tt>Makefile</tt>, ale program może +mieć zupełnie dowolną postać - np. skryptu powłoki. + +</dl> + +<p>Reszta plików z katalogu debian/ pakietu źródłowego jest opcjonalna i służy +do przygotowania archiwum control.tar.gz lub data.tar.gz pakietów binarnych. + +<h3>Pakiet dystrybucyjny (<tt>*.changes</tt>)</h3> + +<p>Model dystrybucji Debiana zakłada, że dystrybucję tworzy wielu opiekunów +pakietów, którzy wysyłają swoje efekty pracy do centralnego archiwum. Opiekun +dostarcza zarówno pakiet źródłowy jak i pakiety binarne zebrane razem w formie +pakietu dystrybucyjnego. Pliki binarne i źródłowe wiąże w całość plik tekstowy +<tt>*.changes</tt> w formacie pliku kontrolnego Debiana. + +<p>Plik <tt>*.changes</tt> zawiera informacje o właścicielu pakietu +dystrybucyjnego, plikach składających się na taki pakiet dystrybucyjny oraz o +lokalizacji poszczególnych plików w archiwum. Podobnie jak plik <tt>*.dsc</tt>, +ten także może być podpisany elektronicznie. + +<p>Z pakietami dystrybucyjnymi mamy do czynienia, gdy poszczególne pliki +wchodzące w skład pakietu dystrybucyjnego nie zostały rozlokowane w swoich +katalogach docelowych. + +<h3>Informacje dla systemu pakietów (<tt>control</tt>)</h3> + +Dane przeznaczone dla systemu pakietów przechowywane są w formacie tekstowym, +jako tzw. plik kontrolny. Plik taki składa się z jednego lub kilku akapitów +rozdzielonych pustym wierszem. Akapit składa się z wierszy zawierających nazwę +pola, dwukropek i wartość pola. Nazwa pola nie może zawierać znaków spacji ani +innych separatorów. Gdy zawartość pola nie mieści się w jednym wierszu +(maksymalnie 80 znaków), kontynuowana jest w kolejnym wierszu od znaku spacji, +już bez nazwy pola i dwukropka. Jeżeli w tym polu musi wystąpić wiersz pusty, +oznacza się go pojedynczą kropką. + +<p>Przykładem wykorzystania tej formy przechowywania danych może być choćby +książka telefoniczna: + +<p> +<b>Tytuł:</b> Ania<br> +<b>Telefon:</b> 23789343<br> +<b>Opis:</b> Koleżanka z pracy, ale nie tylko... + +<p> +<b>Tytuł:</b> Policja<br> +<b>Telefon:</b> 997<br> +<b>Opis:</b> Najbliższy posterunek policji + +<p> +<b>Tytuł:</b> Internet<br> +<b>Telefon:</b> 0202122<br> +<b>Opis:</b> tak zwany bezpłatny numer dostępowy<br> +<b>.</b><br> +<b>użytkownik:</b> ppp, <b>hasło</b>: ppp<br> +<b>Modem:</b> tak + +<p>Obecność niektórych pól nie jest obowiązkowa, dla innych format wartości pola +może zostać ściśle określony. Poniższe zestawienie dotyczy pól wykorzystywanych +przez system pakietów Debiana. + +<p><b>Package</b><br> +Nazwa pakietu binarnego. Nazwa składa się z liter alfabetu łacińskiego, cyfr +oraz znaków + - . (plus, minus, kropka). Nazwa musi mieć przynajmniej dwa znaki +i rozpoczynać się od litery lub cyfry. Przyjęło się korzystać tylko z małych +liter alfabetu łacińskiego, ale w przypadku znalezienia pakietu którego nazwa +zawiera wielkie litery, należy pamiętać że sortowanie uwzględnia wielkość liter. + +<p><b>Version</b><br> +Numer wersji pakietu binarnego lub źródłowego. Numer ten wykorzystuje się +najczęściej podczas porównywania ze sobą dwóch wersji w celu określenia, która z +nich jest późniejsza. + +<p>Numer wersji składa się z trzech części: epoki z dwukropkiem (opcjonalnie), +wersji oryginalnego źródła oraz minusa po którym następuje wersja +pakietu(opcjonalnie). Ich znaczenie jest następujące: + +<dl> + +<dd><b>epoka</b> +<dd>Pojedyncza cyfra, którą można pominąć jeśli wynosi zero. Gdy numer epoki +pominięto, numer wersji oryginalnego źródła nie może zawierać dwukropka. +<dd> +<dd>Numer epoki ma największe znaczenie przy porównywaniu numerów wersji +pakietu. Wykorzystuje się go w przypadku, gdy kolejny numer wersji musi być +niższy, a jednocześnie pakiet ma być uznany za nowszy. Taka sytuacja następuje, +gdy nastąpił błąd w numeracji pakietu lub gdy w oryginalnym źródle zmieniono +sposób numeracji wersji. +<dd> +<dd><tt>dpkg</tt> wyświetla numer epoki tylko wtedy, gdy jest on większy od +zera. <tt>dselect</tt> w ogóle pomija ten numer, wyświetlając jedynie numer +wersji źródła i numer wersji pakietu. +<dd> + +<dd><b>numer wersji oryginalnego źródła </b> +<dd>Najważniejsza część numeru wersji. Najczęściej jest to numer wersji +oryginalnego źródła będącego podstawą pakietu Debiana. Zwykle numer ten jest +zgodny z numeracją przyjętą przez autora źródła, ale czasem wymagana jest zmiana +oryginalnego numeru, tak by pasował do schematu przyjętego przez Debiana (np. +rezygnacja z notacji rzymskiej). +<dd> +<dd>Numer wersji źródła może zawierać jedynie litery, cyfry oraz znaki + - . : +(plus, minus, kropka, dwukropek) i musi zaczynać się od cyfry. Dwukropek nie +może występować, jeżeli nie określono numeru epoki; minus jest niedozwolony, gdy +brak numeru wersji pakietu. +<dd> + +<dd><b>numer wersji pakietu </b> +<dd>Ta część numeru wersji oznacza numer kolejnej wersji pakietu binarnego, +zbudowanego z tego samego oryginalnego źródła. Format jest taki sam jak w +przypadku numeru wersji źródła. +<dd> +<dd>Jeżeli pakiet został zbudowany bezpośrednio dla dystrybucji Debiana, jak np. +<tt>dpkg</tt>, <tt>kernel-package</tt> itd., numer ten jest pomijany gdyż zmiany +w numeracji dotyczą jedynie numeru wersji oryginalnego źródła. +<dd> +<dd>Przyjęte jest, że po zmianie numeru wersji oryginalnego źródła numer wersji +pakietu rozpoczyna się znów od jedynki. +<dd> +<dd>Gdy brak jest tego numeru, <tt>dpkg</tt> przy porównywaniu wersji przyjmie +jedynkę za numer wersji pakietu. +<dd> +<dd>Przy porównywaniu ze sobą dwóch numerów wersji, największe znaczenie ma +numer epoki. Jeżeli te numery są sobie równe (najczęściej obydwa wynoszą zero), +porównywane są numery wersji oryginalnego pakietu. Numery te są porównywane od +strony lewej do prawej w taki sposób, że najpierw liczbowo dokonuje się +porównywania występujących cyfr, następnie według tabeli kodów ASCII porównuje +się dalsze znaki nie będące cyframi, aż do pojawienia się kolejnych cyfr - wtedy +algorytm jest powtarzany. Porównywanie numerów wersji oryginalnego pakietu +kończy znak minusa; rozpoczyna on natomiast proces porównywania wersji pakietu +binarnego. +<dd> +<dd>Oto przykładowe wyniki takiego porównywania: <b>1.1 > 1.0.1, 1.1.1 > +1.1, 11a > 1a, 1:1.0 > 1.1, 1.1 > 1.1-0, 1.1-1 > 1.1 </b> +<dd> +<dd>W dwóch ostatnich przypadkach brak numeru wersji pakietu binarnego oznacza, +że ,,jest mniejszy'' od 1 ale ,,jest większy'' od 0. + +</dl> + +<p><b>Architecture</b><br> +Pole określające architekturę pakietu binarnego. Podczas instalowania pakietu +architektura systemu jest sprawdzana i porównywana z informacją w pakiecie. +Jeżeli architektury się zgadzają, pakiet zostanie zainstalowany. + +<p>Obecnie <tt>dpkg</tt> obsługuje architektury <b>i386</b>, <b>sparc</b>, +<b>sparc64</b>, <b>alpha</b>, <b>m68k</b>, <b>arm</b>, <b>powerpc</b>, +<b>mips</b> oraz <b>mipsel</b> dla systemu operacyjnego Linux. <tt>dpkg</tt> +został także przeniesiony na system operacyjny HURD - jest on przeznaczony dla +procesorów Intela, a więc nazwa tej architektury to <b>hurd-i386</b>. + +<p>Znane są próby przeniesienia <tt>dpkg</tt> na inne systemy, m.in. +<b>Solaris</b>, <b>HP-UX</b>, <b>IRIX</b>, <b>FreeBSD</b>, jednak oficjalnie +<tt>dpkg</tt> nie obsługuje tych systemów. + +<p>Specjalnym oznaczeniem architektury jest <b>all</b>, które mówi, że pakiet +binarny nie jest zależny od konkretnej architektury i może zostać zainstalowany +w dowolnej. + +<p>To pole można znaleźć także w pakiecie źródłowym, w pliku <tt>*.dsc</tt> - +oznacza ono architekturę docelową, czyli tę dla której przeznaczony jest +skompilowany pakiet binarny. Dodatkową architekturą dla pakietu źródłowego może +być <b>any</b>, oznaczająca że pakiet źródłowy można skompilować dla dowolnej +architektury. + +<p><b>Maintainer</b><br> +Opiekun pakietu. To pole zawiera imię, nazwisko oraz e-mail opiekuna pakietu. +Jeżeli rolę opiekuna pełni lista mailingowa, zamiast imienia i nazwiska znajdzie +się tu nazwa listy lub grupy osób. Dane opiekuna zapisane są w formacie RFC822, +czyli najpierw nazwisko lub nazwa, a następnie adres w nawiasach trójkątnych +,,<>''. + +<p>Pole opiekuna jest opcjonalne, jednak na adres podany w tym polu użytkownicy +pakietu najczęściej wysyłają pytania lub uwagi, więc jego brak może utrudnić +kontakt. + +<p><b>Source</b><br> +Nazwa pakietu źródłowego. To pole dotyczy pakietu źródłowego, a jego zawartość +jest analogiczna do pola <b>Package</b>, poza tym że po samej nazwie pakietu +można umieścić w nawiasach okrągłych numer wersji pakietu. Numer wersji +najczęściej jest pomijany, jeśli jest zgodny z numerem w polu <b>Version</b> +pakietu binarnego. + + +<p><b>Depends</b><br> +Definicja całkowitej zależności - pakiet zależy od innego pakietu. + +<p>To i poniższe pola mają taki sam format: lista pakietów rozdzielona +przecinkami. Pakiety mogą być też rozdzielone znakiem kreski pionowej +,,|'', co oznacza logiczne LUB - poprawna jest przynajmniej jedna z +kilku opcji. + +<p>Każdy z elementów tej listy (nie dotyczy to pola <b>Provides</b>) może obok +nazwy pakietu zawierać w nawiasach okrągłych operator porównania wraz z numerem +wersji. Operatory porównania to <<, <=, =, => i >>, czyli: +mniejsze, mniejsze lub równe, równe, większe lub równe, większe. Na przykład: + +<p><tt> +Depends: perl5, libapache-mod-perl (<= 1.15-2), libmldbm-perl (<= +2.00-1), libdigest-md5-perl, data-dumper (<= 2.09-1) | perl-5.005, +libwww-perl (<= 5.42-1) +</tt> + +<p>Pole <b>Depends</b> zawiera listę pakietów wymaganych do zainstalowania +bieżącego pakietu. Mówiąc dokładniej, dany pakiet nie zostanie skonfigurowany +jeżeli pakiety od których zależy nie są poprawnie zainstalowane w systemie. +Ponadto, nie można usunąć pakietu, który jest zależny od bieżącego. + +<p>Pakiety od których zależny jest pakiet bieżący mogą być zainstalowane, ale +nie skonfigurowane. W praktyce oznacza to, że proces instalacji - a później +konfiguracji tych wszystkich pakietów - może się odbywać w ramach jednej +operacji. + +<p>W wyjątkowych sytuacjach zależności można pominąć, uruchamiając <tt>dpkg</tt> +z opcją wymuszania, jednak powoduje to zburzenie spójności bazy systemu +pakietów. + +<p><b>Recommends</b><br> +Definicja silnej zależności - pakiet zaleca inny pakiet. + +<p>Pole <b>Recommends</b> jest ignorowane przez program <tt>dpkg</tt> i nie +dotyczy zastosowań z wiersza poleceń. Informacje tego pola są przetwarzane przez +narzędzia pełnoekranowe, takie jak <tt>dselect</tt> czy <tt>capt</tt>. W +przypadku dselect wystąpienie tego typu zależności spowoduje wyświetlenie listy +zależności z domyślnie wybranym tym pakietem. Dzięki temu w szybki sposób można +wybrać domyślne pakiety. + +<p>Zależność ta powinna oznaczać, że dodatkowe pakiety są przydatne, ale nie +stanowią niezbędnego warunku działania programu. + +<p><b>Suggests</b><br> +Definicja słabej zależności - pakiet sugeruje inny pakiet. + +<p>Podobnie jak w poprzednim wypadku, pole to interpretowane jest jedynie przez +narzędzia pełnoekranowe. <tt>dselect</tt> dołączy wskazane pakiety do listy +zależności, ale pakiety nie będą domyślnie wybrane do zainstalowania. + +<p>Najczęściej sugerowane są dodatkowe moduły rozszerzające możliwości danego +pakietu albo dokumentacja. + +<p><b>Pre-Depends</b><br> +Podobnie jak <b>Depends</b>, ale wymagany pakiet musi być poprawnie +zainstalowany i skonfigurowany przez rozpoczęciem procedury instalacji bieżącego +pakietu. + +<p>Jeżeli do instalacji wybrano dwa pakiety, w tym jeden dla którego określono +,,przed-zależność'', <tt>dpkg</tt> musi zainstalować i skonfigurować +pierwszy pakiet, a następnie uruchomić się po raz drugi dla kolejnego pakietu. +Ważna jest kolejność instalowania wybranych pakietów. Kolejność wywoływania +programu <tt>dpkg</tt> powinien ustalić program <tt>dselect</tt> lub +<tt>apt</tt>. + +<p>,,Przed-zależność'' jest niezbędna jedynie wtedy, gdy do +skonfigurowania bieżącego pakietu potrzebny jest funkcjonujący poprawnie (czyli +wcześniej skonfigurowany) inny pakiet. Istotne pakiety, takie jak <tt>libc6</tt> +czy <tt>bash</tt>, i tak instalowane są we wczesnym etapie, tak więc najczęściej +wystarcza użycie zwykłej zależności - pola <b>Depends</b>. + +<p><b>Conflicts</b><br> +Konflikt pomiędzy pakietami oznacza, że nie mogą istnieć w systemie w tym samym +czasie. Jeżeli konflikt został wykryty przez <tt>dpkg</tt>, zostanie zgłoszony +błąd, a proces instalacji zatrzymany. <tt>dselect</tt> w takim przypadku +wyświetli listę konfliktów, co umożliwi użytkownikowi podjęcie decyzji, który +pakiet należy przeznaczyć do skasowania, a który do zainstalowania. + +<p>Specjalnym przypadkiem konfliktu jest konflikt z pakietem o takiej samej +nazwie, ewentualnie o nazwie takiej jak pakietu wirtualnego, którego dostarcza +(<b>Provides</b>) ten sam pakiet. Wymusza to sytuację, w której może istnieć w +systemie tylko jeden pakiet, dostarczający pakietu wirtualnego o tej danej +nazwie. + +<p>Jeżeli konflikt dotyczy pakietu o wersji ,,wcześniejszej'' niż +podana, powstaje problem: drugi pakiet musi być wcześniej usunięty lub +zaktualizowany. Kolejność instalowania czy usuwania pakietów może zostać źle +określona przez <tt>dselect</tt> i radzi sobie z nią dopiero system +<tt>apt</tt>. + +<p><b>Replaces</b><br> +Zastąpienie pakietu powodującego konflikt. Jeżeli wymieniony w tym polu pakiet +został także wymieniony w polu <b>Conflicts</b>, <tt>dpkg</tt> automatycznie +zastąpi go bieżącym, bez ingerencji administratora. + +<p>Pole <b>Replaces</b> nie dotyczy pakietów wirtualnych, a więc nazwa użyta w +tym polu musi określać prawdziwy pakiet. + + +<p><b>Enhances</b><br> +Rozszerzenie funkcji innego pakietu. To pole jest niejako odwrotnością pola +<b>Suggests</b>. W chwili obecnej jest ignorowane, ale zostało przewidziane do +użycia w najbliższej przyszłości. + +<p>Niektóre pakiety z podstawowej dystrybucji (<b>main</b>) sugerują +wykorzystanie pakietów spoza głównego archiwum (np. <b>non-free</b> lub +<b>non-US</b>). Może to spowodować kłopot, gdy dodatkowe archiwum nie jest +dostępne, a <tt>dselect</tt> zgłosi brak niektórych pakietów. Rozwiązaniem ma +być właśnie to pole - wtedy pakiety spoza archiwum głównego zgłoszą fakt, że są +dodatkiem do pakietów z tego archiwum. + +<p><b>Provides</b><br> +Udostępnianie wirtualnego pakietu. Dany pakiet może występować pod kilkoma +nazwami: jedną prawdziwą i pozostałymi określającymi pakiety wirtualne. Jeżeli +inny pakiet zależy od pakietu wirtualnego, wystarczy obecność w systemie +przynajmniej jednego pakietu, który dostarcza ten pakiet wirtualny. + +<p>Dla przykładu, gdy pakiet wymaga edytora <tt>emacs</tt>: + +<p><tt> +Package: vm<br> +Depends: emacs +</tt> + +<p>wystarczy, że w systemie znajduje się jakiś pakiet, który spełnia funkcje +tego edytora: + +<p><tt> +Package: xemacs<br> +Provides: emacs +</tt> + +<p>Pakiet wirtualny nie posiada wersji, toteż nie można uzależnić innego pakietu +od obecności pakietu wirtualnego w określonej wersji. W przypadku odwołania się +do numeru wersji, zależność będzie dotyczyć tylko prawdziwego pakietu. + +<p><b>Build-Depends</b><br> +To pole, jak i trzy poniższe, dotyczy wyłącznie pakietów źródłowych. Dany pakiet +źródłowy nie może zostać skompilowany, jeżeli w systemie nie zostaną zachowane +podane zależności. + +<p>Format listy pakietów występujący tym i poniższych polach jest identyczny, +jak w przypadku pól zależności dotyczących pakietów binarnych. Ponadto, po +nazwie pakietu tworzącego zależność można umieścić rozdzielone spacjami nazwy +architektur, dla których ten pakiet ma występować. Jeżeli nazwa architektury +poprzedzona jest znakiem wykrzyknika, oznacza to negację wszystkich architektur +oprócz podanej. + +<p>Przykład wykorzystania tego pola w opisie pakietu źródłowego: + +<p><tt> +Build-Depends: kernel-headers-2.2.10 [!hurd-i386], hurd-dev [hurd-i386], +gnumach-dev [hurd-i386] +</tt> + +<p>Pole <b>Build-Depends</b> określa zależność od pakietów binarnych dla celu +<b>build</b>, <b>binary</b>, <b>binary-arch</b> oraz <b>binary-indep</b>. + +<p><b>Build-Conflicts</b><br> +Pole zawiera listę pakietów binarnych, których obecność w systemie uniemożliwia +skompilowanie pakietu dla celu <b>build</b>, <b>binary</b>, <b>binary-arch</b> +oraz <b>binary-indep</b>. + +<p><b>Build-Depends-Indep</b><br> +Pole zawiera listę pakietów binarnych wymaganych do skompilowania pakietu dla +celu <b>binary</b> oraz <b>binary-indep</b>. + +<p><b>Build-Conflicts-Indep</b><br> +Pole zawiera listę pakietów binarnych, których obecność w systemie uniemożliwia +skompilowanie pakietu dla celu <b>build</b> oraz <b>binary-indep</b>. + +<p><b>Description</b><br> +Opis pakietu źródłowego lub binarnego. Pierwszy wiersz to skrócony opis pakietu, +zazwyczaj wyświetlany przez pełnoekranowe narzędzia (<tt>dselect</tt>, +<tt>capt</tt>) na liście pakietów. Szczegółowy opis pakietu rozpoczyna się w +następnym wierszu. Zgodnie z formatem danych zawartych w pliku kontrolnym, +pierwszym znakiem wiersza jest spacja, zaś wiersz zawierający wyłącznie spację i +kropkę reprezentuje wiersz pusty. + +<p>Opis pakietu zwykle wzięty jest z podręcznika głównego programu tego pakietu +lub z pliku <tt>README</tt>. Ponieważ opis ten często decyduje o tym, czy +administrator zdecyduje się zainstalować dany pakiet, pole to powinno zawierać +starannie dobrane informacje. + +<p>Dla pliku <tt>*.changes</tt> pole to ma specjalne znaczenie i zawiera spis +skróconych opisów poszczególnych pakietów binarnych zbudowanych z danego pakietu +źródłowego. Pierwszy wiersz pola tego pliku jest pusty, kolejne zawierają nazwę +pakietu binarnego, znak minusa oraz skrócony opis pakietu. + +<p><b>Essential</b><br> +Pole określające czy pakiet binarny jest istotny, czyli czy <tt>dpkg</tt> +pozwoli usunąć go z systemu. + +<p>Pole może przyjmować dwie wartości: <b>yes</b> lub <b>no</b>. Druga wartość +ma takie samo działanie, jakby w pliku kontrolnym w ogóle nie było tego pola. + +<p><b>Section</b><br> +Sekcja dla pakietu binarnego lub źródłowego. Dany pakiet może zostać +umiejscowiony w jednym z wielu podkatalogów grupujących pakiety o podobnym +działaniu. Sekcja może także określać archiwum, w którym znajduje się dany +pakiet, jeżeli nie jest to archiwum <b>main</b>. + +<p>To pole jest przeznaczone dla programów pełnoekranowych, które przedstawiając +listę pakietów mogą ją uporządkować według sekcji. <tt>dpkg</tt> nie uwzględnia +pola <b>Section</b>. + +<p>Nazwa sekcji odzwierciedla miejsce pliku w archiwum FTP. W chwili obecnej +istnieje podział na następujące sekcje: + +<dl> + +<dd><b>admin</b> +<dd>narzędzia tylko dla administratora - modyfikujące pliki systemowe i +wpływające na działanie systemu +<dd> + +<dd><b>base</b> +<dd>specjalna sekcja określająca pakiety, które zostaną zainstalowane przez +program instalacyjny +<dd> + +<dd><b>comm</b> +<dd>programy komunikacyjne wykorzystujące modem lub faks +<dd> + +<dd><b>devel</b> +<dd>kompilatory, narzędzia do tworzenia programów, biblioteki przeznaczone dla +debuggera, kody źródłowe +<dd> + +<dd><b>doc</b> +<dd>dokumentacja systemowa oraz dla innych pakietów, programy do jej +przeglądania, biuletyny i czasopisma w postaci elektronicznej +<dd> + +<dd><b>editors</b> +<dd>edytory tekstu wraz z odpowiednimi modułami +<dd> + +<dd><b>electronics</b> +<dd>programy do wykorzystania w elektronice, narzędzia do projektowania i +analizowania układów elektronicznych +<dd> + +<dd><b>games</b> +<dd>gry i innego rodzaju programy do przyjemnego marnowania czasu +<dd> + +<dd><b>graphics</b> +<dd>edytory i inne narzędzia do obróbki grafiki bitmapowej, wektorowej lub 3D; +przeglądarki plików graficznych oraz programy demonstracyjne +<dd> + +<dd><b>hamradio</b> +<dd>narzędzia dla użytkowników hamradio +<dd> + +<dd><b>interpreters</b> +<dd>interpretery, biblioteki dla języków skryptowych +<dd> + +<dd><b>libs</b> +<dd>biblioteki dla innych programów +<dd> + +<dd><b>mail</b> +<dd>serwery i klienty poczty elektronicznej +<dd> + +<dd><b>math</b> +<dd>narzędzia do zastosowań matematycznych +<dd> + +<dd><b>misc</b> +<dd>pakiety, które nie trafiły do innej sekcji +<dd> + +<dd><b>net</b> +<dd>serwery i klienty usług sieciowych, narzędzia administracyjne i +diagnostyczne dla sieci LAN i WAN +<dd> + +<dd><b>news</b> +<dd>serwery i klienty USENET +<dd> + +<dd><b>oldlibs</b> +<dd>stare wersje bibliotek lub kompilatory tworzące kod wykorzystujący wyłącznie +stare biblioteki +<dd> + +<dd><b>otherosfs</b> +<dd>narzędzia do korzystania z innych systemów operacyjnych lub systemów plików, +emulatory +<dd> + +<dd><b>science</b> +<dd>narzędzia do wykorzystania w zastosowaniach naukowych +<dd> + +<dd><b>shells</b> +<dd>alternatywne powłoki systemowe +<dd> + +<dd><b>sound</b> +<dd>narzędzia związane z dźwiękiem lub plikami muzycznymi +<dd> + +<dd><b>tex</b> +<dd>narzędzia oraz moduły dla systemu publikacji TeX +<dd> + +<dd><b>text</b> +<dd>narzędzia do przetwarzania i drukowania plików tekstowych, procesory tekstu, +słowniki +<dd> + +<dd><b>utils</b> +<dd>wszelkiego rodzaju programy narzędziowe do wykorzystania przez wszystkich +użytkowników +<dd> + +<dd><b>web</b> +<dd>serwery i klienty WWW, narzędzia do tworzenia publikacji WWW oraz +administrowania serwisami webowymi +<dd> + +<dd><b>x11</b> +<dd>programy, biblioteki i moduły związane z systemem X Window + +</dl> + +Oprócz tych sekcji istnieje także podział pakietów ze względu na archiwum w +jakim się znajdują: + +<dl> + +<dd><b>contrib/{admin,base,comm,...}</b> +<dd>pakiety spełniające zasady wolnego oprogramowania, ale do pełnego +działania wymagające pakietów nie będących wolnymi pakietami +<dd> + +<dd><b>non-free/{admin,base,comm,...}</b> +<dd>pakiety nie będące wolnymi w rozumieniu Debiana (DFSG) +<dd> + +<dd><b>non-US/{main,contrib,non-free}</b> +<dd>pakiety, które ze względu na prawo amerykańskie nie mogą być udostępniane na +tamtejszych serwerach (dotyczy to przede wszystkim oprogramowania +wykorzystującego techniki kryptograficzne) + +</dl> + +Ten podział na sekcje jest oczywiście zupełnie umowny i inne dystrybucje mogą +wprowadzić swój własny. Dla przykładu, Corel wprowadził swoją dodatkową sekcję +<b>Corel Desktop</b>. + +<p><b>Priority</b><br> +Priorytet pakietu binarnego lub źródłowego, czyli jego ważność. Podobnie jak +pole <b>Section</b>, jest ono ignorowane przez <tt>dpkg</tt>, a może być brane +pod uwagę przez narzędzia wyższego poziomu, np. <tt>dselect</tt>. + +Informacja z tego pola może być wykorzystywana przy grupowaniu pakietów na +liście, a bardziej zaawansowane programy mogą dzięki niej ustalić kolejność +instalowania pakietów według ważności. + +Poniżej prezentujemy listę priorytetów określonych w <i>Debian Policy</i> i +rozpoznawanych przez <tt>dpkg</tt>. + +<dl> + +<dd><b>required</b> +<dd>Pakiety wymagane, niezbędne do poprawnego funkcjonowania systemu. Ich +odinstalowanie może spowodować niemożność ponownej instalacji. System, w którym +zainstalowane są tylko pakiety wymagane potrafi sam wystartować i zainstalować +inne pakiety. +<dd> + +<dd><b>important</b> +<dd>Pakiety ważne, których brak byłby szczególnie dotkliwy dla użytkowników +systemów uniksowych, m.in. narzędzia bez których pozostała część systemu mogłaby +nie działać poprawnie. Ważnymi pakietami nie mogą być duże programy, takie jak +Emacs, system X Window czy TeX. +<dd> + +<dd><b>standard</b> +<dd>Pakiety standardowe dostarczają skromne, ale zupełnie poprawnie działające +środowisko tekstowe. Te pakiety są instalowane domyślnie, jeżeli użytkownik +samodzielnie nie określi pakietów przeznaczonych do zainstalowania. Standardowo +instalowany jest m.in. edytor Emacs oraz podstawowe komponenty systemu TeX i +LaTeX. +<dd> + +<dd><b>optional</b> +<dd>Pakiety opcjonalne - te które powinny znaleźć się w każdym w pełni +skonfigurowanym systemie. Można je zainstalować ,,w ciemno'', bez wczytywania się +w opis. Pakiety te nie mają dodatkowych wymagań. Do tej kategorii zaliczyć można +pełną dystrybucję TeX-a, system X Window i wiele innych powszechnie używanych +aplikacji. +<dd> + +<dd><b>extra</b> +<dd>Pakiety dodatkowe mogą powodować konflikt z pakietami o innym priorytecie, +mieć specjalne wymagania systemowe lub są przeznaczone do specjalnych +zastosowań. + +</dl> + +Pakiety binarne o danym priorytecie nie mogą być zależne od pakietów o niższym +priorytecie. + +<p><b>Binary</b><br> +Pole pakietu źródłowego określające nazwy pakietów binarnych rozdzielonych +spacjami lub przecinkami, które można zbudować z danego pakietu źródłowego. Nie +wszystkie pakiety można uzyskać dla danej architektury, szczegółowe informacje +znajdują się w pliku kontrolnym. + +<p>Gdy pole występuje w pliku <tt>*.changes</tt>, wymienione są tam nazwy +pakietów binarnych dostarczanych wraz z pakietem źródłowym. + +<p><b>Installed-Size</b><br> +Pole pakietu binarnego lub pliku opisu archiwum <b>Packages</b>, określające +ilość kilobajtów wolnej pamięci dyskowej potrzebnej do zainstalowania danego +pakietu. + +<p><b>Files</b><br> +Pole dotyczące pakietu źródłowego lub dystrybucyjnego, zawierające listę plików +z których składa się pakiet źródłowy. + +<p>Lista plików jest podzielona na wiersze, dane o pliku w każdym z wierszy +rozdzielone są spacjami. + +<p>Dane dla pakietu źródłowego (plik <tt>*.dsc</tt>) to suma kontrolna MD5 +pliku, rozmiar pliku i nazwa pliku. Suma kontrolna i rozmiar są sprawdzane +podczas rozpakowywania pakietu źródłowego przez program <tt>dpkg-source</tt>. + +<p>Dane dla pakietu dystrybucyjnego (plik <tt>*.changes</tt>) to suma kontrolna +MD5 pliku, rozmiar pliku, sekcja danego pakietu, priorytet danego pakietu i +nazwa pliku. Informacje o sekcji i priorytecie pakietu mogą określać położenie +pliku w archiwum FTP. + +<p><b>Standards-Version</b><br> +To pole określa numer wersji standardu, z jakim zgodny jest dany pakiet +źródłowy. Dla dystrybucji Debiana standard określony jest w dokumencie <i>Debian +Policy</i>. + +<p>Pole może być wykorzystywane przez narzędzia do sprawdzania poprawności +budowy pakietu źródłowego - tak jak to robi <i>lintian</i>. + +<p><b>Distribution</b><br> +Pole dotyczy pakietu dystrybucyjnego, a jego wartość jest ustalana na podstawie +zawartości pliku <tt>changelog</tt> pakietu źródłowego. Określa docelową +dystrybucję dla danego pakietu dystrybucyjnego. + +<p>Dystrybucje zostały podzielone ze względu na stan zaawansowania prac nad +pakietami: + +<dl> + +<dd><b>unstable</b> +<dd>Wszystkie nowe pakiety są umieszczane w dystrybucji <b>unstable</b>. Pakiet +taki może nie funkcjonować poprawnie; mogą nawet wystąpić kłopoty z instalacją. +<dd> + +<dd><b>frozen</b> +<dd>Co jakiś czas dystrybucja unstable zostaje ,,zamrożona'', co +oznacza, że nie są dodawane do niej nowe pakiety, a jedynie usuwane błędy +istniejących pakietów. Proces testowania takiej dystrybucji trwa od kilku do +kilkunastu tygodni, po czym dystrybucji nadaje się miano stabilnej. +<dd> +<dd>Najczęściej poprawki dla dystrybucji <b>frozen</b> trafiają także do +dystrybucji <b>unstable</b>, tak więc w polu <b>Distribution</b> mogą być +określone te dwie dystrybucje. +<dd> + +<dd><b>stable</b> +<dd>Dystrybucja stabilna to dystrybucja w danym czasie ,,oficjalna'', w +której nie przewiduje się już zmian poza poprawkami poważnych błędów, przede +wszystkim dotyczących bezpieczeństwa. Dopiero ta dystrybucja, oprócz nazwy +kodowej, otrzymuje numer wersji. W przypadku opublikowania zmian aktualnej +wersji zmienia się także jej numer (np. 2.2r1 staje się 2.2r2, później 2.2r3 +itd.). +<dd> + +<dd><b>experimental</b> +<dd>Pakiety z dystrybucji eksperymentalnej są zazwyczaj we wczesnym stadium +rozwoju, który nie pozwala na umieszczenie ich w normalnej dystrybucji. +Korzystanie z tych pakietów jest najbardziej ryzykowne i nie ma żadnej +gwarancji, że uda się je choćby zainstalować. + +</dl> + +<p><b>Urgency</b><br> +Wartość tego pola jest ustalana na podstawie zawartości pliku changelog i +pojawia się w pliku opisu pakietu dystrybucyjnego <tt>*.changes</tt>. Wartością +jest jedno słowo kluczowe, po którym może następować komentarz. W polu tym +znajdziemy informacje o tym, jak ważne jest dokonanie aktualizacji danego +pakietu. + +<dl> + +<dd><b>low</b> +<dd>Nowy pakiet poprawia mało istotne błędy lub dostarcza nowej wersji +oryginalnego źródła. +<dd> + +<dd><b>medium</b> +<dd>W nowym pakiecie poprawiono błędy, które wpływały na bezpieczeństwo systemu +lub uniemożliwiały poprawne funkcjonowanie pakietu. Aktualizację pakietu warto +wykonać w najbliższym czasie. +<dd> + +<dd><b>high</b> +<dd>Korzystanie ze starego pakietu zagraża spójności systemu. Jak najszybciej +należy zaktualizować ten pakiet. + +</dl> + +<p><b>Date</b><br> +Pole określające datę zbudowania pakietu dystrybucyjnego, pojawiające się w +pliku <tt>*.changes</tt>. + +<p><b>Format</b><br> +Pole określające numer wersji formatu pliku <tt>*.changes</tt>, pojawiające się +w tym właśnie pliku. Ten dokument dotyczy formatu w wersji 1.6. + +<p><b>Changes</b><br> +To pole pojawia się w opisie pakietu dystrybucyjnego w pliku <tt>*.changes</tt> +i zawiera opis zmian wprowadzonych w aktualnej wersji pakietu, w formie +czytelnej dla człowieka. + +<p>Wartość tego pola jest ustalana na podstawie pliku <tt>changelog</tt> z +pakietu źródłowego. + +<p><b>Closes</b><br> +To pole także dotyczy pliku <tt>*.changes</tt>, a zawiera informacje +przeznaczone dla systemu śledzenia błędów BTS. + +<p>Jeżeli w danym pakiecie usunięto błąd, który został wcześniej zgłoszony i +któremu został nadany numer rekordu bazy danych BTS, w pliku changelog (oraz w +polu <tt>Changes</tt>) w spisie zmian może pojawić się informacja tekstowa +<tt>closes: #11111, #22222, ....</tt> W informacji tej podane są numery błędów +uznanych za zamknięte, czyli usunięte lub zignorowane. Numery te zostają +powtórzone w polu <b>Closes</b>, jako lista rozdzielona spacjami. + +<p><b>Filename</b><br> +Pole pojawia się w pliku opisu archiwum Packages i zawiera ścieżkę do pliku z +pakietem, określoną względem katalogu głównego archiwum Debiana. Jeżeli pakiet +został podzielony na kilka plików, pole może zawierać kilka wartości +rozdzielonych spacjami. + +<p><b>MSDOS-Filename</b><br> +Pole jest analogiczne do poprzedniego, z tym że nazwa pliku jest zgodna z +systemem plików MSDOS (8.3 - osiem znaków nazwy pliku, kropka, trzy znaki +rozszerzenia nazwy pliku). + +<p><b>Size</b><br> +Pole pojawia się w pliku opisu archiwum <tt>Packages</tt> i zawiera rozmiar +pliku z pakietem lub - jeżeli został od podzielony na części - rozmiary plików +rozdzielone spacjami. Rozmiar pliku określony jest w bajtach. + +<p><b>MD5sum</b><br> +Pole pojawia się w pliku opisu archiwum <tt>Packages</tt> i zawiera sumę +kontrolną MD5 dla pliku z pakietem lub - jeżeli został od podzielony na części +-, sumy kontrolne plików rozdzielone spacjami. + +<p><b>Status</b><br> +Pole pojawia się w pliku stanu bazy danych systemu pakietów status i zwiera +informacje o stanie pakietu w systemie. Informacje zostały podzielone na trzy +klasy: stan bieżący, stan wyboru oraz znacznik. Wartości te mogą zostać +zmienione za pomocą programu <tt>dpkg</tt> lub <tt>dselect</tt>. + +<p>Stan bieżący pakietu: + +<dl> + +<dd><b>installed</b> (zainstalowany) +<dd>Pakiet jest rozpakowany i poprawnie skonfigurowany. +<dd> + +<dd><b>half-installed</b> (zainstalowany częściowo) +<dd>Instalacja pakietu została rozpoczęta, ale niedokończona z pewnych powodów. +<dd> + +<dd><b>not-installed</b> (niezainstalowany) +<dd>Pakiet nie jest zainstalowany w systemie. +<dd> + +<dd><b>unpacked</b> (rozpakowany) +<dd>Pakiet jest rozpakowany ale nie skonfigurowany. +<dd> + +<dd><b>half-configured</b> (skonfigurowany częściowo) +<dd>Pakiet jest rozpakowany a konfiguracja została rozpoczęta, ale niedokończona +z pewnych powodów. +<dd> + +<dd><b>config-files</b> (pliki konfiguracyjne) +<dd>Tylko pliki konfiguracyjne pakietu zostały w systemie. + +</dl> + +Stan wyboru pakietu: + +<dl> + +<dd><b>install</b> (instalacja) +<dd>Pakiet został wybrany do zainstalowania. +<dd> + +<dd><b>deinstall</b> (deinstalacja) +<dd>Pakiet został wybrany do deinstalowania (to znaczy, że chcemy skasować +wszystkie pliki pakietu oprócz plików konfiguracyjnych). +<dd> + +<dd><b>purge</b> (wyczyszczenie) +<dd>Pakiet został wybrany do wyczyszczenia (to znaczy, że chcemy skasować +wszystko, włącznie z plikami konfiguracyjnymi). + +</dl> + +Znaczniki (flagi) pakietu: + +<dl> + +<dd><b>hold</b> (wstrzymanie) +<dd>Pakiet oznaczony jako wstrzymany; nie jest obsługiwany przez <tt>dpkg</tt>, +chyba że użyje się opcji <tt>--force-hold</tt>. +<dd> + +<dd><b>reinst-required</b> (konieczna reinstalacja) +<dd>Pakiet oznaczony w ten sposób jest uszkodzony i wymaga ponownego +zainstalowania. Taki pakiet nie może zostać usunięty przez <tt>dpkg</tt>, chyba +że użyje się opcji <tt>--force-reinstreq</tt>. + +</dl> + +<p><b>Config-Version</b><br> +Pole pojawia się w pliku stanu bazy danych systemu pakietów status i jeżeli nie +jest zainstalowany lub skonfigurowany, zawiera numer wersji pakietu, której +pozostały pliki konfiguracyjne. + +<p><b>Conffiles</b><br> +Pole pojawia się wyłącznie w pliku stanu bazy danych systemu pakietów status, +gdy pakiet zawiera listę plików konfiguracyjnych. Pozycja na tej liście składa +się z nazwy pliku konfiguracyjnego i sumy kontrolnej MD5 oryginalnego pliku. +Dzięki tej informacji system pakietów wie, czy administrator zmodyfikował +oryginalny plik konfiguracyjny. + +<p><b>Pole definiowane przez użytkownika</b><br> +Pola, które nie zostały wymienione powyżej uznawane są za pola definiowane przez +użytkownika i ignorowane przez system pakietów Debiana. Te pola, jeżeli pojawią +się w pliku <tt>control</tt> pakietu źródłowego, nie zostaną przepisane do pliku +kontrolnego pakietu binarnego czy źródłowego. + +<p>Jeżeli istnieje taka potrzeba, można wykorzystać specjalne pole +rozpoczynające się od znaku X, z następującymi po nim opcjonalnymi znakami B, C +lub S, po których następuje minus - oraz właściwa nazwa pola. Jeżeli znakiem +specjalnym jest B, pole to znajdzie się w pliku <tt>control</tt> pakietu +binarnego; jeżeli znakiem specjalnym jest S, pole pojawi się w pliku +<tt>*.dsc</tt> pakietu źródłowego; jeśli tym znakiem jest C, dotyczy to pliku +<tt>*.changes</tt> pakietu dystrybucyjnego. + +<p>Można użyć kilku znaków specjalnych, na przykład: + +<p><tt>XBS-Comment</tt>: komentarz z pliku <tt>debian/control</tt> pakietu +źródłowego +<p>W podanym przykładzie pole <tt>Comment: To jest komentarz...</tt> pojawi się +w opisie pakietu źródłowego i binarnego. + +<p><b>Wycofane pola pliku kontrolnego</b><br> +Poniższe pola zostały wycofane i mogą pojawiać się najwyżej w starych pakietach +Debiana. + +<p><b>Revision, Package-Revision, Package_Revision</b><br> +Numer wersji pakietu Debiana; obecnie jest częścią pola <b>Version</b>. + +<p><b>Recommended</b><br> +Obecnie pole ma nazwę <b>Recommends</b>. + +<p><b>Optional</b><br> +Obecnie pole ma nazwę <b>Suggests</b>. + +<p><b>Class</b><br> +Obecnie pole ma nazwę <b>Priority</b>. + +<h3>Plik historii pakietu (<tt>changelog</tt>)</h3> + +<p>Plik historii pakietu jest wymagany przez pakiet źródłowy i pojawia się w nim +jako plik <tt>debian/changelog</tt>. Ten plik powinien być umieszczony w +pakiecie binarnym, jako +<tt>/usr/share/doc/<nazwa-pakietu*>/changelog.gz</tt>, jeżeli oryginalny +pakiet źródłowy jest źródłowym pakietem Debiana lub +<tt>/usr/share/doc/<nazwa-pakietu*>/changelog.Debian.gz</tt>, jeśli +oryginalny pakiet źródłowy został ,,zdebianizowany''. + +<p>Plik historii pakietu - oprócz dostarczenia informacji czytelnej dla +użytkownika o dokonanych zmianach w pakiecie - ma specjalne znaczenie. + +<p>Plik ten jest analizowany przez program <tt>dpkg-parsechangelog</tt>, który +na podstawie zawartości pliku generuje odpowiedni plik kontrolny, wykorzystywany +później do zbudowania plików kontrolnych dla pakietów binarnych, źródłowego i +dystrybucyjnego. + +<p>Domyślny format pliku jest następujący: + + +<p><tt> +<pakiet> (<wersja>) <dystrybucja>; +urgency=<ważność><br><br> + + * <opis zmian, które dotyczą pakietu><br> + <dalsza część opisu, jeżeli nie zmieściła się powyżej><br> + * <następny punkt opisu zmian><br><br> + +-- <opiekun> <data> +</tt> + +<p>Część tych informacji jest wykorzystana przy tworzeniu plików kontrolnych: + +<dl> + +<dd><b>pakiet</b> +<dd>Nazwa pakietu, taka sama jak w polu <b>Package</b> pliku <tt>control</tt> +pakietu źródłowego. +<dd> + +<dd><b>wersja</b> +<dd>Numer wersji pakietu, który powinien być identyczny z numerem w nazwie +katalogu zawierającego źródła pakietu. Numer ten pojawi się w pliku kontrolnym +pakietu binarnego, w polu <b>Version</b>. +<dd> + +<dd><b>dystrybucja</b> +<dd>Informacja jest kopiowana do pola <b>Distribution</b> pliku kontrolnego +<tt>*.changes</tt>. +<dd> + +<dd><b>ważność</b> +<dd>Informacja jest kopiowana do pola <b>Urgency</b> pliku kontrolnego +<tt>*.changes</tt>. W polu nie można wykorzystać znaku przecinka, gdyż przecinki +rozdzielają listę zawierającą pary <tt><pole>=<wartość></tt>. +<dd> + +<dd><b>opiekun</b> +<dd>Opiekun tej wersji pakietu. Jeżeli wartość tego pola pokrywa się z polem +<b>Maintainer</b> pliku kontrolnego, autorem tej wersji pakietu jest pierwotny +opiekun. Można umieścić w tym polu dane innej osoby, co znaczy że ta wersja +pakietu została utworzona przez kogoś innego, niż pierwotny opiekun pakietu. +<dd> + +<dd><b>data</b> +<dd>Data utworzenia danej wersji pakietu, podana w formacie RFC822 i +wygenerowana przez program <tt>822-date</tt>. +<dd> + +<dd><b>opis zmian</b> +<dd>Dotyczy przede wszystkim zmian w pakiecie Debiana (tzn. katalogu +<tt>debian/</tt> pakietu źródłowego), szczególnie gdy opis zmian w oryginalnym +źródle jest zawarty w innym pliku. Jeżeli pakiet jest specyficznym pakietem +dystrybucji Debiana, w opisie mogą się znaleźć informacje o zmianach w całym +źródle. +<dd> +<dd>Jeżeli pakiet jest częścią systemu śledzenia błędów, takiego jak np. +<a href="http://www.debian.org/Bugs">http://www.debian.org/Bugs</a>, a w opisie +zmian pojawia się tekst <tt>Closes: #12345</tt>, podany numer jest dołączany do +listy zamkniętych błędów pola <b>Closes</b> pliku <tt>*.changes</tt>. +<dd> +<dd>W opisie zmian często pojawiają się charakterystyczne informacje. +<tt>Initial release</tt> to często pierwszy wpis do historii zmian. <tt>New +upstream release</tt> oznacza zmianę w oryginalnym źródle i ponowną jego +debianizację. <tt>NMU</tt> lub <tt>Non-maintainer release</tt> to informacja o +tym, że dana wersja pakietu została utworzona przez osobę, która nie jest +oficjalnym opiekunem tego pakietu. + +</dl> + +Format pliku historii zmian można zastąpić innym, pod warunkiem że w ostatnich +40 wierszach pliku pojawi się ciąg znaków rozpoznawany przez wyrażenie regularne +Perla <tt>\schangelog-format:\s+([0-9a-z]+)\W</tt> oraz istnieje odpowiedni +program analizujący ten format, dostępny w systemie jako +<tt>/usr/lib/dpkg/parsechangelog/<format-name></tt> lub +<tt>/usr/local/lib/dpkg/parsechangelog/<format-name></tt>. Program +analizujący format musi wygenerować dane, takie same jak w przypadku domyślnych +ustawień programu <tt>dpkg-parsechangelog</tt> dla domyślnego formatu pliku +historii. + +<h3>Program obsługi pakietu źródłowego (<tt>rules</tt>)</h3> + +Charakterystyczne dla systemu pakietów Debiana jest to, że proces +przygotowywania plików z których zostanie utworzony pakiet binarny jest +niezależny od wykorzystywanych w tym celu narzędzi. W skrajnym przypadku pliki +takie można przygotować ręcznie, co może przydać się przy tworzeniu +,,pustych'' pakietów jedynie z informacjami dla systemu pakietów. Ale +pliki robocze do budowy pakietu binarnego można wygenerować także za pomocą +specjalnego narzędzia - np. <tt>yada</tt>. + +<p>Aby zbudować pakiet binarny ze standardowego pakietu źródłowego Debiana, +wywołuje się odpowiedni program (<tt>debian/rules</tt>) znajdujący się w tym +pakiecie źródłowym. + +<p>W zależności od argumentów przekazanych temu programowi, wykonywane są +odpowiednie czynności. Ponieważ tradycyjnie ten program jest skryptem +<tt>Makefile</tt>, argument jest celem (ang. <i>target</i>) dla programu +<tt>make</tt>. + +<p><b>build</b><br> +Ten cel powoduje skompilowanie źródeł bez ingerencji użytkownika. Jeżeli +oryginalne źródło wymusza interakcję z użytkownikiem, zdebianizowany pakiet +źródłowy musi być tak zmodyfikowany, aby wstępna konfiguracja nie była już +potrzebna. Wszelkie operacje wykonywane w ten sposób nie mogą wymagać uprawnień +użytkownika root. + +<p>Jeżeli z tego samego źródła powstaje kilka pakietów binarnych, dla których +sposób kompilacji jest inny, ten cel przestaje mieć sens, a proces kompilacji +wywołujemy poprzez cel <tt>binary</tt>. + +<p>W pewnych przypadkach, szczególnie gdy proces kompilowania pakietu jest +długi, można zapobiec ponownemu kompilowaniu źródeł przy następnym uruchomieniu +<tt>debian/rules build</tt>. + +<p><b>binary, binary-arch, binary-indep</b><br> +Wywołanie tego celu powoduje zbudowanie pakietu binarnego ze skompilowanych +źródeł. Proces jest ten rozdzielony na kolejne cele <b>binary-arch</b> i +<b>binary-indep</b>, w zależności od tego, czy pakiet binarny jest przeznaczony +dla tylko jednej architektury, czy dla wszystkich. + +<p>Sam cel binary powinien wywołać odpowiednie cele zależne od wyboru +architektury, a także cel <b>build</b>, jeżeli ten nie został jeszcze wywołany. +Cele <b>binary-*</b> powinny przygotować odpowiedni katalog roboczy, wygenerować +plik kontrolny poprzez wywołanie programu <tt>dpkg-gencontrol</tt>, a następnie +zbudować pakiet binarny w katalogu nadrzędnym do bieżącego na podstawie +zawartości katalogu roboczego, poprzez wywołanie programu <tt>dpkg-deb</tt>. + +<p>Gdy któryś z celów <b>binary-*</b> nie wykonuje żadnych czynności, powinien +po prostu zakończyć swoje działanie bez zgłaszania błędu. + +<p>Cel binary i odpowiednie cele zależne od architektury muszą być wywołane z +prawami użytkownika root. + +<p><b>clean</b><br> +Wywołanie tego celu powinno spowodować anulowanie wszelkich zmian dokonanych +przez cele <b>binary</b> oraz <b>build</b>, oprócz zmian w katalogu nadrzędnym. + +<p>Ten cel musi być wykonany z prawami użytkownika root, jeżeli wcześniej +wykonano cel <b>binary</b>. + +<h3>Przykładowe pliki</h3> + +<ul> + +<li><b><tt>debian/control</tt></b> (pakiet źródłowy fonty) + +<p><tt> +Source: fonty<br> +Maintainer: Piotr Roszatycki <dexter@debian.org><br> +Section: utils<br> +Priority: extra<br> +Standards-Version: 3.0.1<br> +</tt> + +<p><tt> +Package: fonty<br> +Architecture: all<br> +Section: utils<br> +Depends: console-tools (>= 1:0.2.3-1), console-data<br> +Description: Fonts on Linux console.<br> +Fonty package brings a set of iso-8859-n fonts with VT100 graphics: single<br> +frames, a few symbols.<br> +</tt> + +<p><tt> +Package: dynafont<br> +Architecture: any<br> +Section: utils<br> +Depends: ${shlibs:Depends}, konwert<br> +Recommends: console-tools (>= 1998.06.03)<br> +Description: Module for konwert package which loads UTF-8 fonts dynamically.<br> +This is a tool which allows displaying texts containing thousands of different<br> +characters. It switches console to UTF8 mode and loads required fonts<br> +dynamically. It is recommended to use this tool with filterm(1) tool,<br> +i.e. by executing 'filterm - dynafont' command.<br> +.<br> +The tool works with UTF8-compatible applications, i.e. lynx(1).<br> +There are problems with 8-bit only applications like mc(1).<br> +</tt> + +<p><tt> +Package: fonty-dev<br> +Architecture: all<br> +Section: devel<br> +Depends: ${perl:Depends}<br> +Suggests: fonty<br> +Description: Tools for developing fonts on Linux console.<br> +This package contains Tools for developing console fonts:<br> +* psf2sbf - converts .psf font binary file to text file<br> +* sbf2psf - converts .sbf font source to binary file<br><br> +</tt> + +<li><b><tt>fonty_1.0-6.dsc</tt></b> (pakiet źródłowy) + +<p><tt> +Source: fonty<br> +Version: 1.0-6<br> +Binary: fonty, dynafont, fonty-dev<br> +Maintainer: Piotr Roszatycki <dexter@debian.org><br> +Architecture: any<br> +Standards-Version: 3.0.1<br> +Files:<br> + 7b15b582e990656f0b6865eb27e9b094 153294 fonty_1.0.orig.tar.gz<br> + 9f579b77c1e1ad516bf1273a847989d3 48607 fonty_1.0-6.diff.gz<br><br> +</tt> + +<li><b><tt>control</tt></b> (pakiet binarny <tt>dynafont</tt>) + +<p><tt> +Package: dynafont<br> +Version: 1.0-6<br> +Section: utils<br> +Priority: extra<br> +Architecture: i386<br> +Depends: libc6 (>= 2.1), libstdc++2.10, konwert<br> +Recommends: console-tools (>= 1998.06.03)<br> +Installed-Size: 141<br> +Maintainer: Piotr Roszatycki <dexter@debian.org><br> +Description: Module for konwert package which loads UTF-8 fonts dynamically.<br> +This is a tool which allows displaying texts containing thousands of different<br> +characters. It switches console to UTF8 mode and loads required fonts<br> +dynamically. It is recommended to use this tool with filterm(1) tool,<br> +i.e. by executing 'filterm - dynafont' command.<br> +.<br> +The tool works with UTF8-compatible applications, i.e. lynx(1).<br> +There are problems with 8-bit only applications like mc(1).<br> +Source: fonty<br><br> +</tt> + +<li><b><tt>fonty_1.0-6_i386.changes</tt></b> (pakiet dystrybucyjny) + +<p><tt> +Format: 1.6<br> +Date: Sun, 28 Nov 1999 13:26:56 +0100<br> +Source: fonty<br> +Binary: fonty dynafont fonty-dev<br> +Architecture: source all i386<br> +Version: 1.0-6<br> +Distribution: unstable<br> +Urgency: low<br> +Maintainer: Piotr Roszatycki <dexter@debian.org><br> +Description:<br> +dynafont - Module for konwert package which loads UTF-8 fonts dynamically.<br> +fonty - Fonts on Linux console.<br> +fonty-dev - Tools for developing fonts on Linux console.<br> +Changes:<br> +fonty (1.0-6) unstable; urgency=low<br> +.<br> +* Removed /etc/init.d/fonty script as far as console-tools do +initialization.<br> +* Some minor modification with debian/*.dpatch files.<br> +* fontyconfig(8) replaced by debconf.<br> +* yada 0.8<br> +Files:<br> +1a688b878b3bffa72760f9c0706b62fb 629 utils extra fonty_1.0-6.dsc<br> +9f579b77c1e1ad516bf1273a847989d3 48607 utils extra fonty_1.0-6.diff.gz<br> +31750fc2be75bbbb4f83a900a1468feb 109816 utils extra dynafont_1.0-6_i386.deb<br> +4a988eba220df2599a9a29f747483183 75440 utils extra fonty_1.0-6_all.deb<br> +835fb15f0d6b56f4ba8dc9fd382d2055 113692 devel extra fonty-dev_1.0-6_all.deb +</tt> + +</ul> + +<h3>Literatura</h3> + +The Debian Packaging Manual<br> +The Debian GNU/Linux FAQ<br> +<tt>man 5 deb</tt><br> +<tt>man 5 deb-control</tt><br> +<tt>man 8 dpkg</tt><br> + diff --git a/polish/international/Polish/wprowadzenie.wml b/polish/international/Polish/wprowadzenie.wml new file mode 100644 index 00000000000..0abbc3c6f60 --- /dev/null +++ b/polish/international/Polish/wprowadzenie.wml @@ -0,0 +1,19 @@ +#use wml::debian::template title="Wprowadzenie" NOHEADER="yes" + +<p>Oddajemy do rąk Czytelników numer specjalny, poświęcony dystrybucji Debian +GNU/Linux. Z ankiety zamieszczonej w LinuxPlus 2/2000 wynika, że używa jej 14% +czytających magazyn. To dużo czy mało? Biorąc pod uwagę osiągi Red Hata +(61% wskazań) i znajdującego się na drugim miejscu Mandrake (18%), wynik nie +wydaje się zbyt oszałamiający. Należy jednak pamiętać, czym jest Debian i jakie +oferuje możliwości. W dotarciu do użytkownika przeszkadzają często względy +objętościowe - 4 płyty CD binariów wersji 2.2 (Potato) to zapewne jeszcze nie +koniec powiększania rozmiarów tej dystrybucji. Czasopisma o tematyce +komputerowej rzadko mogą sobie pozwolić na zamieszczenie tak dużej dystrybucji +w zwykłym numerze - i osoby pragnące wypróbować Debiana mają utrudnione +zadanie. A szkoda, ponieważ duży wybór różnorodnego oprogramowania, stabilność, +spójność i wiele innych zalet przemawiają za tą dystrybucją. Jednak sytuacja +nie wygląda aż tak źle. W tym numerze znajdziemy pełen zestaw binariów i źródeł +najnowszej wersji Debian GNU/Linux - 2.2 Potato. Mamy nadzieję, że nasza praca +przysporzy Linuksowi (a Debianowi w szczególności) nowych fanów, a także służyć +będzie bardziej doświadczonym użytkownikom. + diff --git a/polish/international/Polish/wstep_do_debiana.wml b/polish/international/Polish/wstep_do_debiana.wml new file mode 100644 index 00000000000..0b823b15c52 --- /dev/null +++ b/polish/international/Polish/wstep_do_debiana.wml @@ -0,0 +1,616 @@ +#use wml::debian::template title="Wstęp do Debiana" NOHEADER="yes" + +<h2>Czym jest Debian?</h2> + +<p>Debian to ogólnodostępny system operacyjny. Ta definicja jest prawdziwa, +jeżeli za system operacyjny uważa się zestaw podstawowych programów i narzędzi, +które umożliwiają komputerowi działanie. Rdzeniem jest jądro - najbardziej +podstawowy program zarządzający systemem, pozwalający na uruchamianie innych +programów. Debian jest niezależny od jądra - oficjalna wersja wykorzystuje jądro +Linux (patrz <a href="#debian_gnu_linux">Debian GNU/Linux</a>), ale oczywiście +nie ma tu żadnych ograniczeń (więcej na ten temat w części +<a href="#nie_tylko_linux">Czy Debian to TYLKO Linux?</a>). + +<h3>System operacyjny </h3> + +<p>Ze względów historycznych i praktycznych Debian najlepiej wspiera jądro +Linux. W dystrybucji jest także wiele elementów przeznaczonych właśnie dla tego +jądra - narzędzia sieciowe (kernel NFS, obsługa zapór sieciowych, wsparcie dla +sieci IP i IPX), system plików (<b>ext2fs</b>, <b>reiserfs</b>, <b>procfs</b>, +<b>quota</b>), RAID czy moduły jądra. + +<p>Najistotniejszą cechą Debiana jest wykorzystanie programów GNU jako podstawy +systemu - począwszy od biblioteki glibc2, poprzez narzędzia plikowe i tekstowe, +skończywszy na kompilatorach i edytorach. W zasadzie nie dziwi to w przypadku +wersji Linuksowej, gdzie każda dystrybucja opiera się prawie o te same programy, +ale będzie istotne w razie zmiany jądra systemu. + +<p>System Debiana zawiera szereg własnych, specyficznych rozwiązań technicznych. +Dla użytkownika mogą być one niewidoczne, gdyż są przeznaczone w szczególności +dla administratora. W obecnych czasach zdarza się bardzo często, że użytkownik +systemu jest jednocześnie jego administratorem (dotyczy to przede wszystkim +popularnych pecetów). Dobór narzędzi administracyjnych jest szczególnie ważny +przy korzystaniu z danej dystrybucji Linuksa. Narzędzia te w Debianie są +przeznaczone dla bardziej wymagających użytkowników i bliżej im raczej do +programów uniksowych niż windowsowych. Programiści włożyli dużo pracy w +usprawnienie i uproszczenie codziennej administracji systemem, choć podstawowym +środowiskiem administratora pozostaje wiersz poleceń i ewentualnie tryb +pełnoekranowy. + +<p>Unikalnym rozwiązaniem Debiana jest system pakietów. Zwalnia on +administratora z uciążliwości związanych z instalacją i deinstalacją +poszczególnych programów. Pakiety binarne pozwalają na grupowanie plików, które +są wykorzystywane przez konkretny program. Sama instalacja oprogramowania +przebiega automatycznie, a dzięki zależnościom informowani jesteśmy o +brakujących lub wywołujących konflikt komponentach. Sam system pakietów składa +się z szeregu programów, począwszy od niskopoziomowych narzędzi wiersza poleceń +(<tt>dpkg</tt>), przez bardziej zaawansowane programy (<tt>apt-get</tt>), do +pełnoekranowych lub graficznych nakładek (<tt>dselect</tt>, <tt>gnome-apt</tt>). + +<h3>Pakiety</h3> + +<p>Pakiety są podstawowymi jednostkami Debiana - każdy plik systemu jest częścią +któregoś z nich. Dzięki przyjęciu pewnych ogólnych zasad ich budowania, każdy po +zainstalowaniu staje się integralną częścią całego systemu. Integralność +osiągnięto dzięki zachowaniu tego samego układu katalogów i charakterystycznych +plików. Mimo zupełnie różnych zastosowań programów, można w nich wyodrębnić +pewne analogie - sposób konfiguracji, podobny schemat dokumentacji, integracja z +resztą systemu itd. Przygotowanie programu do utworzenia pakietu Debiana polega +na uschematyzowaniu jego cech, dzięki czemu późniejsza instalacja pakietu jest +intuicyjna. + +<p>Cechy wspólne pakietów Debiana określono w dokumencie <i>The Debian +Policy</i>. Choć jest on przede wszystkim przeznaczony dla twórców pakietów, +pozwala na zrozumienie cech dystrybucji i zasad działania systemu pakietów. + +<p>Dzięki tym wszystkim cechom dystrybucja Debiana jest wyjątkowo elastycznym +narzędziem w rękach administratora. Łącząc ze sobą wybrane pakiety, można w +krótkim czasie otrzymać system dostosowany do konkretnych potrzeb. Na przykład, +po zainstalowaniu podstawowej wersji (dyskietki <b>base</b>) i dołączeniu do +niego kilku dodatkowych pakietów można uzyskać mały, ale w pełni sprawny serwer +pocztowy czy DNS. Po wybraniu innych pakietów wykorzystujących środowisko +graficzne i odpowiedniej konfiguracji systemu uzyskujemy niewielkim nakładem +środków np. kiosk informacyjny lub konsolę do kafejki internetowej. Co więcej, +korzystanie z pakietów pozwala na bardzo prostą późniejszą aktualizację systemu. + +<p>Jeśli chodzi o instalację pakietów, w Debianie pojawił się system +<b>debconf</b>, który ma rozwiązać problem wstępnego ich konfigurowania. W +praktyce każdy pakiet obsługujący ten nowy system może zostać skonfigurowany z +wykorzystaniem tekstowych okien dialogowych, trybu terminalowego lub systemu +graficznego X Window. Nowy system można określić mianem ,,kreatora +konfiguracji pakietów''. Oczywiście, w nietypowej sytuacji można w ogóle +zrezygnować z ,,fabrycznej'' konfiguracji. + +<h3><a name="debian_gnu_linux">Debian GNU/Linux</a></h3> + +<p>Debian GNU/Linux nie jest takim samym Linuksem jak Red Hat czy S.u.S.E.. +Naturalnie, nie chodzi tu o kwestie czysto techniczne. Jedną z podstawowych cech +wyróżniających jest system <i>open development</i>. Oznacza to m.in., że +tworzący dystrybucję nie kierują się chęcią zysku i reklamy, a także nie są +wspierani przez żadną organizację komercyjną. + +<p>Bogata w różnorodne oprogramowanie, stabilna, całkowicie bezpłatna i +dynamicznie rozwijająca się dystrybucja jest propozycją dla znających już Uniksy +użytkowników, administratorów chcących posiadać bezpieczny i przejrzysty system +operacyjny, programistów, a także wszystkich tych, dla których Linux to coś +więcej niż kilka znanych programów i przyjazne środowisko graficzne. Jednak za +najbardziej widoczną oznakę ,,inności'' Debiana można uznać pakietowy +format <tt>.deb</tt> związany ze słynnym systemem zarządzania pakietami Debiana +(ang. <i>Debian Package Management System</i> - patrz części +<i>System operacyjny i Pakiety</i>). Ponieważ rozwiązanie +to, jak i pozostałe (patrz <a href="#za_darmo">Za darmo i bez ograniczeń!</a>), +oparte jest na licencji GPL, często stosują je także twórcy innych dystrybucji +(patrz <a href="#klonowanie_debiana">Klonowanie Debiana</a>). Oryginalne +jest właściwie wszystko: system zgłaszania usterek (oczywiście przez Internet - +zgłoszenia są natychmiast rozsyłane do osób odpowiedzialnych za dany pakiet lub +usługę oraz przekazywane do publicznej wiadomości za pomocą oficjalnych stron +WWW), podejście twórców do użytkownika, a także - jak twierdzą złośliwi - +konfiguracja i instalacja systemu ;->. ,,Umowa społeczna'' (ang. +<i>Social Contract</i>) zawarta pomiędzy uczestnikami projektu a społecznością +Internetową precyzyjnie określa cele, którymi kierują się ludzie odpowiedzialni +za rozwój Debiana. Nie mniej ważne są wymagania stawiane autorom programów przez +koordynatorów Projektu (dokument <i>The Debian Free Software Guidelines</i>). +Mowa w nich między innymi o nieskrępowanej nakazami redystrybucji, załączonym +kodzie źródłowym, pozwoleniach na modyfikację kodu oraz zakazie dyskryminacji +jakiejkolwiek grupy lub osób w załączonej licencji. Jak widać, nie bez powodu +Debian ma w swojej pełnej nazwie litery GNU... (o tym zagadnieniu będzie mowa w +dalszej części artykułu). + +<h3>Dlaczego ,,Debian''? </h3> + +<p>Intrygująca jest już sama nazwa dystrybucji. Tak jak i wiele innych cech, +projekt zawdzięcza ją swojemu twórcy. ,,Debian'' (wymawia się +,,'deb-ian'' z krótkim ,,e'' i akcentem na pierwszą sylabę lub +,,de'beean'' z krótkim ,,a'' - taką wersję preferuje sam Ian +Murdock) to połączenie imion Iana Murdocka i jego żony Debry. + +<p>Drugą najbardziej rzucającą się w oczy cechą Debiana są nazwy poszczególnych +wersji. Ci, którzy widzieli film Toy Story, nie powinni mieć kłopotu z ich +rozpoznaniem - wszystkie pochodzą od imion bohaterów. Powodem takiego wyboru +jest wcześniejsze miejsce pracy Bruce'a Perensa - firma Pixar, producent +filmu. + +<h3>Historia pewnego pomysłu</h3> + +<p>W sierpniu 1993 roku Ian Murdock, student Uniwersytetu Purdue, postanowił +stworzyć całkowicie niekomercyjne, darmowe i stabilne środowisko pracy, +wykorzystując do tego celu jądro obecnego już od jakiegoś czasu w Sieci systemu +operacyjnego Linux. Istniejące wtedy dystrybucje (z których najbardziej znana to +SLS) nie były to na pewno systemami marzeń - duża liczba błędów, brak troski o +utrzymanie aktualności i stabilności systemu, a przede wszystkim wykorzystywanie +sytuacji przez nieuczciwych sprzedawców oferujących Linuksa za pieniądze nie +mogły się podobać. Szerzej zostało to opisane w manifeście <i>The Debian Linux +Manifesto</i>, który to dokument Murdock stworzył w połowie roku 1994. Bardzo +ważna była też filozofia ogólnodostępnego oprogramowania, o której powiemy +więcej w części <a href="#za_darmo">Za darmo i bez ograniczeń</a>! Projekt +Debiana połączył w jedną całość idee i narzędzia z Free Software Foundation, +a w szczególności te autorstwa Richarda M. Stallmana. Bardzo ważny był też model +pracy nad dystrybucją (maintainer - pakiet) - ostateczny efekt współpracy kilku +tysięcy ochotników komunikujących się za pomocą emailowych list adresowych, sieci +IRC i Usenetu stanowił najlepszy dowód sukcesu. Za główną przyczynę powodzenia +całości można uznać wysiłek włożony w organizację całego przedsięwzięcia - choć +na początku liczba współpracowników była niewielka. Paradoksalnie, mniej więcej +w tym samym czasie rozpoczynają się intensywne prace nad stworzeniem systemu +opartego na przeniesionym na platformę Intela komercyjnym Uniksie 4.4BSD-lite +oraz dosyć zaniedbanym 386BSD Billa Jolitza, co owocuje późniejszą rodziną *BSD +(najpierw pojawia się w listopadzie 1993 roku pierwsza wersja FreeBSD, rok +później NetBSD, z którego po dwóch latach wykształca się OpenBSD). + +<p>Ważną datą był styczeń 1994, kiedy została ogłoszona wersja 0.91 (naprawdę +pierwszą była sierpniowa 0.01, jednak dopiero po kilku miesiącach prac powstało +coś, co moglibyśmy już nazwać systemem operacyjnym). Nie tylko oznaczała +przełom, ale też rozpoczynała nowy etap rozwoju. Sam Murdock pisze: + +<p><i>Miał [Debian 0.91] prymitywny system pakietów, który pozwalał manipulować +poszczególnymi paczkami, ale oprócz tego nie robił prawie nic (oczywiście nie +było żadnych zależności, ani niczego w tym rodzaju). W tym czasie nad Debianem +pracowało już kilka osób, jednak to ja, najczęściej sam, składałem kolejne +wersje. 0.91 była ostatnią przygotowywaną w ten sposób.</i> + +<p>Większość roku 1994 to organizacja bardziej efektywnej współpracy nad +projektem. Bardzo ważne były też zaawansowane prace nad jednym z filarów +systemu, czyli <tt>dpkg</tt> (za to w dużym stopniu odpowiadał Ian Jackson, +który kilka lat później został koordynatorem projektu Debian). + +<p>Debian 0.93r5 ujrzał światło dzienne w marcu 1995 roku i był pierwszą +,,profesjonalną'' wersją tego systemu - publicznie dostępną, choć +jeszcze testową. W tym czasie pracowało już nad nim więcej ludzi, każdy +odpowiedzialny za konkretne pakiety - do ich instalacji i utrzymania, po +zbudowaniu podstawowych programów i kompilacji jądra, używany był +<tt>dpkg</tt>. + +<p>Debian 093r6 pojawił się w listopadzie 1995 roku i był ostatnim opartym na +binariach typu a.out (następne wersje stosowały już format <b>ELF</b>). +Utrzymaniem pakietów zajmowało się już około 60 osób. Również wtedy +zaprezentowano po raz pierwszy słynny program <tt>dselect</tt>. Uruchomiono +także adres master.debian.org służący do dziś jako główny serwer produkcyjny. +Murdock mówi o 093r6 ,,<i>... zawsze był moim ulubionym Debianem</i>'', +ale przyznaje, że może to przez sentyment, bo aktywnie przestał uczestniczyć w +projekcie w marcu 1996 - w trakcie tworzenia Debiana 1.0 który ostatecznie stał +się stabilnym Debianem 1.1. + +<p>W sierpniu 1995 pojawiają się pierwsze próby przeniesienia systemu na +architektury inne niż i386. Więcej na ten temat można przeczytać w częściach +<i>Na innych platformach</i> oraz <i>Czy Debian to TYLKO Linux?</i>. Bill +Mitchell, jeden ze starszych stażem członków zespołu, wspomina: + +<p><i>... pomiędzy 0.99r8 a 0.99r15, gdy zaczynałem. Przez długi czas mogłem +zbudować jądro na maszynie 386 z zegarem 20 Mhz w czasie krótszym niż pół +godziny. Prawie tyle samo zajmowała mi instalacja Debiana, kosztująca mniej niż +10MB przestrzeni dyskowej (...). Jak pamiętam, nie zaczynaliśmy z jakimś +konkretnym planem, ani też ułożenie takiego planu nie było pierwszą rzeczą, za +jaką się zabraliśmy. Z tego co pamiętam, zaczęliśmy od zbierania źródeł całkiem +przypadkowo wybranych programów. Z czasem przyszedł zbiór rzeczy, które były +potrzebne do stworzenia rdzenia dystrybucji: jądro, powłoka, update, getty plus +kilka innych, pliki potrzebne do startu systemu i zestaw podstawowych +,,użytków''.</i> + +<p>Po opuszczeniu projektu przez Iana Murdocka, nowym liderem zostaje Bruce +Perens. Początkowo zainteresowany jedynie rozwojem zestawu programów dla +operatorów sieci radiowych (chciał nawet wydać na CD-ROM-ie własną dystrybucję +Linuksa), stał się on w niedługim czasie jednym z aktywniejszych członków +projektu Debian. Jemu zawdzięcza się między innymi zestaw skryptów +instalacyjnych (opracowanych wraz z Ianem Murdockiem) oraz programy do tworzenia +dyskietki systemowej (tzw. <i>Debian Rescue Floppy</i>). Był też inspiratorem +wielu działań mających na celu określenie Debiana w świadomości użytkowników, +jak i wytłumaczenie zasad rządzących całym przedsięwzięciem (należy tu wymienić +dokumenty <i>Debian Free Software Guidelines</i>, <i>Debian Social Contract</i> +i <i>The Open Hardware Project</i>, bez których Debian nie byłby tym czym jest +dzisiaj). W czasie pełnienia przez niego obowiązków lidera projektu, Debian +zyskał markę i reputację rozwiązania dla poważnych i doświadczonych +użytkowników + +<p>W tym czasie pojawiają się następujące dystrybucje: + +<dl> +<dd> +1.1 Buzz - czerwiec 1996 (474 pakiety, jądro w wersji 2.0, format ELF, +<tt>dpkg</tt>) +</dd> +<dd>1.2 Rex - grudzień 1996 (848 pakietów, 120 osobowy zespół)</dd> +<dd>1.3 Bo - lipiec 1997 (974 pakiety, 200 osobowy zespół)</dd> +</dl> + +<p>Potem wyszło jeszcze kilka wersji przejściowych. Ostatnią była 1.3.1r6. + +<p>Sprawy finansowe Debiana przejmuje założona w tym celu niedochodowa +organizacja Software in the Public Interest. + +<p>Na początku roku 1998 koordynatorem zostaje Ian Jackson, a po rezygnacji +członków rady Software in the Public Interest (wśród których znajdowali się +między innymi Perens i Murdock), także prezydentem owej organizacji (oprócz +niego wybrano także 3 nowych członków). + +<p>Debian 2.0 Hamm został uznany za wersję stabilną w lipcu 1998 roku. Wtedy +zawierał ponad 1500 pakietów, a projektem zajmowała się około 400-osobowa grupa +programistów. + +<p>W styczniu 1999 roku Jacksona zastąpił Wichert Akkerman (od tej pory co roku +wybierany jest nowy lider). Dwa miesiące później miano stabilnego uzyskał Debian +2.1 Slink (czemu towarzyszyły duże emocje, ponieważ w ostatniej chwili prace +opóźniły się o tydzień z powodu kilku ,,nie cierpiących zwłoki'' +poprawek). Pierwszy raz na dwóch CD-ROM-ach, zawierał około 2250 pakietów. +Wprowadził nowy mechanizm zarządzania pakietami APT. + +<p>Wersja 2.2 Potato to podwojona liczba pakietów, przyjęcie standardu FHS, +wprowadzenie systemu konfiguracji Debconf i pełna współpraca z jądrem Linux +2.2. + +<h3>Struktura organizacyjna</h3> + +<p>Mimo, że Projekt Debian jest przedsięwzięciem utrzymywanym przez ochotników, +dużo wysiłku włożono w należytą organizację. Posiada własną konstytucję +określającą strukturę, podział zadań i kompetencji oraz cele statutowe. +Konstytucja Debiana przetrwała próbę czasu oraz perturbacje związane ze zmianami +liderów projektu, co może być przykładem dla niejednego komercyjnego +przedsięwzięcia. + +<p>Developerem może zostać każdy, kto decyduje się na współudział w projekcie +oraz zgadza się z ogólnymi jego zasadami (DFSG oraz Social Contract). Każdy z +twórców ma prawo do podejmowania decyzji dotyczących własnej pracy, może +zgłaszać propozycje ogólnych rozwiązań oraz ma prawo do głosowania. + +<p>Głównym zadaniem twórców jest opieka nad własnymi pakietami. Część z nich +jest zbyt rozbudowana, by mogła się nimi zająć jedna osoba. W tym celu +powoływane są zespoły, które przejmują opiekę nad danymi pakietami. Oprócz +zespołów technicznych istnieje m.in. zespół prasowy dbający o kontakty z mediami +i przygotowujący oficjalne komunikaty. + +<p>W przypadku propozycji rozwiązań, które mają wpływ na całość projektu, po +uzyskaniu minimalnego poparcia developer może zwołać głosowanie nad swoim +wnioskiem. Głosowanie nie jest konieczne w przypadku przyjęcia jakiegoś ogólnego +rozwiązania technicznego, które może przeforsować komitet techniczny. + +<p>Komitet techniczny, składający się od 4 do 8 developerów, ma decydujący głos +w dyskusjach o charakterze technicznym i jego głównym zadaniem jest kontrola nad +spójnością dystrybucji. + +<p>Gdy zbliża się termin wyboru lidera projektu, każdy z developerów ma prawo +wystawić swoją kandydaturę. Wybrany drogą głosowania lider odpowiada całościowo +za projekt. W jego zakres uprawnień wchodzi m.in. powoływanie swoich delegatów, +zgłaszanie wniosków dla komitetu technicznego, podejmowanie decyzji wraz z SPI +związanych z projektem. + +<p>Sekretarz projektu, powoływany przez lidera za akceptacją SPI, zajmuje się +techniczną stroną rekrutacji nowych developerów oraz sprawami dotyczącymi +konstytucji, a także procedurą głosowania. Delegaci przez niego mianowani mogą +powoływać lub odwoływać członków projektu. + +<p>SPI jest osobną organizacją odpowiedzialną za finanse projektu Debiana oraz +za prawa do znaku handlowego. Jest to pewien zabieg prawny, jako że darowizny na +rzecz SPI są podstawą do odliczeń podatkowych w USA. + +<h3><a name="za_darmo">Za darmo i bez ograniczeń!</a></h3> + +<p>Twórcy projektu Debian pracują nad dystrybucją, często poświęcając swój wolny +czas. Niektórzy z nich inwestują w nią nie tylko czas i energię, ale i sprzęt +komputerowy czy własne fundusze. + +<p>W początkowym okresie dystrybucja stworzona przez Iana Murdocka była ściśle +związana z powstałą w 1983 roku organizacją Free Software Foundation Richarda M. +Stallmana (twórcy m. in. GDB i GNU Emacs). Ta organizacja miała (i ma) za +zadanie wspierać użytkowników, a także twórców darmowego oprogramowania. Znana z +wielu inicjatyw dotyczących różnorakich spraw związanych ze sprzętem +komputerowym i oprogramowaniem, większości osób szczególnie zapadła w pamięć za +sprawą opracowania projektu The GNU Project. Twórcą był sam Stallman, legendarna +postać ogólnodostępnego oprogramowania. Często bierze on udział w dyskusjach +dotyczących Debiana, nieoficjalnie wiadomo też, że w swoim laptopie korzysta +właśnie z tej dystrybucji :). Projekt Debian był więc jakby kontynuacją idei +FSF. + +<p>Do dzisiaj zresztą Debian GNU/Linux traktowany jest jako jego ,,dziecko'' o +czym świadczy chociażby nazwa (przyjęcie jej było warunkiem postawionym przez +FSF i choć w końcu Debian został niezależnym od tej organizacji projektem, nie +usunięto z niej przedrostka GNU). Otwarcie firmowany był zaledwie przez rok - od +listopada 1994 r. do listopada 1995 r. Później FSF wycofała się z patronatu, ale +nie zerwała definitywnie więzi z twórcami systemu. Po odejściu Murdocka w 1996 +roku zaangażowanie tej organizacji znacznie osłabło - różnice zdań były coraz +większe, a jeden z niewielu czynników który trzymał razem dwa środowiska nie +miał już znaczenia. Jednak w ostatnich latach można zaobserwować odtworzenie i +rozwój kontaktów (co Murdock przyjmuje z dużym zadowoleniem). + +<p>O całej filozofii oprogramowania ogólnodostępnego można przeczytać w takich +tekstach jak <i>What does free mean?</i>, <i>Debian Free Software +Guidelines</i>, <i>Debian Social Contract</i> lub też w samym <i>The Debian +Linux Manifesto</i>. Zachęcam do lektury. + +<h3>Na innych platformach</h3> + +<p>W sierpniu 1995 Hartmut Koptein rozpoczyna próbę przeniesienia Debiana na +architekturę m68k (maszyny z procesorami typu Motorola 680x0 - m. in. Amiga i +Atari). Do tego czasu był on dostępny jedynie na komputerach PC opartych o +procesory Intela, jednak oczywiście nikt nie zakładał, że tak już zostanie. Po 3 +miesiącach (w listopadzie tego roku) prace nad projektem Debian-m68k szły już +pełną parą. Dziś, oprócz tej platformy (pełna dystrybucja binarna ją obsługująca +ukazała się dopiero wraz z Debianem 2.0), istnieją - od czasu Debiana 2.1 Slink +- wersje na procesory SPARC (Sun4c, Sun4m i Sun4u - mimo że ta odmiana używa +jądra skompilowanego przez egcs64, czyli 64 bitowego, większość aplikacji działa +w trybie 32 bitowym) oraz Alpha. Prace nad obsługą architektury PowerPC już +zostały zakończone - dystrybucje binarne są dostępne razem z Debianem 2.2 +Potato. Z przyszłych i rozwijanych projektów należy wymienić ARM, SPARC64 (próba +zaimplementowania pełnej obsługi trybu 64 bitowego na maszynach Sun4u - stąd też +inna nazwa: UltraLinux), MIPS, Beowulf (koncepcja użycia Debiana w +superkomputerach obecnych często w poważnych przedsięwzięciach matematycznych i +naukowych - zainteresowana jest m.in. NASA), a także Hurd-i386, o którym więcej +w następnym rozdziale. + +<h3><a name="nie_tylko_linux">Czy Debian to TYLKO Linux?</a></h3> + +<p>Oczywiście nie. To także filozofia życia ;-). Ale o tym może w następnych +artykułach. Naturalnie, chodzi o Debiana z jądrem nie-linuksowym. GNU Hurd to +zestaw serwerów i demonów oraz jądro nie oparte na Uniksie. Obecnie znajduje się +jeszcze w fazie początkowego rozwoju, jednak ma wiele zalet i jako absolutny +fenomen jest wart uwagi (między innymi dlatego, że jak piszą jego twórcy jest +darmowy, kompatybilny, stabilny, obsługuje wiele procesorów tak samo dobrze jak +jeden i - co najważniejsze - po prostu istnieje ;->). Oparta na nim dystrybucja +Debiana będzie się nazywała Debian GNU/Hurd i, oczywiście, zamiast jądra Linuksa +będzie oparta na wersji mikrojądra GNU Mach. Projekt nazwany Hurd-i386 w +momencie zakończenia prac stałby się jednocześnie wersją 0.3 GNU Hurd. Byłoby to +pierwsze tego typu przedsięwzięcie uwieńczone sukcesem, jako że na razie nic +podobnego nie zostało przeprowadzone ani w innych dystrybucjach Linuksa, ani w +Debianie. + +<p>Czy możliwe jest posiadanie tego samego środowiska narzędzi GNU na zupełnie +innych platformach systemowych? Swego czasu sporo dyskutowano o wersji Debiana +wykorzystującej Solaris lub nawet WindowsNT z biblioteką CygWin. Komercyjne +jądro z darmowym zestawem programów i pakietami jako możliwość rozszerzania +funkcjonalności systemu? - przeszkodą w realizacji są bardziej bariery +ideologiczne niż techniczne. Eksperyment z dystrybucją Debian GNU/FreeBSD +pokazał, że technicznie można pogodzić ze sobą dwa odmienne światy - GNU oraz +BSD. + +<h3>Co nowego?</h3> + +<p>Od wersji 2.0 domyślnie stosowany jest shadowing haseł. Wbudowano też +częściową obsługę PAM (<i>Pluggable Authentication Modules</i>), co pozwoliło na +wygodniejsze i bardziej przejrzyste administrowanie oraz lepszą kontrolę +dostępu. Był to również pierwszy Debian oparty na nowszej wersji bibliotek +systemowych C, czyli libc6 (inaczej glibc2). Oprócz wersji na platformę m68k, +jedną z najważniejszych nowości było większe wsparcie dla użytkowników +posługujących się innymi językami niż angielski. Dystrybucję wyposażono w nowe +mapy klawiatury i fonty oraz strony podręcznikowe w językach francuskim, +niemieckim, włoskim i hiszpańskim. + +<p>Debian 2.1 Slink jako ostatni jest oparty na jądrze Linuksa w wersji 2.0.x. +Zawiera też program <tt>apt</tt>, który ma za zadanie zastąpić niezbyt lubianego +<tt>dselecta</tt> w procesie instalacji i aktualizacji pakietów (według autorów +wykonuje te czynności w prostszy i bezpieczniejszy sposób). Pakiety zawierające +system X Window zostały zreorganizowane, co pozwoliło na bardziej elastyczną +obsługę nowych rozwiązań i jednocześnie dalsze wspieranie starych. Obsługa +nowych platform, czyli maszyn z procesorami typu Alpha i SPARC, wiąże się z +powiększeniem rozmiarów dystrybucji. Sama wersja na procesory Intela zajmuje już +2 krążki CD! + +<p>Debian 2.2 Potato to kolejna rewolucja. Zmian jest dużo. Przede wszystkim +domyślnie używany kompilator <tt>egcs</tt> (wersja <tt>gcc</tt> znana jako +<tt>egcc</tt>). Cały system oparty oczywiście na jądrze w wersji 2.2.x, oprócz +tego nowa wersja libc czyli glibc 2.1 (kompatybilna wstecz z glibc 2.0, która +jest używana w Hamm i Slink). Ponadto wsparcie dla architektury PowerPC. + +<h3>Komercyjni partnerzy Debiana</h3> + +<p>Lista firm współpracujących z Debianem jest całkiem długa. Często wśród ich +pracowników znajdziemy twórców Debiana, w innych przypadkach ofiarowano +odpowiedni sprzęt na potrzeby projektu. M.in. dzięki komputerom udostępnionym +przez oryginalnych producentów sprzętu opartego o Alphy (Compaq) czy Sparc +(SUN), udało się przenieść Debiana na te platformy. + +<p>Dość nieoczekiwanymi partnerami Debiana zostali producenci komercyjnych +dystrybucji Linuksa. Debian okazał się godny zaufania i stał się podstawą dla +dystrybucji Storm Linux oraz Corel Linux (patrz +<a href="#klonowanie_debiana">Klonowanie Debiana</a>). + +<p>Pod koniec ubiegłego roku Debian zyskał wsparcie O'Reilly i SGI, które zajęły +się promocją projektu na rynku wydawniczym. O ile udział O'Reilly nie dziwi, +gdyż firma ta jest znana z szeregu interesujących pozycji książkowych, o tyle +działania SGI potwierdzają chęć przyłączenia się do świata Open Source. + +<p>Także wielu producentów płyt CD i dystrybutorów ma z Debianem wiele wspólnego +- więcej na ten temat w rozdziale <i>Zdobycie dystrybucji</i>. + +<h3><a name="klonowanie_debiana">Klonowanie Debiana</a></h3> + +<p>21 kwietnia 1999 roku doszło do podpisania umowy między przedstawicielami +projektu Debian, firmy Corel oraz projektu K Desktop (organizacji rozwijającej +interfejs graficzny KDE - część Debian GNU/Linux od wersji 2.0). Jej owocem jest +dystrybucja Corel Linux oparta na systemie pakietów <tt>.deb</tt> i naturalnie +zawierająca środowisko KDE. Corel Linux 1.0 ukazał się na przełomie 1999 i 2000 +roku. W założeniu ma być propozycją dla mniej zaawansowanych użytkowników - +związane z nim slogany reklamowe to prostota instalacji, graficzny interfejs, a +także uproszczenie niektórych niezbędnych czynności (podział dysku na partycje, +konfiguracja systemu, instalacja i aktualizacja pakietów). + +<p>Mniej znana dystrybucja związana z Debianem to LibraNet Linux. Powinna +zainteresować wszystkich tych, którzy chcą mieć zarówno system do pracy, jak i +do zabawy. Dość dobra oferta pomocy technicznej ze strony producenta powoduje, +że jest ona odpowiednia także dla początkujących. + +<p>Kolejnym Linuksem korzystającym z systemu zarządzania pakietami Debiana jest +Storm Linux, zorientowany bardziej ,,przyszłościowo'' (czyli +komercyjnie...) i nazywany (zapewne nie bez powodu) ,,Linuksem dla +sieci''. Jego powstanie zapowiedziano latem 1999 roku. Storm Linux 2000 +wszedł na rynek 15 grudnia 1999 roku. + +<p>Ian Murdock razem z Brucem Perensem i grupą kapitałową Linux Capital Group +przygotowują komercyjną wersję Debiana, Progeny Linux (obaj programiści nie +pracują już nad rozwojem Debian GNU/Linux). Będzie to zapewne jedno z większych +wydarzeń roku 2000. + +<h3>Plany na przyszłość</h3> + +<p>Zaplanowany rozwój i konsekwentne stawianie na stabilność i bezpieczeństwo +owocują zdobyciem zaufania użytkowników oraz zyskaniem coraz większej +popularności. Czy można jeszcze usprawnić coś, co jest już prawie idealne? + +<p>Nowych pomysłów czekających na realizację jest wiele - tak samo jak problemów +jest do rozwiązania. Największa zaleta Debiana w końcu okazała się jego +największym kłopotem - ilość oprogramowania w dystrybucji. Gdy pełna wersja +Debian Slink bez źródeł zajmowała 3 płyty CD, Debian Potato wraz z wersją non-US +oraz dołączonym KDE mieści się na minimum 4 płytach CD. To zbyt wiele, aby mógł +on być rozprowadzany przez popularne czasopisma komputerowe. Czy rozwiązaniem +mogą być kompilacje najpopularniejszych pakietów Debiana mieszczące się na +jednej płycie CD? + +<p>Przypuszczalnie zniesiony zostanie dotychczasowy cykl wydawniczy Debiana +(unstable-frozen-stable), a zastąpią go tzw. <i>package pools</i>. Oznacza to, +że w każdej chwili byłaby dostępna aktualna wersja stabilna oraz aktualna wersja +rozwojowa. Co więcej, odpowiednie narzędzia pozwalałyby zebrać pakiety o danym +profilu (dystrybucja dla domowego użytkownika, dystrybucja dla programisty +itd.), tak by utworzyły kompletną płytę CD. + +<p>Już w tej chwili Debian jest określany jako dystrybucja-portal. Wielu +administratorów traktuje go jako źródło gotowych pakietów, z których można +złożyć niewielkim nakładem sił i kosztów, niczym z klocków, własny system +operacyjny. To, że Corel Linux potrafi korzystać z archiwum Debiana, zdaje się +potwierdzać tę ideę, a rozwiązanie <i>package pools</i> może się okazać strzałem +w dziesiątkę. + +<p>Ogólną tendencją jest tworzenie narodowych wersji dla wielu programów. Jak do +tej pory, Debian stara się wspierać lokalizację zasobów, choć nie zawsze jest to +możliwe - przede wszystkim brak jest pełnego wsparcia I18N dla menedżera +pakietów. Choć polecenie <tt>export LANG=pl_PL</tt> w większości wypadków +wystarcza, jeszcze wiele jest w tej materii do zrobienia. + +<p>Kolejnym etapem rozwoju Debiana jest uniezależnienie od jądra. Brzmi to może +nierealnie, ale już teraz Debian to nie tylko Linux (patrz +<a href="#nie_tylko_linux">Czy Debian to TYLKO Linux?</a>). Od dłuższego czasu +prowadzone są prace nad nowym jądrem GNU/HURD. Wymiana pakietu z jądrem i reszty +pakietów binarnych tak, dotychczasowa konfiguracja systemu nie uległa zmianie, +jest technicznie do wykonania. Oprócz HURD-a były już przymiarki do wymiany +Linuksa na FreeBSD. Zainteresowanie eksperymentalną dystrybucją Debian GNU/FreeBSD +było całkiem spore, a sam pomysł poruszył zarówno użytkowników Debiana jak i +oryginalnego FreeBSD. + +<p>Ciekawe, w jaki sposób świat komercyjnego oprogramowania wpłynie na Debiana. +Jak do tej pory poczynania firmy Corel czasem budziły sporo kontrowersji (m.in. +przypadek łamania licencji GNU), jednak jej działanie może pomóc Debianowi w +uzyskaniu lepszego wsparcia ze strony innych firm. Jedno nie ulega wątpliwości - +sam Debian zawsze pozostanie ogólnodostępną dystrybucją. + +<h3>Pomoc</h3> + +<p>Bogatym źródłem dokumentacji jest sam serwis WWW Debiana, czyli +<a href="http://www.debian.org">http://www.debian.org</a>. Na głównej stronie +widnieją informacje dotyczące całego projektu, jak i problemów z +bezpieczeństwem. Tym ostatnim został także poświęcony osobny serwis, +<a href="http://security.debian.org">http://security.debian.org</a>. Na uwagę +zasługuję ,,Weekly News'', czyli serwis z którego na bieżąco można +śledzić wydarzenia widziane oczami developerów. + +<p>Debian to produkt Internetu, podobnie z traktującymi o nim książkami. +Instrukcja <i>Guide to Installation and Usage</i> jest dostępna do +zainstalowania w formie pakietu <tt>debian-guide</tt>, jako dokument HTML oraz +PostScript. Oczywiście, pozostałe ,,obowiązkowe'' pozycje jak <i>Debian +FAQ</i>, czy <i>Debian Policy</i>, także są dostępne w formie pakietów +<tt>.deb</tt>. Dla tych, którzy wolą tradycyjną formę, wydawnictwo O'Reilly +przygotowało książkę <i>Learning Debian GNU/Linux</i>, choć zwolenników +Internetu ucieszy wiadomość, że jest ona także dostępna na stronach WWW +wydawnictwa. + +<p>Klasycznym źródłem pomocy są listy dyskusyjne. Debian serwisuje kilkanaście +list wysyłkowych, z czego najpopularniejsze to <i>debian-user</i> dla +użytkowników oraz <i>debian-devel</i> dla developerów. Zaprenumerować te listy +dyskusyjne można poprzez stronę WWW Debiana lub wysyłając list na adres +<i><nazwa-listy>-REQUEST@lists.debian.org</i> z tematem <i>subscribe</i>. +Zwrócić należy uwagę, że te popularne grupy są naprawdę popularne - co może +oznaczać ponad setkę listów dziennie. + +<p>Jeżeli kogoś stać na outsourcing, wystarczy zapoznać się z listą oficjalnych +konsultantów udzielających komercyjnej pomocy technicznej. Widnieje ona na +stronie WWW projektu. Oficjalni konsultanci oddają część dochodów ze swoich +usług na rzecz projektu Debiana, ponadto niektórzy z nich biorą bezpośredni +udział w projekcie. + +<h3>Zdobycie dystrybucji</h3> + +<p>Projekt Debian nie obejmuje dystrybucji systemu na płytach CD-ROM. W zamian +oferowane jest archiwum FTP oraz HTTP z aktualnymi pakietami (te z wersji +,,unstable'' zmieniają się codziennie) oraz oficjalne obrazy płyt CD +gotowe do wypalenia (tzw. <i>Official CD</i> w formie pliku ISO9660). +Oczywiście, dysponując zawartością archiwum oraz pakietem <tt>debian-cd</tt>, +każdy może stworzyć własną płytę, jednak oficjalna daje gwarancję oryginalności +oprogramowania. + +<p>Jeżeli jest to możliwe, warto skorzystać z jednego z wielu serwerów +lustrzanych Debiana. Oficjalna lista zawiera ponad 130 serwerów FTP i +przynajmniej połowę tej liczby serwerów HTTP. Nieoficjalnych serwerów chyba nikt +nie zliczy. Dla użytkowników sieci korporacyjnych szczególnie pomocne może być +skorzystanie z protokołu HTTP, jako że jest on bezproblemowo przenoszony przez +serwery pośredniczące (proxy). Dodatkowo jest wykorzystywany przez dyskietki +instalacyjne, a więc już dwie dyskietki wystarczą do zainstalowania Debiana - +reszta instalacji może odbyć się poprzez sieć. + +<p>Pod adresem <a href="http://cdimage.debian.org">http://cdimage.debian.org</a> +znajduje się serwis poświęcony obrazom płyt CD Debiana. Zalecana metoda +uzyskania oficjalnej płyty CD to utworzenie własnej z dostępnego na serwerze +FTP archiwum pakietów, a następnie wykonanie binarnego ,,załatania'' +obrazu płyty programem <tt>rsync</tt>. W ten sposób wystarczy tylko przesłać ok. +6 MB z oryginalnego serwera na jeden CD-ROM. Dokładny opis tej procedury można +znaleźć na wspomnianym serwisie. + +<p>Dla nie posiadających taniego dostępu do Internetu pozostaje kilkugodzinna +sesja w kafejce internetowej lub zakup płyty u któregoś z dystrybutorów. +Niektórzy dystrybutorzy współpracują z projektem Debian lub wręcz oddają część +swoich dochodów za płyty CD (ich lista jest dostępna na głównej stronie +projektu). Ceny są zwykle podobne, a nawet zawartość jest taka sama - w +szczególności gdy sprzedawane są oficjalne CD z Debianem; różnice tkwią w +premiowym kompakcie z dodatkami. Chętni do zakupów w USA muszą pamiętać, że ze +względów eksportowych nie można tam zakupić płyty z oprogramowaniem +kryptograficznym. + +<p>Najpopularniejszym chyba sposobem zdobycia Debiana jest prasa. Niestety, +czasopisma nie za bardzo lubią tę dystrybucję, przede wszystkim ze względów +objętościowych. Rozwiązaniem może być wybór ciekawszych pakietów, tak by +zmieściły się na jednym czy dwóch kompaktach, szkoda tylko że mało kto decyduje +się na taką własną edycję płyty. Mam nadzieję, że inicjatywa pisma LinuxPlus +spowoduje, że Debian przestanie być elitarną dystrybucją - naprawdę warto jest +ją lepiej poznać. + +<p><i>Specjalne podziękowania dla Iana Murdocka za wiele ciekawych informacji +pomocnych w przygotowaniu artykułu.</i> + +<p>Bibliografia oraz odsyłacze do pomocnych informacji (część z nich w języku polskim): + +<p> +<a href="http://www.debian.org">http://www.debian.org</a> - The Debian Project<br> +<a href="http://www.debian.org/intro/about.html">http://www.debian.org/intro/about.html</a> - About Debian<br> +<a href="http://www.debian.org/social_contract.html">http://www.debian.org/social_contract.html</a> - Debian Social Contract<br> +<a href="http://www.debian.org/intro/free">http://www.debian.org/intro/free</a> - What Does Free Mean?<br> +<a href="http://www.debian.org/doc/FAQ">http://www.debian.org/doc/FAQ</a> - Debian GNU/Linux FAQ<br> +<a href="http://www.debian.org/~elphick/manuals.html/project-history">http://www.debian.org/~elphick/manuals.html/project-history</a> - The Debian Project History<br> +<a href="http://www.debian.org/releases">http://www.debian.org/releases</a> - Debian Releases<br> +<a href="http://www.debian.org/ports">http://www.debian.org/ports</a> - Debian Ports<br> +<a href="http://www.debian.org/News">http://www.debian.org/News</a> - Latest News<br> +<a href="http://www.debian.org/security">http://www.debian.org/security</a> - Security Information + +<p> +<a href="http://www.openhardware.org">http://www.openhardware.org</a> - The Open Hardware Project<br> +<a href="http://www.fsf.org">http://www.fsf.org</a> - The Free Software Foundation<br> +<a href="http://www.gnu.org">http://www.gnu.org</a> - The GNU Project + +<p> +<a href="http://www.gnu.org/software/hurd/hurd.html">http://www.gnu.org/software/hurd/hurd.html</a> - GNU Hurd Operating System<br> +<a href="http://linux.corel.com">http://linux.corel.com</a> - Corel Linux<br> +<a href="http://www.stormix.com">http://www.stormix.com</a> - Storm Linux<br> +<a href="http://www.libranet.com">http://www.libranet.com</a> - Linux by Libranet + |