Professional Documents
Culture Documents
PRZYKADOWY ROZDZIA
SPIS TRECI
KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG
TWJ KOSZYK
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK
CZYTELNIA
FRAGMENTY KSIEK ONLINE
Wydawnictwo Helion
ul. Kociuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
COM+. Kompendium
programisty
Autorzy: Graham Glass, King Ables
Tumaczenie: Marcin Rog
ISBN: 978-83-246-0504-0
Tytu oryginau: Linux for Programmers and Users
Format: B5, stron: 648
Szczegowe omwienie systemu Linux
Instalacja, konfiguracja i uruchamianie
Praca z powokami tekstowymi
Programowanie w C
rodowiska graficzne
Linux, napisany w ramach studenckich laboratoriw, w cigu kilku lat sta si niezwykle
popularnym systemem operacyjnym. Jego stabilno i niezawodno doceniaj ju nie
tylko profesjonalici, ale take uytkownicy domowi, dla ktrych dostpny nieodpatnie
produkt coraz czciej jest alternatyw dla komercyjnych systemw operacyjnych.
Linux wici triumfy nie tylko jako baza dla wydajnych i bezpiecznych serwerw
sieciowych, ale rwnie jest wykorzystywany w stacjach roboczych oraz komputerach
domowych uywanych do pracy, rozrywki i przegldania zasobw internetowych.
Dla Linuksa powstaje coraz wicej oprogramowania, rwnie dostpnego nieodpatnie
i w niczym nieustpujcego narzdziom komercyjnym.
Linux dla programistw i uytkownikw to doskonay przewodnik po tym systemie
operacyjnym. Omawia zagadnienia zwizane z programowaniem i przedstawia je
z perspektywy uytkownika. Czytajc go, dowiesz si, jakie dystrybucje Linuksa
moesz znale na rynku oraz jak zainstalowa system i skonfigurowa go. Nauczysz
si korzysta z powok tekstowych i rodowisk graficznych, pracowa w sieci i czy
si z internetem. Poznasz tajniki programowania w jzyku C dla systemu Linux,
napiszesz wasne narzdzia oraz zobaczysz, w jaki sposb dziaa system. Przeczytasz
take o podstawowych zadaniach administratora Linuksa.
Wybr dystrybucji
Instalacja systemu
Podstawowe narzdzia dla uytkownikw
Przetwarzanie plikw tekstowych
Operacje na systemie plikw
Powoki Bash, Korn i C
Linux w sieci
rodowiska graficzne
Jdro Linuksa
Administrowanie systemem
Poznaj system operacyjny, ktry zrewolucjonizowa wspczesn informatyk
Przedmowa .................................................................................... 19
Rozdzia 1. Czym jest Linux? ............................................................................ 27
1.1. Systemy komputerowe .......................................................................................... 28
1.2. Sprzt .................................................................................................................... 28
1.2.1. Procesor .................................................................................................. 28
1.2.2. Magistrala ............................................................................................... 28
1.2.3. Pami RAM .......................................................................................... 29
1.2.4. Pami ROM .......................................................................................... 29
1.2.5. Dyski ...................................................................................................... 30
1.2.6. Napdy CD-ROM ................................................................................... 30
1.2.7. Monitor ................................................................................................... 30
1.2.8. Karta graficzna ....................................................................................... 30
1.2.9. Klawiatura .............................................................................................. 30
1.2.10. Myszka ................................................................................................... 30
1.2.11. Drukarka ................................................................................................. 31
1.2.12. Napdy tamowe .................................................................................... 31
1.2.13. Modem .................................................................................................... 31
1.2.14. Interfejs sieciowy ................................................................................... 31
1.2.15. Inne urzdzenia peryferyjne ................................................................... 31
1.3. System operacyjny ................................................................................................ 31
1.4. Oprogramowanie .................................................................................................. 32
1.5. Dzielenie zasobw ................................................................................................ 33
1.6. Komunikacja ......................................................................................................... 33
1.7. Narzdzia .............................................................................................................. 34
1.8. Wspomaganie programistw ................................................................................ 35
1.9. Standardy .............................................................................................................. 35
1.10. Historia Linuksa .................................................................................................... 36
1.10.1. UNIX ...................................................................................................... 36
1.10.2. Open Source Software i Free Software Foundation ............................... 37
1.10.3. Linus ....................................................................................................... 39
1.11. Pakiety z Linuksem ............................................................................................... 39
1.12. Filozofia Linuksa i UNIX-a .................................................................................. 40
1.13. Cechy Linuksa ...................................................................................................... 41
1.14. W dalszych rozdziaach ........................................................................................ 42
Spis treci
7
3.14. Wywietlanie zawartoci katalogu ls ............................................................... 87
3.15. Wywietlanie zawartoci pliku cat, more, head i tail ...................................... 88
3.16. Zmienianie nazwy pliku mv ............................................................................ 89
3.17. Tworzenie katalogu mkdir ............................................................................... 90
3.18. Przechodzenie do innego katalogu cd .............................................................. 91
3.19. Kopiowanie pliku cp ........................................................................................ 92
3.20. Edycja pliku vim .............................................................................................. 92
3.21. Usuwanie katalogu rmdir ................................................................................. 93
3.22. Usuwanie pliku rm ........................................................................................... 94
3.23. Drukowanie pliku lp, lpstat i cancel ................................................................ 95
3.24. Drukowanie pliku lpr, lpq i lprm ....................................................................... 96
3.25. Liczenie sw w pliku wc ................................................................................ 98
3.26. Atrybuty pliku ....................................................................................................... 98
3.26.1. Przechowywanie pliku ........................................................................... 99
3.26.2. Nazwy plikw ......................................................................................... 99
3.26.3. Data i czas modyfikacji pliku ............................................................... 100
3.26.4. Waciciel pliku .................................................................................... 100
3.26.5. Grupa pliku ........................................................................................... 100
3.26.6. Typy plikw ......................................................................................... 101
3.26.7. Prawa dostpu do plikw ..................................................................... 102
3.26.8. Liczba twardych dowiza do pliku ..................................................... 104
3.27. Grupy .................................................................................................................. 104
3.28. Wywietlanie grup, do ktrych naleysz groups ........................................... 105
3.29. Zmienianie grupy wacicieli pliku chgrp ..................................................... 105
3.30. Zmienianie praw dostpu do pliku chmod ...................................................... 106
3.31. Zmienianie waciciela pliku chown .............................................................. 108
3.32. Zmiana grupy newgrp .................................................................................... 108
3.33. Poezja w dziaaniu epilog .............................................................................. 109
3.34. Okrelanie typu terminala tset ....................................................................... 109
3.35. Zmienianie charakterystyk terminala stty ...................................................... 112
3.36. Edycja pliku vim ............................................................................................ 113
3.36.1. Uruchamianie vim ................................................................................ 114
3.36.2. Tryb wprowadzania tekstu ................................................................... 114
3.36.3. Tryb wydawania polece ...................................................................... 115
3.36.4. Bufor pamici i pliki tymczasowe ........................................................ 116
3.36.5. Popularne funkcje edycyjne ................................................................. 117
3.36.6. Przemieszczanie kursora ...................................................................... 117
3.36.7. Usuwanie tekstu ................................................................................... 117
3.36.8. Zamienianie tekstu ............................................................................... 119
3.36.9. Wklejanie tekstu ................................................................................... 119
3.36.10. Wyszukiwanie ...................................................................................... 120
3.36.11. Wyszukiwanie i zamienianie ................................................................ 121
3.36.12. Zapisywanie i odczytywanie pliku ....................................................... 121
3.36.13. Inne ....................................................................................................... 122
3.36.14. Dostosowywanie vim ........................................................................... 123
3.36.15. Zachowywanie ustawie ...................................................................... 123
3.37. Edycja pliku emacs ........................................................................................ 124
3.37.1. Uruchamianie edytora emacs ............................................................... 125
3.37.2. Polecenia edytora emacs ...................................................................... 125
3.37.3. Wydobywanie si z kopotw .............................................................. 126
3.37.4. Uzyskiwanie pomocy ........................................................................... 126
3.37.5. Opuszczanie edytora emacs .................................................................. 127
3.37.6. Tryby dziaania edytora emacs ............................................................. 127
3.37.7. Wpisywanie tekstu ............................................................................... 127
Spis treci
9
4.17.Tworzenie wasnych programw Perl ........................................................... 178
4.17.1. Skd wzi Perla? ................................................................................. 179
4.17.2. Uruchamianie Perla .............................................................................. 179
4.17.3. Wywietlanie tekstu ............................................................................. 179
4.17.4. Zmienne, acuchy i liczby cakowite .................................................. 180
4.17.5. Tablice .................................................................................................. 180
4.17.6. Operatory matematyczne i logiczne ..................................................... 182
4.17.7. Operatory acuchw ........................................................................... 183
4.17.8. Operatory porwnania .......................................................................... 183
4.17.9. Ptle if, while, for i foreach ............................................................. 184
4.17.10. Obsuga plikw ..................................................................................... 185
4.17.11. Funkcje ................................................................................................. 185
4.17.12. Funkcje biblioteczne ............................................................................. 186
4.17.13. Odczytywanie argumentw z wiersza polece .................................... 187
4.17.14. Praktyczny przykad ............................................................................. 188
10
Spis treci
11
7.3.4. Eksportowanie zmiennych ................................................................... 271
7.3.5. Zmienne tylko do odczytu .................................................................... 272
7.3.6. Predefiniowane zmienne lokalne .......................................................... 273
7.3.7. Predefiniowane zmienne rodowiska ................................................... 274
7.4. Aliasy .................................................................................................................. 274
7.4.1. Przypisywanie aliasw poleceniom wbudowanym .............................. 275
7.4.2. Usuwanie aliasw ................................................................................. 275
7.4.3. Predefiniowane aliasy ........................................................................... 276
7.4.4. Przydatne aliasy .................................................................................... 276
7.4.5. Aliasy ledzone ..................................................................................... 277
7.4.6. Wspdzielenie aliasw ........................................................................ 277
7.5. Historia ............................................................................................................... 278
7.5.1. Polecenia numerowane ......................................................................... 278
7.5.2. Przechowywanie polece ..................................................................... 278
7.5.3. Ponowne wykonywanie polece .......................................................... 279
7.5.4. Edycja polece ..................................................................................... 279
7.6. Edycja polece .................................................................................................... 281
7.6.1. Wbudowany edytor vi ..................................................................... 281
7.6.2. Wbudowany edytor emacs i gmacs ................................................. 283
7.7. Arytmetyka ......................................................................................................... 284
7.7.1. Zapobieganie interpretacji metaznakw ............................................... 285
7.7.2. Sprawdzanie wartoci ........................................................................... 285
7.8. Zastpowanie tyldy ............................................................................................. 285
7.9. Tworzenie menu select .................................................................................. 286
7.10. Funkcje ............................................................................................................... 287
7.10.1. Uywanie parametrw .......................................................................... 288
7.10.2. Zwracanie wyniku funkcji .................................................................... 289
7.10.3. Kontekst ................................................................................................ 289
7.10.4. Zmienne lokalne ................................................................................... 289
7.10.5. Rekurencja ............................................................................................ 290
7.10.6. Wspdzielenie funkcji ......................................................................... 291
7.11. Sterowanie zadaniami ......................................................................................... 291
7.11.1. Polecenie jobs ....................................................................................... 292
7.11.2. Wskazywanie zadania .......................................................................... 292
7.11.3. Polecenie bg ......................................................................................... 293
7.11.4. Polecenie fg .......................................................................................... 293
7.11.5. Polecenie kill ........................................................................................ 293
7.12. Udoskonalenia .................................................................................................... 294
7.12.1. Przekierowanie ..................................................................................... 294
7.12.2. Potoki .................................................................................................... 295
7.12.3. Zastpowanie poleceniem .................................................................... 295
7.12.4. Zmienne ................................................................................................ 296
7.12.5. Polecenia wbudowane .......................................................................... 301
7.13. Przykadowy projekt mieci .......................................................................... 306
7.14. Opcje startowe powoki ...................................................................................... 308
12
Spis treci
13
9.3. Praca w sieci zoonej ......................................................................................... 353
9.3.1. Transmisja pakietowa ........................................................................... 354
9.3.2. Adresy IP .............................................................................................. 354
9.3.3. Nazwy ................................................................................................... 356
9.3.4. Trasowanie ........................................................................................... 356
9.3.5. Bezpieczestwo .................................................................................... 356
9.3.6. Porty i popularne usugi ....................................................................... 358
9.3.7. Programowanie sieci ............................................................................ 359
9.4. Identyfikowanie uytkownikw sieci ................................................................. 359
9.4.1. Wywietlanie uytkownikw users ................................................. 359
9.4.2. Wicej informacji o uytkownikach who i w .................................. 359
9.4.3. Nazwa Twojego hosta hostname ..................................................... 360
9.4.4. Dane osobiste finger ........................................................................ 360
9.5. Komunikowanie si z uytkownikami sieci ....................................................... 361
9.5.1. Ochrona przed komunikacj mesg .................................................. 362
9.5.2. Wysyanie pojedynczych wierszy write .......................................... 362
9.5.3. Interaktywne rozmowy talk ............................................................. 363
9.5.4. Wiadomoci do wszystkich wall ..................................................... 363
9.6. Przesyanie danych ............................................................................................. 364
9.6.1. Kopiowanie plikw pomidzy dwoma hostami pracujcymi
pod kontrol systemu Linux lub UNIX rcp i scp ............................ 365
9.6.2. Kopiowanie plikw pomidzy hostami niepracujcymi
pod kontrol systemu Linux lub UNIX ftp i sftp ............................ 365
9.7. Przetwarzanie rozproszone ................................................................................. 368
9.7.1. Zdalne demony logowania rlogin i slogin ....................................... 368
9.7.2. Zdalne wykonywanie polece rsh i ssh ........................................... 368
9.7.3. Poczenia zdalne telnet .................................................................. 370
9.8. Ewolucja internetu .............................................................................................. 372
9.8.1. Pocztki lata szedziesite ............................................................. 373
9.8.2. Standaryzacja internetu lata siedemdziesite .................................. 374
9.8.3. Rekonstrukcja i zmiana nazwy internetu lata osiemdziesite ......... 376
9.8.4. Pajczyna lata dziewidziesite ..................................................... 379
9.9. Korzystanie ze wspczesnego internetu ............................................................ 384
9.9.1. URL ...................................................................................................... 385
9.9.2. Przeszukiwanie sieci WWW ................................................................ 386
9.9.3. Wyszukiwanie uytkownikw i domen ............................................... 386
14
Spis treci
15
11.6.5. Wymuszanie kompilacji ....................................................................... 429
11.6.6. Makra .................................................................................................... 430
11.6.7. Obsuga archiwum za pomoc make .................................................... 431
11.6.8. Inne moliwoci make .......................................................................... 432
11.7. Program profilujcy GNU gprof .................................................................... 432
11.8.Szukanie bdw w programie gdb ................................................................ 433
11.8.1. Przygotowywanie programu do debugowania ..................................... 434
11.8.2. Uruchamianie debuggera ...................................................................... 435
11.8.3. Uruchamianie programu ....................................................................... 435
11.8.4. Wywietlanie kodu rdowego ........................................................... 436
11.8.5. Ustawianie punktw wstrzymania ........................................................ 437
11.8.6. Wykonywanie krokowe ........................................................................ 439
11.8.7. Sprawdzanie wartoci zmiennych ........................................................ 439
11.8.8. Olnienie ............................................................................................... 441
11.9. Gdy ju skoczye strip ................................................................................ 442
16
Spis treci
17
13.5. Wejcie i wyjcie ................................................................................................ 566
13.5.1. Obiekty wejcia-wyjcia ....................................................................... 566
13.5.2. Wywoania systemowe wejcia-wyjcia .............................................. 567
13.5.3. Buforowanie wejcia-wyjcia ............................................................... 567
13.5.4. Funkcje wejcia-wyjcia dla zwykego pliku ....................................... 568
13.5.5. Funkcje wejcia-wyjcia do katalogu ................................................... 571
13.5.6. Montowanie systemw plikw ............................................................. 571
13.5.7. Tumaczenie cieek dostpu ............................................................... 572
13.5.8. Funkcje wejcia-wyjcia dla plikw specjalnych ................................. 573
13.6. Komunikacja midzyprocesowa ......................................................................... 576
13.6.1. Sygnay ................................................................................................. 576
13.6.2. Potoki .................................................................................................... 579
13.6.3. Gniazda ................................................................................................. 580
Rozdzia 2.
Cel
W przeszoci, gdy kto zostawa nowym uytkownikiem UNIX-a, system przewanie udostpniany by w miejscu pracy uytkownika lub w szkole. Linux jest systemem popularnym zarwno na uniwersytetach, jak i w rodowiskach biznesowych, ale
stanowi on take wietny system operacyjny dla uytku osobistego. Z tego powodu
moesz rozway zainstalowanie Linuksa. Ten rozdzia uczyni to mniej stresujcym.
Wymagania wstpne
Ten rozdzia bdzie na pewno przydatny pocztkujcym, ktrzy nie mieli jeszcze stycznoci z Linuksem. Oglna znajomo zagadnie zwizanych z komputerami oraz lektura rozdziau 1., Czym jest Linux?, bdzie na pewno bardzo pomocna.
Zakres
W tym rozdziale omwi kwestie zwizane z wyborem waciwej dystrybucji Linuksa,
metody jej zdobycia i sposb instalacji systemu. Poniewa kada instalacja jest inna,
bdziesz musia sign do przewodnika instalacji lub innej dokumentacji dystrybucji,
ktr bdziesz chcia zainstalowa.
46
Sposb prezentacji
Rozpoczniemy od przejrzenia sprztu wymaganego do uruchomienia Linuksa oraz popularnych dystrybucji Linuksa, z ktrych prawdopodobnie bdziesz wybiera. Gdy ju zadecydujesz, ktr zainstalowa, omwimy kwestie zwizane z zainstalowaniem Linuksa.
2.1. Wstp
By moe signe po t ksik, aby dowiedzie si, jak korzysta z Linuksa w miejscu, gdzie jest ju zainstalowany. W takim przypadku z lektury tego rozdziau dowiesz
si po prostu, w jaki sposb przebiegaa instalacja. Moesz jednak zacz korzysta
z Linuksa, nie przeprowadzajc wasnej instalacji.
Rwnie prawdopodobne jest to, e potrzebujesz lub chcesz uruchomi Linuksa na
wasnym komputerze (np. w domu). W takim przypadku musisz zdoby dystrybucj
i j zainstalowa, zanim przystpisz do prawdziwej pracy.
Ilo moliwych alternatyw, jakie s dostpne, moe by przytaczajca. Poniewa
moesz wybra dowoln dystrybucj, nie mog przedstawi szczegowego opisu instalacji dla kadej z nich. Gdybym wybra jedn dystrybucj i na jej podstawie pisa t
ksik, byaby on znacznie mniej przydatna dla osb, ktre wybray inn dystrybucj
(a na pewno byaby to wikszo czytelnikw). Aby jak najwicej osb odnioso korzy z przeczytania tego rozdziau, nie ograniczymy si do omwienia jednej dystrybucji, ale omwimy liczne kwestie i decyzje, jakie naley uwzgldni podczas instalacji
dowolnej dystrybucji Linuksa. Powiniene zapozna si z dokumentacj instalacji doczon do wybranej dystrybucji.
47
systemw). Jednak poza typowymi procesorami dla PC, produkowanymi przez firmy
takie jak Intel, AMD i Cyrix, istniej inne rodziny procesorw, na ktrych Linux moe
pracowa1:
t 68000 (Motorola),
t Alpha (DEC, stanowicy teraz cz HP),
t Itanium (HP i Intel),
t MIPS (SGI),
t PA-RISC (HP),
t PowerPC (IBM i Freescale Semiconductor, niegdy cz Motoroli),
t RS6000 (IBM),
t SPARC (Sun Microsystems),
t Vax (DEC, stanowicy teraz cz HP).
Procesor Intel Pentium I jest najstarszym procesorem Intela, jakiego mgby uy.
Niektre dystrybucje s kompilowane specjalnie dla Pentium, wic nie bd one dziaa
na starszych procesorach, ale nawet jeeli na systemie 80486 uda si uruchomi Linuksa, wydajno pozostawi wiele do yczenia. Odkryem, e Pentium II (z odpowiedni
iloci pamici) wystarczy do wikszoci zastosowa.
2.2.3. Pami
Jak kady rozbudowany system operacyjny, take Linux wymaga znacznej iloci pamici do wydajnej pracy. Tabela 2.1 przedstawia zalecan ilo pamici dla rnego
typu instalacji.
1
Oprcz wymienionych obecnie coraz wiksz popularnoci ciesz si procesory ARM uywane
przede wszystkim w urzdzeniach mobilnych przyp. tum.
48
64 MB
128 MB
Linux bdzie dziaa na systemach z mniejsz iloci pamici, ale jego wydajno bdzie
pozostawiaa wiele do yczenia. Oczywicie im wicej pamici jest zainstalowane w systemie, tym lepiej.
2.2.4. Dysk
W zasadzie kady system operacyjny zajmuje wicej przestrzeni na dysku wraz z kad
now edycj i Linux nie stanowi tu wyjtku. Pena instalacja Linuksa, w zalenoci
od wybranej dystrybucji, wymaga okoo 3 gigabajtw2 (GB) przestrzeni na dysku. Na
szczcie mona ograniczy ilo potrzebnego miejsca i nie straci przy tym na uytecznoci systemu. Tabela 2.2 przedstawia oszacowan przestrze wymagan dla najczstszych sposobw uytkowania Linuksa.
Wikszo komputerw opartych na procesorach Intel wyposaona jest w dyski twarde
wykorzystujce interfejs IDE (ang. Integrated Device Electronics), z ktrymi Linux
dobrze wsppracuje. Niektre wyszej klasy komputery PC mog korzysta z dyskw SCSI (ang. Small Computer Systems Interface) i mimo e Linux jest dostarczany
ze sterownikami dla SCSI, jdro uruchamiajce system nie zawsze je odnajduje przy
ustawieniach domylnych. By moe zajdzie konieczno signicia do przewodnika
instalacji3, aby dowiedzie si, jak zaadowa sterowniki SCSI, gdy Linux nie widzi
dyskw podczas adowania systemu.
Tabela 2.2. Zalecana ilo miejsca na dysku twardym
May system, bez wikszoci dodatkowego oprogramowania
Od 500 MB do 1 GB
1 2 GB
2 4 GB
4 12 GB (w zalenoci
od wybranej dystrybucji)
49
2.3.1. Debian
Debian GNU/Linux jest prawdziwie niekomercyjn dystrybucj Linuksa, ktra jest zarzdzana i rozwijana przez ochotnikw rozsianych po caym wiecie, a nie przez jakiekolwiek przedsibiorstwo. Debian jest dostpny dla wikszej liczby platform systemowych ni wikszo pozostaych dystrybucji.
50
2.3.2. Fedora
Zaoony w 1994 roku Red Hat, Inc. by wczesnym i bez wtpienia odnoszcym najwiksze sukcesy komercyjnym producentem dystrybucji Linux. Z biegiem czasu Red
Hat skupi si na klientach biznesowych, ktrzy oczekiwali wikszego wsparcia dla systemu uywanego w celach komercyjnych. Po wdroeniu programu szkoleniowego Red
Hat Certified Engineer przedsibiorcy uzyskali pewno, e informacje, uaktualnienia
i wsparcie techniczne bd dostpne jeszcze przez dugi czas.
Sukces oddali Red Hata od mniejszych klientw i pojedynczych uytkownikw Linuksa.
Aby nie zaniedba tej wielkiej i lojalnej grupy uytkownikw, Red Hat powoa Projekt
Fedora4, ktry w odrnieniu od komercyjnej wersji systemu jest zarzdzany przez
wsplnot uytkownikw. Jego celem jest szybkie rozwijanie dystrybucji, tak wic jest
ona pena nowych rozwiza, co odbija si nieco na stabilnoci. Dystrybucja dostarczana przez Projekt Fedora znana jest jako Fedora Core Linux i jest popularna dziki atwoci instalacji oraz uytkowania. Pomimo e Red Hat sponsoruje Projekt Fedora,
nie udziela on wsparcia technicznego uytkownikom dystrybucji Fedora Core, w przeciwiestwie do wasnych, komercyjnych dystrybucji.
Jak wikszo twrcw dystrybucji, Red Hat doda kilka rozszerze do podstawowego systemu GNU/Linux. Fedora Core dostarczana jest z graficznym narzdziem do partycjonowania dyskw, a take z wasnym programem zarzdzania pakietami (ang. Red
Hat Package Manager RPM), ktry jest uywany take w wielu innych dystrybucjach.
W 2002 roku powstaa polska dystrybucja oparta na Fedora Core Aurox. Wicej informacji
na jej temat uzyskasz w witrynie http://www.aurox.org przyp. tum.
51
2.3.3. Mandriva
Mandriva Linux wywodzi si z dystrybucji Mandrake, ktra z kolei bazowaa na Red
Hacie. W 2005 roku firma Mandrake poczya si z firm Conectiva i zmieniona zostaa nazwa zarwno firmy, jak i dystrybucji na Mandriva. Z dystrybucj dostarczane jest
bardzo wygodne graficzne centrum sterowania (Centrum Sterowania Mandriva Linux).
Mandriva korzysta z pakietw RPM, a oprcz tego posiada narzdzie dziaajce w trybie
tekstowym urpmi, ktre pozwala na przeprowadzanie aktualizacji pakietw (i caego
systemu) na zasadzie podobnej do aplikacji apt-get, znanej z Debiana. Dystrybucja ta
jest publicznie dostpna, jednak uytkownicy opacajcy abonament Mandriva Club
maj specjalne przywileje, w tym np. gosowanie, ktre programy maj zosta wczone do nastpnej dystrybucji. Wicej informacji na temat tej dystrybucji znajdziesz
w witrynie:
http://www.mandriva.pl.
2.3.4. Slackware
Slackware Linux by pierwsz dystrybucj Linuksa utworzon przez Patricka J. Volkerdinga (zreszt dalej aktywnie uczestniczcego w jej rozwoju) podczas studiw na uniwersytecie stanowym Moorhead w Minnesocie. Podobnie jak Debian, Slackware jest
niekomercyjn dystrybucj i stara si pozosta bardziej tradycyjn i zblion do czystej
dystrybucji Linuksa.
Instalacja przeprowadzana jest w trybie tekstowym, a nie graficznym, co moe przeraa pocztkujcych uytkownikw. Aby zainstalowa system, naley zaadowa jdro,
a nastpnie uruchomi narzdzie do partycjonowania dysku (fdisk lub cfdisk), po czym
uruchomi program konfiguracyjny. Podobnie jak w Debianie, system X Window moe
zosta skonfigurowany dopiero po instalacji, wic pocztkowo Slackware nie jest wyposaony w graficzny interfejs uytkownika.
52
2.3.5. SuSE
SuSE Linux powsta w Niemczech i by bardzo popularny w Europie. Jest on pochodn
Slackwarea, ale posiada te cechy typowe dla komercyjnych dystrybucji. SuSE naley
teraz do Novella i pomau staje si ulubion dystrybucj w Stanach Zjednoczonych.
SuSE posiada wasne graficzne narzdzie suce do instalacji i konfiguracji, zwane YaST
(jest to skrt od angielskiego Yet another Setup Tool kolejne narzdzie instalacyjne). YaST wykonuje ca instalacj (czasem, co jest przykre, w trybie tekstowym),
wczajc w to dzielenie dysku na partycje, a take jest gwnym narzdziem sucym
do konfiguracji dziaajcego systemu. To rozwizanie jest bardzo wygodne i zapewnia miejsce w systemie, w ktrym mona wykona kade zadanie zwizane z konfiguracj i aktualizacj systemu. SuSE dostarcza take narzdzie do konfiguracji systemu
X Window o nazwie SaX2. Podobnie jak wiele innych dystrybucji, SuSE korzysta z pakietw RPM.
Wicej informacji na temat SuSE znajdziesz w witrynie:
http://www.suse.com.
2.3.6. TurboLinux
Podczas gdy amerykaskim czytelnikom TurboLinux moe nie przypa do gustu, spodoba si on uytkownikom z innych czci wiata. TurboLinux jest wiodc dystrybucj
Linuksa w Azji i jest tam bardzo popularna, poniewa wietnie obsuguje wielobajtowe
jzyki (a wic dobrze dziaa w wersji chiskiej, japoskiej i koreaskiej). TurboLinux
zawiera atwy w uyciu program instalacyjny. Jest on wasnoci firmy Livedoor, firmy
informatycznej z siedzib w Tokio, ktra nabya go w roku 1994.
Wicej informacji na temat dystrybucji TurboLinux znajdziesz w witrynie:
http://www.turbolinux.com.
53
54
2.4.2.1. GNOME
GNOME wyrs z kodu napisanego dla bibliotek obsugi obrazw GNU. Posiada pulpit
uytkownika, jak rwnie platform rozwojow dla aplikacji graficznych, ktre mog
by tworzone w rnych jzykach. Projektanci dziaajcy przy projekcie GNOME
woyli wiele wysiku w stworzenie wygodnego interfejsu i pooyli duy nacisk na
uyteczno. W tradycji UNIX-a oznacza to prostot, zapewnienie podstawowych
funkcji rodowiska graficznego, bez nadmiernego obciania uytkownika du liczb
opcji. GNOME jest oprogramowaniem otwartym. Rysunek 2.1 przedstawia przykadowy
pulpit GNOME.
2.4.2.2. KDE
Na KDE rwnie skada si pulpit oraz platforma programistyczna. Dostarcza on wicej
aplikacji przeznaczonych dla rodowiska KDE i prbuje zaspokoi wicej potrzeb
rnych uytkownikw. Podczas gdy daje to uytkownikom w szczeglnoci pocztkujcym wicej opcji i moliwoci, sprawia te, e pulpit wydaje si bardziej
zabaaganiony. Niektrym nie podoba si, e korzenie KDE sigaj licencjonowanego
oprogramowania, ale woono wiele wysiku, aby usun te fragmenty, i obecnie KDE
jest w caoci oprogramowaniem otwartym.
Jeeli chcesz zainstalowa tylko jedno z rodowisk, powiniene odwiedzi witryn obydwu projektw i dokadnie poczyta o ich moliwociach:
http://www.kde.org,
http://www.gnome.org.
Mog nawet pokusi si o stwierdzenie, e w obu witrynach czu atmosfer panujc w poszczeglnych rodowiskach, wic jeeli ktra witryna wyda Ci si bardziej
przyjazna i wygodna w uyciu, moe to by pewnego rodzaju wskazwk (rysunek 4.2).
55
56
rozgasza komunikat, ktry mona przetumaczy jako: Kim jestem?, i powinien uzyska w odpowiedzi swoj nazw, adres sieciowy i pozostae informacje potrzebne
do dziaania w sieci.
Jeeli w sieci nie jest wykorzystywany DHCP, wtedy administrator musi przydzieli
(lub pomc Ci wybra):
t nazw hosta dla Twojego komputera,
t adres IP,
t mask sieciow,
t domylny adres bramy,
t adres serwera nazw (DNS).
57
Powiniene te dowiedzie si, czy w sieci wykorzystywany jest protok IP (IPv4), czy
IPv6. Niektre dystrybucje s domylnie ustawione, aby korzystay z protokou IPv6
(najnowszej wersji protokou sieciowego Internet Protocol), jednak w niektrych rodowiskach moe to powodowa problemy z wydajnoci. Jeeli w sieci wci wykorzystywany jest IPv4 (a prawdopodobnie tak wanie jest), powiniene wyczy IPv6.
i broszur.
t Calc arkusz kalkulacyjny.
t Impress program do tworzenia prezentacji z narzdziami umoliwiajcymi
ODBC i JDBC.
Jeeli zamierzasz cokolwiek pisa lub tworzy prezentacje w systemie Linux, instalacja
tych narzdzi jest po prostu koniecznoci. Jeeli chcesz dowiedzie si wicej na temat
OpenOffice.org lub pobra najnowsz wersj, odwied witryn:
http://www.openoffice.org.
58
59
60
wielko kadej partycji powinna by wystarczajco dua, by by przydatna dla systemu, wic nie twrz mniejszych ni 64 MB, nawet jeeli razem bd tworzy partycj
wiksz, ni teoretycznie potrzebujesz.
Jeeli masz dwa dyski, ale wiesz, e jeden jest zdecydowanie szybszy, jeli to moliwe, utwrz na nim partycj wymiany.
Jeeli tworzysz system podwjnego rozruchu lub wielosystemowy z wiksz iloci
dystrybucji Linuksa, moesz utworzy jedn partycj wymiany i skonfigurowa wszystkie dystrybucje tak, aby korzystay z tej samej partycji. Na partycji wymiany nic nie
jest na stae zapisywane. Jest to po prostu obszar, z ktrego korzysta podsystem pamici
wirtualnej, gdy Linux jest uruchomiony. A poniewa zawsze bdzie uruchomiona tylko
jedna dystrybucja, wszystkie mog korzysta z tej samej partycji.
61
Wiele dystrybucji oferuje take jeden lub wicej alternatywnych systemw plikw
z kronik:
t IBM JFS system plikw z kronik zaprojektowany przez IBM;
t ReiserFS bardzo wydajny system plikw z kronik zaprojektowany przez
Hansa Reisera;
t XFS system plikw z kronik utworzony przez SGI.
Moesz wybra dowolny system plikw dostpny podczas instalacji. Wikszo osb
wybiera ext2 lub ext3, chyba e wol bardziej specjalistyczny system plikw lub go
potrzebuj.
62
Katalogi systemowe, ktre s uywane do przechowywania znacznej iloci tymczasowych danych, take nadaj si do zastosowania dla nich osobnego systemu plikw.
Katalog /var jest uywany do przechowywania danych, takich jak pliki przesyane do
drukarki oraz otrzymywane i wysyane wiadomoci e-mail. Jeeli /var stanowi osobn
partycj, wtedy procesy te bd dziaay poprawnie, nawet jeeli inne partycje bd
zapenione. Katalog /tmp jest kolejnym miejscem, w ktrym przechowywane s pliki
tymczasowe. Moe on zosta w ten sposb oddzielony od reszty systemu, na wypadek
gdyby jaki program zapdzi si w liczbie tworzonych plikw.
Nawet katalogi systemowe, takie jak /usr i /opt, gdzie przechowywane s pliki systemowe i opcjonalne oprogramowanie, mog by umieszczane na osobnych partycjach.
Oczywicie rozmieszczenie systemu na osobnych partycjach wymaga wicej pracy, ale
w zalenoci od wykorzystania systemu rezultat moe by wart wysiku.
Ze wzgldu na powszechne uycie ramdysku startowego, ktrego obraz jest przechowywany w /boot,
obecnie lepiej za minimum przyj co najmniej 20 MB przyp. tum.
63
Nowoczesne BIOS-y potrafi startowa z dyskw innych ni pierwszy dysk twardy, lecz moe to
spowodowa dokonanie zmian w konfiguracji standardowego procesu startowego Linuksa przyp. tum.
64
65
Nawet jeeli nie znasz nikogo, kto posiadaby ju kopi, wikszo dystrybucji jest
dostpna do pobrania za darmo lub jest rozpowszechniana na pytach CD za niewielk
opat. Podczas gdy nie ma opaty licencyjnej za oprogramowanie, firmy sprzedajce
dystrybucje Linuksa czsto dostarczaj te noniki, dokumentacj i wsparcie techniczne, wic kupujesz co wicej ni tylko darmowe oprogramowanie.
32,94 z
199 z
239 z
35 z
35 z
20 z
Rnice w cenie najczciej wynikaj z iloci pyt, na ktrych zamieszczona jest dystrybucja, iloci doczonych pakietw i zaczonej dokumentacji (np. przewodnika instalacji).
Linuksa mona kupi w wielu miejscach. Jeeli dobrze poszukasz w internecie, znajdziesz wiele sklepw, w ktrych moesz kupi dystrybucj. Uwaam, e ponisze s
godne polecenia:
http://asseq.pl,
http://sklep.linux.pl.
2.6.2. Pobieranie
Jeeli instalujesz Linuksa w miejscu, gdzie s ju komputery pracujce pod jego kontrol (np. w rednim lub duym przedsibiorstwie czy na uniwersytecie), prawdopodobnie w sieci lokalnej znajduj si obrazy pyt instalacyjnych. Moesz je skopiowa
z innego komputera za pomoc dowolnego z duej liczby narzdzi sieciowych, jeeli
tylko w docelowym komputerze zainstalowana jest karta sieciowa. Porozmawiaj z administratorem systemu lub z kim, kto ma wiedz na ten temat, poniewa szczegy
dotyczce krokw, ktre naley podj, rni si w zalenoci od miejsca przechowywania danych i rodzaju uywanego interfejsu sieciowego.
66
67
dysku CD, natomiast podrcznik instalacji Mandrivy umieszczony jest w pliku installation.htm. Moesz take znale uwagi o instalacji w witrynach internetowych poszczeglnych sponsorw dystrybucji.
2.7.2. Uruchomienie
Najprostszym sposobem, aby rozpocz, jest zaadowanie Linuksa z pyty CD. Jeeli
Twj komputer nie jest zbyt stary, powinien obsugiwa t funkcj. Jeeli nie obsuguje,
powiniene mc zmieni ustawienia rozruchu w programie konfiguracyjnym BIOS,
tak aby jako pierwszy przeszukiwany by napd dyskw CD. Linux rozpoznaje wikszo nowych napdw CD. Jeeli nie moesz dokona rozruchu z pyty CD, bdziesz
potrzebowa dyskietki startowej.
Zauwa, e podczas gdy w wikszoci systemw znajdziesz /dev/fd0 (napd dyskietek), to z pozostaych nazw moesz zobaczy tylko kilka lub adnej, poniewa zaley
to od dyskw zainstalowanych w systemie. Zwr te uwag, e cze z pliku /dev/fd0
do waciwego napdu dyskietek jest tworzone podczas instalacji. Jeeli przeprowadzasz instalacj na laptopie wyposaonym w wymienny napd dyskietek i nie jest on
podczony podczas instalacji, cze nie zostanie poprawnie utworzone. Jeeli podczysz napd dyskietek pniej i Linux nie bdzie mg uzyska dostpu do niego
przez /dev/fd0, wyprbuj inne nazwy urzdze zwizane z IDE (np. u mnie zadziaao
68
/dev/hdc). Jeeli napd CD-ROM jest urzdzeniem IDE, dostp do niego rwnie powinien odbywa si przez ktre z urzdze hd. Jedno z narzdzi sucych do przegldania lub zarzdzania sprztem (np. Hardware Browser (hwbrowser) w Fedora lub
Harddrake w Mandriva) moe pomc w zidentyfikowaniu dyskw.
Kada z partycji dysku twardego rwnie bdzie miaa swoj nazw urzdzenia. Na
przykad pierwsza partycja dysku /dev/hda bdzie nazywa si /dev/hda1, druga partycja /dev/hda2 itd.
Podczas tworzenia partycji i przypisywania im poszczeglnych skadnikw systemu
plikw Linuksa pamitaj, aby zanotowa sobie, ktra partycja zawiera ktry skadnik.
Jeeli tworzysz wiksz liczb partycji, moesz atwo si pogubi, a jeeli nie zrobie
notatek, pniej sobie nie przypomnisz!
Pamitaj te, e niektre narzdzia do partycjonowania dysku nie pokazuj rnicy
midzy partycj gwn a partycjami rozszerzonymi, po prostu nastpuje przeskok
z /dev/hda2 do /dev/hda5 (poniewa /dev/hda4 zostaa utworzona jako partycja rozszerzona). Narzdzie Disk Drake w Mandrivie, jeeli zajdzie taka potrzeba, tworzy
rozszerzone partycje, nie wymagajc wprowadzania adnych ustawie, natomiast Disk
Druid dostarczany z Fedor pozwala wymusi, aby partycja bya partycj gwn,
ale jeeli tego nie okrelisz, sam dokona wyboru.
Wszystkie dystrybucje zawieraj narzdzia fdisk i cfdisk suce do tworzenia partycji. Wikszo twrcw dystrybucji utworzya wasne narzdzia i nie korzysta ju
z tych programw. Niektre, bardziej tradycyjne systemy (np. Debian i Slackware) wci
polegaj na cfdisk (chocia aktualnie rozwijane jest nowe narzdzie instalacyjne dla
Debiana). Narzdzie fdisk jest obsugiwane z wiersza polece, natomiast cfdisk jest
narzdziem penoekranowym, w ktrym dostpne s informacje pomocy.
Niezalenie od tego, ktrego narzdzia uyjesz, oglny schemat postpowania polega
na zdefiniowaniu partycji i ustaleniu miejsca jej montowania (lub ustawienia jej jako
partycji wymiany), a nastpnie zapisaniu tablicy partycji na dysku. Dopki tablica partycji nie bdzie zapisana, adne zmiany na dysku nie zostan dokonane. Gdy ju uaktualnisz tablic partycji, dane znajdujce si na partycjach, ktre nie s duej zdefiniowane, s ju stracone (fizycznie znajduj si one jeszcze na dysku, ale nie ma sposobu9,
aby uzyska do nich dostp), poniewa ustalona jest ju nowa tablica partycji.
Czci partycjonowania jest take formatowanie. Nie jest to konieczne, gdy partycja
nie bya zmieniana i zostaa sformatowana wczeniej. Jednak gdy pozwolisz systemowi
na ponowne sformatowanie wszystkiego, bdziesz mia pewno wyniku. Jeeli nie masz
pewnoci, czy dysk jest w dobrym stanie, zalecabym te przeprowadzenie podczas
formatowania wyszukiwania uszkodzonych blokw (zajmie to wicej czasu, ale zaoszczdzi wielu kopotw, jeeli okae si pniej, e niektre bloki s uszkodzone).
Istniej narzdzia zgadujce poprzedni tablic partycji, naley jednak unika sytuacji,
gdy s potrzebne przyp. tum.
69
70
Chodzi o format czasu ustawiony w zegarze czasu rzeczywistego komputera. Wewntrznie Linux
nadal bdzie korzysta z UTC po naniesieniu odpowiedniej korekty na czas odczytany z zegara
czasu rzeczywistego przyp. tum.
71
gdy nie planujesz ju uruchamia systemu Windows (czyli jeeli instalujesz Linuksa
w miejsce Windows), poniewa po nadpisaniu MBR oryginalny kod rozruchowy Windows przepadnie. Moesz go przywrci przy uyciu Konsoli Odzyskiwania systemu
Windows w Windows XP (lub fdisk, we wczeniejszych wersjach), ale jeeli bdziesz
mia kopoty z ponownym uruchomieniem Windowsa, nie pomoe Ci to. Mimo e programy rozruchowe mog zosta zainstalowane w taki sposb, aby mona byo uruchamia system Windows, zalecabym umieszczenie programu startowego na dyskietce
i pozostawienie bez zmian jego kodu rozruchowego. Jeeli zdecydujesz si nadpisa
MBR, upewnij si, e Windows pojawia si na licie systemw, ktre mona uruchomi, zanim zainstalujesz program rozruchowy na dysku.
Podsumowanie
Lista kontrolna
W tym rozdziale omwiem:
t sprzt potrzebny do uruchomienia Linuksa,
t dostpne dystrybucje Linuksa,
t pakiety Linuksa,
t partycjonowanie dysku i organizacj systemu plikw Linuksa,
t programy i dyskietki rozruchowe,
t sposoby zdobycia wasnej dystrybucji Linuksa.
Quiz
1. Jaka jest minimalna ilo pamici i miejsca na dysku wymagana do komfortowej
pracy Linuksa?
2. Ile partycji podstawowych moe zosta utworzonych na dysku?
3. Jaka jest minimalna liczba partycji konieczna do uruchomienia Linuksa?
4. Czym jest system z podwjnym rozruchem?
5. Jaka jest rnica midzy systemami plikw ext2 i ext3?
6. Opisz funkcje programu rozruchowego.
72
wiczenia
1. Wyszukaj trzy dystrybucje Linuksa, nieomwione w tym rozdziale, i zastanw
Projekty
1. Zdobd dystrybucj Linuksa i j zainstaluj (chyba si tego spodziewae)