From f740bf5fbb7a921d29031185533f9e62e69f328d Mon Sep 17 00:00:00 2001 From: Konrad Bielak Date: Thu, 1 Dec 2005 12:07:40 +0000 Subject: New update. 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 --- polish/international/Polish/bezpieczny_debian.wml | 720 ++++++++++ polish/international/Polish/free.wml | 151 ++ polish/international/Polish/index.wml | 16 + polish/international/Polish/instalacja_potato.wml | 520 +++++++ polish/international/Polish/manifest.wml | 113 ++ .../Polish/polaczenie_z_internetem.wml | 280 ++++ polish/international/Polish/system_pakietow.wml | 1461 ++++++++++++++++++++ polish/international/Polish/wprowadzenie.wml | 19 + polish/international/Polish/wstep_do_debiana.wml | 616 +++++++++ 9 files changed, 3896 insertions(+) create mode 100644 polish/international/Polish/bezpieczny_debian.wml create mode 100644 polish/international/Polish/free.wml create mode 100644 polish/international/Polish/instalacja_potato.wml create mode 100644 polish/international/Polish/manifest.wml create mode 100644 polish/international/Polish/polaczenie_z_internetem.wml create mode 100644 polish/international/Polish/system_pakietow.wml create mode 100644 polish/international/Polish/wprowadzenie.wml create mode 100644 polish/international/Polish/wstep_do_debiana.wml (limited to 'polish/international/Polish') 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" + +

Debian GNU/Linux - bezpieczna stacja robocza

+ +

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.

+ +

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.

+ +

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ć.

+ +

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.

+ +

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ą".

+ +

Ważniejsze usterki systemu mogące prowadzić do naruszenia jego +bezpieczeństwa

+ +

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.

+ + + +

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.

+ +

Blokowanie dostępu do niepotrzebnych usług

+ +

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.

+ +

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.

+ +

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: + +

+ \#finger        stream  tcp     nowait  nobody  /usr/sbin/tcpd  /usr/sbin/in.fingerd
+
+ +

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.

+ +

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.

+ +

Instalacja i konfiguracja programu Secure Shell (SSH)

+ +

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.

+ +

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).

+ +

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.

+ +

Klienta ssh uruchamiamy poleceniem: +

+[tm:@ ~]$ ssh -l login host.pl 
+
+ +

Gdzie login jest nazwą konta, a host.pl adresem komputera na który chcemy +się zalogować. Potem już tylko musimy wpisać nasze hasło.

+ +

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 +cat identity.pub >> authorized_keys. Od teraz możemy logować się na nasze +konto na tym serwerze bez podawania hasła.

+ +

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.

+ +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. + +

Program SSLtelnet

+ +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): +
+[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 
+
+Musimy usunąć stare wersje telnet i telnetd: +
+[root]# dpkg --purge telnet 
+[root]# dpkg --purge telnetd 
+
+Teraz możemy przystąpić do instalacji programu: +
+[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 
+
+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). + +

Icmplogd i Tcplogd - programy logujące próby nawiązywania +połączeń

+ +

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.

+ +

Tripwire - sprawdzanie sum kontrolnych plików

+

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.

+ +

Programy SUID i SGID

+

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:

+ +
+[root]# find / -type f -user root -perm -04000 -ls 
+
+ +Oraz dla SGID: + +
+[root]# find / -type f -user root -perm -02000 -ls 
+
+ +

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. + +

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. + +

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. + +

Filtrowanie połączeń przychodzących - program tcpd

+ +

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. + +

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). + +

To tylko najprostsze przykłady. Bardziej szczegółowe informacje można +znaleźć na stronie podręcznikowej tcpd(8) (man 8 tcpd). + +

Syslogd -kontrola pracy systemu

+ +

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. + +

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> + +

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. + +

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). + +

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ę). + +

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. + +

Kilka przykładów możliwych konfiguracji możemy zobaczyć na wydruku 4. + +

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ć. + +

Rekompilacja jądra systemu

+ +

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). + + +

Ustawianie ograniczeń powłoki

+ +

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ń. + +

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). + +

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. + +

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. + +

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ć. + +

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). + +

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: + + +

access.conf - dostęp do login: określamy użytkowników, adres źródłowy, +rodzaj działania (+ - przyjęcie, - - odrzucenie); + +

group.conf - dostęp do grup: usługa, terminal, użytkownik, czas +obowiązywania, grupa (lub grupy); + +

limits.conf - zasoby: użytkownik (może też być grupa), typ limitu (miękki +lub twardy), rodzaj oraz wartość; + +

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); + +

time.conf - ograniczenia czasowe: usługa, terminale, użytkownik, czas +obowiązywania + +

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ć. + +

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. + +

Ogólne wzory bezpiecznego użytkowania systemu - polityka ograniczonego +zaufania + +

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. + +

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. + +

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. + +

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" + +

Co znaczy "free"?

+ +czyli + +

Co rozumieć pod pojęciem ogólnodostępnego oprogramowania?

+ +

Informacja: W lutym 1998 roku zdecydowano się zastąpić termin Free +Software (który możemy tłumaczyć jako "oprogramowanie darmowe") +pojęciem Open Software ("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). + +

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 Free Software mamy na myśli wolność, +a nie cenę. + +

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. + +

Prawdziwe oprogramowanie "free" jest zawsze ogólnodostępne. +Programy udostępniane na zasadzie "dobra publicznego" (ang. public +domain) 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ę. + +

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. + +

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 +http://lcweb.loc.gov/copyright. + +

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: + +

+ +

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: + +

+ +

Dokumenty te mają pewne cechy wspólne: + +

+ +

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.) + +

Chociaż oprogramowanie ogólnodostępne nie jest całkowicie wolne od ograniczeń +(tylko udostępnienie na zasadzie public domain 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ść. + +

Debian GNU/Linux silnie wspiera oprogramowanie ogólnodostępne. Ponieważ +programy opierają się na wielu różnych licencjach, został opracowany zestaw +wskazówek Debian Free Software Guidelines (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 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 +

  • 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: + +
  • +
  • Jarosław Spirydowicz opracował polską mapę klawiatury w układzie maszynistki na konsolę dla PPC. Dostępne są wersje dla ``new input layer'' 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" + +

    Instalujemy Potato

    + +

    Wymagania sprzętowe i programowe

    + +

    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. + +

    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 Linux Hardware Compatibility HOWTO +(http://www.linuxdoc.org/HOWTO/Hardware-HOWTO.html). + +

    Kopie zapasowe i inne środki ostrożności

    + +

    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. + +

    Przygotowanie partycji

    + +

    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 Partition Magic, +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 First nondestructive Interactive +Partition Splitting - 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. + +

    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) +CHKDSK, SCANDISK, Norton Disk Doctor 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 sys a: lub +format a:/s; w przypadku Windows NT i OS/2 także istnieją odpowiednie +polecenia. Następnie kopiujemy na nią pliki RESTORRB.EXE, +FIPS.EXE i ERRORS.TXT. 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 defrag 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 +fips (lub a:\fips) i możemy przystąpić do partycjonowania. +W każdej chwili możemy opuścić menu za pomocą kombinacji klawiszy CTRL-C. +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 ENTER otrzymamy +nową tablicę partycji - wprowadzając y zatwierdzamy zmiany; sprawdzenia +możemy dokonać wciskając klawisz c. 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. + +

    Start instalatora

    + +

    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. + +

      +
    1. CD-ROM
      +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. +

      Alternatywna metoda polega na uruchomieniu pod DOS-em skryptu +boot.bat znajdującego się w katalogu \install na pierwszej +płycie. Może to być pomocne, gdy program instalacyjny mimo wszystko nie chce +wystartować po zmianach w konfiguracji. + +

    2. partycja DOS
      +Możemy rozpocząć instalację z systemu DOS. W tym celu musimy: + +
        +
      1. Skopiować (z płyty lub mirrora FTP Debiana) następujące pliki na naszą +partycję: +
        +
        + disks-1.20/rescue.bin, disks-1.20/safe/rescue.bin, +
        +
        + disks-1.44/rescue.bin, disks-1.44/safe/rescue.bin, +
        +
        + disks-2.88/rescue.bin, disks-1.20/root.bin, + disks-1.44/root.bin, +
        +
        + drivers.tgz, base2_2.tgz, linux, + install.bat i loadlin.exe +
        +
        + +
      2. Uruchomić system DOS bez dodatkowych sterowników (należy w odpowiednim +momencie nacisnąć F8), + +
      3. Uruchomić plik install.bat. + +
      + +
    3. partycja z systemem plików ext2fs (Linux) lub Minix
      +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. + +
    4. Dyskietka
      +W każdym innym przypadku musimy użyć dyskietek. Ich obrazy zapiszemy za pomocą +programu rawrite2 (\tools\rawrite2 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: + +

      rawrite2 -f <obraz> -d <dysk> + +

      Gdzie <obraz;> to lokalizacja pliku z obrazem, a <dysk> to a: albo +b: zależnie od oznaczenia napędu dyskietek. + +

      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 \disks-1.44\rescue.bin 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 +boot:. + +

      Oczywiście, możemy używać dyskietek innego formatu niż 3,5-calowe. +Odpowiednie pliki znajdują się w katalogach disks-1.20 (dyskietki 5.25) +i disks-2.88. + +

      Po wykryciu i pomyślnym załadowaniu instalatora powinniśmy zobaczyć znak +zachęty boot:. Gdy naciśniemy <ENTER>, 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 BootPrompt +HOWTO ( +http://www.linuxdoc.org/HOWTO/BootPrompt-HOWTO.html). Pomoc i dodatkowe +informacje dostępne są po naciśnięciu <F1>. + +

    + +

    Instalacja i konfiguracja systemu podstawowego (Base System)

    + +

    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 (<TAB>), zmiany zatwierdzamy +klawiszem <ENTER>. W każdej chwili możemy też przełączyć się do +trybu konsolowego kombinacją <ALT+F2>. + +

    Etapy instalacji

    + +
      +
    1. Konfiguracja układu klawiatury
      +Musimy wybrać odpowiedni układ klawiatury. Później ustawienia te możemy dowolnie +zmienić (służy do tego polecenie kbdconfig). Dlatego też proponuję +zdecydować się na początek na qwerty/us, gdyż układ polski +(qwerty/pl) możemy uaktywnić po zainstalowaniu wymaganych fontów. + +
    2. Partycjonowanie dysku
      +Teraz za pomocą programu cfdisk należy stworzyć odpowiednią partycję, +czyli Linux native oraz opcjonalnie partycję wymiany (Linux swap). +Użyjemy do tego wcześniej wygospodarowanego miejsca (patrz Przygotowanie +partycji). 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 New, aby utworzyć nową partycję główną (Primary). +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 +<ENTER> - 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 New, +podajmy rozmiar i określmy Type jako Linux swap, czyli numer 82. +Wszystko jeszcze raz sprawdzamy (pomyłki nie dałoby się naprawić!) i zapisujemy +zmiany. + +
    3. Inicjalizacja partycji wymiany (Linux swap)
      +Podajemy nazwę urządzenia odpowiadającego naszej partycji (np. +/dev/hda4 - patrz dodatek Przykładowe nazwy urządzeń w +Linuksie). + +
    4. Inicjalizacja partycji głównej (Linux native)
      +Tu także podajemy symbol odpowiedniego urządzenia (np. /dev/hda3). +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. +root filesystem) na partycji podstawowej. + +
    5. Instalacja jądra systemu i modułów
      +Zostaniemy zapytani o źródło, z którego chcemy pobrać wspomniane komponenty. +Mamy kilka możliwości: + +
        +
      1. cdrom
        +Jeśli napęd nie został wykryty, podajemy symbol reprezentującego go urządzenia +(np. /dev/hdc), a następnie katalog z systemem i obrazem dyskietki +ratunkowej (Rescue Floppy) znajdujący się na płycie. + +
      2. /dev/fd0 (pierwsza stacja dysków) + +
      3. /dev/fd1 (druga stacja dysków) +

        W obu przypadkach musimy dysponować obrazami trzech "Driver +Floppies" - driver-1.bin, driver-2.bin i +driver-3.bin. Znajdują się one w katalogach disks-1.20 i disks-1.44 +(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ą rawrite2 (tak jak to zostało +opisane w części Start instalatora). Nie należy też zapominać o +potrzebnej w trakcie instalacji dyskietce ratunkowej. + +

      4. harddisk (partycja na dysku twardym)
        +Powinniśmy podać symbol partycji oraz informacje konieczne do zlokalizowania na +niej jądra i sterowników. + +
      5. mounted (poprzednio zamontowany system plików)
        +Tak jak w poprzednim przypadku, należy podać miejsce gdzie znajdują się +odpowiednie moduły. + +
      6. nfs (Network File System)
        +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. + +
      7. network (instalacja przez sieć)
        +Tutaj także musimy wcześniej skonfigurować sieć. Następnie podajemy adres +serwera FTP i ścieżkę. + +
      + +
    6. Konfiguracja modułów
      +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 modconf +(lub ponownej kompilacji jądra systemu). Dostępne części to: +
        +
      1. block devices - Sterowniki dysków i napędów; + +
      2. cdrom - Sterowniki do różnych rodzajów napędów CD; + +
      3. fs - Włączanie obsługi innych systemów plików; + +
      4. ipv4 - Specjalne opcje protokołu IP; + +
      5. ipv6 - Opcje protokołu IP w wersji 6; + +
      6. misc - Dużo różnych modułów dotyczących urządzeń peryferyjnych takich +jak np. karty dźwiękowe; + +
      7. net - Protokoły i karty sieciowe; + +
      8. SCSI - Urządzenia SCSI; + +
      9. video - Moduły związane z systemem Video4Linux; + +
      + +
    7. Konfiguracja sieci
      +Nawet jeśli nie zamierzamy wykorzystywać naszego Debiana w sieci LAN lub łączyć +się z Internetem, musimy ustawić niektóre z poniższych opcji. + +
        +
      1. nazwa komputera
        +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). +

        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ć Nie) odpowiemy twierdząco, czeka nas jeszcze kilka +dodatkowych kroków. + +

      2. adres IP
        +Adres IP komputera w sieci. + +
      3. maska podsieci
        +Maska podsieci. + +
      4. adres IP bramki/routera
        +Adres IP domyślnego routera w naszej sieci. + +
      5. nazwa domeny
        +Możemy wypełnić to pole nazwą domeny przypisanej do naszej sieci (nie jest to +konieczne). + +
      6. serwery nazw
        +Do trzech adresów IP (oddzielonych spacjami) używanych serwerów DNS. +

        Dane można później skorygować w skryptach startowych +(/etc/init.d/network) oraz plikach /etc/hosts i +/etc/resolv.conf. + +

      + +
    8. Instalacja systemu podstawowego (Base System)
      +Również tutaj musimy podać nośnik instalacyjny (wybór mamy taki sam jak w +przypadku instalacji jądra - patrz Instalacja jądra systemu i modułów). +Potrzebne będą także informacje konieczne do zlokalizowania pliku +base2_2.tgz zawierającego system (znajduje się na pierwszej płycie CD). +Wyjątkiem są naturalnie dyskietki - w katalogach disks-1.44 i +disks-1.20 mamy przygotowane obrazy w formacie +base-<numer>.bin, 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. + +
    9. Konfiguracja systemu
      +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 Poland albo po prawej Europe a później Warsaw. 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 (local time). Odpowiadamy Tak - +chcę zmiany na GMT 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 local time. + +
    10. Start Linuksa bezpośrednio z dysku twardego
      +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 (LInux LOader), 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. + +

      Konfiguracja LILO (LInux LOader)
      +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 lilo (sekcja +base). W /usr/doc/lilo oraz na stronach lilo(8) i +lilo.conf(5), a także w pakiecie lilo-doc znajduje się +obszerna dokumentacja. Plik konfiguracyjny to /etc/lilo.conf i na jego +przykładzie można omówić odpowiednie ustawienia (listing 1). Po dokonaniu zmian, +jako użytkownik root wpisujemy w wierszu poleceń lilo 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 lilo (zamazując +zawartość boot sektora). Gdy tak się stanie, należy uruchomić Linuksa z +dyskietki startowej a następnie wywołać program /sbin/lilo (wpisując +lilo). + +

    11. Tworzenie dyskietki systemowej
      +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ć. + +

      Dalej mamy jeszcze opcje dotyczące kontroli wcześniejszych ustawień +("Przejrzyj tablicę partycji", "Restart +instalatora"), 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 Reboot the System - powodzenia! +(nie zapomnijmy przywrócić ustawień First Boot Device w BIOS-ie - to +bardzo częste przeoczenie). + +

    12. Pozostałe składniki
      +Przechodzimy do ostatniego etapu instalacji - tutaj nie powinno już być żadnych +problemów. + +
        +
      1. Hasła kodowane algorytmem MD5?
        +Odpowiedź twierdząca pozwoli nam na ustawianie haseł dłuższych niż 8 znaków i +kodowanych trudniejszym do złamania metodą brute force. Mając na uwadze +bezpieczeństwo, radzę odpowiedzieć Tak. + +
      2. Obsługa shadowingu haseł (Shadow Password Support)?
        +Zamiast w dostępnym do czytania dla wszystkich pliku /etc/passwd, +zakodowane hasła będą przechowywane w /etc/shadow, 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ć Tak. + +
      3. Hasło superużytkownika
        +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 Debian GNU/Linux - bezpieczna stacja robocza). +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ć. + +
      4. Stworzenie zwykłego użytkownika
        +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). + +
      5. Usunięcie obsługi PCMIA
        +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. + +
      6. Profile instalacyjne i pozostałe pakiety
        +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 cdrom, http, ftp i +filesystem (inny system plików). Możemy też ręcznie skonfigurować plik +/etc/apt/sources.list, tak żeby zawierał odpowiednie ścieżki (później +więcej informacji można znaleźć na stronie sources.list(5)). 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 advanced, musimy liczyć się z +niespodziankami, gdyż ciężar instalacji przejmie na siebie narzędzie o nazwie +dselect. 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 +dselect znajdziemy w dokumencie dselect-beginner (znajduje się +na pierwszej płycie w katalogu install/documentation). Na początek +jednak polecam simple - później możemy doinstalować interesujące nas +programy przy użyciu dpkg. + +
      7. Logowanie
        +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ą. + +
      + +
    + +

    Dziękuję Michałowi Piskadło za udostępnienie sprzętu. + +

    Przykładowe nazwy urządzeń w Linuksie (Dodatek) + +

    +/dev/hda - pierwszy dysk IDE
    +/dev/hdb - drugi dysk IDE
    +/dev/hdc - trzeci dysk IDE (zwykle IDE CD-ROM) + +

    +/dev/hda3 - trzecia partycja pierwszego dysku
    +/dev/hdb1 - pierwsza partycja drugiego dysku + +

    +/dev/sda - pierwszy dysk SCSI
    +/dev/sdb - drugi dysk SCSI + +

    +/dev/sda2 - druga partycja pierwszego dysku (SCSI) + +

    +/dev/fd0 - pierwsza stacja dysków
    +/dev/fd1 - druga stacja dysków + +

    +/dev/lp0 - pierwszy port równoległy (drukarki) (LPT1)
    +/dev/lp1 - drugi port równoległy (na niektórych maszynach może to być +właśnie LPT1) + +

    +/dev/psaux - port PS/2 + +

    +/dev/js0 - joystick 1
    +/dev/js1 - joystick 2 + +

    +/dev/ttyS0 - port szeregowy COM1
    +/dev/ttyS1 - port szeregowy COM2
    +/dev/ttyS2 - port szeregowy COM3 + +

    +/dev/tty0 - pierwsza konsola użytkownika root
    +/dev/tty1 - pierwszy wirtualny terminal (konsola)
    +/dev/tty6 - szósty wirtualny terminal + +

    +/dev/ttyp1 - pierwszy pseudoterminal
    +/dev/ttyp4 - czwarty pseudoterminal + +

    Więcej informacji na stronie podręcznikowej MAKEDEV(8). + 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" + +

    The Debian Linux Manifesto

    + +autor: Ian A. Murdock
    +poprawione 01/06/94 + +

    Czym jest Debian Linux?

    + +

    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. + +

    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ę Free Software Foundation na płytach +CD-ROM, a stowarzyszenie Debian Linux Association 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. + +

    Dlaczego tworzony jest Debian?

    + +

    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. + +

    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ść. + +

    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. + +

    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 Softlanding Linux System (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. + +

    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ć. + +

    Jak Debian ma rozwiązać te problemy?

    + +

    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ą. + +

    Debian Linux będzie także udostępniany na fizycznych nośnikach przez +fundację Free Software Foundation oraz stowarzyszenie Debian Linux +Association. 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. + +

    Fundacja Free Software Foundation 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. + +

    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" + +

    Połączenie z Internetem

    + +

    Jak prosto i szybko zestawić połączenie PPP za pomocą dostępnych w naszej +dystrybucji narzędzi

    + +

    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 (Point-to-Point +Protocol) 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. + +

    Co nam będzie potrzebne

    + +

    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 +ppp (w Potato numer wersji to 2.3.11-1.1) zawierającego niezbędny +demon pppd oraz program chat. Gdy nie mamy jeszcze w +katalogu /dev stworzonych urządzeń oznaczających porty szeregowe +(są to odpowiednio ttyS0 - COM1, ttyS1 - COM2, +ttyS2 - COM3 itp. ), należy tworzymy je za pomocą skryptu +MAKEDEV: + + +[root]# cd /dev +[root]# /MAKEDEV ttySx <gdzie ,,x'' to ,,numer portu - 1''> + + +

    Warto też stworzyć specjalne dowiązanie: + + +[root]# ln -s /dev/ttyS1 /dev/modem <gdy mamy modem na COM2> + + +

    W /etc/syslog.conf powinniśmy dodać następujący wiersz (jeśli +jeszcze jej tam nie ma): + + +*.* -/var/log/ppp.log <pierwszą gwiazdkę możemy zastąpić nazwą podsystemu +logowania np. local0 czy local2> + + +

    Istotne jest ustawienie adresów serwerów DNS (Domain Name System) w +pliku /etc/resolv.conf, 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 resolv.conf(5) +(man 5 resolv.conf). 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): + + +nameserver 194.204.152.34
    +nameserver 194.204.159.1 +
    + +

    Dalsze wymagania zależą od metody, którą wybierzemy. Gdy zamierzamy +,,pójść na łatwiznę'' (część pierwsza, ,,Inteligentny'' +WvDial), potrzebny nam będzie pakiet wvdial_1.41 (sekcja comm, +numer wersji jak w Potato). W przypadku drugiego sposobu (opisanego w kolejnym +rozdziale), nie obejdzie się bez pppconfig_2.0.4 (Potato). Gdy +zdecydujemy się na sposób trzeci (część Połączenie w środowisku +KDE - kppp), wymagane jest zainstalowanie środowiska KDE (pakiety +zaczynające się od kde* z różnych sekcji działu contrib). + +

    ,,Inteligentny'' WvDial

    + +

    Program wvdialconf 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 +pppd. Jednak w przypadku późniejszych problemów z połączeniem, warto +sięgnąć po pppconfig. Cała konfiguracja znajduje się w pliku +/etc/wvdial.conf (wydruk 4). Możemy ją później ręcznie aktualizować +(gdy chcemy wyłącznie zmienić ustawienia modemu, wykonujemy polecenie +# /usr/sbin/wvdialconf /etc/wvdial.conf). Opcje pppd +umieszczone są w /etc/ppp/peers/wvdial. Więcej informacji o +formacie pliku /etc/vwdial.conf znajdziemy na stronach +podręcznikowych wvdial(1) oraz wvdialconf(1). + +

    Konfiguracja i połączenia przy użyciu pppconfig

    + +

    Jedynym zadaniem graficznej nakładki o nazwie pppconfig jest +pomoc w ustawianiu i uruchomienie połączenia PPP. Gdy już stworzymy w ten +sposób odpowiednie wpisy w plikach konfiguracyjnych pppd +(Point-to-Point Protocol Daemon), możemy się łączyć i rozłączać przy +użyciu specjalnych skryptów: pon oraz poff. W katalogu +/etc/ppp znajdziemy większość interesujących nas informacji (te +dotyczące konkretnych połączeń znajdują się w +/etc/ppp/peers/nazwa_polaczenia). W plikach +/etc/chatscripts/nazwa_polaczenia możemy obejrzeć skrypty +programu chat służącego do przeprowadzania ,,negocjacji'' +między naszym i zdalnym demonem pppd (lub też między naszym +komputerem i modemami - zależy od punktu widzenia). Również one są tworzone za +pomocą pppconfig. Oto kolejne kroki całej procedury: + +

      + +
    1. Uruchamiamy jako użytkownik root program pppconfig poleceniem +/usr/sbin/pppconfig. 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). + +
    2. W pierwszym oknie wybieramy Create a connection. + +
    3. Następnie ustawiamy nazwę połączenia. Gdy nie zamierzamy tworzyć innych, to po +prostu zostawmy provider - wtedy pozostanie domyślne (i możemy odwoływać +się do niego za pomocą poleceń pon i poff bez podawania +nazwy). W tym przykładzie postępujemy jednak inaczej - wpisujemy tpsa. + +
    4. 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). + +
    5. Tu wpisujemy hasło (w przypadku gdy zawiera spacje i inne dziwne znaki, należy +koniecznie ująć je w podwójny cudzysłów) - ppp. Teraz przechodzimy do +podstawowej konfiguracji. + +
    6. Nazwa użytkownika - ppp. + +
    7. Port, na którym mamy modem. Dla COM2 będzie to /dev/ttyS1 (należy +postępować zgodnie z konfiguracją własnego systemu - sposób przyporządkowania +urządzeń portom został omówiony na wstępie). + +
    8. Na pytanie Czy użyć domyślnego routera w zdalnej sieci? w większości +przypadków odpowiemy twierdząco. Zaznaczamy (spacją) Enable default +route. + +
    9. Tutaj wpisujemy nasz adres IP, jeżeli jest statyczny. Ponieważ w przypadku +naszego numeru zostanie przydzielony dynamicznie, zostawiamy noipdefault. + +
    10. Szybkość modemu. Najlepiej nie zmieniać domyślnej wartości, czyli 115200. + +
    11. Sposób inicjalizacji modemu. Powinniśmy pozostać przy ATZ, chyba że +mamy uzasadnione powody, by użyć innego ustawienia. + +
    12. Numer telefonu. U nas 0202122. + +
    13. Rodzaj wybierania. Tonowe (ATDT) lub pulsowe (ATDP). W przypadku większości +central telefonicznych zaznaczamy to pierwsze. + +
    14. Możemy jeszcze raz przejrzeć konfigurację. Wybranie Finished spowoduje +zapisanie zmian. + +
    + +

    Teraz już możemy nawiązać połączenie wpisując (jako superużytkownik) +pon tpsa, a przerwać je poleceniem poff tpsa. Gdy chcemy +uruchamiać te skrypty z uprawnieniami zwykłego użytkownika +(/usr/sbin/pppd ma bit SUID i jest własnością użytkownika root), +powinniśmy dodać go do grup dialout i dip, zmieniając odpowiednio plik +/etc/group (a także /etc/gshadow, jeśli taki posiadamy). +Aby dowiedzieć się jak to zrobić, należy zajrzeć na stronę podręcznikową +group(5). + +

    Połączenie w środowisku KDE - kppp

    + +

    Nie zawsze konieczne jest użycie pppconfig. Posiadając +zainstalowane środowisko graficzne KDE, dysponujemy programem kppp +doskonale sprawdzającym się w tej samej roli. Żeby zacząć z niego korzystać, +musimy usunąć opcję lock z pliku /etc/ppp/options (kppp +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 kppp 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 /dev/ttyS1 jest własnością +grupy dialout i ma prawa dostępu 644, jako root musimy wykonać polecenie +chmod 664 /dev/ttyS1. Oto krótka instrukcja konfiguracji omawianego +narzędzia. (Zakładam, że wcześniej zmieniono już w KDE domyślny język na polski) + +

      + +
    1. Uruchamiamy kppp z menu (pozycja Internet) lub z emulatora +terminala (wpisując kppp). + +
    2. 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 +Opcje...->Nowe... + +
    3. W pierwszym okienku (Dzwonienie) wpisujemy: +
      +
      Nazwa połączenia: tpsa
      +
      + Numer telefonu: 0202122 <jeśli musimy używać wybierania + pulsowego, na początku numeru dodajemy literę ,,P'' np. + P0202122> +
      +
      Identyfikacja: CHAP
      +
      + Reszta nie ma większego znaczenia - możemy ją zmieniać według naszego uznania. +
      +
      + +
    4. Adres IP - pozostawiamy Dynamiczny + +
    5. DNS - najlepiej nie wpisywać tu nic, a opcję Dezaktywuj istniejące +DNS w czasie połączenia pozostawić niezaznaczoną. Stosowane będą wtedy +serwery nazw, których adresy umieszczone są w pliku /etc/resolv.conf. + +
    6. Router - pozostawiamy Domyślny router + +
    7. W oknie Skrypt logowania nie wpisujemy nic, ponieważ nie zamierzamy +korzystać z tego typu identyfikacji. Opcjonalnie możemy sobie ustawić +zliczanie kosztów połączenia (Koszty) - musimy wtedy odwołać się do +Poland->Poland Local. Zamykamy Ustawienia połączenia i +przechodzimy do innych zakładek. + +
    8. Port: +
      +
      Port szeregowy: /dev/ttyS1
      +
      Szybkość portu: 115200
      +
      + Zaznaczmy też Używaj pliku blokującego, resztę pozostawmy bez zmian +
      +
      + +
    9. W następnej części (Modem) możemy sprawdzić działanie naszego modemu, +w kolejnej (PPP) 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. + +
    10. Zamykamy Opcje..., wpisujemy hasło i nazwę użytkownika w widoczne na +panelu miejsce. Możemy włączyć podgląd terminala (opcja Pokaż podgląd). +Klikamy Połącz. + +
    + +

    Teraz powinniśmy już słyszeć nasz modem. Miłej zabawy! + +

    Podsumowanie

    + +

    W Potato istnieje jeszcze kilka metod zestawienia połączenia. Jako przykład +można wymienić program z pakietu minicom_1.82.1-1 (sekcja comm), czy +też skrypty związane z narzędziem ifconfig. 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" + +

    System pakietów Debiana

    + +Autor: Piotr Roszatycki + +

    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. + +

    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. + +

    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. + +

    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 tar lub ar. 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. + +

    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. + +

    Koncepcja systemu pakietów Debiana

    + +

    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. + +

    Koncepcja systemu pakietów Debiana opiera się na kilku założeniach: + +

    + +

    Pakiet binarny (*.deb)

    + +

    Podstawę dystrybucji Debiana stanowi pakiet binarny, czyli plik +*.deb. 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. + +

    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. + +

    Format pliku *.deb jest zgodny z formatem archiwum programu +ar. Oznacza to, że do rozpakowania pliku *.deb można +wykorzystać polecenie ar x nazwa-pliku.deb, co niekiedy przydaje się, +gdy w systemie brakuje polecenia dpkg. Archiwum składa się z kilku +części zwanych członkami archiwum. Pierwszym członkiem archiwum jest plik +debian-binary zawierający numer wersji formatu archiwum. Obecnie jest +to format 2.0, co można sprawdzić poleceniem file nazwa-pliku.deb. + +

    Kolejnym elementem pliku *.deb jest archiwum kontrolne +control.tar.gz. Ponieważ znajduje się ono na początku pliku pakietu, +tuż za numerem wersji, aby pobrać informacje o tym pakiecie wystarczy odczytać +początek pakietu. + +

    Niektóre pliki tego archiwum są rozpoznawane przez program dpkg lub +inne programy. Część z nich jest opcjonalna. + +

    control
    +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 debian/control z pakietu źródłowego za pomocą narzędzi +dpkg-gencontrol oraz dpkg-shlibdeps. +

    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. + +

    preinst
    +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. + +

    postinst
    +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 postinst wykonuje +także czynności niezbędne do poprawnego działania pakietu (np. polecenie +ldconfig dla pakietu z bibliotekami) lub uruchamia dany serwis +wywołując odpowiedni skrypt z katalogu /etc/init.d. + +

    prerm
    +Program wykonywany przed usunięciem pakietu lub jego aktualizacją. Zwykle +zatrzymuje uruchomione usługi związane z pakietem. + +

    postrm
    +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. + +

    shlibs
    +Plik pojawia się w pakietach zawierających biblioteki dynamiczne i +wykorzystywany jest przez program dpkg-shlibdeps do ustalania +zależności od pakietów zawierających biblioteki dynamiczne. + +

    md5sums
    +Dodatkowy plik zawierający sumy kontrolne, które mogą posłużyć do sprawdzenia +spójności zainstalowanego pakietu za pomocą narzędzia debsums. Plik ten +nie jest częścią oryginalnego systemu pakietów i nie pojawia się we wszystkich +pakietach. + +

    templates, config
    +Pliki wykorzystywane przez system zarządzania konfiguracją Debconf. +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. + +

    conffiles
    +Plik zawierający listę plików konfiguracyjnych. Po obliczeniu sum kontrolnych +MD5 tych plików, lista zostanie dołączona do pliku +/var/lib/dpkg/status. + +

    Pliki archiwum kontrolnego control.tar.gz mają swoje +odzwierciedlenie w postaci plików katalogu /var/lib/dpkg/info/. Przed +nazwą danego pliku dodawana jest nazwa pakietu, po czym dany plik umieszczany +jest w tym katalogu, jako np. +/var/lib/dpkg/info/nazwa-pakietu.postinst. Plik control wyjątkowo +dołączany jest do bazy danych zainstalowanych pakietów, czyli do pliku +/var/lib/dpkg/status, zaś lista plików zawartych w pakiecie zapisywana +jest jako /var/lib/dpkg/info/nazwa-pakietu.list. + +

    Skoro znamy format danych przechowywanych w bazie systemu pakietów i dobrze +władamy standardowymi poleceniami cat, ls, grep, +sed i innymi, zyskujemy nieograniczone możliwości operowania danymi +pakietu. + +

    W pliku *.deb przewidziano także miejsce dla przyszłych członków +archiwum. Ostatnie miejsce jest zarezerwowane na archiwum z danymi +data.tar.gz. Archiwum to jest zwykłym, skompresowanym archiwum +tar, zawierającym pliki i katalogi, które zostaną zainstalowane w +systemie. Jak już zostało wspomniane, lista tych plików jest zapisywana do pliku +*.info w odpowiednim katalogu. + +

    Nazwa pliku binarnego może być praktycznie dowolna, gdyż brane są pod uwagę +informacje pobrane z pliku kontrolnego control. 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 +.deb. 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: + +

    nazwa-pakietu_1.2.3wersjazrodla-4wersjapakietu_i386.deb + +

    Pakiet źródłowy (*.dsc)

    + +

    Pakiet binarny Debiana jest budowany na podstawie zawartości katalogu +roboczego +dla programu dpkg-deb. Zawartość katalogu roboczego, wraz z plikami, +trafia do pakietu binarnego do archiwum data.tar.gz, z wyjątkiem +podkatalogu DEBIAN/, który tworzy archiwum kontrolne +control.tar.gz. 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. + +

    Proces przygotowania pakietu źródłowego polega na rozpakowaniu oryginalnego +źródła i zmianie nazwy katalogu ze źródłami na +nazwa-pakietu-123numer.4oryginalnej5.wersji6. W tym katalogu tworzymy +dodatkowo podkatalog debian/ w którym umieszczamy niezbędne pliki +(debian/control, debian/changelog, debian/rules). +Taka operacja przygotowania pakietu źródłowego Debiana nazywa się +,,debianizacją''. + +

    Charakterystyczne dla pakietów źródłowych Debiana jest to, że składają się z +kilku plików scalonych oddzielnym plikiem *.dsc. Jeżeli oryginalne +źródło nie jest napisane bezpośrednio dla dystrybucji Debiana, to znajduje się w +pliku *.orig.tar.gz. Dodatkowe poprawki do tego źródła, jak i cały +katalog źródłowy debian/, znajdują się w kolejnym pliku +*.diff.gz, 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 *.orig.tar.gz +występuje plik *.tar.gz (bez przyrostka ,,orig''). + +

    Plik *.dsc zawiera opis pakietu źródłowego. Jest on odpowiednikiem +pliku control 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. + +

    Ze względów bezpieczeństwa, plik *.dsc 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. + +

    Aby można było uznać pakiet źródłowy za poprawny, po rozpakowaniu musimy +otrzymać katalog ze źródłami oraz specjalny podkatalog debian/. W tym +podkatalogu muszą się znaleźć co najmniej trzy pliki: + +

    + +
    debian/control +
    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. +
      + +
    debian/changelog +
    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. +
      + +
    debian/rules +
    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 Makefile, ale program może +mieć zupełnie dowolną postać - np. skryptu powłoki. + +
    + +

    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. + +

    Pakiet dystrybucyjny (*.changes)

    + +

    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 +*.changes w formacie pliku kontrolnego Debiana. + +

    Plik *.changes 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 *.dsc, +ten także może być podpisany elektronicznie. + +

    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. + +

    Informacje dla systemu pakietów (control)

    + +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ą. + +

    Przykładem wykorzystania tej formy przechowywania danych może być choćby +książka telefoniczna: + +

    +Tytuł: Ania
    +Telefon: 23789343
    +Opis: Koleżanka z pracy, ale nie tylko... + +

    +Tytuł: Policja
    +Telefon: 997
    +Opis: Najbliższy posterunek policji + +

    +Tytuł: Internet
    +Telefon: 0202122
    +Opis: tak zwany bezpłatny numer dostępowy
    +.
    +użytkownik: ppp, hasło: ppp
    +Modem: tak + +

    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. + +

    Package
    +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. + +

    Version
    +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. + +

    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: + +

    + +
    epoka +
    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. +
      +
    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. +
      +
    dpkg wyświetla numer epoki tylko wtedy, gdy jest on większy od +zera. dselect w ogóle pomija ten numer, wyświetlając jedynie numer +wersji źródła i numer wersji pakietu. +
      + +
    numer wersji oryginalnego źródła +
    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). +
      +
    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. +
      + +
    numer wersji pakietu +
    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. +
      +
    Jeżeli pakiet został zbudowany bezpośrednio dla dystrybucji Debiana, jak np. +dpkg, kernel-package itd., numer ten jest pomijany gdyż zmiany +w numeracji dotyczą jedynie numeru wersji oryginalnego źródła. +
      +
    Przyjęte jest, że po zmianie numeru wersji oryginalnego źródła numer wersji +pakietu rozpoczyna się znów od jedynki. +
      +
    Gdy brak jest tego numeru, dpkg przy porównywaniu wersji przyjmie +jedynkę za numer wersji pakietu. +
      +
    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. +
      +
    Oto przykładowe wyniki takiego porównywania: 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 +
      +
    W dwóch ostatnich przypadkach brak numeru wersji pakietu binarnego oznacza, +że ,,jest mniejszy'' od 1 ale ,,jest większy'' od 0. + +
    + +

    Architecture
    +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. + +

    Obecnie dpkg obsługuje architektury i386, sparc, +sparc64, alpha, m68k, arm, powerpc, +mips oraz mipsel dla systemu operacyjnego Linux. dpkg +został także przeniesiony na system operacyjny HURD - jest on przeznaczony dla +procesorów Intela, a więc nazwa tej architektury to hurd-i386. + +

    Znane są próby przeniesienia dpkg na inne systemy, m.in. +Solaris, HP-UX, IRIX, FreeBSD, jednak oficjalnie +dpkg nie obsługuje tych systemów. + +

    Specjalnym oznaczeniem architektury jest all, które mówi, że pakiet +binarny nie jest zależny od konkretnej architektury i może zostać zainstalowany +w dowolnej. + +

    To pole można znaleźć także w pakiecie źródłowym, w pliku *.dsc - +oznacza ono architekturę docelową, czyli tę dla której przeznaczony jest +skompilowany pakiet binarny. Dodatkową architekturą dla pakietu źródłowego może +być any, oznaczająca że pakiet źródłowy można skompilować dla dowolnej +architektury. + +

    Maintainer
    +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 +,,<>''. + +

    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. + +

    Source
    +Nazwa pakietu źródłowego. To pole dotyczy pakietu źródłowego, a jego zawartość +jest analogiczna do pola Package, 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 Version +pakietu binarnego. + + +

    Depends
    +Definicja całkowitej zależności - pakiet zależy od innego pakietu. + +

    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. + +

    Każdy z elementów tej listy (nie dotyczy to pola Provides) 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: + +

    +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) + + +

    Pole Depends 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. + +

    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. + +

    W wyjątkowych sytuacjach zależności można pominąć, uruchamiając dpkg +z opcją wymuszania, jednak powoduje to zburzenie spójności bazy systemu +pakietów. + +

    Recommends
    +Definicja silnej zależności - pakiet zaleca inny pakiet. + +

    Pole Recommends jest ignorowane przez program dpkg i nie +dotyczy zastosowań z wiersza poleceń. Informacje tego pola są przetwarzane przez +narzędzia pełnoekranowe, takie jak dselect czy capt. 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. + +

    Zależność ta powinna oznaczać, że dodatkowe pakiety są przydatne, ale nie +stanowią niezbędnego warunku działania programu. + +

    Suggests
    +Definicja słabej zależności - pakiet sugeruje inny pakiet. + +

    Podobnie jak w poprzednim wypadku, pole to interpretowane jest jedynie przez +narzędzia pełnoekranowe. dselect dołączy wskazane pakiety do listy +zależności, ale pakiety nie będą domyślnie wybrane do zainstalowania. + +

    Najczęściej sugerowane są dodatkowe moduły rozszerzające możliwości danego +pakietu albo dokumentacja. + +

    Pre-Depends
    +Podobnie jak Depends, ale wymagany pakiet musi być poprawnie +zainstalowany i skonfigurowany przez rozpoczęciem procedury instalacji bieżącego +pakietu. + +

    Jeżeli do instalacji wybrano dwa pakiety, w tym jeden dla którego określono +,,przed-zależność'', dpkg 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 dpkg powinien ustalić program dselect lub +apt. + +

    ,,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 libc6 +czy bash, i tak instalowane są we wczesnym etapie, tak więc najczęściej +wystarcza użycie zwykłej zależności - pola Depends. + +

    Conflicts
    +Konflikt pomiędzy pakietami oznacza, że nie mogą istnieć w systemie w tym samym +czasie. Jeżeli konflikt został wykryty przez dpkg, zostanie zgłoszony +błąd, a proces instalacji zatrzymany. dselect 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. + +

    Specjalnym przypadkiem konfliktu jest konflikt z pakietem o takiej samej +nazwie, ewentualnie o nazwie takiej jak pakietu wirtualnego, którego dostarcza +(Provides) 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. + +

    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 dselect i radzi sobie z nią dopiero system +apt. + +

    Replaces
    +Zastąpienie pakietu powodującego konflikt. Jeżeli wymieniony w tym polu pakiet +został także wymieniony w polu Conflicts, dpkg automatycznie +zastąpi go bieżącym, bez ingerencji administratora. + +

    Pole Replaces nie dotyczy pakietów wirtualnych, a więc nazwa użyta w +tym polu musi określać prawdziwy pakiet. + + +

    Enhances
    +Rozszerzenie funkcji innego pakietu. To pole jest niejako odwrotnością pola +Suggests. W chwili obecnej jest ignorowane, ale zostało przewidziane do +użycia w najbliższej przyszłości. + +

    Niektóre pakiety z podstawowej dystrybucji (main) sugerują +wykorzystanie pakietów spoza głównego archiwum (np. non-free lub +non-US). Może to spowodować kłopot, gdy dodatkowe archiwum nie jest +dostępne, a dselect 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. + +

    Provides
    +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. + +

    Dla przykładu, gdy pakiet wymaga edytora emacs: + +

    +Package: vm
    +Depends: emacs +
    + +

    wystarczy, że w systemie znajduje się jakiś pakiet, który spełnia funkcje +tego edytora: + +

    +Package: xemacs
    +Provides: emacs +
    + +

    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. + +

    Build-Depends
    +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. + +

    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. + +

    Przykład wykorzystania tego pola w opisie pakietu źródłowego: + +

    +Build-Depends: kernel-headers-2.2.10 [!hurd-i386], hurd-dev [hurd-i386], +gnumach-dev [hurd-i386] + + +

    Pole Build-Depends określa zależność od pakietów binarnych dla celu +build, binary, binary-arch oraz binary-indep. + +

    Build-Conflicts
    +Pole zawiera listę pakietów binarnych, których obecność w systemie uniemożliwia +skompilowanie pakietu dla celu build, binary, binary-arch +oraz binary-indep. + +

    Build-Depends-Indep
    +Pole zawiera listę pakietów binarnych wymaganych do skompilowania pakietu dla +celu binary oraz binary-indep. + +

    Build-Conflicts-Indep
    +Pole zawiera listę pakietów binarnych, których obecność w systemie uniemożliwia +skompilowanie pakietu dla celu build oraz binary-indep. + +

    Description
    +Opis pakietu źródłowego lub binarnego. Pierwszy wiersz to skrócony opis pakietu, +zazwyczaj wyświetlany przez pełnoekranowe narzędzia (dselect, +capt) 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. + +

    Opis pakietu zwykle wzięty jest z podręcznika głównego programu tego pakietu +lub z pliku README. Ponieważ opis ten często decyduje o tym, czy +administrator zdecyduje się zainstalować dany pakiet, pole to powinno zawierać +starannie dobrane informacje. + +

    Dla pliku *.changes 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. + +

    Essential
    +Pole określające czy pakiet binarny jest istotny, czyli czy dpkg +pozwoli usunąć go z systemu. + +

    Pole może przyjmować dwie wartości: yes lub no. Druga wartość +ma takie samo działanie, jakby w pliku kontrolnym w ogóle nie było tego pola. + +

    Section
    +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 main. + +

    To pole jest przeznaczone dla programów pełnoekranowych, które przedstawiając +listę pakietów mogą ją uporządkować według sekcji. dpkg nie uwzględnia +pola Section. + +

    Nazwa sekcji odzwierciedla miejsce pliku w archiwum FTP. W chwili obecnej +istnieje podział na następujące sekcje: + +

    + +
    admin +
    narzędzia tylko dla administratora - modyfikujące pliki systemowe i +wpływające na działanie systemu +
      + +
    base +
    specjalna sekcja określająca pakiety, które zostaną zainstalowane przez +program instalacyjny +
      + +
    comm +
    programy komunikacyjne wykorzystujące modem lub faks +
      + +
    devel +
    kompilatory, narzędzia do tworzenia programów, biblioteki przeznaczone dla +debuggera, kody źródłowe +
      + +
    doc +
    dokumentacja systemowa oraz dla innych pakietów, programy do jej +przeglądania, biuletyny i czasopisma w postaci elektronicznej +
      + +
    editors +
    edytory tekstu wraz z odpowiednimi modułami +
      + +
    electronics +
    programy do wykorzystania w elektronice, narzędzia do projektowania i +analizowania układów elektronicznych +
      + +
    games +
    gry i innego rodzaju programy do przyjemnego marnowania czasu +
      + +
    graphics +
    edytory i inne narzędzia do obróbki grafiki bitmapowej, wektorowej lub 3D; +przeglądarki plików graficznych oraz programy demonstracyjne +
      + +
    hamradio +
    narzędzia dla użytkowników hamradio +
      + +
    interpreters +
    interpretery, biblioteki dla języków skryptowych +
      + +
    libs +
    biblioteki dla innych programów +
      + +
    mail +
    serwery i klienty poczty elektronicznej +
      + +
    math +
    narzędzia do zastosowań matematycznych +
      + +
    misc +
    pakiety, które nie trafiły do innej sekcji +
      + +
    net +
    serwery i klienty usług sieciowych, narzędzia administracyjne i +diagnostyczne dla sieci LAN i WAN +
      + +
    news +
    serwery i klienty USENET +
      + +
    oldlibs +
    stare wersje bibliotek lub kompilatory tworzące kod wykorzystujący wyłącznie +stare biblioteki +
      + +
    otherosfs +
    narzędzia do korzystania z innych systemów operacyjnych lub systemów plików, +emulatory +
      + +
    science +
    narzędzia do wykorzystania w zastosowaniach naukowych +
      + +
    shells +
    alternatywne powłoki systemowe +
      + +
    sound +
    narzędzia związane z dźwiękiem lub plikami muzycznymi +
      + +
    tex +
    narzędzia oraz moduły dla systemu publikacji TeX +
      + +
    text +
    narzędzia do przetwarzania i drukowania plików tekstowych, procesory tekstu, +słowniki +
      + +
    utils +
    wszelkiego rodzaju programy narzędziowe do wykorzystania przez wszystkich +użytkowników +
      + +
    web +
    serwery i klienty WWW, narzędzia do tworzenia publikacji WWW oraz +administrowania serwisami webowymi +
      + +
    x11 +
    programy, biblioteki i moduły związane z systemem X Window + +
    + +Oprócz tych sekcji istnieje także podział pakietów ze względu na archiwum w +jakim się znajdują: + +
    + +
    contrib/{admin,base,comm,...} +
    pakiety spełniające zasady wolnego oprogramowania, ale do pełnego +działania wymagające pakietów nie będących wolnymi pakietami +
      + +
    non-free/{admin,base,comm,...} +
    pakiety nie będące wolnymi w rozumieniu Debiana (DFSG) +
      + +
    non-US/{main,contrib,non-free} +
    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) + +
    + +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ę +Corel Desktop. + +

    Priority
    +Priorytet pakietu binarnego lub źródłowego, czyli jego ważność. Podobnie jak +pole Section, jest ono ignorowane przez dpkg, a może być brane +pod uwagę przez narzędzia wyższego poziomu, np. dselect. + +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 Debian Policy i +rozpoznawanych przez dpkg. + +

    + +
    required +
    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. +
      + +
    important +
    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. +
      + +
    standard +
    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. +
      + +
    optional +
    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. +
      + +
    extra +
    Pakiety dodatkowe mogą powodować konflikt z pakietami o innym priorytecie, +mieć specjalne wymagania systemowe lub są przeznaczone do specjalnych +zastosowań. + +
    + +Pakiety binarne o danym priorytecie nie mogą być zależne od pakietów o niższym +priorytecie. + +

    Binary
    +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. + +

    Gdy pole występuje w pliku *.changes, wymienione są tam nazwy +pakietów binarnych dostarczanych wraz z pakietem źródłowym. + +

    Installed-Size
    +Pole pakietu binarnego lub pliku opisu archiwum Packages, określające +ilość kilobajtów wolnej pamięci dyskowej potrzebnej do zainstalowania danego +pakietu. + +

    Files
    +Pole dotyczące pakietu źródłowego lub dystrybucyjnego, zawierające listę plików +z których składa się pakiet źródłowy. + +

    Lista plików jest podzielona na wiersze, dane o pliku w każdym z wierszy +rozdzielone są spacjami. + +

    Dane dla pakietu źródłowego (plik *.dsc) to suma kontrolna MD5 +pliku, rozmiar pliku i nazwa pliku. Suma kontrolna i rozmiar są sprawdzane +podczas rozpakowywania pakietu źródłowego przez program dpkg-source. + +

    Dane dla pakietu dystrybucyjnego (plik *.changes) 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. + +

    Standards-Version
    +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 Debian +Policy. + +

    Pole może być wykorzystywane przez narzędzia do sprawdzania poprawności +budowy pakietu źródłowego - tak jak to robi lintian. + +

    Distribution
    +Pole dotyczy pakietu dystrybucyjnego, a jego wartość jest ustalana na podstawie +zawartości pliku changelog pakietu źródłowego. Określa docelową +dystrybucję dla danego pakietu dystrybucyjnego. + +

    Dystrybucje zostały podzielone ze względu na stan zaawansowania prac nad +pakietami: + +

    + +
    unstable +
    Wszystkie nowe pakiety są umieszczane w dystrybucji unstable. Pakiet +taki może nie funkcjonować poprawnie; mogą nawet wystąpić kłopoty z instalacją. +
      + +
    frozen +
    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. +
      +
    Najczęściej poprawki dla dystrybucji frozen trafiają także do +dystrybucji unstable, tak więc w polu Distribution mogą być +określone te dwie dystrybucje. +
      + +
    stable +
    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.). +
      + +
    experimental +
    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ć. + +
    + +

    Urgency
    +Wartość tego pola jest ustalana na podstawie zawartości pliku changelog i +pojawia się w pliku opisu pakietu dystrybucyjnego *.changes. 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. + +

    + +
    low +
    Nowy pakiet poprawia mało istotne błędy lub dostarcza nowej wersji +oryginalnego źródła. +
      + +
    medium +
    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. +
      + +
    high +
    Korzystanie ze starego pakietu zagraża spójności systemu. Jak najszybciej +należy zaktualizować ten pakiet. + +
    + +

    Date
    +Pole określające datę zbudowania pakietu dystrybucyjnego, pojawiające się w +pliku *.changes. + +

    Format
    +Pole określające numer wersji formatu pliku *.changes, pojawiające się +w tym właśnie pliku. Ten dokument dotyczy formatu w wersji 1.6. + +

    Changes
    +To pole pojawia się w opisie pakietu dystrybucyjnego w pliku *.changes +i zawiera opis zmian wprowadzonych w aktualnej wersji pakietu, w formie +czytelnej dla człowieka. + +

    Wartość tego pola jest ustalana na podstawie pliku changelog z +pakietu źródłowego. + +

    Closes
    +To pole także dotyczy pliku *.changes, a zawiera informacje +przeznaczone dla systemu śledzenia błędów BTS. + +

    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 Changes) w spisie zmian może pojawić się informacja tekstowa +closes: #11111, #22222, .... 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 Closes, jako lista rozdzielona spacjami. + +

    Filename
    +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. + +

    MSDOS-Filename
    +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). + +

    Size
    +Pole pojawia się w pliku opisu archiwum Packages 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. + +

    MD5sum
    +Pole pojawia się w pliku opisu archiwum Packages i zawiera sumę +kontrolną MD5 dla pliku z pakietem lub - jeżeli został od podzielony na części +-, sumy kontrolne plików rozdzielone spacjami. + +

    Status
    +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 dpkg lub dselect. + +

    Stan bieżący pakietu: + +

    + +
    installed (zainstalowany) +
    Pakiet jest rozpakowany i poprawnie skonfigurowany. +
      + +
    half-installed (zainstalowany częściowo) +
    Instalacja pakietu została rozpoczęta, ale niedokończona z pewnych powodów. +
      + +
    not-installed (niezainstalowany) +
    Pakiet nie jest zainstalowany w systemie. +
      + +
    unpacked (rozpakowany) +
    Pakiet jest rozpakowany ale nie skonfigurowany. +
      + +
    half-configured (skonfigurowany częściowo) +
    Pakiet jest rozpakowany a konfiguracja została rozpoczęta, ale niedokończona +z pewnych powodów. +
      + +
    config-files (pliki konfiguracyjne) +
    Tylko pliki konfiguracyjne pakietu zostały w systemie. + +
    + +Stan wyboru pakietu: + +
    + +
    install (instalacja) +
    Pakiet został wybrany do zainstalowania. +
      + +
    deinstall (deinstalacja) +
    Pakiet został wybrany do deinstalowania (to znaczy, że chcemy skasować +wszystkie pliki pakietu oprócz plików konfiguracyjnych). +
      + +
    purge (wyczyszczenie) +
    Pakiet został wybrany do wyczyszczenia (to znaczy, że chcemy skasować +wszystko, włącznie z plikami konfiguracyjnymi). + +
    + +Znaczniki (flagi) pakietu: + +
    + +
    hold (wstrzymanie) +
    Pakiet oznaczony jako wstrzymany; nie jest obsługiwany przez dpkg, +chyba że użyje się opcji --force-hold. +
      + +
    reinst-required (konieczna reinstalacja) +
    Pakiet oznaczony w ten sposób jest uszkodzony i wymaga ponownego +zainstalowania. Taki pakiet nie może zostać usunięty przez dpkg, chyba +że użyje się opcji --force-reinstreq. + +
    + +

    Config-Version
    +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. + +

    Conffiles
    +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. + +

    Pole definiowane przez użytkownika
    +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 control pakietu źródłowego, nie zostaną przepisane do pliku +kontrolnego pakietu binarnego czy źródłowego. + +

    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 control pakietu +binarnego; jeżeli znakiem specjalnym jest S, pole pojawi się w pliku +*.dsc pakietu źródłowego; jeśli tym znakiem jest C, dotyczy to pliku +*.changes pakietu dystrybucyjnego. + +

    Można użyć kilku znaków specjalnych, na przykład: + +

    XBS-Comment: komentarz z pliku debian/control pakietu +źródłowego +

    W podanym przykładzie pole Comment: To jest komentarz... pojawi się +w opisie pakietu źródłowego i binarnego. + +

    Wycofane pola pliku kontrolnego
    +Poniższe pola zostały wycofane i mogą pojawiać się najwyżej w starych pakietach +Debiana. + +

    Revision, Package-Revision, Package_Revision
    +Numer wersji pakietu Debiana; obecnie jest częścią pola Version. + +

    Recommended
    +Obecnie pole ma nazwę Recommends. + +

    Optional
    +Obecnie pole ma nazwę Suggests. + +

    Class
    +Obecnie pole ma nazwę Priority. + +

    Plik historii pakietu (changelog)

    + +

    Plik historii pakietu jest wymagany przez pakiet źródłowy i pojawia się w nim +jako plik debian/changelog. Ten plik powinien być umieszczony w +pakiecie binarnym, jako +/usr/share/doc/<nazwa-pakietu*>/changelog.gz, jeżeli oryginalny +pakiet źródłowy jest źródłowym pakietem Debiana lub +/usr/share/doc/<nazwa-pakietu*>/changelog.Debian.gz, jeśli +oryginalny pakiet źródłowy został ,,zdebianizowany''. + +

    Plik historii pakietu - oprócz dostarczenia informacji czytelnej dla +użytkownika o dokonanych zmianach w pakiecie - ma specjalne znaczenie. + +

    Plik ten jest analizowany przez program dpkg-parsechangelog, 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. + +

    Domyślny format pliku jest następujący: + + +

    +<pakiet> (<wersja>) <dystrybucja>; +urgency=<ważność>

    + + * <opis zmian, które dotyczą pakietu>
    + <dalsza część opisu, jeżeli nie zmieściła się powyżej>
    + * <następny punkt opisu zmian>

    + +-- <opiekun> <data> +
    + +

    Część tych informacji jest wykorzystana przy tworzeniu plików kontrolnych: + +

    + +
    pakiet +
    Nazwa pakietu, taka sama jak w polu Package pliku control +pakietu źródłowego. +
      + +
    wersja +
    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 Version. +
      + +
    dystrybucja +
    Informacja jest kopiowana do pola Distribution pliku kontrolnego +*.changes. +
      + +
    ważność +
    Informacja jest kopiowana do pola Urgency pliku kontrolnego +*.changes. W polu nie można wykorzystać znaku przecinka, gdyż przecinki +rozdzielają listę zawierającą pary <pole>=<wartość>. +
      + +
    opiekun +
    Opiekun tej wersji pakietu. Jeżeli wartość tego pola pokrywa się z polem +Maintainer 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. +
      + +
    data +
    Data utworzenia danej wersji pakietu, podana w formacie RFC822 i +wygenerowana przez program 822-date. +
      + +
    opis zmian +
    Dotyczy przede wszystkim zmian w pakiecie Debiana (tzn. katalogu +debian/ 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. +
      +
    Jeżeli pakiet jest częścią systemu śledzenia błędów, takiego jak np. +http://www.debian.org/Bugs, a w opisie +zmian pojawia się tekst Closes: #12345, podany numer jest dołączany do +listy zamkniętych błędów pola Closes pliku *.changes. +
      +
    W opisie zmian często pojawiają się charakterystyczne informacje. +Initial release to często pierwszy wpis do historii zmian. New +upstream release oznacza zmianę w oryginalnym źródle i ponowną jego +debianizację. NMU lub Non-maintainer release to informacja o +tym, że dana wersja pakietu została utworzona przez osobę, która nie jest +oficjalnym opiekunem tego pakietu. + +
    + +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 \schangelog-format:\s+([0-9a-z]+)\W oraz istnieje odpowiedni +program analizujący ten format, dostępny w systemie jako +/usr/lib/dpkg/parsechangelog/<format-name> lub +/usr/local/lib/dpkg/parsechangelog/<format-name>. Program +analizujący format musi wygenerować dane, takie same jak w przypadku domyślnych +ustawień programu dpkg-parsechangelog dla domyślnego formatu pliku +historii. + +

    Program obsługi pakietu źródłowego (rules)

    + +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. yada. + +

    Aby zbudować pakiet binarny ze standardowego pakietu źródłowego Debiana, +wywołuje się odpowiedni program (debian/rules) znajdujący się w tym +pakiecie źródłowym. + +

    W zależności od argumentów przekazanych temu programowi, wykonywane są +odpowiednie czynności. Ponieważ tradycyjnie ten program jest skryptem +Makefile, argument jest celem (ang. target) dla programu +make. + +

    build
    +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. + +

    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 binary. + +

    W pewnych przypadkach, szczególnie gdy proces kompilowania pakietu jest +długi, można zapobiec ponownemu kompilowaniu źródeł przy następnym uruchomieniu +debian/rules build. + +

    binary, binary-arch, binary-indep
    +Wywołanie tego celu powoduje zbudowanie pakietu binarnego ze skompilowanych +źródeł. Proces jest ten rozdzielony na kolejne cele binary-arch i +binary-indep, w zależności od tego, czy pakiet binarny jest przeznaczony +dla tylko jednej architektury, czy dla wszystkich. + +

    Sam cel binary powinien wywołać odpowiednie cele zależne od wyboru +architektury, a także cel build, jeżeli ten nie został jeszcze wywołany. +Cele binary-* powinny przygotować odpowiedni katalog roboczy, wygenerować +plik kontrolny poprzez wywołanie programu dpkg-gencontrol, a następnie +zbudować pakiet binarny w katalogu nadrzędnym do bieżącego na podstawie +zawartości katalogu roboczego, poprzez wywołanie programu dpkg-deb. + +

    Gdy któryś z celów binary-* nie wykonuje żadnych czynności, powinien +po prostu zakończyć swoje działanie bez zgłaszania błędu. + +

    Cel binary i odpowiednie cele zależne od architektury muszą być wywołane z +prawami użytkownika root. + +

    clean
    +Wywołanie tego celu powinno spowodować anulowanie wszelkich zmian dokonanych +przez cele binary oraz build, oprócz zmian w katalogu nadrzędnym. + +

    Ten cel musi być wykonany z prawami użytkownika root, jeżeli wcześniej +wykonano cel binary. + +

    Przykładowe pliki

    + + + +

    Literatura

    + +The Debian Packaging Manual
    +The Debian GNU/Linux FAQ
    +man 5 deb
    +man 5 deb-control
    +man 8 dpkg
    + 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" + +

    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" + +

    Czym jest Debian?

    + +

    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 Debian GNU/Linux), ale oczywiście +nie ma tu żadnych ograniczeń (więcej na ten temat w części +Czy Debian to TYLKO Linux?). + +

    System operacyjny

    + +

    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 (ext2fs, reiserfs, procfs, +quota), RAID czy moduły jądra. + +

    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. + +

    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. + +

    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ń +(dpkg), przez bardziej zaawansowane programy (apt-get), do +pełnoekranowych lub graficznych nakładek (dselect, gnome-apt). + +

    Pakiety

    + +

    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. + +

    Cechy wspólne pakietów Debiana określono w dokumencie The Debian +Policy. Choć jest on przede wszystkim przeznaczony dla twórców pakietów, +pozwala na zrozumienie cech dystrybucji i zasad działania systemu pakietów. + +

    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 base) 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. + +

    Jeśli chodzi o instalację pakietów, w Debianie pojawił się system +debconf, 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. + +

    Debian GNU/Linux

    + +

    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 open development. 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ą. + +

    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 .deb związany ze słynnym systemem zarządzania pakietami Debiana +(ang. Debian Package Management System - patrz części +System operacyjny i Pakiety). Ponieważ rozwiązanie +to, jak i pozostałe (patrz Za darmo i bez ograniczeń!), +oparte jest na licencji GPL, często stosują je także twórcy innych dystrybucji +(patrz Klonowanie Debiana). 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. +Social Contract) 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 The Debian Free Software Guidelines). +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). + +

    Dlaczego ,,Debian''?

    + +

    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. + +

    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. + +

    Historia pewnego pomysłu

    + +

    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 The Debian Linux +Manifesto, 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 Za darmo i bez ograniczeń! 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). + +

    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: + +

    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. + +

    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 dpkg (za to w dużym stopniu odpowiadał Ian Jackson, +który kilka lat później został koordynatorem projektu Debian). + +

    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ł +dpkg. + +

    Debian 093r6 pojawił się w listopadzie 1995 roku i był ostatnim opartym na +binariach typu a.out (następne wersje stosowały już format ELF). +Utrzymaniem pakietów zajmowało się już około 60 osób. Również wtedy +zaprezentowano po raz pierwszy słynny program dselect. Uruchomiono +także adres master.debian.org służący do dziś jako główny serwer produkcyjny. +Murdock mówi o 093r6 ,,... zawsze był moim ulubionym Debianem'', +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. + +

    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 +Na innych platformach oraz Czy Debian to TYLKO Linux?. Bill +Mitchell, jeden ze starszych stażem członków zespołu, wspomina: + +

    ... 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''. + +

    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. Debian Rescue Floppy). 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 Debian Free Software Guidelines, Debian Social Contract +i The Open Hardware Project, 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 + +

    W tym czasie pojawiają się następujące dystrybucje: + +

    +
    +1.1 Buzz - czerwiec 1996 (474 pakiety, jądro w wersji 2.0, format ELF, +dpkg) +
    +
    1.2 Rex - grudzień 1996 (848 pakietów, 120 osobowy zespół)
    +
    1.3 Bo - lipiec 1997 (974 pakiety, 200 osobowy zespół)
    +
    + +

    Potem wyszło jeszcze kilka wersji przejściowych. Ostatnią była 1.3.1r6. + +

    Sprawy finansowe Debiana przejmuje założona w tym celu niedochodowa +organizacja Software in the Public Interest. + +

    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). + +

    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. + +

    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. + +

    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. + +

    Struktura organizacyjna

    + +

    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. + +

    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. + +

    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. + +

    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. + +

    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. + +

    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. + +

    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. + +

    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. + +

    Za darmo i bez ograniczeń!

    + +

    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. + +

    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. + +

    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). + +

    O całej filozofii oprogramowania ogólnodostępnego można przeczytać w takich +tekstach jak What does free mean?, Debian Free Software +Guidelines, Debian Social Contract lub też w samym The Debian +Linux Manifesto. Zachęcam do lektury. + +

    Na innych platformach

    + +

    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. + +

    Czy Debian to TYLKO Linux?

    + +

    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. + +

    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. + +

    Co nowego?

    + +

    Od wersji 2.0 domyślnie stosowany jest shadowing haseł. Wbudowano też +częściową obsługę PAM (Pluggable Authentication Modules), 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. + +

    Debian 2.1 Slink jako ostatni jest oparty na jądrze Linuksa w wersji 2.0.x. +Zawiera też program apt, który ma za zadanie zastąpić niezbyt lubianego +dselecta 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! + +

    Debian 2.2 Potato to kolejna rewolucja. Zmian jest dużo. Przede wszystkim +domyślnie używany kompilator egcs (wersja gcc znana jako +egcc). 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. + +

    Komercyjni partnerzy Debiana

    + +

    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. + +

    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 +Klonowanie Debiana). + +

    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. + +

    Także wielu producentów płyt CD i dystrybutorów ma z Debianem wiele wspólnego +- więcej na ten temat w rozdziale Zdobycie dystrybucji. + +

    Klonowanie Debiana

    + +

    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 .deb 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). + +

    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. + +

    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. + +

    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. + +

    Plany na przyszłość

    + +

    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? + +

    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? + +

    Przypuszczalnie zniesiony zostanie dotychczasowy cykl wydawniczy Debiana +(unstable-frozen-stable), a zastąpią go tzw. package pools. 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. + +

    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 package pools może się okazać strzałem +w dziesiątkę. + +

    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 export LANG=pl_PL w większości wypadków +wystarcza, jeszcze wiele jest w tej materii do zrobienia. + +

    Kolejnym etapem rozwoju Debiana jest uniezależnienie od jądra. Brzmi to może +nierealnie, ale już teraz Debian to nie tylko Linux (patrz +Czy Debian to TYLKO Linux?). 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. + +

    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ą. + +

    Pomoc

    + +

    Bogatym źródłem dokumentacji jest sam serwis WWW Debiana, czyli +http://www.debian.org. 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, +http://security.debian.org. Na uwagę +zasługuję ,,Weekly News'', czyli serwis z którego na bieżąco można +śledzić wydarzenia widziane oczami developerów. + +

    Debian to produkt Internetu, podobnie z traktującymi o nim książkami. +Instrukcja Guide to Installation and Usage jest dostępna do +zainstalowania w formie pakietu debian-guide, jako dokument HTML oraz +PostScript. Oczywiście, pozostałe ,,obowiązkowe'' pozycje jak Debian +FAQ, czy Debian Policy, także są dostępne w formie pakietów +.deb. Dla tych, którzy wolą tradycyjną formę, wydawnictwo O'Reilly +przygotowało książkę Learning Debian GNU/Linux, choć zwolenników +Internetu ucieszy wiadomość, że jest ona także dostępna na stronach WWW +wydawnictwa. + +

    Klasycznym źródłem pomocy są listy dyskusyjne. Debian serwisuje kilkanaście +list wysyłkowych, z czego najpopularniejsze to debian-user dla +użytkowników oraz debian-devel dla developerów. Zaprenumerować te listy +dyskusyjne można poprzez stronę WWW Debiana lub wysyłając list na adres +<nazwa-listy>-REQUEST@lists.debian.org z tematem subscribe. +Zwrócić należy uwagę, że te popularne grupy są naprawdę popularne - co może +oznaczać ponad setkę listów dziennie. + +

    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. + +

    Zdobycie dystrybucji

    + +

    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. Official CD w formie pliku ISO9660). +Oczywiście, dysponując zawartością archiwum oraz pakietem debian-cd, +każdy może stworzyć własną płytę, jednak oficjalna daje gwarancję oryginalności +oprogramowania. + +

    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ć. + +

    Pod adresem http://cdimage.debian.org +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 rsync. 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. + +

    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. + +

    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ć. + +

    Specjalne podziękowania dla Iana Murdocka za wiele ciekawych informacji +pomocnych w przygotowaniu artykułu. + +

    Bibliografia oraz odsyłacze do pomocnych informacji (część z nich w języku polskim): + +

    +http://www.debian.org - The Debian Project
    +http://www.debian.org/intro/about.html - About Debian
    +http://www.debian.org/social_contract.html - Debian Social Contract
    +http://www.debian.org/intro/free - What Does Free Mean?
    +http://www.debian.org/doc/FAQ - Debian GNU/Linux FAQ
    +http://www.debian.org/~elphick/manuals.html/project-history - The Debian Project History
    +http://www.debian.org/releases - Debian Releases
    +http://www.debian.org/ports - Debian Ports
    +http://www.debian.org/News - Latest News
    +http://www.debian.org/security - Security Information + +

    +http://www.openhardware.org - The Open Hardware Project
    +http://www.fsf.org - The Free Software Foundation
    +http://www.gnu.org - The GNU Project + +

    +http://www.gnu.org/software/hurd/hurd.html - GNU Hurd Operating System
    +http://linux.corel.com - Corel Linux
    +http://www.stormix.com - Storm Linux
    +http://www.libranet.com - Linux by Libranet + -- cgit v1.2.3