You are on page 1of 174

Podstawy Linuksa Slackware

Alan Hicks Chris Lumens David Cantrell Logan Johnson Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Slackware Linux, Inc. 1-57176-338-4

Spis treci
Podstawy Linuksa Slackware.......................................................................................... ..............................1 Przedmowa............................................................................................................ ........................................6 Odbiorcy............................................................................................................................ ............................6 Zmiany od czasu pierwszego wydania............................................................................. .............................7 Organizacja ksiki.................................................................................. .....................................................7 Konwencje uyte w ksice.........................................................................................................................9 . Konwencje typograficzne........................................................................................ .................................9 Tekst wprowadzany przez uytkownika..................................................................................................9 Przykady...................................................................................................................... ............................9 Podzikowania.......................................................................... ..................................................................10 Rozdzia 1. Wprowadzenie do Linuksa Slackware.....................................................................................10 1.1 Co to jest Linux?......................................................................... .....................................................10 1.1.1 Sowo na temat GNU....................................................................................... .........................10 1.2 Co to jest Slackware?......................................................................................................................11 . 1.3 Open Source i Free Software.......................................................................................... ..................11 Rozdzia 2. Pomoc.....................................................................................................................................12 . 2.1 Pomoc dostpna w systemie............................................................................. ................................13 2.1.1. man...................................................................................... ....................................................13 2.1.2 Katalog /usr/doc................................................................................................. .......................14 2.1.3 Pliki typu HOWTO i mini-HOWTO.......................................................................................14 . 2.2 Pomoc dostpna w Sieci.................................................................................. .................................15 2.2.1 Oficjalna strona internetowa i fora pomocy.............................................................................15 . 2.2.2 Pomoc dostpna przez e-mail..................................................................................................15 . 2.2.2.1 Listy mailingowe projektu Linux Slackware...................................................................15 . 2.2.3 Nieoficjalne strony i fora internetowe......................................................................................16 2.2.3.1 Strony....................................................................................................... .........................16 2.2.3.2 Internetowe fora online....................................................................................................17 . 2.2.3.3 Grupy usenetowe (NNTP)...............................................................................................17 . Rozdzia 3. Instalacja.................................................................................................................................17 . 3.1 Skd wzi Slackware............................................................................ ..........................................18 3.1.1 Oficjalne komplety CD i zestawy pudekowe............................................ .............................18 .

3.1.2 Przez Internet........................................................................................................ .........................18 3.2 Wymagania systemowe................................................................................... .................................19 3.2.1 Grupy pakietw.......................................................................................................................19 . 3.2.2 Metody instalacji.....................................................................................................................20 . 3.2.2.1 Z dyskietek......................................................................................................................20 . 3.2.2.2 Z CD-ROMu............................................................................................. ........................21 3.2.2.3 NFS............................................................................................. ......................................21 3.2.3 Dyskietka rozruchowa.............................................................................................................21 . 3.2.4 Dyskietki root............................................................................ ...............................................21 3.2.5 Dyskietka dodatkowa..............................................................................................................22 . 3.2.6 Tworzenie dyskietek rozruchowych........................................................................................22 . 3.3 Partycjonowanie............................................................................ ...................................................22 3.4 Program setup....................................................................................................... ............................24 3.4.1 Pomoc (HELP)........................................................................................................................26 . 3.4.2 Mapa klawiatury (KEYMAP).......................................... .......................................................27 . 3.4.3 Dodawanie partycji wymiany (ADDSWAP)...........................................................................28 3.4.4 Partycje docelowe (TARGET).................................................................................................28 3.4.5 Nonik rdowy (SOURCE).......................................................................................................29 . Wybr pakietw (SELECT)..................................................................................................................31 . 3.4.7 Waciwa instalacja (INSTALL).............................................................................................32 . 3.4.8 Konfiguracja (CONFIGURE)..................................................................................................33 3.4.8.1 Wybr jdra (INSTALL LINUX KERNEL)....................................................................33 3.4.8.2 Tworzenie dyskietki rozruchowej (MAKE BOOT DISK)....................................................34 3.4.8.3 Modem (MODEM CONFIGURATION).............................................................................35 . 3.4.8.4 Strefa czasowa (TIMEZONE CONFIGURATION).............................................................36 3.4.8.5 Mysz (MOUSE CONFIGURATION)..................................................................................37 . 3.4.8.6 Zegar sprztowy (HARDWARE CLOCK SET TO UTC?)..................................................38 3.4.8.7 Czcionka ekranowa (SELECT A SCREEN FONT)..............................................................39 LILO (INSTALL LILO)............................................................................................ ........................40 3.4.8.9 Konfiguracja sieci (Network)...............................................................................................41 . 3.4.8.10 Meneder okien (SELECT DEFAULT WINDOW MANAGER FOR X)..........................42 Rozdzia 4. Konfiguracja systemu.............................................................................................................43 . 4.1 Przegld systemu................................................................................................. .............................43 4.1.1 Ukad systemu plikw.............................................................................................................43 . 4.1.2 Znajdowanie plikw................................................................................................................45 . 4.1.2.1 which...............................................................................................................................45 . 4.1.2.2 whereis................................................................................................. .............................45 4.1.2.3 find................................................................................................... .................................46 4.1.2.4 slocate........................................................................... ....................................................46 4.1.3 Katalog /etc/rc.d......................................................................................................................46 . 4.1.3.1 Skrypty uruchomieniowe.................................................................................................46 . 4.1.3.2 Skrypty inicjalizacyjne poziomw pracy.........................................................................47 . 4.1.3.3 Inicjalizacja sieci.............................................................................................................48 . 4.1.3.4 Zgodno z System V......................................................................................................48 . 4.1.3.5 Inne pliki............................................................................................ ...............................48 4.2 Wybr jdra................................................................................................. .....................................49 4.2.1 Katalog /kernels na CD-ROMie Slackware.............................................................................49 . 4.2.2 Kompilacja jdra ze rde......................................................................................................50 . 4.2.2.1 Kompilacja jdra Linuksa w wersji 2.4.x.........................................................................50 4.2.2.2 Kompilacja jdra Linuksa w wersji 2.6.x.........................................................................52 4.2.3 Moduy jdra...........................................................................................................................52 .

Rozdzia 5. Konfiguracja sieci...................................................................................................................53 . 5.1 Wprowadzenie: netconfig Twoim przyjacielem..............................................................................53 5.2 Konfiguracja sprztu sieciowego....................................................................................................54 . 5.2.1 adowanie moduw obsugi sieci............................................ ..............................................54 . 5.2.2 Karty LAN (10/100/1000Base-T i Base-2)..............................................................................54 5.2.3 Modemy..................................................................................................................................54 . 5.2.4 PCMCIA.................................................................................................................................55 . 5.3 Konfiguracja TCP/IP.......................................................................................... ..............................55 5.3.1 DHCP................................................................................ .......................................................56 5.3.2 Statyczny adres IP...................................................................................................................57 . 5.3.3 /etc/rc.d/rc.inet1.conf.............................................................................. ..................................57 5.3.4 /etc/resolv.conf........................................................................................................................58 . 5.3.5 /etc/hosts................................................................................................ ...................................58 5.4 PPP................................................................................................ ...................................................59 5.4.1 pppsetup..................................................................................................................................59 . 5.4.2 /etc/ppp...................................................................................... ...............................................59 5.5 Konfiguracja sieci bezprzewodowej................................................................................................59 5.5.1 Sprztowa obsuga karty bezprzewodowej..............................................................................60 . 5.5.2 Konfiguracja ustawie bezprzewodowych..............................................................................60 . 5.5.3 Konfiguracja sieci................................................................................................ .....................61 5.6 Sieciowe systemy plikw......................................................................... ........................................61 5.6.1 SMB/Samba/CIFS...................................................................................................................62 . 5.6.2 Sieciowy system plikw (Network File System NFS)..........................................................63 Rozdzia 6. Konfiguracja X.................................................................................................... .....................64 6.1 xorgconfig............................................................................ ............................................................65 6.2 xorgsetup............................................................................................ ..............................................69 6.3 xinitrc......................................................................... ......................................................................69 6.4 xwmconfig........................................................................................................... .............................70 6.5 xdm..................................................................................................................... ..............................72 Rozdzia 7. Uruchamianie.................................................................................. .........................................74 7.1 LILO................................................................................................................. ................................74 7.2 LOADLIN.......................................................................................... ..............................................77 7.3 Uruchamianie wielu systemw.......................................................................................................78 . 7.3.1 Windows.................................................................................................... ...............................78 7.3.1.1 Wykorzystywanie LILO..................................................................................................78 . 7.3.1.2 LOADLIN.......................................................................................................................79 . 7.3.1.3 Stary patent z Windows NT.............................................................................................81 . 7.3.2 Linux........................................................................ ................................................................81 Rozdzia 8. Powoka.............................................................................................................. ......................82 8.1 Uytkownicy............................................................................ ........................................................82 8.1.1 Logowanie.................................................................................... ............................................82 8.1.2 Root czyli Superuytkownik...................................................................................................82 . 8.2 Wiersz polece................................................................................ .................................................83 8.2.1 Uruchamianie programw.......................................................................................................83 . 8.2.2 Dopasowywanie symboli wieloznacznych...............................................................................83 8.2.3 Przekierowywanie wejcia/wyjcia i potokowanie..................................................................84 8.3 Bourne Again Shell (bash)..............................................................................................................85 . 8.3.1 Zmienne rodowiskowe............................................................................ ................................85 8.3.2 Uzupenianie tabulatorem.............................................................................. ...........................86 8.4 Terminale wirtualne........................................................................................................................87 . 8.4.1 Program screen.......................................................................... ...............................................87

Rozdzia 9. Struktura systemu plikw.......................................................................................................88 . 9.2 Prawa dostpu.................................................................................................................................89 . 9.3 Dowizania................................................................................................ .......................................91 9.4 Montowanie urzdze.....................................................................................................................92 . 9.4.1 Plik fstab............................................................................................. ......................................92 9.4.2 Polecenia mount i umount.......................................................................................................93 . 9.5 Montowanie udziaw NFS............................................................................. .................................93 Rozdzia 10. Praca z plikami i katalogami.................................................................................................94 . 10.1 Nawigacja: ls, cd i pwd.................................................................................................................94 . 10.1.1 ls............................................................................... ..............................................................94 10.1.2 cd...................................................................................... ......................................................95 10.1.3 pwd....................................................................................... ..................................................96 10.2 Programy stronicujce: more, less i most......................................................................................96 . 10.2.1 more................................................................................................... .....................................96 10.2.2 less............................................................................................. .............................................96 10.2.3 most............................................................................. ...........................................................97 10.3 Proste wyjcie: cat i echo..............................................................................................................97 . 10.3.1 cat............................................................................ ...............................................................97 10.3.2 echo.......................................................................................................................................97 . 10.4 Tworzenie: touch i mkdir..............................................................................................................98 . 10.4.1 touch...................................................................................... .................................................98 10.4.2 mkdir.....................................................................................................................................98 . 10.5 Kopiowanie i przenoszenie............................................................................................................98 10.5.1 cp........................................................................................ ....................................................98 10.5.2 mv...................................................................................................... .....................................99 10.6 Usuwanie: rm i rmdir....................................................................................................................99 . 10.6.1 rm.................................................................................................................... ........................99 10.6.2 rmdir................................................................................ .....................................................100 10.7 Tworzenie nazw zastpczych plikw przez ln.............................................................................100 . Rozdzia 11. Kontrola procesw..............................................................................................................101 . 11.1 Praca w tle.................................................................................. ..................................................101 11.2 Praca na pierwszym planie..........................................................................................................102 . 11.3 ps........................................................................................ ..........................................................102 11.4 kill............................................................................ ....................................................................105 11.5 top.................................................................................................................. ...............................106 Rozdzia 12. Podstawowa administracja systemem..................................................................................108 12.1 Uytkownicy i grupy...................................................................................... ..............................108 12.1.1 Skrypty doczone do dystrybucji........................................................................................108 12.1.2 Zmiana hasa.......................................................................................... ...............................111 12.1.3 Zmiana informacji o uytkowniku.......................................................................................112 . 12.2 Uytkownicy i grupy dla hardcore'owcw..................................................................................112 . 12.3 Poprawne zamykanie systemu.................................................................................... ..................114 Rozdzia 13. Podstawowe polecenia sieciowe..........................................................................................116 13.1 ping................................................................................................................ ...............................116 13.2 traceroute.............................................................................................. ........................................117 13.3 Narzdzia DNS................................................................................................ .............................117 13.1.1 host........................................................................ ...............................................................117 13.3.2 nslookup..............................................................................................................................118 . 13.3.3 dig...................................................................................................... ...................................118 13.4 finger.................................................................................. ..........................................................119 13.5 telnet.................................................................................................... .........................................119

13.5.1 Inne sposoby wykorzystania telnetu....................................................................................120 . 13.6 Bezpieczna powoka The Secure Shell.....................................................................................121 . 13.7 Poczta elektroniczna............................................................................ .........................................121 13.7.1 pine.................................................................................... ...................................................121 13.7.2 elm............................................................................................ ............................................122 13.7.3 mutt........................................................................................................... ............................123 13.7.4 nail....................................................................................... .................................................124 13.8 Przegldarki....................................................................................................... ...........................125 13.8.1 lynx................................................................................................... ....................................125 13.8.2 links............................................................................. .........................................................126 13.8.3 wget.................................................................................... ..................................................126 13.9 Klienty FTP...................................................................................... ............................................127 13.9.1 ftp........................................................................................................................................127 . 13.9.2 ncftp................................................................................................. .....................................129 13.10 Rozmowa...................................................................................................... ..............................129 13.10.1 wall.................................................................................. ...................................................129 13.10.2 talk....................................................................................... ...............................................130 13.10.3 ytalk....................................................................................... .............................................130 Rozdzia 14. Bezpieczestwo.......................................................................................... ..........................131 14.1 Wyczanie usug........................................................................................................................131 . 14.1.1 Usugi uruchamiane przez inetd..........................................................................................132 . 14.1.2 Usugi uruchamiane ze skryptw inicjalizujcych...............................................................132 14.2 Kontrola dostpu do komputera.......................................... ........................................................133 . 14.2.1 iptables........................................................................................................ ..........................133 14.2.2 tcpwrappers...................................................................................................... .....................134 14.3 Aktualizowanie systemu.............................................................................................................135 . 14.3.1 lista mailingowa slackware-security....................................................................................135 . 14.3.2 Katalog /patches..................................................................................................................135 . Rozdzia 15 archiwizacja plikw..........................................................................................................136 . 15.1 gzip........................................................................................................ .......................................136 15.2 bzip2.................................................................................................. ...........................................137 15.3 tar........................................................................................................................ ..........................137 15.4 zip........................................................................................................ .........................................139 Rozdzia 16. Edytor vi........................................................................................................ .......................139 16.1 Uruchamianie vi........................................................................ ...................................................140 16.2 Tryby............................................................................................ ................................................141 16.2.1 Tryb polece.................................................................................. .......................................141 16.2.2 Tryb wstawiania..................................................................................................................143 . 16.3 Otwieranie plikw.......................................................................... ..............................................143 16.4 Zapisywanie plikw....................................................................................................................143 . 16.5 Wychodzenie z vi.............................................................................. ...........................................144 16.6 Konfiguracja vi.................................................................................................. ...........................144 16.7 Klawisze vi................................................................................................ ...................................145 Rozdzia 17. Emacs.......................................................................................... .........................................146 17.1 Uruchamianie Emacsa.......................................................................... ........................................147 17.1.1 Klawisze polece.................................................................................. ................................147 17.2 emacs bufory......................................................................... ....................................................148 17.3 Emacs tryby.................................................................................. ........................................148 17.3.1 Otwieranie plikw...............................................................................................................149 . 17.4 Podstawy edycji..........................................................................................................................149 . 17.5 Zapisywanie plikw....................................................................................................................150 .

17.5.1 Wychodzenie z Emacsa.......................................................................................................151 . Rozdzia 18. Zarzdzanie pakietami w Slackware...................................................................................151 . 18.1 Omwienie formatu pakietw.....................................................................................................152 . 18.2 Programy do zarzdzania pakietami............................................................................................152 . 18.2.1 pkgtool................................................................................................. .................................152 18.2.2 installpkg.............................................................................................................................154 . 18.2.3 removepkg...................................................................................... ......................................155 18.2.4 upgradepkg.................................................................................. .........................................156 18.2..5 rpm2tgz/rpm2targz.............................................................................................................156 . 18.3 Tworzenie pakietw....................................................................................................................156 . 18.3.1 explodepkg..........................................................................................................................157 . 18.3.2 makepkg..............................................................................................................................157 . 18.3.3 Skrypty SlackBuild............................................................................................ ...................157 18.4 Tworzenie znacznikw i plikw znacznikw (dla programu setup)............................................157 Rozdzia 19. ZipSlack.............................................................................. .................................................158 19.1 Co to jest ZipSlack?....................................................................................................................158 . 19.1.1 Zalety...................................................................................................... ..............................158 19.1.2 Wady...................................................................................................................................159 . 19.2 Skd wzi ZipSlack...................................................................................................................159 . 19.2.1 Instalacja............................................................................................. ..................................159 19.3 Uruchamianie ZipSlack......................................................................... .......................................159 Sowniczek............................................................................................ ....................................................160 Dodatek A. Powszechna Licencja Publiczna GNU..................................................................................167 . Tumaczenie GNU General Public License ...................................................................................167 . Uwaga!............................................................................. ...............................................................167 Note!...................................................................................................... ..........................................167 Powszechna Licencja Publiczna GNU............................................ ....................................................167 . Wersja 2, czerwiec 1991.............................................................................................. ....................167 Preambua............................................................................................ ............................................168 Zasady i warunki kopiowania, rozpowszechniania i modyfikowania ............................................168 KONIEC ZASAD I WARUNKW........................................................................ ........................173 Jak stosowa niniejsze Warunki do Twoich nowych programw...................................................173

Przedmowa Odbiorcy
System operacyjny Linux Slackware jest rozbudowan, wszechstronn platform dla komputerw zgodnych z architektur Intel. Zaprojektowano go tak, aby by stabilny, bezpieczny i funkcjonalny, zarwno w zastosowaniach serwerowych klasy high-end, jak i w wydajnych stacjach roboczych. Ksika ma pomc Ci rozpocz prac z tym systemem. Nie opisuje ona jednak kadego aspektu dystrybucji Slackware. Celem ksiki jest pokazanie, jakie moliwoci ma system oraz przekazanie podstawowej wiedzy pozwalajcej na prac z nim. Mamy nadziej, e w miar zdobywania dowiadczenia w pracy z Linuksem Slackware ta ksika bdzie dla Ciebie przydatn pomoc. Mamy te nadziej, e poyczysz j wszystkim swoim znajomym, kiedy przyjd do Ciebie i zapytaj o tego zarbistego Slacka, ktrego masz na kompie.

Nie bdziesz czyta tej ksiki od deski do deski z zapartym tchem. Prbowalimy jednak napisa j w moliwie przystpny i ciekawy sposb. Moe kto kiedy bdzie chcia zrobi film na jej podstawie. Oczywicie mamy te nadziej, e wiele si z niej nauczysz i okae si dla Ciebie przydatna. No dobra, jedziemy z tym koksem.

Zmiany od czasu pierwszego wydania


Drugie wydanie to kulminacja lat cikiej pracy, ktr powicili oddani czonkowie Projektu Dokumentacji Slackware. Oto najwaniejsze zmiany wprowadzone w tym wydaniu:

Rozdzia 3, Instalacja, zosta zmodyfikowany, dodano nowe zrzuty ekranu programu instalacyjnego, uwzgldniono zmiany w zestawach dyskw i instalacji z CD. Rozdzia 4, Konfiguracja systemu, zosta zaktualizowany przez dodanie informacji o jdrach Linuksa w wersji 2.6.x. Rozdzia 5, Konfiguracja sieci, rozszerzono o nowe informacje dotyczce Samby, NFS i DHCP. Dodano te sekcj o sieciach bezprzewodowych. Rozdzia opisuje te istotne zmiany w konfiguracji sieci w Slackware. Rozdzia 6, System X Window, gruntownie przepisano, dostosowujc go do systemw wykorzystujcych Xorg. Teraz rozdzia opisuje te graficzny meneder logowania xdm. Rozdzia 13, Podstawowe polecenia sieciowe, rozszerzono o informacje dotyczce dodatkowych sieciowych programw uytkowych. Rozdzia 14, Bezpieczestwo, to nowy rozdzia w tej wersji. Wyjania, jak zabezpieczy system Linux Slackware. Rozdzia 17, Emacs, to nowy rozdzia w tej wersji. Opisuje, jak uywa Emacsa, rozbudowanego edytora dla systemw uniksowych. Rozdzia 18, Zarzdzanie pakietami, zaktualizowano o informacje dotyczce skryptw SlackBuild. Wprowadzono rwnie wiele innych zmian, drobnych i istotnych, ktre odzwierciedlaj rozwj Slackware.

Organizacja ksiki
Rozdzia 1, Wprowadzenie Zawiera materia wprowadzajcy do Linuksa, Slackware, ruchw Open Source i Free Software. Rozdzia 2, Pomoc Opisuje zasoby pomocy dla Linuksa Slackware dostpne w systemie i w Sieci. Rozdzia 3, Instalacja Opisuje krok po kroku proces instalacji, ilustrowany zrzutami ekranu. Rozdzia 4, Konfiguracja systemu Opisuje wane pliki konfiguracyjne i rekompilacj jdra. Rozdzia 5, Konfiguracja sieci

Opisuje, jak podczy komputer z Linuksem Slackware do sieci. Dotyczy TCP/IP, PPP/poczenia dodzwaniane, sieci bezprzewodowe itp. Rozdzia 6, System X Window Opisuje, jak skonfigurowa graficzny system X Window w Slackware i jak go uywa. Rozdzia 7, Rozruch Opisuje proces rozruchu komputera i uruchamiania Linuksa Slackware. Zawiera te informacje na temat podwjnego rozruchu z systemami Microsoft Windows. Rozdzia 8, Powoka Opisuje rozbudowany, wszechstronny interfejs wiersza polece w Linuksie. Rozdzia 9, Struktura systemu plikw Opisuje struktur systemu plikw, wczajc w to prawa wasnoci, uprawnienia i dowizania. Rozdzia 10, Pliki i katalogi Zawiera opis polece, ktre su do operacji na plikach i katalogach z interfejsu wiersza polece. Rozdzia 11, Kontrola procesw Opisuje polecenia do zarzdzania procesami w systemie Linux, uywane do zarzdzania wieloma uruchomionymi aplikacjami. Rozdzia 12, Podstawowa administracja systemem Opisuje podstawowe zadania administracyjne, takie jak dodawanie lub usuwanie uytkownikw, poprawne zamykanie systemu itp. Rozdzia 13, Podstawowe polecenia sieciowe Opisuje zbir podstawowych klientw sieciowych doczonych do Slackware. Rozdzia 14, Bezpieczestwo Opisuje wiele rnych narzdzi, ktre umoliwiaj zabezpieczenie systemu Slackware, w tym iptables i tcpwrappers. Rozdzia 15, Archiwizacja plikw Opisuje rne programy do archiwizacji i kompresji dostpne w Linuksie. Rozdzia 16, vi Opisuje wszechstronny edytor tekstu vi. Rozdzia 17, Emacs Opisuje wszechstronny edytor tekstu Emacs. Rozdzia 18, Zarzdzanie Pakietami Slackware Opisuje programy do zarzdzania pakietami Slackware i proces tworzenia wasnych pakietw oraz plikw znacznikw. Rozdzia 19, ZipSlack Opisuje wersj Linuksa ZipSlack, ktrej mona uywa z poziomu Windows bez potrzeby instalacji. Dodatek A, Oglna Licencja Publiczna GNU

Opisuje warunki licencji, na ktrej mona kopiowa i rozpowszechnia Linuksa Slackware i t ksik.

Konwencje uyte w ksice


Aby otrzyma spjny, atwy do czytania tekst, uylimy w ksice kilku konwencji:

Konwencje typograficzne
Kursywa Kursyw piszemy polecenia, tekst podkrelony, pierwsze wystpienie terminu technicznego. Staa szeroko Czcionk o staej szerokoci piszemy komunikaty bdw, polecenia, zmienne rodowiskowe, nazwy portw, hostw, uytkownikw, grup i urzdze, zmienne i fragmenty kodu. Wytuszczenie Czcionk wytuszczon piszemy tekst wprowadzany przez uytkownika w przykadach.

Tekst wprowadzany przez uytkownika


Klawisze s wytuszczone, aby odrnia je od innego tekstu. Kombinacje klawiszy, ktre maj by naciskane razem, maj + midzy klawiszami, np.: Ctrl+Alt+Del To znaczy, e trzeba nacisn naraz klawisze Ctrl, Alt i Del. Klawisze, ktre maj by naciskane kolejno, s oddzielone przecinkami, np.: Ctrl+X, Ctrl+S Oznacza, e naley nacisn najpierw Ctrl i X naraz, a nastpnie Ctrl i S naraz.

Przykady
Przykady rozpoczynajce si od D:\> oznaczaj polecenie MS-DOS. O ile nie jest powiedziane inaczej, te polecenia mona wykonywa z okna Wiersza polece w rodowiskach Microsoft Windows.
D:\> rawrite a: bare.i

Przykady rozpoczynajce si od # oznaczaj polecenie, ktre musi w Slackware wykona superuytkownik. Moesz zalogowa si jako root, aby wpisa polecenie, albo zalogowa si na swoje zwyke konto, a potem uy su(1), aby otrzyma uprawnienia superuytkownika.
# dd if=bare.i of=/dev/fd0

Przykady rozpoczynajce si od % oznaczaj, e polecenie powinno si wykonywa z konta zwykego uytkownika. O ile nie jest powiedziane inaczej, do ustawiania zmiennych rodowiskowych i innych polece powoki jest uywana skadnia powoki C.
% top

Podzikowania
Ten projekt stanowi poczenie miesicy pracy powiconej przez wielu oddanych ludzi. Sam nie bybym w stanie wykona tej pracy. Wielu zasuguje na nasze podzikowania za swj bezinteresowny wkad: Keith Keller za prac nad sieciami bezprzewodowymi, Joost Kremers za jego samodzieln, wspania prac nad sekcj o Emacsie, Simon Williams za rozdzia o bezpieczestwie, Jurgen Philippaerts za podstawowe polecenia sieciowe, Cibao Cu Ali G Colibri za inspiracj i kopa na rozpd. Swoje propozycje i poprawki przysao te wiele innych osb. Niektrzy z nich to: Jacob Anhoej, John Yast, Sally Welch, Morgan Landry i Charlie Law. Chciabym te podzikowa Keithowi Kellerowi za hostowanie listy dyskusyjnej tego projektu. No i wreszcie chciabym podzikowa Patrickowi J. Volkerdingowi za Linuksa Slackware, Davidowi Cantrellowi, Loganowi Johnsonowi i Chrisowi Lumensowi za pierwsz wersj ksiki Podstawy Linuksa Slackware. Bez ich pracy ta ksika by nie zaistniaa. Wkad do projektu, duy i may, wnioso wielu, wielu innych. Mam nadziej, e wybacz mi sab pami i niewymienienie ich. Alan Hicks, maj 2005

Rozdzia 1. Wprowadzenie do Linuksa Slackware


1.1 Co to jest Linux?
W 1991 roku Linus Torvalds zacz prac nad wasnym projektem jdrem systemu operacyjnego o nazwie Linux. Stworzy go, poniewa chcia mie system operacyjny oparty na Uniksie bez potrzeby wydawania kupy szmalu. Oprcz tego, chcia dokadnie pozna moliwoci procesora 386. Linux zosta udostpniony do powszechnego uytku za darmo, aby kady mg pozna go i wnosi do niego poprawki, zgodnie z Ogln Licencj Publiczn (General Public License) (wicej na jej temat znajduje si w sekcji 1.3 oraz Dodatku A). Dzi Linux jest jednym z gwnych graczy na rynku systemw operacyjnych. Przeportowano go na wiele architektur, m.in. Alpha firmy HP/Compaq, SPARC i UltraSPARC firny Sun oraz PowerPC firmy Motorola (uywane w komputerach Apple Macintosh i IBM RS/6000). Setki, jeli nie tysice programistw na caym wiecie pracuj nad rozwojem Linuksa. Uruchamia si na nim oprogramowanie serwerw internetowych, takich jak Sendmail, Apache czy BIND. Naley pamita, e termin Linux oznacza w istocie jdro rdze systemu operacyjnego. Ten rdze sprawuje kontrol nad procesorem komputera, pamici, dyskami twardymi i urzdzeniami peryferyjnymi. Wanie to tak naprawd robi Linux: kontroluje dziaania wykonywane przez komputer i dba o to, aby programy dziaay, jak naley. Rne firmy i pojedyncze osoby cz jdro i inne programy razem, tworzc system operacyjny. Kade takie poczenie nazywa si dystrybucj Linuksa.

1.1.1 Sowo na temat GNU


Projekt jdra Linux by przedsiwziciem jednej osoby, Linusa Torvaldsa, rozpocztym w 1991. Jednak, jak powiedzia Isaac Newton: Jeli widziaem dalej ni inni, to dlatego, e staem na ramionach gigantw. Gdy Linus Torvalds dopiero zaczyna prac nad jdrem, Fundacja Wolnego Oprogramowania (Free Software Foundation) ustalia ju zaoenia oprogramowania powstajcego dziki wsppracy wielu ochotnikw. Jej czonkowie nazwali swj projekt GNU, co oznacza GNU's Not Unix (GNU to nie Unix). Oprogramowanie GNU wykorzystywao jdro Linuksa od samego pocztku. Do skompilowania jdra czonkowie fundacji uyli swojego kompilatora gcc. Dzi wiele programw GNU, takich jak gcc

lub gnutar, stanowi podstaw wszystkich wanych dystrybucji Linuksa. Z tego te powodu wielu zwolennikw FSF stanowczo twierdzi, e ich praca powinna by ceniona na rwni z jdrem Linuksa. Gorco walcz o to, aby wszystkie dystrybucje Linuksa nazyway si dystrybucjami GNU/Linux. Jest to temat wielu prowadzonych w Internecie zaartych dyskusji, ktry przebija tylko odwieczna wita wojna o to, czy lepszy jest edytor vi, czy emacs. Celem ksiki nie jest dolewanie oliwy do ognia w tej dyskusji, ale wyjanienie nowicjuszom zawioci terminologii. Kiedy widzi si termin GNU/Linux, oznacza on dystrybucj Linuksa. Kiedy widzi si samo sowo Linux, oznacza ono albo jdro, albo dystrybucj. Czasem ciko si w tym poapa. Z reguy nie uywa si terminu GNU/Linux, poniewa jest trudniejszy do wymwienia.

1.2 Co to jest Slackware?


Slackware jest pierwsz powszechnie uywan dystrybucj Linuksa. Stworzy j Patrick Volkerding pod koniec 1992 roku i udostpni wiatu 17 lipca 1993. Volkerding dowiedzia si o Linuksie, kiedy poszukiwa niedrogiego interpretera LISP dla jednego ze swoich projektw. Spord nielicznych dostpnych w owym czasie dystrybucji Patrick wybra Linuksa SLS firmy Soft Landing System. Uywa tej dystrybucji, poprawiajc znalezione bdy. Wreszcie poczy wszystkie poprawki i stworzy z ich wykorzystaniem wasn dystrybucj dla siebie i znajomych. Szybko staa si ona popularna. Volkerding nada jej wic nazw Slackware i udostpni publicznie. W trakcie pracy doda do Slackware kilka nowych funkcji, m.in. atwy w obsudze program instalacyjny wykorzystujcy system menu. Wprowadzi rwnie zarzdzanie pakietami, ktre umoliwia uytkownikom proste dodawanie, usuwanie i aktualizowanie programw. Jest wiele powodw, dla ktrych Slackware pozostaje najstarsz uywan dystrybucj Linuksa: nie prbuje ona naladowa wygldu i zachowania systemu Windows, jest tak podobna do systemw unikowych, jak to moliwe. Nie prbuje ukrywa dziaajcych procesw pod penymi bajerw graficznymi interfejsami uytkownika (GUI Graphical User Interface) typu poka i kliknij. Zamiast tego daje uytkownikom pen kontrol, poniewa mog oni bezporednio zobaczy wszystko, co dzieje si w systemie. Rozwj dystrybucji nie jest wyznaczany przez ostateczne terminy kolejne wersje pojawiaj si wtedy, kiedy s gotowe. Slackware jest dla ludzi, ktrych interesuje nauka i dostrajanie systemu do swoich potrzeb. Prostota i stabilno dystrybucji stanowi o tym, e bdzie si uywa jej jeszcze przez dugie lata. Ma ona opini mocnego serwera i znakomitej stacji roboczej. Na komputerach ze Slackware moe dziaa praktycznie kady meneder okien lub rodowisko graficzne, s te maszyny w ogle bez takiego rodowiska. Serwery slackwareowe wykorzystuje si we wszelkich moliwych zastosowaniach w firmach. Uytkownicy Slackware nale do najbardziej zadowolonych uytkownikw Linuksa. I kto to mwi. :^)

1.3 Open Source i Free Software


W spoecznoci linuksowej istniej dwa gwne ruchy ideologiczne. Ruch Wolnego Oprogramowania (Free Software), o ktrym napiszemy za chwil, dziaa na rzecz uwolnienia wszelkiego oprogramowania od ogranicze wasnoci intelektualnej. Jego zwolennicy uwaaj, e takie ograniczenia blokuj postp technologiczny i dziaaj przeciwko dobru ogu. Ruch Otwartych rde (Open Source) ma zasadniczo te same cele, ale prezentuje bardziej pragmatyczne podejcie do ich osignicia. Jego zwolennicy opieraj swoje argumenty na technicznych i ekonomicznych aspektach nieograniczonego udostpniania kodw rdowych. Mniej interesuj ich moralne i etyczne zasady Ruchu Wolnego Oprogramowania. Na drugim kocu tego kija s grupy, ktre chciayby utrzymywa cilejsz kontrol nad ich oprogramowaniem.

Na czele ruchu Wolnego Oprogramowania stoi Fundacja Wolnego Oprogramowania (Free Software Foundation) organizacja zbierajca fundusze dla projektu GNU. Wolne oprogramowanie jest w duej mierze oparte na ideologii. Czsto uywa si frazy free as in speech, not free as in beer (wolny jak w wolnoci wypowiedzi, a nie darmowy jak piwo). W skrcie, wolne oprogramowanie jest prb zagwarantowania pewnych praw zarwno dla uytkownikw, jak i programistw. Takie prawa oznaczaj moliwo dowolnego uytkowania programu, studiowania i modyfikacji kodw rdowych, dalszego rozpowszechniania rde i dokonanych modyfikacji. Aby zagwarantowa te prawa, stworzono Ogln Licencj Publiczn GNU (GNU General Public License). GPL, mwic w uproszczeniu, oznacza, e kady, kto rozpowszechnia skompilowany program na tej licencji, musi rwnie udostpni jego kod rdowy. Wolno mu rwnie dokonywa dowolnych modyfikacji programu, ale te modyfikacje musz rwnie by dostpne w postaci kodu rdowego. Gwarantuje to, e po otwarciu programu nie mona go zamkn, o ile nie wyra na to zgody wszyscy autorzy kadego fragmentu oprogramowania, take modyfikacji. Wikszo programw linuksowych jest rozpowszechniana na licencji GPL. Naley podkreli, e GPL nie mwi nic o pienidzach. Brzmi to dziwnie, ale mona pobiera opaty za wolne oprogramowanie. Okrelenie wolny oznacza swobod dostpu i modyfikacji kodu rdowego, a nie cen, ktr paci si za oprogramowanie. (Jednak, jeli kto sprzeda Ci, lub nawet da za darmo, skompilowan wersj programu na licencji GPL, ma obowizek udostpni jego kod rdowy.) Inn powszechnie stosowan licencj jest licencja BSD. W przeciwiestwie do GPL, BSD nie wymaga od programistw udostpniania kodw rdowych. Oprogramowanie rozpowszechniane na licencji BSD pozwala na dystrybucj programw w postaci binarnej lub rdowej pod tylko kilkoma warunkami. Nie wolno uywa nazwisk autorw jako reklamy programu. Licencja zwalnia te autorw z jakiejkolwiek odpowiedzialnoci za wszelkie szkody wynike z uytkowania ich oprogramowania. Wiele programw zawartych w dystrybucji Linux Slackware jest dostpnych na licencji BSD. Na czele powstaego pniej ruchu Otwartych rde stoi organizacja Inicjatywa na Rzecz Otwartych rde (Open Source Initiative OSI). Istnieje ona wycznie po to, aby zdobywa wsparcie dla oprogramowania typu open source czyli oprogramowania dostpnego w postaci kodu rdowego oraz gotowych programw. Ta organizacja nie ma adnej konkretnej licencji, wspiera natomiast rne rodzaje innych licencji typu open source. Zaoeniem OSI jest, aby coraz wicej firm wspierao oprogramowanie open source. OSI pozwala firmom na tworzenie wasnych odmian licencji i certyfikuje je pod wzgldem zgodnoci z zaoeniami ruchu. Wiele firm chce udostpnia kody rdowe, ale nie chc uywa licencji GPL. Poniewa nie maj moliwoci dokonywania znaczcych zmian w licencji GPL, OSI daje im moliwo stworzenia wasnej licencji i wydaje odpowiedni certyfikat zgodnoci. Fundacja Wolnego Oprogramowania i Inicjatywa na Rzecz Otwartych rde pomagaj sobie wzajemnie, ale nie s tym samym. FSF uywa specyficznej licencji i rozpowszechnia oprogramowanie na tej licencji. OSI poszukuje wsparcia dla wszystkich licencji open source, wczajc w to licencj FSF. Czasami zaoenia obu ruchw dotyczce udostpniania kodw rdowych stanowi powd do sporw. Jednak fakt, e obie zrnicowane ideologicznie grupy dziaaj w tym samym celu, daje im nalen pozycj i szacunek.

Rozdzia 2. Pomoc
Czsto zdarza si, e potrzebujesz pomocy dotyczcej jakiego polecenia, konfiguracji programu czy uruchomienia jakiego urzdzenia. Czasem po prostu chcesz lepiej zrozumie polecenie albo dowiedzie

si, jakie opcje udostpnia. Na szczcie istnieje wiele sposobw na uzyskanie pomocy. Podczas instalacji Slackware masz moliwo zainstalowania pakietw FAQ i HOWTO z grupy F. Poszczeglne programy rwnie zawieraj pliki pomocy z opisem ich opcji, konfiguracji i uytkowania.

2.1 Pomoc dostpna w systemie 2.1.1. man


Polecenie man (skrt od manual instrukcja, podrcznik) jest tradycyjn form dokumentacji online w systemach operacyjnych Unix i Linux. Skadaj si na ni odpowiednio sformatowane pliki, tzw. strony podrcznika (man pages). Takie strony napisano dla ogromnej wikszoci polece, s one rozpowszechniane razem z oprogramowaniem. Wykonanie man jakiepolecenie wywietli stron podrcznika dla (a jake) danego polecenia, w tym przypadku byby to wymylony program jakiepolecenie. Nietrudno si domyli, e liczba stron podrcznika szybko si zwiksza z kadym dodanym programem, co nawet dla zaawansowanego uytkownika moe by zbyt skomplikowane i pogmatwane. Dlatego strony s podzielone na ponumerowane sekcje. Ten system istnieje i sprawdza si od wielu lat, tak wic czsto spotkasz si z odsyaczami do numerw sekcji, gdzie znajduj si strony dotyczce odpowiedniego polecenia, programu czy nawet funkcji bibliotecznej uywanej przez programistw. Na przykad: Zobaczysz odsyacz man(1). Taka numeracja oznacza, e polecenie man jest udokumentowane w sekcji 1 (polecenia uytkownika). Moesz ucili, e potrzebna jest Ci strona podrcznika dotyczca polecenia man z sekcji 1, wpisujc man 1 man. Podawanie numeru sekcji jest uyteczne, jeli istniej strony podrcznika o tej samej nazwie, ale w rnych sekcjach. Tabela 2-1. Sekcje stron podrcznika Sekcja Sekcja 1 Sekcja 2 Sekcja 3 Sekcja 4 Sekcja 5 Sekcja 6 Sekcja 7 Sekcja 8 Zawarto polecenia uytkownika (tylko wprowadzenie) wywoania systemowe wywoania bibliotek C urzdzenia (np. hd, sd) formaty plikw i protokoy (np. wtmp, /etc/passwd, nfs) gry (tylko wprowadzenie) konwencje, pakiety makro itp. (np. nroff, ascii) administrowanie systemem (tylko wprowadzenie)

Oprcz man(1), istniej te polecenia whatis(1) i apropos(1). Oba su atwiejszemu odnajdywaniu informacji w systemie man. Polecenie whatis wywietla krtki opis polece systemowych, podobnie do kieszonkowego sownika czy informatora:

% whatis whatis whatis (1) - search the whatis database for complete words

Polecenie apropos szuka strony man zawierajcej dane sowo kluczowe:


% apropos wav cdda2wav (1) netwave_cs (4) oggdec (1) wavelan (4) wavelan_cs (4) wvlan_cs (4)

a sampling utility that dumps CD audio data into wav sound files Xircom Creditcard Netwave device driver simple decoder, Ogg Vorbis file to PCM audio file (WAV or RAW) AT&T GIS WaveLAN ISA device driver AT&T GIS WaveLAN PCMCIA device driver Lucent WaveLAN/IEEE 802.11 device driver

Aby dowiedzie si wicej na temat tych polece, przeczytaj ich strony podrcznika. ;)

2.1.2 Katalog /usr/doc


rda wikszoci programw, ktre tworzymy, zawieraj jaka dokumentacj. Pliki typu README, instrukcje obsugi, teksty licencji wszelkie rodzaje dokumentacji doczonej do rde s instalowane w katalogu /usr/doc. Kady program (zazwyczaj) instaluje wasn dokumentacj w katalogu: /usr/doc/$program-$wersja gdzie $program oznacza nazw programu, na temat ktrego poszukujesz informacji, a $wersja jest (nie inaczej) odpowiedni wersj programu zainstalowanego w systemie. Na przykad, aby przeczyta dokumentacj dotyczc polecenia man(1), uyj polecenia cd, aby przej do katalogu:
% cd /usr/doc/man-$version

Jeli lektura strony (albo stron) podrcznika nie da Ci wystarczajcych informacji lub nie znajdziesz ich w ogle, w nastpnej kolejnoci przeszukaj katalog /usr/doc.

2.1.3 Pliki typu HOWTO i mini-HOWTO


Zbir plikw HOWTO i mini-HOWTO to klasyczny przykad ducha idei spoecznoci Open Source. Te pliki s dokadnie tym, co oznacza ich nazwa: how to, czyli jak to zrobi. S to dokumenty i instrukcje opisujce, jak co wykona. Jeli zainstalowae zbir HOWTO, pliki HOWTO znajduj si w /usr/doc/Linux-HOWTOs, a mini-HOWTO w /usr/doc/Linux-mini-HOWTOs. W tej samej grupie pakietw znajduje si zbir FAQ. FAQ to akronim od Frequently Asked Question Czyli Najczciej Zadawane Pytania.

Te dokumenty s napisane w stylu Pytanie Odpowied na (a to ciekawostka) najczciej zadawane pytania. FAQ s doskonaym miejscem, w ktrym mona znale szybkie rozwizanie jakiego problemu. Jeli zdecydujesz si zainstalowa FAQ, znajdziesz je w katalogu /usr/doc/LinuxFAQs. Naprawd warto przeczyta te pliki, kiedy nie jeste absolutnie pewien, jak co wykona. Opisuj one zdumiewajco szeroki zakres tematw, najczciej w zdumiewajco wyczerpujcej formie. Znakomita lektura!

2.2 Pomoc dostpna w Sieci


Oprcz dokumentacji doczonej do systemu operacyjnego Linux Slackware, ogromne zasoby wiedzy i informacji s dostpne w Internecie.

2.2.1 Oficjalna strona internetowa i fora pomocy


Oficjalna strona internetowa http://www.slackware.com Oficjalna strona Slackware jest czasem nieaktualna, jednak wci s na niej zamieszczane informacje na temat najnowszych wersji dystrybucji. Istniao tam kiedy aktywne forum pomagajce uytkownikom, ale zniszczya je dziaalno trolli, wichrzycieli i malkontentw. Utrzymanie porzdku na forum zaczo wymaga zbyt wiele pracy, wic Patrick zamkn je. Archiwum starego forum, dostpne w Sieci do przeszukiwania i czytania, znajduje si pod adresem http://www.userlocal.com/phorum/. Po zamkniciu forum na http://slackware.com pojawio si kilka innych stron, ktre zaoferoway prowadzenie forw o Slackware. Po dugich przemyleniach Pat zdecydowa, e oficjalne forum Linuksa Slackware znajdzie si na www.linuxquestions.org. Pod tym adresem jest ono obecnie dostpne.

2.2.2 Pomoc dostpna przez e-mail


Kady, kto kupi oficjalny zestaw CD, ma prawo do darmowej pomocy przy instalacji, wiadczonej przez dewelopera za porednictwem poczty elektronicznej. Mimo tego naley pamita, e my, deweloperzy (i wikszo uytkownikw) Slackware, prezentujemy Star szko. To znaczy, e wolimy pomaga ludziom, ktrzy s naprawd zainteresowani i s skorzy pomc sami sobie. Zawsze bdziemy si stara pomc tym, ktrzy pisz do nas e-maile z prob o pomoc. Zanim jednak wylesz do nas e-mail, przeszukaj dokumentacj i stron internetow (szczeglnie FAQ i ewentualnie fora wymienione poniej). Prawdopodobnie szybciej uzyskasz pomoc w ten sposb, a czym mniej e-maili bdziemy dostawa, tym szybciej bdziemy w stanie pomc naprawd potrzebujcym. Adres e-mail dla pomocy technicznej to: support@slackware.com Inne adresy e-mail i informacje kontaktowe s zamieszczone na stronie www.
2.2.2.1 Listy mailingowe projektu Linux Slackware

Mamy kilka list mailingowych, dostpnych w formie periodyku i tradycyjnej. Oto informacje, jak je zasubskrybowa.

Aby zasubskrybowa list mailingow, wystarczy wysa e-mail na adres: majordomo@slackware.com z fraz subscribe [nazwa listy] w treci listu. Poniej znajduje si wykaz list, nazwy jednej z nich naley uy w e-mailu. Archiwa list mailingowych s zamieszczone na stronie Slackware pod adresem: http://slackware.com/lists/archive slackware-announce Lista slackware-announce suy do informowania o nowych wersjach, wanych uaktualnieniach i innych zdarzeniach. slackware-security Lista slackware-security suy do informowania o wanych kwestiach dotyczcych bezpieczestwa. Na t list s natychmiast wysyane wszelkie, zwizane bezporednio ze Slackware, ogoszenia dotyczce exploitw, luk zabezpiecze itp. Te listy s rwnie dostpne w formie periodyku (digest). To znaczy, e dostajesz jeden duy, poczony e-mail dziennie zamiast pojedynczych e-maili w cigu dnia. Jako e zwyky uytkownik nie moe wysya wiadomoci na te listy, a ponadto nie ma na nich duego ruchu, nie zalecam subskrybowania list w formacie periodyku. Jeli jednak sobie yczysz, taka forma jest dostpna: slackware-announce-digest lub slackware-security-digest.

2.2.3 Nieoficjalne strony i fora internetowe


2.2.3.1 Strony

Google http://www.google.com Pan i wadca wyszukiwarek. Uywaj, kiedy absolutnie, bezwzgldnie musisz znale wszelkie najdrobniejsze informacje dotyczce jakiego problemu. Nie przyjmuj adnych rodkw zastpczych. Google:Linux http://www.google.com/linux Wyszukiwanie dotyczce Linuksa Google:BSD http://www.google.com/bsd Wyszukiwanie dotyczce BSD. Slackware jest tak blisko spokrewniony z oryginalnymi systemami uniksopodobnymi, e wikszo informacji znaleziona tutaj jest szczegowa i w prawie 100% ma zastosowanie w Slackware. Czsto informacje znalezione tutaj s o wiele bardziej techniczne ni wyniki

wyszukiwania linuksowego, ktre s bardziej zorientowane na sfer Public Relations. Google:Groups http://groups.google.com Wyszukiwanie diamentw mdroci w kopalni postw usenetowych. userlocal.com http://userlocal.com Skarbnica wiedzy, dobrych rad, dowiadczenia z pierwszej rki i interesujcych artykuw. Tutaj pojawiaj si pierwsze doniesienia o nowinkach w wiecie Slackware.
2.2.3.2 Internetowe fora online

linuxquestions.org http://www.linuxquestions.org/questions/forumdisplay.php?forumid=14 Oficjalne forum uytkownikw Slackware. LinuxISO.org Slackware Forum miejsce, skd mona pobra Linuksa i gdzie mona uzyska pomoc alt.os.linux.slackware FAQ http://wombat.san-francisco.ca.us/perl/fom (od tum.:) Polskie forum o Slackware: http://forum.slackware.pl.
2.2.3.3 Grupy usenetowe (NNTP)

Usenet od dawna jest miejscem, w ktrym komputerowcy zbieraj si i pomagaj sobie nawzajem. Istnieje niewiele grup powiconych Linuksowi Slackware, jednak wikszo ich uytkownikw ma naprawd du wiedz. alt.os.linux.slackware alt.os.linux.slackware, znane lepiej jako aols (nie myli z AOL!) to jedno z najaktywniejszych miejsc, w ktrych mona znale pomoc techniczn dotyczc problemu ze Slackware. Podobnie jak w przypadku kadej grupy usenetowej, kilku niezbyt pomocnych uytkownikw (trolli) moe zepsu przyjemno cigymi ktniami. Nauczenie si, aby ignorowa trolli i rozpoznawanie ludzi naprawd pomocnych to podstawa korzystania z tego cennego rda wiedzy. (od tum.:) Polska grupa usenetowa: alt.pl.comp.os.linux.slackware.

Rozdzia 3. Instalacja
Przed rozpoczciem uywania Linuksa Slackware musisz skd go zdoby i zainstalowa. Samo zdobycie nie jest trudne. Wystarczy kupi oficjalny komplet pyt CD lub pobra system za darmo z Internetu. Instalacja te jest do prosta, o ile masz podstawow wiedz na temat swojego komputera i chcesz nauczy si czego nowego. Sam program instalacyjny w duej mierze prowadzi Ci krok po kroku. Dziki temu oprogramowanie mona zainstalowa i uruchomi w do krtkim czasie. Mwic szczerze,

Slackware szczyci si jednym z najkrtszych czasw instalacji wrd wszystkich duych dystrybucji Linuksa.

3.1 Skd wzi Slackware 3.1.1 Oficjalne komplety CD i zestawy pudekowe


Oficjalne komplety pyt CD z Linuksem Slackware mona naby w firmie Slackware, Inc. Taki komplet skada si z 4 pyt. Pierwsza zawiera podstawowe oprogramowanie potrzebne do uruchomienia serwerw i systemu X Window. Druga pyta zawiera system typu live jest to CD rozruchowy, z ktrego mona uruchomi Linuksa bezporednio. Taki system po uruchomieniu instaluje si w pamici operacyjnej RAM i stanowi instalacj tymczasow, przydatn np. do poznawania Linuksa, odzyskania danych lub przywrcenia dziaania systemu po bdzie. Ta pyta zawiera rwnie dodatkowe pakiety, takie jak rodowiska KDE i GNOME, a take, w katalogu extra, pewn liczb dodatkowych programw, niewymaganych do poprawnego dziaania systemu. Na trzeciej i czwartej pycie s umieszczone kody rdowe wszystkich programw zawartych w dystrybucji, jak rwnie oryginalna wersja tej ksiki. Moesz take kupi zestaw pudekowy. Zawiera on 4 pyty CD, drukowan kopi tej ksiki okadce i wiele slackwareowych gadetw, ktrymi moesz szpanowa przed kolegami. Moesz te kupi subskrypcje samych pyt CD po obnionej cenie. Preferowan metod dokonywania zakupw jest zamwienie w online'owym sklepie Slackware: http://store.slackware.com Zamwienie mona te zoy telefonicznie lub przez e-mail. Tabela 3-1. Informacje kontaktowe ze Slackware, Inc. Metoda telefon www e-mail poczta zwyka 1-(925) 674-0783 http://store.slackware.com orders@slackware.com 1164 Claremont Drive, Brentwood, CA 94513 Kontakt

3.1.2 Przez Internet


Linuksa Slackware mona pobra za darmo z Internetu. Mona wysya w takim przypadku e-maile z pytaniami i prob o pomoc, ale wyszy priorytet maj osoby, ktre nabyy oficjalny komplet pyt. Otrzymujemy wiele e-maili, a nasz czas jest ograniczony. Dlatego przed wysaniem listu przeczytaj najpierw rozdzia drugi Pomoc. Oficjalna strona internetowa projektu Linux Slackware to: http://www.slackware.com/ Podstawowy serwer FTP Linuksa Slackware to:

ftp://ftp.slackware.com/pub/slackware/ Pamitaj, e jakkolwiek nasz serwer ftp jest dostpny publicznie, nie ma nieograniczonej przepustowoci cza. Aby pobra Slackware, uyj raczej najbliszego serwera lustrzanego. Niepena lista takich serwerw znajduje si na naszej stronie pod adresem http://www.slackware.com/getslack.

3.2 Wymagania systemowe


Aby bezproblemowo zainstalowa Slackware, naley posiada co najmniej: Tabela 3-2. Wymagania systemowe Sprzt Procesor RAM Miejsce na dysku Napd 586 32 MB 1 GB CD-ROM 4x Wymagania

Jeli masz rozruchow pyt CD, prawdopodobnie nie bdziesz potrzebowa napdu dyskietek. Oczywicie, jeli nie posiadasz napdu CD, bdziesz potrzebowa stacji dyskietek, aby przeprowadzi instalacj sieciow. Do instalacji typu NFS jest potrzebna karta sieciowa. Przeczytaj sekcj NFS, aby dowiedzie si wicej na ten temat. Wymagania dotyczce miejsca na dysku mog by mylce. 1 GB z reguy wystarcza dla instalacji minimalnej. Jeli jednak chcesz przeprowadzi pen instalacj, bdziesz potrzebowa okoo 2 GB na system i dodatkowego miejsca na wasne pliki. Wikszo uytkownikw nie instaluje penego systemu, wielu z nich wystarcza wrcz 100 MB. Slackware mona zainstalowa na systemach z mniejsz iloci RAM, mniejszymi dyskami twardymi i sabszymi procesorami, ale wymaga to wicej pracy. Jeli si jej nie boisz, przeczytaj plik LOWMEM.TXT w drzewie plikw dystrybucji, aby uzyska kilka cennych rad na ten temat.

3.2.1 Grupy pakietw


Ze wzgldu na zachowanie prostoty, Slackware od pocztku podzielono na grupy pakietw (software series). Pierwotnie nazyway si one zestawami dyskietek (disk sets), poniewa przystosowano je do instalacji z dyskietek. Teraz grup pakietw uywa si do podziau oprogramowania Slackware na poszczeglne kategorie. Nie ma ju moliwoci instalacji z samych dyskietek. Oto krtki opis kadej grupy pakietw: Tabela 3-3. Grupy pakietw Grupa A Zawarto Podstawowy system. Zawiera oprogramowanie wystarczajce do uruchomienia systemu, edytor tekstu i podstawowy program do komunikacji.

AP D E F GNOME K KDE

Rne aplikacje niewymagajce systemu graficznego X Window. Narzdzia deweloperskie. Kompilatory, debugery, interpretery, strony podrcznika man. Edytor GNU Emacs. Dokumentacja FAQ, HOWTO i inna. Graficzne rodowisko uytkownika GNOME Kody rdowe jdra Linuksa K Desktop Environment. Graficzne rodowisko uytkownika, z wygldu i zachowania przypominajce systemy MS Windows i Mac OS. Zawiera wymagan przez KDE bibliotek Qt. Pakiety lokalizacyjne dla KDE Dynamicznie czone biblioteki, wymagane przez wiele programw. Programy do pracy w sieci. Demony, programy pocztowe, telnet, czytniki grup usenetowych itp. System formatowania dokumentw teTeX Jzyk programowania Tool Command Language. Zawiera Tk, TclX i TkDesk. Podstawowy system X Window Aplikacje graficzne, ktre nie nale do wikszych rodowisk graficznych (np. Ghostscript, Netscape). Konsolowe gry BSD.

KDEI L N T TCL X XAP Y

3.2.2 Metody instalacji


3.2.2.1 Z dyskietek

Kiedy mona byo zainstalowa caego Linuksa Slackware z dyskietek. Zwikszajce si rozmiary pakietw (a dokadniej, niektrych programw) spowodoway zarzucenie tej metody. Moliwo czciowej instalacji z dyskietek istniaa jeszcze w wersji 7.1. Prawie w caoci mona byo zainstalowa grupy pakietw A i N. Otrzymywao si wwczas podstawowy system, stanowicy baz dla doinstalowania reszty dystrybucji. Jeli planujesz instalacj z dyskietek (najczciej w przypadku, gdy masz stary sprzt), zwykle zaleca si inn metod lub uycie starszej wersji. Szczeglnie popularne s Slackware 4.0 i 7.0. Uwaga: Potrzebujesz dyskietek, jeli nie masz rozruchowego dysku CD lub chcesz przeprowadzi instalacj typu NFS.

3.2.2.2 Z CD-ROMu

Jeli masz rozruchowy dysk CD, dostpny w oficjalnym komplecie dyskw ze Slackware Linux, Inc. (zob. sekcj Skd wzi Slackware), instalacja z CD bdzie atwiejsza. Jeli nie, bdziesz musia uruchomi instalacj z dyskietek. By moe bdziesz potrzebowa specjalnych dyskietek, jeli masz nietypowy sprzt, nieobsugiwany przez jdro na rozruchowym CD. Od wersji Slackware 8.1 uywa si nowej metody tworzenia rozruchowych dyskw CD. Ta metoda nie dziaa poprawnie z niektrymi nietypowymi BIOSami (warto zauway, e wikszo rozruchowych dyskw z Linuksem ma z tym problemy). W takim przypadku rwnie jest zalecane uruchomienie instalacji z dyskietek. Przeczytaj sekcje 3.2.3 i 3.2.5, aby dowiedzie si wicej na temat wyboru i tworzenia potrzebnych dyskietek rozruchowych.
3.2.2.3 NFS

NFS (sieciowy system plikw Network File System) to sposb, w jaki udostpnia si systemy plikw zdalnym komputerom. Instalacja typu NFS pozwala na zainstalowanie Slackware z innego komputera w sieci. Maszyna, z ktrej si instaluje, musi udostpnia w sieci drzewo dystrybucji Slackware dla komputera, na ktrym ma by zainstalowany system. Wymaga to oczywicie pewnej wiedzy na temat NFS. Ten temat jest omwiony w sekcji 5.6. Instalacj NFS mona przeprowadzi metod PLIP (przez port rwnolegy), SLIP i PPP (jakkolwiek nie przez poczenie modemowe). Zaleca si jednak wykorzystanie karty sieciowej, jeli to moliwe. Instalowanie systemu operacyjnego przez port drukarki trwaoby bardzo, bardzo dugo.

3.2.3 Dyskietka rozruchowa


Dyskietka rozruchowa (boot disk) to dyskietka, z ktrej uruchamia si komputer, aby rozpocz instalacj. Zawiera ona skompresowany obraz jdra, ktre kontroluje sprzt podczas instalacji, dlatego jest niezbdna (chyba e uruchamiasz komputer z CD, co jest omwione w sekcji CD-ROM). Obrazy dyskietek rozruchowych znajduj si w katalogu bootdisks/ w drzewie dystrybucji. Jest wicej dyskietek rozruchowych ni mona tu wymieni (okoo 16). Pena ich lista, wraz z opisami, znajduje si w drzewie dystrybucji, w pliku bootdisks/README.TXT. Wikszo ludzi uywa jednak tylko obrazu dyskietki bare.i (dla urzdze IDE) lub scsi.s (dla urzdze SCSI). Instrukcje, jak utworzy dyskietk z odpowiedniego obrazu, znajduj si w sekcji 3.2.6. Po uruchomieniu komputera wywietli si monit o woenie dyskietki root. Naley to wykona i kontynuowa instalacj.

3.2.4 Dyskietki root


Dyskietki root (dyskietki gwne) zawieraj program instalacyjny i system plikw uywany podczas instalacji. S one rwnie niezbdne. Obrazy dyskietek root znajduj si w katalogu rootdisks w drzewie dystrybucji. Naley utworzy dwie dyskietki root z obrazw install.1 i install.2. W

tym katalogu s take obrazy network.dsk, pcmcia.dsk, rescue.dsk i sbootmgr.dsk.

3.2.5 Dyskietka dodatkowa


Dyskietka dodatkowa jest potrzebna w przypadku instalacji typu NFS lub jeli w komputerze znajduj si urzdzenia PCMCIA. Obrazy dyskietek dodatkowych s umieszczone w katalogu rootdisks w drzewie dystrybucji. Nazywaj si network.dsk oraz pcmcia.dsk. Ostatnio dodano obrazy innych dyskietek dodatkowych, takie jak rescue.dsk i sbootmgr.dsk. Dyskietka ratunkowa (rescue) to niewielka dyskietka root, ktra dziaa na dysku wirtualnym o wielkoci 4 MB w pamici RAM. Jest wyposaona w podstawowe programy sieciowe i edytor vi, uywany np. do poprawiania niewaciwych plikw konfiguracyjnych na niedziaajcym komputerze. Dyskietki sbootmgr.dsk uywa si do uruchamiania systemu z innych urzdze. Naley jej uy, jeli napd CD-ROM nie chce uruchomi Slackware z pyty CD. Ta dyskietka wywietla podczas startu wiele pyta na temat rozruchu i moe suy do obejcia problematycznych BIOSw. Dyskietka root wywietli monit o woenie dyskietki dodatkowej, gdy sama skoczy si uruchamia.

3.2.6 Tworzenie dyskietek rozruchowych


Po wybraniu odpowiedniego obrazu trzeba go przenie na dyskietk. Ten proces zaley od systemu, ktrego uywasz. Jeli masz Linuksa (lub jaki inny uniksopodobny system operacyjny), uyjesz polecenia dd(1). Zakadajc, e wybranym obrazem jest bare.i, a napd dyskietek to /dev/fd0, skadnia polecenia tworzcego dyskietk bare.i wyglda nastpujco:
% dd if=bare.i of=/dev/fd0

Jeli uywasz systemu operacyjnego firmy Microsoft, musisz uy programu RAWRITE.EXE. Znajduje si on w drzewie dystrybucji, w tym samym katalogu, co obrazy dyskietek. Zakadajc, e wybranym obrazem jest bare.i, a napd dyskietek to A:, otwrz okno DOS i wpisz:
C:\ rawrite a: bare.i

3.3 Partycjonowanie
Po uruchomieniu instalacji w wybrany sposb musisz podzieli dysk na partycje. Partycja to miejsce na dysku, gdzie zostanie utworzony linuksowy system plikw i zainstalowany Slackware. Zalecamy utworzenie co najmniej dwch partycji: jednej dla gwnego systemu plikw root (/) i jednej dla przestrzeni wymiany (swap). Po zakoczeniu uruchamiania si dyskietki root wywietli si znak zgoszenia logowania (login prompt). Zaloguj si jako root (bez hasa). W znaku zgoszenia powoki (shell prompt) wpisz cfdisk(8) lub fdisk(8). Program cfdisk ma interfejs bardziej przyjazny dla uytkownika ni standardowy fdisk, ale brakuje mu pewnych funkcji. Program fdisk w skrcie objaniamy poniej. Rozpocznij od uruchomienia fdisk dla Twojego dysku twardego. W Linuksie dyski twarde nie maj przypisanych liter napdw, ale s reprezentowane przez pliki. Pierwszy dysk IDE (pierwszy dysk gwny primary master) to /dev/hda, pierwszy dysk podrzdny (primary slave) to /dev/hdb itd.

Dyski SCSI maj podobn konwencj nazewnicz, ale w postaci /dev/sdX. Uruchom fdisk, przekazujc mu informacj, ktrym dyskiem ma si zaj:
# fdisk /dev/hda

Jak wszystkie dobre programy uniksowe, fdisk ma swj znak zgoszenia (a co, mylae, e menu?). Na pocztek powiniene sprawdzi istniejce partycje. Wykonaj to, wpisujc p po znaku zgoszenia fdisk:
Command (m for help): p

Wywietl si rnorakie informacje na temat aktualnie istniejcych partycji. Wikszo uytkownikw przeznacza osobny dysk w caoci dla Linuksa, wic usuwaj po prostu wszystkie istniejce na nim partycje, aby utworzy miejsce dla nowego systemu. KONIECZNIE WYKONAJ KOPI ZAPASOW WSZYSTKICH DANYCH, KTRE CHCESZ ZACHOWA, A KTRE ZNAJDUJ SI NA PRZEZNACZONYCH DO USUNICIA PARTYCJACH. Ewentualne odzyskanie danych po usuniciu partycji jest bardzo trudne, jeli nie niemoliwe, wic zawsze rb kopie zapasowe, zanim zaczniesz prac z partycjami. W tabeli z informacjami o partycjach wida m.in. numer partycji, jej rozmiar i typ. S tam te inne informacje, ale na razie si nimi nie przejmuj. Na pocztek usu wszystkie partycje na dysku, aby potem utworzy partycje linuksowe. Aby usun partycj, wpisz d:
Command (m for help): d Partition number (1-4): 1

T czynno powtrz dla kadej partycji. Po usuniciu wszystkich utwrz linuksowe. Zamy, e utworzysz jedn partycj dla systemu gwnego i jedn dla przestrzeni wymiany. Uwaga: Schematy partycjonowania w systemach uniksowych s tematem wielu zaartych dyskusji. Prawie kady uytkownik ma swj najlepszy sposb dzielenia. Powiniene utworzy co najmniej dwie partycje: jedn dla / i jedn dla wymiany. Z czasem wypracujesz najlepsz dla siebie metod. Ja uywam dwch podstawowych schematw. Pierwszy jest przeznaczony dla stacji roboczych. Tworz 4 partycje: /, /home, /usr/local i wymiany. Pozwala to na reinstalacj bd aktualizacj caoci systemu w / bez usuwania danych w /home i skompilowanych przeze mnie aplikacji w /usr/local. W drugim schemacie, przeznaczonym dla serwerw, zwykle zastpuj /usr/local przez /var. Wiele serwerw zapisuje informacje na tej partycji, wic oddzielenie jej od / ma pozytywny wpyw na wydajno. Na razie pozostan jednak przy dwch partycjach: / i wymiany. Partycje tworzy si poleceniem n:

Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4):1 First cylinder (0-1060, default 0):0 Last cylinder or +size or +sizeM or +sizeK (0-1060, default 1060): +64M

Pamitaj, aby tworzy partycje podstawowe (primary). Pierwsza bdzie partycja wymiany. Mwisz fdiskowi, aby utworzy podstawow partycj o numerze 1. Rozpoczyna si ona bdzie od cylindra 0. Dla ostatniego cylindra wpisz +64M. Otrzymasz 64-megabajtow partycj wymiany (rozmiar partycji wymiany zaley od iloci pamici RAM. Tradycyjnie tworzy si partycj wymiany dwa razy wiksz od RAM). Nastpnie stwrz partycj podstawow o numerze 2. Rozpocznij od pierwszego dostpnego cylindra, a zakocz na ostatnim moliwym:
Command (m for help):n Command action e extended p primary partition (1-4) p Partition number (1-4):2 First cylinder (124-1060, default 124):124 Last cylinder or +size or +sizeM or +sizeK (124-1060, default 1060):1060

Prawie skoczone. Musisz teraz zmieni typ pierwszej partycji na 82 (linuksowa partycja wymiany Linux swap). Wpisz t, aby zmieni typ, wybierz pierwsz partycj i wpisz 82. Przed zapisaniem zmian na dysku spjrz ostatni raz na tablic partycji. Uyj polecenia p w fdisku do jej wywietlenia. Jeli wyglda poprawnie, wpisz w. Zapisze to zmiany na dysku i zakoczy dziaanie programu fdisk.

3.4 Program setup


Po utworzeniu partycji moesz instalowa Slackware. Nastpnym krokiem bdzie uruchomienie programu instalacyjnego setup(8). Wystarczy wpisa setup po znaku zgoszenia powoki. Setup to wykorzystujcy menu program uywany do instalowania pakietw Slackware i konfigurowania systemu.

Witamy w programie instalacyjnym Linuksa Slackware. Wybierz opcj poniej, uywajc klawiszy strzaek GRA/D oraz SPACJI i ENTERA. Moesz te uywa innych klawiszy: '+', '-' i TAB. HELP (pomoc) KEYMAP ADDSWAP TARGET SOURCE SELECT INSTALL CONFIGURE EXIT Przeczytaj plik pomocy programu Slackware setup Zmie mapowanie klawiatury, jeli nie uywasz ukadu amerykaskiego (US) Ustaw partycj (lub partycje) wymiany Ustaw partycje docelowe Wybierz nonik rdowy Wybierz, ktre kategorie oprogramowania zainstalowa Zainstaluj wybrane oprogramowanie Zrekonfiguruj Linuksa Wyjd z programu instalacyjnego <OK> <Anuluj>

Podczas procesu instalacji przechodzisz krok po kroku przez poszczeglne opcje programu setup, w takiej kolejnoci, w jakiej s wymienione (nie musisz si jej trzyma, ale w innym przypadku najprawdopodobniej instalacja nie powiedzie si). Pozycje w menu wybierasz, uywajc klawiszy ze strzakami w gr i w d. Przyciski Okay i Cancel wybierasz, uywajc strzaek w prawo i w lewo. Oprcz tego, kada opcja ma odpowiadajcy jej klawisz, ktry jest podwietlony w nazwie. Opcje, ktre mona zaznaczy (oznaczone przez [X]), mona zaznacza i odznacza przy uyciu klawisza spacji.

Wszystko to jest oczywicie opisane w sekcji help programu setup, ale jak ju pisa ksik, to porzdnie.

3.4.1 Pomoc (HELP)


Jeli instalujesz Slackware po raz pierwszy, warto spojrze na ekran pomocy. Znajduj si tam krtkie opisy kadej czci programu setup (podobne do zawartych tutaj, ale nie tak szczegowe) i instrukcje, jak porusza si podczas instalacji.

Pomoc Linuksa Slackware Na pocztek troch pomocy dotyczcej pomocy. Kiedykolwiek podczas instalacji napotkasz przegldark tekstow tak jak ta, moesz si po niej porusza w ten sposb: STRONA W GR/SPACJA STRONA W D/'b' ENTER/STRZAKA W D/'j' STRZAKA W GR/'k' STRZAKA W LEWO/'h' STRZAKA W PRAWO/'l' '0' HOME/'g' Przejd w d o jedn stron Przejd w gr o jedn stron Przejd w d o jeden wiersz Przejd w gr o jeden wiersz Przewi w lewo Przewi w prawo Przejd na pocztek wiersza Przejd na pocztek pliku

END/'G' '/'

Przejd na koniec pliku Wyszukiwanie do przodu <OK>

3.4.2 Mapa klawiatury (KEYMAP)


Jeli potrzebujesz ukadu klawiszy innego ni qwerty uywany w Stanach Zjednoczonych, przeczytaj t sekcj. Moesz tu wybra rne alternatywne ukady klawiatury.

Wybierz jedn z nastpujcych map klawiatury. Jeli nie wybierzesz mapy klawiatury, zostanie uyta domylna mapa 'us.map' (mapa klawiatury US). Uyj klawiszy strzaka w gr/w d lub PageUp/PageDown, aby przewija list dostpnych map. <OK> <Anuluj>

3.4.3 Dodawanie partycji wymiany (ADDSWAP)

Program Slackware Setup znalaz partycj wymiany: Urzdzenie /dev/hda4 Rozruch <Tak> Pocztek Koniec 82 Bloki Id System <Nie> 4801 4865 522112+ Linuksowa partycja wymiany

Jeli dodae partycj wymiany (sekcja 3.3), teraz moesz j uruchomi. Partycje wymiany zostan automatycznie wykryte i wywietlone, bdziesz mg wybra jedn do sformatowania i uaktywnienia.

3.4.4 Partycje docelowe (TARGET)

Wybierz z poniszej listy partycj, ktrej chcesz uywa jako linuksowej partycji gwnej root (/). /dev/hda3 --Linux 21454807K (zakoczono dodawanie partycji, kontynuuj instalacj) <Wybierz> <Kontynuuj>

W sekcji partycji docelowych formatujesz inne partycje (nie wymiany) oraz przypisujesz im punkty montowania w systemie plikw. Wywietlona jest lista partycji na dysku twardym. Dla kadej z nich moesz wybra, czy j sformatowa. W zalenoci od wersji jdra moesz wybra midzy systemem plikw reiserfs (domylnym), ext3, ext2, jfs i xfs. Wikszo ludzi uywa reiserfs lub ext3. W przyszoci prawdopodobnie zostanie dodana obsuga reiserfs4. Pierwsz opcj w tej sekcji jest wybr partycji, na ktrej zostanie zainstalowany gwny system plikw (root, czyli /). Nastpnie bdziesz mg przypisa inne partycje do innych systemw plikw (na przykad zdecydowa, e trzecia partycja, /dev/hda3, bdzie zawieraa system plikw uytkownika /home. To tylko przykad, wybr naley do Ciebie).

3.4.5 Nonik rdowy (SOURCE)


W sekcji source wybierasz nonik rdowy, z ktrego instalujesz Slackware. Obecnie s do wyboru cztery rda: CD-ROM, partycja na dysku twardym, NFS, wczeniej zamontowany katalog.

Wybierz nonik, z ktrego bdzie zainstalowany Linux Slackware 1. Zainstaluj z dysku CD/DVD ze Slackware 2. Zainstaluj z partycji na dysku twardym 3. Zainstaluj z sieciowego systemu plikw (NFS) 4. Zainstaluj z wczeniej zamontowanego katalogu <OK> <Anuluj>

Wybr CD-ROM uruchamia instalacj z pyty CD. Wywietli si okno wyboru midzy automatycznym skanowaniem w poszukiwaniu napdu CD lub wybraniem go z listy znalezionych napdw. Upewnij si, e w napdzie znajduje si pyta ze Slackware, zanim uruchomisz skanowanie. Przy wyborze NFS wywietla si proba o podanie informacji na temat sieci oraz serwera NFS. Serwer NFS musi zosta uprzednio skonfigurowany. Pamitaj, e nie moesz uywa nazw hostw, musisz uywa numerycznych adresw IP, zarwno dla Twojego komputera, jak i serwera NFS (na dysku instalacyjnym nie ma programu tumaczcego nazwy na adresy). Oczywicie najpierw musisz uy dyskietki network.dsk, aby uruchomi kart sieciow. Najwicej moliwoci daje opcja uprzednio zamontowanego katalogu. Mona jej uy, aby zainstalowa system z dyskw Jaz, systemw NFS zamontowanych przez PLIP i dyskw z systemem plikw FAT. Zamontuj taki system w wybranej lokalizacji przed uruchomieniem setup, a potem podaj odpowiedni lokalizacj.

Wybr pakietw (SELECT)


W tej sekcji wybierasz grupy pakietw, ktre chcesz zainstalowa. S one opisane w sekcji 3.2.1. Musisz zainstalowa grup A, aby system dziaa, pozostae grupy s opcjonalne.

Czas wybra oglne kategorie oprogramowania, ktre maj by zainstalowane. Uyj spacji, aby zaznaczy lub odznaczy wybrane oprogramowanie. Przewijajc list za pomoc strzaek w gr/w d, moesz zobaczy wszystkie dostpne opcje. Zalecane grupy s wstpnie zaznaczone. Po zakoczeniu nacinij ENTER. [X] A Podstawowy system Linux [X] AP Rne aplikacje, ktre do dziaania nie potrzebuj systemu X [X] D Programowanie (C, C++, Lisp, Perl itd.) [X] E Edytor GNU Emacs [X] F Listy FAQ, dokumentacja HOWTO [X] GNOME rodowisko graficzne GNOME dla X [X] K rda jdra systemu Linux [X] KDE Biblioteka Qt i rodowisko graficzne K Desktop Environment dla X [ ] KDEI Obsuga rnych jzykw dla KDE <OK> Grupa A (podstawowa) zawiera jdro i gwne programy systemowe. <Anuluj>

3.4.7 Waciwa instalacja (INSTALL)


Po przejciu przez kroki target, source i select moesz w czci install wybra pakiety z zaznaczonych grup. Jeli nie trzymae si proponowanej kolejnoci, wywietli si monit o powrt do poprzednich sekcji. Tutaj moesz wybra spord szeciu metod instalacji: full, (penej), newbie (dla pocztkujcych), menu (z pytaniem o poszczeglne niewymagane pakiety), expert, custom i tag path (dla zaawansowanych).

Musisz wybra typ podpowiedzi, ktre maj by wywietlane podczas instalacji. Jeli masz duo miejsca na dysku, opcja full (pena) jest najszybsza, najatwiejsza i najbardziej idiotoodporna. Opcja newbie (dla pocztkujcych) wywietla najwicej informacji, ale jest o wiele bardziej czasochonna (wywietla pakiety jeden po drugim) ni sposoby wybierania oparte na menu. Moesz te wybra pakiety z menu za porednictwem trybw expert lub menu. Ktrego typu podpowiedzi przy instalacji chcesz uy? full (pena) Instaluj wszystko (prawie 2 GB oprogramowania) newbie (dla pocztkujcych) Wywietlaj szczegowe informacje (i uywaj plikw znacznikw) menu Wybierz grupy pakietw z interaktywnych menu expert (dla zaawansowanych) Wybierz poszczeglne pakiety z interaktywnych menu custom (uytkownika) Uyj wasnych plikw znacznikw w katalogach z pakietami tagpath (cieka do plikw znacznikw) Uyj plikw znacznikw w podkatalogach z wasnorcznie podan ciek help (pomoc) Przeczytaj plik pomocy dotyczcy trybw podpowiedzi <OK> <Anuluj>

Opcja full zainstaluje wszystkie pakiety ze wszystkich grup wybranych w sekcji select. Nie bd wywietlane dalsze monity. Jest to najatwiejsza metoda instalacji, poniewa nie musisz podejmowa adnych dodatkowych decyzji. Ta opcja zajmuje oczywicie najwicej miejsca na dysku. Opcja newbie instaluje wszystkie wymagane pakiety z wybranych grup. Dla pakietw opcjonalnych wywietli si monit, w ktrym moesz wybra Yes (Tak), No (Nie) lub Skip (pomi). Tak i Nie s oczywiste. Pomi spowoduje przejcie do nastpnej grupy pakietw. Dodatkowo jest wywietlany krtki opis kadego pakietu i ilo miejsca wymaganego na dysku, aby pomc Ci w wyborze. Ta opcja jest zalecana dla pocztkujcych uytkownikw, poniewa wymagane pakiety zostan na pewno zainstalowane. Z powodu wywietlanych monitw jest to jednak metoda do czasochonna. Menu to szybsza i bardziej zaawansowana wersja opcji newbie. Dla kadej grupy jest wywietlane menu, z ktrego moesz wybra rne niewymagane pakiety. Pakiety wymagane nie s widoczne. Opcja expert jest przeznaczona dla zaawansowanych uytkownikw. Daje ona pen kontrol nad tym, ktre pakiety s instalowane. Moesz nawet odznaczy pakiety bezwzgldnie wymagane, co poskutkuje niepoprawn instalacj. Z drugiej strony, w peni decydujesz, co znajdzie si w systemie. Po prostu zaznacz pakiety z kadej grupy, ktre chcesz zainstalowa. Ta opcja nie jest zalecana dla pocztkujcych, poniewa atwo zrobi sobie kuku. Opcje custom i tag path s rwnie dla zaawansowanych. Daj one moliwo instalacji wedug plikw znacznikw (tag files). Takie pliki uytkownik tworzy sam w drzewie dystrybucji. S uyteczne w przypadku szybkiej instalacji na wielu komputerach. Wicej informacji na temat plikw znacznikw znajduje si w sekcji 18.4. Po wybraniu metody instalacji nastpi jedna z rzeczy. Przy opcji menu pojawi si ekran z menu, pozwalajc wybra pakiety do zainstalowania. Jeli wybrae full, natychmiast rozpocznie si instalacja pakietw na partycji docelowej. Jeli wybrae newbie, automatycznie bd instalowane wymagane pakiety, a instalacja dojdzie do pierwszego pakietu niewymaganego. Istnieje moliwo, e podczas instalacji zabraknie miejsca na dysku. Jeli wybrae zbyt wiele pakietw, a masz za mao miejsca na partycjach docelowych, masz problem. Najbezpieczniej jest wybiera tylko cz pakietw, a pozostae doinstalowywa w miar potrzeb. atwo to zrobi, uywajc narzdzi do zarzdzania pakietami Slackware. Wicej informacji na ten temat znajduje si w rozdziale 18.

3.4.8 Konfiguracja (CONFIGURE)


W tej sekcji dokonujesz podstawowej konfiguracji systemu po zainstalowaniu pakietw. To, co robisz, zaley w duej mierze od tego, jakie pakiety zainstalowae. Na pewno jednak zobaczysz nastpujce ekrany:
3.4.8.1 Wybr jdra (INSTALL LINUX KERNEL)

Wywietli si pytanie, ktre jdro zainstalowa. Moesz wybra jdro z dyskietki startowej, z pyty CD ze Slackware lub z innej dyskietki, ktr (zawsze myl przyszociowo) przygotowae. Moesz te pomin ten krok, wybierajc Skip. W takim przypadku uyte zostanie jdro domylne i karawana pojedzie dalej.

Aby system mg si uruchomi, musisz zainstalowa jdro. Jeli doszede ju tak daleko, uywajc jdra z pyty instalacyjnej, powiniene zainstalowa je jako jdro systemowe (/boot/vmlinuz). Jeli wiesz, co robisz, moesz zainstalowa inne jdro z pyty CD ze Slackware albo z dyskietki. Moesz te pomin to menu i uy ju zainstalowanego jdra (np. standardowego jdra z grupy A). Ktrej opcji chcesz uy? bootdisk (pyta rozruchowa) Uyj jdra z pyty instalacyjnej cdrom Uyj jednego z jder z pyty Slackware floppy (dyskietka) Zainstaluj obraz jdra zimage lub bzimage ze zwykej DOS-owej dyskietki skip (pomi) Pomi to menu (uyj domylnego jdra /boot/vmlinuz) <OK> <Anuluj>

3.4.8.2 Tworzenie dyskietki rozruchowej (MAKE BOOT DISK)


Utworzenie dyskietki rozruchowej do ewentualnego uycia jej w przyszoci to dobry pomys. Masz tu moliwo sformatowania dyskietki i utworzenia jednego z dwch rodzajw dyskietek rozruchowych. Pierwszy rodzaj, simple (prosty), jak sama nazwa wskazuje, po prostu zapisuje jdro na dyskietce. Drugi, dajcy wicej moliwoci (i zalecany) sposb to lilo, ktry utworzy dyskietk z programem rozruchowym lilo. Wicej informacji na temat lilo znajduje si w sekcji 7.1 LILO. Moesz te pomin tworzenie dyskietki, wybierajc continue (kontynuuj). W takim przypadku dyskietka startowa nie zostanie utworzona.

Zalecane jest w tym momencie utworzenie dyskietki rozruchowej (albo dwch) systemu. W dyskietk do stacji (sformatowan lub nie) i wcinij ENTER, aby utworzy dyskietk rozruchow. Istniejca zawarto na dyskietce zostanie wymazana. Create (utwrz) Utwrz linuksow dyskietk rozruchow w /dev/fd0 Skip (Pomi) Pomi tworzenie dyskietki rozruchowej <Utwrz> <Pomi>

3.4.8.3 Modem (MODEM CONFIGURATION)


Wywietli si okno z pytaniem o informacje na temat modemu. Mwic dokadniej, zostaniesz zapytany, czy masz modem, a jeli tak, do ktrego portu szeregowego jest podczony.

W tej czci procesu konfiguracji zostanie utworzone dowizanie /dev/modem, wskazujce na urzdzenie dzwonice (ttyS0, ttyS1, ttyS2, ttyS3) reprezentujce modem domylny. Moesz zmieni to dowizanie pniej, jeli podczysz modem do innego portu. Jeli modem jest na karcie PCI, prawdopodobnie bdzie uywa urzdzenia /dev/ttyS4 lub wyszego. Wybierz urzdzenie dzwonice, ktrego chcesz uywa jako modemu: no modem (brak modemu) nie twrz dowizania /dev/modem /dev/ttyS0 (COM1: w systemie DOS) /dev/ttyS1 (COM2: w systemie DOS) /dev/ttyS2 (COM3: w systemie DOS) /dev/ttyS3 (COM4: w systemie DOS) /dev/ttyS4 modem PCI /dev/ttyS5 modem PCI /dev/ttyS6 modem PCI /dev/ttyS7 modem PCI <OK> <Anuluj>

Kolejne opcje konfiguracji mog si pojawi lub nie, zalenie od tego, czy zainstalowae odpowiednie pakiety.

3.4.8.4 Strefa czasowa (TIMEZONE CONFIGURATION)


To do proste: pojawi si pytanie, w ktrej strefie czasowej si znajdujesz. Jeli znajdujesz si w strefie Zulu, masz pecha: lista (baaardzo duga) jest uporzdkowana alfabetycznie, a strefa Zulu jest na samym kocu.

Wybierz jedn z poniszych stref czasowych dla komputera: <OK> <Anuluj>

3.4.8.5 Mysz (MOUSE CONFIGURATION)


Pojawia si pytanie, jaki rodzaj myszy posiadasz i czy chcesz, aby program gpm(8) (obsuga myszy w konsoli tekstowej) by uruchamiany przy starcie.

W tej czci procesu konfiguracji zostanie utworzone dowizanie /dev/mouse, wskazujce na mysz domyln. Moesz je pniej zmieni, jeli mysz nie bdzie dziaa, lub jeli bdziesz uywa innego urzdzenia wskazujcego. Informacje o myszy zostan te uyte, aby wybra waciwy protok dla linuksowego serwera myszy, gpm. Wybierz typ myszy z listy poniej: ps2 port myszy PS/2 (wikszo zwykych komputerw i laptopw) imps2 (Mysz Microsoft PS/2 Intellimouse) bare 2-przyciskowa mysz szeregowa zgodna z Microsoft ms 3-przyciskowa mysz szeregowa zgodna z Microsoft mman szeregowa mysz Logitech MouseMan i podobne msc mysz szeregowa MouseSystems (wikszo 3-przyciskowych myszy szeregowych) pnp Plug and Play (myszy szeregowe, ktre nie dziaaj z ms) usb Mysz podczona do portu USB <OK> <Anuluj>

3.4.8.6 Zegar sprztowy (HARDWARE CLOCK SET TO UTC?)


Ta sekcja pyta, czy wbudowany zegar komputera jest ustawiony wedug czasu uniwersalnego (Coordinated Universal Time UTC lub GMT). Wikszo komputerw nie jest, wic z reguy naley wybra No (Nie).

Czy zegar sprztowy jest ustawiony wedug czasu uniwersalnego (UTC/GMT)? Jeli tak, wybierz YES (tak). Jeli nie jeste pewien, co to jest, powiniene wybra NO (nie). NIE Zegar sprztowy jest ustawiony wedug czasu lokalnego TAK Zegar sprztowy jest ustawiony wedug czasu UTC <OK> <Anuluj>

3.4.8.7 Czcionka ekranowa (SELECT A SCREEN FONT)


Tutaj moesz wybra z listy czcionk, ktra bdzie uywana w konsoli.

Wybierz jedn z nastpujcych czcionek. Jeli Ci si spodoba, moesz jej uy jako nowej domylnej czcionki ekranowej. Moesz wybiera tyle razy, ile chcesz. <OK> <Anuluj>

LILO (INSTALL LILO)


Tutaj moesz zdecydowa, jak zainstalowa program adujcy Linuksa podczas startu komputera LILO (LInux LOader, wicej informacji na jego temat znajduje si w sekcji 7.1 LILO).

LILO (Linux Loader) to standardowy program adujcy system. Do wyboru jest instalacja prosta, ktra prbuje automatycznie skonfigurowa LILO, aby uruchamia Linuksa (a take DOS/Windows, jeli zostan znalezione). Opcja dla zaawansowanych uytkownikw umoliwia wiksz kontrol nad procesem instalacji. Jako e LILO czasami nie dziaa (a w przypadku niewaciwej instalacji moe uszkodzi partycje), jest te trzecia, bezpieczna opcja, ktra polega na pominiciu instalacji LILO. Moesz go zawsze zainstalowa pniej za pomoc polecenia liloconfig. Ktr opcj chcesz wybra? simple (prosta) Sprbuj zainstalowa LILO automatycznie expert (dla zaawansowanych) Uyj zaawansowanego menu konfiguracyjnego lilo.conf skip (pomi) Nie instaluj LILO <OK> <Anuluj>

Jeli Slackware ma by jedynym systemem w komputerze, simple powinno wystarczy. Jeli chcesz mie wybr midzy rnymi systemami, lepsze bdzie expert. Wicej informacji na ten temat znajduje si w sekcji 7.3. Trzecia opcja, do not install (nie instaluj), nie jest zalecana, chyba e wiesz, co robisz i masz naprawd dobry powd, aby nie instalowa LILO. Jeli uywasz expert, bdziesz mia wybr, gdzie zainstalowa LILO. Moesz wybra gwny sektor rozruchowy (MBR Master Boot Record) dysku twardego, superblok gwnej partycji linuksowej lub dyskietk.

3.4.8.9 Konfiguracja sieci (Network)


Konfiguracja sieci jest przeprowadzana przez program netconfig. Wicej informacji na ten temat znajduje si w sekcji 5.1.

3.4.8.10 Meneder okien (SELECT DEFAULT WINDOW MANAGER FOR X)


Tutaj wybierasz domylny meneder okien dla systemu graficznego X. Wicej informacji na ten temat znajduje si w rozdziale 6.

Wybierz domylny meneder okien, uywany w systemie X Window. Bdzie on okrela styl graficznego interfejsu uytkownika komputera. KDE i GNOME maj najwiksze moliwoci. Bdzie si z nich atwo korzystao ludziom przyzwyczajonym do Windows lub MacOS. Inne menedery zuywaj mniej zasobw systemowych lub zapewniaj inne wyjtkowe funkcje. xinitrc.kde KDE: rodowisko K Desktop Environment xinitrc.gnome rodowisko GNU Network Object Model Environment xinitrc.xfce atwe, lekkie i przyjemne rodowisko graficzne xinitrc.blackbox meneder okien blackbox xinitrc.fluxbox meneder okien fluxbox xinitrc.wmaker WindowMaker xinitrc.fvwm2 Wirtualny Meneder Okien (F cotam) (wersja 2.xx) xinitrc.fvwm95 FVWM2 podobny z wygldu i zachowania do Windows xinitrc.twm meneder okien Tab (bardzo prosty) <OK> <Anuluj>

Ostatni rzecz, niezalen od zainstalowanych pakietw, o jak zostaniesz zapytany, to czy chcesz

ustanowi haso administratora (root). Ze wzgldw bezpieczestwa jest to zalecane. Oczywicie, jak prawie wszystko w Slackware, zaley to tylko od Ciebie.

Rozdzia 4. Konfiguracja systemu


Zanim rozpoczniesz zaawansowan konfiguracj systemu, powiniene nauczy si, jak jest on zorganizowany, jakich polece uywa do znajdowania plikw i programw. Powiniene te zorientowa si, czy potrzebujesz skompilowa jdro, i wiedzie, jak to zrobi. Ten rozdzia zaznajomi Ci z organizacj systemu i plikami konfiguracyjnymi. Po przeczytaniu bdziesz mg zaj si konfiguracj na bardziej zaawansowanym poziomie.

4.1 Przegld systemu


Musisz dowiedzie si, jak jest skonstruowany system linuksowy, zanim zagbisz si w poszczeglne aspekty konfiguracji. Linux bardzo rni si od systemw DOS, Windows czy Macintosh (z wyjtkiem opartego na Uniksie MacOS X). Dziki temu rozdziaowi zaznajomisz si z ukadem Linuksa, co uatwi Ci dostosowanie systemu do wasnych potrzeb.

4.1.1 Ukad systemu plikw


Pierwsz wan rnic midzy Linuksem Slackware a DOS czy Windows jest system plikw. Przede wszystkim, nie uywa si liter do oznaczania partycji. W Linuksie jest jeden gwny katalog. Stanowi on mniej wicej odpowiednik dysku C: w DOSie. Kada partycja jest montowana w podkatalogu nalecym do tego gwnego. To co jak dysk twardy, ktry moe zwiksza si w nieskoczono. Katalog gwny nazywa si katalogiem root (ang. korze) i jest oznaczany pojedynczym ukonikiem (/). Takie rozwizanie moe si wydawa dziwne, ale w istocie bardzo uatwia ycie, kiedy chce si doda wicej miejsca na dysku. Zamy np., e skoczyo si miejsce, na ktrym znajdowaa si partycja /home. Wielu uytkownikw instaluje Slackware, tworzc jeden duy dysk root. Jako e partycj mona zamontowa w kadym katalogu, wystarczy po prostu kupi nowy dysk i zamontowa go pod /home. W ten sposb wszczepia si miejsce do systemu, i to bez zbdnego zachodu. Oto opis najwaniejszych katalogw gwnego poziomu w Slackware: bin Miejsce na podstawowe programy potrzebne do korzystania z systemu. Znajduje si tu powoka (shell), polecenia do poruszania si w systemie plikw (ls, cp itp.). Katalogu /bin z reguy nie modyfikuje si po instalacji. Jeli tak si dzieje, to raczej w wyniku instalowania zaktualizowanych pakietw. boot Miejsce na pliki uywane przez program rozruchowy LILO. Tego katalogu rwnie z zasady nie modyfikuje si po instalacji. Od wersji Slackware 8.1 mieci si tu jdro. We wczeniejszych wersjach znajdowao si po prostu w /, ale powszechn praktyk jest umieszczanie jdra i potrzebnych plikw w /boot, co daje moliwo uruchamiania wielu systemw. dev

W Linuksie wszystko jest plikiem, nawet urzdzenia takie, jak porty szeregowe, dyski twarde i skanery. Aby byy one dostpne, istniej specjalne typy plikw pliki urzdze (device nodes). Wszystkie znajduj si w katalogu /dev. Tak samo jest w wielu innych uniksopodobnych systemach. etc Tu znajduj si pliki konfiguracyjne systemu, od X Window, przez baz danych uytkownikw, a po skrypty startowe. Z czasem administrator zaznajomi si z tymi plikami. home Linux jest systemem wielouytkownikowym. Kady uytkownik w systemie ma swoje konto i osobny katalog na prywatne pliki. Nazywa si on katalogiem domowym lub macierzystym (home). Domylnie katalogi uytkownikw znajduj si w /home. lib Biblioteki potrzebne do podstawowego dziaania systemu, m.in. biblioteka C, ncurses, dynamiczny program adujcy i moduy jdra. mnt Tutaj s umieszczone tymczasowe punkty montowania dyskw twardych i innych mediw, takich jak np. cdromy i dyskietki. opt Pakiety opcjonalne. Ide tego katalogu jest instalowanie w nim programw w podkatalogu /opt/nazwaprogramu, tak aby atwiej je byo usuwa. Slackware instaluje w /opt kilka pakietw (m.in. KDE w /opt/kde), ale mona tam instalowa, co si chce. proc Katalog szczeglny. Nie jest to cz faktycznego systemu plikw, ale system wirtualny, ktry pozwala na dostp do informacji przekazywanych przez jdro. Wikszo tych informacji jest przekazywana za porednictwem plikw w /proc. Niektre z nich su take do przesyania pewnych informacji do jdra. Wykonaj cat /proc/cpuinfo i zobacz, co si wywietli. root Administrator systemu nazywa si root. Katalog domowy roota to /root, a nie /home/root. Powd jest prosty. Co by si stao, gdyby /home i / byy na oddzielnych partycjach, a /home nie daoby si zamontowa? Root chciaby si zalogowa, aby naprawi problem, ale nie mgby tego wykona, gdyby jego katalog domowy by na uszkodzonym systemie plikw. sbin

Podstawowe programy uywane podczas uruchamiania systemu oraz przez roota. Zwykli uytkownicy nie korzystaj z nich. tmp Miejsce na zapisywanie tymczasowych danych. Wszyscy uytkownicy mog zapisywa w tym katalogu i odczytywa z niego. usr Ten katalog zajmuje najwicej miejsca w Linuksie. Znajduje si w nim wikszo pozostaych danych: programy, dokumentacja, kody rdowe jdra i system X Window. Programy instaluje si najczciej wanie w tym katalogu. var Miejsce na pliki dziennikw zdarze (log files), dane podrczne (cache data), pliki blokady programw (lock files) i inne dane, ktre s czsto modyfikowane. Teraz wiesz z grubsza, jakie gwne katalogi istniej w systemie i co zawieraj. W nastpnej sekcji nauczysz si, jak atwo znajdowa potrzebne Ci pliki, eby nie musia robi tego rcznie.

4.1.2 Znajdowanie plikw


Znasz ju podstawow zawarto katalogw. Nie pomaga Ci to jednak w wyszukiwaniu tego, czego potrzebujesz. Mgby oczywicie przeczesywa katalog po katalogu, ale s atwiejsze sposoby. W Slackware istniej cztery podstawowe polecenia do wyszukiwania plikw.
4.1.2.1 which

Pierwsze z nich to which(1). Uywa si go do szybkiego zlokalizowania programu. Przeszukuje ono po prostu ciek systemow (PATH), zwraca pierwszy poszukiwany program i ciek do niego. Oto przykad:
% which bash /bin/bash

Jak wida, bash znajduje si w katalogu /bin. To polecenie jest do ograniczone, poniewa przeszukuje tylko katalogi wymienione w PATH.
4.1.2.2 whereis

Polecenie whereis(1) dziaa podobnie do which, ale przeszukuje rwnie strony podrcznika i pliki rdowe. Oto wynik poszukiwania whereis dla bash:
% whereis bash bash: /bin/bash /usr/bin/bash /usr/man/man1/bash.1.gz

Poznae lokalizacj nie tylko programu, ale te dokumentacji. To polecenie jednak te jest ograniczone.

Gdyby chcia znale konkretny plik konfiguracyjny, which lub whereis nie wystarczyyby.
4.1.2.3 find

Polecenie find(1) umoliwia przeszukiwanie systemu wedug szerokich kryteriw. Moesz uywa symboli wieloznacznych w nazwach plikw, zakresw czasu modyfikacji lub tworzenia, albo innych waciwoci. Na przykad, chcesz przeszuka cay system, aby znale domylny plik xinitrc:
% find / -name xinitrc /var/X11R6/lib/xinit/xinitrc

Wykonanie tego polecenia trwa dugo, poniewa musi przeczesa cae drzewo katalogw. Jeli wykonasz je jako zwyky uytkownik, otrzymasz komunikaty o braku dostpu do katalogw dostpnych tylko dla roota. Jednak find znalazo Twj plik, czyli zadziaao. Gdyby tylko dziaao szybciej...
4.1.2.4 slocate

Polecenie slocate(1) przeszukuje cay system, podobnie do find. Jednak, zamiast przechodzenia przez wszystkie pliki i katalogi, przeszukuje specyficzn baz danych. Baza danych jest aktualizowana codziennie rano, dlatego lista plikw jest aktualna. Moesz zaktualizowa baz slocate rcznie, uywajc polecenia updatedb(1) (przed wykonaniem updatedb musisz tymczasowo zalogowa si jako root za pomoc polecenia su). Oto przykad slocate w dziaaniu:
% slocate xinitrc # nie musimy si logowa jako root /var/X11R6/lib/xinit/xinitrc /var/X11R6/lib/xinit/xinitrc.fvwm2 /var/X11R6/lib/xinit/xinitrc.openwin /var/X11R6/lib/xinit/xinitrc.twm

Otrzymalimy wicej ni szukalimy, i to szybko. Uywajc wymienionych czterech polece, powiniene by w stanie znale wszystko, czego potrzebujesz.

4.1.3 Katalog /etc/rc.d


W tym katalogu mieszcz si pliki inicjalizacyjne, uywane podczas uruchamiania systemu. Slackware korzysta z plikw skonstruowanych w stylu BSD, w przeciwiestwie do skryptw typu System V, w ktrych przypadku trudniej zmieni konfiguracj bez stosowania specjalnych programw. W skryptach BSD kady poziom pracy (runlevel) ma odrbny plik rc. W System V dla kadego poziomu pracy jest przeznaczony odrbny katalog, w kadym z nich znajduj si rne skrypty. Taka struktura jest atwa w zarzdzaniu. Pliki inicjalizacyjne dziel si na kilka kategorii. S to skrypty: uruchomieniowe (startup), poziomw pracy (runlevels), inicjalizacji sieci i zgodnoci z System V. Wszystkie pozostae tradycyjnie wrzucimy do jednego worka o nazwie inne.
4.1.3.1 Skrypty uruchomieniowe

Pierwszym programem uruchamianym przez Slackware, oprcz jdra, jest init(8). Odczytuje on plik / etc/inittab(5) aby zobaczy, w jaki sposb uruchomi system. Nastpnie wykonuje skrypt /

etc/rc.d/rc.S, ktry przygotowuje system do uruchomienia na okrelonym poziomie pracy. Skrypt rc.S uaktywnia pami wirtualn, montuje systemy plikw, czyci niektre pliki dziennikw, inicjalizuje urzdzenia Plug and Play, aduje moduy jdra, konfiguruje urzdzenia PCMCIA i porty szeregowe oraz uruchamia skrypty System V (jeli je znajdzie). Ten skrypt jest do rozbudowany, ale w /etc/rc.d znajduj si inne skrypty, do ktrych rc.S si odwouje: rc.S Waciwy skrypt inicjalizujcy system. rc.modules aduje moduy jdra, takie jak sterownik karty sieciowej, obsug PPP i inne. Uruchamia te inny skrypt, rc.netdevice, jeli takowy istnieje. rc.pcmcia Wyszukuje i konfiguruje urzdzenia PCMCIA. Ma zastosowanie gwnie w laptopach, ktre s z reguy wyposaone w modem lub kart sieciow w tej technologii. rc.serial Konfiguruje porty szeregowe, uruchamiajc odpowiednie polecenia setserial. rc.sysvinit Wyszukuje skrypty System V dla danych poziomw pracy i wykonuje je. Jest to bardziej szczegowo opisane poniej.
4.1.3.2 Skrypty inicjalizacyjne poziomw pracy

Po inicjalizacji samego systemu init przechodzi do inicjalizacji poziomw pracy. Poziom pracy oznacza stan, w jakim komputer bdzie pracowa. Brzmi jak maso malane? Poziom pracy mwi programowi init, czy system ma akceptowa logowania wielu uytkownikw, czy tylko jednego, czy maj by uruchamiane usugi sieciowe, czy do obsugi logowa bdzie uywany system X Window, czy program agetty(8). Oto opis plikw definiujcych poszczeglne poziomy pracy w Linuksie Slackware: rc.0 Zatrzymanie systemu (poziom pracy 0). Domylnie jest to dowizanie symboliczne do rc.6. rc.4 Uruchomienie w trybie wielouytkownikowym (poziom pracy 4), ale z KDM, GDM lub XDM jako menederem logowania. rc.6 Zatrzymanie i ponowne uruchomienie systemu (poziom pracy 6).

rc.K Uruchomienie w trybie jednouytkownikowym (poziom pracy 1). rc.M Uruchomienie w trybie wielouytkownikowym (poziomy pracy 2 i 3), ale ze standardowym logowaniem w trybie tekstowym. Jest to domylny poziom pracy w Slackware.
4.1.3.3 Inicjalizacja sieci

Poziomy pracy 2, 3 i 4 uruchamiaj usugi sieciowe. Oto odpowiedzialne za to pliki: rc.inet1 Jest on tworzony przez program netconfig i odpowiada za konfiguracj interfejsu sieciowego. rc.inet2 Jest wykonywany po rc.inet1 i uruchamia usugi sieciowe. rc.atalk Uruchamia usugi AppleTalk. rc.httpd Uruchamia serwer stron WWW Apache. Podobnie do niektrych innych skryptw rc, mona go rwnie uywa do zatrzymywania lub restartowania usugi. Przyjmuje on argumenty start, stop i restart. rc.news Uruchamia serwer grup dyskusyjnych.
4.1.3.4 Zgodno z System V

Zgodno z System V wprowadzono w Slackware 7.0. Wiele innych dystrybucji Linuksa korzysta z niego zamiast ze stylu BSD. Zasadniczo w tym trybie kady poziom pracy ma swj podkatalog z odrbnymi skryptami, podczas gdy w BSD kady poziom ma jeden skrypt. Plik rc.sysvinit wyszukuje skrypty System V w katalogu /etc/rc.d i wykonuje je, jeli nale do odpowiedniego poziomu pracy. Jest to przydatne w przypadku niektrych komercyjnych programw, ktre instaluj pliki typu System V.
4.1.3.5 Inne pliki

Oto inne skrypty inicjalizacyjne. Z reguy s wykonywane przez jeden z gwnych skryptw wymienionych powyej, wic wystarczy wyedytowa ich tre.

rc.gpm Uruchamia ogln obsug myszy, ktra umoliwia kopiowanie i wklejanie w konsoli linuksowej. Czasami program gpm sprawia problemy, jeli uywa si go w X Window. Jeli w trybie graficznym masz problem z obsug myszy, usu prawo wykonania dla tego skryptu i zatrzymaj serwer gpm. rc.font aduje wybran przez uytkownika czcionk ekranow dla konsoli. rc.local Zawiera polecenia specyficzne dla danego komputera. Od razu po zainstalowaniu jest pusty, poniewa jest przeznaczony dla lokalnego administratora. Jest wykonywany na kocu, po wszystkich innych skryptach inicjalizacyjnych. Aby umoliwi wykonanie skryptu, wystarczy nada mu prawa wykonania poleceniem chmod. Aby wyczy tak moliwo, trzeba usun prawa wykonania. Wicej informacji na temat chmod znajduje si w sekcji 9.2.

4.2 Wybr jdra


Jdro (ang. kernel) jest czci systemu operacyjnego, ktra odpowiada za dostp do urzdze, kontroluje procesy i cay system. Obsuguje ono urzdzenia sprztowe, dlatego wybr waciwego jdra jest wanym krokiem podczas konfiguracji. W Linuksie Slackware jest dostpnych kilkanacie prekompilowanych jder do wyboru. Kade z nich ma standardowy zestaw sterownikw oraz sterowniki dodatkowe. Moesz uywa jdra prekompilowanego bd skompilowa wasne ze rde. Tak czy owak, musisz by pewien, e w jdrze znajduj si sterowniki sprztu, jaki posiadasz.

4.2.1 Katalog /kernels na CD-ROMie Slackware


Prekompilowane jdra Slackware znajduj si w katalogu /kernels na pycie CD lub w repozytorium FTP w gwnym katalogu Slackware. Lista dostpnych jder zmienia si z wersji na wersj, dlatego waciwym rdem dokumentacji na ten temat s zawsze odpowiednie pliki w tym katalogu. W / kernels znajduj si podkatalogi dla poszczeglnych jder. Maj tak sam nazw jak odpowiednia dyskietka rozruchowa. W kadym podkatalogu s nastpujce pliki: Plik System.map bzImage config Jego przeznaczenie mapa systemu dla danego jdra obraz jdra informacja na temat konfiguracji ze rde dla danego jdra

Aby uy jdra, wystarczy skopiowa System.map i config do katalogu /boot, a obraz jdra skopiowa do pliku /boot/vmlinuz. Nastpnie naley uruchomi /sbin/lilo(8), aby zainstalowa LILO dla nowego jdra i uruchomi ponownie system. To caa procedura instalacji nowego

jdra. Jdra, ktrych nazwy kocz si na .i, to jdra IDE. To znaczy, e nie maj obsugi SCSI. Jdra, ktrych nazwy kocz si na .s, to jdra SCSI. Zawieraj obsug IDE z jder .i oraz dodatkowo SCSI.

4.2.2 Kompilacja jdra ze rde


Nowi uytkownicy Linuksa czsto zadaj pytanie Czy musz kompilowa jdro. Odpowied brzmi: to zaley. Czasami trzeba. W wikszoci przypadkw do poprawnego dziaania systemu wystarczy uy prekompilowanego jdra i dynamicznych moduw. Rekompilacja jest potrzebna, jeli chcesz zainstalowa zaktualizowan wersj jdra, ktrej jeszcze nie udostpniamy, albo jeli zmodyfikowae rda jdra, aby doda obsug jakiego nietypowego urzdzenia nieobecn w jdrach standardowych. Z pewnoci jest potrzebna dla uytkownikw komputerw wieloprocesorowych (SMP). Jdra kompilowane wasnorcznie dla danej maszyny z reguy dziaaj te o wiele szybciej. Warto skompilowa jdro zoptymalizowane dla danego typu procesora. Tworzenie wasnego jdra nie jest zbyt trudne. Po pierwsze, musisz upewni si, e masz zainstalowane rda jdra. Sprawd, czy zainstalowae pakiety z grupy K, a take D szczeglnie kompilator C, GNU make i GNU binutils. Najlepiej zainstalowa wszystkie pakiety z D, jeli zamierzasz tworzy i kompilowa oprogramowanie. rda najnowszej wersji jdra moesz te pobra z http://www.kernel.org/mirrors.
4.2.2.1 Kompilacja jdra Linuksa w wersji 2.4.x
% su Password: # cd /usr/src/linux

Najpierw naley doprowadzi rda do stanu podstawowego. Robi si to za pomoc polecenia make mrproper (wykonaj kopi zapasow pliku .config, poniewa to polecenie usunie go bez pytania).
# make mrproper

Teraz skonfiguruj jdro dla swojego systemu. W obecnie dostpnych jdrach s 3 opcje konfiguracji. Pierwsza to oryginalny system tekstowy oparty na pytaniach i odpowiedziach. Zadaje on wiele pyta i na podstawie odpowiedzi tworzy plik konfiguracyjny. Jego wad jest to, e jeli udzielisz jakiej zej odpowiedzi, musisz zacz od pocztku. Druga, najpowszechniej wybierana opcja, to system oparty na menu. Trzecia opcja to graficzne narzdzie konfiguracyjne. Wybierz t, ktra Ci najbardziej odpowiada i wpisz jedno z polece:
# make config # make menuconfig # make xconfig (tekstowy system pyta i odpowiedzi) (tekstowy system wykorzystujcy menu) (system graficzny, musisz mie uruchomiony X Window)

Rys. 4-1. Program konfiguracyjny jdra oparty na menu

Do nawigacji w menu su klawisze strzaek. <Enter> wybiera podmenu --->. Podwietlone litery to klawisze skrtu. Wcinicie <Y> docza funkcje, <N> wycza je, <M> powoduje, e bd skompilowane jako moduy. Wcinij <Esc><Esc>, aby wyj, <?>, aby uzyska pomoc, </>, aby wyszukiwa. Legenda: [*] wbudowana [ ] wyczona [M] modu < > Opcje poziomu dopracowania kodu ---> Konfiguracja oglna ---> Obsuga moduw dynamicznych ---> Rodzaj i funkcje procesora ---> Opcje zarzdzania energi (ACPI, APM) ---> Opcje szyny (PCI, PCMCIA, EISA, MCA, ISA) ---> Formaty plikw wykonywalnych ---> Sterowniki urzdze ---> Systemy plikw ---> Obsuga profili ---> Praca nad jdrem ---> <Wybierz> <Wyjd> <Pomoc>

Dla nowicjuszy prawdopodobnie menuconfig bdzie najwygodniejszy. Poszczeglne opcje s objanione w ekranach pomocy. Po skonfigurowaniu jdra zakocz program, ktry zapisze odpowiednie pliki konfiguracyjne. Potem przygotuj drzewo rde do utworzenia jdra:

# make dep # make clean

Nastpnie skompiluj jdro poleceniem make bzImage:


# make bzImage

W zalenoci od szybkoci procesora wykonanie moe troch potrwa. Podczas kompilacji na ekranie wywietlaj si komunikaty kompilatora. Po utworzeniu obrazu jdra zbuduj czci, ktre oznaczye jako odrbne moduy:
# make modules

Teraz zainstaluj jdro i moduy. Oto odpowiednie polecenia:


# # # # # mv /boot/vmlinuz /boot/vmlinuz.old cat arch/i386/boot/bzImage > /vmlinuz mv /boot/System.map /boot/System.map.old cp System.map /boot/System.map make modules_install

Wyedytuj /etc/lilo.conf, aby doda sekcj adujc stare jdro, w razie gdyby nowe nie dziaao. Potem wykonaj /sbin/lilo, co zainstaluje nowy sektor rozruchowy. Na koniec uruchom system z nowym jdrem.
4.2.2.2 Kompilacja jdra Linuksa w wersji 2.6.x

Kompilacja jdra serii 2.6 nie rni si wiele od 2.4 czy 2.2, musisz pozna jednak rnice, zanim zaczniesz kompilacj. Niepotrzebne s kroki make dep i make clean, komunikaty wywietlane podczas kompilacji nie s tak szczegowe. Dziki temu proces budowania jest prostszy, ale ma te ograniczenia. Jeli napotkasz jakie kopoty, zaleca si wczenie szczegowych komunikatw. Wystarczy w tym celu doda V=1 do polecenia kompilacji. Dziki temu uzyskasz wicej informacji, ktre pomog deweloperowi jdra lub jakiemu pomocnemu linuksiarzowi w rozwizaniu problemu.
# make bzImage V=1

4.2.3 Moduy jdra


Moduy jdra to inna nazwa sterownikw urzdze, ktre mona dodawa do jdra podczas jego dziaania. Pozwala to na dodawanie obsugi nowych urzdze bez potrzeby wyboru innego jdra lub jego rekompilacji. Moduy mona adowa i usuwa w kadej chwili, nawet w trakcie pracy systemu. Dziki temu administratorzy mog atwiej aktualizowa poszczeglne sterowniki. Mona skompilowa nowy modu i zaadowa go od razu po usuniciu starego, bez potrzeby ponownego uruchamiania komputera. Moduy znajduj si w katalogu /lib/modules/wersja jdra. Mona je adowa podczas startu systemu za porednictwem skryptu rc.modules. Jest w nim wiele szczegowych komentarzy i

przykady adowania sterownikw dla gwnych komponentw sprztowych. List aktywnych w danym momencie moduw wywietla si poleceniem lsmod(1):
# lsmod Module parport_pc parport

Size 7220 7844

Used by 0 0 [parport_pc]

W tym przykadzie wida, e jest zaadowany tylko modu obsugi portu rwnolegego. Moduy usuwa si poleceniem rmmod(1), a aduje poleceniami modprobe(1) lub insmod(1). Modprobe jest z reguy bezpieczniejsze, poniewa oprcz potrzebnego sterownika aduje te inne, od ktrych dany modu zaley. Wikszo uytkownikw nigdy nie musi rcznie adowa i usuwa moduw. Do zarzdzania moduami suy system automatycznego adowania w jdrze, kmod. Domylnie jest on zawarty w jdrach Slackware. Umoliwia jdru automatyczne adowanie moduw, kiedy s potrzebne. Wicej informacji na temat kmod i jego konfiguracji jest w pliku /usr/src/linux/Documentation/kmod.txt. Aby go przeczyta, musisz zainstalowa rda jdra z pakietw lub pobra je z http://kernel.org. Wicej informacji znajdziesz te na stronach podrcznika dla poszczeglnych polece oraz w pliku rc.modules.

Rozdzia 5. Konfiguracja sieci


5.1 Wprowadzenie: netconfig Twoim przyjacielem
Podczas instalacji Slackware setup uruchomi program netconfig. Ten program przeprowadzi nastpujce czynnoci:

Zapyta o nazw komputera i nazw domeny. Krtko wyjani sposoby przydzielania adresu, powiedzia, kiedy i ktrego uywa, zapyta, ktrego z nich uy do skonfigurowania karty sieciowej: statycznego adresu IP; DHCP; interfejsu zwrotnego (loopback). Nastpnie zaproponowa wykrycie karty sieciowej.

Netconfig odpowiada za okoo 80% spraw zwizanych z konfiguracj sieci, jeli mu na to pozwolisz. Jednak z paru powodw powiniene dokadnie przejrze plik konfiguracyjny: 1. Nigdy nie bd pewien, e program skonfiguruje komputer poprawnie. Jeli uye takiego programu, powiniene sam przejrze wygenerowany plik konfiguracyjny. 2. Jeli cay czas uczysz si obsugi Slackware i Linuksa jako takiego, przejrzenie dziaajcej konfiguracji moe wiele pomc. Bdziesz przynajmniej wiedzia, jak wyglda poprawny plik konfiguracyjny, co pozwoli Ci pniej na rozwizywanie problemw z bdn konfiguracj systemu.

5.2 Konfiguracja sprztu sieciowego


Gdy zdecydujesz, e chcesz podczy komputer ze Slackware do jakiej sieci, przede wszystkim bdziesz potrzebowa obsugiwanej przez Linuksa karty sieciowej. Musisz dokadnie sprawdzi, czy karta jest na pewno zgodna z Linuksem (sprawd w Projekcie Dokumentacji Linuksowej i/lub dokumentacji doczonej do jdra, aby zobaczy, jakie karty s obecnie zalecane). Z reguy bdziesz pozytywnie zaskoczony iloci sprztu obsugiwanego przez najnowsze wersje jdra. Niemniej jednak, doradzam przed zakupem sprawdzenie jakiej listy zgodnoci sprztu (takiej jak The GNU/Linux Beginners Group Hardware Compatibility Links (http://www.eskimo.com/%7Elo/linux/hardwarelinks.html) czy The Linux Documentation Project Hardware HOWTO (http://www.linux.org/docs/ldp/howto/Hardware-HOWTO/)) dostpnej w Internecie. Troch czasu powiconego na poszukiwania moe zaoszczdzi pniej kilka dni lub nawet tygodni prb rozwizywania problemw z kart, ktra w ogle nie jest zgodna z Linuksem. Przegldajc list zgodnoci sprztu w Internecie lub dokumentacj jdra, warto zapisa, ktrego moduu bdziesz potrzebowa do obsugi karty sieciowej.

5.2.1 adowanie moduw obsugi sieci


Moduy jdra potrzebne ju przy starcie systemu s adowane przez plik rc.modules w katalogu / etc/rc.d, lub przez mechanizm automatycznego adowania uruchamiany przez /etc/rc.d/rc.hotplug. Standardowy plik rc.modules zawiera sekcj Network device support (obsuga urzdze sieciowych). Otwrz plik i odszukaj j. Na pocztku jest wpis sprawdzajcy istnienie wykonywalnego skryptu rc.netdevice w /etc/rc.d. Ten skrypt jest tworzony, jeli setup z powodzeniem wykry kart sieciow podczas instalacji. Pod tym blokiem if znajduje si lista urzdze sieciowych i wpisw modprobe. Wszystkie s zakomentowane. Odszukaj swoj kart sieciow, odkomentuj odpowiedni wiersz modprobe i zapisz plik. Jeli teraz uruchomisz rc.modules jako root, zaaduje si sterownik odpowiedniej karty sieciowej (oraz inne wymienione tam, niezakomentowane moduy). Zwr uwag na to, e niektre moduy (takie jak sterownik ne2000) wymagaj podania parametrw. Pamitaj, eby odkomentowa waciwy wpis.

5.2.2 Karty LAN (10/100/1000Base-T i Base-2)


Ten opis dotyczy wszystkich wewntrznych kart sieciowych na zczu ISA i PCI. Sterowniki dla nich znajduj si w moduach jdra i s opisane w poprzedniej czci. Program /sbin/netconfig powinien wykry kart i stworzy odpowiedni plik rc.netdevice. Jeli tak si nie stao, najprawdopodobniej prbujesz zaadowa modu niewaciwy dla karty. (Czsto jest tak, e karty tego samego producenta i tej samej marki s zbudowane z wykorzystaniem rnych ukadw, w zalenoci od wersji urzdzenia. Dlatego wymagaj rnych moduw). Jeli jeste pewien, e prbujesz adowa waciwy modu, sprawd jego dokumentacj. By moe potrzebuje on specjalnych parametrw podczas inicjalizacji.

5.2.3 Modemy
Podobnie jak karty LAN, istniej modemy podczane do rnych szyn. Jeszcze niedawno najczciej spotykane byy 8- i 16-bitowe modemy ISA. Dziki wysikom firmy Intel i producentw pyt gwnych, skierowanych na zakoczenie produkcji ISA, obecnie wikszo to modemy zewntrzne podczane do portu szeregowego albo USB, lub wewntrzne modemy PCI. Jeli chcesz uywa modemu pod

Linuksem, MUSISZ KONIECZNIE poszuka informacji na ten temat przed jego zakupem, szczeglnie jeli rozwaasz kupno urzdzenia PCI. Wiele, czy wrcz wikszo, modemw PCI sprzedawanych obecnie to tzw. winmodemy. Nie ma na nich wanych ukadw elektronicznych. Ich funkcje s przerzucone na procesor komputera i sterowniki dziaajce w systemie Windows. Oznacza to, e nie maj one standardowego interfejsu szeregowego, ktrego bdzie poszukiwa program PPPD podczas prby wdzwonienia si do Operatora Internetu (ISP Internet Service Provider). Jeli chcesz by absolutnie pewien, e modem bdzie wspdziaa z Linuksem, kup modem zewntrzny podczany do komputera przez port szeregowy. Bdzie on na pewno dziaa lepiej i bdzie oglnie atwiejszy w instalacji i utrzymaniu, jakkolwiek wymaga zewntrznego rda zasilania i jest droszy. Istniej strony internetowe ze sterownikami i pomoc dotyczc konfiguracji winmodemw. Niektrzy uytkownicy z powodzeniem zainstalowali i skonfigurowali sterowniki winmodemw opartych na ukadach Lucent, Conexant i Rockwell. Jednak poniewa oprogramowanie wymagane dla tych urzdze nie jest doczone do Slackware, a sterowniki rni si midzy sob, nie bdziemy si o nich rozpisywa.

5.2.4 PCMCIA
Podczas instalacji Slackware mona zainstalowa pakiet pcmcia (z grupy programw A). Zawiera on programy i pliki konfiguracyjne potrzebne, aby uywa kart PCMCIA pod Slackware. Naley uwzgldni, e pakiet pcmcia zawiera tylko standardowe, podstawowe oprogramowanie. NIE instaluje adnych sterownikw ani moduw. Dostpne moduy znajduj si w katalogu /lib/modules/`uname -r`/pcmcia. Prawdopodobnie bdziesz musia poeksperymentowa, aby uruchomi swoj kart sieciow. Potrzebna bdzie edycja pliku /etc/pcmcia/network.opts (dla karty Ethernet) lub /etc/pcmcia/wireless.opts (dla karty bezprzewodowej). Jak wikszo plikw konfiguracyjnych Slackware, zawieraj one duo wartociowych komentarzy, nie powiniene wic mie problemw z przeczytaniem ich i zrozumieniem, jakie zmiany wprowadzi.

5.3 Konfiguracja TCP/IP


W tym momencie karta sieciowa powinna by fizycznie zainstalowana w komputerze, a odpowiednie moduy zaadowane. Nie moesz jeszcze korzysta z sieci, ale wpisz polecenie ifconfig -a, aby uzyska informacje o karcie:

# ifconfig -a eth0 Link encap:Ethernet HWaddr 00:A0:CC:3C:60:A4 UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1 RX packets:110081 errors:1 dropped:0 overruns:0 frame:0 TX packets:84931 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:114824506 (109.5 Mb) TX bytes:9337924 (8.9 Mb) Interrupt:5 Base address:0x8400 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:2234 errors:0 dropped:0 overruns:0 frame:0 TX packets:2234 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:168758 (164.8 Kb) TX bytes:168758 (164.8 Kb)

Gdyby wpisa samo /sbin/ifconfig, bez opcji -a, nie wywietliyby si informacje o interfejsie eth0, poniewa karta sieciowa nie ma jeszcze przydzielonego adresu IP ani trasowania pakietw. Istnieje wiele sposobw na stworzenie i konfiguracj sieci. Mona jednak wyrni dwa gwne rodzaje: statyczny i dynamiczny. W sieciach statycznych kady wze (ang. node, w argonie komputerowcw kade urzdzenie z wasnym adresem IP) ma zawsze ten sam adres IP. W sieciach dynamicznych kontrol i przydzielaniem adresw IP zajmuje si jeden serwer, zwany serwerem DHCP.

5.3.1 DHCP
DHCP (Dynamic Host Configuration Protocol dynamiczny protok konfiguracji hosta) to sposb, w jaki adres IP moe by przydzielany komputerowi podczas jego uruchamiania. Kiedy uruchamia si klient DHCP, wysya on w sieci lokalnej (LAN Local Area Network) danie przydzielenia adresu do serwera DHCP. Serwer DHCP dysponuje pul (ang. pool, zwan te zakresem scope) dostpnych adresw. Odpowie dajcej maszynie, przydzielajc IP z puli razem z czasem dzierawy (ang. lease time). Kiedy czas dzierawy wyganie, klient musi skontaktowa si z serwerem i ponowi negocjacj adresu. Nastpnie klient zaakceptuje przyznany adres i skonfiguruje interfejs sieciowy z jego wykorzystaniem. Klienty DHCP uywaj, oprcz tego, pewnego cwanego patentu podczas negocjacji adresw. Klient pamita adres, ktry by mu ostatnio przyznany, i podczas kolejnej negocjacji wyle do serwera danie przydzielenia tego samego adresu. Jeli to moliwe, serwer to wykona. Jeli nie, przydzieli inny adres. Negocjacja wyglda mniej wicej tak: Klient: Czy w sieci lokalnej jest dostpny serwer DHCP? Serwer: Tak, jestem. Klient: Potrzebuj adresu IP. Serwer: Prosz, oto adres 192.168.10.10 na 19200 sekund. Klient: Dzikuj. Klient: Czy w sieci lokalnej jest dostpny serwer DHCP? Serwer: Tak, jestem. Klient: Potrzebuj adresu IP. Ostatnio dostaem 192.168.10.10. Mog poprosi o niego znowu? Serwer: Tak, oczywicie (albo: Nie, ale jest dostpny 192.168.10.12). Klient: Dzikuj.

Linuksowym klientem DHCP jest /sbin/dhcpcd. Jeli otworzysz /etc/rc.d/rc.inet1 w swoim ulubionym edytorze tekstw, zauwaysz odwoanie do /sbin/dhcpcd mniej wicej w poowie skryptu. Ten program wywoa negocjacj opisan powyej. Dhcpcd kontroluje rwnie upyw czasu dzierawy i automatycznie skontaktuje si z serwerem DHCP w odpowiednim czasie, aby odnowi adres. DHCP moe te kontrolowa inne rzeczy, takie jak uywany serwer ntp czy trasowanie pakietw. Ustawienie DHCP w Slackware jest proste. Wystarczy uruchomi netconfig i wskaza DHCP, gdy wywietli si odpowiednia opcja. Jeli masz wicej ni jedn kart sieciow i nie chcesz, aby eth0 bya konfigurowana przez DHCP, wyedytuj /etc/rc.d/rc.inet1.conf, zmieniajc odpowiedni zmienn dla danej karty sieciowej na YES (tak).

5.3.2 Statyczny adres IP


Statyczne adresy IP to adresy przyznane na stae, ktre mona zmieni tylko rcznie. Uywa si ich, kiedy administrator nie chce zmienia IP, np. w przypadku wewntrznych serwerw w sieci LAN, serwerw podczonych do Internetu czy ruterw. Statyczne adresy IP przypisuje si tylko raz. Inne komputery wiedz, e dana maszyna ma zawsze ten sam adres IP i mog si z ni skontaktowa zawsze za jego porednictwem.

5.3.3 /etc/rc.d/rc.inet1.conf
Jeli planujesz przypisanie adresu komputerowi ze Slackware, moesz to zrobi albo za porednictwem skryptu netconfig, albo wyedytowa /etc/rc.d/rc.inet1.conf. W tym pliku znajduj si wpisy:
# Primary network interface card (eth0) IPADDR[0]="" NETMASK[0]="" USE_DHCP[0]="" DHCP_HOSTNAME[0]=""

i dalej, bliej koca:


GATEWAY=""

Wystarczy po prostu umieci odpowiednie informacje midzy cudzysowami. Do tych zmiennych bdzie si odwoywa /etc/rc.d/rc.inet1, konfigurujc karty sieciowe podczas startu systemu. Dla kadej karty trzeba wpisa waciwe dane IP lub YES przy USE_DHCP. Slackware uruchomi poszczeglne interfejsy sieciowe zgodnie z zamieszczonymi informacjami, w kolejnoci, w jakiej wystpuj. Zmienna DEFAULT_GW ustawia domyln tras pakietw w Slackware. Wszelka komunikacja midzy Twoim komputerem a innymi komputerami w Internecie musi przej przez t bram, jeli nie poda si im innej trasy. Jeli uywasz DHCP, nie musisz raczej nic tu wpisywa, bo serwer DHCP sam poda odpowiedni bram.

5.3.4 /etc/resolv.conf
No dobra, masz ju adres IP, masz domyln bram, moesz sobie mie nawet 10 milionw dolarw (podziel si). Ale co z tego, skoro nie moesz tumaczy nazw komputerw na adresy IP? Nikt nie bdzie wpisywa 72.9.234.112 w pasku adresw przegldarki, eby wej na www.slackbook.org. No i komu oprcz autorw ksiki chciaoby si zapamitywa ten adres IP? Musimy ustawi serwer DNS, ale jak? Tu do gosu dochodzi /etc/resolv.conf. By moe masz ju odpowiednie opcje w /etc/resolv.conf. Jeli konfigurujesz sie przez DHCP, serwer DHCP powinien zaj si aktualizacj tego pliku (technicznie rzecz biorc, serwer po prostu mwi klientowi dhcpcd, co w nim wpisa, a klient to wykonuje). Jeli jednak musisz zmieni list serwerw DNS rcznie, bdziesz musia sam zmodyfikowa /etc/resolv.conf. Oto przykad:
# cat /etc/resolv.conf nameserver 192.168.1.254 search lizella.net

Pierwszy wiersz jest prosty. Dyrektywa nameserver mwi, ktre serwery DNS odpytywa. Z koniecznoci s to zawsze adresy IP. Moe ich by dowolna ilo. Slackware bdzie sprawdza jeden po drugim, a napotka pasujc opcj. Drugi wiersz jest bardziej interesujcy. Dyrektywa search podaje list nazw domen, z ktrych komputer ma korzysta, kiedy wykonuje zapytanie do serwera DNS. Dziki temu mona skontaktowa si z komputerem, podajc tylko pierwsz cz FQDN (Fully Qualified Domain Name pena nazwa domeny). Jeli np. w ciece wyszukiwania (search) znajduje si slackware.com, moesz si skontaktowa z http://store.slackware.com, wysyajc zapytanie o samo store.
# ping -c 1 store PING store.slackware.com (69.50.233.153): 56 data bytes 64 bytes from 69.50.233.153 : icmp_seq=0 ttl=64 time=0.251 ms 1 packets transmitted, 1 packets received, 0% packet loss round-trip min/avg/max = 0.251/0.251/0.251 ms

5.3.5 /etc/hosts
Dobra, mamy ju dziaajcy serwer DNS. A jeli chcemy go obej lub doda wpis dla maszyny, ktrej serwer DNS nie ma na licie? Slackware ma lubiany przez wielu plik /etc/hosts, ktry zawiera lokaln list nazw DNS i odpowiadajcych im adresw IP.
# cat /etc/hosts 127.0.0.1 192.168.1.101 172.14.66.32

localhost locahost.localdomain redtail foobar.slackware.com

Wida, e komputer lokalny (localhost) ma adres 127.0.0.1 (zawsze zarezerwowany dla komputera lokalnego), maszyna redtail ma adres 192.168.1.101, a foobar.slackware.com 172.14.66.32.

5.4 PPP
Wielu uytkownikw cigle jeszcze czy si z Internetem za porednictwem poczenia dodzwanianego. Najpowszechniejsz metod czenia jest PPP, czasami take SLIP. Skonfigurowanie systemu tak, aby mg porozumiewa si z serwerem przez PPP jest cakiem proste. Doczylimy do Slackware w tym celu kilka pomocnych narzdzi.

5.4.1 pppsetup
W Slackware znajduje si program o nazwie pppsetup, ktry konfiguruje dodzwaniane konto w systemie. Wyglda i dziaa podobnie, jak netconfig. Aby go uruchomi, upewnij si, e jeste zalogowany jako root. Uruchom program, wpisujc pppsetup. Program zada szereg pyta, na ktre podasz waciwe odpowiedzi informacje o modemie i cigu inicjalizacyjnym modemu, numer telefonu operatora Internetu. Niektre pozycje bd ustawione domylnie, co w wikszoci przypadkw jest odpowiednie. Po uruchomieniu pppsetup utworzy dwa programy ppp-go i ppp-off. Uywa si ich odpowiednio do uruchamiania i zatrzymywania poczenia PPP. Znajduj si one w /usr/sbin, a do ich wykonania potrzebne s prawa roota.

5.4.2 /etc/ppp
Wikszoci uytkownikw wystarczy uruchomienie pppsetup. Czasami jednak trzeba dostosowa niektre wartoci uywane przez demona PPP. Wszystkie opcje konfiguracyjne znajduj si w / etc/ppp. Oto lista i przeznaczenie poszczeglnych plikw: ip-down ip-up options Ten skrypt jest wykonywany przez pppd po zakoczeniu poczenia PPP. Ten skrypt jest wykonywany przez pppd po nawizaniu poczenia PPP. Wpisz tu polecenia, ktre maj by wykonywane po nawizaniu poczenia. Oglne opcje konfiguracyjne dla pppd.

options.demand Oglne opcje konfiguracyjne dla pppd przy uruchamianiu w trybie dzwonienia na danie (demand dialling). pppscript pppsetup.txt Polecenia wysyane do modemu. Zapis tego, co wpisae po uruchomieniu pppsetup.

Uwaga: Wikszo z tych plikw zostanie utworzona dopiero po uruchomieniu pppsetup.

5.5 Konfiguracja sieci bezprzewodowej


Sieci bezprzewodowe s nowink w wiecie komputerw. Zdobywaj jednak coraz wiksz popularno, poniewa coraz wicej ludzi kupuje laptopy i chc oni pracowa w sieci bez zawracania sobie gowy kablami. Ten trend utrzymuje si cay czas. Niestety, Linux nie obsuguje sieci bezprzewodowych tak

dobrze, jak tradycyjnych sieci kablowych. Aby skonfigurowa bezprzewodow kart sieciow 802.11, potrzebne s trzy rzeczy: 1. Sprztowa obsuga karty bezprzewodowej. 2. Konfiguracja karty tak, aby moga si podczy do punktu dostpowego. 3. Konfiguracja sieci.

5.5.1 Sprztowa obsuga karty bezprzewodowej


Obsug takiego sprztu zajmuje si jdro. Sterownik jest albo wbudowany w jdro, albo dostpny jako modu. Wikszo sterownikw do nowych kart ma posta moduw, wic wystarczy okreli potrzebny modu i zaadowa go przez /etc/rc.d/rc.modules. Program netconfig moe mie problemy z wykryciem karty bezprzewodowej, wic bdziesz potrzebowa okreli modu sam. Wicej informacji na temat sterownikw jdra dla rnych kart bezprzewodowych znajduje si na stronie http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/.

5.5.2 Konfiguracja ustawie bezprzewodowych


Wikszoci ustawie dokonuje si za pomoc programu iwconfig. Przeczytaj stron podrcznika iwconfig, aby dowiedzie si wicej. Najpierw musisz skonfigurowa punkt dostpowy (access point). Takie punkty maj rn terminologi i sposoby konfiguracji, bdziesz je wic musia odpowiednio przystosowa do posiadanej karty. Oglnie rzecz biorc, potrzebujesz co najmniej nastpujcych informacji:

identyfikator domeny (domain ID) lub nazw sieci (w iwconfig nazywa si to ESSID) kana, ktrego uywa WAP ustawienia szyfrowania, wczajc w to klucze (najlepiej w postaci heksadecymalnej).

INFORMACJA NA TEMAT WEP. WEP ma wiele wad, ale jest lepsze ni nic. Jeli wymagasz od swojej sieci bezprzewodowej wikszego stopnia bezpieczestwa, zainteresuj si VPN lub IPSec, ktre jednak wykraczaj poza zakres tej ksiki. Warto rwnie skonfigurowa WAP, aby nie ogasza swojego ID/ESSID. Polityka zabezpieczania sieci bezprzewodowych wykracza poza zakres sekcji, ale odrobina szukania na Google da Ci wicej ni chciae wiedzie. Zakadamy, e uywasz modprobe do adowania odpowiednich sterownikw i e zgromadzie potrzebne informacje. Wyedytuj teraz rc.wireless.conf, dodajc odpowiednie ustawienia. Ten plik jest cokolwiek nieporzdny. Najprociej zmodyfikowa tylko standardow sekcj, wpisujc ESSID i KEY, ewentualnie CHANNEL, jeli karta go wymaga (warto sprawdzi, czy karta dziaa bez wpisywania CHANNEL. Jeli tak, to dobrze, jeli nie, ustaw go). Jeli jeste odwany, moesz ustawi tylko niezbdne zmienne. Nazwy zmiennych w rc.wireless.conf odpowiadaj parametrom iwconfig, s odczytywane przez skrypt rc.wireless i przekazywane do odpowiednich polece iwconfig. Jeli klucz (key) jest w postaci heksadecymalnej, to wietnie. Moesz by prawie pewien, e WAP i iwconfig bd go akceptowa. Jeli masz tylko cig znakw, nie bdziesz na pewno wiedzia, jak WAP przeoy go na klucz heksadecymalny. Bdziesz musia zgadywa (albo zdoby klucz WAP w

formie heksadecymalnej). Po zmodyfikowaniu rc.wireless.conf uruchom rc.wireless jako root, a nastpnie uruchom rc.inet1, te jako root. Przetestuj poczenie bezprzewodowe za pomoc standardowych narzdzi, takich jak ping i iwconfig. Jeli masz te interfejs przewodowy, wycz go, uywajc ifconfig, aby poczenia nie przeszkadzay sobie wzajemnie. Sprawd te, czy wszystko dziaa po ponownym uruchomieniu systemu. Wiesz ju, jak zmodyfikowa /etc/rc.d/rc.wireless. Przyjrzyjmy si teraz dziaaniu iwconfig. Dziki temu bdziesz wiedzia, jak na szybko skonfigurowa wifi, kiedy jeste w kawiarni internetowej, restauracji albo innym punkcie dostpowym typu hot spot i chcesz podczy si do Sieci. Najpierw powiedz karcie bezprzewodowej, do jakiej sieci si podczy. Zastp eth0 przez odpowiedni numer uywany przez kart wifi i zmie mojasie na waciwy ESSID. Tak, wiemy, e nie jeste a takim gbem. Nastpnie ustaw klucz szyfrujcy uywany w sieci (jeli jest). Na koniec wybierz waciwy kana (jeli jest taka potrzeba).
# iwconfig eth0 essid "mojasie" # iwconfig eth0 key XXXXXXXXXXXXXXXXXXXXXXXXXXX # iwconfig eth0 channel n

To tyle, jeli chodzi o cz bezprzewodow.

5.5.3 Konfiguracja sieci


Przeprowadza si j tak samo, jak konfiguracj sieci przewodowej, co jest opisane we wczeniejszych sekcjach rozdziau.

5.6 Sieciowe systemy plikw


Dziaa ju poczenie TCP/IP z sieci. Moesz pingowa komputery w sieci lokalnej i w Internecie, o ile poprawnie skonfigurowae bram. Jak wiadomo, sens podczenia komputera do sieci ley w dostpie do informacji. Niektrzy konfiguruj sie dla zabawy. Wikszo jednak chce wspdzieli pliki i drukarki, mie dostp do informacji w Internecie czy gra w gry online. Zainstalowany i dziaajcy w Slackware protok TCP/IP to dobry rodek na drodze do osignicia celu, ale sam TCP/IP daje tylko bardzo podstawow funkcjonalno. Aby wspdzieli pliki, trzeba przenosi je midzy komputerami przy uyciu FTP lub SCP. Nie mona przeglda plikw na komputerze ze Slackware za pomoc ikony Otoczenie sieciowe czy Moje miejsca sieciowe z poziomu maszyn z Windows. Chcielibymy te mc bezproblemowo przeglda pliki na innych komputerach uniksowych. Innymi sowy, potrzebujemy sieciowego systemu plikw (network file system), aby mie przezroczysty, niezakcony dostp do plikw na innych komputerach. Programy do obrbki informacji, ktrych uywamy, tak naprawd nie musz wiedzie, na jakim komputerze jest przechowywany dany plik. Musz tylko wiedzie, e on istnieje i jak si do niego dosta. Zadaniem systemu operacyjnego jest wic zarzdzanie takim dostpem za pomoc lokalnych i sieciowych systemw plikw. Dwa najpowszechniej uywane sieciowe systemy plikw to SMB (zaimplementowany w systemie Samba) oraz NFS.

5.6.1 SMB/Samba/CIFS
SMB (Server Message Block blok komunikatw serwera) to potomek starszego protokou (NetBIOS), pierwotnie uywanego przez IBM w produkcie LAN Manager. Firma Microsoft zawsze interesowaa si NetBIOS i jego nastpcami (NetBEUI, SMB i CIFS). Projekt Samba istnieje od 1991. Pocztkowo napisano go, aby poczy IBM PC, na ktrym by uruchomiony NetBIOS, z serwerem uniksowym. Obecnie praktycznie wszdzie w cywilizowanym wiecie preferuje si SMB jako metod wspdzielenia plikw i usug drukowania w sieci, poniewa obsuguje j Windows. Plik konfiguracyjny Samby, /etc/samba/smb.conf, naley do plikw konfiguracyjnych, ktre maj najlepsze komentarze i dokumentacj. Umieszczono w nim przykadowe konfiguracje udziaw, ktre mona atwo dostosowa do swoich potrzeb. Jeli wymagasz lepszej kontroli dostpu, strona podrcznika dla smb.conf to lektura obowizkowa. Jako e Samb opisano najlepiej w wymienionych rdach, nie bdziemy tu przytaczali dokumentacji. Krtko jednak opiszemy podstawy. Plik smb.conf jest podzielony na wiele sekcji: jedna sekcja na udzia oraz sekcja globalna, w ktrej wpisuje si ustawienia wsplne dla wszystkich udziaw. Niektre ustawienia dziaaj tylko, jeli s umieszczone w sekcji globalnej, niektre tylko poza ni. Pamitaj, e nad wpisami w sekcji globalnej maj pierwszestwo wpisy w innych sekcjach. Przeczytaj strony podrcznika, aby dowiedzie si wicej. Najprawdopodobniej zmodyfikujesz smb.conf zgodnie z ustawieniami swojej sieci lokalnej. Proponuj zmieni nastpujce pozycje:
[global] # workgroup = NT-Domain-Name or Workgroup-Name, eg: LINUX2 workgroup = MOJAGRUPA

Zmie nazw grupy roboczej (workgroup), aby bya zgodna z nazw lokalnej grupy roboczej lub nazwy domeny.
# server string is the equivalent of the NT Description field server string = Serwer Samby

Serwer Samby bdzie nazw, pod jak komputer ze Slackware bdzie widoczny w windowsowym folderze Otoczenie sieciowe (lub Moje miejsca sieciowe).
# Security mode. Most people will want user level security. See # security_level.txt for details. NOTE: To get the behaviour of # Samba-1.9.18, you'll need to use "security = share". security = user

Prawie na pewno naley zaimplementowa zabezpieczenia na poziomie uytkownika (user level security) w Slackware.
# You may wish to use password encryption. Please read # ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba # documentation. # Do not enable this option unless you have read those documents encrypt passwords = yes

Jeli nie wczysz opcji szyfrowania hase (encrypt passwords), nie bdzie moliwe uywanie Samby z NT 4.0, Win2k, WinXP i Win2003. Wczeniejsze wersje Windows nie wymagaj szyfrowania hase do wspdzielenia plikw. SMB jest protokoem uwierzytelnianym (authenticated). To znaczy, e aby uywa tej usugi, trzeba poda poprawn nazw uytkownika i haso. Do przekazywania serwerowi samby, jakie nazwy uytkownikw i hasa s poprawne, uywa si polecenia smbpasswd. To polecenie przyjmuje kilka przecznikw, za ktrych pomoc mona dodawa zwykych uytkownikw lub nazwy maszyn. SMB wymaga dodania nazw komputerw NETBIOS jako nazw maszyn, co ogranicza liczb komputerw, z ktrych mona si logowa.
Adding a user to the /etc/samba/private/smbpasswd file. # smbpasswd -a user Adding a machine name to the /etc/samba/private/smbpasswd file. # smbpasswd -a -m machine

Naley pamita, e dana nazwa uytkownika lub maszyny musi ju istnie w /etc/passwd. Aby doda do niego nazw, wystarczy uy polecenia adduser. Uwaga: dodajc za pomoc adduser nazw maszyny, naley doda znak dolara ($) do nazwy maszyny. Nie powinno si tego robi przez smbpasswd to polecenie dodaje znak dolara samo. Jeli nie dodasz $ przy adduser, wystpi bd podczas dodawania nazwy maszyny do samby.
# adduser nazwamaszyny$

5.6.2 Sieciowy system plikw (Network File System NFS)


Sieciowy system plikw NFS pocztkowo stworzya firma Sun na potrzeby wasnej implementacji Uniksa Solaris. Jest on o wiele atwiejszy w instalacji i uruchomieniu w porwnaniu z SMB, ale jest te o wiele mniej bezpieczny. Podstawowym zagroeniem bezpieczestwa w NFS jest atwo podszycia si pod numery innych uytkownikw i grup podczas komunikacji midzy komputerami. NFS to protok nieuwierzytelniany. Projektuje si przysze wersje NFS, w ktrych poziom bezpieczestwa bdzie wikszy, ale w momencie pisania nie byy one powszechnie stosowane. Konfiguracja NFS jest zapisana w pliku /etc/exports. Po otwarciu domylnego pliku /etc/exports w edytorze zobaczysz pusty plik z dwoma wierszami komentarza na grze. Musisz doda wiersz dla kadego katalogu, ktry chcesz wyeksportowa, wraz z list klienckich stacji roboczych, ktre bd miay do niego dostp. Aby np. wyeksportowa katalog /home/foo do stacji roboczej Bar, wystarczy doda:
/home/foo Bar(rw)

do pliku /etc/exports. Poniej jest zamieszczony przykad ze strony podrcznika dla pliku exports:

# sample /etc/exports file / master(rw) trusty(rw,no_root_squash) /projects proj*.local.domain(rw) /usr *.local.domain(ro) @trusted(rw) /home/joe pc001(rw,all_squash,anonuid=150,anongid=100) /pub (ro,insecure,all_squash)

Jak widzisz, dostpne s rne opcje, ale wikszo z tych przedstawionych na przykadzie powinna by zrozumiaa. NFS dziaa przy zaoeniu, e dany uytkownik na jednym komputerze w sieci ma ten sam identyfikator uytkownika (User ID UID) na wszystkich komputerach w sieci. Podczas prby zapisu lub odczytu z klienta NFS na serwerze NFS jako cz dania zapisu/odczytu jest przesyany UID. Ten UID jest traktowany w taki sam sposb, jakby danie zapisu/odczytu pochodzio z lokalnego komputera. Jak widzisz, kto mgby dowolnie poda dany UID podczas uzyskiwania dostpu do zdalnego systemu. Wwczas mogyby si zdarzy, i zdarzyyby si, Niedobre Rzeczy (tm). Czciowym zabezpieczeniem jest montowanie kadego katalogu z opcj root_squash. Mapuje to UID kadego uytkownika podajcego si za roota na inny UID, uniemoliwiajc dostp z prawami roota do plikw i katalogw w wyeksportowanym katalogu. Ta opcja jest z reguy domylnie wczona jako rodek bezpieczestwa, ale autorzy zalecaj podanie jej tak czy owak w pliku /etc/exports. Moesz te wyeksportowa katalog bezporednia z wiersza polece na serwerze, uywajc do tego polecenia exportfs:
# exportfs -o rw,no_root_squash Bar:/home/foo

Ten wiersz eksportuje katalog /home/foo do komputera Bar i daje mu prawa zapisu/odczytu. Ponadto, serwer NFS nie bdzie wywoywa root_squash, co oznacza, e kady uytkownik komputera Bar z UID rwnym 0 (UID roota) bdzie mia na serwerze takie same przywileje, jak root. Skadnia faktycznie wyglda dziwnie (zwykle, podajc katalog w postaci komputer:/katalog/plik, odwoujesz si do pliku lub katalogu na danym komputerze). Wicej informacji na ten temat znajduje si na stronie podrcznika dla pliku exports.

Rozdzia 6. Konfiguracja X
Od wersji Slackware-10.0 w dystrybucji znajduje si rodowisko graficzne X Window dostarczone przez Xorg. X jest odpowiedzialne za graficzny interfejs uytkownika. Jest ono niezalene od systemu operacyjnego, w przeciwiestwie do Windows czy MacOS. System X Window jest zaimplementowany w postaci wielu programw, dziaajcych w przestrzeni uytkownika. Dwa gwne komponenty to serwer i meneder okien. Serwer oferuje niskopoziomowe funkcje w celu interakcji z kart graficzn, dlatego jest specyficzny dla danego systemu. Na czubku serwera znajduje si meneder okien, ktry udostpnia interfejs uytkownika. Zalet takiego rozwizania jest fakt, e moesz uywa wielu rnych graficznych interfejsw, zmieniajc po prostu meneder okien. Konfiguracja X moe by trudna i skomplikowana. Powodem tego jest dua liczba rnych kart wideo dostpnych dla architektury PC, z ktrych wikszo ma rne interfejsy programowania. Na szczcie

wikszo kart obsuguje podstawowy standard wideo, tzw. VESA. Jeli Twoja karta go obsuguje, bdziesz mg uruchomi X poleceniem startx od razu po zainstalowaniu systemu. Jeli to nie zadziaa, lub jeli chciaby uywa zaawansowanych funkcji zwikszajcych wydajno, np. sprztowej akceleracji lub sprztowego renderowania 3-D, bdziesz musia zrekonfigurowa X. Aby skonfigurowa X, musisz utworzy plik /etc/X11/xorg.conf. Zawiera od wiele szczegowych informacji na temat Twojej karty wideo, myszy i monitora. Ten plik jest do zoony, ale na szczcie istnieje kilka programw pomagajcych w jego utworzeniu. Opiszemy tu kilka z nich.

6.1 xorgconfig
Jest to prosty, wykorzystujcy menu program, podobny do programu instalacyjnego Slackware. Mwi on po prostu serwerowi X, aby sprawdzi moliwoci karty, a nastpnie stworzy najlepszy wstpny plik w oparciu o informacje, ktre uzyska. Wygenerowany plik /etc/X11/xorg.conf powinien stanowi dobry punkt wyjciowy dla wikszoci systemw (i powinien dziaa bez potrzeby edycji). To tekstowy program konfiguracyjny X, przeznaczony dla zaawansowanych administratorw systemu. Oto przykadowe dziaanie programu. Na pocztek, uruchom go:
# xorgconfig

Wywietli si cay ekran informacji o xorgconfig. Aby kontynuowa, wcinij ENTER. Program zapyta, czy waciwie skonfigurowae zmienn PATH. Powinna by dobra, wic wcinij ENTER. Rys. 6-1. Konfiguracja myszy w xorgconfig

Najpierw wybierz protok myszy. Wybierz jeden z listy poniej: Zalecany protok to Auto. Jeli masz bardzo star mysz lub nie chcesz wcza obsugi przez system albo autowykrywania, a take jeli masz dwuprzyciskow lub trjprzyciskow mysz szeregow, jest ona najprawdopodobniej typu Microsoft. Wpisz numer protokou: Wybierz mysz z przedstawionego menu. Jeli Twoja mysz szeregowa nie jest wymieniona, wybierz protok Microsoft jest on najbardziej powszechny i prawdopodobnie bdzie dziaa. Nastpnie xorgconfig zapyta o opcj ChordMiddle i Emulate3Buttons. Bd one szczegowo opisane na ekranach. Uyj ich, jeli rodkowy przycisk myszy nie dzia w X, albo jeli masz dwuprzyciskow mysz (Emulate3Buttons pozwala na symulacj zachowania rodkowego przycisku poprzez jednoczesne naciskanie obu przyciskw). Dalej wpisz nazw urzdzenia myszy. Domylny wybr, /dev/mouse, powinien dziaa, poniewa to dowizanie zostao utworzone podczas instalacji Slackware. Jeli masz uruchomiony serwer myszy GPM w trybie repeatera, moesz ustawi typ myszy jako /dev/gpmdata, aby X otrzymywao informacje o myszy za porednictwem gpm. W niektrych przypadkach, szczeglnie jeli masz mysz w standardzie Bus Mouse, moe to dziaa lepiej. Wikszo uytkownikw nie powinna jednak tego robi. Xorgconfig zapyta o wczenie specjalnych przypisa klawiszy. Jeli ich potrzebujesz, wpisz y. Wikszo ludzi moe wpisa n - wpisz to, jeli nie jeste pewien. Rys. 6-2 Synchronizacja pozioma w xorgconfig

Musisz poda zakres synchronizacji poziomej monitora. Wybierz jeden ze zdefiniowanych zakresw, odpowiednich dla standardowych typw monitorw, lub podaj wasny zakres.

Jest NIEZWYKLE WANE, aby nie podawa typu monitora z zakresem synchronizacji poziomej przewyszajcym moliwoci Twojego monitora. W razie wtpliwoci wybierz bezpieczne ustawienia. Synchronizacja pozioma w kHz; typ monitora z charakterystycznymi trybami 1 31.5; Standard VGA, 640x480 @ 60 Hz 2 31.5 35.1; Super VGA, 800x600 @ 56 Hz 3 31.5, 35.5; Zgodna z 8514, 1024x768 @ 87 z przeplotem (bez 800x600) 4 31.5, 35.15, 35.5; Super VGA, 1024x768 @ 87 Hz z przeplotem, 800x600 @ 56 Hz 5 31.5 37.9; Rozszerzona Super VGA, 800x600 @ 60 Hz, 640x480 @ 72 Hz 6 31.5 48.5; SVGA bez przeplotu, 1024x768 @ 60 Hz, 800x600 @ 72 Hz 7 31.5 57.0; SVGA o wysokiej czstotliwoci, 1024x768 @ 70 Hz 8 31.5 64.3; Monitor osigajcy 1280x1024 @ 60 Hz 9 31.5 79.0; Monitor osigajcy 1280x1024 @ 74 Hz 10 31.5 82.0; Monitor osigajcy 1280x1024 @ 76 Hz 11 Wpisz wasny zakres synchronizacji poziomej Wpisz wybrany numer (1-11): W nastpnej sekcji wpisujesz zakres synchronizacji monitora. Aby rozpocz konfiguracj monitora, wcinij ENTER. Zobaczysz list typw monitora wybierz jeden z nich. Uwaaj, aby nie przekroczy specyfikacji monitora, bo moe on ulec uszkodzeniu. Rys. 6-3 Synchronizacja pionowa xorgconfig

Musisz poda zakres synchronizacji pionowej monitora. Wybierz jeden ze zdefiniowanych zakresw poniej, ktre odpowiadaj standardowym typom monitora, lub wpisz wasny adres. Dla trybw z przeplotem waciwy bdzie zakres wysoki (np. 87 Hz, a nie 43 Hz). 1 50-70 2 50-90 3 50-100 4 40-150 5 Wpisz wasny zakres synchronizacji pionowej Wpisz wybrany numer: Wpisz zakres synchronizacji pionowej monitora (powiniene go znale w instrukcji obsugi monitora). Xorgconfig zapyta te o cigi znakw identyfikujce typ monitora w pliku xorg.conf. W tych 3 wierszach moesz wpisa to, co chcesz (albo nie wpisywa nic). Rys 6-4. Karta wideo w xorgconfig

Wpisz numer odpowiadajcy danej definicji karty. Wcinij enter, aby przej do nastpnej strony, q, aby kontynuowa konfiguracj. Teraz moesz przejrze baz danych typw kart wideo. Zapewne bdziesz chcia to zrobi, wic wpisz y i wybierz kart z poniszej listy. Jeli nie widzisz dokadnie takiej samej karty, wybierz tak, ktra ma taki sam ukad, to powinno dziaa poprawnie. Nastpnie powiedz xorgconfig, ile pamici RAM masz na karcie. Xorgconfig bdzie te chcia, aby wpisa tekst opisujcy kart wideo. W tych trzech wierszach moesz wpisa opis.

Kolejne pytanie dotyczy rozdzielczoci ekranu, ktrych chcesz uywa. Na pocztek wystarczy trzyma si zaproponowanych rozdzielczoci domylnych. Pniej moesz wyedytowa plik / etc/X11/xorg.conf i zmieni kolejno trybw, aby 1024x768 (lub inny wybrany tryb) by domylny. Na koniec xorgconfig zapyta, czy chcesz zapisa biecy plik konfiguracyjny. Po odpowiedzeniu yes (tak) plik konfiguracyjny X zostanie zapisany i proces konfiguracji si zakoczy. Teraz moesz uruchomi X poleceniem startx.

6.2 xorgsetup
Drugi sposb konfiguracji X to xorgsetup, automagiczny program konfiguracyjny doczony do Slackware. Aby go uruchomi, zaloguj si jako root i wpisz:
# xorgsetup

Jeli w systemie istnieje plik /etc/X11/xorg.conf (bo X byo ju wczeniej konfigurowane), wywietli si pytanie, czy zapisa kopi zapasow istniejcego pliku konfiguracyjnego przed kontynuacj. Nazwa oryginalnego pliku zostanie zmieniona na /etc/X11/xorg.conf.backup.

6.3 xinitrc
Program xinit(1) to waciwy program uruchamiajcy X. Jest on wywoywany przez polecenie startx(1), wic pewnie nie zwrcie na to uwagi (i raczej nie jest Ci to potrzebne). Plik konfiguracyjny xinit jest jednak istotny, poniewa opisuje, jakie programy (szczeglnie meneder okien) s uruchamiane po starcie X. Xinit najpierw sprawdza, czy w katalogu domowym jest plik . xinitrc. Jeli tak, jest on wykonywany. Jeli nie, zostaje uyty domylny plik systemowy / var/X11R6/lib/xinit/xinitrc. Oto przykadowy taki plik:

#!/bin/sh # $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $ userresources=$HOME/.Xresources usermodmap=$HOME/.Xmodmap sysresources=/usr/X11R6/lib/X11/xinit/.Xresources sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap # merge in defaults and keymaps if [ -f $sysresources ]; then xrdb -merge $sysresources fi if [ -f $sysmodmap ]; then xmodmap $sysmodmap fi if [ -f $userresources ]; then xrdb -merge $userresources fi if [ -f $usermodmap ]; then xmodmap $usermodmap fi # start some nice programs twm & xclock -geometry 50x50-1+1 & xterm -geometry 80x50+494+51 & xterm -geometry 80x20+494-0 & exec xterm -geometry 80x66+0+0 -name login

Wszystkie bloki if su doczaniu ustawie konfiguracyjnych z innych plikw. Najbardziej interesujca jest kocowa cz pliku, ktra uruchamia rne programy. Taka sesja X uruchamia meneder okien twm(1), zegar i trzy okna terminala. Zwr uwag na sowo exec przed ostatnim wywoaniem xterm. Zastpuje ono aktualnie dziaajc powok (t, ktra wykonaa skrypt xinitrc) poleceniem xterm(1). Gdy uytkownik zamknie to okno xterm, zakoczy sesj X. Aby dostosowa sposb uruchamiania X do wasnych potrzeb, skopiuj domylny /var/X11R6/lib/xinit/xinitrc do ~/.xinitrc i zmodyfikuj go, zmieniajc odpowiednie wiersze. Kocwka mojego pliku wyglda tak:
# Start the window manager: exec startkde

Zauwa, e w /var/X11R6/lib/xinit/ znajduje si kilka plikw xinitrc.*, ktre odpowiadaj konkretnym menederom okien i graficznym interfejsom uytkownika. Wybierz ten, ktry chcesz.

6.4 xwmconfig

Przez lata Unix by uywany wycznie jako system operacyjny serwerw, z wyjtkiem superwydajnych profesjonalnych stacji roboczych. Tylko uytkownicy o zainteresowaniach technicznych byli skonni do uywania uniksopodobnego systemu operacyjnego, co wida po graficznym interfejsie uytkownika (GUI). GUI miay tendencj do bycia bardzo prostymi, zaprojektowanymi do uruchamiania kilku z natury graficznych aplikacji, takich jak programy do renderowania obrazw i CAD. Wikszo czynnoci zwizanych z zarzdzaniem systemem i plikami wykonywao si z wiersza polece. Wielu producentw (Sun Microsystems, Silicon Graphics itp.) sprzedawao stacje robocze, ktre prboway zachowywa spjny wygld i zachowanie (look and feel), ale rnorodno zestaww narzdzi do tworzenia GUI, uywanych przez programistw, prowadzia do zakcenia tej spjnoci. Np. w dwch aplikacjach pasek przewijania by inny. Menu pojawiay si w rnych miejscach. Programy miay rne przyciski i okna wyboru. Kolory rniy si i z reguy byy wewntrznie zakodowane w kadym zestawie narzdzi. Dopki uywali tego gwnie ludzie zainteresowani komputerami, nie miao to wielkiego znaczenia. Wraz z pojawieniem si darmowych uniksopodobnych systemw i rosnc liczb graficznych aplikacji, X zyskao du grup uytkownikw. Wikszo z nich jest oczywicie przyzwyczajona do spjnego wygldu i zachowania pulpitu graficznego, takiego jak w Microsoft Windows czy Apple MacOS. Brak takiej spjnoci stanowi przeszkod w upowszechnieniu si X. Dlatego rozpoczto prac nad dwoma projektami: rodowiskiem K Desktop Environment (KDE) oraz GNU Network Object Model Environment (GNOME). Kade z tych rodowisk ma szeroki wybr aplikacji, od paskw zada i menederw plikw po gry i pakiety biurowe, napisane z uyciem tego samego zestawu narzdzi do tworzenia GUI i cile zintegrowane, aby stworzy jednolite, spjne rodowisko pracy. Rnice midzy KDE i GNOME s w sumie niewielkie. Rni si one od siebie, poniewa kade uywa innego zestawu narzdzi GUI. KDE stworzono z wykorzystaniem biblioteki Qt firmy Troll Tech AS, natomiast GNOME uywa GTK, zestawu narzdzi pierwotnie napisanego dla programu do obrbki grafiki The GNU Image Manipulation Program (w skrcie GIMP). Bdc oddzielnymi projektami, KDE i GNOME maj rnych projektantw i programistw, ktrzy hoduj rnym stylom programowania i filozofiom. W obu przypadkach efekt ich prac jest taki sam: spjne, cile zintegrowane rodowisko pracy i zbir aplikacji. Funkcjonalno, uyteczno i czyste pikno KDE i GNOME nie maj sobie rwnych wrd innych systemw operacyjnych. Oczywicie najlepsze jest to, e oba te zaawansowane rodowiska s darmowe. To znaczy, e moesz zainstalowa jedno lub oba (tak, naraz). Wybr naley do ciebie. Oprcz KDE i GNOME, w Slackware jest dostpna dua liczba menederw okien. Niektre zaprojektowano tak, aby emuloway (naladoway) inne systemy operacyjne, inne tak, aby atwo je byo konfigurowa, jeszcze inne tak, aby dziaay szybko. Jest ich do sporo. Moesz oczywicie zainstalowa tyle, ile chcesz, zapozna si z nimi i wybra ten, ktry Ci si najbardziej podoba. Aby uatwi wybr, w Slackware znajduje si program xwmconfig, ktrego mona uy do wyboru rodowiska lub menedera okien. Wpisz:
% xwmconfig

Rys. 6-5 Konfiguracja pulpitu w xorgconfig Wywietli si lista wszystkich zainstalowanych rodowisk i menederw okien. Wybierz z listy ten, ktry chcesz. Ten program bdzie musia uruchomi kady uytkownik systemu, poniewa kady moe chcie uywa rnych rodowisk albo menederw okien, a nie kademu bdzie si podoba wybr domylny, dokonany podczas instalacji.

Potem po prostu uruchom X i hulaj dusza, pieka nie ma.

6.5 xdm
W miar rosncej uytecznoci Linuksa jako systemu na desktopach, wielu uytkownikw chce, aby ich komputer po wczeniu od razu uruchamia rodowisko graficzne. Aby to osign, musisz ustawi Slackware tak, aby bezporednio uruchamia X i wybra graficzny meneder logowania. W Slackware s dostpne trzy graficzne menedery logowania: xdm(1), kdm i gdm(1). Graficzny meneder logowania xdm jest dostarczany wraz z systemem X.org. Dziki temu jest zawsze dostpny, ale nie ma tak wielu funkcji, jak inne menedery. Z KDE jest dostpny meneder kdm, a z GNOME gdm. Niezalenie od tego, ktry wybierzesz, bdziesz mg zalogowa si jako dowolny uytkownik i wybra rodowisko lub meneder, ktrego chcesz uywa. Slackware nie zawiera, niestety, takiego prostego programu, jak xwmconfig, ktry uatwia wybr menedera logowania. Jeli wic zainstalowane s wszystkie trzy, bdziesz musia troch poedytowa pliki, aby dokona wyboru. Najpierw jednak opiszemy, jak uruchomi rodowisko graficzne po wczeniu komputera. Aby uruchomi X po wczeniu komputera, musisz uruchomi go na poziomie pracy 4. Poziomy pracy to sposb przekazywania programowi init(8) rnych opcji po uruchomieniu systemu operacyjnego. W tym celu trzeba wyedytowa plik konfiguracyjny init /etc/inittab.

# These are the default runlevels in Slackware: # 0 = halt # 1 = single user mode # 2 = unused (but configured the same as runlevel 3) # 3 = multiuser mode (default Slackware runlevel) # 4 = X11 with KDM/GDM/XDM (session managers) # 5 = unused (but configured the same as runlevel 3) # 6 = reboot # Default runlevel. (Do not set to 0 or 6) id:3:initdefault:

Aby Slackware uruchamia si od razu ze rodowiskiem graficznym, wystarczy zmieni 3 na 4.


# Default runlevel. (Do not set to 0 or 6) id:4:initdefault:

Teraz Slackware bdzie si uruchamia na poziomie pracy 4 i wykonywa skrypt /etc/rc.d/rc.4. Ten plik uruchamia X i wywouje wybrany meneder okien. Wic jak si je wybiera? Istnieje kilka sposobw, wyjani je po tym, jak si przyjrzymy plikowi rc4.
# Try to use GNOME's gdm session manager: if [ -x /usr/bin/gdm ]; then exec /usr/bin/gdm -nodaemon fi # Not there? OK, try to use KDE's kdm session manager: if [ -x /opt/kde/bin/kdm ]; then exec /opt/kde/bin/kdm -nodaemon fi # If all you have is XDM, I guess it will have to do: if [ -x /usr/X11R6/bin/xdm ]; then exec /usr/X11R6/bin/xdm -nodaemon fi

Jak wida, rc.4 najpierw sprawdza, czy gdm jest plikiem wykonywalnym, a jeli tak jest, uruchamia go. Kolejny na licie jest kdm, nastpnie xdm. Jednym ze sposobw wyboru menedera logowania jest usunicie tych menederw, ktrych nie chcesz uywa, za pomoc removepkg. Wicej informacji na temat removepkg znajduje si w rozdziale 18. Moesz te usun prawa wykonywania z plikw, ktrych nie chcesz uywa. Polecenie chmod jest omwione w rozdziale 9.
# chmod -x /usr/bin/gdm

No i wreszcie moesz po prostu zakomentowa wiersze dotyczce menederw logowania, ktrych nie chcesz uywa.

# Try to use GNOME's gdm session manager: # if [ -x /usr/bin/gdm ]; then # exec /usr/bin/gdm -nodaemon # fi # Not there? OK, try to use KDE's kdm session manager: if [ -x /opt/kde/bin/kdm ]; then exec /opt/kde/bin/kdm -nodaemon fi # If all you have is XDM, I guess it will have to do: if [ -x /usr/X11R6/bin/xdm ]; then exec /usr/X11R6/bin/xdm -nodaemon

Wszystkie wiersze poprzedzone znakiem krzyyka (#) s traktowane jak komentarze i powoka pominie je. Dlatego, nawet jeli plik gdm istnieje i jest wykonywalny, powoka (w tym przypadku bash), nie bdzie go sprawdza.

Rozdzia 7. Uruchamianie
Proces uruchamiania Linuksa moe by atwy lub trudny. Wikszo uytkownikw instaluje Slackware, wcza komputer i tyle. A czasem samo uruchomienie systemu moe by cik, mozoln prac. W wikszoci przypadkw najlepiej dziaa program rozruchowy LILO. Linux Slackware udostpnia dwa programy rozruchowe: LILO i Loadlin. LILO dziaa z partycji dysku twardego, gwnego sektora rozruchowego lub dyskietki, dziki czemu jest bardzo wszechstronne. Loadlin dziaa z wiersza polece DOS, wyczajc DOS i uruchamiajc Linuksa. Innym popularnym programem rozruchowym jest GRUB. Nie jest on jednak wczony do Slackware ani oficjalnie wspierany. Programy wchodzce w skad tej dystrybucji trzymaj si zasady wyprbowane i dziaajce. Wprawdzie GRUB dziaa dobrze i ma pewne funkcje niedostpne w LILO, jednak LILO zajmuje si rozruchem systemu w sposb stabilny i od dawna sprawdzony. GRUB jest nowszy i nie zosta wystarczajco przetestowany. Poniewa nie doczono go do Slackware, nie bdziemy go tu opisywa. Jeli chcesz uywa GRUBa (by moe zosta zainstalowany z inn dystrybucj Linuksa i chcesz uywa go do uruchamiania wielu systemw), przeczytaj jego dokumentacj. Ta sekcja opisuje LILO i Loadlin, ktre s doczone do Slackware. Wyjania te kilka typowych scenariuszy uruchamiania wielu systemw i pomaga w ich konfiguracji.

7.1 LILO
Najczciej uywanym programem adujcym system jest LILO, czyli LInux LOader. Ma on wiele opcji konfiguracji i atwo go uywa do uruchamiania wicej ni jednego systemu. Do Slackware jest doczony konfigurator LILO liloconfig. Wykorzystuje on system menu. Jest uruchamiany po raz pierwszy w czasie instalacji, ale mona go uruchomi w kadym momencie, wpisujc w wierszu polece liloconfig. LILO odczytuje konfiguracj z pliku /etc/lilo.conf(5). Nie dzieje si to podczas kadego uruchamiania systemu, ale podczas kadej instalacji LILO. LILO trzeba ponownie zainstalowa w sektorze rozruchowym za kadym razem, gdy zmieni si jego konfiguracj. Wiele bdw LILO bierze si z tego, e zmieniono konfiguracj w lilo.conf, ale nie uruchomiono lilo, aby wprowadzi

zmiany. Liloconfig pomaga w tworzeniu pliku konfiguracyjnego, aby instalacja LILO bya moliwa. Jeli chcesz modyfikowa /etc/lilo.conf rcznie, reinstalacja LILO polega wycznie na wpisaniu /sbin/lilo (jako root) w wierszu polece i wciniciu enter. Podczas pierwszego uruchomienia liloconfig ekran wyglda tak: Rys. 7-1. liloconfig

Jeli nie instalowae wczeniej LILO, wybierz simple (instalacja prosta). Jeli jeste obeznany z Linuksem i LILO, opcja expert (dla zaawansowanych) bdzie szybsza. Po wybraniu simple rozpocznie si konfiguracja LILO. Jeli w jdro jest wkompilowana obsuga bufora ramek, liloconfig zapyta, jakiej rozdzielczoci wideo uywa. Jest to rozdzielczo uywana rwnie przez bufor ramek serwera X. Jeli nie chcesz, aby konsola dziaaa w specyficznym trybie wideo, wybierz opcj normal, czyli standardowy tryb tekstowy 80x25. Nastpne pytanie jest najwaniejsze i dotyczy miejsca, w ktrym LILO ma by zainstalowany. Poniej s objanione dostpne opcje: Root Ta opcja zainstaluje LILO na pocztku partycji root. Jest ona najbezpieczniejsza, jeli masz zainstalowane inne systemy operacyjne. Daje pewno, e nie zostan nadpisane inne programy rozruchowe. Wad jest to, e LILO bdzie si w stanie uruchomi tylko, jeli dysk z Linuksem jest pierwszym dyskiem w komputerze. Dlatego wielu ludzi tworzy niedu partycj /boot na pocztku dysku. Dziki temu jdro i LILO mog by zainstalowane na pocztku dysku, gdzie LILO

moe je znale. Starsze wersje LILO miay niesawn wad znan jako ograniczenie 1024 cylindra. Program LILO nie by w stanie zaadowa jdra, jeli znajdowao si ono na partycji powyej 1024 cylindra. W nowszych wersjach LILO problem zosta wyeliminowany. Floppy Ta metoda jest jeszcze bezpieczniejsza ni poprzednia. Tworzy ona dyskietk rozruchow, z ktrej mona uruchomi Linuksa. Program rozruchowy nie jest wwczas w ogle instalowany na dysku twardym, dziki czemu moesz uruchomi dyskietk tylko wtedy, kiedy chcesz uywa Slackware. Zasadnicz wad tej metody jest nietrwao dyskietek, ktre z zasady s podatne na uszkodzenia. Ponadto, jako e program rozruchowy nie znajduje si w komputerze, jeli stracisz dyskietk, bdziesz musia utworzy now, aby uruchomi system. MBR Jest to odpowiednia metoda, jeli Slackware jest jedynym systemem w komputerze, lub jeli zamierzasz uywa LILO do wybierania systemu podczas startu. Jest to preferowana metoda instalacji LILO, ktra bdzie dziaa na prawie kadym komputerze. Ta opcja nadpisze inne programy zainstalowane w gwnym sektorze rozruchowym. Po wybraniu lokalizacji liloconfig utworzy plik konfiguracyjny i zainstaluje LILO. Jeli wybierzesz opcj expert, wywietli si specjalne menu. Pomoe ono w dostosowaniu /etc/lilo.conf, dodaniu innych systemw operacyjnych do menu rozruchowego, ustawieniu LILO, aby przekazywao parametry do jdra podczas startu. Oto ekran menu expert: Rys. 7-2. Ekran menu expert

To menu kieruje utworzeniem pliku konfiguracyjnego LILO, lilo.conf. Aby go zainstalowa, tworzysz nowy plik konfiguracyjny LILO, tworzc nowy nagwek, a nastpnie dodajc kolejne partycje rozruchowe. Potem moesz wybra opcj install (instaluj). Jeli plik /etc/lilo.conf ju istnieje, moesz go wykorzysta do reinstalacji. Jeli si pomylie, moesz zawsze zacz od nowa, wybierajc begin (rozpocznij). Ktr opcj chcesz wybra? Begin (rozpocznij) Uruchom konfiguracj LILO z nowym nagwkiem LILO Linux Dodaj partycj linuksow do pliku konfiguracyjnego LILO DOS Dodaj partycj DOS/Windows FAT do pliku konfiguracyjnego LILO Install (instaluj) Zainstaluj LILO Recycle (Przeinstaluj) Zainstaluj LILO ponownie, uywajc istniejcego lilo.conf Skip (pomi) Pomi instalacj LILO i wyjd z tego menu View (przegldaj) Przegldaj obecn zawarto /etc/lilo.conf Help (pomoc) Przeczytaj plik pomocy dotyczcy LILO <OK> <Anuluj>

Niezalenie od systemu, stworzenie dziaajcej konfiguracji programu rozruchowego jest dziki liloconfig proste jak konstrukcja cepa.

7.2 LOADLIN
Inn opcj uruchamiania Linuksa Slackware jest LOADLIN. LOADLIN to program DOSowy, ktrego mona uy do uruchomienia Linuksa spod dziaajcego systemu DOS. Jdro Linuksa musi znajdowa si na partycji z DOSem, aby LOADLIN je zaadowa i uruchomi system. Podczas instalacji LOADLIN jest kopiowany do domowego katalogu roota w postaci archiwum .ZIP. Nie ma automatycznego procesu instalacji. Naley rcznie skopiowa jdro Linuksa (zwykle / boot/vmlinuz) i plik LOADLIN z tego katalogu na partycj DOS. LOADLIN przydaje si, jeli chcesz utworzy menu startowe na partycji DOS. Moesz je doda do AUTOEXEC.BAT, co pozwoli na wybr midzy systemami. Wybr opcji Linux spowoduje uruchomienie LOADLIN, ktry zaaduje Slackware. Oto plik AUTOEXEC.BAT dla Windows 95, ktry powinien wystarczy: nu:

@ECHO OFF SET PROMPT=$P$G SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\ CLS ECHO Wybierz system operacyjny: ECHO. ECHO [1] Linux Slackware ECHO [2] Windows 95 ECHO. CHOICE /C:12 "Wybor? -> " IF ERRORLEVEL 2 GOTO WIN IF ERRORLEVEL 1 GOTO LINUX :WIN CLS ECHO Uruchamianie Windows 95... WIN GOTO END :LINUX ECHO Uruchamianie Linuksa Slackware... CD \LINUX LOADLIN C:\LINUX\VMLINUZ ROOT=<urzadzenie z partycja root> RO GOTO END :END

Urzdzenie z partycj root trzeba poda jako nazw urzdzenia linuksowego, np. /dev/hda2. LOADLIN mona te zawsze uruchomi z wiersza polece. Uywa si go tak samo, jak w powyszym przykadzie. Wiele przykadw zastosowania LOADLIN znajduje si w doczonej do niego dokumentacji.

7.3 Uruchamianie wielu systemw


Wielu uytkownikw konfiguruje komputery tak, aby byo moliwe uruchamianie Linuksa Slackware i innego systemu operacyjnego. Jeli masz problemy z waciw konfiguracj takiego rozwizania, poniej opisalimy kilka typowych scenariuszy.

7.3.1 Windows
Konfiguracja maszyny z MS Windows i Linuksem to prawdopodobnie najczstszy scenariusz. Istnieje wiele sposobw podobnej konfiguracji, ta sekcja opisuje dwa z nich. Podczas instalacji wielu systemw czsto zdarza si, e uytkownik dokadnie zaplanowa, co gdzie umieci, ale pokrcia mu si kolejno czynnoci. Trzeba pamita, e systemy operacyjne naley instalowa w okrelonej kolejnoci, bo inaczej moliwo uruchamiania wielu systemw nie bdzie dziaa poprawnie. Linux zawsze daje pen kontrol nad tym, co, i czy w ogle, jest instalowane w MBR. Dlatego zaleca si instalacj Linuksa jako ostatniego. Windows naley instalowa na pocztku, poniewa zawsze zapisuje on swj program rozruchowy w MBR, nadpisujc wszystkie dane, jakie Linux ewentualnie tam wczeniej zapisa.
7.3.1.1 Wykorzystywanie LILO

W wikszoci przypadkw moliwoci wyboru Linuksa lub Windows podczas startu zarzdza LILO. Jak wspomniano powyej, naley najpierw zainstalowa Windows, potem Linuksa.

Zamy, e masz dysk twardy IDE 40 GB i jest to jedyny dysk w komputerze. Poow pojemnoci chcesz przeznaczy dla Windows, poow dla Linuksa. Moe pojawi si problem z uruchomieniem Linuksa.
20GB 1GB 19GB Windows boot (C:) Linux root (/) Linux /usr (/usr)

Musisz te przeznaczy pewn ilo miejsca na linuksow partycj wymiany (swap). Niepisana zasada mwi, e partycja wymiany powinna by dwa razy wiksza od pojemnoci pamici RAM. Jeli masz RAM 64 MB, partycja powinna mie wielko 128 MB itd. Waciwy rozmiar swap to przedmiot wielu zaartych dyskusji w Usenecie i na IRCu. Tak naprawd nie ma zotej zasady, ale powysza powinna wystarczy. Po podzieleniu dysku na partycje zainstaluj Windows. Gdy ju bdzie dziaa, zainstaluj Linuksa. Konfiguracja LILO bdzie wymagaa specjalnych zabiegw, wic wybierz tryb expert przy instalacji LILO. Uruchom konfiguracj LILO. Zainstaluj go w MBR, aby mona go byo uy do wybierania systemu. W menu dodaj partycje z Linuksem i Windows (lub DOSem). Nastpnie zainstaluj LILO. Uruchom komputer ponownie. Program LILO powinien si zaadowa i wywietli menu wyboru zainstalowanych systemw operacyjnych. Wybierz odpowiedni nazw (nazwy zostay zdefiniowane podczas konfiguracji LILO). LILO udostpnia wiele opcji konfiguracyjnych. Nie ogranicza si do uruchamiania Linuksa lub DOSa. Mona z niego uruchomi prawie kady system. Wicej informacji znajduje si na stronach podrcznika lilo(8) i lilo.conf(5). A jeli LILO nie dziaa? Moe si tak zdarzy na niektrych komputerach. Na szczcie istniej inne sposoby na uruchamianie Linuksa i Windows.
7.3.1.2 LOADLIN

Mona uy tej metody, jeli LILO nie dziaa lub w ogle nie chcesz go instalowa. Jest ona idealna dla tych, ktrzy czsto reinstaluj Windows. Windows nadpisuje MBR podczas kadej instalacji, zamazujc LILO. Dziki LOADLIN nie ma takiego problemu. Najwiksz wad jest to, e za pomoc LOADLIN mona adowa tylko Linuksa. Przy LOADLIN mona instalowa systemy w dowolnej kolejnoci. Uwaaj, aby nie instalowa wiadomie nic w MBR, poniewa LOADLIN wymaga, aby partycja z Windows bya partycj startow. Podczas instalacji Slackware pomi krok instalacji LILO. Po zainstalowaniu obu systemw skopiuj plik loadlinX.zip (X oznacza numer wersji, np. 16a) z domowego katalogu roota na partycj Windows. Skopiuj tam te jdro Linuksa. Musisz to robi, kiedy uruchomiony jest Linux. Oto przykadowe polecenia:

# # # # # # # #

mkdir /win mount -t vfat /dev/hda1 /win mkdir /win/linux cd /root cp loadlin* /win/linux cp /boot/vmlinuz /win/linux cd /win/linuz unzip loadlin16a.zip

To utworzy katalog C:\LINUX na partycji Windows (zakadajc, e jest to /dev/hda1) i skopiuje do niego pliki potrzebne dla LOADLIN. Nastpnie musisz przeadowa komputer i uruchomi Windows, aby skonfigurowa menu startowe. Z poziomu Windows uruchom okno wiersza polece DOS. Najpierw musimy si upewni, e system nie uruchamia si od razu w trybie graficznym
C:\> cd \ C:\> attrib -r -a -s -h MSDOS.SYS C:\> edit MSDOS.SYS

Dodaj do tego pliku nastpujcy wiersz:


BootGUI=0

Zapisz plik i zakocz dziaanie edytora. Nastpnie zmodyfikuj AUTOEXEC.BAT, dodajc menu startowe. Oto przykad odpowiednich wpisw:
cls echo Menu wyboru systemow echo. echo 1 - Linux echo 2 - Windows echo. choice /c:12 "Wybor? -> " if errorlevel 2 goto WIN if errorlevel 1 goto LINUX :LINUX cls echo "Uruchamianie Linuksa..." cd \linux loadlin c:\linux\vmlinuz root=/dev/hda2 ro goto END :WIN cls echo "Uruchamianie Windows..." win goto END :END

Kluczowym wierszem jest wpis uruchamiajcy LOADLIN. Mwimy mu, aby zaadowa jdro, gdzie jest partycja root i aby bya ona pocztkowo zamontowana w trybie tylko do odczytu. Te dwa narzdzia s dostarczane z Linuksem Slackware. Istnieje wiele innych programw rozruchowych,

ale wyej wymienione powinny wystarczy dla wikszoci komputerw z dwoma systemami.
7.3.1.3 Stary patent z Windows NT

Jest to najrzadziej spotykana sytuacja uruchamiania 2 systemw. W zamierzchych czasach LILO nie potrafi uruchomi Windows NT. To wymagao od uytkownikw Linuksa przerabiania NTLDR, co z kolei byo o wiele bardziej problematyczne ni wybr midzy Linuksem a Windows 9x. Pamitaj, e ponisze instrukcje s przestarzae i nie maj ju zastosowania. LILO ju od wielu lat jest w stanie uruchomi Windows NT/2000/XP/2003. Jeli jednak masz stary komputer, moesz potrzebowa takiego patentu. 1. 2. 3. 4. Zainstaluj Windows NT. Zainstaluj Linuksa. Upewnij si, e LILO jest umieszczony w superbloku partycji linuksowej. Skopiuj pierwsze 512 bajtw linuksowej partycji root na partycj Windows NT. Zmodyfikuj C:\BOOT.INI w Windows NT, aby doda opcj uruchamiania Linuksa.

Instalacja Windows NT i Linuksa powinna by prosta. Dalej zaczynaj si schody. Skopiowanie pierwszych 512 bajtw partycji linuksowej jest prostsze ni to brzmi. Trzeba to wykona z poziomu Linuksa. Zakadajc, e linuksowa partycja root to /dev/hda2, wpisz nastpujce polecenie:
# dd if=/dev/hda2 of=/tmp/bootsect.lnx bs=1 count=512

To jest to. Teraz skopiuj bootsect.lnx na partycj Windows NT. To kolejny problem. Linux nie ma stabilnej obsugi zapisu w systemie plikw NTFS. Jeli dysk z Windows NT sformatowae podczas instalacji jako NTFS, musisz skopiowa ten plik na dyskietk FAT i odczyta j pod Windows NT. Jeli partycja z NT jest sformatowana jako FAT, wystarczy j zamontowa pod Linuksem i normalnie skopiowa plik. Tak czy owak, plik /tmp/bootsect.lnx musi zosta skopiowany z Linuksa do C:\BOOTSECT.LNX na dysku z Windows NT. Na koniec trzeba doda opcj menu startowego Windows NT. Z poziomu NT uruchom okno wiersza polece i wpisz:
C:\WINNT> cd \ C:\> attrib -r -a -s -h boot.ini C:\> edit boot.ini

Na kocu pliku boot.ini dodaj wiersz


C:\bootsect.lnx="Slackware Linux"

Zapisz plik i zakocz prac edytora. Po ponownym uruchomieniu Windows NT pojawi si w menu opcja wyboru Linuksa. Jej wybranie spowoduje uruchomienie Slackware.

7.3.2 Linux
Tak, ludzie tak robi. Jest to najprostszy scenariusz. Wystarczy zmodyfikowa /etc/lilo.conf, dodajc odpowiednie wpisy, i do uruchamiania rnych Linuksw uywa LILO.

Rozdzia 8. Powoka
W rodowisku graficznym interfejs jest zapewniany przez program, ktry tworzy okna, paski przewijania, menu itp. W rodowisku tekstowym interfejs stanowi powoka (ang. shell), ktra interpretuje polecenia i generalnie umoliwia korzystanie z systemu. Natychmiast po zalogowaniu (co jest opisane w tym rozdziale) uytkownicy znajduj si w powoce i mog zaj si swoimi sprawami. Ten rozdzia stanowi wprowadzenie do powoki, szczeglnie do najczciej uywanej w Linuksie powoki Bourne Again Shell (bash). Wicej informacji na opisane tu tematy znajduje si na stronie podrcznika bash(1).

8.1 Uytkownicy 8.1.1 Logowanie


No dobra. Uruchomie komputer i patrzysz na co podobnego do tego:
Welcome to Linux 2.4.18 Last login: Wed Jan 1 15:59:14 -0500 2005 on tty6. darkstar login:

Hmm, nikt nic nie mwi o adnym loginie. I co to jest ta mroczna gwiazda (ang. darkstar)? Nie martw si. Raczej nie otware przez pomyk hiperprzestrzennego cza komunikacyjnego z imperialn Gwiazd mierci. (Obawiam si, e jdro Linuksa nie obsuguje jeszcze protokou komunikacji hiperprzestrzennej. Moe bdzie dostpna w wersji 2.8.) Darkstar to nazwa jednego z naszych komputerw. Uywamy jej jako domylnej nazwy kadego komputera z nowo zainstalowanym Slackware. Jeli podczas instalacji nadae swojej maszynie inn nazw, bdzie ona widoczna zamiast darkstar. Co do logowania... jeli logujesz si po raz pierwszy, musisz si zalogowa jako root. Wywietli si monit o wprowadzenie hasa. Wpisz haso, ktre ustalie podczas instalacji. Jeli nie masz adnego hasa, po prostu wcinij enter. Gotowe!

8.1.2 Root czyli Superuytkownik.


Fajnie. Kim lub czym jest ten cay root? I co robi jego konto w twoim systemie? W wiecie Uniksa i podobnych systemw operacyjnych (a wic i Linuksa) istniej uytkownicy... i uytkownicy. Bardziej szczegowo opiszemy to pniej. Najwaniejsze jest jednak wiedzie, e root stoi ponad wszystkimi innymi uytkownikami. Jest wszechpotny i wszechwiedzcy, wszyscy go suchaj. Nie wolno go nie sucha. Root jest tym, czym go nazywamy superuytkownikiem. A teraz najlepsze. Rootem jeste Ty. Zarbicie, co nie? Jeli nie jeste tego pewien, odpowiemy: tak, to naprawd zarbicie. Haczyk polega na tym, e rootowi z natury wolno zniszczy wszystko, czego zapragnie. Moesz przej do rozdziau 12.1.1, przeczyta o dodawaniu uytkownikw, zalogowa si jako inny uytkownik i pracowa na jego koncie. Mdro ludowa gosi, e naley logowa si jako superuytkownik tylko wtedy, kiedy jest to naprawd potrzebne, aby zminimalizowa moliwo uszkodzenia czego przez pomyk.

Tak przy okazji, jeli chcesz sta si rootem, podczas gdy jeste zalogowany jako inny uytkownik, aden problem. Uyj polecenia su(1). Wywietli si monit o podanie hasa i zostaniesz rootem do momentu, kiedy wylogujesz si poleceniem exit lub logout. Za pomoc su moesz zosta kadym uytkownikiem, jeli znasz jego haso. Na przykad, su logan sprawi, e staniesz si mn. Uwaga: root moe sta si kadym uytkownikiem bez potrzeby podawania jego hasa.

8.2 Wiersz polece 8.2.1 Uruchamianie programw


Ciko cokolwiek osign bez uruchamiania programw. Moesz uy komputera jako podprki albo przycisku do papieru. Niektre komputery wydaj przecudny mruczcy dwik, kiedy s wczone, ale tak naprawd bez programw s nieprzydatne. Chyba wszyscy zgodzimy si, e mruczca podprka to nie zastosowanie, ktre przynioso komputerom osobistym tak wielk popularno. Pamitasz, jak pisalimy, e prawie wszystko w Linuksie jest plikiem? To samo dotyczy programw. Kady program, ktry uruchamiasz (a ktry nie jest wbudowany w powok), znajduje si gdzie w postaci pliku. Uruchamiasz go, podajc po prostu pen ciek do niego. Na przykad, pamitasz polecenie su z poprzedniej sekcji? Tak naprawd znajduje si ono w katalogu / bin. /bin/su dziaa tak samo dobrze. To dlaczego dziaa wpisywanie samego su? Przecie nie napisalicie, e jest w /bin. Mogoby rwnie dobrze by w /usr/local/share, prawda? Skd system to wiedzia? Odpowied ley w zmiennej rodowiskowej PATH (cieka). Wikszo powok ma tak PATH (lub co podobnego). PATH jest zasadniczo list katalogw, w ktrych system szuka programw do uruchomienia. Kiedy uruchomie su, powoka sprawdzia katalogi wymienione na licie w poszukiwaniu wykonywalnego pliku o nazwie su i uruchomia pierwszy, ktry znalaza. Dzieje si tak za kadym razem, kiedy uruchamiasz program bez podania penej cieki. Jeli wywietla si bd Command not found (Nie znaleziono polecenia), oznacza to, e programu, ktry chciae uruchomi, nie ma w PATH. (Oczywicie dzieje si tak, kiedy programu w ogle nie ma...) Zmienne rodowiskowe s omwione dokadniej w sekcji 8.3.1. Pamitaj, e . (kropka) jest skrtem oznaczajcym katalog biecy. Jeli wic jeste akurat w katalogu /bin, napisanie ./su zadziaa jak wpisanie penej cieki.

8.2.2 Dopasowywanie symboli wieloznacznych


Prawie kada powoka rozpoznaje pewne znaki jako zastpniki lub skrty oznaczajce wszystko pasuje. Takie znaki nazywaj si symbolami wieloznacznymi (ang. wildcards). Najczciej uywane s * i ?. Tradycyjnie ? oznacza pojedynczy znak. Na przykad: jeste w katalogu, gdzie znajduj si trzy pliki: ex1.txt, ex2.txt i ex3.txt. Chcesz je wszystkie skopiowa do katalogu /tmp (za pomoc polecenia cp, opisanego w sekcji 10.5.1). Moesz wpisa cp ex1.txt ex2.txt ex3.txt /tmp, ale to kupa roboty. O wiele prociej wpisa cp ex?.txt /tmp. ? bdzie pasowa do kadego znaku 1, 2 i 3, kady z nich bdzie podstawiony po kolei. Co mwisz? Jeszcze za duo roboty? Masz racj. To okropne. Istniej odpowiednie regulacje prawne

przeciwdziaajce takiemu wyzyskowi. Na szczcie jest jeszcze *. Jak ju wspomnielimy, * oznacza dowolna liczba znakw, take 0 znakw. Jeli wic te trzy pliki s jedynymi w katalogu, do skopiowania wszystkich naraz wystarczy cp * /tmp. Zamy jednak, e s tam te pliki ex.txt i hejaz.txt. Chcesz skopiowa ex.txt, ale nie hejaz.txt; cp ex* /tmp zaatwi spraw. cp ex?.txt /tmp skopiowaoby tylko trzy pliki wspomniane na pocztku. W ex.txt nie ma znaku pasujcego do ?, a wic pozostaby nieskopiowany. Inne czsto uywane symbole wieloznaczne to para nawiasw kwadratowych []. Wszystkie znaki znajdujce si wewntrz [] zostan podstawione w ich miejsce. Namieszalimy? Nie jest tak le. Zamy, e mamy katalog z 8 plikami: a1, a2, a3, a4, aA, aB, aC i aD. Chcemy znale tylko pliki koczce si cyframi. [] to zrobi.
% ls a[1-4] a1 a2 a3 a4

A jeli chcemy tylko a1, a2 i a4? W poprzednim przykadzie uylimy - dla oznaczenia wszystkich wartoci od 1 do 4. Moemy te oddziela poszczeglne pozycje przecinkami.
% ls a[1,2,4] a1 a2 a4

Wiem, co teraz mylisz. A co z literami? Linux rozrnia wielkie i mae litery. To znaczy, e a i A to dwa kompletnie rne znaki, tylko my kojarzymy je ze sob. Wielkie litery id zawsze przed maymi, tak wic A i B znajd si przed a i b. Kontynuujc poprzedni przykad, jeli chcemy plikw a1 i A1, szybko je znajdziemy przy uyciu [].
% ls [A,a]1 A1 a1

Zauwa, e uycie mylnika zamiast przecinka daoby niewaciwy wynik.


% ls [A-a]1 A1 B1 C1 D1 a1

Mona te czy mylniki i przecinki.


% ls [A,a-d] A1 a1 b1 c1 d1

8.2.3 Przekierowywanie wejcia/wyjcia i potokowanie


(Teraz co naprawd zarbistego)
% ps > blargh

Wiesz, co to znaczy? To ja wykonaem ps, eby zobaczy, jakie procesy s teraz uruchomione. Program ps jest opisany w sekcji 11.3. Ale to nie jest zarbista cz. Zarbista cz to

> blargh, ktra oznacza w skrcie we to, co wywietli na ekranie program ps i zapisz w pliku o nazwie blargh. Ale dalej bdzie jeszcze zarbiciej.
% ps | less

To bierze wyjcie czyli wywietlony wynik ps i potokuje, czyli przepuszcza je przez less, tak e mona je dowolnie przewija w gr i w d.
% ps >> blargh

To trzecie najczciej uywane przekierowanie. Robi to samo, co >, tyle e >> doda wynik polecenia ps na kocu pliku blargh, jeli taki plik istnieje. Jeli nie, zostanie utworzony, jak przy >. (> zamae poprzedni zawarto pliku blargh.) Istnieje te operator <, ktry oznacza pobierz dane wejciowe z... Uywa si go troch rzadziej.
% fromdos < dosfile.txt > unixfile.txt

Zabawa z przekierowywaniem zaczyna si na dobre, kiedy czy si kilka operatorw.


% ps | tac >> blargh

To uruchomi program ps, odwrci kolejno wierszy w jego wyniku i dopisze je na kocu blargh. Mona czy dowolnie wiele operatorw, pamitaj tylko, e s interpretowane od lewej do prawej. Wicej informacji na temat przekierowywania znajduje si na stronie podrcznika bash(1).

8.3 Bourne Again Shell (bash) 8.3.1 Zmienne rodowiskowe


Linux to skomplikowane bydl. Trzeba pamita o wielu drobiazgach, ktre maj znaczenie dla normalnej pracy z programami (niektrych z tych drobiazgw prawdopodobnie nigdy nie bdziesz musia pozna). Nikt nie spamita kupy rnych opcji kadego programu ani rodzaju terminalu, ktry przekazuje si do uruchamianego programu, nazwy komputera, wygldu znaku zgoszenia... Wszystkim tym zawiaduje mechanizm znany jako rodowisko. rodowisko okrela, w jakich warunkach dziaaj programy. Cz tych warunkw jest zmienna. Uytkownicy mog je zmienia i dostosowywa, jak to w systemach linuksowych bywa. Praktycznie kada powoka ma swoje zmienne rodowiskowe (jeli nie ma, prawdopodobnie do niczego si nie nadaje). Oto opis polece, ktre powoka bash udostpnia w celu manipulowania zmiennymi rodowiskowymi. Polecenie set, uyte bez opcji, wywietla wszystkie obecnie zdefiniowane zmienne oraz ich wartoci. Podobnie jak wikszo wbudowanych polece bash, moe te (przy wykorzystaniu rnych parametrw) wykonywa inne rzeczy. Szczegy s na stronie podrcznika bash(1). Oto przykadowy fragment wyniku wykonania polecenia set na jednym z komputerw autora. Zwr uwag na opisan wczeniej zmienn PATH. Programy znajdujce si w jednym z tych katalogw uruchamia si, po prostu

wpisujc nazw pliku. Przykad 8-1. Wywietlanie zmiennych rodowiskowych poleceniem set
% set PATH=/usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin: /usr/openwin/bin:/usr/games:.:/usr/local/ssh2/bin:/usr/local/ssh1/bin: /usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin PIPESTATUS=([0]="0") PPID=4978 PS1='\h:\w\$ ' PS2='> ' PS4='+ ' PWD=/home/logan QTDIR=/usr/local/lib/qt REMOTEHOST=ninja.tdn SHELL=/bin/bash % unset ZMIENNA

Polecenie unset usuwa zmienn podan jako parametr oraz jej warto. Powoka zapomina, e taka zmienna kiedykolwiek istniaa. (Nie przejmuj si, jeli nie jest to zmienna ustalona tylko w danej sesji powoki, zostanie zapewne ponownie zdefiniowana w nowej sesji.)
% export ZMIENNA=jaka_warto

Polecenie export jest bardzo przydatne. Dziki niemu nadajesz zmiennej rodowiskowej o nazwie ZMIENNA warto rwn jaka_warto. Jeli ZMIENNA nie istniaa, zostanie utworzona. Jeli istniaa i miaa inn warto, c... ju nie ma tej wartoci. Nie jest to szczeglnie dobre, jeli tylko prbujesz doda jaki katalog do PATH. W takim przypadku wykonaj:
% export PATH=$PATH:/jaki/nowy/katalog

Zwr uwag na $PATH. Kiedy chcesz, eby bash zinterpretowaa zmienn (czyli zastpia nazw wartoci), dodaj $ przed nazw zmiennej. Na przykad, echo $PATH wywietli warto PATH, w moim przypadku:
% echo $PATH /usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin: /usr/openwin/bin:/usr/games:.:/usr/local/ssh2/bin:/usr/local/ssh1/bin: /usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin

8.3.2 Uzupenianie tabulatorem


(Teraz znowu co zarbistego) 1. Interfejs wiersza polece oznacza duo klepania w klawisze. 2. Klepanie oznacza prac. 3. Nikt nie lubi pracy. Na podstawie punktu 2. i 3. mona dopisa punkt 4. nikt nie lubi klepania w klawisze. Na szczcie

dziki bash nie ma punktu 5. (nikt nie lubi interfejsu wiersza polece). No i jak niby bash wykonuje za nas prac klepania w klawisze? Oprcz symboli wieloznacznych, o ktrych pisalimy wczeniej, bash ma funkcj uzupeniania tabulatorem (ang. tab completion). Uzupenianie tabulatorem dziaa tak: Wpisujesz nazw pliku. By moe jest on w PATH, moe piszesz pen ciek. Wystarczy tylko wpisa kilka pierwszych znakw z nazwy, aby wiadomo byo, e chodzi o dany plik. Po wciniciu klawisza tabulatora bash domyli si, o jaki plik chodzi i dokoczy za Ciebie wpisywanie! Czas na przykad. W katalogu /usr/src s dwa podkatalogi: /usr/src/linux i /usr/src/sendmail. Chc zobaczy zawarto /usr/src/linux. Wpisuj wic ls / usr/src/l, wciskam klawisz TAB, a bash dopenia reszt i daje ls /usr/src/linux. Zamy, e mamy dwa katalogi: /usr/src/linux i /usr/src/linux-stare. Jeli wpisz / usr/src/l i wcisn TAB, bash uzupeni tyle, ile bdzie moga, i wywietli si /usr/src/linux. Mog poprzesta na tym albo wcisn TAB jeszcze raz, wtedy bash wywietli list katalogw, ktre pasuj do dotychczas wpisanej nazwy. To oznacza mniej klepania w klawisze (co z kolei oznacza, e ludzie mog polubi wiersz polece). Mwiem, e to zarbiste.

8.4 Terminale wirtualne


Wyobra sobie, e akurat pracujesz nad czym i chcesz zacz robi co innego. Moesz porzuci obecne zadanie i zaj si innym, ale to przecie system wielouytkownikowy, nieprawda? Moesz zalogowa si wielokrotnie w tym samym czasie, wiesz? Po c wic miaby robi tylko jedn rzecz naraz? Nie musisz tak robi. Co prawda wikszo uytkownikw nie moe i nie chce mie wielu klawiatur, myszy i monitorw podczonych do jednego komputera. Tak naprawd, to nie kwestia sprztu. Zadaniem oprogramowania, a wic Linuksa, jest stworzenie terminali wirtualnych, czyli VT (ang. virtual terminals). Wciskajc Alt i jeden z klawiszy funkcyjnych, przeczasz si midzy terminalami wirtualnymi. Kady klawisz funkcyjny odpowiada jednemu z nich. Slackware domylnie umoliwia logowanie na 6 VT. Alt+F2 przecza na drugi, Alt+F3 na trzeci itd. Pozostae klawisze funkcyjne s zarezerwowane dla sesji X. Kada sesja X zajmuje jeden VT, rozpoczynajc od sidmego (Alt+F7) w gr. Kiedy jeste w X, zastpujesz kombinacj Alt+Fn przez Ctrl+Alt+Fn. Na przykad, bdc w X i chcc przej do logowania tekstowego (bez opuszczania X), wciskasz Ctrl+Alt+F3, aby przeczy si na trzeci VT. (Alt+F7 powrci do X, zakadajc, e masz uruchomion tylko jedn sesj X.)

8.4.1 Program screen


A jeli terminale wirtualne nie s dostpne? Na szczcie Slackware ma wspaniay meneder ekranw, nazwany odpowiednio screen (ekran). Screen to emulator terminala, posiadajcy waciwoci terminali wirtualnych. Po uruchomieniu screen wywietla krtki tekst informacyjny i tworzy terminal.

W przeciwiestwie do standardowych VT, screen ma wasny zestaw polece. Wszystkie polecenia screen poprzedza si kombinacj Ctrl+A. Na przykad, Ctrl+A+N tworzy now sesj terminala, Ctrl+A+N przecza do nastpnego terminala, Ctrl+A+P do poprzedniego. Screen umoliwia rwnie odczanie si i ponowne podczanie do sesji screen, co jest szczeglnie przydatne w przypadku zdalnych sesji poprzez ssh lub telnet (wicej na ich temat jest napisane pniej). Ctrl+A+D odcza od biecej sesji screen. Wpisanie screen r wywietla wszystkie aktualnie uruchomione sesje, do ktrych mona si ponownie podczy.
% screen -r There are several suitable screens on: 1212.pts-1.redtail (Detached) 1195.pts-1.redtail (Detached) 1225.pts-1.redtail (Detached) 17146.pts-1.sanctuary (Dead ???) Remove dead screens with 'screen -wipe'. Type "screen [-d] -r [pid.]tty.host" to resume one of them.

Wpisanie screen r 1212 spowoduje podczenie do pierwszej wymienionej sesji. Wspomniaem wczeniej, e przydaje si to w sesjach zdalnych. Na przykad, gdybym by zalogowany do zdalnego serwera Slackware przez ssh i moje poczenie zostao przerwane z jakiego powodu, np. lokalnej awarii zasilania, wszystko, co robiem, zostaoby unicestwione. Mogoby to si marnie skoczy dla serwera. Screen zapobiega podobnym sytuacjom, poniewa gdy poczenie zostaje zerwane, sesja jest automatycznie odczana. Po przywrceniu poczenia mog si do niej podczy ponownie i kontynuowa prac.

Rozdzia 9. Struktura systemu plikw


Omwilimy ju struktur katalogw w Linuksie Slackware. Potrafisz znale pliki i katalogi. Ale system plikw to wicej ni struktura katalogw. Linux to wielouytkownikowy system operacyjny. Kady aspekt systemu, take system plikw, uwzgldnia istnienie wielu uytkownikw. System przechowuje informacje, np. kto jest wacicielem danego pliku i kto moe go odczyta. Istniej te specyficzne pojcia, takie jak dowizania i udziay NFS. W tej sekcji wyjaniamy je oraz inne aspekty systemu wielouytkownikowego. 9.1 Prawa wasnoci System plikw zawiera informacje o prawach wasnoci kadego pliku i katalogu, m.in. jaki uytkownik i jaka grupa s wacicielami danego pliku. Najprociej wywietli te informacje poleceniem ls:
% ls -l /usr/bin/wc -rwxr-xr-x 1 root

bin

7368 Jul 30

1999 /usr/bin/wc

Interesuj nas kolumny trzecia i czwarta. Zawieraj one nazw uytkownika i nazw grupy, ktrzy s wacicielami pliku. Widzimy, e s to: uytkownik root i grupa bin. Prawa wasnoci pliku zmienia si poleceniami: chown(1) (od change owner zmie waciciela) i

chgrp(1) (od change group zmie grup). Aby zmieni waciciela pliku na uytkownika daemon, uyjemy chown:
# chown daemon /usr/bin/wc

Aby zmieni grup wacicieli na root, uyjemy chgrp:


# chgrp root /usr/bin/wc

Aby zmieni naraz waciciela i grup, uyjemy chown:


# chown daemon:root /usr/bin/wc

W powyszym przykadzie mona uy kropki zamiast dwukropka. Efekt bdzie ten sam, jednak zaleca si uywanie dwukropka. Wykorzystanie kropki jest przestarzae i prawdopodobnie zostanie usunite z przyszych wersji chown, aby umoliwi istnienie nazw uytkownika zawierajcych kropk. Tego typu nazwy uytkownikw s powszechnie stosowane w serwerach Windows Exchange i najczciej spotyka si je w adresach e-mail, np. wilus.bramkowski@przyklad.com. W Slackware administratorzy powinni unika takich nazw, poniewa niektre skrypty uywaj kropki do rozrnienia waciciela i grupy. W naszym przykadzie polecenie chmod zinterpretowaoby wilus.bramkowski jako uytkownika wilus i grup bramkowski. Prawa wasnoci to bardzo wana cz systemu plikw Linuksa, nawet jeli jeste jedynym uytkownikiem. Czasami bdziesz potrzebowa zmienia prawa wasnoci plikw i urzdze.

9.2 Prawa dostpu


Prawa dostpu to kolejny wany aspekt systemu wielouytkownikowego. Decyduj one, kto moe dany plik odczyta, uruchomi i zmieni jego zawarto. Informacje o prawach dostpu s zapisane jako cztery liczby w systemie semkowym. Kada oznacza poszczeglny zestaw praw. Istniej prawa waciciela, prawa grupy i prawa globalne (ang. world). Czwarta liczba semkowa oznacza specyficzne prawo, takie jak ustawiony numer uytkownika (set user ID), ustawiony numer grupy (set group ID) oraz tzw. bit kleisty (ang. sticky). Oto wartoci semkowe przypisane do trybw praw dostpu (maj take odpowiednie oznaczenia literowe, ktre mona wywietli przez ls i zmieni przez chmod): Tabela 9.1 semkowe wartoci praw dostpu Typ prawa bit kleisty set user ID set group ID odczyt zapis Warto semkowa 1 4 2 4 2 Oznaczenie literowe t s s r w

wykonanie

Dla kadej grupy praw mona doda wartoci semkowe. Na przykad, aby ustawi prawa grupy do odczytu i zapisu, naley uy 6 w czci dotyczcej praw grupy. Domylne prawa powoki bash to:
% ls -l /bin/bash -rwxr-xr-x 1 root

bin

477692 Mar 21 19:57 /bin/bash

Pierwszy mylnik bdzie zastpiony przez d, jeli bd wywietlane informacje o katalogu. W nastpnej kolejnoci s trzy grupy praw (waciciel, grupa, globalne). Wida, e waciciel ma prawo do odczytu, zapisu i wykonania (rwx), a grupa ma tylko prawa odczytu i wykonania (r-x). Wszyscy pozostali maj prawa odczytu i wykonania (r-x).
% touch /tmp/example % ls -l /tmp/example -rw-rw-r--- 1 david

users

0 Apr 19 11:21 /tmp/example

Uyjemy chmod(1) (change mode zmie tryb), aby ustawi prawa dostpu do przykadowego pliku. Dodajmy wartoci semkowe dla danych praw. Aby waciciel mia prawo odczytu, zapisu i wykonania, czna warto wyniesie 7. Warto prawa odczytu i wykonania wyniesie 5. Poczmy je razem i przekamy jako parametr do chmod:
% chmod 755 /tmp/example % ls -l /tmp/example -rwxr-xr-x 1 david users

0 Apr 19 11:21 /tmp/example

Zastanawiasz si moe Dlaczego nowo utworzony plik nie mia od razu takich praw? Odpowied jest prosta. Powoka bash ma ciekaw wbudowan funkcj, tzw. umask. T funkcj ma wikszo powok uniksowych. Decyduje ona, jakie prawa s przyznawane nowo tworzonym plikom. W sekcji 8.3.1 omwilimy pokrtce niektre wbudowane funkcje bash, umask trzeba troch pozna. Dziaa podobnie jak chmod, ale na odwrt. Ustawia si wartoci semkowe, jakich nowo tworzone pliki nie maj mie. Domylna warto umask to 0022.
% umask 0022 % umask 0077 % touch tempfile % ls -l tempfile -rw-------- 1 david

users

0 Apr 19 11:21 tempfile

Wicej informacji na ten temat znajduje si na stronie podrcznika bash. Aby ustawi prawa specjalne, dodaje si wartoci semkowe i umieszcza w pierwszej kolumnie. Na przykad, aby plikowi nada set user ID i set group ID, uyj 6 w pierwszej kolumnie:

% chmod 6755 /tmp/example % ls -l /tmp/example -rwsr-sr-x 1 david users

0 Apr 19 11:21 /tmp/example

Jeli nie za bardzo rozumiesz wartoci semkowe, moesz w chmod uy liter. Odpowiednie prawa s reprezentowane przez: Waciciel Grupa Globalne Wszyscy powyej razem u g o a

Aby wykona powysze przykady, uylibymy kilku polece:


% chmod a+rx /tmp/example % chmod u+w /tmp/example % chmod ug+s /tmp/example

Niektrzy uytkownicy wol litery od wartoci semkowych. Tak czy owak, zestaw praw bdzie ten sam. Format semkowy jest z reguy szybszy. Najczciej uywa si go w skryptach powoki. Czasem jednak litery daj wicej moliwoci. Na przykad, trudno zmieni jedn grup praw, zachowujc inne grupy, przy uyciu wartoci semkowych. Uycie liter jest trywialnie proste.
% ls -l /tmp/ -rwxr-xr-x 1 alan users -rwxr-x--1 alan users ----r-xr-x 1 alan users % chmod g-rwx /tmp/example? -rwx---r-x 1 alan users -rwx-----1 alan users -------r-x 1 alan users

0 Apr 19 11:21 /tmp/example0 0 Apr 19 11:21 /tmp/example1 0 Apr 19 11:21 /tmp/example2 0 Apr 19 11:21 /tmp/example0 0 Apr 19 11:21 /tmp/example1 0 Apr 19 11:21 /tmp/example2

Parokrotnie wspomnielimy set user ID i set group ID. Zastanawiasz si pewnie, co to jest. Zwykle, kiedy uruchamiasz program, jest on uruchamiany na twoim koncie uytkownika. To znaczy, e ma takie same prawa, jak uytkownik. To samo dotyczy grupy. Program jest wykonywany z prawami twojej grupy. Uywajc set user ID, moesz wymusi, aby program by zawsze uruchamiany z prawami swojego waciciela (takiego jak root). Set group ID oznacza to samo, ale dla grupy. Naley ostronie uywa tych praw specjalnych. Set user ID i set group ID mog stanowi powane zagroenie dla bezpieczestwa systemu. Jeli set user ID ma wiele programw, ktrych wacicielem jest root, pozwalasz kademu uruchamia je wanie jako root. Root nie jest niczym ograniczony w systemie, widzisz wic, e stanowi to problem z bezpieczestwem. Krtko mwic, set user ID i set group ID nie s ze, ale naley uywa ich z gow.

9.3 Dowizania
Dowizania (ang. links) to wskaniki do plikw. Dziki nim jeden plik moe istnie w wielu miejscach i mie wiele nazw. Istniej dwa typy dowiza: twarde i mikkie. Dowizania twarde to rne nazwy tego samego pliku. Mog istnie tylko wewntrz tego samego

systemu plikw i by usunite tylko, kiedy z systemu jest usunita prawdziwa nazwa pliku. W niektrych przypadkach jest to przydatne, jednak wikszo uytkownikw woli dowizania mikkie, gdy s bardziej wszechstronne. Dowizanie mikkie, zwane te dowizaniem symbolicznym, moe wskazywa na plik poza swoim systemem plikw. Jest to w istocie may plik z odpowiednimi informacjami. Mona dodawa i usuwa dowizania symboliczne, nie zmieniajc waciwego pliku. Jako e dowizanie symboliczne to niewielki plik zawierajcy wasne informacje, moe nawet wskazywa na katalog. Czsto np. /var/tmp jest dowizaniem symbolicznym do /tmp. Dowizania nie maj zestawu praw wasnoci ani dostpu. Odzwierciedlaj tylko prawa plikw, na ktre wskazuj. W Slackware uywa si gwnie dowiza symbolicznych. Oto typowy przykad:
% ls -l /bin/sh lrwxrwxrwx 1 root

root

4 Apr

6 12:34 /bin/sh -> bash

Powoka w sh w Slackware to tak naprawd bash. Dowizania usuwa si poleceniem rm, a tworzy ln. Te polecenia s omwione dokadniej w rozdziale 10. Trzeba uwaa na dowizania symboliczne. Kiedy pracowaem z komputerem, ktry mia notoryczne problemy z conocnym wykonywaniem kopii zapasowej na tamie. Problemem okazay si dwa dowizania symboliczne do katalogw, jednego pod drugim. Oprogramowanie do tworzenia kopii zapasowych zapisywao wci te same katalogi na tamie, a koczyo si na niej miejsce. Z reguy seria testw zapobiega tworzeniu dowiza symbolicznych w takiej sytuacji, ale to by specyficzny komputer.

9.4 Montowanie urzdze


Jak ju omwilimy w sekcji 4.1.1, wszystkie napdy i urzdzenia stanowi jeden wielki system plikw. Partycje dyskw twardych, CD-ROMy i dyskietki znajduj si w tym samym drzewie. Aby podczy je do systemu plikw i mc z nich korzysta, uywa si polece mount(1) i umount(1). Niektre urzdzenia s montowane automatycznie podczas uruchamiania komputera. S one wymienione w pliku /etc/fstab. Wszystko, co ma by montowane automatycznie, ma wpis w tym pliku. Inne urzdzenia wymagaj wpisania odpowiedniego polecenia za kadym razem, kiedy chcesz z nich skorzysta.

9.4.1 Plik fstab


Oto przykad pliku /etc/fstab:
% cat /etc/fstab /dev/sda1 / /dev/sda2 /usr/local /dev/sda4 /home /dev/sdb1 swap /dev/sdb3 /export none /dev/pts none /proc /dev/fd0 /mnt /dev/cdrom /mnt/cdrom

ext2 ext2 ext2 swap ext2 devpts proc ext2 iso9660

defaults defaults defaults defaults defaults gid=5,mode=620 defaults defaults ro

1 1 1 0 1 0 0 0 0

1 1 1 0 1 0 0 0 0

W pierwszej kolumnie widnieje nazwa urzdzenia. W tym przypadku, urzdzenia to pi partycji rozoonych na dwch dyskach twardych SCSI, dwa specjalne systemy plikw niewymagajce urzdzenia, dyskietka i napd CD-ROM. Druga kolumna zawiera punkty montowania urzdze. Musi to by nazwa katalogu, z wyjtkiem partycji wymiany (swap). W trzeciej kolumnie jest typ systemu plikw na urzdzeniu. Dla zwykych linuksowych systemw plikw bdzie to ext2 (second extended filesystem), dla napdw CD-ROM iso9660, a dla urzdze z Windows msdos lub vfat. Czwarta kolumna to opcje stosowane do kadego montowanego systemu. Opcje domylne (ang. defaults) s w wikszoci przypadkw odpowiednie. Jednak urzdzenia tylko do odczytu powinny mie ustawion flag ro. Istnieje wiele takich opcji. S opisane na stronie podrcznika fstab(5). Ostatnich dwch kolumn uywa program fsck i inne, ktre operuj na urzdzeniach. Przeczytaj rwnie odpowiedni stron podrcznika. Podczas instalacji Linuksa Slackware program setup tworzy wikszo wpisw w pliku /etc/fstab.

9.4.2 Polecenia mount i umount


Podczanie nowego urzdzenia do systemu plikw jest atwe. Wystarczy polecenie mount z kilkoma opcjami. Uycie mount moe by tym atwiejsze, jeli urzdzenie ma odpowiedni wpis w / etc/fstab. Przypumy, e chc zamontowa CD-ROM, a mj fstab wyglda, jak powyej. Wystarczy, e wpisz:
% mount /mnt/cdrom

W fstab istnieje wpis dla takiego punktu montowania, a wic mount wie, jakich opcji uy. Gdyby nie istnia taki wpis, musiabym sam uy kilku opcji:
% mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom

Takie polecenie zawiera wszystkie opcje z przykadowego fstab, ale i tak je omwi. Opcja -t iso9660 to typ systemu plikw na urzdzeniu do zamontowania. W tym przypadku jest to iso9660, najczciej uywany w CD-ROMach. Opcja -o ro mwi mount, eby zamontowa urzdzenie w trybie tylko do odczytu. /dev/cdrom to nazwa urzdzenia do zamontowania, a /mnt/cdrom to miejsce, w ktrym ma ono by zamontowane. Przed wyjciem dyskietki, CD-ROMu lub innego obecnie zamontowanego urzdzenia wymiennego trzeba je odmontowa. Robi si to poleceniem umount. Nie pytaj, gdzie ucieko n, bo nie wiem. Jako argument do umount moesz przekaza albo urzdzenie, albo punkt montowania. Jeli np. chcesz odmontowa CD-ROM z poprzedniego przykadu, oba polecenia zadziaaj analogicznie:
# umount /dev/cdrom # umount /mnt/cdrom

9.5 Montowanie udziaw NFS

NFS to skrt od Network Filesystem, czyli sieciowy system plikw. Nie jest to cz faktycznego systemu plikw, ale moe stanowi jego rozszerzenie. W duych rodowiskach uniksowych czsto wspdzieli si te same programy, katalogi domowe i kolejki poczty. NFS rozwizuje problem istnienia identycznej kopii na kadym komputerze. Mona uywa NFS do wspdzielenia zbioru katalogw domowych midzy wieloma stacjami roboczymi. Takie stacje montuj wwczas udziay NFS tak, jakby znajdoway si one na dyskach lokalnych. Wicej informacji na ten temat znajduje si w sekcji NFS w sekcji 5.6.2 oraz na stronach podrcznika exports(5), nfsd(8) i mountd(8).

Rozdzia 10. Praca z plikami i katalogami


Linux ma w zaoeniu by tak uniksopodobny, jak to moliwe. Uniksowe systemy operacyjne zawsze uyway interfejsu wiersza polece. W Slackware co prawda istnieje interfejs graficzny, ale za pomoc wiersza polece cigle sprawuje si wikszo kontroli nad systemem. Dlatego naley zna podstawowe polecenia suce do zarzdzania plikami. W nastpujcych sekcjach s opisane najczciej stosowane polecenia do zarzdzania plikami wraz z przykadami ich zastosowa. Istnieje wiele innych polece, ale tyle wystarczy na pocztek. Ponadto zamieszczone opisy s krtkie. Wicej informacji znajduje si na odpowiednich stronach podrcznika.

10.1 Nawigacja: ls, cd i pwd 10.1.1 ls


To polecenie wywietla list plikw w katalogu. Uytkownicy Windows i DOS zauwa podobiestwo do polecenia dir. Uyte bez opcji, ls(1) wywietla pliki w biecym katalogu. Aby zobaczy zawarto katalogu gwnego (root), mona uy:
% cd / % ls bin cdr boot cdrom

dev etc

home lib

lost+found mnt

proc root

sbin suncd

tmp usr

var vmlinuz

Czstym problemem jest fakt, e ciko odrni katalog od pliku. Uytkownicy czasem chc, aby ls dodawao identyfikator typu do wyniku:
% ls -FC bin/ cdr/ boot/ cdrom/

dev/ etc/

home/ lib/

lost+found/ mnt/

proc/ root/

sbin/ suncd/

tmp/ usr/

var/ vmlinuz

Nazwy plikw kocz si ukonikiem, pliki wykonywalne gwiazdk itd. ls moe te wywietli inne informacje. Na przykad, aby zobaczy daty utworzenia plikw, ich wacicieli i prawa dostpu, uyj dugiego listingu:

% ls -l drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x dr-xr-xr-x drwxr-x--x drwxr-xr-x drwxr-xr-x drwxrwxrwt drwxr-xr-x drwxr-xr-x

2 2 2 14 4 10 8 3 2 2 62 12 2 5 4 21 18

root root root root root root root root root root root root root root root root root

bin root root root root root root root root root root root bin root root root root

4096 4096 4096 6144 28672 4096 4096 4096 16384 4096 0 4096 4096 2048 487424 4096 4096

May Feb Feb Oct Mar Mar Mar Jan Nov Oct Mar Feb Feb Oct Mar Aug Mar

7 24 18 23 5 8 8 23 1 6 4 26 17 25 7 24 8

09:11 03:55 01:10 18:37 18:01 03:32 03:31 21:29 08:53 12:47 15:32 02:06 02:02 10:51 20:42 03:04 03:32

bin/ boot/ cdr/ cdrom/ dev/ etc/ home/ lib/ lost+found/ mnt/ proc/ root/ sbin/ suncd/ tmp/ usr/ var/

Jeli chcesz wywietli pliki ukryte, uyj:


% ls -a . .. .pwrchute_tmp

bin boot cdr

cdrom dev etc

home lib lost+found

mnt proc root

sbin suncd tmp

usr var vmlinuz

Pliki, ktrych nazwa zaczyna si od kropki (tzw. dot files czyli kropliki) to pliki ukryte podczas wykonywania ls. Mona je wywietli, przekazujc opcj -a. O wiele wicej opcji jest opisanych na stronie podrcznika. Pamitaj, e opcje mona czy.

10.1.2 cd
Polecenia cd uywa si do zmiany biecego katalogu. Wystarczy wpisa cd i odpowiedni ciek. Oto przykady:
darkstar:~$ cd /bin darkstar:/bin$ cd usr bash: cd: usr: No such file or directory darkstar:/bin$ cd /usr darkstar:/usr$ ls bin darkstar:/usr$ cd bin darkstar:/usr/bin$

Zauwa, e bez poprzedzajcego ukonika cd prbuje przej do katalogu lecego w biecym katalogu. To polecenie uyte bez adnych opcji przechodzi do katalogu domowego uytkownika. Polecenie cd nie jest podobne do innych polece. Jest to wbudowane polecenie powoki. Takie polecenia s opisane w sekcji 8.3.1. Prawdopodobnie nie widzisz na razie rnicy. Zasadniczo oznacza to, e cd nie ma strony podrcznika. Musisz zamiast tego uy pomocy powoki:

% help cd

To wywietla opcje cd i instrukcje, jak je stosowa.

10.1.3 pwd
Polecenie pwd wywietla katalog, w ktrym si aktualnie znajdujesz. Wystarczy wpisa samo pwd:
% cd /bin % pwd /bin % cd /usr % cd bin % pwd /usr/bin

10.2 Programy stronicujce: more, less i most 10.2.1 more


Program more(1) (ang. wicej) to tzw. program stronicujcy (ang. pager). Czsto wynik jakiego polecenia nie mieci si na jednym ekranie. Polecenia nie wiedz, jak podzieli swj wynik na poszczeglne ekrany. Zostawiaj to zadanie programowi stronicujcemu. Polecenie more dzieli wyjcie na pojedyncze ekrany i przechodzi do kolejnych po naciniciu spacji. Po wciniciu klawisza enter wynik przesuwa si o jeden wiersz. Oto przykad:
% cd /usr/bin % ls -l

Wynik bdzie si przez chwil przewija na ekranie. Aby podzieli go na poszczeglne ekrany, wystarczy potokowa go przez more:
% ls -l | more

Znak potokowania (shift + odwrotny ukonik) oznacza we wyjcie polecenia ls i przeka je do more. Przez more mona potokowa nie tylko wyjcie ls, ale praktycznie wszystko. Potokowanie jest te opisane w sekcji 8.2.3.

10.2.2 less
Polecenie more jest wygodne, czsto jednak zdarza si przewin ekran za daleko. W more nie ma moliwoci powrotu do poprzedniego ekranu. Tak funkcjonalno ma za to program less(1) (ang. mniej). Uywa si go tak samo jak more, a wic powysze przykady te pasuj. Tak wic less (mniej) to wicej ni more (wicej). Joost Kremers ujmuje to (mniej wicej) tak: less oznacza wicej, ale wicej more ni more, dlatego more jest mniej less, wic uywaj wicej less, jeli chcesz mniej more.

10.2.3 most
Polecenie most(1) (ang. najwicej) ma jeszcze wicej funkcji ni less i more. less to wicej ni more, a most to wicej ni less. Inne programy stronicujce potrafi wywietli tylko jeden plik naraz, za to most jest w stanie wywietli dowoln liczb plikw, pod warunkiem, e okno kadego pliku ma co najmniej dwa wiersze. most ma wiele opcji, ktre s opisane na stronie podrcznika.

10.3 Proste wyjcie: cat i echo 10.3.1 cat


Polecenie cat(1) to skrt od concatenate konkatenowa, czyli czy. Zaprojektowano je pocztkowo do czenia wielu plikw tekstowych w jeden, ale ma wiele innych zastosowa. Aby poczy dwa lub wicej plikw w jeden, po prostu wymienia si te pliki po wpisaniu cat, a wyjcie przekierowuje do nowego pliku. cat operuje na standardowym wejciu i standardowym wyjciu, wic naley uy znakw przekierowywania powoki. Oto przykad:
% cat file1 file2 file3 > bigfile

To polecenie czy tre plikw file1, file2 i file3 razem, a nastpnie wysya wynik do pliku bigfile. Mona uy cat do wywietlania treci plikw. Czsto catuje si pliki tekstowe przez more lub less, np.:
% cat file1 | more

To wywietli plik file1 i przepuci je przez more, dziki czemu naraz bdzie si wywietla jeden ekran. Innym typowym zastosowaniem cat jest kopiowanie plikw. Mona skopiowa dowolny plik, np.:
% cat /bin/bash > ~/mojapowloka

Powoka /bin/bash jest kopiowana do katalogu domowego i nazwana mojapowloka. Powysze przykady to jedne z wielu zastosowa cat. Jako e cat w duej mierze korzysta ze standardowego wejcia i wyjcia, idealnie nadaje si do skryptw powoki lub innych zoonych polece.

10.3.2 echo
Polecenie echo(1) wywietla dany tekst na ekranie. Jako parametr podaje si po echo cig znakw, ktry ma by wywietlony. Domylnie echo wywietli cig, a po nim znak nowego wiersza. Aby nie przechodzi do nowego wiersza, uywa si opcji n. Opcja e sprawia, e echo poszukuje tzw. znakw ucieczki (ang. escape characters) w cigu i wykonuje je.

10.4 Tworzenie: touch i mkdir 10.4.1 touch


Polecenia touch(1) uywa si do zmiany znacznika czasu (ang. timestamp) pliku. Mona zmieni znaczniki dostpu i modyfikacji. Jeli plik nie istnieje, touch utworzy plik o podanej nazwie i zerowej dugoci. Aby zaznaczy w pliku biecy czas systemowy, uywa si:
% ls -al file1 -rw-r--r-1 root % touch file1 % ls -al file1 -rw-r--r-1 root

root root

9779 Feb 9779 Feb

7 21:41 file1 8 09:17 file1

touch ma kilka opcji decydujcych o tym, ktry znacznik zmodyfikowa, jakiego czasu uy itp. Wicej szczegw znajduje si na stronie podrcznika.

10.4.2 mkdir
mkdir(1) tworzy nowy katalog. Przy uruchamianiu mkdir podaje si nazw katalogu. W taki sposb tworzy si katalog hejaz w biecym katalogu:
% mkdir hejaz

Mona te poda ciek:


% mkdir /usr/local/hejaz

Opcja -p mwi mkdir, aby utworzyo te odpowiednie katalogi nadrzdne. Powyszy przykad si nie uda, jeli nie istnieje katalog /usr/local. Opcja -p utworzy zarwno /usr/local, jak i / usr/local/hejaz:
% mkdir -p /usr/local/hejaz

10.5 Kopiowanie i przenoszenie 10.5.1 cp


Polecenie cp(1) suy do kopiowania plikw. Dziaa podobnie jak DOSowe copy. cp ma wiele opcji, warto wic przeczyta jego stron podrcznika. Najczciej uywa si cp do kopiowania pliku z jednej lokalizacji do drugiej, np.:
% cp hejaz /tmp

To skopiuje plik hejaz z biecego katalogu do katalogu /tmp. Wielu uytkownikw chce zachowa znaczniki czasu, tak jak tu:
% cp -a hejaz /tmp

Dziki temu znaczniki czasu w kopii nie ulegaj modyfikacji. Aby rekursywnie skopiowa zawarto jednego katalogu do drugiego, uywa si:
% cp -R jakiskatalog /tmp

To skopiuje katalog jakiskatalog do /tmp. Aby skopiowa dokadnie pliki i katalogi, zachowujc ich prawa wasnoci i dostpu oraz znaczniki czasu, uywa si cp p:
% ls -l file -rw-r--r-1 root % cp -p file /tmp % ls -l /tmp/file -rw-r--r-1 root

vlad vlad

4 Jan 4 Jan

1 15:27 file 1 15:27 file

Wicej opcji cp jest dokadnie opisanych na stronie podrcznika.

10.5.2 mv
Polecenie mv(1) przenosi pliki z jednego miejsca do drugiego. Brzmi prosto, czy nie?
% mv staryplik /tmp/nowyplik

To polecenie ma kilka przydatnych opcji wiersza polece, ktre s dokadnie opisane na stronie podrcznika. W praktyce mv prawie nigdy nie uywa si z opcjami wiersza polece.

10.6 Usuwanie: rm i rmdir 10.6.1 rm


rm(1) usuwa pliki i drzewa katalogw, podobnie jak DOSowe del i deltree. rm moe by bardzo niebezpieczne, jeli uywa si go nierozwanie. Wprawdzie czasami jest moliwe przywrcenie usunitego pliku, ale jest to skomplikowane (i potencjalnie kosztowne) i wykracza poza zakres tej ksiki. Aby usun plik, wystarczy poda jego nazw poleceniu rm:
% rm plik1

Jeli nie masz do pliku prawa zapisu, wywietli si bd o braku dostpu. Aby wymusi usunicie pliku, uyj opcji -f:
% rm -f plik1

Aby usun cay katalog, uyj -r i -f razem. To doskonay przykad, jak usun ca zawarto dysku twardego. Nie chcesz tego robi, niemniej jednak, oto polecenie:
# rm -rf /

Uwaaj podczas wykonywania rm. atwo moesz zrobi sobie kuku. Inne opcje podawane w wierszu polece s opisane na stronie podrcznika.

10.6.2 rmdir
rmdir(1) usuwa katalogi. Katalog musi by pusty, zanim bdzie go mona usun. Skadnia to po prostu:
% rmdir <katalog>

Oto przykad na usunicie katalogu hejaz w biecym katalogu:


% rmdir hejaz

Jeli katalog do usunicia nie istnieje, rmdir wywietli odpowiedni informacj. Mona poda pen ciek do katalogu:
% rmdir /tmp/hejaz

Takie polecenie sprbuje usun podkatalog hejaz z katalogu /tmp. Mona usun katalog wraz z jego katalogami nadrzdnymi, uywajc opcji -p:
% rmdir -p /tmp/hejaz

Najpierw rmdir sprbuje usun hejaz wewntrz /tmp. Jeli mu si uda, sprbuje usun sam /tmp. Polecenie kontynuuje dziaanie, dopki nie napotka pierwszego bdu lub nie usunie caego drzewa.

10.7 Tworzenie nazw zastpczych plikw przez ln


Polecenia ln(1) uywa si do tworzenia dowiza midzy plikami. Mog to by dowizania twarde lub mikkie (symboliczne). Rnica jest omwiona w sekcji 9.3. Aby utworzy dowizanie symboliczne do katalogu /var/media/mp3 i umieci je w katalogu domowym, uyj:
% ln -s /var/media/mp3 ~/mp3

Opcja -s mwi ln, aby utworzy dowizanie symboliczne. Nastpnie mamy docelowy plik lub katalog, a na kocu nazw dowizania. W tym przypadku zostanie utworzony plik o nazwie mp3 w katalogu domowym, ktry bdzie wskazywa na /var/media/mp3. Dowizanie moe mie dowoln nazw, wystarczy j poda jako ostatni opcj. Tworzenie dowizania twardego jest rwnie atwe. Wystarczy wywoa ln bez opcji -s. Jednak dowizania twarde nie mog zwykle wskazywa na katalogi lub pliki na innej partycji albo zdalnym systemie plikw. Aby utworzy dowizanie twarde /usr/bin/email do /usr/bin/mutt, wpisz:
# ln /usr/bin/mutt /usr/bin/email

Rozdzia 11. Kontrola procesw


Kady uruchomiony program jest nazywany procesem. Procesem moe by zarwno system X Window, jak i programy systemowe (tzw. demony, ang. daemons), ktre s uruchamiane podczas startu komputera. Kady proces dziaa z prawami jakiego uytkownika. Procesy uruchamiane podczas startu zwykle dziaaj jako uytkownik root lub nobody. Procesy uruchomione przez Ciebie dziaaj jako Ty. Procesy uruchomione przez innych uytkownikw jako oni. Sprawujesz kontrol nad procesami uruchomionymi przez siebie. Ponadto, root kontroluje wszystkie procesy, take te uruchomione przez innych uytkownikw. Dziaanie procesw mona kontrolowa i monitorowa za pomoc kilku programw oraz polece powoki.

11.1 Praca w tle


Programy uruchamiane z wiersza polece dziaaj na pierwszym planie. Dziki temu mona zobaczy komunikaty programu i przekazywa mu polecenia. Czasem jednak chcesz, aby uruchomiony program nie zajmowa terminala. Nazywa si to uruchamianiem programw w tle. Mona to osign na kilka sposobw. Po pierwsze, mona doda znak ampersand (&) na kocu wiersza polece podczas wywoywania programu. Na przykad, chcesz uruchomi konsolowy odtwarzacz plikw mp3 amp, aby odtworzy pliki z katalogu zawierajcego ich kolekcj. Nie chcesz jednak zajmowa terminala, bo masz co na nim do zrobienia. Oto polecenie, ktre uruchomi amp w tle:
% amp *.mp3 &

Program uruchomi si w tle i przywrci znak zgoszenia powoki. Po drugie, mona program przenie w to podczas jego dziaania. Najpierw go uruchom. Gdy ju dziaa, wcinij Ctrl+z. To zawiesza, czyli pauzuje proces. Natychmiast przestaje dziaa, ale moe by uruchomiony znowu w kadej chwili. Po zawieszeniu procesu wracasz do znaku zgoszenia. Teraz przenie proces w to, wpisujc:
% bg

Proces, ktry by zawieszony, dziaa znowu w tle.

11.2 Praca na pierwszym planie


Jeli chcesz si komunikowa z procesem dziaajcym w tle, musisz przywoa go na pierwszy plan. Jeli proces w tle jest tylko jeden, wystarczy polecenie:
% fg

Jeli jego dziaanie jeszcze si nie zakoczyo, zajmie on terminal i nie powrci do znaku zgoszenia. Czasami program koczy dziaanie podczas pracy w tle. W takim przypadku wywietli si co podobnego do tego:
[1]+ Done /bin/ls $LS_OPTIONS

To znaczy, e dziaajcy w tle proces (w tym przypadku ls nieszczeglnie ciekawy) zakoczy si. W tle moe dziaa wiele procesw naraz. Wwczas musisz wiedzie, ktry z nich chcesz przywoa. Wpisujc fg, przywoasz proces, ktry by przeniesiony w to jako ostatni. A jeli masz ca list takich procesw? Na szczcie w powoce jest dostpne polecenie jobs wywietlajce wszystkie takie procesy:
% jobs [1] Stopped [2]- Stopped [3]+ Stopped

vim amp man ps

Pokazuje ono list wszystkich procesw w tle. Wida, e wszystkie s zatrzymane (stopped), czyli zawieszone. Liczba po lewej stronie jest czym w rodzaju numeru identyfikacyjnego (ID) poszczeglnych procesw. ID ze znakiem plusa obok (man ps) to proces, ktry zostanie przywoany na pierwszy plan po wpisaniu fg. Aby przywoa vim, wpisz:
% fg 1

wtedy vim powrci na konsol. Przenoszenie procesw w to jest przydatne, jeli masz tylko jeden terminal dostpny poprzez poczenie telefoniczne. Na takim terminalu moesz uruchomi kilka procesw, przeczajc si midzy nimi co jaki czas.

11.3 ps
Wiesz ju, jak przecza si midzy procesami uruchomionymi z wiersza polece. Wiesz te, e w tym samym czasie jest uruchomionych wiele procesw. Jak wywietli je wszystkie? Uywajc polecenia ps (1). Ma ono wiele opcji, omwimy tylko najwaniejsze. Peny opis znajduje si na stronie podrcznika. Strony podrcznika s omwione w sekcji 2.1.1.

Wpisanie samego ps wywietli list programw uruchomionych na danym terminalu. Bdzie ona zawiera procesy pierwszoplanowe (w tym program samej powoki) i dziaajce w tle, a take samo polecenie ps. Czsto lista nie jest duga:
% ps PID TTY 7923 ttyp0 8059 ttyp0

TIME CMD 00:00:00 bash 00:00:00 ps

Nie ma tu zbyt wiele procesw, ale wywietlone informacje s typowe. Wynik ps jest zawsze pogrupowany w odpowiednie kolumny, niezalenie od liczby uruchomionych procesw. Co one wszystkie oznaczaj? PID (process ID) to numer identyfikacyjny procesu. Kady dziaajcy proces ma swj niepowtarzalny identyfikator, zawierajcy si w przedziale od 1 do 32767. Kady nowo uruchomiony proces otrzymuje pierwszy wolny PID. Kiedy proces koczy dziaanie (lub jest unicestwiany, co zostao opisane w nastpnej sekcji), zwalnia swj PID. Gdy maksymalna liczba PID zostanie osignita, jako nastpny PID zostanie wykorzystany pierwszy dostpny najmniejszy numer. Kolumna TTY oznacza, na ktrym terminalu jest uruchomiony proces. Jako e ps bez opcji wywietla tylko programy na biecym terminalu, w kolumnie TTY jest ta sama warto. Jak wida, oba procesy s uruchomione na terminalu ttyp0. To znaczy, e albo dziaaj zdalnie, albo z jakiego terminala X. Kolumna TIME okrela, ile czasu procesora zajmuje uruchomiony proces. Rni si to od rzeczywistego czasu dziaania procesu. Pamitaj, e Linux to system wielozadaniowy. Przez cay czas jest w nim uruchomionych wiele procesw. Kademu z nich jest przydzielana czstka czasu procesora. Tak wic kolumna TIME powinna pokazywa o wiele mniej czasu dla kadego procesu, ni w rzeczywistoci on dziaa. Jeli warto TIME jest wiksza ni kilka minut, prawdopodobnie co tu nie gra. Wreszcie kolumna CMD pokazuje waciwy program, jaki jest uruchomiony. Wywietlana jest tylko nazwa programu, bez opcji wiersza polece itp. Aby je wywietli, uyj odpowiedniej opcji ps. Omwimy to w skrcie. Uywajc odpowiednio poczonych opcji, moesz wywietli wszystkie uruchomione procesy. Lista bdzie prawdopodobnie duga (gdy pisz to zdanie na laptopie, ma ona 55 wierszy), wic obetn troch wyjcie:

% ps -ax PID TTY STAT 1 ? S 2 ? SW 3 ? SW 4 ? SW 5 ? SW 11 ? S 30 ? SW 50 ? S 54 ? S 57 ? S 59 ? S 61 ? S 63 ? S 65 ? S 67 ? S 69 ? S 77 ? S 79 ? S 94 ? S 106 tty1 S 108 tty3 SW 109 tty4 SW 110 tty5 SW 111 tty6 SW [obcite wyjcie]

TIME COMMAND 0:03 init [3] 0:13 [kflushd] 0:14 [kupdate] 0:00 [kpiod] 0:17 [kswapd] 0:00 /sbin/kerneld 0:01 [cardmgr] 0:00 /sbin/rpc.portmap 0:00 /usr/sbin/syslogd 0:00 /usr/sbin/klogd -c 3 0:00 /usr/sbin/inetd 0:04 /usr/local/sbin/sshd 0:00 /usr/sbin/rpc.mountd 0:00 /usr/sbin/rpc.nfsd 0:00 /usr/sbin/crond -l10 0:00 /usr/sbin/atd -b 15 -l 1 0:00 /usr/sbin/apmd 0:01 gpm -m /dev/mouse -t ps2 0:00 /usr/sbin/automount /auto file /etc/auto.misc 0:08 -bash 0:00 [agetty] 0:00 [agetty] 0:00 [agetty] 0:00 [agetty]

Wikszo z tych procesw jest z reguy uruchamiana podczas startu. Poniewa dokonaem u siebie kilku modyfikacji, u Ciebie wynik moe wyglda inaczej. Wikszo procesw zobaczysz jednak rwnie na swoim komputerze. Jak wida, s wywietlone opcje wiersza polece przekazane do procesw. Ostatni bd jdra, wykryty w funkcji ptrace, poskutkowa wprowadzeniem poprawki, ktra uniemoliwia wywietlenie opcji dla wielu procesw. Obecnie s wywietlane w nawiasach kwadratowych pod PID 108 do 110. Poprawka wprowadzia rwnie kilka innych kolumn i interesujcych informacji. Zauwa, e wikszo procesw jest uruchomiona na tty ?. To oznacza, e nie s one podczone do adnego terminala. Najczciej s to demony, czyli procesy dziaajce bez podczania do konkretnych terminali. Najczciej spotykane demony to sendmail, BIND, apache i NFS. Dziaaj one w ten sposb, e nasuchuj w oczekiwaniu na jakie zgoszenie klienta, a po otrzymaniu zgoszenia przekazuj mu jakie informacje. Wida tu now kolumn: STAT. Pokazuje ona status procesu. S oznacza sleeping - w stanie upienia. Taki proces oczekuje na jakie zdarzenie. Z oznacza proces zombie. Procesy zombie to takie procesy, ktrych procesy macierzyste zostay unicestwione, pozostawiajc swoje procesy potomne. Nie wry to nic dobrego. D oznacza proces, ktry znajduje si w stanie nieprzerywalnego upienia. Takich procesw czsto nie daje si unicestwi, nawet przekazujc im sygna SIGKILL. Wicej na temat sygnau SIGKILL znajduje si sekcji dotyczcej polecenia kill. W oznacza stronicowanie. Proces martwy jest oznaczony liter X. Proces T jest ledzony lub zatrzymany. R oznacza, e proces mona uruchomi. Jeszcze wicej informacji uzyskasz, uywajc:

% ps -aux USER PID %CPU %MEM root 1 0.0 0.0 root 2 0.0 0.0 root 3 0.0 0.0 root 4 0.0 0.0 root 5 0.0 0.0 root 11 0.0 0.0 root 30 0.0 0.0 bin 50 0.0 0.0 root 54 0.0 0.1 root 57 0.0 0.1 root 59 0.0 0.0 root 61 0.0 0.2 root 63 0.0 0.0 root 65 0.0 0.0 root 67 0.0 0.2 root 77 0.0 0.2 root 79 0.0 0.1 root 94 0.0 0.2 chris 106 0.0 0.5 root 108 0.0 0.0 root 109 0.0 0.0 root 110 0.0 0.0 root 111 0.0 0.0 [obcite wyjcie]

VSZ 344 0 0 0 0 1044 1160 1076 1360 1276 1332 1540 1796 1812 1172 1048 1100 1396 1820 1048 1048 1048 1048

RSS 80 0 0 0 0 44 0 120 192 152 60 312 72 68 260 316 152 280 680 0 0 0 0

TTY ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? tty1 tty3 tty4 tty5 tty6

STAT S SW SW SW SW S SW S S S S S S S S S S S S SW SW SW SW

START Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02

TIME 0:03 0:13 0:14 0:00 0:17 0:00 0:01 0:00 0:00 0:00 0:00 0:04 0:00 0:00 0:00 0:00 0:01 0:00 0:08 0:00 0:00 0:00 0:00

COMMAND init [3] [kflushd] [kupdate] [kpiod] [kswapd] /sbin/kerneld [cardmgr] /sbin/rpc.port /usr/sbin/sysl /usr/sbin/klog /usr/sbin/inet /usr/local/sbi /usr/sbin/rpc. /usr/sbin/rpc. /usr/sbin/cron /usr/sbin/apmd gpm /usr/sbin/auto -bash [agetty] [agetty] [agetty] [agetty]

To dopiero kupa informacji. Wida dodatkowo, ktry uytkownik uruchomi proces, ile zasobw systemowych proces uywa (kolumny %CPU, %MEM, VSZ i RSS), a take czas uruchomienia. Taka ilo informacji przydaje si administratorowi systemu. Jeszcze jedno: informacje wychodz poza praw krawd ekranu, wic nie mona jej przeczyta. Uyj opcji -w polecenia ps, aby wymusi zawijanie wierszy. Nie wyglda to adnie, ale spenia swoje zadanie. Wywietlaj si pene informacje o kadym procesie. Istniej te inne, opisane szczegowo na stronie podrcznika ps. Powysze opcje s jednak najpowszechniejsze i ich bdziesz uywa najczciej.

11.4 kill
Czasami programy nie dziaaj poprawnie i trzeba przywrci je do porzdku. Uywa si do tego polecenia kill(1). Za jego pomoc mona manipulowa procesami na kilka sposobw. Najbardziej oczywistym jest zabicie (ang. kill zabi), czyli wyczenie procesu (zwane te unicestwieniem). Jest to potrzebne, jeli program wymkn si spod kontroli i zuywa zbyt wiele zasobw systemowych, albo jeli po prostu Ci si znudzi. Aby zabi proces, musisz zna jego PID lub nazw. Do zdobycia PID uyj ps, tak jak zostao to opisane w poprzedniej sekcji. Aby zabi proces o numerze np. 4747, wpisz:
% kill 4747

Musisz by wacicielem procesu, aby go zabi. To funkcja bezpieczestwa. Gdyby byo moliwe zabijanie procesw innych uytkownikw, mogoby to prowadzi do rnego rodzaju niewaciwych postpowa. Oczywicie root moe zabi kady proces.

Istnieje odmiana polecania kill o nazwie killall(1) (ang. zabi wszystkie). Dziaa dokadnie tak, jak si nazywa: zabija wszystkie aktualnie dziaajce procesy o podanej nazwie. Na przykad, aby zabi wszystkie procesy vim, wpisz:
% killall vim

Wszystkie procesy vim zostan zakoczone. Wykonanie tego polecenia jako root spowoduje wyczenie wszystkich procesw vim u wszystkich uytkownikw. Oto ciekawy sposb, w jaki mona usun wszystkich (wczajc w to siebie samego) z systemu:
# killall bash

Czasami zwyke kill nie dziaa, poniewa niektre procesy nie reaguj na nie. Trzeba uy mocniejszej formy. Jeli ten pody PID 4747 nie odpowiedzia na danie wyczenia, wpisz:
% kill -9 4747

Proces 4747 zostanie prawie na pewno zabity. Tej samej opcji mona uy z killall. Dziaa to w ten sposb, ze do procesu jest wysany szczeglny sygna. Standardowe kill wysya sygna zakoczenia SIGTERM (ang terminate zakoczy), ktre mwi procesowi, aby zakoczy prac, posprzta po sobie i wyczy si. kill -9 wysya SIGKILL, czyli sygna zabicia, ktry go po prostu wycza. Proces nie ma szansy zakoczy si w czysty sposb, co czasem prowadzi do uszkodzenia danych. Oto pena lista sygnaw. Mona j wywietli poleceniem:
% kill -l 1) SIGHUP 5) SIGTRAP 9) SIGKILL 13) SIGPIPE 18) SIGCONT 22) SIGTTOU 26) SIGVTALRM 30) SIGPWR

2) 6) 10) 14) 19) 23) 27)

SIGINT 3) SIGQUIT 4) SIGILL SIGABRT 7) SIGBUS 8) SIGFPE SIGUSR1 11) SIGSEGV 12) SIGUSR2 SIGALRM 15) SIGTERM 17) SIGCHLD SIGSTOP 20) SIGTSTP 21) SIGTTIN SIGURG 24) SIGXCPU 25) SIGXFSZ SIGPROF 28) SIGWINCH 29) SIGIO

Z kill naley uy numeru, z killall czci nazwy bez poprzedzajcego SIG. Oto inny przykad:
% killall -KILL vim

Polecenia kill mona te uy do zrestartowania procesu. Wikszo procesw reaguje na SIGHUP, odczytujc ponownie swoje pliki konfiguracyjne. Jest to szczeglnie przydatne, jeli zmodyfikowae taki plik i chcesz, aby program odczyta zmienion wersj.

11.5 top
Na koniec opiszemy polecenie, ktrego uywa si, aby wywietli stale aktualizowane informacje o uruchomionych procesach. To polecenie nazywa si top(1) i uruchamia si je tak:

% top

Wywietli to ekran peen informacji o uruchomionych procesach, a take oglne dane o systemie. S to: przecitne obcienie, liczba procesw, status procesora, ilo wolnej pamici oraz szczegy dotyczce procesw, takie jak PID, waciciel, priorytet, zuycie procesora i pamici, czas od wczenia i nazwa programu.
6:47pm up 1 day, 18:01, 1 user, load average: 0.02, 0.07, 0.02 61 processes: 59 sleeping, 2 running, 0 zombie, 0 stopped CPU states: 2.8% user, 3.1% system, 0.0% nice, 93.9% idle Mem: 257992K av, 249672K used, 8320K free, 51628K shrd, 78248K buff Swap: 32764K av, 136K used, 32628K free, 82600K cached PID USER 112 root 4947 david 3398 david 4946 root 121 david 115 david 4948 david 1 root 189 david 4734 david 2 root 3 root 4 root 5 root 31 root 51 root 53 bin 57 root PRI NI SIZE RSS SHARE STAT 12 0 19376 18M 2468 R 15 0 2136 2136 1748 S 7 0 20544 20M 3000 S 12 0 1040 1040 836 R 4 0 796 796 644 S 3 0 2180 2180 1452 S 16 0 776 776 648 S 1 0 176 176 148 S 1 0 6256 6156 4352 S 0 0 1164 1164 916 S 0 0 0 0 0 SW 0 0 0 0 0 SW 0 0 0 0 0 SW 0 0 0 0 0 SW 0 0 340 340 248 S 0 0 48 48 32 S 0 0 316 316 236 S 0 0 588 588 488 S LIB %CPU %MEM TIME COMMAND 0 3.7 7.5 55:53 X 0 2.3 0.8 0:00 screenshot 0 1.5 7.9 0:14 gimp 0 1.5 0.4 0:00 top 0 1.1 0.3 25:37 wmSMPmon 0 0.3 0.8 1:35 wmaker 0 0.3 0.3 0:00 xwd 0 0.1 0.0 0:13 init 0 0.1 2.4 3:16 licq 0 0.1 0.4 0:00 rxvt 0 0.0 0.0 0:08 kflushd 0 0.0 0.0 0:06 kupdate 0 0.0 0.0 0:00 kpiod 0 0.0 0.0 0:04 kswapd 0 0.0 0.1 0:00 kerneld 0 0.0 0.0 0:00 dhcpcd 0 0.0 0.1 0:00 rpc.portmap 0 0.0 0.2 0:01 syslogd

Polecenie nazywa si top (ang. szczyt, wierzchoek, gra), poniewa programy zuywajce najwicej czasu CPU s wywietlone na grze. Co jest ciekawe, to fakt, e samo top bdzie wywietlone jako pierwsze na wikszoci mao obcionych (czasem te na obcionych) komputerach, poniewa samo zuywa duo czasu procesora. Niemniej jednak, top jest bardzo uyteczne do okrelenia, ktry program wymkn si spod kontroli i trzeba go zabi. Jak wywietli procesy nalece tylko do Ciebie albo tylko do innego uytkownika? Przecie mog nie mieci si na licie najbardziej aktywnych programw. Dziki opcji -u moesz okreli nazw lub numer uytkownika (UID) i monitorowa tylko te procesy, ktrych wacicielem jest dany UID.

% top -u alan PID USER 3622 alan 3739 alan 3518 alan 3529 alan 3544 alan 3548 alan 3551 alan 3553 alan 3555 alan 3557 alan 3559 alan 3565 alan 3568 alan 3572 alan 3574 alan 3575 alan 3576 alan

PR 13 13 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9

NI 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

VIRT RES 11012 10m 1012 1012 1312 1312 984 984 640 640 8324 8320 7084 7084 2232 2232 2552 2552 2740 2740 6496 6492 1740 1740 7052 7052 11412 11m 12148 11m 12148 11m 12148 11m

SHR S 6956 S 804 R 1032 S 848 S 568 S 6044 S 1968 S 380 S 1948 S 2224 S 5004 S 1440 S 4960 S 7992 S 8780 S 8780 S 8780 S

%CPU 1.0 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0

%MEM 2.1 0.2 0.3 0.2 0.1 1.6 1.4 0.4 0.5 0.5 1.3 0.3 1.4 2.2 2.4 2.4 2.4

TIME+ 0:03.66 0:00.06 0:00.09 0:00.00 0:00.00 0:00.30 0:00.50 0:00.05 0:00.10 0:00.05 0:00.31 0:00.28 0:02.28 0:01.58 0:00.64 0:00.00 0:00.00

COMMAND gnome-terminal top bash startx xinit gnome-session gconfd-2 esd bonobo-activati gnome-smproxy gnome-settingsxscreensaver metacity gnome-panel nautilus nautilus nautilus

Jak wida, w tej chwili mam uruchomiony system X, top, gnome-terminal (w ktrym wanie pisz) i wiele innych procesw zwizanych z X, ktre zuywaj najwicej czasu CPU. W ten sposb mona mierzy, jak intensywnie pracuj uytkownicy. Mona te monitorowa procesy wedug PID, ignorowa procesy bezczynne i zombie. Te i inne opcje s opisane na stronie podrcznika top.

Rozdzia 12. Podstawowa administracja systemem


Zaraz zaraz... Wiem, co mylisz: Nie jestem administratorem systemu! Nawet nie chc nim by! W rzeczywistoci jeste administratorem kadego komputera, do ktrego znasz haso roota. Moe to by domowy komputer z jednym czy dwoma uytkownikami albo wielki serwer z setkami uytkownikw. Tak czy owak, musisz wiedzie, jak zarzdza kontami uytkownikw i jak bezpiecznie zamyka system. Wydaje si, e to atwe, ale trzeba pamita o paru rzeczach,

12.1 Uytkownicy i grupy


Jak napisalimy w rozdziale 8, nie powinno si korzysta z konta root do codziennej pracy. Powiniene utworzy konto zwykego uytkownika i korzysta z niego na co dzie, a konta root uywa tylko do czynnoci administracyjnych. Do stworzenia uytkownika moesz uy narzdzi doczonych do Slackware lub rcznie zmodyfikowa plik z hasem.

12.1.1 Skrypty doczone do dystrybucji


Najprociej zarzdza si uytkownikami i grupami za pomoc skryptw i programw dostpnych w dystrybucji. W Slackware s to: adduser, userdel(8), chfn(1), chsh(1) i passwd(1) dla uytkownikw i groupadd(8), groupdel(8), groupmod(8) dla grup. Z wyjtkiem chfn, chsh i passwd uywa ich tylko root. Dlatego s umieszczone w /usr/sbin. Natomiast chfn, chsh i

passwd moe uruchomi kady, dlatego s w /usr/bin. Uytkownikw dodaje si poleceniem adduser. Opiszemy poszczeglne kroki procedury, pokazujc wszystkie zadawane pytania i krtko je objaniajc. Domylne odpowiedzi s w nawiasach kwadratowych i z reguy s odpowiednie, chyba e naprawd chcesz co zmieni.
# adduser Login name for new user []: wilcio

Login name (nazwa logowania) to nazwa, z jak uytkownik bdzie si logowa w systemie. Zazwyczaj nazwy maj 8 znakw lub mniej i s pisane maymi literami. (Mona uy wicej ni 8 znakw, a take cyfr, ale tylko jeli ma si naprawd wany powd). Nazwa logowania moe by podana jako argument w wierszu polece:
# adduser wilcio

W obu przypadkach nastpne bdzie pytanie o numer identyfikacyjny uytkownika UID (user ID).
User ID ('UID') [ defaults to next available ]:

Linux tak naprawd okrela prawa wasnoci wedug numerw uytkownikw, a nie ich nazw. Kademu uytkownikowi jest przypisany niepowtarzalny numer, w Slackware zaczynaj si one od 1 000. Mona przyzna konkretny UID lub pozwoli adduser na przypisanie pierwszego wolnego numeru.
Initial group [users]:

Wszyscy uytkownicy s domylnie przypisani do grupy users. Jeli nie wiesz, co robisz, nie zmieniaj tego przydziau na inn grup.
Additional groups (comma separated) []:

Tutaj moesz doda uytkownika do innych grup. Mona nalee do kilku grup naraz. Przydaje si to, jeli utworzysz grupy uytkownikw mogcych modyfikowa strony www, gra w gry itp. Czsto np. tworzy si grup wheel, ktrej czonkowie jako jedyni mog uywa polecenia su. W domylnej instalacji Slackware istnieje grupa sys dla uytkownikw, ktrzy mog odtwarza dwiki za pomoc karty dwikowej.
Home directory [/home/wilcio]

Katalogi domowe uytkownikw domylnie znajduj si w katalogu /home. Jeli system jest rozbudowany, by moe katalogi domowe s w innym miejscu (albo miejscach). W tym kroku moesz wybra lokalizacj katalogu domowego.
Shell [ /bin/bash ]

bash jest domyln powok w Linuksie Slackware. Wystarcza ona wikszoci ludzi. Jeli nowy uytkownik ma dowiadczenie z systemami uniksowymi, by moe zna inn powok. Mona j zmieni teraz lub uytkownik zmieni j sobie pniej, uywajc chsh.
Expiry date (YYYY-MM-DD) []:

Mona ustawi konta tak, aby traciy wano po upywie okrelonego czasu. Domylnie nie ma daty wyganicia wanoci konta, ale moesz to zmieni. Jest to przydatne, jeli kto jest Operatorem Internetu (ISP Internet Service Provider) i chce, aby czyje konto wygasao po upywie jakiej daty, chyba e uytkownik zapaci za nastpny rok.
New account will be created as follows: --------------------------------------Login name: wilcio UID: [ Next available ] Initial group: users Additional groups: [ None ] Home directory: /home/wilcio Shell: /bin/bash Expiry date: [ Never ] This is it... if you want to bail out, hit Control-C. ENTER to go ahead and make the account. Otherwise, press

To podsumowanie dotychczas wybranych informacji i moliwo anulowania tworzenia konta. Jeli wpisae co le, wcinij Ctrl+C, aby anulowa tworzenie. Po wciniciu ENTER natomiast konto zostanie utworzone.
Creating new account... Changing the user information for wilcio Enter the new value, or press return for the default Full Name []: Wlodzimierz Room Number []: Bramkowski 130 Work Phone []: Home Phone []: Other []:

Pozostae informacje s opcjonalne. Nie musisz nic wpisywa. Mona je zmieni pniej, uywajc chfn. Jeli jednak planujesz pniejsze kontakty z dan osob, warto wpisa przynajmniej imi, nazwisko i numer telefonu.
Changing password for wilcio Enter the new password (minimum of 5, maximum of 127 characters) Please use a combination of upper and lower case letters and numbers. New password: Re-enter new password: Password changed. Account setup complete.

Nastpnie musisz wpisa haso dla nowego uytkownika. Jeli nie jest on obecny przy tworzeniu konta, wymyl jakie proste haso i przeka uytkownikowi, aby zmieni je pniej na bezpieczniejsze. Uwaga na temat wyboru hasa: Bezpieczne haso to pierwsza linia obrony przed wamaniem. Haso nie powinno by atwe do odgadnicia, poniewa w ten sposb wamywacze komputerowi maj uatwione zadanie. Idealne haso to cig przypadkowych znakw, takich jak wielkie i mae litery, cyfry i znaki specjalne (tabulator nie jest akurat dobrym znakiem, zaley to od komputerw, z ktrych si logujesz. W Internecie jest dostpnych wiele programw generujcych hasa z przypadkowych znakw.

Oglnie rzecz biorc, uyj zdrowego rozsdku. Nie uywaj daty urodzin, powszechnie znanych sw, nazwy czego, co znajduje si na biurku ani czegokolwiek, co si z Tob kojarzy. bezpiecznehaslo1 (lub inne haso wydrukowane albo widoczne online) te nie jest dobre. Usuwanie uytkownikw jest proste. Wystarczy uruchomi userdel z nazw uytkownika jako argumentem. Upewnij si, e uytkownik jest wylogowany i nie s uruchomione adne jego procesy. Pamitaj, e po usuniciu uytkownika znikaj bezpowrotnie informacje o hale.
# userdel wilcio

To usunie wilcio z systemu. Dobry sposb na pozbycie si denerwujcego uytkownika :). Usuwane s wpisy z /etc/passwd, /etc/shadow i /etc/group, ale katalog domowy pozostaje. Aby usun rwnie katalog domowy, wpisz:
# userdel -r wilcio

Tymczasowa blokada konta jest opisana w kolejnej sekcji, jako e tymczasowe zablokowanie wymaga zmiany hasa uytkownika. Zmiana innych informacji o uytkowniku jest opisana w sekcji 12.1.3. Programy do usuwania i dodawania grup s proste. groupadd dodaje nowy wpis do /etc/group z niepowtarzalnym numerem identyfikacyjnym grupy (group ID GID). groupdel usuwa podan grup. Moesz te modyfikowa /etc/group, dodajc uytkownikw do innych grup. Aby np. doda grup cvs, wpisz:
# groupadd cvs

Aby j usun:
# groupdel cvs

12.1.2 Zmiana hasa


Program passwd zmienia haso, modyfikujc plik /etc/shadow. W tym pliku s przechowywane zaszyfrowane hasa wszystkich uytkownikw. Aby zmieni wasne haso, wpisz:
$ passwd Changing password for chris Old password: Enter the new password (minumum of 5, maximum of 127 characters) Please use a combination of upper and lower case letters and numbers. New password:

Jak wida, pokazuje si monit o wpisanie starego hasa. Nie pojawi si ono na ekranie podczas wpisywania (podobnie jak podczas logowania). Nastpnie passwd prosi o podanie nowego hasa, sprawdza, czy jest odpowiednie i wywietla ostrzeenie, jeli nie jest. Moesz je zignorowa. Potem pojawia si proba o wpisanie nowego hasa po raz drugi dla potwierdzenia. Root moe zmienia hasa innych uytkownikw:
# passwd ted

Procedura jest podobna, ale nie musisz wpisywa starego hasa. (Jedna z wielu zalet bycia rootem...) Moesz tymczasowo zablokowa konto i odblokowa je po pewnym czasie. Robi si to za pomoc passwd. Aby zablokowa konto, wykonaj jako root:
# passwd -l david

Zmieni to haso uytkownika david na co, co nigdy nie pasuje do zaszyfrowanej wartoci. Konto odblokowuje si przez:
# passwd -u david

Teraz konto david jest aktywne. Blokowanie konta przydaje si, jeli uytkownik naruszy ustalone zasady korzystania z systemu albo wyeksportowa bardzo du kopi programu xeyes(1) na twj pulpit X.

12.1.3 Zmiana informacji o uytkowniku


Uytkownik moe w kadej chwili zmieni dwie rzeczy: powok i informacje uywane przez program finger. Linux Slackware uywa do tego chsh (change shell zmie powok) i chfn (change finger zmie informacje uywane przez finger). Mona wybra dowoln powok wymienion w /etc/shells. /bin/bash wystarcza w wikszoci przypadkw. Niektrzy wol powok, ktrej uywaj w pracy czy szkole. Aby zmieni powok, uyj chsh:
% chsh Password: Changing the login shell for chris Enter the new value, or press return for the default Login Shell [/bin/bash]:

Po podaniu hasa wpisz pen ciek do powoki. Przedtem sprawd, czy jest wymieniona w /etc/shells(5). Root moe zmieni powok kadego uytkownika, uruchamiajc chsh z jego nazw jako argumentem. Informacje dla programu finger s opcjonalne. S to: imi i nazwisko, telefon, numer pokoju. Mona je zmieni za pomoc chfn, przechodzc przez te same kroki, co podczas tworzenia uytkownika. Oczywicie root moe je zmieni dla kadego.

12.2 Uytkownicy i grupy dla hardcore'owcw


Mona dodawa, usuwa i zmienia uytkownikw oraz grupy bez skryptw i programw. Nie jest to trudne, ale po przeczytaniu tej sekcji raczej stwierdzisz, e skrypty s prostsze. Musisz jednak wiedzie, w jaki sposb s przechowywane informacje o koncie, w razie gdyby musia je kiedy odtworzy, a nie mia dostpu do narzdzi Slackware. Najpierw dodamy uytkownika do /etc/passwd(5), /etc/shadow(5) i /etc/groups(5). W pliku passwd s przechowywane niektre informacje o uytkownikach, ale (o dziwo) nie ich hasa. Takie rozwizanie zostao dawno zarzucone ze wzgldw bezpieczestwa. Prawo do odczytu passwd

musz mie wszyscy uytkownicy, ale zaszyfrowane hasa nie powinny by dostpne do odczytu dla kadego. Potencjalni wamywacze mogliby sprbowa odszyfrowa zaszyfrowane hasa. Zamiast tego, hasa w zaszyfrowanej postaci s przechowywane w pliku shadow, do ktrego prawo odczytu ma tylko root. W polu hasa w passwd jest tylko x. W pliku group s wymienione wszystkie grupy i ich czonkowie. Aby bezpiecznie modyfikowa /etc/passwd, uyj polecenia vipw, do /etc/group vigr, do / etc/shadow vipw -s. (Bezpiecznie oznacza w taki sposb, e podczas edycji nikt inny nie ma dostpu do pliku. Jeli jeste jedynym administratorem, jeste raczej bezpieczny, ale warto wyrabia dobre nawyki od samego pocztku.) Zobaczymy, jak jest skonstruowany plik /etc/passwd i dowiedzmy si, jak doda w nim nowego uytkownika. Oto typowy wpis w /etc/passwd:
chris:x:1000:100:Chris Lumens,Room 2,,:/home/chris:/bin/bash

Kady wiersz jest wpisem dotyczcym jednego uytkownika. Pola w kadym wierszu s oddzielone dwukropkami. Pola to: nazwa uytkownika, zaszyfrowane haso (lub x w Slackware, poniewa Slackware uywa hase typu shadow), UID, GID, opcjonalne informacje dla finger (oddzielone przecinkami), katalog domowy i powoka. Aby doda uytkownika rcznie, trzeba na kocu pliku doda nowy wiersz z odpowiednimi informacjami. Takie informacje musz spenia pewne wymagania, w przeciwnym przypadku uytkownik bdzie mia problemy z zalogowaniem si. Po pierwsze, upewnij si, e w polu hasa jest x, a nazwa uytkownika i jego UID s niepowtarzalne. Przypisz uytkownikowi grup 100 (grupa users w Slackware) lub inn domyln grup (uyj GID, a nie nazwy grupy). Przydziel poprawny katalog domowy (utworzysz go pniej) i powok (waciwe powoki s wymienione w /etc/shells). Nastpnie dodaj wpis w /etc/shadow, ktry zawiera zaszyfrowane haso. Oto typowy wpis:
chris:$1$w9bsw/N9$uwLr2bRER6YyBS.CAEp7R.:11055:0:99999:7:::

Tak samo jak w passwd, kady wiersz odpowiada osobnemu uytkownikowi, poszczeglne pola s oddzielone dwukropkami. S to po kolei: nazwa uytkownika; zaszyfrowane haso; liczba dni, ktre upyny od pocztku tzw. Epoki (1 stycznia 1970) do czasu ostatniej zmiany hasa; liczba dni, ktre musz upyn, aby haso mogo zosta zmienione znowu; dni, po ktrych haso musi by zmienione; dni przed czasem wyganicia konta, kiedy uytkownik jest powiadamiany o nadchodzcym wyganiciu; dni od pocztku Epoki, kiedy konto jest nieaktywne, pole zarezerwowane. Jak widzisz, wikszo pl dotyczy wyganicia konta. Jeli nie chcesz, aby konto wygasao, wystarczy, e wypenisz niektre pola odpowiednimi wartociami. W przeciwnym razie bdziesz musia troch pomyle i wyliczy waciwe liczby. W polu hasa nowego uytkownika wpisz jakie przypadkowe znaki. Nie przejmuj si hasem, bo i tak je za chwil zmienisz. Jedynym znakiem, jakiego nie moesz uy w polu hasa, jest dwukropek. Pole dni od ostatniej zmiany hasa pozostaw puste. Wpisz dalej odpowiednio 0, 99999 i 7, tak jak w przykadzie, a inne pola te zostaw puste. (Jeli mylisz, e podaem swoje prawdziwe, zaszyfrowane haso i chcesz si wama do mojego systemu, wal miao. Jeli potrafisz zama haso, bdziesz zna haso do testowego systemu zabezpieczonego zapor sieciow. Na pewno Ci si to przyda :))

W typowym systemie Slackware wszyscy zwykli uytkownicy s czonkami grupy users. Jeli jednak chcesz utworzy now grup lub doda uytkownika do innych grup, zmodyfikuj plik /etc/groups. Oto typowy wpis:
cvs::102:chris,logan,david,root

Kolejne pola to: nazwa grupy, haso grupy, GID, i czonkowie grupy oddzieleni przecinkami. Aby utworzy now grup, wystarczy doda na kocu pliku nowy wiersz z niepowtarzalnym GID i wszystkimi uytkownikami, ktrzy maj do niej nalee. Jeli taki uytkownik istnieje i jest zalogowany, musi wylogowa si i zalogowa ponownie, aby wprowadzi zmiany w ycie. Warto uy polece pwck i grpck, aby sprawdzi, czy dokonane zmiany s spjne. Najpierw wywoaj pwck -r i grpck -r. Opcja -r nie dokonuje adnych zmian, za to wywietla list ewentualnych zmian, jakich polecenie by dokonao, gdyby byo uruchomione bez niej. Uyj wyniku, aby zdecydowa, czy potrzebna jest dalsza modyfikacja plikw, uruchomienie pwck i grpck bez -r, czy te mona zostawi zmienione pliki. Teraz uruchom passwd, aby przydzieli nowemu uytkownikowi haso. Nastpnie za pomoc mkdir utwrz katalog domowy w takiej lokalizacji, jak podana w /etc/passwd. Na koniec przez chown zmie waciciela tego katalogu na nowego uytkownika. Aby usun uytkownika, wystarczy usun jego wpisy: wiersze z /etc/passwd i /etc/shadow oraz nazw uytkownika ze wszystkich grup w /etc/group. Moesz te usun jego katalog domowy, kolejk poczty i wpis crontab (jeli istniej). Grupy usuwa si podobnie: usu odpowiedni wpis z /etc/group.

12.3 Poprawne zamykanie systemu


Poprawne zamykanie systemu jest niezwykle wane. Wyczenie komputera przez wcinicie przycisku zasilania moe spowodowa powane uszkodzenie systemu plikw. Kiedy komputer jest wczony, stale uywane s pewne pliki, nawet jeli sam nic nie robisz. Pamitaj, e cay czas jest uruchomionych wiele procesw w tle. Te procesy zarzdzaj systemem i utrzymuj wiele otwartych plikw. Jeli wyczy si zasilanie, pliki nie zostan poprawnie zamknite, co moe je uszkodzi. W zalenoci od tego, ktre z nich ulegy uszkodzeniu, system moe przesta nadawa si do uytku! Nawet jeli nie, procedura sprawdzania systemu plikw po ponownym uruchomieniu komputera jest dugotrwaa. Uwaga: Jeli Twj komputer wykorzystuje system plikw z kronikowaniem (zwanym te ksigowaniem), taki jak ext3 lub reiserfs, chroni to czciowo przed uszkodzeniem plikw. Czas sprawdzania po ponownym uruchomieniu komputera jest krtszy ni w przypadku systemu bez kronikowania, np. ext2. Takie zabezpieczenie nie jest jednak wymwk dla nieprawidowego zamykania systemu! Systemy plikw z kronikowaniem maj chroni przed uszkodzeniami wynikymi nie z Twojej winy, ale nie chroni przed uszkodzeniami, ktrych sprawc jest Twoje lenistwo. Jeli chcesz wyczy komputer lub uruchomi go ponownie, musisz waciwie zamyka system. Mona to zrobi na kilka sposobw, wybierz ten, ktry uznasz na najciekawszy (albo niewymagajcy wiele pracy). Procedury zamykania i restartowania s podobne, tak wic wikszo sposobw ma zastosowanie i przy tym, i przy tym.

Pierwsz i prawdopodobnie najpopularniejsz metod jest uycie polecenia shutdown(8). Mona za jego pomoc wycza lub restartowa system w zadanym czasie, wywietlajc jednoczenie komunikat o zbliajcym si zamkniciu dla wszystkich zalogowanych uytkownikw. Najczciej uywa si shutdown do wyczenia komputera w ten sposb:
# shutdown -h now

W tym przypadku nie wysyamy adnego specjalnego komunikatu, uytkownicy zobacz domylny komunikat programu. Now (ang. teraz) to czas, kiedy komputer ma by wyczony, a -h oznacza zatrzymanie systemu. Nie jest to dobre rozwizanie w przypadku systemw z zalogowanymi wieloma uytkownikami, ale jest odpowiednie dla komputera domowego. W systemach z wieloma uytkownikami lepszym rozwizaniem jest przekazanie komunikatu z niewielkim wyprzedzeniem:
# shutdown -h +60

Spowoduje to zamknicie systemu za godzin (60 minut), co powinno w zupenoci wystarczy, jeli z systemu korzysta wiele osb. Czas zamknicia systemw o istotnym znaczeniu powinien by zaplanowany z wikszym wyprzedzeniem. Komunikat o planowanym zamkniciu powinien by podany za porednictwem odpowiedniego kanau (e-mail, tablica ogosze, plik /etc/motd itp.). Ponowne uruchomienie komputera wywouje si tym samym poleceniem, ale z opcj -r zamiast -h:
# shutdown -r now

Czas podaje si tak samo, jak przy wyczaniu komputera. Polecenie shutdown ma wiele innych opcji kontrolujcych sposb i czas wyczania/restartowania komputera. S one opisane na stronie podrcznika. Innym sposobem wyczania s polecenia halt(8) i reboot(8). Jak sama nazwa wskazuje, halt (ang. zatrzyma) natychmiast zatrzyma prac systemu operacyjnego, a reboot (ang. przeadowa) uruchomi komputer ponownie (reboot to tak naprawd dowizanie symboliczne do halt). Wywouje si je tak:
# halt # reboot

Niskopoziomowym sposobem wyczania lub restartowania jest bezporednia komunikacja z programem init. Inne metody to tylko wygodniejsze odmiany takiej komunikacji. Mona jednak przekaza informacje do init bezporednio, uywajc polecenia telinit(8) (uwaga na pisowni tylko jedno l). To polecenie mwi init, na jaki poziom pracy ma przej, co spowoduje wykonanie odpowiedniego skryptu. Skrypt zabija lub uruchamia procesy odpowiednie dla danego poziomu. Ten sposb dziaa z wyczaniem i restartowaniem, poniewa s to specjalne poziomy pracy.
# telinit 0

Poziom pracy 0 to tryb zatrzymania. Polecenie przejcia w ten tryb przekazane do init spowoduje, e wszystkie procesy zostan zabite, systemy plikw odmontowane, a komputer zatrzymany. Jest to cakowicie poprawna metoda zamykania systemu, w przypadku laptopw i nowszych komputerw domowych najczciej rwnie wycza maszyn cakowicie.
# telinit 6

Poziom pracy 6 to tryb restartowania. Polecenie przejcia w ten tryb przekazane do init spowoduje, e wszystkie procesy zostan zabite, systemy plikw odmontowane, a komputer uruchomiony ponownie. Jest to cakowicie poprawna metoda restartowania systemu. Dla ciekawskich: podczas przeczania systemu na poziom pracy 0 lub 6, niezalenie czy przez shutdown, halt, czy reboot, jest uruchamiany skrypt /etc/rc.d/rc.6 (/etc/rc.d/rc.0 to dowizanie symboliczne do /etc/rc.d/rc.6). Moesz dostosowa ten plik do swoich potrzeb, ale upewnij si, e dobrze przetestowae wprowadzone zmiany! Istnieje jeszcze jedna metoda restartowania systemu. Wszystkie pozostae wymagaj, aby wykonywa je root. Moesz jednak uruchomi komputer ponownie nawet, jeli nie jeste rootem. Wystarczy, e bdziesz mia fizyczny dostp do klawiatury. Uycie kombinacji Control+Alt+Delete (tzw. salut Trzech Krli) spowoduje natychmiastowy restart (w istocie po wciniciu Ctrl+Alt+Del jest wywoywane polecenie shutdown). Salut nie zawsze dziaa w X musisz uy Ctrl+Alt+F1 (albo innego klawisza funkcyjnego), aby przeczy si na terminal tekstowy przed zastosowaniem tej kombinacji. Gwnym plikiem konfiguracyjnym, ktry kontroluje wszelkie aspekty uruchamiania i zamykania systemu, jest /etc/inittab(5). Najczciej nie trzeba go modyfikowa, ale jego przeczytanie moe wyjani, dlaczego pewne rzeczy dziaaj tak, a nie inaczej. Oczywicie zawsze przeczytaj odpowiednie strony podrcznika.

Rozdzia 13. Podstawowe polecenia sieciowe


Sie skada si z kilku komputerw poczonych razem. Sie moe by niewielka, np. par komputerw w domu albo biurze, albo bardzo rozbudowana, tak jak dua sie uniwersytecka lub nawet cay Internet. Kiedy komputer jest czci sieci, masz dostp do innych maszyn bezporednio lub za pomoc usug, takich jak poczta elektroniczna lub strony WWW. Istnieje wiele programw sucych do pracy w sieci. Jedne s przydatne do testowania, czy wszystko dobrze dziaa. Inne (jak czytniki poczty lub przegldarki WWW) przydaj si do pracy i utrzymywania kontaktw z ludmi.

13.1 ping
Polecenie ping(8) wysya pakiet ICMP ECHO_REQUEST (danie odpowiedzi) do danego komputera w sieci. Jeli komputer odpowie, otrzymasz pakiet ICMP z powrotem. Dziwnie to brzmi? Moesz np. spingowa adres IP, aby zobaczy, czy komputer pod tym adresem jest wczony. Jeli nie ma odpowiedzi, wiesz, e co jest nie tak. Oto typowa rozmowa dwch linuksiarzy: Uytkownik A: Loki znowu zdech. Uytkownik B: Jeste pewien? Uytkownik A: Tjaa, pingowaem go, ale nie odpowiada. Wanie w takich sytuacjach ping okazuje si niezmiernie przydatne jako narzdzie codziennego uytku. Za jego pomoc mona szybko sprawdzi, czy jaki komputer jest wczony i podczony do sieci. Oto przykad podstawowego wykorzystania:

% ping www.slackware.com

Istnieje oczywicie wiele opcji polecenia ping(1), ktre s opisane na stronie podrcznika.

13.2 traceroute
Polecenie traceroute(8) w Slackware jest niezwykle przydatnym narzdziem diagnostyki sieci. traceroute wywietla kady komputer w sieci, przez ktry przechodzi pakiet danych, dc do celu. Moesz np. zobaczy, o ile przeskokw (ang. hop) jeste oddalony od strony www Slackware:
% traceroute www.slackware.com

Wywietli si kady komputer wraz z czasem odpowiedzi. Oto przykad: ut:


% traceroute www.slackware.com traceroute to www.slackware.com (204.216.27.13), 30 hops max, 40 byte packets 1 zuul.tdn (192.168.1.1) 0.409 ms 1.032 ms 0.303 ms 2 207.171.227.254 (207.171.227.254) 18.218 ms 32.873 ms 32.433 ms 3 border-sf-2-0-4.sirius.com (205.134.230.254) 15.662 ms 15.731 ms 16.142 ms 4 pb-nap.crl.net (198.32.128.20) 20.741 ms 23.672 ms 21.378 ms 5 E0-CRL-SFO-03-E0X0.US.CRL.NET (165.113.55.3) 22.293 ms 21.532 ms 21.29 ms 6 T1-CDROM-00-EX.US.CRL.NET (165.113.118.2) 24.544 ms 42.955 ms 58.443 ms 7 www.slackware.com (204.216.27.13) 38.115 ms 53.033 ms 48.328 ms

traceroute jest podobne do ping, poniewa uywa pakietw ICMP. Mona go uy z wieloma opcjami, opisanymi na stronie podrcznika.

13.3 Narzdzia DNS


System nazw domen (ang. Domain Name System DNS) to magiczny protok, dziki ktremu komputer zamienia nic nieznaczce dla niego nazwy domen, takie jak www.slackware.com, na pene znaczenia adresy IP, jak 64.57.102.34. Komputery nie potrafi kierowa pakietw do www.slackware.com, ale potrafi je kierowa do adresu IP tej domeny. Dziki temu atwo jest zapamita komputery. Bez DNS musielibymy pamita, ktre adresy IP nale do jakich komputerw, i to zakadajc, e IP si nie zmieniaj. Nadawanie nazw komputerom jest wygodniejsze, ale jak przypisuje si te nazwy do konkretnych adresw IP?

13.1.1 host
Zajmuje si tym polecenie host(1). Uywa si go do przypisywania (mapowania) nazw do adresw IP. Jest to szybki i prosty, mao rozbudowany program.
% host www.slackware.com www.slackware.com is an alias for slackware.com. slackware.com has address 64.57.102.34

A jeli chcemy przypisa adres IP do nazwy domeny?

13.3.2 nslookup
nslookup to stary jak wiat i sprawdzony program. Obecnie jest uznany za przestarzay i prawdopodobnie zostanie usunity z nowszych wersji Slackware. Nie ma nawet do niego strony podrcznika.
% nslookup 64.57.102.34 Note: nslookup is deprecated and may be removed from future releases. Consider using the `dig' or `host' programs instead. Run nslookup with the `-sil[ent]' option to prevent this message from appearing. Server: 192.168.1.254 Address: 192.168.1.254#53 Non-authoritative answer: www.slackware.com canonical name = slackware.com. Name: slackware.com Address: 64.57.102.34

13.3.3 dig
Najbardziej rozbudowanym programem jest dig(1) (domain information groper wyszukiwarka informacji o domenie). To narzdzie, ktre potrafi wydoby najwicej informacji z serwera DNS, od wyszukiwa odwrotnych (ang. reverse lookups) do wpisw A, CNAME, MX, SP i TXT. Ma najwicej opcji wiersza polece, wic jeli go nie znasz, przeczytaj szczegow stron podrcznika.
% dig @192.168.1.254 www.slackware.com mx ; <<>> DiG 9.2.2 <<>> @192.168.1.254 www.slackware.com mx ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26362 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;www.slackware.com. ;; ANSWER SECTION: www.slackware.com. slackware.com. ;; AUTHORITY SECTION: slackware.com. slackware.com. ;; ADDITIONAL SECTION: ns1.cwo.com. ns2.cwo.com. ;; ;; ;; ;; 76634 86400 86400 86400 163033 163033 IN IN IN IN IN IN IN MX CNAME MX NS NS A A slackware.com. 1 mail.slackware.com. ns1.cwo.com. ns2.cwo.com. 64.57.100.2 64.57.100.3

Query time: 149 msec SERVER: 192.168.1.254#53(192.168.1.254) WHEN: Sat Nov 6 16:59:31 2004 MSG SIZE rcvd: 159

Tak wanie dziaa dig. @192.168.1.245 okrela, ktrego serwera DNS uy. www.slackware.com to nazwa domeny, o ktrej informacji poszukuj, a mx to zastosowany typ wyszukiwania. Z powyszego wyniku wiem, e e-mail wysany do www.slackware.com zostanie przesany do mail.slackware.com w celu dostarczenia.

13.4 finger
Polecenie finger(1) (ang. palec) wywietla informacje o danym uytkowniku. Podaje si mu jako argumenty nazw uytkownika lub jego adres, a finger prbuje skontaktowa si z odpowiednim serwerem i wydoby od niego takie informacje, jak nazwa uytkownika, biuro, telefon itp. Oto przykad:
% finger johnc@idsoftware.com

finger moe zwrci w odpowiedzi nazw uytkownika, status poczty elektronicznej, numery telefonw oraz pliki tzw. dot plan lub dot project. Oczywicie zwracane informacje zale od serwera finger. Domylnie serwer ze Slackware wywietla:

nazw uytkownika numer pokoju numer telefonu domowego numer telefonu do pracy status zalogowania status poczty elektronicznej zawarto pliku .plan w katalogu domowym uytkownika zawarto pliku .project w katalogu domowym uytkownika

Pierwsze cztery pozycje mona zdefiniowa za pomoc polecenia chfn. Zapisuje ono te wartoci w pliku /etc/passwd. Aby zmieni informacje w .plan lub .project, po prostu zmodyfikuj je w swoim ulubionym edytorze tekstu. Musz one znajdowa si w katalogu domowym i nazywa si dokadnie .plan i .project. Wielu uytkownikw fingeruje swoje konto ze zdalnego komputera, aby sprawdzi, czy maj now poczt. Moesz te zobaczy obecny plan pracy uytkownika lub projekt, nad ktrym pracuje. Podobnie jak inne polecenia, finger ma wiele opcji opisanych na stronie podrcznika.

13.5 telnet
Kto kiedy powiedzia, e telnet(1) to najbardziej zarbista rzecz, jak w yciu widzia w komputerach. Moliwo zdalnego logowania si na inne komputery i wykonywania na nich pracy to co, co odrnia systemy uniksowe i uniksopodobne od pozostaych. Dziki telnetowi moesz zalogowa si do komputera, tak jakby siedzia przed terminalem. Po zweryfikowaniu nazwy uytkownika i hasa otrzymujesz dostp do powoki. Moesz na niej robi wszystko, co mona robi w powoce tekstowej: pisa listy elektroniczne, czyta grupy dyskusyjne, zarzdza plikami itd. Jeli masz uruchomiony X i telnetujesz si na inn maszyn, moesz uruchamia programy X na zdalnym komputerze, a wywietla je na swoim.

W ten sposb logujesz si na zdalnym komputerze:


% telnet <nazwakomputera>

Jeli komputer odpowie, wywietli si znak zgoszenia logowania. Wpisz nazw uytkownika i haso. To wszystko, masz dostp do powoki. Aby zakoczy sesj telnet, uyj polecenia exit lub logout. Uwaga: telnet nie przesya informacji w formie zaszyfrowanej. Wszystko jest wysyane w postaci czystego tekstu, nawet hasa. Uywanie telnetu w Internecie nie jest zalecane. Zamiast tego powinno si uywa SSH (Secure Shell bezpieczna powoka), ktra szyfruje wszelkie przesyane dane i jest dostpna za darmo.

13.5.1 Inne sposoby wykorzystania telnetu


Przekonalimy ci, eby nie uywa telnetu do logowania si na zdalnym komputerze. Pokaemy teraz jego kilka innych, przydatnych zastosowa. Mona go uy, aby podczy si do komputera przez dany port.
% telnet <nazwakomputera> [port]

Jest to przydatne, kiedy chcesz przetestowa dziaanie jakiej usugi, a potrzebujesz penej kontroli nad poleceniami i tym co si dzieje. W ten sposb moesz interaktywnie testowa lub wykorzystywa serwer SMTP, POP3, HTTP itp. W ten sposb moesz zatelnetowa do serwera HTTP na port 80 i uzyska kilka podstawowych informacji:
% telnet store.slackware.com 80 Trying 69.50.233.153... Connected to store.slackware.com. Escape character is '^]'. HEAD / HTTP/1.0 HTTP/1.1 200 OK Date: Mon, 25 Apr 2005 20:47:01 GMT Server: Apache/1.3.33 (Unix) mod_ssl/2.8.22 OpenSSL/0.9.7d Last-Modified: Fri, 18 Apr 2003 10:58:54 GMT ETag: "193424-c0-3e9fda6e" Accept-Ranges: bytes Content-Length: 192 Connection: close Content-Type: text/html Connection closed by foreign host. %

Moesz zrobi to samo z innymi protokoami wykorzystujcymi czysty tekst, jeli wiesz, do ktrych portw si podczy i jakie polecenia wpisywa.

13.6 Bezpieczna powoka The Secure Shell


Bezpieczna powoka (SSH) cieszy si dzi takim powaaniem, jak niegdy telnet. ssh(1) pozwala na podczenie si do zdalnego komputera i wykonywanie na nim programw tak, jak na lokalnej maszynie. Jednak ssh szyfruje wszelkie dane przesyane midzy oboma komputerami, wic nawet jeli kto przechwyci konwersacj, nie bdzie w stanie jej zrozumie. Oto typowa sesja ssh:
% ssh carrier.lizella.net -l alan The authenticity of host 'carrier.lizella.net (192.168.1.253)' can't be established. RSA key fingerprint is 0b:e2:5d:43:4c:39:4f:8c:b9:85:db:b2:fa:25:e9:9d. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'carrier.lizella.net' (RSA) to the list of known hosts. Password: password Last login: Sat Nov 6 16:32:19 2004 from 192.168.1.102 Linux 2.4.26-smp. alan@carrier:~$ ls -l MANIFEST -rw-r--r-- 1 alan users 23545276 2004-10-28 20:04 MANIFEST alan@carrier:~$ exit logout Connection to carrier.lizella.net closed.

W ten sposb poczyem si przez ssh z carrier.lizella.net, aby sprawdzi prawa wasnoci i dostpu do pliku MANIFEST.

13.7 Poczta elektroniczna


Poczta elektroniczna (e-mail, email) to jedna z najpopularniejszych rzeczy w Internecie. W 1998 roku liczba wiadomoci elektronicznych przekroczya liczb listw wysanych zwyk poczt. Jest ona bardzo uyteczna i powszechnie stosowana. W Slackware jest dostpny standardowy serwer poczty oraz kilka klientw. Wszystkie poniej opisane klienty s tekstowe. Wielu uytkownikw Windows krzywi si na ten widok, ale klienty tekstowe s bardzo wygodne, zwaszcza jeli sprawdzasz poczt na zdalnym komputerze. Nie ma si czego ba, jest wiele klientw graficznych, jak np. Kmail dostpny w KDE. Jeli chcesz z ktrego korzysta, przeczytaj doczon do niego pomoc.

13.7.1 pine
Jak to si mwi, pine(1) (ang. sosna) to nie elm (ang. wiz). Ten program stworzono Uniwersytecie Waszyngtoskim dla studentw, ktrzy potrzebowali prostego klienta poczty elektronicznej i grup dyskusyjnych. Jest to obecnie jeden z najpowszechniej uywanych czytnikw poczty, dostpny dla rnych systemw uniksowych, a nawet dla Windows. Rys. 13-2. Gwny ekran Pine

Wida menu polece oraz rzd klawiszy polece na dole. Jest to do rozbudowany program, dlatego nie bdziemy opisywa kadej funkcji. Aby zobaczy zawarto skrzynki z poczt przychodzc (inbox), wcinij i. Wywietl si wiadomoci wraz z dat wysania, autorem i tematem. Podwietl t, ktr chcesz przeczyta, i wcinij enter. Gdy wciniesz r, uruchomi si opcja odpowiadania na list. Po napisaniu odpowiedzi wcinij Ctrl+X, aby j wysa. Ponownie wcinij i, aby powrci do listy wiadomoci. Jeli chcesz skasowa wiadomo, wcinij d. Podwietlona wiadomo zostanie oznaczona jako przeznaczona do usunicia. Pine usuwa takie wiadomoci, gdy koczysz prac z nim. Moesz te zapisywa wiadomoci w folderach. Lista folderw wywietli si po wciniciu l. Na licie wiadomoci wcinij s, aby zapisa wiadomo w innym folderze. Wywietli si pytanie o nazw folderu, w ktrym wiadomo ma by zapisana. Pine ma mnstwo funkcji. Koniecznie przeczytaj jego stron podrcznika. Zawiera ona najwiesze informacje o programie.

13.7.2 elm
elm(1) to kolejny popularny tekstowy klient poczty elektronicznej. Nie jest tak atwy w obsudze, jak pine, ale jest o wiele starszy. Rys 13-3. Gwny ekran elm

Domylnie przechodzisz od razu do skrzynki wiadomoci przychodzcych. Wywietla si lista wiadomoci wraz z ich numerami, dat, autorem i tematem. Uyj klawiszy strzaek, aby podwietli wiadomo i wcinij enter, aby j odczyta. Aby utworzy now wiadomo, wcinij m na gwnym ekranie. Klawisz d oznaczy wiadomo jako do usunicia. Klawisz r uruchomi pisanie odpowiedzi na aktualnie czytany list. Wszystkie te klawisze s wywietlone na dole ekranu wraz ze znakiem zgoszenia. Przed korzystaniem z programu elm przeczytaj jego stron podrcznika.

13.7.3 mutt
Wszystkie klienty poczty s do bani. Ten jest troch mniej do bani. Oryginalny interfejs mutta jest oparty na elmie, z dodanymi funkcjami obecnymi w innych programach tego typu. Efektem jest hybryda mutt. Oto niektre z funkcji mutta:

obsuga kolorw sortowanie wiadomoci wedug wtkw obsuga MIME i PGP/MIME obsuga POP3 i IMAP obsuga wielu formatw skrzynki pocztowej (mbox, MMDF, MH, maildir) due moliwoci dostosowania do wasnych potrzeb

Rys. 13-4. Gwny ekran mutt

Jeli szukasz klienta poczty elektronicznej, w ktrym moesz kontrolowa absolutnie wszystko, mutt jest dla Ciebie. Moesz zmieni wszystkie ustawienia domylne, skrty klawiaturowe, a nawet napisa wasne makra. Przeczytaj stron podrcznika muttrc, ktra opisuje wszystkie opcje konfiguracji. Przejrzyj te doczony do programu przykadowy plik muttrc.

13.7.4 nail
nail(1) to klient poczty obsugiwany z wiersza polece. Jest raczej prymitywny i ciko nazwa jego interfejs uytkownika wygodnym. Przydaje si, kiedy potrzebujesz szybko wysa jaki email, napisa skrypt do masowej wysyki poczty, przetestowa MTA itp. Zwr uwag, e Slackware tworzy dowizania symboliczne do nail jako /usr/bin/mail i /usr/bin/mailx. Wszystkie trzy polecenia wywouj ten sam program. Bardzo czsto mwi si o mail, majc na myli nail. Oto podstawowa skadnia wiersza polece:
% mailx <temat> <adres>

Mailx czyta tre wiadomoci ze standardowego wejcia. Mona wic catn jaki plik do tego polecenia jako argument albo po prostu wpisa tekst i wcisn Ctrl+D po wpisaniu wiadomoci. W taki sposb mona np. przesa do kogo plik ze rdami programu:
% cat randomfunc.c | mail -s "To te rda" asdf@example.net

Wicej moliwoci nail jest opisanych na stronie podrcznika, warto wic j przeczyta.

13.8 Przegldarki
Kiedy ludzie sysz sowo Internet, pierwsz rzecz, o ktrej myl, jest surfowanie po Sieci. Albo Ogldanie stron WWW przy uyciu przegldarki internetowej. Z punktu widzenia przecitnego uytkownika jest to najpowszechniejszy sposb wykorzystania Internetu. W Slackware znajduj si popularne graficzne przegldarki www w grupie XAP, a take przegldarki tekstowe w grupie N. Pokrtce omwimy kilka najpopularniejszych opcji.

13.8.1 lynx
lynx(1) jest tekstow przegldark internetow. Stanowi doskonay sposb na szybkie dotarcie do informacji w Internecie. Czasami grafika po prostu przeszkadza, kiedy dokadnie wiesz, czego szukasz. Aby go uruchomi, po prostu wpisz lynx w wierszu polece:
% lynx

Rys. 13-5. Domylna stron startowa Lynksa.

Moesz poda, jak stron lynx ma otworzy:


% lynx http://www.slackware.com

Na dole ekranu lynx wywietla klawisze polece wraz z ich krtkim opisem. Strzaki w gr i w d

przewijaj dokument. Enter wybiera podwietlony odsyacz, a strzaka w lewo przechodzi do poprzednio odwiedzonej strony. Klawisz d pobiera podwietlony plik na dysk, g wywietla okno Go (Id), w ktrym mona wpisa URL do otwarcia. Lynx ma wiele innych polece. Przeczytaj jego stron podrcznika lub wcinij h, aby wywietli ekran pomocy.

13.8.2 links
Podobnie jak lynx, links jest przegldark dziaajc w trybie tekstowym. Nawiguje si w niej za pomoc klawiatury. Po wciniciu Esc na grze ekranu pojawia si wygodne rozwijane menu. Dziki temu obsuga programu jest prosta i nie trzeba uczy si wszystkich skrtw klawiaturowych. Osoby nieuywajce przegldarek tekstowych na co dzie z pewnoci doceni t funkcj. Links ma lepsz obsug ramek i tabel ni lynx. Rys. 13-6. Links z rozwinitym menu File (Plik)

13.8.3 wget
wget(1) to obsugiwany z wiersza polece program, ktry suy do pobierania plikw z podanego URL. Nie jest to przegldarka stron WWW. Uywa si go raczej do pobrania czci lub caoci jakiej strony internetowej w celu przegldania w trybie offline albo do szybkiego pobierania pojedynczych plikw z serwerw HTTP lub FTP. Oto podstawowa skadnia:
% wget <url>

Moesz przekazywa opcje do wget. W ten sposb pobierzesz ca witryn Slackware:

% wget --recursive http://www.slackware.com

wget utworzy katalog www.slackware.com i umieci w nim pliki, tak jak oryginalna strona. wget moe te pobiera pliki z serwerw FTP. Wystarczy poda URL FTP zamiast HTTP.
% wget ftp://ftp.gnu.org/gnu/wget/wget-1.8.2.tar.gz --12:18:16-- ftp://ftp.gnu.org/gnu/wget/wget-1.8.2.tar.gz => `wget-1.8.2.tar.gz' Resolving ftp.gnu.org... done. Connecting to ftp.gnu.org[199.232.41.7]:21... connected. Logging in as anonymous ... Logged in! ==> SYST ... done. ==> PWD ... done. ==> TYPE I ... done. ==> CWD /gnu/wget ... done. ==> PORT ... done. ==> RETR wget-1.8.2.tar.gz ... done. Length: 1,154,648 (unauthoritative) 100%[==================================>] 1,154,648 209.55K/s ETA 00:00

12:18:23 (209.55KB/s) - `wget-1.8.2.tar.gz' saved [1154648]

To polecenie ma wiele opcji, ktre s szczeglnie przydatne w pisaniu skryptw zwizanych ze stronami (np. robieniem kopii lustrzanych itp.) Przeczytaj stron podrcznika.

13.9 Klienty FTP


FTP to skrt od File Transfer Protocol (protok transferu plikw). Umoliwia on przesyanie plikw midzy komputerami. Istniej serwery i klienty FTP. W tej sekcji omawiamy klienty. Dla ciekawskich: klient to Ty. Serwer to komputer, ktry odpowiada na Twoje danie FTP i pozwala Ci si zalogowa. Moesz pobiera (ang. download) pliki z serwera i wysya je (ang. upload) na serwer. Sam klient nie przyjmuje pocze FTP, moe si tylko podczy do serwerw.

13.9.1 ftp
Aby podczy si do serwera FTP, wpisz polecenie ftp(1), podajc nazw komputera:
% ftp <nazwakomputera> [port]

Jeli na komputerze jest uruchomiony serwer FTP, zapyta on o nazw uytkownika i haso. Moesz zalogowa si jako Ty sam lub jako uytkownik anonimowy anonymous. Anonimowe serwery FTP s szczeglnie czsto wykorzystywane jako archiwa z oprogramowaniem. Aby np. pobra Linuksa Slackware z FTP, musisz uy anonimowego FTP. Po poczeniu bdziesz mia dostp do znaku zgoszenia ftp: ftp>. FTP ma specjalne polecenia, ale s one podobne do standardowych. Oto niektre z nich: Tabela 13-1. Polecenia ftp Polecenie

Cel

ls cd <katalog> bin ascii get <plik> put <plik> hash tick prom mget <maska> mput <maska> quit

wywietl list plikw przejd do katalogu ustaw binarny tryb transferu ustaw tekstowy tryb transferu pobierz plik z serwera wylij plik na serwer przecz wywietlanie znaku # dla kadego przetransferowanego bloku danych przecz wskanik licznika bajtw przecz tryb interaktywny pobiera pobierz plik lub grup plikw, mona uywa symboli wieloznacznych wylij plik lub grup plikw, mona uywa symboli wieloznacznych wyloguj si z serwera FTP

Istniej rwnie polecenia, ktre same si wyjaniaj: chmod, delete (usu), rename (zmie nazw), rmdir. Pena lista polece z ich wyjanieniem wywietla si po wpisaniu help lub ?. Ftp jest prostym programem, ale nie ma typowego interfejsu uytkownika, do jakiego przywyko wiele osb. Wiele opcji ftp(1) jest opisanych na stronie podrcznika.
ftp> ls *.TXT 200 PORT command successful. 150 Opening ASCII mode data connection for /bin/ls. -rw-r--r-1 root 100 18606 Apr 6 2002 BOOTING.TXT -rw-r--r-1 root 100 10518 Jun 13 2002 COPYRIGHT.TXT -rw-r--r-1 root 100 602 Apr 6 2002 CRYPTO_NOTICE.TXT -rw-r--r-1 root 100 32431 Sep 29 02:56 FAQ.TXT -rw-r--r-1 root 100 499784 Mar 3 19:29 FILELIST.TXT -rw-r--r-1 root 100 241099 Mar 3 19:12 PACKAGES.TXT -rw-r--r-1 root 100 12339 Jun 19 2002 README81.TXT -rw-r--r-1 root 100 14826 Jun 17 2002 SPEAKUP_DOCS.TXT -rw-r--r-1 root 100 15434 Jun 17 2002 SPEAK_INSTALL.TXT -rw-r--r-1 root 100 2876 Jun 17 2002 UPGRADE.TXT 226 Transfer complete. ftp> tick Tick counter printing on (10240 bytes/tick increment). ftp> get README81.TXT local: README81.TXT remote: README81.TXT 200 PORT command successful. 150 Opening BINARY mode data connection for README81.TXT (12339 bytes). Bytes transferred: 12339 226 Transfer complete. 12339 bytes received in 0.208 secs (58 Kbytes/sec)

13.9.2 ncftp
ncftp(1) (wymawiane nik-ef-te-pe) to dostpna w Slackware alternatywa dla tradycyjnego klienta ftp. Rwnie dziaa w trybie tekstowym, ale ma wicej funkcji ni ftp, m.in.:

uzupenianie tabulatorem plik z zakadkami szersze moliwoci uywania symboli wieloznacznych histori polece

Domylnie ncftp prbuje zalogowa si anonimowo do podanego serwera. Mona wymusi znak zgoszenia logowania za pomoc opcji -u. Po zalogowaniu polecenia s te same, co w ftp, ale interfejs jest lepszy i przypomina bash.
ncftp /pub/linux/slackware > cd slackware-current/ Please read the file README81.TXT it was last modified on Wed Jun 19 16:24:21 2002 CWD command successful. ncftp ...ware/slackware-current > ls BOOTING.TXT FAQ.TXT CHECKSUMS FILELIST.TXT CHECKSUMS.asc GPG-KEY CHECKSUMS.md5 PACKAGES.TXT CHECKSUMS.md5.asc PRERELEASE_NOTES COPYING README81.TXT COPYRIGHT.TXT SPEEKUP_DOCS.TXT CRYPTO_NOTICE.TXT SPEEK_INSTALL.TXT CURRENT.WARNING Slackware-HOWTO ChangeLog.txt UPGRADE.TXT ncftp ...ware/slackware-current > get README81.TXT README81.TXT:

- 258 days ago bootdisks/ extra/ isolinux/ kernels/ pasture/ rootdisks/ slackware/ source/

12.29 kB

307.07 kB/s

13.10 Rozmowa 13.10.1 wall


Polecenie wall(1) to szybki sposb, aby przekaza jak wiadomo wszystkim zalogowanym uytkownikom. Uywa si go tak:
% wall [plik]

Zawarto pliku [plik] zostanie wywietlona na terminalach wszystkich aktualnie zalogowanych uytkownikw. Jeli nie podasz pliku, wall bdzie czyta ze standardowego wejcia, moesz wic po prostu wpisa tekst i wcisn Ctrl+D. Wall nie ma zbyt wielu funkcji. Nadaje si co najwyej do oznajmienia uytkownikom, e zamierzasz przeprowadzi jakie wane prace administracyjne albo zrestartowa system, aby mieli czas na zapisanie wynikw swojej pracy i wylogowanie si :).

13.10.2 talk
Polecenie talk(1) (ang. rozmawia) umoliwia rozmow dwch uytkownikw. Dzieli ono poziomo ekran na dwie czci. Aby rozpocz rozmow, wpisz:
% talk <uytkownik> [nazwa_tty]

Rys. 13-7. Dwaj uytkownicy podczas sesji talk

Jeli podasz tylko uytkownika, talk zakada, e dasz rozmowy z uytkownikiem lokalnym i tylko takich uytkownikw poszukuje. Nazwa terminala (tty) jest wymagana, jeli chcesz rozmawia na konkretnym terminalu z kim, kto jest zalogowany kilkakrotnie. Informacje potrzebne dla talk moesz uzyska za pomoc polecenia w(1). Talk umoliwia te rozmow ze uytkownikiem na zdalnym komputerze. Jako nazw uytkownika podaje si wwczas adres email. Talk sprbuje skontaktowa si ze zdalnym uytkownikiem na tej maszynie. Talk ma ograniczone funkcje. Umoliwia rozmow tylko dwch ludzi i dziaa w trybie half-duplex.

13.10.3 ytalk
Program ytalk(1) to zgodny wstecz zastpnik talka. Jest dostpny w Slackware jako polecenie ytalk. Skadnia jest podobna, ale rni si paroma szczegami:
% ytalk <uytkownik>[#nazwa_tty]

Rys. 13-8. Dwaj uytkownicy podczas sesji ytalk

Nazwa uytkownika i terminal s takie same, jak w talk, ale trzeba je poczy znaczkiem #. Ytalk ma wiele zalet:

obsuguje wicej ni 2 rozmwcw ma menu opcji, ktre mona wywoa klawiszem Esc mona wyj z powoki, nie zakaczajc sesji i o wiele wicej...

Jeli jeste administratorem serwera, upewnij si, e port ntalk jest wczony w /etc/inetd.conf. Ytalk potrzebuje go do dziaania.

Rozdzia 14. Bezpieczestwo


Bezpieczestwo kadego systemu jest niezwykle istotne. Pomaga chroni wane dane, powstrzymuje ludzi przed przeprowadzam atakw z Twojego komputera. W tym rozdziale s opisane podstawowe czynnoci zmierzajce do zabezpieczenia Linuksa Slackware przed wamywaczami domorosymi (script kiddies), naprawd gronymi (crackerami) i przed wciekymi chomikami. Pamitaj, e to tylko pocztek zabezpieczania systemu. Bezpieczestwo to proces, a nie stan.

14.1 Wyczanie usug


Pierwszym krokiem po zainstalowaniu Slackware powinno by wyczenie wszystkich niepotrzebnych usug. Kada z nich stanowi potencjalne zagroenie dla bezpieczestwa systemu, dlatego naley uruchamia tylko niezbdne. Usugi s uruchamiane z dwch miejsc: demona inetd i skryptw inicjalizujcych.

14.1.1 Usugi uruchamiane przez inetd


Wiele demonw w Slackware jest uruchamianych przez inetd. Sam inetd te jest demonem, ktry nasuchuje na wszystkich portach uywanych przez usugi skonfigurowane tak, aby byy uruchamiane wanie przez niego. Inetd uruchamia instancj odpowiedniego demona za kad prb poczenia sieciowego. Demony uruchamiane przez inetd wycza si, zakomentowujc waciwe wiersze w / etc/inetd.conf. Po otworzeniu tego pliku w ulubionym edytorze tekstw (np. vi) zobaczysz wpisy podobne do tego:
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd

Moesz wyczy t usug (i wszystkie inne, ktrych nie potrzebujesz), zakomentowujc je (tj. dodajc krzyyk # na pocztku wiersza). Zakomentowany wpis wyglda tak:
#telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd

Po zrestartowaniu inetd ta usuga bdzie wyczona. Inetd restartuje si poleceniem:


# kill -HUP $(cat /var/run/inetd.pid)

14.1.2 Usugi uruchamiane ze skryptw inicjalizujcych


Pozostae usugi uruchamiane podczas startu komputera s wywoywane ze skryptw inicjalizujcych w katalogu /etc/rc.d. Mona je wyczy na dwa sposoby: albo zdejmujc prawo wykonania danego skryptu, albo zakomentowa odpowiednie wiersze w skrypcie. Na przykad, demon SSH jest uruchamiany przez wasny skrypt, /etc/rc.d/rc.sshd. Mona go wyczy tak:
# chmod -x /etc/rc.d/rc.sshd

Jeli jaka usuga nie ma odrbnego skryptu, trzeba j wyczy, zakomentowujc odpowiednie wiersze wewntrz skryptu. Na przykad, demon portmap jest uruchamiany przez nastpujce wpisy w / etc/rc.d/rc.inet2:
# This must be running in order to mount NFS volumes. # Start the RPC portmapper: if [ -x /sbin/rpc.portmap ]; then echo "Starting RPC portmapper: /sbin/rpc.portmap" /sbin/rpc.portmap fi # Done starting the RPC portmapper.

Mona go wyczy, dodajc symbole # na pocztku wierszy, ktre ich jeszcze nie maj:

# This must be running in order to mount NFS volumes. # Start the RPC portmapper: #if [ -x /sbin/rpc.portmap ]; then # echo "Starting RPC portmapper: /sbin/rpc.portmap" # /sbin/rpc.portmap #fi # Done starting the RPC portmapper.

Zmiany zostan wprowadzone w ycie po zrestartowaniu komputera lub po wyjciu z poziomu pracy 3 lub 4 i powrocie do niego. Aby to zrobi, wpisz w konsoli (po przejciu do poziomu pracy 1 bdziesz si musia znowu zalogowa):
# telinit 1 # telinit 3

14.2 Kontrola dostpu do komputera 14.2.1 iptables


iptables to program do konfiguracji filtrowania pakietw w jdrach Linuksa 2.4 i wyszych. Jdro 2.4 (dokadniej 2.4.5) zostao wprowadzone po raz pierwszy (jako opcja) w Slackware 8.0, a jako domylne w 8.1. Ta sekcja opisuje tylko jego podstawy. Wicej szczegw jest na stronie http://www.netfilter.org. Polecenia mona wpisa do skryptu /etc/rc.d/rc.firewall, ktry musi mie ustawione prawo wykonania, aby zasady filtrowania byy wprowadzane w ycie podczas startu systemu. Pamitaj, e niewaciwe polecenia iptables mog cakowicie odci Ci od komputera. O ile nie jeste w 100% pewny swoich umiejtnoci, zawsze upewnij si, e masz bezporedni dostp do swojej maszyny. Pierwsz rzecz, jak robi wikszo ludzi, jest ustawienie domylnej polityki acuchw przychodzcych na DROP (blokowanie):
# iptables -P INPUT DROP # iptables -P FORWARD DROP

Po zablokowaniu wszelkiego ruchu przychodzcego mona zacz odblokowywa niektre jego rodzaje. Na pocztek trzeba zezwoli na ruch dla sesji, ktre zostay ju otwarte:
# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Aby nie blokowa dziaania aplikacji, ktre korzystaj z adresu ptli zwrotnej, warto doda:
# iptables -A INPUT -s 127.0.0.0/8 -d 127.0.0.0/8 -i lo -j ACCEPT

Ta zasada zezwala na kadego rodzaju ruch do i z adresw 127.0.0.1/8 (127.0.0.1-127.255.255.255) na urzdzeniu interfejsu ptli zwrotnej (loopback lo). Podczas tworzenia zasad naley by tak dokadnym, jak to moliwe, aby by pewnym, e nie zezwalamy na jakie niewaciwe akcje. Jednak zasady, ktre zezwalaj na zbyt mao, oznaczaj wicej zasad i wicej pisania. Nastpnie trzeba zezwoli na dostp do serwerw uruchomionych na komputerze. Jeli np. chcesz

prowadzi serwer WWW, wpisz co podobnego do:


# iptables -A INPUT -p tcp --dport 80 -i ppp0 -j ACCEPT

To zezwala na dostp z kadego komputera do portu 80 na Twojej maszynie za porednictwem interfejsu ppp0. Moesz ograniczy dostp do serwera tylko dla niektrych komputerw. To zezwala na dostp do usugi WWW z adresu 64.57.102.34:
# iptables -A INPUT -p tcp -s 64.57.102.34 --dport 80 -i ppp0 -j ACCEPT

Zezwalanie na pakiety ICMP jest przydatne do celw diagnostycznych. Umoliwia to zasada: is:
# iptables -A INPUT -p icmp -j ACCEPT

Wiele osb uruchamia tzw. maskarad, czyli translacj adresw sieciowych (Network Address Translation NAT) na komputerze penicym rol bramki, aby inne maszyny w sieci miay za jej porednictwem dostp do Internetu. Oto odpowiednia zasada:
# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

Musisz te wczy przekazywanie IP (IP forwarding). Tymczasowo robi si to poleceniem:


# echo 1 > /proc/sys/net/ipv4/ip_forward

Aby przekazywanie IP byo wczone na stae (tzn. wczane po restarcie), musisz zmodyfikowa /etc/rc.d/rc.inet2 za pomoc swojego ulubionego edytora, zmieniajc wiersz:
IPV4_FORWARD=0

... na taki:
IPV4_FORWARD=1

Wicej informacji o NAT znajduje si w NAT HOWTO (http://www.netfilter.org/documentation/HOWTO/NAT_HOWTO.txt).

14.2.2 tcpwrappers
Program tcpwrappers kontroluje dostp do demonw na poziomie aplikacji, a nie IP. Stanowi on dodatkowy poziom zabezpiecze, kiedy kontrola dostpu na poziomie IP (np. Netfilter) nie dziaa poprawnie (bo np. podczas kompilacji jdra zapomniae wczy obsug iptables tcpwrappers dalej bdzie pomaga chroni Twj system). Dostp do usug chronionych przez tcpwrappers kontroluj pliki /etc/hosts.allow i /etc/hosts.deny.

Wikszo osb ma tylko jeden wpis w /etc/hosts.deny, ktry domylnie zabrania dostpu do wszystkich demonw:
ALL : ALL

Po jego wpisaniu moesz skoncentrowa si na przyznawaniu dostpu dla poszczeglnych komputerw, domen lub zakresw IP. Robi si to w pliku /etc/hosts.allow, ktry ma taki sam format. Najczciej akceptuje si wszystkie poczenia z lokalnego komputera:
ALL : 127.0.0.1

Dostp do demona sshd z adresw 192.168.0.0/24 mona umoliwi na jeden z dwch sposobw:
sshd : 192.168.0.0/24 sshd : 192.168.0.

Mona rwnie umoliwia dostp tylko dla komputerw w danej domenie. Oto odpowiednia zasada (pamitaj, e jej dziaanie zaley od tego, czy odwrotny wpis DNS czcego si komputera jest zaufany, nie zalecam uywania jej na komputerach podczonych do Internetu):
sshd : .slackware.com

14.3 Aktualizowanie systemu 14.3.1 lista mailingowa slackware-security


Kiedykolwiek pojawia si problem z bezpieczestwem, ktry dotyczy Slackware (np. luka w oprogramowaniu doczonym do Slackware, z wyjtkiem programw w /extra i /pasture), do wszystkich subskrybentw listy slackware-security@slackware.com jest wysyany email. Takie emaile zawieraj informacje, skd pobra zaktualizowane wersje oprogramowania lub jak rozwiza problem w inny sposb (o ile taki istnieje). Sposb zapisania si na listy mailingowe Slackware jest opisany w sekcji 2.2.2.

14.3.2 Katalog /patches


Kiedykolwiek s udostpniane zaktualizowane pakiety dla danej wersji Slackware (w przypadku oficjalnych wersji dystrybucji najczciej tylko usuwajce luk w bezpieczestwie), s one umieszczane w katalogu /patches. Pena cieka do poprawionych pakietw (tzw. at, ang. patches) zaley od serwera lustrzanego, ale ma form /cieka/do/slackware-x.x/patches/. Przed ich zainstalowaniem naley zweryfikowa sum kontroln md5sum pakietu. Program md5sum(1) jest uruchamiany z wiersza polece. Tworzy on niepowtarzalny numer matematycznej funkcji mieszajcej (ang. hash). Zmiana nawet tylko jednego bitu w pliku spowoduje wygenerowanie

innej wartoci md5sum.


% md5sum pakiet-<wersja>-<architektura>-<podwersja>.tgz 6341417aa1c025448b53073a1f1d287d pakiet-<wersja>-<architektura>-<podwersja>.tgz

Porwnaj t sum z odpowiednim wpisem w pliku CHECKSUMS.md5 w gwnym katalogu slackware-$WERSJA (dla at znajduje si on w /patches) lub w emailu wysanym na list slackware-security. Jeli masz plik z wartociami md5sum, moesz poda go do programu md5sum jako argument za porednictwem opcji -c.
# md5sum -c CHECKSUMS.md5 ./ANNOUNCE.10_0: OK ./BOOTING.TXT: OK ./COPYING: OK ./COPYRIGHT.TXT: OK ./CRYPTO_NOTICE.TXT: OK ./ChangeLog.txt: OK ./FAQ.TXT: FAILED

Jak widzisz, pliki, ktre md5sum uzna za poprawne, s oznaczone jako OK (w porzdku). Pliki, ktre s niepoprawne, s oznaczone jako FAILED (bdne). (Tak, wiem, e to bya obelga dla Twojej inteligencji. Jak ty ze mn wytrzymujesz?)

Rozdzia 15. Archiwizacja plikw


15.1 gzip
gzip(1) to program kompresujcy GNU. Kompresuje on pojedyncze pliki. Podstawowa skadnia to:
% gzip nazwapliku

Plik wynikowy bdzie mia nazw nazwapliku.gz i najczciej mniejszy rozmiar ni plik wejciowy. Zauwa, e nazwapliku.gz zastpi nazwapliku. To znaczy, e nazwapliku przestanie istnie, mimo e kopia skompresowana gzipem bdzie dostpna. Zwyke pliki tekstowe kompresuj si w duym stopniu. Obrazy jpeg, pliki mp3 itp. nie bd si dobrze kompresowa, poniewa same w sobie s ju skompresowane. Podstawowa skadnia stanowi kompromis midzy rozmiarem pliku a czasem kompresji. Tak mona osign maksymalny stopie kompresji:
% gzip -9 nazwapliku

Czas kompresji bdzie duszy, ale wynikowy plik bdzie moliwie najmniejszy. Mniejsze wartoci spowoduj, e plik bdzie si kompresowa szybciej, ale nie w tak duym stopniu. Skompresowane pliki mona zdekompresowa na dwa sposoby, ktre tak naprawd wykorzystuj jeden program. Gzip potrafi zdekompresowa kady plik, ktrego rozszerzenie rozpozna. Znane rozszerzenia to: .gz, -gz, .z, -z, .Z, -Z. Pierwsza metoda to wywoanie gunzip(1) z nazw pliku jako

argumentem:
% gunzip nazwapliku.gz

Pozostawi to zdekompresowany plik wejciowy w biecym katalogu, a rozszerzenie .gz zostanie usunite. Gunzip jest czci gzip i dziaa identycznie z gzip d. Dlatego gzip czsto wymawia si jak gunzip, bo tak fajniej brzmi. :^)

15.2 bzip2
Program bzip2(1) to alternatywny program kompresujcy w Slackware. Uywa innego algorytmu kompresji ni gzip, co ma wady i zalety. Gwn zalet bzip2 jest rozmiar pliku wynikowego. Bzip2 prawie zawsze kompresuje lepiej ni gzip. Niekiedy rnica moe by bardzo dua. Szczeglnie korzystaj na tym osoby z wolnymi czami modemowymi. Pamitaj, e kiedy pobierasz oprogramowanie z publicznego serwera ftp, netykieta radzi, aby pobiera wersje bz2, a nie gz. Dziki temu serwer hostowany (utrzymywany) przez dobrych ludzi jest mniej obciony. Wad bzip2 jest wiksze zuycie CPU ni w przypadku gzip. Bzipowanie pliku z reguy trwa duej i zajmuje wicej zasobw procesora ni gzipowanie. Podczas wybierania programu do kompresji rozwa, co jest waniejsze: szybko czy wielko pliku wynikowego. Bzip2 ma prawie identyczn skadni jak gzip, wic nie bdziemy si nad ni rozwodzi. Podobnie jak gunzip, bunzip2 jest identyczne z bzip2 -d. Podstawow rnic jest inne rozszerzenie - . bz2.
% bzip2 nazwapliku % bunzip2 nazwapliku.bz2 % bzip2 -9 nazwapliku

15.3 tar
tar(1) to program GNU do archiwizacji na tamach. czy on pliki i katalogi w jeden duy plik. Dziki temu mona skompresowa cae drzewo katalogu, co jest niemoliwe przy uyciu samego bzip2 lub gzip. Tar ma wiele opcji, ktre s opisane na stronie podrcznika. W tej sekcji opisujemy tylko podstawowe zastosowania. Najczciej uywa si tar do zdekompresowania i zdearchiwizowania pakietu pobranego ze strony WWW lub serwera ftp. Wikszo takich plikw ma rozszerzenie .tar.gz. Potocznie nazywa si to tarball. To znaczy, e pewna liczba plikw zostaa zarchiwizowana przy uyciu tar, a nastpnie skompresowana przez gzip. Czasem plik ma rozszerzenie .tar.Z, co oznacza to samo, ale spotyka si w starszych systemach uniksowych. Moesz te spotka pliki z rozszerzeniem .tar.bz2. W ten sposb s dystrybuowane rda jdra Linuksa, poniewa plik do pobrania ma mniejszy rozmiar. Nietrudno si domyli, e s to pliki zarchiwizowane przez tar i skompresowane przez bzip2. Dostp do plikw wewntrz archiwum jest moliwy dziki uyciu polecenia tar z odpowiednimi opcjami. Dearchiwizacja tarballa odbywa si z wykorzystaniem opcji -z, ktra mwi, e archiwum ma

by najpierw zdekompresowane gzipem. Oto najczstszy sposb dekompresji tarballa:


% tar -xvzf filename.tar.gz

Co znacz te wszystkie opcje? Wana jest opcja -x oznaczajca rozpakowanie, poniewa mwi tarowi, co dokadnie zrobi z plikiem wejciowym. W tym przypadku rozdzieli z powrotem na pliki i katalogi, z ktrych si oryginalnie skada. -v oznacza tryb szczegowy (tzw. gadatliwy ang. verbose). Wywietla list wszystkich dearchiwizowanych plikw. Mona jej nie uywa, po prostu informacje na ekranie bd nudniejsze. Mona te uy opcji -vv, ktra wywietla jeszcze wicej szczegw na temat kadego pliku. Opcja -z nakazuje najpierw przepuci nazwapliku.tar.gz przez gunzip. Wreszcie opcja -f mwi tarowi, e nastpnym cigiem w wierszu polece jest nazwa pliku, na ktrym ma operowa. To samo polecenie mona wykona na inne sposoby. W starszych systemach, w ktrych nie ma w miar nowego GNU tar, pisze si:
% gunzip nazwapliku.tar.gz | tar -xvf -

Takie polecenie zdekompresuje plik i wyle wyjcie do tar. Gzip wypisuje wynik dziaania na standardowe wyjcie, jeli mu si tak kae, tak te bdzie w tym przypadku. Potokowanie przesya wyjcie do tar celem dearchiwizacji. Opcja - nakazuje operowa na standardowym wejciu. Zdearchiwizuje to strumie danych otrzymany od gzip i zapisze go na dysku. Mona te zapisa polecenie, nie uywajc mylnika:
% tar xvzf nazwapliku.tar.gz

Jeli archiwum jest skompresowane przez bzip2, mona uy tar w ten sam sposb, jak z archiwum gzip. Zamiast -x podaje si -j:
% tar -xvjf nazwapliku.tar.bz2

Naley pamita, e tar umieszcza zdearchiwizowane pliki w biecym katalogu. Jeli np. masz archiwum w /tmp, a chcesz je zdekompresowa do katalogu domowego, masz kilka moliwoci. Po pierwsze, moesz przenie archiwum do katalogu domowego i uruchomi tar. Po drugie, moesz poda ciek do archiwum w wierszu polece. Po trzecie, za pomoc opcji -C moesz rozpakowa archiwum do konkretnego katalogu.
% cd $HOME % cp /tmp/filename.tar.gz . % tar -xvzf filename.tar.gz % cd $HOME % tar -xvzf /tmp/filename.tar.gz % cd / % tar -xvzf /tmp/filename.tar.gz -C $HOME

Wszystkie trzy sposoby dziaaj tak samo. Archiwum zostaje rozpakowane do katalogu domowego, a

oryginalny niezdekompresowany plik pozostanie nietknity. Po co komu rozpakowywanie archiww, jeli nie moe ich tworzy? To rwnie potrafi tar. W wikszoci przypadkw wystarczy zastpi -x przez -c.
% tar -cvzf nazwapliku.tar.gz .

Opcja -c mwi, aby tar utworzyo archiwum, -z powoduje, e zostanie ono skompresowane przez gzip, nazwapliku.tar.gz to nazwa tworzonego archiwum. Opcja -f nie zawsze jest konieczna, lepiej jej jednak zawsze uywa. Bez niej tar pisze na standardowe wyjcie, czego z reguy uywa si przy potokowaniu do innego programu:
% tar -cv nazwapliku.tar . | gpg --encrypt

Takie polecenie tworzy nieskompresowane archiwum biecego katalogu i przepuszcza wyjcie przez gpg, ktre z kolei szyfruje archiwum i kompresuje je. Dziki temu utworzony tarball jest praktycznie niemoliwy do odczytania dla nikogo, kto nie zna tajnego klucza.

15.4 zip
Do obsugi archiww zip, czsto spotykanych w systemach Windows, istniej w Linuksie dwa programy: program do kompresji o nazwie zip(1) oraz do dekompresji unzip(1).
% zip foo *

To utworzy plik foo.zip, ktry bdzie zawiera wszystkie pliki z biecego katalogu. Program dodaje rozszerzenie .zip automatycznie, wic nie trzeba dodawa go do nazwy pliku. Mona te przej rekursywnie przez biecy katalog, zipujc wszystkie jego podkatalogi:
% zip -r foo *

Dekompresja jest bardzo atwa:


% unzip foo.zip

Rozpakuje to wszystkie pliki i katalogi z archiwum foo.zip. Programy do obsugi zip maj wiele zaawansowanych opcji, ktre su do tworzenia samorozpakowujcych si archiww, pomijania plikw, kontrolowania rozmiaru archiwum, wywietlania, co si stanie po rozpakowaniu itp. Przeczytaj strony podrcznika zip i unzip, aby dowiedzie si wicej.

Rozdzia 16. Edytor vi


vi(1) to standardowy uniksowy program do edycji tekstu. Opanowanie jego obsugi nie jest tak

niezbdne, jak niegdy, ale cay czas si opaca. Istnieje wiele odmian (tzw. klonw) tego programu: vi, elvis, vile i vim. Jedna z tych wersji jest dostpna w praktycznie kadym systemie uniksowym oraz w Linuksie. Kada z nich ma podstawowy zestaw funkcji i polece, dziki czemu nauczenie si jednej uatwia poznanie innych. Istnieje wiele innych edytorw w wiecie Uniksa i Linuksa, dlatego wiele osb nie uywa ju vi. Cay czas jednak pozostaje on najbardziej uniwersalnym edytorem tekstu w systemach uniksowych i uniksopodobnych. Dziki opanowaniu vi zawsze, siedzc przed maszyn uniksow, bdziesz czu si pewnie, majc do dyspozycji wspaniay edytor. Vi ma wiele funkcji, m.in.: podwietlanie skadni, formatowanie kodu, rozbudowany mechanizm wyszukiwania i zastpowania, makra itd. Te funkcje stanowi o szczeglnej przydatnoci dla programistw, twrcw stron WWW itp. Administratorzy systemw ceni sobie automatyzm i integracj z powok. W Linuksie Slackware domylnym edytorem vi jest elvis. Po zainstalowaniu odpowiednich pakietw s rwnie dostpne inne wersje: vim i gvim. Gvim to graficzna wersja vim, ktra posiada paski narzdzi, odczalne menu i okna dialogowe.

16.1 Uruchamianie vi
vi mona uruchomi z wiersza polece na kilka sposobw. Oto najprostszy:
% vi

Rys. 16-1. Sesja vi

To polecenie uruchamia vi z pustym buforem. W tym momencie widzisz prawie pusty ekran. Teraz vi jest w tzw. trybie polece i oczekuje, a co wykonasz. Wicej na temat trybw vi jest w sekcji 16.2. Aby zakoczy dziaanie vi, wpisz:

:q

Jeli w pliku nie dokonae adnych zmian, vi si zakoczy. Jeli zmodyfikowae plik, vi wywietli ostrzeenie o zmianach i powie, jak je zignorowa. Aby zignorowa zmiany, naley doda wykrzyknik po q:
:q!

Wykrzyknik zwykle oznacza wymuszenie jakiej akcji. Ta i inne kombinacje klawiszy s omwione pniej. Mona uruchomi vi z istniejcym plikiem jako argumentem. Np. plik /etc/resolv.conf otwiera si tak:
% vi /etc/resolv.conf

Mona te uruchomi vi na konkretnym wierszu pliku. Jest to szczeglnie przydatne dla programistw, jeli komunikat o bdzie programu zawiera numer wiersza, na ktrym program si wysypa. Aby np. otworzy vi na wierszu 47 pliku /usr/src/linux/init/main.c, wpisz:
% vi +47 /usr/src/linux/init/main.c

Vi otworzy podany plik i umieci kursor w danym wierszu. Jeli podasz numer wiersza wikszy ni ilo wierszy pliku, kursor zostanie umieszczony w ostatnim wierszu. Jest to uyteczne dla programistw, poniewa mog przej bezporednio do miejsca wystpienia bdu i nie musz przeszukiwa caego pliku.

16.2 Tryby
Vi ma rne tryby dziaania, ktre stosuje si do rnych zada. Po uruchomieniu vi znajduje si w trybie polece. Moesz tu wydawa rne polecenia manipulujce tekstem, porusza si po pliku, zapisywa, wychodzi z programu, zmienia tryby. Edycji tekstu dokonujesz w trybie wstawiania. Midzy trybami przeczasz si za pomoc kombinacji klawiszy omwionych poniej.

16.2.1 Tryb polece


Na pocztku vi znajduje si w trybie polece. Nie moesz teraz wpisywa ani modyfikowa tekstu. Moesz jednak nim manipulowa, wyszukiwa, wychodzi z programu, zapisywa plik, otwiera nowe pliki itd. Omwimy teraz tylko podstawy trybu wstawiania. Poszczeglne polecenia s opisane w sekcji 16.7. Najczciej uywanym poleceniem jest przejcie do trybu wstawiania. Suy do tego klawisz i. Kursor zmienia ksztat, a na dole ekranu wywietla si --INSERT-- (niektre klony vi nie wywietlaj trybu). Teraz wszystkie klawisze, ktre wciniesz, s wprowadzane do biecego bufora i wywietlane na ekranie. Aby wrci do trybu polece, wcinij Esc.

W trybie polece moesz porusza si po pliku. W niektrych systemach poruszasz si za pomoc strzaek, w innych uywasz tradycyjnych klawiszy hjkl. Oto lista zastosowa tych klawiszy: h j k l przejd o jeden znak w lewo przejd o jeden znak w d przejd o jeden znak w gr przejd o jeden znak w prawo

Wcinicie klawisza spowoduje odpowiednie przejcie kursora. Pniej opiszemy, jak czy te klawisze z numerami, aby porusza si efektywniej. Wiele polece wydawanych w tym trybie rozpoczyna si od dwukropka. Na przykad, wczeniej omwione wychodzenie z edytora - :q. Dwukropek oznacza po prostu polecenie, a q oznacza wyjcie. Inne polecenia to opcjonalny numer, a po nim litera. Nie wstawia si przed nimi dwukropka, su gwnie do manipulacji tekstem. Na przykad, do usunicia jednego wiersza z pliku suy dd. Usunie to wiersz, w ktrym znajduje si kursor. Polecenie 4dd usuwa wiersz z kursorem i trzy kolejne. Oglnie rzecz biorc, numer oznacza, ile razy vi ma wykona dan akcj. Mona czy numer z klawiszami przesuwania, aby porusza si o wicej ni jeden znak. Na przykad, 10k przesuwa kursor o 10 wierszy w gr. Trybu polece uywa si te do wycinania, wklejania i wstawiania tekstu, wczytywania innych plikw do biecego bufora. Tekst kopiuje si klawiszem y (y oznacza yank, dosownie wyszarpywa). Biecy wiersz kopiuje si przez yy, mona to poprzedzi numerem okrelajcym liczb wierszy do skopiowania. Po przejciu do miejsca, w ktre ma by skopiowany tekst, wcinij p. Tekst zostanie wklejony pod biecym wierszem. Tekst mona wyci poleceniem dd, a wycity tekst wstawi p. Wczytywanie tekstu z innego pliku jest proste. Wpisz :r, a po spacji nazw pliku, ktry chcesz wstawi. Zawarto tego pliku zostanie wstawiona do biecego bufora pod wierszem, w ktrym znajduje si kursor. Bardziej rozbudowane klony vi maj funkcj uzupeniania tabulatorem, podobnie jak powoka. Ostatnie opisane zastosowanie trybu polece to wyszukiwanie. Mona albo po prostu wyszukiwa tekst, albo stosowa zaawansowane mechanizmy wyszukiwania i zastpowania, wykorzystujce wyraenia regularne. Wyraenia regularne wychodz poza zakres tej ksiki, wic skupimy si na prostym wyszukiwaniu. Wyszukiwanie uruchamia si, wciskajc / i wpisujc tekst do wyszukania. Vi przeszukuje plik od kursora w d, zatrzymujc si na pierwszym znalezionym tekcie. Niedokadne dopasowania rwnie spowoduj zatrzymanie wyszukiwania. Np. wyszukiwanie piw bdzie zatrzymywao si na piwnica, piwo itd., poniewa wszystkie te sowa pasuj do piw na pocztku wyrazu. Po znalezieniu pierwszego pasujcego tekstu moesz kontynuowa wyszukiwanie, wciskajc / i enter. Moesz te szuka w gr pliku, uywajc ? zamiast /. Aby np. przeszuka plik od kursora w gr, szukajc piw, wpisz ?piw.

16.2.2 Tryb wstawiania


Wpisywania i zastpowania tekstu dokonuje si w trybie wstawiania. Jak napisalimy wczeniej, przechodzi si do niego z trybu polece klawiszem i. Wwczas wpisywany tekst jest umieszczany w biecym buforze. Po wciniciu Esc vi wraca do trybu polece. Tekst mona zastpowa na kilka sposobw. Wcinicie r w trybie polece umoliwia zastpienie znaku pod kursorem. Wystarczy wpisa inny znak, a zastpi on ten znajdujcy si pod kursorem. Zaraz potem vi powrci do trybu polece. Po wciniciu R moesz zmieni wicej znakw. Aby wyj z trybu zastpowania, wcinij Esc, dziki czemu wrcisz do trybu polece. Jest jeszcze jeden sposb na przechodzenie midzy trybem wstawiania i zastpowania. Bdc w trybie polece, wcinij klawisz Insert. Vi przejdzie w tryb wstawiania. Gdy jeste w trybie wstawiania, klawisz Insert suy jako przecznik midzy wstawianiem a zastpowaniem. Wcinicie go wcza tryb zastpowania, wcinicie ponowne tryb wstawiania.

16.3 Otwieranie plikw


Pliki w vi mona otworzy, podajc je jako argument w wierszu polece powoki albo bezporednio w trybie polece edytora. Aby np. otworzy /etc/lilo.conf:
:e /etc/lilo.conf

Jeli dokonae zmian w biecym buforze i nie zapisae ich, vi bdzie marudzi. Moesz otworzy plik bez zapisywania biecego bufora, wpisujc :e!, spacj i nazw pliku. Generalnie ostrzeenia vi mona zignorowa, piszc wykrzyknik po poleceniu. Jeli chcesz wczyta ponownie otwarty plik, wpisz e!. Jest to szczeglnie przydatne, jeli co namieszae i chcesz otworzy plik na nowo. Niektre klony vi (np. vim) umoliwiaj wiele otwartych buforw naraz. Aby np. otworzy plik 09vi.sgml w moim katalogu domowym, podczas gdy inny plik jest otwarty, wpisabym:
:split ~/09-vi.sgml

Nowy plik jest wywietlony na grnej poowie ekranu, stary na dolnej. Do pracy z podzielonym ekranem suy wiele polece, wiele z nich przypomina te uywane w edytorze Emacs. Ich opis znajdziesz na stronie podrcznika vi. Wiele klonw nie obsuguje dzielenia ekranu, wic ta funkcja moe by niedostpna.

16.4 Zapisywanie plikw


Pliki w vi mona zapisa na kilka sposobw. Aby zapisa biecy bufor do pliku costam, wpisz:
:w costam

Po pierwszym zapisaniu pliku ponownych zapisw dokonujesz poleceniem :w. Wszelkie zmiany zostan

zachowane w pliku. Po zapisaniu wracasz do trybu polece. Jeli chcesz zapisa plik i wyj z vi (bardzo czsto tak jest), wpisz :wq. To powoduje, e vi zapisuje plik, koczy dziaanie i wraca do powoki. Czasami prbujesz zapisa plik, ktry ma prawa tylko do odczytu. Aby zapisa do takiego pliku, dodaj wykrzyknik do polecenia zapisu:
:w!

Bywaj te przypadki, kiedy zapis do pliku jest niemoliwy (np. edytujesz plik, ktrego wacicielem jest inny uytkownik). Wwczas vi powie Ci, e nie moe zapisa pliku. Jeli naprawd chcesz go zmodyfikowa, musisz robi to jako root, albo (najlepiej) waciciel tego pliku.

16.5 Wychodzenie z vi
Najczciej wychodzi si z vi poleceniem :wq, ktre zapisuje biecy bufor na dysku przed zamkniciem programu. Mona te wyj bez zapisywania, wpisujc :q, lub (powszechnie stosowane) : q!. Tego ostatniego uywa si, jeli zmodyfikowae plik, ale nie chcesz zachowa zmian. Czasami komputer z uruchomionym vi lub sam program ulegaj awarii. Jednak zarwno elvis, jak i vim maj funkcje minimalizujce uszkodzenie otwartych buforw. Oba edytory zapisuj otwarte bufory w tymczasowych plikach. Taki plik zwykle ma nazw identyczn z oryginaem, ale ma kropk na pocztku. Dziki temu plik jest ukryty. Plik tymczasowy jest usuwany, gdy edytor zostaje normalnie zamknity. To znaczy, e tymczasowa kopia bdzie istnie w razie awarii. Gdy bdziesz chcia wrci do edytowania pliku, wywietli si pytanie o to, jakie dziaanie podj. W wikszoci przypadkw jest moliwe odzyskanie wikszoci niezapisanej pracy. Elvis ponadto wyle Ci email (o dziwo, z Graceland :)) z wiadomoci, e istnieje kopia zapasowa.

16.6 Konfiguracja vi
Kady klon vi mona konfigurowa na kilka sposobw. Aby dostosowa vi do wasnych potrzeb, mona wpisa odpowiednie polecenia, gdy edytor jest uruchomiony w trybie polece. W zalenoci od wersji, moesz uruchomi funkcje pomagajce w programowaniu (podwietlanie skadni, automatyczne wcicia itp.), stworzy makra automatyzujce pewne czynnoci, wczy zastpowanie danych cigw innym tekstem i o wiele wicej. Wikszo tych polece mona wpisa w pliku konfiguracyjnym w katalogu domowym. Elvis wymaga pliku .exrc, a vim - .vimrc. Prawie wszystkie polecenia wpisywane w trybie polece mona umieci w pliku konfiguracyjnym. S to informacje o konfiguracji, podstawienia tekstu, makra itp. Wszystkie te opcje i rnice midzy poszczeglnymi wersjami programu to do zoone zagadnienie. Wicej informacji znajdziesz na stronie podrcznika i stronie WWW wybranego edytora. Niektre edytory (np. vim) maj wbudowan pomoc, ktr moesz uruchomi poleceniem :help lub podobnym. Warto rwnie przeczyta ksik wydawnictwa OReilly Learning the vi Editor autorstwa Lindy Lamb i Arnolda Robbinsa (od tum.: wydanie polskie Edytor vi, wydawnictwo Helion, 2001).

Wiele programw linuksowych otwiera pliki tekstowe wanie w vi. Na przykad, edytowanie plikw crontab domylnie uruchamia je w vi. Jeli nie podoba Ci si vi i chcesz uywa innego edytora jako domylnego, musisz ustawi zmienn rodowiskow VISUAL na waciwy edytor. Informacje o ustawianiu zmiennych rodowiskowych znajduj si w sekcji Zmienne rodowiskowe w rozdziale 8. Aby upewni si, e wybrany edytor bdzie domylny przy kadym logowaniu, dodaj ustawienie VISUAL w pliku .bash_profile lub .bashrc.

16.7 Klawisze vi
Ta sekcja to krtka lista waniejszych polece vi. Niektre zostay opisane wczeniej, wikszo jest nowa. Tabela 16-1. Poruszanie si po pliku Dziaanie lewo, d, prawa, gra na koniec wiersza na pocztek wiersza na koniec pliku na pocztek pliku do wiersza 47 Tabela 16-2. Edycja Dziaanie usunicie wiersza usunicie 5 wierszy zastpienie znaku usunicie znaku usunicie 10 znakw cofnicie ostatniej operacji poczenie biecego i nastpnego wiersza zastpienie starego tekstu nowym w caym pliku Tabela 16-3 Wyszukiwanie Dziaanie wyszukiwanie cigu asdf wyszukiwanie cigu asdf wstecz powtrzenie ostatniego wyszukiwania do przodu powtrzenie ostatniego wyszukiwania do tyu powtrzenie ostatniego wyszukiwania w tym samym kierunku klawisz h, j, k, l $ ^ G :1 :47

klawisz dd 5dd r x 10x u J %sstarynowyg

klawisz /asdf ?asdf / ? n

powtrzenie ostatniego wyszukiwania w przeciwnym kierunku Tabela 16-4. Zapisywanie i wychodzenie Dziaanie wyjcie z programu wyjcie bez zapisywania zapisanie i wyjcie zapisanie bez wychodzenia ponowne wczytanie otwartego pliku zapisanie bufora do pliku asdf otwarcie pliku hejaz wczytanie pliku asdf do bufora wczytanie wyjcia ls do bufora

klawisz :q :q! :wq :w :e! :w asdf :e hejaz :r asdf :r !ls

Rozdzia 17. Emacs


Vi (oraz jego klony) to bez wtpienia edytor zajmujcy pierwsze miejsce w systemach uniksowych. Emacs zajmuje drugie miejsce. W przeciwiestwie do vi, nie uywa si w nim trybw. Do wydawania polece uywa si kombinacji klawiszy z Control i Alt, podobnie jak w procesorach tekstw i innych aplikacjach. Naley jednak podkreli, e kombinacje w emacsie rni si od standardowych. Wikszo aplikacji uywa np. Ctrl+C/X/V do kopiowania/wycinania/wklejania. Emacs uywa innych kombinacji i tak naprawd innego mechanizmu do realizacji tych funkcji. Vi jest (doskonaym) edytorem, ale tylko edytorem. Emacs natomiast nadaje si do praktycznie wszystkiego. Wikszo Emacsa napisano w jzyku Lisp. To jzyk dajcy bardzo wiele moliwoci. Jego szczegln cech jest fakt, e programy napisane w tym jzyku staj si automatycznie swoimi wasnymi kompilatorami. Dziki temu uytkownicy mog dowolnie rozszerza funkcjonalno Emacsa, a wrcz pisa nowe programy w Emacsie. Dziki temu Emacs nie jest tylko edytorem. Istnieje wiele dodatkowych rozszerze dla Emacsa (wiele doczonych do rde programu), ktre dodaj wszelkiego rodzaju funkcje. Wikszo z nich dotyczy edycji tekstu, co oczywicie jest podstawowym przeznaczeniem Emacsa, ale nie ograniczaj si do tego. Istniej np. arkusze kalkulacyjne, bazy danych, gry, klienty poczty i grup dyskusyjnych (najwaniejszy z nich to Gnus) itp. S dostpne dwie wersje Emacsa: GNU Emacs (doczony do Slackware) oraz XEmacs. Ten drugi to NIE jest wersja Emacsa dziaajca w X. Obie wersje dziaaj zarwno w konsoli, jak i w X. Projekt XEmacs rozpoczto w celu uporzdkowania kodu Emacsa. Obecnie trwaj aktywne prace nad rozwojem obu odmian, a zespoy deweloperw w znacznym stopniu wspdziaaj ze sob. Na poziomie tego rozdziau nie jest istotne, ktrej wersji uywasz, poniewa z punktu widzenia zwykego uytkownika rnice midzy nimi s nieistotne.

17.1 Uruchamianie Emacsa


Emacsa uruchamia si z wiersza polece, wpisujc po prostu emacs. Jeli jeste w X, Emacs uruchomi si (zwykle) we wasnym oknie X, z paskiem menu na grze, udostpniajcym najwaniejsze funkcje. Po uruchomieniu Emacs wywietla wiadomo powitaln, a po paru sekundach przechodzi do bufora scratch (wicej w sekcji 17.2).

Mona te uruchomi Emacsa z zadanym plikiem:


% emacs /etc/resolv.conf

Emacs po uruchomieniu zaaduje wybrany plik, pomijajc wiadomo powitaln.

17.1.1 Klawisze polece


Jak wspomnielimy powyej, Emacs uywa kombinacji z klawiszami Control i Alt do wydawania polece. Konwencja ich zapisywania to C-litera i M-litera. Tak wic C-x oznacza Control+x, a M-x oznacza Alt+x. (Litery M uywa si zamiast A, poniewa kiedy ten klawisz nazywa si Meta, a nie Alt. Klawisza Meta obecnie nie spotyka si ju na klawiaturach, a w Emacsie jego funkcje przej Alt.) Wiele polece Emacsa skada si z kombinacji i sekwencji klawiszy. Na przykad, C-x C-c (czyli Control+x, a nastpnie Control+c) koczy prac z Emacsem. C-x C-s zapisuje biecy plik. Pamitaj, e C-x C-b to NIE to samo, co C-x b. To pierwsze oznacza kolejno kombinacje Control+x i Control+b, to drugie oznacza Control+x i samo b.

17.2 emacs bufory


Jednym z podstawowych poj w Emacsie jest bufor. Kady otwarty plik jest adowany do odrbnego bufora. Emacs ma te inne, specjalne bufory, ktre nie zawieraj pliku, ale s uywane do innych rzeczy. Nazwy tych buforw specjalnych zwykle zaczynaj si i kocz gwiazdk. Na przykad, bufor wywietlany podczas uruchomienia Emacsa nazywa si *scratch* (bufor szkicu). Moesz w tym buforze normalnie wpisywa tekst, ale nie zostanie on zapisany przy wychodzeniu z edytora. Kolejnym wanym buforem specjalnym jest tzw. minibufor. Zawiera on tylko jeden wiersz i jest zawsze widoczny na dole ekranu. To ostatni wiersz w oknie Emacsa, pod paskiem statusu biecego bufora. Emacs wywietla w minibuforze informacje dla uytkownika, wpisuje si tam te informacje wymaganie przez niektre polecenia. Na przykad, kiedy chcesz otworzy plik, Emacs poprosi o wpisanie jego nazwy w minibuforze. Midzy buforami przecza si kombinacj C-x b. Wywietla to prob o wpisanie nazwy bufora (nazwa bufora to z reguy nazwa edytowanego pliku) i proponuje wybr domylny, czyli bufor, w ktrym bye przed przeczeniem si lub utworzeniem nowego. Wcinij Enter, aby przej do tego domylnego bufora. Jeli chcesz przeczy si do bufora innego ni domylny, wpisz jego nazw. Moesz uy funkcji uzupeniania tabulatorem: wpisz pierwsze kilka znakw nazwy bufora i wcinij Tab. Emacs uzupeni nazw bufora. Uzupenianie tabulatorem dziaa w Emacsie wszdzie tam, gdzie jego uycie ma sens. List otwartych buforw wywietla C-x C-b. Rozdziela to ekran na dwie czci. W grnej jest zawarto biecego bufora, w dolnej otwiera si nowy bufor o nazwie *Buffer List*. Zawiera on list wszystkich buforw, ich rozmiarw, trybw i plikw, ktre s odwiedzane (w terminologii Emacsa) przez bufory. Podzia ekranu usuwa si przez C-x 1. Uwaga: W X lista buforw jest rwnie dostpna pod pozycj Bufor na pasku menu.

17.3 Emacs tryby


Kady bufor w Emacsie ma tzw. tryb (ang. mode). Tryby w Emacsie rni si od tych w vi. Tryb oznacza, w jakim rodzaju bufora jeste. Na przykad, dla zwykych plikw tekstowych jest tryb tekstowy (text-mode), dla edycji programw w C jest tryb C (C-mode), dla skryptw powoki sh-mode, dla plikw LaTeX latex-mode, dla edycji wiadomoci poczty elektronicznej i grup dyskusyjnych mail-mode itd. W kadym trybie s dostpne szczeglne funkcje i moliwoci dostosowania, odpowiednie dla rodzaju edytowanego pliku. Mona nawet w trybach redefiniowa klawisze i kombinacje. Na przykad, w textmode klawisz Tab przechodzi po prostu do nastpnego znaku tabulacji. Natomiast w wielu trybach programowania Tab tworzy wcicie biecego wiersza na gboko danego bloku, w ktrym znajduje si wiersz. Te tryby, tj. text-mode, sh-mode, latex-mode, mail-mode itp. to tryby gwne (ang. major modes). Kady bufor ma jeden tryb gwny. Bufor moe te mie jeden lub wicej trybw dodatkowych (minor modes). Tryby dodatkowe dodaj funkcje uyteczne przy wykonywaniu niektrych zada. Na przykad, po wciniciu Insert przechodzisz w tryb nadpisywania, ktrego potrzebujesz. Istnieje te tryb autowypeniania (auto-fill-mode), przydatny w poczeniu z text-mode i latex-mode. Powoduje on, e kady wiersz jest automatycznie zawijany po przekroczeniu okrelonej liczby znakw. Bez tego trybu

trzeba wciska M-q, aby wypeni akapit. (Moesz te tego uy, aby ponownie sformatowa akapit, w ktrym wpisae jaki tekst, powodujc zmian ukadu.)

17.3.1 Otwieranie plikw


Aby otworzy plik w Emacsie, wpisz:
C-x C-f

Emacs zapyta o nazw pliku, wypeniajc za Ciebie cz cieki domylnej (zwykle ~/). Po wpisaniu nazwy (moesz uy uzupeniania tabulatorem) i wciniciu Enter Emacs otworzy plik w nowym buforze i wywietli jego zawarto na ekranie. Uwaga: Emacs automatycznie utworzy nowy bufor, nie zastpi zawartoci biecego. Aby w Emacsie utworzy nowy plik, nie moesz po prostu zacz pisa. Najpierw musisz utworzy nowy bufor i poda nazw pliku. Wystarczy wpisa C-x C-f, tak jak przy otwieraniu istniejcego pliku. Emacs zauway, e plik nie istnieje, utworzy nowy bufor, a w minibuforze wywietli komunikat New file (Nowy plik). Jeli wpiszesz C-x C-f i podasz nazw katalogu zamiast pliku, Emacs utworzy nowy bufor z list wszystkich plikw w tym katalogu. Moesz przej kursorem do poszukiwanego pliku i wcisn Enter, aby go otworzy. (Moesz tu wykona wiele innych dziaa, np. usun plik, przenie go lub zmieni jego nazw. Emacs jest teraz w trybie katalogw (dired-mode), czyli dziaa jak meneder plikw.) Jeli po wpisaniu C-x C-f zmienie zdanie, moesz anulowa swoje dziaanie poleceniem C-g. C-g dziaa prawie zawsze, kiedy chcesz anulowa jakie dziaanie lub polecenie, ktre rozpocze, ale si rozmylie.

17.4 Podstawy edycji


Moesz porusza si po otwartym pliku za pomoc kursora. Klawisze kursora oraz PgUp (strona w gr) i PgDn (strona w d) tak wanie dziaaj. Home i End przesuwaj kursor odpowiednio na pocztek i koniec wiersza (w starszych wersjach przechodziy na pocztek lub koniec bufora). S te kombinacje z klawiszami Control i Meta (Alt), ktre przesuwaj kursor. Dziki temu, e nie musisz odrywa palcw, aby przej do innej czci klawiatury, o wiele szybciej si z nich korzysta, gdy si do nich przywyknie. W tabeli 17-1 przedstawiamy najwaniejsze kombinacje. Tabela 17-1. Najwaniejsze polecenia edycji w Emacsie Polecenie Wynik C-b C-f C-n C-p C-a C-e przejcie o jeden znak wstecz przejcie o jeden znak naprzd przejcie o jeden wiersz w d przejcie o jeden wiersz w gr przejcie na pocztek wiersza przejcie na koniec wiersza

M-b M-f M-} M-{ M-a M-e C-d M-d C-v M-v M-< M-> C-_

przejcie o jedno sowo wstecz przejcie o jedno sowo naprzd przejcie o jeden akapit naprzd przejcie o jeden akapit wstecz przejcie o jedno zdanie wstecz przejcie o jedno zdanie naprzd usunicie znaku pod kursorem usunicie znakw od kursora do koca biecego sowa przesunicie o jeden ekran w d (tak jak PgDn) przesunicie o jeden ekran w gr (tak jak PgUp) przejcie na pocztek bufora przejcie na koniec bufora cofnicie ostatniej zmiany (mona je powtarza); pamitaj, e musisz tak naprawd wcisn Shift + Control + mylnik usunicie znakw od kursora do koca wiersza wyszukiwanie naprzd wyszukiwanie wstecz

C-k C-s C-r

Wiele kombinacji z Meta dziaa tak, jak kombinacje z Control, ale dziaaj na wikszych fragmentach: C-f przesuwa kursor o jeden znak naprzd, M-f przesuwa o jedno sowo naprzd itd. Pamitaj te, e M-< i M-> wymagaj wpisania odpowiednio Shift + Alt + przecinka i Shift+Alt+kropki, poniewa znaki < i > s dostpne po wciniciu Shift+przecinek i Shift+kropka (o ile nie masz ukadu klawiatury innego ni standardowy US). Zwr take uwag, e C-k usuwa (zabija, jak powszechnie si mwi) tekst od kursora do koca wiersza, ale nie usuwa samego wiersza (czyli nie usuwa znaku nowego wiersza). Cay wiersz jest usuwany tylko wtedy, kiedy po kursorze nie byo tekstu. Innymi sowy, aby usun cay wiersz, trzeba umieci kursor na jego pocztku i wcisn C-k dwukrotnie: raz, aby usun tekst, drugi raz, aby usun sam wiersz.

17.5 Zapisywanie plikw


Aby zapisa plik, wpisz:
C-x C-s

Emacs nie zapyta o nazw pliku, po prostu zapisze bufor do tego pliku, ktry zaadowa. Jeli chcesz zapisa tekst w innym pliku, wpisz:
C-x C-w

Kiedy zapisujesz plik po raz pierwszy w sesji, Emacs zapisuje star wersj w pliku kopii zapasowej, o takiej samej nazwie jak orygina, z dodan tyld. Jeli np. edytujesz plik piwo.txt, Emacs utworzy kopi zapasow o nazwie piwo.txt~. Ten plik jest kopi wanie otwartego pliku. Podczas pracy Emacs tworzy ponadto regularnie kopie w pliku o nazwie z krzyykami: #piwo.txt#. Zostanie on usunity po zapisaniu pliku przez C-x C-s. Po zakoczeniu edycji pliku moesz zabi jego bufor za pomoc:
C-x k

Emacs zapyta, ktry bufor chcesz zabi, proponujc domylnie biecy moesz go wybra, wciskajc Enter. Jeli nie zapisae jeszcze pliku, wywietli si pytanie, czy na pewno zabi bufor.

17.5.1 Wychodzenie z Emacsa


Po zakoczeniu pracy z Emacsem wpisz:
C-x C-c

Koczy to prac edytora. Jeli istniay jakie niezapisane pliki, Emacs bdzie si po kolei pyta, czy je zapisa. Jeli odpowiesz nie na ktry z nich, Emacs zada ostateczne pytanie o potwierdzenie i zakoczy dziaanie.

Rozdzia 18. Zarzdzanie pakietami w Slackware


Pakiet z oprogramowaniem to grupa poczonych programw gotowych do zainstalowania. Kiedy pobierasz kod rdowy, musisz go skonfigurowa, skompilowa i zainstalowa rcznie. W pakiecie ju za Ciebie t prac wykonano. Wystarczy go tylko zainstalowa. Inn zalet pakietw jest ich atwo usuwania lub aktualizacji. Slackware zawiera programy do obsugi wszystkich zada zwizanych z zarzdzaniem pakietami. Instalacja, usuwanie, aktualizacja, tworzenie i sprawdzanie zawartoci pakietw jest proste. Istnieje mit, e od kiedy Red Hat wprowadzi swj program do zarzdzania pakietami RedHat Package Manager, w Slackware nie ma podobnego programu. Oczywicie to bzdura. Linux Slackware mia program do zarzdzania pakietami jeszcze przed pojawieniem si Red Hata. Ten program, pkgtool, nie jest, co prawda, tak rozbudowany i powszechny jak rpm (albo deb), ale wraz z towarzyszcymi programami rwnie doskonale nadaje si do instalacji pakietw. Tak naprawd, problemem pkgtool jest fakt, e nie dokonuje on adnego sprawdzania zalenoci. Wiele osb nalecych do spoecznoci linuksowej uwaa, e meneder pakietw musi z zaoenia sprawdza zalenoci. Nie jest to oczywicie prawda, bo Slackware tego nie robi. Nie to, e pakiety Slackware nie maj zalenoci. Po prostu pkgtool ich nie sprawdza. Sprawdzanie zalenoci pozostawiono administratorowi systemu, zgodnie z duchem Slackware.

18.1 Omwienie formatu pakietw


Zanim nauczysz si uywa narzdzi, powiniene pozna format pakietw Slackware. Taki pakiet to po prostu archiwum tar, skompresowane przez gzip. Pakiety tworzy si tak, aby rozpakowywa je w katalogu gwnym. Oto przykadowy, fikcyjny program i zawarto jego pakietu:
./ usr/ usr/bin/ usr/bin/makehejaz usr/doc/ usr/doc/makehejaz-1.0/ usr/doc/makehejaz-1.0/COPYING usr/doc/makehejaz-1.0/README usr/man/ usr/man/man1 usr/man/man1/makehejaz.1.gz install/ install/doinst.sh

Aby zainstalowa pakiet, system obsugi pakietw rozpakuje go w katalogu gwnym. Do bazy danych pakietw zostan dodane opisy zawartoci pakietu, aby mona go byo pniej zaktualizowa lub usun. Zwr uwag na podkatalog install/. Jest to specjalny katalog, w ktrym znajduje si skrypt poinstalacyjny o nazwie doinst.sh. Jeli system obsugi pakietw go znajdzie, wykona go po zainstalowaniu pakietu. W pakiecie mog znajdowa si te inne skrypty. Jest to omwione w sekcji 18.3.2.

18.2 Programy do zarzdzania pakietami


Do zarzdzania pakietami s przeznaczone cztery zasadnicze narzdzia, suce do instalowania, usuwania i aktualizacji.

18.2.1 pkgtool
pkgtool(8) to wykorzystujcy menu program, ktry umoliwia instalowanie i usuwanie pakietw. Oto jego menu gwne: Rys. 18-1 Menu gwne pkgtool

Witamy w narzdziu do zarzdzania pakietami Slackware. Ktr opcj chcesz wybra? Current (biecy) Other (inny) Floppy (dyskietka) Remove (usu) View (Przegldaj) Setup (Konfiguruj) Exit (Wyjd) Zainstaluj pakiety z biecego katalogu Zainstaluj pakiety z innego katalogu Zainstaluj pakiety z dyskietek Usu zainstalowane obecnie pakiety Przegldaj list plikw zawartych w pakiecie Wybierz skrypty instalacyjne Slackware, ktre maj by uruchomione ponownie Wyjd z pkgtool <OK> <Anuluj>

Mona wybra instalacj z biecego katalogu, innego katalogu lub dyskietek. Wystarczy wybra metod, a pkgtool przejrzy lokalizacj w poszukiwaniu pakietw. Moesz te przejrze list zainstalowanych pakietw: Rys. 18-2. Tryb przegldania listy pkgtool

Aby usun pakiety, wybierz opcj Remove. Wywietli si lista zainstalowanych pakietw z polami wyboru. Zaznacza te, ktre chcesz usun i wybierz OK, a pkgtool je usunie. Niektrzy wol pkgtool od programw uruchamianych z wiersza polece. Takie programy, z drugiej strony, maj o wiele wicej opcji. Ponadto aktualizowa pakiety mona tylko za pomoc programw z wiersza polece.

18.2.2 installpkg
Nowe pakiety instaluje si poleceniem installpkg(8). Oto skadnia:
# installpkg option package_name

Installpkg ma trzy opcje, mona uy tylko jednej naraz. Tabela 18-1. Opcje installpkg Opcja -m -warn Efekt Przeprowadza operacj makepkg na biecym katalogu Pokazuje, co staoby si po zainstalowaniu podanego pakietu. Jest to przydatne szczeglnie w systemach produkcyjnych, aby przed instalacj zobaczy, co dokadnie by si stao.

-r

Rekursywnie instaluje wszystkie pakiety w biecym katalogu i jego podkatalogach. Mona uywa symboli wieloznacznych jako maski wyszukiwania przy rekursywnej instalacji.

Jeli przed installpkg ustawisz zmienn rodowiskow ROOT, zostanie ona uyta jako katalog gwny. Przydaje si to do konfigurowania nowych napdw tak, aby by na nich katalog gwny. Zwykle montuje si je w /mnt albo innym katalogu ni /. Wpis dotyczcy zainstalowanego pakietu znajduje si w bazie danych w /var/log/packages. Taki wpis to w istocie zwyky plik tekstowy, jeden dla kadego pakietu. Jeli w pakiecie znajdowa si skrypt poinstalacyjny, jest zapisywany do /var/log/scripts. Moesz podawa kilka pakietw lub uy symboli wieloznacznych. Pamitaj, e installpkg nie ostrzega przed nadpisaniem zainstalowanego pakietu. Po prostu zastpi stare pliki nowymi. Jeli chcesz mie pewno, e pliki starego pakietu zostay bezpiecznie usunite, uyj upgradepkg.

18.2.3 removepkg
Do usuwania zainstalowanych pakietw z systemu suy removepkg(8). Oto skadnia:
# removepkg option package_name

Removepkg ma cztery opcje, mona uy tylko jednej naraz. Tabela 18-2. Opcje removepkg Opcja -copy Efekt Pakiet jest kopiowany do katalogu z zachowanymi pakietami. Tworzy to drzewo oryginalnego pakietu bez usuwania go. Zapisuje pliki tymczasowe tworzone podczas deinstalacji. Uyteczne w praktyce wycznie do celw debugowania. Pakiet jest usuwany, ale jednoczenie kopiowany do katalogu z zachowanymi pakietami. Pokazuje, co staoby si po usuniciu pakietu.

-keep

-preserve -warn

Jeli przed removepkg ustawisz zmienn rodowiskow ROOT, zostanie ona uyta jako katalog gwny. Przydaje si to do konfigurowania nowych napdw tak, aby by na nich katalog gwny. Zwykle montuje si je w /mnt albo innym katalogu ni /. Removepkg przeglda inne zainstalowane pakiety i usuwa tylko pliki nalece wycznie do danego pakietu. Skanuje rwnie skrypt poinstalacyjny i usuwa dowizania symboliczne przez niego utworzone. Podczas procesu deinstalacji jest wywietlany raport o postpie. Po usuniciu wpis jest przesuwany z

bazy danych do /var/log/removed_packages, a skrypt poinstalacyjny do /var/log/removed_scripts. Podobnie jak przy installpkg, moesz poda kilka pakietw lub uy symboli wieloznacznych.

18.2.4 upgradepkg
upgradepkg(8) aktualizuje zainstalowany pakiet Slackware. Oto skadnia:
# upgradepkg package_name albo # upgradepkg old_package_name%new_package_name

Upgradepkg dziaa tak, e najpierw instaluje nowy pakiet, a potem usuwa stary, tak aby nie pozostay w systemie adne pliki nalece do starego. Jeli nazwa aktualizowanego pakietu si zmienia, uyj skadni ze znakiem procenta do podania starego pakietu (tego zainstalowanego) i nowego (do ktrego aktualizujesz). Jeli przed upgradepkg ustawisz zmienn rodowiskow ROOT, zostanie ona uyta jako katalog gwny. Przydaje si to do konfigurowania nowych napdw tak, aby by na nich katalog gwny. Zwykle montuje si je w /mnt albo innym katalogu ni /. Upgradepkg moe nie dziaa poprawnie. Zawsze wykonaj kopi zapasow plikw konfiguracyjnych przed jego uyciem. Jeli zostan usunite albo nadpisane, kopie s potrzebne do naprawy. Podobnie jak przy installpkg i removepkg, moesz poda kilka pakietw lub uy symboli wieloznacznych.

18.2..5 rpm2tgz/rpm2targz
Powszechnie wykorzystywanym systemem zarzdzania pakietami jest obecnie Red Hat Package Manager (RPM). Wielu producentw oprogramowania oferuje swoje produkty w formacie RPM. Nie jest to rodzimy format Slackware, dlatego uwaamy, e nie mona na nim polega. Niektre programy jednak (nawet rda) s dostpne jedynie w tym formacie. Istnieje program konwertujcy pakiety RPM do slackware'owego formatu .tgz. Moesz potem rozpakowa taki pakiet (np. za pomoc explodepkg) do tymczasowego katalogu i przejrze jego zawarto. Program rpm2tgz tworzy pakiet Slackware z rozszerzeniem .tgz, rpm2targz tworzy archiwum z rozszerzeniem .tar.gz.

18.3 Tworzenie pakietw


Tworzenie pakietw Slackware moe by jednoczenie atwe i trudne. Nie ma konkretnej metody tworzenia pakietu. Jedyne wymagania s takie, e musi on by w formacie .tgz, a ewentualny skrypt

poinstalacyjny musi by w /install/doinst.sh. Jeli chcesz tworzy pakiety dla swojego systemu lub sieci, ktr administrujesz, przejrzyj skrypty do tworzenia pakietw w drzewie rde Slackware. My uywamy kilku metod do tworzenia pakietw.

18.3.1 explodepkg
explodepkg(8) wykonuje te dziaania, co installpkg w celu rozpakowania pakietu, ale go nie instaluje naprawd i nie tworzy wpisu w bazie danych. Po prostu rozpakowuje zawarto do biecego katalogu. Po przejrzeniu drzewa rde Slackware zobaczysz, jak uywamy tego polecenia dla pakietw szkieletowych (ang. framework). Zawieraj one szkielet ukadu kocowego pakietu. S tam potrzebne nazwy plikw (pliki maj zerow dugo), prawa dostpu i wasnoci. Skrypt tworzcy catuje zawarto pakietu z katalogu rdowego do katalogu tworzenia.

18.3.2 makepkg
makepkg(8) pakuje zawarto biecego katalogu i tworzy pakiet Slackware. Polecenie wyszukuje w drzewie dowizania symboliczne i dodaje do skryptu poinstalacyjnego blok, ktry bdzie je tworzy podczas instalacji. Ostrzega te o istnieniu plikw o zerowej dugoci w drzewie pakietu. To polecenie uruchamia si z reguy po utworzeniu drzewa pakietu.

18.3.3 Skrypty SlackBuild


Z koniecznoci pakiety Slackware tworzy si rnymi metodami. Programici nie tworz wszystkich pakietw tak, aby kompiloway si one w ten sam sposb. Wiele z nich skompilowano z takimi opcjami, ktre nie s zawarte w normalnych slackware'owych pakietach. Jeli potrzebujesz jakiej funkcji, bdziesz musia skompilowa pakiet samodzielnie. Na szczcie w kodzie rdowym wielu pakietw znajduj si skrypty SlackBuild. Co to s skrypty SlackBuild? S to wykonywalne skrypty powoki, ktre uruchamia si jako root, aby skonfigurowa, skompilowa i utworzy pakiety Slackware. Moesz dowolnie modyfikowa te skrypty w katalogu ze rdami i uruchamia je, aby utworzy wasne wersje domylnych pakietw Slackware.

18.4 Tworzenie znacznikw i plikw znacznikw (dla programu setup)


Program instalacyjny Slackware (setup) zajmuje si instalowaniem oprogramowania w systemie. Istniej pliki mwice setupowi, ktre pakiety musz by zainstalowane, ktre s opcjonalne, a ktre s wybrane jako domylne. Plik znacznikw (ang. tagfile) znajduje si w katalogu pierwszej grupy programw i nazywa si tagfile. Zawiera on list pakietw w danym zestawie dyskw i ich status. Oto moliwe statusy: Tabela 18-3. Opcje statusu tagfile Opcja Znaczenie

ADD SKP REC OPT Format pliku jest prosty:


nazwa_pakiety: status

pakiet jest niezbdny do prawidowego dziaania systemu pakiet zostanie pominity automatycznie pakiet nie jest niezbdny, ale zalecany pakiet jest opcjonalny

Jeden pakiet w wierszu. Oryginalne pliki znacznikw dla kadej grupy programw s zapisywane jako tagfile.org. Jeli le utworzysz wasny, moesz przywrci orygina. Wielu administratorw tworzy wasne pliki znacznikw, uruchamia instalator i wybiera opcj full. Setup odczytuje te pliki i przeprowadza instalacj zgodnie z ich zawartoci. Jeli uye REC lub OPT, wywietla si okno dialogowe z pytaniem, czy zainstalowa dany pakiet. Dlatego zaleca si uywanie tylko ADD i SKP przy pisaniu plikw dla automatycznej instalacji. Upewnij si, e zapisae pliki znacznikw w tej samej lokalizacji co oryginay. Jeli masz wasne pliki, moesz te poda wasn ciek do nich.

Rozdzia 19. ZipSlack


19.1 Co to jest ZipSlack?
ZipSlack to specjalna wersja Linuksa Slackware. Jest to zainstalowany Slackware przeznaczony do uruchamiania z partycji DOS lub Windows. Jest to instalacja minimalna, nie ma w niej wszystkich programw dostpnych w Slackware.. Nazwa ZipSlack pochodzi od formy dystrybucji jednego duego pliku .ZIP. Uytkownicy Windows i DOS najprawdopodobniej znaj ten format. S to skompresowane archiwa. Archiwum ZipSlack zawiera wszystko, co potrzeba, aby mie dziaajcy Slackware. Naley podkreli, e ZipSlack rni si od typowej instalacji Slackware. Jakkolwiek dziaaj tak samo i maj te same programy, rni si docelow grup odbiorcw i funkcjami. Poniej omawiamy waniejsze wady i zalety ZipSlack. Jeszcze jedno: Zawsze przeczytaj dokumentacj w aktualnym katalogu ZipSlack. Znajduj si tam najwiesze informacje dotyczce instalacji, uruchamiania i uytkowania tych produktw.

19.1.1 Zalety

Nie wymaga repartycjonowania dysku twardego. Stanowi doskonay sposb zapoznania si z Linuksem Slackware bez potrzeby przebijania si przez proces instalacji.

19.1.2 Wady

Uywa systemu plikw DOS, ktry jest wolniejszy ni rodzimy system plikw Linuksa. Nie dziaa z Windows NT.

19.2 Skd wzi ZipSlack


Zdobycie ZipSlack jest proste. Jeli kupie oficjalny komplet Slackware CD, ju go masz. Znajd CD z katalogiem zipslack i w go do napdu CD-ROM. Z reguy jest to dysk 3 lub 4, ale etykieta dysku, ktry czsto si zmienia, jest waniejsza ni ta dokumentacja. Jeli chcesz pobra ZipSlack z Internetu, sprawd nasz stron Get Slack, gdzie znajduj si aktualne informacje na temat pobierania: http://www.slackware.com/getslack/ ZipSlack stanowi cz kadej wersji Slackware. Wybierz odpowiedni wersj i przejd do odpowiedniego katalogu FTP. Katalog najnowsz wersj znajduje si pod adresem: ftp://ftp.slackware.com/pub/slackware/slackware/ ZipSlack jest w podkatalogu /zipslack. ZipSlack ma posta jednego duego pliku .ZIP lub blokw o wielkoci jednej dyskietki. Bloki s w katalogu /zipslack/split. Nie pobieraj wycznie plikw .ZIP. Pobierz te dokumentacj i pliki obrazw startowych.

19.2.1 Instalacja
Po pobraniu odpowiednich komponentw rozpakuj plik .ZIP (lub pliki, jeli pobrae bloki). Uywaj 32-bitowego programu do rozpakowywania zip. Rozmiary i nazwy plikw w archiwum nie s obsugiwane przez programy 16-bitowe. 32-bitowe programy to na przykad WinZip i PKZIP dla Windows. ZipSlack zaprojektowano tak, aby rozpakowa go do katalogu gwnego napdu (np. C: lub D:). Utworzony zostanie tam katalog \LINUX, ktry zawiera instalacj Slackware. W tym katalogu znajduj si rwnie pliki niezbdne do uruchomienia systemu. Katalog \LINUX pojawia si po rozpakowaniu na wybranym napdzie (od tej chwili zakadamy, e bdzie to C:).

19.3 Uruchamianie ZipSlack


ZipSlack mona uruchomi na kilka sposobw. Najczciej uywa si doczonego pliku LINUX.BAT, aby uruchomi Slackware spod DOSa (lub spod trybu DOS w Windows 9x). Przed uruchomieniem plik trzeba zmodyfikowa, dopasowujc go do danego komputera. Otwrz plik C:\LINUX\LINUX.BAT w wybranym edytorze. Na grze jest obszerny komentarz objaniajcy, co i jak zmieni (a take co zrobi, jeli uruchamiasz komputer z zewntrznego napdu

Zip). Nie przejmuj si, jeli nie rozumiesz ustawienia root=. Jest tam kilka przykadw, wybierz jeden i przetestuj. Jeli nie zadziaa, wyedytuj plik znowu, zakomentowujc wiersz, ktry odkomentowae i wybierajc inny. Wiersze odkomentowuje si, usuwajc rem z ich pocztku. Po odkomentowaniu zapisz plik, wyjd z edytora i przejd w tryb DOS. Okno DOS wewntrz Windows 9x NIE dziaa. Wpisz C:\LINUX\LINUX.BAT, aby uruchomi Slackware. Jeli wszystko zadziaa, zobaczysz znak zgoszenia logowania. Zaloguj si jako root, z pustym hasem. Za haso roota, a take konto zwykego uytkownika. W tym momencie moesz przeczyta inne rozdziay ksiki, aby dowiedzie si wicej o dziaaniu i uytkowaniu systemu. Jeli metoda z LINUX.BAT nie zadziaaa, przeczytaj plik C:\LINUX\README.1ST, w ktrym znajduj si informacje na temat innych metod uruchamiania.

Sowniczek
Bezpieczna powoka (Secure shell, ssh) Metoda logowania do zdalnego komputera wykorzystujca szyfrowanie (i dlatego bezpieczna). Istnieje wiele programw bezpiecznej powoki. Potrzebne s zarwno klient, jak i serwer) Biblioteka (Library) Zbir funkcji, ktre mog wspdzieli rne programy. Brama (Gateway) Zwana te bramk. Komputer, przez ktry dane w sieci s transferowane do innej sieci Bufor ramek (Framebuffer) Rodzaj urzdzenia graficznego. W Linuksie najczciej oznacza programowy bufor ramek, ktry udostpnia standardowy interfejs bufora ramek programom, zachowujc ukryte przed nimi specyficzne sterowniki urzdze. Ta warstwa abstrakcji uwalnia programy z koniecznoci porozumiewania si z rnymi sterownikami urzdze. Darkstar Domylna nazwa komputera w Slackware. Komputer bdzie nazywa si darkstar, jeli nie podasz innej nazwy. Jeden z komputerw Patricka Volkerdinga, na ktrym pracuje; nazwa pochodzi od piosenki Dark Star zespou The Grateful Dead Demon (Daemon) Program stworzony tak, aby dziaa w tle i, bez interwencji uytkownika, wykonywa konkretne dziaania (zwykle wiadczy usugi). DNS

Usuga nazw domen (Domain Name Service). System, w ktrym komputerom znajdujcym si w sieci s nadawane nazwy, ktre tumaczy si na adresy numeryczne. Dowizanie symboliczne (Symbolic link) Zwane te dowizaniem mikkim. Jest to specjalny plik, ktry wskazuje na lokalizacj innego pliku. Dowiza symbolicznych uywa si do tego, aby unikn duplikacji danych, gdy jeden plik jest potrzebny w kilku miejscach. Dynamiczny program adujcy (Dynamic loader) Programy skompilowane w Linuksie zwykle uywaj fragmentw kodu (funkcji), ktre znajduj si w zewntrznych bibliotekach. Przy uruchomieniu programw te biblioteki musz zosta znalezione a wymagane funkcje zaadowane do pamici. Tym zajmuje si wanie dynamiczny program adujcy. Dysk gwny (Root disk) Dysk (zwykle stay), na ktrym jest zapisany katalog gwny. Dyskietka dodatkowa (Supplemental disk) Dyskietka uywana podczas instalacji Slackware, ktra nie zawiera jdra (znajdujcego si na dyskietce rozruchowej) ani gwnego systemu plikw (na dysku gwnym), ale dodatkowe pliki, takie jak moduy sieciowe lub obsug PCMCIA. Dyskietka rozruchowa (Boot disk) Zwana te czsto dyskietk startow, zawiera system operacyjny (w tym przypadku jdro Linuksa), z ktrej mona uruchomi komputer. Epoka (Epoch) Okres w historii. W Uniksie Epoka (The Epoch) zaczyna si 1 stycznia 1970, o godzinie 00:00:00 UTC. Unix i systemy uniksopodobne uwaaj to za wit czasu. Inne czasy s liczone wzgldem tej daty. FTP Protok transferu plikw (File Transfer Protocol). FTP jest popularn metod przenoszenia danych midzy komputerami. GID Identyfikator grupy (Group Identifier). GID jest niepowtarzalnym numerem przypisanym danej grupie uytkownikw. Grupa (Group) Uytkownicy w Uniksie nale do grup, ktre mog zawiera wielu innych uytkownikw. Uywa si ich do bardziej oglnej kontroli dostpu, ni pozwala na to obecno samych uytkownikw. Grupa programw (Software series) Zbir powizanych pakietw oprogramowania w Slackware. Wszystkie pakiety KDE s w grupie kde, pakiety do pracy w sieci w grupie n itp. GUI Graficzny interfejs uytkownika (Graphical User Interface). Interfejs programowy, ktry uywa elementw graficznych, takich jak przyciski, paski przewijania, okna itp., zamiast opartego

wycznie na tekcie wejcia i wyjcia. HOWTO Dokument opisujcy, jak co zrobi (how to... - jak zrobi...), np. jak skonfigurowa zapor sieciow albo jak zarzdza uytkownikami i grupami. Duy zbir tych dokumentw jest na stronie Linux Documentation Project http://www.tldp.org, a polskie tumaczenia na http://www.jtz.org.pl. HTTP Protok transferu hipertekstu (Hypertext Transfer Protocol). HTTP jest podstawowym protokoem, na ktrym opera si dziaanie sieci WWW. ICMP Protok komunikatw kontrolnych Internetu (Internet Control Message Protocol). Bardzo prosty protok sieciowy, uywane gwnie do pingowania. Jdro (Kernel) Serce systemu operacyjnego. Jdro zapewnia podstawow kontrol procesw i komunikuje si ze sprztem komputerowym. Katalog biecy (Working directory) Uruchomiony program zakada, e znajduje si w tym katalogu podczas dziaania. Katalog domowy (Home directory) Zwany te katalogiem macierzystym. Jest to katalog, w ktrym uytkownik znajduje si natychmiast po zalogowaniu. W ramach swoich katalogw domowych uytkownicy maj pene prawa i mniejsz lub wiksz wadz. Katalog gwny (Root directory) Reprezentowany przez / Znajduje si on na szczycie systemu plikw, wszystkie inne pliki w drzewie plikw wychodz z niego. Kod rdowy (Source code) Zrozumiay (mniej lub bardziej) dla czowieka kod, w ktrym jest napisana wikszo programw. Kod rdowy kompiluje si do kodu binarnego. Kompilowa (Compile) Przetwarza kod rdowy programu do kodu binarnego, ktry potrafi przeczyta komputer. Konto (Account) Wszystkie informacje o uytkowniku, w tym nazwa uytkownika, haso, informacja dla programu finger, numery UID i GID oraz katalog domowy. Utworzenie konta polega na dodaniu i zdefiniowaniu uytkownika. Kroplik (Dot file) Nazwy plikw w Linuksie, ktre maj by ukryte, zaczynaj si od kropki ('.'). LILO Program adujcy Linuksa (LInux LOader). LILO jest najpowszechniej uywanym menederem adowania Linuksa.

LOADLIN Program LOADLIN dziaa pod MS DOSem lub Windows i uruchamia Linuksa. Najczciej uywa si go na komputerach, na ktrych jest zainstalowany wicej ni jeden system operacyjny (w tym, oczywicie, Linux i DOS/Windows). MBR Gwny sektor rozruchowy (Master Boot Record). Zarezerwowane miejsce na dysku twardym, na ktrym s zapisane informacje, co robi przy uruchomieniu komputera. Mona tam zapisa LILO albo inne menedery adowania. Meneder okien (Window manager) Program X, ktrego zadaniem jest tworzenie graficznego interfejsu uytkownika bardziej rozbudowanego ni proste rysowanie prostoktw w systemie X Window. Menedery okien zwykle udostpniaj paski tytuw, menu dla uruchomionych programw itp. Modu jdra (Kernel module) Fragment kodu jdra, zwykle jaki sterownik urzdzenia, ktry moe by zaadowany do pamici i usunity z niej niezalenie od gwnego jdra. Moduy s uyteczne podczas aktualizacji urzdze lub testowania ustawie jdra, poniewa mona je adowa i usuwa bez ponownego uruchamiania komputera. MOTD Wiadomo dnia (Message Of The Day). Motd (zapisywana w Linuksie w /etc/motd) to plik tekstowy, ktrego zawarto jest wywietlana kademu uytkownikowi w momencie zalogowania si. Zwykle uywa jej administrator systemu w charakterze tablicy informacyjnej sucej do komunikacji z uytkownikami. Motif Popularny zestaw narzdzi programistycznych, uywany w wielu starszych programach X. Nazwa domeny (Domain name) Nazwa DNS komputera, z wyczeniem nazwy samego komputera. NFS Sieciowy System Plikw (Network Filesystem). NFS pozwala na montowanie zdalnych systemw plikw tak, jakby znajdoway si one na lokalnym komputerze, dziki temu zapewniajc przezroczyst metod wspdzielenia plikw. Notacja dziesitna z kropkami (Dotted quad) Format adresu IP. Nazwany w ten sposb, poniewa zawiera cztery liczby (w zakresie od 0 do 255, w systemie dziesitnym) oddzielone kropkami. Pager Program w X, ktry umoliwia podgld i przeczanie si midzy wieloma pulpitami. Pakiet hase typu shadow (Shadow password suite) Pakiet shadow pozwala na przechowywanie zapisanych hase niedostpnych dla uytkownikw, podczas gdy pozostae informacje z pliku /etc/passwd mog odczyta wszyscy. Pomaga to zapobiega prbom zamania hase metod brute force (na si).

Pakiet oprogramowania (Software package) Program i powizane z nim pliki, zarchiwizowane i skompresowane do pojedynczego pliku, wraz z potrzebnymi skryptami lub informacjami pomocnymi przy instalacji, aktualizacji lub usuwaniu tych plikw. Partycja (Partition) Cz dysku twardego. Na partycji istniej systemy plikw. Pierwszy plan (Foreground) O programie, ktry przyjmuje lub kontroluje wejcie terminala, mwi si, e dziaa na pierwszym planie. Plik znacznikw (Tagfile) Plik uywany przez program instalacyjny Slackware setup ktry opisuje zestaw pakietw do zainstalowania. Podsie (Subnet) Zakres adresw IP, ktry jest czci szerszego zakresu. Np. 192.168.1.0 to podsie 192.168.0.0 (gdzie 0 to maska oznaczajca niezdefiniowany); jest to faktycznie podsie .1. Powoka (Shell) Powoka udostpnia uytkownikowi interfejs wiersza polece. Kiedy patrzysz na tekstowy znak zgoszenia (prompt), to znaczy, e jeste w powoce. Poziom pracy (Runlevel) Oglny stan systemu zdefiniowany przez init. Poziom pracy 6 to ponowne uruchomienie komputera, poziom 1 to tryb jednouytkownikowy. poziom 4 to logowania X itp. W Slacware jest dostpnych 6 poziomw pracy. PPP Protok punkt-punkt (Point-to-Point protocol). PPP uywa si gwnie do czenia przez modem z Operatorem Internetu. Proces (Process) Uruchomiony program. Proces zawieszony (Suspended process) Proces, ktry zosta unieruchomiony do momentu zabicia go lub wznowienia. Program obudowujcy (Wrapper program) Zwany te programem kopertujcym. Jest to program, ktrego jedynym celem jest uruchamianie innych programw, ale zmieniajc przy tym w jaki sposb ich zachowanie, np. poprzez zmian ich rodowisk lub filtrowanie ich wejcia. Przestrze wymiany (Swap space) Przestrze na dysku uywana przez jdro jako wirtualna pami RAM. Jest wolniejsza ni RAM, ale jako e przestrze na dysku jest tasza, przestrzeni wymiany moe by zwykle duo wicej. Jdro korzysta z niej, aby przechowywa rzadziej uywane dane i jako zapas w razie zapenienia fizycznej pamici RAM.

Punkt montowania (Mount point) Pusty katalog w systemie plikw, w ktrym ma by zamontowany, albo doczepiony inny system plikw. Sekcja podrcznika (Man section) Strony standardowego uniksowego podrcznika (man = manual) online s pogrupowane w sekcje, aby byo atwiej odnale potrzebn. Wszystkie strony dotyczce programowania w C s w sekcji 3, strony dotyczce administracji systemem w sekcji 5 itp. Serwer nazw (Nameserver) Serwer informacji DNS. Serwery nazw tumacz nazwy DNS na numeryczne adresy IP. Serwer X Program w systemie X Window, ktry wspdziaa ze sprztem graficznym i obsuguje faktyczne dziaanie programw X. Standardowe wejcie (Standard input, stdin) Standardowy uniksowy strumie wejcia (wprowadzania) danych. Dane mog by przekierowane lub potokowane (przepuszczane) do stdin programu z rnych rde. Standardowe wyjcie (Standard output, stdout) Standardowy uniksowy strumie wyjcia. Zwyke wyjcie tekstowe programu jest wypisywane na stdout, ktre jest oddzielone od wiadomoci o bdach na standardowym wyjciu bdw (stderr), i ktre moe by przekierowane lub potokowane do standardowych wej innych programw lub do pliku. Standardowe wyjcie bdw (Standard error, stderr) Standardowy uniksowy strumie wyjcia dla bdw. Programy wypisuj komunikaty o bdach na stderr, tak aby atwo byo oddzieli je od normalnego wyjcia. Sterownik urzdzenia (Device driver) Fragment kodu w jdrze, ktry kontroluje prac danego komponentu sprztowego. Superblok (Superblock) W Linuksie o partycjach mwi si w kategoriach blokw. Blok to 512 bajtw. Superblok to pierwsze 512 bajtw partycji. Sygna (Signal) Uniksowe programy mog porozumiewa si midzy sob za pomoc prostych sygnaw, ktre maj swoje numery i z reguy specyficzne znaczenia. Polecenie kill -l wywietli list dostpnych sygnaw. System plikw (Filesystem) Reprezentacja zapisanych danych, w ktrej pliki danych s zorganizowane i przechowywane w Katalogach. System plikw jest prawie uniwersaln reprezentacj danych zapisanych na dyskach (staych i wymiennych). System X Window (X Window System) Zorientowany na prac w sieci graficzny interfejs uytkownika uywany w wikszoci

uniksopodobnych systemw operacyjnych, w tym w Linuksie. rodowisko graficzne komputera (Desktop environment) Graficzny interfejs uytkownika (graphical user interface GUI), ktry dziaa na czubku systemu X Window i udostpnia rne funkcje, takie jak zintegrowane aplikacje, spjny wygld i zachowanie midzy programami a komponentami, moliwoci zarzdzania plikami i oknami, itp. Wicej ni prosty meneder okien. Tablica rutingu (Routing table) Informacje w jdrze, uywane do rutowania (wysyania odpowiedni drog) danych w sieci. Zawiera takie rzeczy, jak domylna brama, ktry interfejs sieciowy jest podczony do ktrej sieci itp. Terminal Interfejs midzy czowiekiem a komputerem, skadajcy si co najmniej z ekranu (lub ekranu wirtualnego) i jakiej metody wejcia (prawie zawsze co najmniej z klawiatury). Terminal wirtualny Oprogramowanie uywane do symulacji wielu terminali, gdy jest dostpny tylko jeden zestaw urzdze wejcia/wyjcia (klawiatura, monitor, mysz). Specjalne kombinacje klawiszy przeczaj terminale wirtualne na pojedynczym terminalu fizycznym. To (Background) O kadym procesie, ktry dziaa, nie przyjmujc nic z wejcia terminala ani nie kontrolujc go, mwi si, e dziaa w tle. UID Identyfikator uytkownika (User Identifier). Niepowtarzalny numer, ktry identyfikuje uytkownika w systemie. Wikszo programw uywa UIDw zamiast nazw uytkownika, poniewa z numerami atwiej pracowa. Nazw uytkownika uywa si gwnie wtedy, kiedy sam uytkownik musi widzie, co si dzieje. Usuga Wspdzielenie informacji i/lub danych midzy programami i komputerami jednego serwera (komputera usugujcego) z wieloma klientami (komputerami korzystajcymi z usug). Usugi to np. HTTP, FTP, NFS. VESA Stowarzyszenie standardw elektroniki wideo (Video Electronics Standards Association). Terminem VESA zwykle okrela si standard ustalony przez to stowarzyszenie. Prawie wszystkie nowoczesne karty graficzne s zgodne ze standardem VESA. Wbudowane polecenie powoki (Shell builtin) Polecenie wbudowane w powok, w przeciwiestwie do polecenia zewntrznego programu. Np. bash ma wbudowane polecenie cd. Wze urzdzenia (Device node) Specjalny typ pliku w katalogu /dev, ktry reprezentuje komponent sprztowy w systemie operacyjnym.

Zapis semkowy (Octal) 8-cyfrowy system liczbowy, z cyframi od 0 do 7. Zestaw narzdzi GUI (Toolkit GUI) Zestaw narzdzi GUI to zbir bibliotek, ktre udostpniaj programicie kod rysujcy widgety (elementy okien), takie jak paski przewijania, pola wyboru itp. oraz tworzcy graficzny interfejs uytkownika. Zestaw narzdzi GUI uywany przez program zwykle okrela jego wygld i zachowanie (look and feel). Zmienna rodowiskowa (Environment variable) Zmienna ustawiona w powoce uytkownika, do ktrej moe odwoywa si uytkownik lub uruchomione przez niego w tej powoce programy. Uywa si ich gwnie do przechowywania preferencji i domylnych ustawie.

Dodatek A. Powszechna Licencja Publiczna GNU


(Od tum.: tumaczenie pochodzi ze strony http://gnu.org.pl/text/licencja-gnu.html, oficjalny angielski tekst znajduje si na stronie http://www.fsf.org/licensing/licenses/gpl.html)

Tumaczenie GNU General Public License


Uwaga!
To jest nieoficjalne tumaczenie Powszechnej Licencji Publicznej GNU na jzyk polski. Nie zostao opublikowane przez Free Software Foundation i pod wzgldem prawnym nie stanowi warunkw rozpowszechniania oprogramowania stosujcego GNU GPL -- ustanawia je wycznie oryginalny angielski tekst licencji GNU GPL. Jednak mamy nadziej, e pomoe ono lepiej zrozumie Licencj osobom mwicym po polsku.

Note!
This is an unofficial translation of the GNU General Public License into Polish. It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU GPL-only the original English text of the GNU GPL does that. However, we hope that this translation will help Polish speakers understand the GNU GPL better.

Powszechna Licencja Publiczna GNU Wersja 2, czerwiec 1991


Copyright 1989, 1991 Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139 USA. Zezwala si na kopiowanie i rozpowszechnianie wiernych kopii niniejszego dokumentu licencyjnego, jednak bez prawa wprowadzania zmian.

Preambua
Wikszo licencji na oprogramowanie pomylana jest po to, aby odebra uytkownikowi moliwo swobodnego udostpniania innym i zmieniania danego software'u. Natomiast w wypadku Powszechnej Licencji Publicznej GNU (GNU General Public License, GPL) celem jest zagwarantowanie uytkownikowi swobody udostpniania i zmieniania tego wolnego oprogramowania, a wic danie pewnoci, i oprogramowanie jest wolno dostpne dla wszystkich uytkownikw. Niniejsza Powszechna Licencja Publiczna dotyczy wikszoci oprogramowania wydawanego przez Fundacj Wolnego Oprogramowania (Free Software Foundation) oraz wszelkich innych programw, ktrych autorzy zobowizuj si do jej stosowania. (Niektre rodzaje oprogramowania wydawanego przez Fundacj objte s Powszechn Licencj Publiczn GNU dla Bibliotek, GNU Library General Public License). Uytkownik moe stosowa j rwnie do swoich programw. Mwic o wolnym oprogramowaniu mamy na myli swobod, a nie cen. Nasze Powszechne Licencje Publiczne wprowadzono po to, aby zapewni Pastwu swobod rozpowszechniania kopii tego oprogramowania (i - jeli kto chce - pobierania za t usug opaty), jak rwnie aby udostpni kod rdowy oraz umoliwi dokonywanie zmian tego oprogramowania lub wykorzystywania jego fragmentw w nowych, wolnych programach. Nie bez znaczenia jest te sama moliwo dotarcia do Pastwa z informacj o wszystkich tych udogodnieniach. W celu ochrony praw uytkownika jestemy zmuszeni wprowadza ograniczenia zabraniajce komukolwiek kwestionowanie jego praw albo sugerowanie rezygnacji z tych praw. Ograniczenia te sprowadzaj si do pewnych dla Pastwa obowizkw w przypadku rozpowszechniania przez Was kopii naszego oprogramowania bd dokonywania w nim zmian. Na przykad, jeli rozprowadzacie Pastwo kopie takiego programu, niezalenie czy gratisowo, czy za opat, musicie Pastwo odbiorcy udzieli wszelkich tych praw, jakie mielicie sami. Musicie zapewni mu rwnie otrzymanie kodu rdowego (lub moliwo otrzymania) oraz przedstawi niniejsze Warunki, aby mg on pozna swoje prawa. Ochrona Pastwa praw przebiega w dwch etapach: 1. zastrzegamy prawo wasnoci autorskiej do oprogramowania, 2. oferujemy Pastwu niniejsz licencj, ktra daje Wam sankcjonowane prawem zezwolenie na kopiowanie, rozpowszechnianie i/lub modyfikowanie tego oprogramowania. Ponadto dla ochrony tak autora, jak i naszej, pragniemy mie pewno, e kady zrozumie, i na niniejsze wolne oprogramowanie nie udziela si gwarancji. W razie dokonania w nim przez kogo modyfikacji i puszczenia dalej do obrotu, pragniemy, aby dalsi odbiorcy zdawali sobie spraw z tego, e problemy wprowadzone przez inne osoby nie s wyrazem oryginalnych dziaa twrcw. I rzecz ostatnia: kademu wolnemu programowi stale zagraaj patenty na oprogramowanie. Naszym pragnieniem jest unikanie takiego niebezpieczestwa, kiedy redystrybutorzy wolnego programu indywidualnie uzyskuj prawa patentowe, nadajc tym samym programowi charakter prawnie zastrzeony. W celu zapobieenia takim zjawiskom jednoznacznie wyjanilimy, e kady patent musi by wydawany albo dla swobodnego uytku przez wszystkich, albo nie wydawany wcale. Poniej podajemy dokadne zasady i warunki kopiowania, rozpowszechniania i modyfikowania.

Zasady i warunki kopiowania, rozpowszechniania i modyfikowania


0. Niniejsza Licencja dotyczy programw i innych prac, na ktrych umieszczona jest pochodzca od waciciela praw autorskich informacja, e dany program lub praca moe by rozpowszechniana na warunkach niniejszej Powszechnej Licencji Publicznej. Uywane poniej sowo "Program" oznacza

wanie takie programy lub prace, za okrelenie "praca oparta na Programie" dotyczy albo Programu, albo pochodzcej od niego pracy w rozumieniu prawa autorskiego, to jest pracy zawierajcej Program lub jego cz dosown, bd zmodyfikowan i/lub przeoon na inny jzyk. (W dalszym cigu niniejszego, pojcie przekadu wcza si bez ogranicze do terminu "modyfikacja"). Do kadego licencjobiorcy bdziemy zwraca si "per Ty". Niniejsza Licencja nie obejmuje dziaa innych ni kopiowanie, rozprowadzanie i modyfikowanie nie mieszcz si one w jej zakresie. Czynno uywania Programu nie jest poddana ograniczeniom, a produkty uzyskane z Programu objte s Licencj tylko wtedy, gdy ich tre stanowi prac opart na Programie (niezalenie od stworzenia jej przy uyciu Programu). To, czy fakt taki jest prawd, zaley od tego, co dany Program wykonuje. 1. Moesz kopiowa i rozprowadza w dowolnych mediach wierne kopie kodu rdowego Programu w otrzymanej formie pod warunkiem, e w widoczny sposb i odpowiednio podasz na kadej kopii waciw informacj o prawie autorskim i zrzeczenie si uprawnie z tytuu gwarancji; wszelkie napisy informacyjne na temat Licencji i faktu nieudzielania gwarancji musisz chroni przed uszkodzeniem, za wszystkim innym odbiorcom Programu musisz wraz z Programem wrcza egzemplarz niniejszej Licencji. Moesz pobiera opat za fizyczn czynno przekazania kopii i wedug wasnej decyzji moesz za opat proponowa ochron gwarancyjn. 2. Moesz modyfikowa swoj kopi czy kopie Programu oraz dowolne jego czci, tworzc przez to prac opart na Programie, jak rwnie kopiowa i rozprowadza takie modyfikacje i prac na warunkach podanych w pkt.1 powyej - pod warunkiem przestrzegania caoci poniszych wymogw: a. Musisz spowodowa umieszczenie na zmodyfikowanych plikach widocznej informacji o tym, e dane pliki zostay przez ciebie zmienione, wraz z dat dokonania zmian. b. Musisz doprowadzi do tego, aby kada rozpowszechniana lub publikowana przez ciebie praca, ktra w caoci lub czci zawiera Program, albo pochodzi od niego lub jego czci, bya w caoci i bezpatnie licencjonowana dla wszelkich stron trzecich na warunkach niniejszej Licencji. c. Jeeli zmodyfikowany program podczas korzystania z niego w normalnym trybie odczytuje polecenia interaktywnie, musisz spowodowa, aby po uruchomieniu (uyty w interaktywny sposb w najzwyklejszym trybie), wydrukowywa on lub wywietla powiadomienie o odnonym prawie autorskim i braku gwarancji (ewentualnie o zapewnianiu gwarancji przez ciebie), oraz o tym, e uytkownicy mog redystrybuowa ten program na niniejszych warunkach wraz z informacj, jak uytkownik moe zapozna si z treci niniejszej Licencji. (Wyjtek: jeli sam Program jest interaktywny, ale normalnie nie drukuje takiego powiadomienia, twoja praca oparta na nim te nie musi wydrukowywa takiego powiadomienia).

Niniejsze wymogi odnosz si do zmodyfikowanej pracy jako caoci. Jeli dajce si ustali sekcje danej pracy nie pochodz od Programu i mog by racjonalnie uwaane za samodzielne i odrbne same w sobie, to niniejsza Licencja i jej warunki nie maj zastosowania do takich sekcji przy rozprowadzaniu ich przez ciebie jako odrbne prace. Jeli jednak rozprowadzasz je jako cz caoci, bdcej prac opart na Programie, rozpowszechnianie tej caoci musi by dokonywane na warunkach niniejszej Licencji, ktrej zezwolenia dla innych licencjobiorcw rozcigaj si w caej szerokoci na t cao, a tym samym i na kad indywidualn jej cz, niezalenie od jej autorstwa. Dlatego te intencj tego fragmentu nie jest roszczenie sobie praw albo podwaanie twych praw do pracy napisanej w caoci przez ciebie. Chodzi nam raczej o korzystanie z prawa kontrolowania dystrybucji pochodnych i zbiorowych prac opartych na Programie. I jeszcze jedno: samo tylko poczenie z Programem (lub z prac opart na Programie) innej pracy nie opartej na Programie, w ramach wolumenu nonika przechowywania lub dystrybucji, nie powoduje objcia takiej pracy zakresem niniejszej Licencji. 3. Moesz kopiowa i rozprowadza Program (lub opart na nim prac - zgodnie z pkt.2 w kodzie wynikowym lub w formie wykonywalnej w myl postanowie pkt.1 i 2 powyej, pod warunkiem zrealizowania rwnie poniszych wymogw: a. Musisz doczy do niego odpowiadajcy mu, kompletny i moliwy do odczytania przez urzdzenia cyfrowe kod rdowy, ktry musi by rozpowszechniany na warunkach pkt.1 i 2 powyej i na noniku zwyczajowo uywanym dla wzajemnej wymiany oprogramowania; lub b. doczy do niego pisemn ofert, wan co najmniej 3 lata, przyznajc kadej stronie trzeciej - za opat nie przekraczajc twego kosztu fizycznego wykonywania dystrybucji rda - kompletn, odczytywaln przez urzdzenia cyfrowe kopi odpowiadajcego mu kodu rdowego, rozprowadzan na warunkach pkt.1 i 2 powyej, na noniku zwyczajowo uywanym do wzajemnej wymiany oprogramowania; lub c. doczy do niego informacj, jak otrzymae na temat oferty rozprowadzania odpowiedniego kodu rdowego. (Ta moliwo dozwolona jest tylko dla dystrybucji niehandlowej i jedynie wtedy, gdy otrzymae dany program w kodzie wynikowym lub formie wykonywalnej wraz z wymienion ofert - zgodnie z podpunktem "b" powyej). Okrelenie kod rdowy dla pracy oznacza form pracy preferowan dla wprowadzania do niej modyfikacji. Dla wykonanej pracy, kompletny kod rdowy oznacza cay kod rdowy wszystkich moduw, wszelkie sprzone z ni poredniczce pliki opisujce oraz zbiory komend stosowane do sterowania kompilacj i instalowaniem programw. Niemniej jednak, jako wyjtek specjalny, dystrybuowany (w formie rdowej albo binarnej) kod rdowy nie musi obejmowa niczego, co jest normalnie rozprowadzane przy pomocy gwnych komponentw (kompilator, jdro itd.) systemu operacyjnego, na ktrym pracuje cz wykonywalna, o ile sam taki komponent towarzyszy tej czci. Jeli dystrybucja czci wykonywalnej albo kodu wynikowego realizowana jest poprzez oferowanie

dostpu do kopii z wyznaczonego miejsca, to oferowanie rwnowanego dostpu dla kopiowania kodu rdowego z tego samego miejsca liczy si jako rozpowszechnianie kodu rdowego, nawet gdy strony trzecie nie s zmuszone do kopiowania rda wraz z kodem wynikowym. 4. Poza przypadkami jednoznacznie dozwolonymi w niniejszej Licencji, nie moesz kopiowa, modyfikowa, sublicencjonowa ani rozpowszechnia Programu. We wszystkich pozostaych wypadkach, kada prba skopiowania, sublicencjonowania lub rozpowszechnienia Programu jest niewana i powoduje automatyczne wyganicie twoich praw z tytuu Licencji. Niemniej jednak, stronom, ktre ju otrzymay od ciebie kopie albo prawa w ramach niniejszej Licencji, licencje nie wygasaj tak dugo, jak dugo strony te w peni stosuj si do nich. 5. Nie musisz akceptowa niniejszej Licencji, jeeli jej nie podpisae. Niemniej jednak, nic innego nie zapewni ci zezwolenia na modyfikowanie lub rozprowadzanie Programu i pochodzcych od niego prac. Dziaania takie s prawnie zabronione, jeeli nie przyjmujesz niniejszej Licencji. Dlatego te, poprzez modyfikowanie bd rozpowszechnianie Programu (lub pracy na nim opartej) dajesz wyraz swojej akceptacji dla Licencji i wszelkich jej postanowie i warunkw dotyczcych kopiowania, rozprowadzania i modyfikowania Programu lub opartych na nim prac. 6. W kadym przypadku redystrybucji przez ciebie Programu (albo opartej na nim pracy), odbiorca automatycznie otrzymuje od pierwotnego licencjodawcy licencj na kopiowanie, rozpowszechnianie i modyfikowanie Programu na niniejszych zasadach i warunkach. Na korzystanie przez odbiorc z udzielonych w niniejszej Licencji praw nie moesz narzuca ju dalszych ogranicze. Nie jeste stron odpowiedzialn za kontrol przestrzegania Licencji przez osoby trzecie. 7. Jeli na skutek wyroku sdowego lub zarzutu naruszenia patentu, jak te z kadej innej przyczyny (nie ograniczonej do kwestii patentowych) zostan narzucone na ciebie (niezalenie czy to moc wyroku sdowego, umowy, czy w inny sposb) warunki sprzeczne z warunkami niniejszej Licencji, to nie zwalniaj one ciebie z warunkw Licencji. Jeli nie moesz prowadzi dystrybucji tak, aby wypenia jednoczenie swoje obowizki z tytuu niniejszej Licencji i inne odnone obowizki, to w rezultacie nie moesz wcale rozprowadza Programu. Na przykad, gdyby licencja patentowa nie zezwalaa na woln od opat licencyjnych redystrybucj Programu przez wszystkie osoby, ktre otrzymay kopie bezporednio lub porednio od ciebie, to jedynym sposobem pozwalajcym ci na przestrzeganie i licencji patentowej, i Licencji niniejszej, byoby cakowite powstrzymanie si od jakiejkolwiek dystrybucji Programu. Jeeli w jakich szczeglnych okolicznociach ktry fragment niniejszego punktu staby si niewany lub niewykonywalny, to intencj jest, aby znajdowaa zastosowanie pozostaa cz punktu, a tre caego punktu bya stosowana w pozostaych okolicznociach. Celem niniejszego punktu nie jest zachcanie do naruszania patentw czy innych praw wasnoci, albo te do podwaania ich wanoci; niniejszy punkt za swj jedyny cel ma ochron integralnoci systemu rozpowszechniania wolnego oprogramowania, realizowanego za pomoc publicznych licencji. Wielu ludzi bezinteresownie wnioso swj wkad do stworzenia szerokiego zakresu oprogramowania upowszechnianego w tym systemie, majc zaufanie do konsekwentnego jego stosowania; wycznie do autora/ofiarodawcy naley decyzja, czy yczy on sobie rozprowadzania

oprogramowania za porednictwem innego systemu i licencjobiorca nie moe tego prawa wyboru ogranicza. Intencj niniejszego punktu jest jasne i wyrane przedstawienie tego, co uwaa si za skutki, jakie rodzi pozostaa cz niniejszej Licencji. 8. W przypadku, gdy dystrybucja i/lub uywanie Programu w niektrych krajach poddane jest ograniczeniom patentowym lub zastrzeeniom prawami autorskimi, pocztkowy posiadacz praw autorskich, ktry poddaje Program pod oddziaywanie niniejszej Licencji, moe doda wyranie zakrelone geograficzne ograniczenie rozpowszechniania wyczajce te kraje, dziki czemu dystrybucja dozwolona bdzie wycznie w krajach czy wrd krajw nie objtych takim wyczeniem. W przypadku takim, niniejsza Licencja obejmuje dane ograniczenie tak, jakby byo ono wpisane w jej tre. 9. W miar potrzeby Fundacja Wolnego Oprogramowania moe publikowa poprawione i/lub nowe wersje Powszechnej Licencji Publicznej. Takie nowe wersje bd napisane w duchu podobnym do obecnej wersji, ale mog rni si w szczegach poruszajcych nowe problemy czy zagadnienia. Kadej wersji nadaje si wyrniajcy j numer. Jeeli Program podaje numer wersji niniejszej Licencji, odnoszcy si do tej wersji i "wszelkich wersji nastpnych", masz do wyboru albo stosowa si do postanowie i warunkw tej wersji, albo ktrejkolwiek wersji pniejszej wydanej przez Fundacj Wolnego Oprogramowania. O ile Program nie podaje numeru wersji niniejszej Licencji, moesz wybra dowoln wersj kiedykolwiek opublikowan przez Fundacj. 10. Jeli chcesz wczy czci Programu do innych wolnych programw, ktrych warunki rozpowszechniania s inne, zwr si pisemnie do autora z prob o pozwolenie. W przypadku oprogramowania objtego przez Fundacj prawem autorskim, napisz do Fundacji; czasami czynimy od tego odstpstwa. W naszej decyzji kierujemy si dwoma celami: utrzymania wolnego statusu wszystkich pochodnych naszego wolnego oprogramowania oraz - generalnie - promowania wspudziau i wielokrotnego stosowania oprogramowania. WYRB BEZ GWARANCJI 11. PONIEWA PROGRAM JEST LICENCJONOWANY BEZPATNIE, NIE JEST OBJTY GWARANCJ W ZAKRESIE DOZWOLONYM PRZEZ OBOWIZUJCE PRZEPISY. O ILE NA PIMIE NIE STANOWI SI INACZEJ, POSIADACZE PRAW AUTORSKICH I/LUB INNE STRONY ZAPEWNIAJ PROGRAM W STANIE, W JAKIM JEST ("JAK WIDA") BEZ JAKIEJKOLWIEK GWARANCJI, ANI WYRANEJ, ANI DOMYLNEJ, W TYM MIDZY INNYMI DOMYLNYCH GWARANCJI CO DO PRZYDATNOCI HANDLOWEJ I PRZYDATNOCI DO OKRELONYCH ZASTOSOWA. CAO RYZYKA W ZAKRESIE JAKOCI I SKUTECZNOCI DZIAANIA PROGRAMU PONOSISZ SAM. W RAZIE GDYBY PROGRAM OKAZA SI WADLIWY, PONOSISZ KOSZT CAEGO NIEZBDNEGO SERWISU, NAPRAWY I KORYGOWANIA. 12. O ILE OBOWIZUJCE PRAWO NIE STANOWI INACZEJ ALBO CZEGO INNEGO NIE

UZGODNIONO W FORMIE PISEMNEJ, ADEN POSIADACZ PRAW AUTORSKICH ANI INNA STRONA MODYFIKUJCA I/LUB REDYSTRYBUJCA PROGRAM ZGODNIE Z POWYSZYMI ZEZWOLENIAMI, W ADNYM WYPADKU NIE JEST ODPOWIEDZIALNA WOBEC CIEBIE ZA SZKODY, W TYM SZKODY OGLNE, SPECJALNE, UBOCZNE LUB SKUTKOWE, WYNIKE Z UYCIA BD NIEMOLIWOCI UYCIA PROGRAMU (W TYM, MIDZY INNYMI, ZA UTRAT DANYCH LUB POWSTANIE DANYCH NIEDOKADNYCH, ALBO ZA STRATY PONIESIONE PRZEZ CIEBIE LUB STRONY TRZECIE, JAK TE NIEDZIAANIE PROGRAMU Z INNYMI PROGRAMAMI), NAWET JELI DANY POSIADACZ BD INNA STRONA ZOSTALI POWIADOMIENI O MOLIWOCI POWSTANIA TAKICH SZKD.

KONIEC ZASAD I WARUNKW Jak stosowa niniejsze Warunki do Twoich nowych programw
Jeli opracowujesz nowy program i chciaby, aby sta si on przydatny dla szerokiego ogu, najlepsz drog do osignicia tego bdzie nadanie twemu programowi charakteru wolnego oprogramowania, ktre kady moe redystrybuowa i zmienia na niniejszych warunkach. W tym celu do programu docz ponisze informacje. Bezpieczniej jest doczy je na pocztku kadego pliku rdowego, dziki czemu najskuteczniej mona przekaza fakt nieistnienia gwarancji; kady plik powinien przy tym nosi uwag "copyright" i odnonik, gdzie mona znale pen informacj.
nazwa programu i informacja, do czego on suy. Copyright (C) 19../20.. nazwisko autora Niniejszy program jest wolnym oprogramowaniem; moesz go rozprowadza dalej i/lub modyfikowa na warunkach Powszechnej Licencji Publicznej GNU, wydanej przez Fundacj Wolnego Oprogramowania - wedug wersji 2-giej tej Licencji lub ktrej z pniejszych wersji. Niniejszy program rozpowszechniany jest z nadziej, i bdzie on uyteczny - jednak BEZ JAKIEJKOLWIEK GWARANCJI, nawet domylnej gwarancji PRZYDATNOCI HANDLOWEJ albo PRZYDATNOCI DO OKRELONYCH ZASTOSOWA. W celu uzyskania bliszych informacji - Powszechna Licencja Publiczna GNU. Z pewnoci wraz z niniejszym programem otrzymae te egzemplarz Powszechnej Licencji Publicznej GNU (GNU General Public License); jeli nie - napisz do Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

Podaj te informacje o sposobie kontaktowania si z tob poczt elektroniczn lub zwyk. Jeli dany program jest interaktywny, spraw, aby w momencie wchodzenia w tryb interaktywny wywietla on komunikat jak w poniszym przykadzie:
Gnomovision wersja 69, Copyright C 19.. nazwisko autora Gnomovision wydawany jest ABSOLUTNIE BEZ ADNEJ GWARANCJI w celu uzyskania dalszych szczegw wpisz "show w". To jest wolne oprogramowanie i mile widziane jest dalsze rozpowszechnianie go przez ciebie na okrelonych warunkach w celu uzyskania bliszych szczegw wpisz "show c".

Powysze hipotetyczne polecenia "show w" i "show c" winny powodowa wywietlenie odpowiednich czci Powszechnej Licencji Publicznej. Oczywicie moesz uywa innych polece ni "show w" i "show c"; mog to by nawet kliknicia mysz lub pozycje menu - co tylko sobie uznasz za stosowne. Powiniene te poprosi swego pracodawc (jeli pracujesz jako programista) czy te swoj szko (jeli jeste uczniem), o podpisanie, w razie potrzeby, "Rezygnacji z praw autorskich" do programu. Poniej podajemy przykad (zmie nazwy/nazwiska):
My, firma Jojodyne Sp. z o.o. niniejszym zrzekamy si i rezygnujemy z wszelkich interesw prawnych w zakresie praw autorskich do programu "Gnomovision" (ktry realizuje nastpujce funkcje...), napisanego przez p.Jana Kowalskiego. Podpis: /-/ Gniewosaw Wielkowany Gniewosaw Wielkowany, Prezes...itp

Powszechna Licencja Publiczna nie zezwala na wczanie twego programu do programw prawnie zastrzeonych. Jeli twj program jest bibliotek podprogramw, moesz rozway, czy nie bdzie korzystniej zezwoli na powizanie prawnie zastrzeonych aplikacji z bibliotek. Jeli chciaby wanie tego dokona, zamiast niniejszej Licencji zastosuj Powszechn Licencj Publiczn GNU dla Bibliotek. Tum. Leszek Pietryka (leszekptr@gazeta.pl)

You might also like