You are on page 1of 65

IDZ DO

PRZYKADOWY ROZDZIA
SPIS TRECI

KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG

Red Hat Linux 7.3.


Ksiga eksperta
Autor: Bill Ball
Tumaczenie: Maciej Pasternacki
ISBN: 83-7197-787-5
Tytu oryginau: Red Hat Linux Unleashed
Format: B5, stron: 746

TWJ KOSZYK
DODAJ DO KOSZYKA

CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK

Red Hat to jedna z najwczeniej powstaych i najpopularniejszych dystrybucji Linuksa.


Ksika Red Hat Linux 7.3. Ksiga eksperta to kompletne omwienie tej dystrybucji.
Znajdziesz w niej wszystkie informacje niezbdne, aby zainstalowa i skonfigurowa
Red Hat Linux, jak rwnie nim administrowa oraz przebudowa go w optymalny
sposb. Najpierw dowiesz si, jak przygotowa i zaplanowa instalacj.
Po wskazwkach na temat konfiguracji nastpi wprowadzenie do administracji
systemu, a nastpnie opis zaawansowanych technik administracyjnych. W zdobywaniu
nowych umiejtnoci pomoe Ci take rozdzia o oprogramowaniu uytkowym
i programowaniu.
W ksice zostay omwione:

CZYTELNIA
FRAGMENTY KSIEK ONLINE

Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl

Nowoci w Red Hat Linux 7.3


Przygotowanie do instalacji, instalacj i konfiguracj systemu
Praca w systemie X Window
Zarzdzanie usugami i instalacja oprogramowania
Zarzdzanie uytkownikami
Praca z dyskami i systemami plikw w Linuksie
Konfigurowanie Linuksa do pracy w sieci i w Internecie
Serwer Apache i serwery baz danych MySQL i PostgreSQL, serwery FTP
Konfigurowanie usug poczty elektronicznej i serwera grup dyskusyjnych
Programowanie: C/C++, skrypty powoki i Perl
Programy uytkowe: StarOffice, KDE Office i GNOME

Ksiga eksperta, wbrew nazwie, nie jest przeznaczona wycznie dla ekspertw,
znajcych na wylot Red Hat-a, cho i oni mog z niej skorzysta w celu zapoznania si
ze zmianami wprowadzonymi w wersji tej dystrybucji. Jest to take pozycja dla tych,
ktrzy dopiero chc si sta takimi ekspertami. To ksika, w ktrej znajdziesz
wszystko, co potrzebne do pracy z systemem Red Hat Linux 7.3.

5RKUVTGEK






   

     


Czym jest Red Hat Linux?.....................................................................................................................32
Zalety systemu Red Hat Linux ..............................................................................................................32
Nowoci w dystrybucji Red Hat Linux 7.3 ...........................................................................................34
Red Hat Linux w korporacji ..................................................................................................................35
Red Hat Linux dla maych firm.............................................................................................................36
Dokumentacja systemu Red Hat............................................................................................................36
Zasoby ...................................................................................................................................................37


  !"

#
Wymagania sprztowe...........................................................................................................................41
Lista sprztu ....................................................................................................................................41
Wybr rodzaju instalacji .................................................................................................................45
Zgodno sprztowa ........................................................................................................................45
Krtki opis procesu instalacji ................................................................................................................46
Partycjonowanie dysku przed instalacj i w czasie jej trwania .............................................................48
Instalacja za pomoc metody kickstart ..................................................................................................50
Zasoby ...................................................................................................................................................50


$ !"

%
Planowanie podziau dysku .............................................................................................................53
Wybr programu adujcego ...........................................................................................................54
Wybr metody instalacji........................................................................................................................55
Instalacja z pyty CD-ROM.............................................................................................................55
Uruchomienie instalatora z systemu DOS ......................................................................................55
Tworzenie dyskietek startowych instalatora ...................................................................................56
Instalacja z dysku twardego ............................................................................................................57
Instalacja przez sie.........................................................................................................................57
Instalacja krok po kroku ........................................................................................................................57
Logowanie si i zamykanie systemu .....................................................................................................69
Zasoby ...................................................................................................................................................69

&
'(!" 

)
Konfiguracja myszy i klawiatury ..........................................................................................................71
Konfiguracja karty graficznej i monitora ..............................................................................................75

Red Hat  


  
Konfiguracja karty dwikowej.............................................................................................................77
Wykrywanie i konfiguracja modemu ....................................................................................................78
Zarzdzanie energi ...............................................................................................................................82
Zarzdzanie urzdzeniami PCMCIA.....................................................................................................83
Zasoby ...................................................................................................................................................85

%
  ***

+)
Filozofia Linuksa...................................................................................................................................87
Organizacja plikw .........................................................................................................................88
Korzystanie z konsoli tekstowej ............................................................................................................90
Korzystanie z klawiatury.................................................................................................................91
Poruszanie si w systemie plikw .........................................................................................................92
Zarzdzanie plikami ..............................................................................................................................93
Wprowadzenie do edytorw tekstu .......................................................................................................95
Wprowadzenie do edytora vi...........................................................................................................95
Wprowadzenie do edytora emacs....................................................................................................96
Praca jako root .......................................................................................................................................97
Uprawnienia...........................................................................................................................................98
Dokumentacja ......................................................................................................................................101
Zasoby .................................................................................................................................................101

,
- . 

/
Podstawowe pojcia X.........................................................................................................................104
Przegld XFree86 ................................................................................................................................104
Plik XF86Config-4 ........................................................................................................................106
Konfiguracja X ....................................................................................................................................109
Program xf86cfg............................................................................................................................109
Program Xconfigurator .................................................................................................................110
Program xf86config.......................................................................................................................115
Uruchamianie X...................................................................................................................................126
Konfiguracja gdm..........................................................................................................................127
Konfiguracja kdm..........................................................................................................................128
Konfiguracja xdm ................................................................................................................................128
Uycie polecenia startx........................................................................................................................129
Menedery okien X .............................................................................................................................130
Meneder okien twm .....................................................................................................................131
Meneder okien FVWM2..............................................................................................................132
Meneder okien Window Maker...................................................................................................133
Meneder okien mwm ...................................................................................................................134
rodowiska graficzne GNOME i KDE .........................................................................................134
Ximian GNOME ...........................................................................................................................137
Zasoby .................................................................................................................................................137

   


  
)
01 

&
Procedura startowa Red Hat Linuksa ..................................................................................................141
Poziomy startowe Red Hat Linuksa ....................................................................................................143
Jak dziaaj poziomy startowe.......................................................................................................144

  

Kontrolowanie startu systemu .............................................................................................................147


Graficzne narzdzia administracyjne...................................................................................................149
Uruchamianie i zatrzymywanie usug .................................................................................................150
Zmiana poziomu startowego ...............................................................................................................151
Zasoby .................................................................................................................................................151

+
01  2 

%
System pakietw RPM ........................................................................................................................154
Tekstowe i graficzne programy klienckie RPM ..................................................................................155
Wywoanie rpm z linii polece .....................................................................................................156
Organizacja pakietw ....................................................................................................................157
Graficzne interfejsy RPM..............................................................................................................158
Program gnorpm............................................................................................................................159
Program kpackage .........................................................................................................................160
Narzdzia do monitorowania systemu.................................................................................................161
Monitorowanie systemu w konsoli tekstowej .....................................................................................161
Wykorzystanie priorytetu szeregowania procesu..........................................................................163
Graficzne narzdzia monitorujce.................................................................................................163
Graficzne narzdzia do zarzdzania procesami i systemem................................................................165
Narzdzia monitorujce GNOME .................................................................................................166
Przydziay dysku..................................................................................................................................167
Zasoby .................................................................................................................................................168

#
01 3**

,#
Definicje uytkownikw......................................................................................................................170
Stereotypy......................................................................................................................................170
Cel istnienia zwykych uytkownikw .........................................................................................171
Praca jako root .....................................................................................................................................171
Przydzielanie uytkownikom praw superuytkownika.................................................................172
Grupy uytkownikw ..........................................................................................................................175
Do czego su wszystkie grupy?..................................................................................................176
Bezpieczestwo i hasa ........................................................................................................................176
Plik hase .......................................................................................................................................176
Hasa cieniowane...........................................................................................................................177
Bezpieczestwo hase....................................................................................................................179
Katalogi domowe nowych uytkownikw............................................................................................180
Tworzenie kont uytkownikw z linii polece....................................................................................180
Hurtowa zmiana hase ...................................................................................................................182
PAM ..............................................................................................................................................182
Inne polecenia zarzdzajce uytkownikami ................................................................................183
Proces logowania si do systemu ........................................................................................................184
Logi systemowe.............................................................................................................................185
Graficzne narzdzia administracyjne...................................................................................................185
Program kuser ...............................................................................................................................185
Meneder uytkownikw Red Hata ..............................................................................................188
Program zmiany hase Red Hata ...................................................................................................188
Przydziay dysku..................................................................................................................................189
Komunikacja z uytkownikami ...........................................................................................................190
Widzie, co kto robi ......................................................................................................................190

Red Hat  


  
Maksymalna kontrola ograniczona powoka systemu....................................................................190
Polecenie chroot ............................................................................................................................191
Zasoby .................................................................................................................................................191

 /
01   *4

#
Historia systemw plikw Linuksa .....................................................................................................194
Dziaanie dysku ...................................................................................................................................197
Tablica partycji ....................................................................................................................................198
fdisk ...............................................................................................................................................198
sfdisk .............................................................................................................................................200
GNUparted ....................................................................................................................................202
Pliki......................................................................................................................................................202
Nazewnictwo urzdze blokowych i znakowych................................................................................204
Tworzenie urzdze przy uyciu polecenia mknod ............................................................................204
Urzdzenia znakowe, blokowe i specjalne ..........................................................................................205
Systemy plikw aktualnie dostpne w systemie..................................................................................205
Systemy plikw obsugiwane przez Linuksa.......................................................................................206
Sieciowe systemy plikw ..............................................................................................................206
Dyskowe systemy plikw..............................................................................................................206
Blisze spojrzenie na system plikw ext2.....................................................................................207
Przegldanie systemu plikw ext2 ................................................................................................209
Alternatywne systemy plikw Linuksa ...............................................................................................210
Ext3 ...............................................................................................................................................211
Dostpno ....................................................................................................................................212
Spjno danych a prdko .........................................................................................................213
System plikw ReiserFS ...............................................................................................................213
JFS i XFS ......................................................................................................................................214
Systemy plikw DOS ..........................................................................................................................214
vfat, FAT12, FAT16 i FAT32.......................................................................................................214
umsdos...........................................................................................................................................214
Systemy plikw CD-ROM ..................................................................................................................215
iso9660 ..........................................................................................................................................215
UDF...............................................................................................................................................216
Tworzenie systemw plikw ...............................................................................................................216
mke2fs ...........................................................................................................................................217
mkfs.ext3 .......................................................................................................................................217
mkreiserfs ......................................................................................................................................218
mkdosfs .........................................................................................................................................219
Montowanie systemw plikw............................................................................................................219
Dlaczego systemy plikw trzeba montowa? ...............................................................................220
Gdzie montuje si systemy plikw?..............................................................................................220
Polecenie mount ............................................................................................................................220
umount...........................................................................................................................................221
Automatyczne montowanie plik fstab ............................................................................................221
Pozostae pola................................................................................................................................223
Przykadowy plik fstab..................................................................................................................223
Edycja pliku fstab..........................................................................................................................223
Macierze RAID....................................................................................................................................224
Czym jest RAID? ..........................................................................................................................224

  

Przenoszenie systemu plikw..............................................................................................................225


LVM ....................................................................................................................................................227
Narzdzia graficzne do montowania systemw plikw ......................................................................227
Program e2label.............................................................................................................................228
Przykady .............................................................................................................................................229
Tworzenie testowego systemu plikw ..........................................................................................229
Krok pierwszy tworzenie pustego pliku...................................................................................229
Krok drugi tworzenie systemu plikw .....................................................................................229
Krok trzeci montowanie testowego systemu plikw................................................................230
Polecenie dumpe2fs.......................................................................................................................231
Montowanie partycji tylko do odczytu podczas pracy systemu....................................................232
Przegldanie zawartoci dyskietek instalacyjnych........................................................................232
Zagldanie do RAM-dysku startowego.........................................................................................232
Optymalizacja dziaania dysku ............................................................................................................233
Optymalizacja dziaania dysku w BIOS-ie i jdrze systemu ........................................................233
Polecenie hdparm ..........................................................................................................................234
Optymalizacja dziaania systemw plikw .........................................................................................237
Polecenie mke2fs...........................................................................................................................237
Polecenie tune2fs...........................................................................................................................238
Polecenie e2fsck ............................................................................................................................238
Polecenie badblocks ......................................................................................................................239
Opcja montowania noatime...........................................................................................................240
Zasoby .................................................................................................................................................240


'  5 !65
  

&
Po co waciwie potrzebne s kopie zapasowe? ..................................................................................244
Waciwy sposb wykonywania kopii ..........................................................................................245
Strategie tworzenia kopii...............................................................................................................246
Najlepszy schemat tworzenia kopii .....................................................................................................249
Przegld dostpnego sprztu ...............................................................................................................249
Jedynie suszny nonik ........................................................................................................................251
Podstawowa decyzja............................................................................................................................251
Oprogramowanie do tworzenia kopii zapasowych..............................................................................252
tar...................................................................................................................................................252
cpio ................................................................................................................................................253
Odtwarzanie danych z archiww tar i cpio ...................................................................................254
dump i restore................................................................................................................................254
ark..................................................................................................................................................255
Taper..............................................................................................................................................255
dd ...................................................................................................................................................257
Amanda .........................................................................................................................................257
Oprogramowanie komercyjne .......................................................................................................258
Kopiowanie plikw..............................................................................................................................259
Kopiowanie plikw za pomoc programu tar ...............................................................................259
Kopiowanie plikw poleceniem cp ...............................................................................................260
Kopiowanie plikw przy uyciu polecenia cpio ...........................................................................260
Kopiowanie plikw za pomoc programu mc...............................................................................261
Szeroki wybr ...............................................................................................................................261

10

Red Hat  


  
Ratowanie systemu ..............................................................................................................................262
Kopiowanie i odtwarzanie gwnego sektora startowego.............................................................262
Tekstowa kopia tablicy partycji ....................................................................................................263
Odtwarzanie MBR przy uyciu programu fdisk ...........................................................................263
Formatowanie z opcj -S...............................................................................................................264
Odzyskiwanie skasowanego pliku ................................................................................................264
Odzyskiwanie katalogu .................................................................................................................264
Odzyskiwanie przy uyciu mc ......................................................................................................265
Uruchamianie systemu z pyty ratunkowej .........................................................................................265
Uruchamianie systemu z dyskietki startowej ......................................................................................266
Dyskietka startowa GRUB ............................................................................................................266
Awaryjne uruchamianie systemu z pyty instalacyjnej .......................................................................267
Zasoby .................................................................................................................................................268

   !  


"#

7*

)
Obsuga drukarki w Red Hat Linuksie ................................................................................................273
Tworzenie drukarek lokalnych......................................................................................................276
Konfiguracja drukarek sieciowych......................................................................................................280
Drukowanie przez SMB ......................................................................................................................282
Narzdzia druku...................................................................................................................................283
Zasoby .................................................................................................................................................285

 
! !

+)
TCP/IP .................................................................................................................................................288
Porty ..............................................................................................................................................289
Sieci .....................................................................................................................................................289
Podsieci .........................................................................................................................................290
Maski podsieci...............................................................................................................................290
Adresowanie..................................................................................................................................290
Urzdzenia sieciowe ............................................................................................................................291
Karty sieciowe...............................................................................................................................291
Kable sieciowe ..............................................................................................................................294
Huby ..............................................................................................................................................295
Routery i switche...........................................................................................................................295
Narzdzia konfiguracyjne....................................................................................................................296
Konfiguracja z linii polece ..........................................................................................................296
Pliki konfiguracyjne ......................................................................................................................300
Graficzne narzdzia konfiguracyjne..............................................................................................303
Protok DHCP....................................................................................................................................305
Instalacja........................................................................................................................................307
Konfiguracja..................................................................................................................................308
Dyski sieciowe NFS ............................................................................................................................310
Instalacja NFS ...............................................................................................................................310
Konfiguracja serwera NFS ............................................................................................................311
Konfiguracja klienta NFS..............................................................................................................312
Samba ..................................................................................................................................................313
Konfiguracja Samby......................................................................................................................313
Montowanie udziaw ...................................................................................................................317

  

11

Sieci bezprzewodowe ..........................................................................................................................318


Sieci komrkowe...........................................................................................................................318
Sieci bezprzewodowe ....................................................................................................................318
Standard IEEE 802.11 ...................................................................................................................319
Bezpieczestwo sieci bezprzewodowych......................................................................................319
Bezpieczestwo ...................................................................................................................................320
TCP/IP i sieci ................................................................................................................................321
Urzdzenia.....................................................................................................................................321
DHCP ............................................................................................................................................321
Narzdzia konfiguracyjne .............................................................................................................321
NFS................................................................................................................................................322
Samba ............................................................................................................................................322
Aktualnoci....................................................................................................................................322
Najnowsze wersje..........................................................................................................................322
Zasoby .................................................................................................................................................323
Oglne ...........................................................................................................................................323
DHCP ............................................................................................................................................323
Sieci bezprzewodowe ....................................................................................................................323
Bezpieczestwo .............................................................................................................................323

 &
01 78.

 %
Dziaanie DNS.....................................................................................................................................326
Translacja adresw w praktyce .....................................................................................................328
Translacja odwrotna ......................................................................................................................330
Czego nauczy si resolver? ..........................................................................................................332
BIND ...................................................................................................................................................333
Podstawowa konfiguracja .............................................................................................................334
Prawdziwa domena .......................................................................................................................341
Odnajdywanie problemw...................................................................................................................345
Problemy z delegacj ....................................................................................................................345
Problemy z translacj odwrotn ....................................................................................................345
Numery seryjne .............................................................................................................................346
Pliki stref .......................................................................................................................................346
Narzdzia.......................................................................................................................................347
Bezpieczestwo ...................................................................................................................................347
Bezpieczestwo systemu UNIX....................................................................................................348
Bezpieczestwo DNS ....................................................................................................................349
Zasoby .................................................................................................................................................353

 %
91!  $   

%%
Konfiguracja interfejsu localhost.........................................................................................................355
Konfiguracja PPP ................................................................................................................................357
Rczne czenie si z serwerem dial-up: pppd i polecenie chat....................................................357
Graficzna konfiguracja poczenia dial-up: redhat-config-network .............................................359
Nawizywanie poczenia PPP programem redhat-control-network............................................363
Poczenia DSL PPPOE ......................................................................................................................363
Wdzwaniane serwery PPP ...................................................................................................................364
Zasoby .................................................................................................................................................365

12

Red Hat  


  

 ,
.   !6

,)
Instalacja serwera ................................................................................................................................368
Instalacja z pakietu RPM...............................................................................................................369
Instalacja z kodu rdowego ........................................................................................................370
Konfiguracja ........................................................................................................................................372
Edycja pliku httpd.conf .................................................................................................................373
Pliki .htaccess ................................................................................................................................375
Dyrektywa Options .......................................................................................................................375
Dyrektywa AllowOverride ............................................................................................................375
Autoryzacja i kontrola dostpu............................................................................................................376
Ograniczanie dostpu dyrektywy Allow i Deny ......................................................................377
Autoryzacja ...................................................................................................................................378
Uwagi kocowe o kontroli dostpu...............................................................................................380
Moduy Apache ...................................................................................................................................381
mod_access....................................................................................................................................381
mod_actions ..................................................................................................................................381
mod_alias ......................................................................................................................................381
mod_asis........................................................................................................................................382
mod_auth .......................................................................................................................................382
mod_auth_anon .............................................................................................................................382
mod_auth_any ...............................................................................................................................383
mod_auth_db .................................................................................................................................383
mod_auth_dbm..............................................................................................................................383
mod_auth_mysql, mod_auth_pgsql ..............................................................................................383
mod_auth_digest ...........................................................................................................................383
mod_autoindex ..............................................................................................................................383
mod_bandwitch .............................................................................................................................383
mod_cern_meta .............................................................................................................................384
mod_cgi .........................................................................................................................................384
mod_dav ........................................................................................................................................384
mod_digest ....................................................................................................................................384
mod_dir .........................................................................................................................................384
mod_env ........................................................................................................................................384
mod_example ................................................................................................................................385
mod_expires ..................................................................................................................................385
mod_headers..................................................................................................................................385
mod_imap......................................................................................................................................385
mod_include ..................................................................................................................................385
mod_info .......................................................................................................................................385
mod_log_agent ..............................................................................................................................386
mod_log_config ............................................................................................................................386
mod_log_referer ............................................................................................................................386
mod_mime.....................................................................................................................................386
mod_mime_magic .........................................................................................................................386
mod_mmap_static .........................................................................................................................386
mod_negotiation............................................................................................................................386
mod_perl........................................................................................................................................386
mod_put.........................................................................................................................................387
mod_python...................................................................................................................................387

  

13

mod_rewrite ..................................................................................................................................387
mod_roaming ................................................................................................................................387
mod_setenvif .................................................................................................................................387
mod_so ..........................................................................................................................................387
mod_speling ..................................................................................................................................388
mod_ssl..........................................................................................................................................388
mod_status.....................................................................................................................................388
mod_throttle ..................................................................................................................................388
mod_unique_id..............................................................................................................................388
mod_userdir...................................................................................................................................389
mod_usertrack ...............................................................................................................................389
mod_vhost_alias............................................................................................................................389
Domeny wirtualne ...............................................................................................................................389
Serwery wirtualne oparte na adresach IP ......................................................................................389
Serwery wirtualne oparte na nazwie hosta ....................................................................................390
Logowanie ...........................................................................................................................................391
Dokumenty dynamiczne ......................................................................................................................392
CGI ................................................................................................................................................393
SSI .................................................................................................................................................394
Sterowanie przepywem ................................................................................................................397
PHP................................................................................................................................................397
Uruchamianie i zatrzymywanie serwera..............................................................................................398
Rczne uruchamianie serwera .......................................................................................................398
Skrypt /etc/rc.d/httpd .....................................................................................................................400
Konfiguracja graficzna ........................................................................................................................400
Inne serwery WWW ............................................................................................................................403
thttpd..............................................................................................................................................403
iPlanet............................................................................................................................................404
Stronghold .....................................................................................................................................404
Zope...............................................................................................................................................404
Zasoby .................................................................................................................................................405

 )
:!6

&/)
Rodzaje baz danych .............................................................................................................................408
Plikowe bazy danych.....................................................................................................................408
Relacyjne bazy danych..................................................................................................................408
Odpowiedzialno administratora bazy danych ..................................................................................409
Wprowadzenie do teorii relacyjnych baz danych................................................................................410
Relacje midzy tabelami ...............................................................................................................411
Wprowadzenie do SQL .......................................................................................................................411
Tworzenie tabel .............................................................................................................................412
Wstawianie danych do tabel..........................................................................................................413
Odczytywanie danych z bazy ........................................................................................................414
Wybr oprogramowania ......................................................................................................................416
MySQL kontra PostgreSQL ................................................................................................................416
Prdko ........................................................................................................................................417
Blokady danych.............................................................................................................................417
Zabezpieczenie przed uszkodzeniem danych................................................................................417
Waciwoci SQL i inna dodatkowa funkcjonalno ....................................................................419

14

Red Hat  


  
Instalacja i konfiguracja MySQL ........................................................................................................420
Inicjalizacja katalogu z danymi.....................................................................................................420
Ustawienie hasa uytkownika MySQL root ................................................................................421
Tworzenie bazy danych.................................................................................................................421
Przyznawanie i odbieranie uprawnie uytkownikom..................................................................422
Instalacja i konfiguracja PostgreSQL ..................................................................................................422
Inicjalizacja katalogu danych ........................................................................................................423
Tworzenie bazy danych.................................................................................................................423
Ustawianie hasa uytkownika postgres........................................................................................424
Tworzenie uytkownikw bazy ....................................................................................................424
Przyznawanie i odbieranie uprawnie...........................................................................................425
Programy klienckie..............................................................................................................................425
Dostp przez telnet lub ssh............................................................................................................425
Lokalny dostp GUI do bazy danych ............................................................................................426
Dostp przez WWW......................................................................................................................427
Tekstowe programy klienckie .............................................................................................................427
Klient tekstowy MySQL ...............................................................................................................428
Klient tekstowy PostgreSQL .........................................................................................................428
Graficzne programy klienckie .............................................................................................................429
Zasoby .................................................................................................................................................429

 +
;<

&
Serwery FTP ........................................................................................................................................432
Instalacja oprogramowania..................................................................................................................432
Uytkownik FTP..................................................................................................................................433
Porzdkowanie instalacji .....................................................................................................................435
Konfiguracja xinetd .............................................................................................................................437
Konfiguracja serwera...........................................................................................................................438
/etc/ftpaccess .................................................................................................................................438
Kontrola dostpu..................................................................................................................................439
autogroup nazwa_grupy klasa [klasa ] ......................................................................................439
class klasa lista_typw maska_adresu [maska_adresu ] ...........................................................439
deny maska_adresu plik_informacji..............................................................................................439
guestgroup grupa [grupa ] .........................................................................................................440
guestuser uytkownik [uytkownik ] ........................................................................................440
limit klasa n czas plik_wiadomoci...............................................................................................440
loginfails ile...................................................................................................................................441
Informacje............................................................................................................................................441
banner plik.....................................................................................................................................441
email adres.....................................................................................................................................441
message plik [warunek [klasa ]]................................................................................................441
readme plik [warunek [klasa ]]..................................................................................................443
Logowanie ...........................................................................................................................................443
log syslog[+xferlog] ......................................................................................................................444
log commands [lista_typw] .........................................................................................................444
log security [lista_typw]..............................................................................................................444
log transfers [lista_typw [kierunki]]............................................................................................444
Kontrola uprawnie .............................................................................................................................445
chmod yes|no lista_typw .............................................................................................................445
delete yes|no lista_typw...............................................................................................................445

  

15

overwrite yes|no lista_typw.........................................................................................................445


rename yes|no lista_typw ............................................................................................................445
umask yes|no lista_typw..............................................................................................................445
Inne ustawienia ....................................................................................................................................446
alias nazwa katalog........................................................................................................................446
cdpath katalog ...............................................................................................................................446
compress yes|no [maska_klasy ] ...............................................................................................446
tar yes|no [maska_klasy ] ..........................................................................................................447
shutdown plik ................................................................................................................................447
/etc/ftpconversions ........................................................................................................................447
/etc/ftpusers ...................................................................................................................................450
/etc/ftphosts ...................................................................................................................................450
Zarzdzanie serwerem .........................................................................................................................451
/usr/bin/ftpwho ..............................................................................................................................451
/usr/bin/ftpcount ............................................................................................................................452
/usr/sbin/ftpshut .............................................................................................................................452
/usr/sbin/ftprestart..........................................................................................................................454
/var/log/xferlog..............................................................................................................................454
Uywanie FTP .....................................................................................................................................456
Interfejs tekstowy ..........................................................................................................................456
Typowa sesja FTP ...............................................................................................................................457
Graficzne klienty FTP .........................................................................................................................460
gFTP ..............................................................................................................................................461
Konqueror......................................................................................................................................462
Zasoby .................................................................................................................................................462

 #
! *!

&,
Wprowadzenie do poczty elektronicznej.............................................................................................463
Wybr MTA ........................................................................................................................................465
Sendmail........................................................................................................................................466
Postfix............................................................................................................................................466
Qmail .............................................................................................................................................466
Podstawy konfiguracji i dziaania programu Sendmail.......................................................................467
Maskarada .....................................................................................................................................468
Leniwe wysyanie..........................................................................................................................468
Tworzenie pliku sendmail.cf .........................................................................................................468
Konfiguracja systemw dial-up ....................................................................................................468
Przekazywanie poczty .........................................................................................................................469
Aliasy...................................................................................................................................................470
Kontrola dostpu Sendmaila................................................................................................................470
Pobieranie poczty ze zdalnych serwerw ............................................................................................471
Instalacja i konfiguracja programu fetchmail................................................................................471
Tekstowe programy klienckie .............................................................................................................474
mail................................................................................................................................................474
Pine................................................................................................................................................476
Mutt ...............................................................................................................................................476
Graficzne programy klienckie .............................................................................................................477
Netscape Messenger ......................................................................................................................477
Balsa ..............................................................................................................................................477

16

Red Hat  


  
Kmail .............................................................................................................................................478
Ximian Evolution ..........................................................................................................................479
Przekierowywanie wiadomoci ...........................................................................................................479
Programy uuencode i uudecode...........................................................................................................479
Zasoby .................................................................................................................................................480

 /
.  *"!6

&+
Wprowadzenie do sieciowych grup dyskusyjnych..............................................................................483
Grupy dyskusyjne..........................................................................................................................483
Protok NNTP..............................................................................................................................485
Rodzaje serwerw grup .................................................................................................................491
Serwer grup INN .................................................................................................................................494
Programy pakietu INN ..................................................................................................................494
Instalacja innd ...............................................................................................................................496
Konfiguracja INN..........................................................................................................................497
Uruchomienie innd ........................................................................................................................506
Pakiet Cleanfeed............................................................................................................................507
Czytniki grup .......................................................................................................................................508
Program slrn ..................................................................................................................................508
Pine................................................................................................................................................509
Program KNode.............................................................................................................................509
Program Pan ..................................................................................................................................511
Zasoby .................................................................................................................................................511

$% " & '



   !!6=>=??

% %
To jzyka C.........................................................................................................................................516
Programowanie w C podstawowe pojcia ...............................................................................516
Elementy jzyka C++ ..........................................................................................................................517
Programowanie w C++ podstawowe pojcia ...........................................................................517
Nazwy plikw ...............................................................................................................................518
Narzdzia do zarzdzania projektami..................................................................................................518
Kompilacja programw przy uyciu make ...................................................................................518
Kompilacja duych programw ....................................................................................................520
Zarzdzanie projektami za pomoc RCS i CVS ...........................................................................521
Narzdzia diagnostyczne...............................................................................................................523
Opcje linii polece kompilatora gcc....................................................................................................524
Dalsze rda informacji......................................................................................................................525
Zasoby .................................................................................................................................................526


.**

% )
Tworzenie i uruchamianie skryptu powoki............................................................................................528
Zmienne ...............................................................................................................................................531
Przypisywanie zmiennej wartoci .................................................................................................531
Odczytywanie zawartoci zmiennych ...........................................................................................532
Parametry pozycyjne ...........................................................................................................................533
Zmienne wbudowane...........................................................................................................................533

  

17

Znaki specjalne ....................................................................................................................................534


Cudzysw .....................................................................................................................................534
Apostrof.........................................................................................................................................536
Backslash.......................................................................................................................................536
Apostrof odwrotny ........................................................................................................................537
Przeprowadzanie porwna.................................................................................................................537
pdksh i bash ...................................................................................................................................537
tcsh ................................................................................................................................................542
Konstrukcje iterujce ...........................................................................................................................545
Polecenie for..................................................................................................................................545
Polecenie while .............................................................................................................................547
Polecenie until ...............................................................................................................................547
Polecenie repeat (tcsh) ..................................................................................................................548
Polecenie select .............................................................................................................................548
Polecenie shift ...............................................................................................................................549
Konstrukcje warunkowe ......................................................................................................................549
Polecenie if ....................................................................................................................................549
Polecenie case ...............................................................................................................................551
Inne polecenia kontrolne .....................................................................................................................553
Polecenie break .............................................................................................................................553
Polecenie exit ................................................................................................................................553
Funkcje ................................................................................................................................................553
Zasoby .................................................................................................................................................554

 
@* 

%%%
Prosty program w Perlu .......................................................................................................................556
Zmienne i struktury danych Perla........................................................................................................557
Rodzaje zmiennych Perla ..............................................................................................................558
Zmienne specjalne.........................................................................................................................559
Operatory .............................................................................................................................................559
Operatory porwnawcze ...............................................................................................................559
Operatory logiczne ........................................................................................................................560
Operatory arytmetyczne ................................................................................................................561
Inne operatory ...............................................................................................................................561
Specjalne stae napisowe ...............................................................................................................562
Konstrukcje warunkowe: if/else i unless .............................................................................................562
Polecenie if ....................................................................................................................................562
Polecenie unless ............................................................................................................................564
Ptle .....................................................................................................................................................564
Polecenie for..................................................................................................................................564
Polecenie foreach ..........................................................................................................................564
Polecenie while .............................................................................................................................565
Polecenie until ...............................................................................................................................565
Polecenia last i next.......................................................................................................................565
Ptle dowhile i dountil...........................................................................................................566
Wyraenia regularne............................................................................................................................566
Dostp do powoki...............................................................................................................................567
Opcje linii polece...............................................................................................................................568
Moduy i CPAN...................................................................................................................................570

18

Red Hat  


  
Przykady kodu ....................................................................................................................................571
Wysyanie wiadomoci e-mail ......................................................................................................572
Czyszczenie logw ........................................................................................................................573
Wysyanie artykuw na grupy dyskusyjne ..................................................................................574
Jednolinijkowce.............................................................................................................................574
Przetwarzanie linii polece ...........................................................................................................575
Narzdzia dla Perla ..............................................................................................................................576
Zasoby .................................................................................................................................................576
Ksiki...........................................................................................................................................576
Usenet............................................................................................................................................577
WWW............................................................................................................................................577
Inne................................................................................................................................................577

 &
01 "1  

%)#
Jdro Linuksa.......................................................................................................................................580
Rekompilacja, kiedy jej dokonywa?..................................................................................................581
Drzewo kodu rdowego jdra...........................................................................................................581
Architektura...................................................................................................................................582
Sterowniki .....................................................................................................................................583
Systemy plikw .............................................................................................................................583
Inicjalizacja systemu .....................................................................................................................585
Komunikacja midzyprocesowa ...................................................................................................586
Kernel ............................................................................................................................................586
Zarzdzanie pamici ....................................................................................................................586
Sie ................................................................................................................................................586
Rodzaje jder .......................................................................................................................................588
Jdro modularne ............................................................................................................................588
Jdro monolityczne .......................................................................................................................589
Wersje jdra .........................................................................................................................................589
aty -ac..........................................................................................................................................590
ciganie kodu rdowego.................................................................................................................590
atanie kodu ........................................................................................................................................591
Kompilacja jdra..................................................................................................................................592
Czynnoci wstpne ........................................................................................................................592
Przygotowanie do kompilacji........................................................................................................593
Rne interfejsy konfiguracyjne..........................................................................................................595
Konfiguracja jdra.........................................................................................................................597
Tworzenie zalenoci ..........................................................................................................................599
Waciwa kompilacja...........................................................................................................................599
Kompilacja i instalacja moduw ........................................................................................................600
Tworzenie RAM-dysku startowego ..............................................................................................600
Konfiguracja programu GRUB ...........................................................................................................601
Konfiguracja programu LILO .............................................................................................................603
Bdy....................................................................................................................................................605
Bdy podczas kompilacji .............................................................................................................605
Bdy w dziaaniu, problemy z programem adujcym, komunikaty Oops...............................606
Zasoby .................................................................................................................................................606

 %
 *!" !

,/)
Instalacja i uruchamianie StarOffice ...................................................................................................608
OpenOffice ..........................................................................................................................................610

  

19

Pakiet biurowy KDE KOffice..............................................................................................................612


Programy biurowe GNOME................................................................................................................615
Programy do obsugi PDA...................................................................................................................618
Programy graficzne..............................................................................................................................619
Zasoby .................................................................................................................................................623

 ,
A    !"

, %
Uywanie emulatora DOSEMU i programw FreeDOS ....................................................................626
Konfiguracja, instalacja i uywanie VMware .....................................................................................629
Uruchamianie sesji VMware .........................................................................................................632
Wykonywanie programw systemu Windows przy uyciu Wine.......................................................637
Emulacja systemu MacOS przy uyciu Basilisk II .............................................................................637
Emulacja systemu MacOS przy uyciu programu Executor ...............................................................638
Zdalna obsuga komputera przy uyciu Xvnc .....................................................................................638
Zasoby .................................................................................................................................................640

(
)*
7 *   

,&%
Strony i wyszukiwarki WWW.............................................................................................................646
Adresy WWW .....................................................................................................................................647
Certyfikaty.....................................................................................................................................647
Obsuga komercyjna......................................................................................................................647
Dokumentacja................................................................................................................................648
Dyskietkowe dystrybucje Linuksa ................................................................................................648
Dystrybucje dla platformy Intela...................................................................................................649
Dystrybucje dla platformy PowerPC.............................................................................................649
Red Hat Linux ...............................................................................................................................649
Linux na laptopach ........................................................................................................................650
X Window System ........................................................................................................................650
Grupy dyskusyjne Usenetu..................................................................................................................651
Listy dyskusyjne ..................................................................................................................................652
IRC.......................................................................................................................................................653

7 *:.* 4B

,%%
Przeszukiwanie bazy danych RPM......................................................................................................655

7 *=.!3!6 ! C

,##
.*

)/)



 

9V[OTQ\F\KCNG


historia systemw plikw Linuksa,

dziaanie dysku,

tablica partycji,

pliki,

nazewnictwo urzdze blokowych i znakowych,

tworzenie urzdze przy uyciu polecenia mknod,

urzdzenia znakowe, blokowe i specjalne,

systemy plikw aktualnie dostpne w systemie,

systemy plikw obsugiwane przez Linuksa,

alternatywne systemy plikw Linuksa,

systemy plikw DOS,

systemy plikw CD-ROM,

tworzenie systemw plikw,

montowanie systemw plikw,

automatyczne montowanie plik fstab,

macierze RAID,

przenoszenie systemu plikw,

LVM,

narzdzia graficzne do montowania systemw plikw,

przykady,

optymalizacja dziaania dysku,

optymalizacja dziaania systemw plikw.

194

   
  
Jednym z najczciej le rozumianych okrele technicznych zwizanych z Linuksem
jest system plikw. Zrozumienie, czym waciwie jest system plikw moe przynie
prawdziwe owiecenie.
System plikw jest czym wicej ni formatem dysku twardego lub dyskietki, czym
wicej ni sam dysk lub proces formatowania; jest on zdefiniowany jako struktura
i zorganizowanie danych na urzdzeniu je przechowujcym. Innymi sowy, jest to sposb, w jaki pliki s przechowywane i uoone na dysku (albo tamie, pycie CD-ROM
lub innym medium). Uniksowe systemy plikw, ktre nas najbardziej interesuj, su
do przechowywania nie tylko danych, ale te metadanych (waciwoci danych waciciel, prawa dostpu i inne dodatkowe informacje).
Projektanci systemw plikw zawsze wydaj si wiedzie lepiej, co skada si na dobry
system plikw. Niektre z systemw plikw s tworzone, aby posun obecn technologi o krok dalej; inne powstaj jako systemy zastrzeone w celu osignicia przewagi
nad konkurencj lub wprowadzenia funkcjonalnoci obecnej jedynie w danym systemie.
Zwykle uytkownicy jakiego systemu operacyjnego musz korzysta z systemu plikw
waciwego dla niego; nawet komercyjne systemy Unix uywaj zastrzeonych systemw plikw i zastrzeonych schematw partycjonowania dysku. Jest to nieprzyjazne
i powoduje niezgodnoci, ale z biznesowego punktu widzenia ma swj sens. Innym, by
moe bardziej znanym przykadem, jest fakt, e uytkownicy systemu Windows 98 mog uywa tylko systemw plikw FAT Microsoftu. W systemie Windows mona zainstalowa sterowniki z obcego rda i uywa innych systemw plikw, ale sam system
musi by uruchamiany z systemu plikw Microsoftu. Uytkownicy Linuksa maj wiksz swobod, mog wybiera spord kilku systemw plikw niektre z nich zapewniaj kompatybilno wstecz, inne wspprac z innymi systemami operacyjnymi,
a jeszcze inne udostpniaj najnowoczeniejsz funkcjonalno, obecn w najlepszych
komercyjnych systemach operacyjnych. Moliwo korzystania z rnych systemw
plikw jest siln stron Linuksa.
System plikw Linuksa jest bardzo skomplikowany, ale wszystkie jego funkcje albo s
wzorowane na funkcjonalnoci dostpnej w komercyjnych systemach uniksowych, albo
po prostu uwaane przez twrcw Linuksa za przydatne. Na szczcie wasny system plikw Linuksa jest odporny na bdy i dziaa bardzo dobrze z domylnymi ustawieniami.
Red Hat zapewni wygodne, atwe w uyciu narzdzie konfiguracyjne uywane podczas
instalacji, ale pniejsza konfiguracja systemw plikw jest przewanie wykonywana
rcznie (albo wcale). Ciekawy czytelnik na pewno znajdzie mnstwo opcji do zabawy.

 
Linux by tworzony na podstawie wzorowanego na Uniksach systemu operacyjnego
minix (innymi sowy, Linus Torvalds uy miniksa do kompilacji Linuksa), wic pierwotnie Linux korzysta dla wygody z systemu plikw miniksa. Przestao to by wygodne, gdy potrzeby Linuksa przerosy ograniczenia i moliwoci poyczonego systemu
plikw. W systemie plikw miniksa najwikszy moliwy rozmiar pliku by rwny
64 MB, wpisy w katalogach miay stay rozmiar, a maksymalna dugo nazwy pliku
wynosia 14 znakw.

   
   

195

Z tymi ograniczeniami uporano si, dodajc do jdra systemu warstw wirtualnego


systemu plikw (VFS Virtual File System). VFS umoliwia obsug rnych systemw plikw ze sterownikami adowanymi jako moduy jdra. Moliwo uycia sterownikw rnych systemw plikw sprawiaa, e dowolny system plikw na dysku dla
systemu operacyjnego wyglda tak samo. Po zaadowaniu odpowiedniego moduu system jest w stanie odczytywa i zapisywa pliki zapisane na dysk przy uyciu prawie
kadego systemu plikw.
Oto spis moduw jdra obsugujcych poszczeglne systemy plikw w Red Hat
Linuksie 7.3.:


adfs Acorn Disk filing system*,

affs systemy plikw komputerw Amiga*,

bfs Boot Filesystem uywany w systemie SCO Unixware,

coda sieciowy system plikw Carnegie Mellon University,

cramfs skompresowany system plikw dla koci ROM,

efs system plikw starych wersji systemu SGI IRIX, uywany take w starych
pytach CD-ROM*,

ext2 rozszerzony system plikw Linuksa wersja 2 (nadal standardowy),

ext3 rozszerzony system plikw Linuksa wersja 3 (dodanie urnalu


do systemu ext2),

fat oglna obsuga systemw plikw Microsoftu z rodziny FAT,

freevxfs darmowa wersja systemu plikw Veritas VxFS uywany w SCO


Unixware, Sun Solaris i HP-UX,

hfs system plikw systemu MacOS,

hpfs system plikw systemu OS/2*,

intermezzo sieciowy system plikw z moliwoci pracy offline,

iso9660 system plikw dla pyt CD-ROM,

jfs IBM Journaled Filesystem,

minix system plikw miniksa,

msdos odmiana systemu plikw FAT uywana w systemie MS-DOS


(FAT12, FAT16),

ncpfs sieciowy system plikw Novell Netware,

nfs uniksowy sieciowy system plikw,

ntfs system plikw Windows NT (tylko do odczytu)*,

qnx4 system plikw systemw operacyjnych QNX4 i QNX6*,

reiserfs system plikw z urnalem,

romfs system plikw dla urzdze tylko do odczytu o maej pojemnoci,

196

   
  


smbfs sieciowy system plikw firmy Microsoft, uywany w systemach


Windows,

tmpfs system plikw przechowujcy pliki w pamici RAM,

sysv Coherent File System (systemy SCO, Xenix, SystemV, Coherent),

udf Univarsal Disk Format (pyty DVD),

ufs systemy BSD, SunOS, NeXTstep,

umsdos nakadka na system MS-DOS umoliwiajca uycie uniksowych


praw dostpu,

vfat odmiana systemu FAT uywana przez systemy Microsoft Windows


(FAT12, FAT16, FAT32 z dugimi nazwami plikw).

Gwiazdk oznaczono systemy plikw, ktrych moduy nie s skompilowane w dystrybucji Red Hat 7.3. Aby z nich korzysta, naley przekompilowa jdro systemu lub
skompilowa same moduy. Dla systemw plikw ext2, iso9660 i tmpfs nie ma moduw, poniewa s one na stae wkompilowane w jdro systemu. Sposb obsugi niektrych spord tych systemw opisany jest na stronie podrcznika systemowego polecenia ; mona te szuka informacji z plikach znajdujcych si w katalogu /usr/src/
linux/Documentation/filesystems.
Jak ju wczeniej wspomniano, nie ma jednego, uniwersalnego schematu partycjonowania dysku. Oprcz powszechnego schematu systemu DOS jdro Linuksa obsuguje
take nastpujce schematy partycjonowania (gwiazdk oznaczono sterowniki nieobecne w jdrze dystrybucji Red Hat 7.3; aby z nich korzysta, naley zrekompilowa jdro
systemu):


Acorn*,

Alpha OS,

Amiga*,

Atari*,

Macintosh,

PC BIOS,

BSD Disklabel,

Minix,

Solaris,

Unixware,

Dynamiczne dyski Windows 2000*,

SGI,

Ultrix*,

Sun.

   
   

197

Nazwa Ultrix moe wydawa si nieznajoma; schemat ten by najpierw uywany


w systemach DEC, nastpnie Compaq, a obecnie HP.

Gdy dokadnie przeszuka si Internet, mona znale jeszcze wicej moduw. Jak to
bywa z otwartymi systemami operacyjnymi, kady obdarzony odpowiednimi umiejtnociami programista moe napisa wasny modu systemu plikw.


Nasza definicja systemu plikw zawiera pojcie urzdzenia przechowujcego dane,
przyjrzyjmy si wic najpowszechniej wykorzystywanemu urzdzeniu dyskowi
twardemu. Dyskietki dziaaj podobnie, z t rnic, e dyski s wymienne.
Z mechanicznego punktu widzenia napd jest metalowym pudekiem, zawierajcym
tzw. talerze pokryte materiaem ferromagnetycznym. Zwykle na tej samej osi znajduje
si kilka talerzy, obracanych jednym silnikiem. Gowice odczytujce i zapisujce po
kadej stronie kadego z talerzy s poruszane drugim silnikiem, ktry umieszcza je nad
obszarem dysku zawierajcym interesujce nas dane. Adres porcji danych na dysku
okrela si, podajc numer cylindra (walcowata powierzchnia, obejmujca dane na
wszystkich talerzach przy okrelonej pozycji gowic numer cylindra okrela wic
pozycj gowic), gowicy (numer i stron talerza) i sektora (porcja danych domylnie
wielkoci 512 bajtw spord danych dostpnych w podanym cylindrze dla podanej
gowicy). Kady dysk posiada elektroniczn kart kontrolera, ktra w porozumieniu
z kontrolerem dysku na pycie gwnej komputera steruje pooeniem gowic.
Zakres kadego z trzech elementw adresy cylindrw, gowic i sektorw (CHS
cylinders, heads, sectors) okrela geometri napdu. Jest ona zwykle wykrywana
przez BIOS i przekazywana dalej do systemu operacyjnego. Linux moe zignorowa
geometri przekazan przez BIOS i wykorzysta wartoci przekazane jako argument
jdra przy starcie systemu. Informacja o geometrii pomaga programowi adujcemu
zlokalizowa na dysku jdro systemu, a jdru pomaga zrozumie organizacj danych
na dysku.
Jeeli przyjrzymy si budowie tablicy partycji i troch policzymy, moemy zauway,
e na zakres wartoci cylindra przeznaczone jest jedynie dziesi bitw, wic aden
dysk nie moe mie wicej ni 1024 cylindry widziane przez BIOS (synny limit 1024
cylindrw). Mona sobie z tym poradzi, zmieniajc nieco adresowanie dysku, czyli
zwikszajc liczb gowic, dziki czemu mona uy wystarczajco maej liczby cylindrw, aby zmiecia si w tablicy partycji. Ten sposb znany jest pod nazw LBA (logical block adressing logiczne adresowanie blokw). Nowoczesne ukady BIOS (wyprodukowane okoo 1998 roku lub pniej) obsuguj t opcj, ale starsze nie. Jako e
geometri dysku mona przekaza do jdra Linuksa przy starcie systemu, nie stanowi to
dla uytkownikw Linuksa takiego problemu, jak dla uytkownikw innych systemw
operacyjnych. Gdy wystpi problemy z obsug duych dyskw, dokadniejsze informacje na ten temat mona znale w dokumentach Large-Disk-HOWTO i BootPrompt-HOWTO.

198

   
  
Pierwszy sektor dysku jest najwaniejszy, poniewa zawiera tablic partycji i kod programu adujcego. Kod ten jest wykonywany po inicjalizacji sprztu przez BIOS. Przekazuje on sterowanie programowi adujcemu, ktry z kolei aduje jdro systemu, oddajc
mu kontrol nad komputerem. Dalsza inicjalizacja przebiega w znany ju nam sposb.
Pierwszy sektor okrelany jest jako MBR Master Boot Record (gwny rekord startowy). Ma dugo 512 bajtw: w pierwszych 446 znajduje si kod startowy, kolejne 64 bajty
zawieraj tablic partycji, a ostatnie dwa specjalny kod identyfikujcy sektor jako tablic partycji (szesnastkowe wartoci 55 i AA). Bardziej szczegowe informacje o MBR
mona znale w rozdziale 11., Kopie zapasowe, odtwarzanie danych, ratowanie systemu [mona przyjrze si szesnastkowej zawartoci MBR, uruchamiajc polecenie 

na danym dysku, wybierajc (dodatkowe funkcje), a nastpnie  (wypisanie zawartoci


tablicy partycji na ekran); polecenie 
zostanie niedugo dokadniej omwione].
Aby utworzy na dysku system plikw, najpierw naley utworzy tablic partycji. Kod
startowy jest zapisany w nastpnej kolejnoci przez program adujcy LILO, GRUB
lub inny, waciwy dla uruchamianego systemu operacyjnego. Aby utworzy system
plikw i przechowywa dane, nie jest potrzebny kod startowy; w zasadzie dyski zainstalowane inaczej ni jako /dev/hda (master na pierwszym kablu) nie bd miay zapisanego kodu startowego miejsce przeznaczone na kod najprawdopodobniej bdzie
puste. W dyskach SCSI kod startowy zostanie zapisany w dysku oznaczonym w BIOSie jako startowy.
Tablica partycji ma miejsce tylko na cztery partycje (gdy format by tworzony, musiano
zaoy, e cztery to cae mnstwo). Aby obej ten problem, jedna z tych czterech partycji (tradycyjnie czwarta) moe zosta uyta jako partycja rozszerzona zajmujca pozosta cz dysku i zawierajca wasn tablic partycji. Moe ona zosta podzielona na
maksymalnie 63 partycje w przypadku dysku IDE i 15 partycji w przypadku dysku SCSI.

   !
Red Hat Linux 7.3 zawiera kilka narzdzi do tworzenia, przegldania i modyfikacji tablicy
partycji. Jedno z nich musiao zosta uyte podczas instalacji systemu. Wybr narzdzia
do pracy z tablic partycji jest kwesti gustu niektrzy lubi tekstowy interfejs linii
polece, podczas gdy inni wol interfejs graficzny. Jako e niektre z omawianych narzdzi mog nie by zainstalowane w systemie, rozpoczniemy od najpowszechniej dostpnych, koczc na graficznych narzdziach Red Hata.


Odpowiednik linuksowego polecenia 
w systemie DOS suy do edycji tablicy
partycji, tworzenia podstawowej struktury dysku (tzw. format niskiego poziomu lowlevel format) i zapisania kodu startowego w sektorze MBR. Linuksowy 
, utworzony w uniksowej tradycji programw wykonujcych jedno zadanie, ale za to dobrze, suy jedynie do edytowania tablicy partycji. Ma to znaczenie przy odzyskiwaniu dysku,
omawianym w rozdziale 11.

   
   

199

Program fdisk naley uruchamia jako superuytkownik (root). Obsuguje on tylko dyski twarde (IDE i SCSI); urzdzenie przekazuje si jako argument. Dyski USB dostpne
s za porednictwem emulacji SCSI i traktowane jak urzdzenia SCSI. Otwrzmy za
pomoc programu fdisk tablic partycji pierwszego dysku IDE w systemie1:
 

 
  

 

 
 


  
 

  

 ! "
  #$#%
  
  

 
%&
!'%&('$&)%&*('$&)

Polecenie  wywietla tekst pomocy2:


+ !
 
+   
    
   
      

 
 
 



 
 
'%&
  


  
,, " 

& 
 
 -
 *

""
 
  

  .
..
   !.
 

Polecenie wywietla zawarto tablicy partycji:


+ !
 
'*"*//01 
 

23 
 00/4/ 
'" 5 &
65 $&
*"*40/1//7 87/(91!#59
*"*0/0/:1/00:;<1#.
*"*101717000:;/(
5&'
*"*777/6.
1

Ilo cylindrw tego dysku jest ustawiona na 4111. Nie ma w tym nic zego, ale jest to wicej ni 1024,
i moe w pewnych przypadkach sprawia kopoty z: 1) oprogramowaniem uruchamianym przy starcie
(np. stare wersje LILO); 2) uruchamianiem innych systemw i partycjonowaniem dysku przy ich uyciu
(np. FDISK systemu DOS lub OS/2).
a przecz flag partycja startowa; b edytuj tablic BSD; c przecz flag zgodnoci z systemem
DOS; d usu partycj; l poka znane typy partycji; m wywietl to menu; n utwrz partycj;
o utwrz now, pust tablic partycji DOS; p poka tablic partycji; q wyjd z programu,
nie zachowujc zmian; s utwrz now, pust tablis partycji Sun; t zmie typ partycji; u zmie
uywane jednostki rozmiaru; v sprawd poprawno tablicy partycji; w zapisz tablic partycji
na dysk i wyjd z programu; x dodatkowe funkcje (tylko dla ekspertw)

200

   
  
*"*/77/17<#.
*"*07/11:/700<1#.
*"*:1:0/<01<;<1#.

Starsze wersje programu fdisk domylnie otwieray dysk /dev/hda, ale autor zdecydowa,
e nie byo to dobrym pomysem, wic teraz trzeba zawsze poda nazw urzdzenia.
Zabawa programem fdisk jest niebezpieczna tylko wtedy, gdy na koniec pracy zapisze
si zmiany w tablicy partycji. Poniewa naley to bezporednio nakaza, mona z czystym sumieniem uruchomi program fdisk i wprowadza dowolne zmiany, pamitajc,
eby nie wychodzi za pomoc polecenia , tylko . Uzbrojony w t wiedz moesz
spokojnie bawi si programem; eby jednak nie mie najmniejszej szansy zepsucia
czegokolwiek, moesz uy opcji  (litery L, nie cyfry 1):
 


Wtedy fdisk tylko wywietli zawarto tablicy partycji, nie wchodzc w tryb edycji.
Aby zachowa kopi tablicy partycji (co zwykle jest dobrym pomysem), mona przekierowa wyjcie polecenia do pliku:
 
   

lub wysa je bezporednio do drukarki:


 

W pierwszym przykadzie uylimy przekierowania powoki , aby skierowa strumie


wyjciowy polecenia do pliku; w drugim uylimy potoku , podajc wyjcie programu
fdisk bezporednio na wejcie programu lpr (zakadajc, e mamy w systemie poprawnie skonfigurowan drukark).


Dziaajcy z linii polece program sfdisk jest opisany na swojej stronie podrcznika
systemowego jako narzdzie o ogromnych moliwociach tylko dla hackerw. Jest to
najprawdopodobniej przykad poczucia humoru programistw, poniewa sfdisk ma
wbudowany szereg zabezpiecze chronicych przed wypadkami przy pracy. Skadnia
polece jest inna ni w programie fdisk, ale prosta i suy zasadniczo do tego samego.
Program sfdisk moe sprawia nieco dziwaczne wraenie podczas uywania. Poniej
przedstawiony jest tekst pomocy3:
3

Sposb uycia:  =>


  (urzdzenie: co w stylu /dev/hda lub /dev/sda).
Przydatne opcje: ? (albo ?? ?@) poka rozmiary partycji; ? poka lub zmie typ partycji;
? poka list partycji kadego z urzdze; ? jak wyej, ale w formacie odpowiednim do pniejszego
przekazania do programu; ? numeracja cylindrw itp. od 1, a nie od 0; ?&, ?5, ?+, ?A uyj
sektorw/blokw/cylindrw/megabajtw jako jednostek rozmiaru; ? wywietl znane tablice partycji;
?' zmarnuj troch przestrzeni w celu uzyskania zgodnoci z systemem DOS; ?B zmu jdro systemu
do ponownego odczytania tablicy partycji; ?C zmie tylko partycj o numerze #; ? nie zapisuj nic
na dysk; ?%  zapisz nadpisywane sektory do pliku; ?$  przywr nadpisane wczeniej
sektory z pliku; ?D wypisz wersj; ?E wypisz t wiadomo. Niebezpieczne opcje: ? poka
geometri dysku (wedug jdra systemu); ?. obsu take partycje rozszerzone; ?# nie narzekaj
na rzeczy bez znaczenia dla Linuksa; ?, wstrzymaj ostrzeenia. Mona take wyczy kontrol
spjnoci opcj ? rb, co mwi, nawet jeli to jest gupie.

   
   

201


 "
 1:! F 777<
2 =  >" 
"  *"*
*"*
   
?=
?? ?@>@ 
 
? =
??>

 
 $
?=
??>
   " 
?=
??> 
 


?=
??
> 
 
 
 

?&?5?+?A *

  
*  * 
*A5
?=
???> 
 
?'=
??'%&>
'%&?   
?B=
??
?
>



  
?C  
  

?   
 
?% " 
  "

  
?$ 

 

?"=
??"
 >
"
 
?E=
??>


  
?=
?? ? 
>

-  

?.=
?? ?.> .
   

. 


 
?#=
??#.>    

"
#.
?,=
??,>


G   "

  



?+=
?? 
> 
  
 
?H=
??> 
  
?&=
?? 
> 
  
 
G       
? =
??
> $" 

Podanie nazwy urzdzenia jako parametru zaowocuje wypisaniem na ekran ostrzeenia:


 

+  ? 
 
5#)BBI9B2
@J@ @ J@KL
 

?

 
  
2   
  
2?? ?

  
  
2??
   "

  

Nawet podanie nazwy urzdzenia jest traktowane jako podejrzane; naley przekaza
opcj , aby zmusi program do otwarcia tablicy partycji. Podczas dalszej pracy mona
spodziewa si kolejnych ostrzee. Aby popeni bd, naley si bardzo postara.
 

+  ? 
 
5#)BBI9B2
@J@ @ J@KL
 

?

 
  
2   
  
2?? ?

  
  
'*"* 
//01 
*
 
% 
23 
 </<      


202

   
  
'" 5 &
6   $&
*"*4;0/0/1?//7 87/(91!#59
*"*0/107/7/:1/00:;<1#.
*"*1071<1:000:;/(
5&'
*"*717:77/6.
*"*/717;7/1?17<#.
*"*07/;1:/1?700<1#.
*"*:1:/;010?/<01<;<1#.
*"*<0;71<1/?/:;
*"*700?1?
$  
M   "
N
ON@ON=6&#P.>ON  =?4>ON ON O
2     N
ON@O!
NO 
*"*

Najwiksz przewag polecenia 


nad programem fdisk jest moliwo pisania
skryptw automatyzujcych jego prac (program nie wywietla wtedy wszystkich
ostrzee). Aby korzysta z programu w sposb interaktywny, naley poda opcj 
z linii polece, jak w poprzednim przykadzie.
Program zawiera kilka przydatnych zabezpiecze uywanych przy manipulacji tablic
partycji; uycie go moe by dobrym wyborem dla wielouytkownikowego systemu
sieciowego.



Starsze wersje dystrybucji Red Hat korzystay podczas instalacji z programu partycjonujcego Disk Druid; starsi uytkownicy Red Hata z pewnoci go uywali. Kod programu Disk Druid zosta zastpiony programem GNUparted (znanym te, od polecenia
uruchamiajcego program, jako parted) edytorem partycji GNU, programem o bardzo duych moliwociach. Aktualnie uywany podczas instalacji interfejs graficzny
wyglda tak samo jak starsze wersje, ale jest tylko nakadk na program parted, dziaajcy z linii polece. Moe on tworzy, kasowa, przenosi, kopiowa, a nawet zmienia
rozmiar partycji ext2 i FAT32. Moe by uyty interaktywnie lub za porednictwem
skryptu. Strona podrcznika systemowego lub systemu info zawiera dokadniejsze informacje na temat sposobu uycia tego programu.

"
Jeeli miaby z tego rozdziau nauczy si tylko jednej rzeczy, powiniene nauczy si
tego, e wszystko jest plikiem. To jest gwna idea uniksowych systemw plikw.
Istnieje kilka rnych rodzajw plikw; tutaj zajmiemy si gwnie dwoma z nich: specjalnymi plikami znakowymi (character special files) i specjalnymi plikami blokowymi
(block special files). Su one odpowiednio do obsugi urzdze znakowych i blokowych; uywa si ich do zapisywania danych do urzdzenia i odczytu z urzdzenia. Dla informacji pozostaymi rodzajami s zwyke pliki, kolejki FIFO (FIFOs, named pipes),
katalogi, dowizania symboliczne (symbolic links) i gniazdka (UNIX domain sockets).

   
   

203

W systemie z zainstalowan dokumentacj jdra znajduje si plik /usr/src/linux/devices.txt.


Oto fragment tego pliku:
1 
I ?G"
3*"*(
IG"
3*"*& IG"

//3*"* /0IG"

 ?!5&' IG" M2.7<
" 
 K
10 "
  (
A(AB##$'6
*+'?B%A
 
3*"*A
 !
+'?B%A
03*"* &" !
+'?B%A
(

   "  

3*"*E8 
3*"*E(

 
3*"*E& 
 

013*"*E0101

 
(
#.*1<0
 ?




 / "
  
 
%
"
  #.
  


 

 "
 


Numer  w lewym grnym rogu jest gwnym numerem urzdzenia (major device number), oznaczajcym rodzaj urzdzenia. W powyszym fragmencie odnosi si on zarwno do urzdze znakowych (pseudoterminali), jak i blokowych (dyskw IDE). Kolumny liczb poniej typu urzdzenia s pobocznym numerem urzdzenia (minor device
number); kade urzdzenie mona jednoznacznie zidentyfikowa, podajc numer gwny i poboczny. W komunikatach bdw czasem s podane jedynie numery urzdzenia.
Moe to by irytujce, jeeli nie wie si o istnieniu pliku devices.txt, pomagajcego
ustali znaczenie numerw. Warto przejrze ten plik zawiera on odpowiedzi na wiele
czsto spotykanych problemw.
Wszystkie pliki w katalogu /dev mona przejrze, wydajc polecenie:
 

Opcja   powoduje, e pliki pojawiaj si w grupach odpowiadajcych numerom urzdze; umieszczenie w potoku polecenia  pozwala przeglda list przy
uyciu klawiszy PageUp i PageDown.
System plikw DEVFS
Niedugo w powszechnym uyciu bdzie nowy, alternatywny system plikw urzdze, devfs (Device
Filesystem). Wywietlane w nim s tylko urzdzenia faktycznie obecne w systemie, w innym
schemacie nazewnictwa ni dotychczasowy. Moe by uywany rwnolegle z systemem tradycyjnym.
Na przykad plik w starym systemie nazywajcy si /dev/hda1, w nowym bdzie si nazywa
/dev/ide/hd/c0b0t0u0p1 i bdzie dowizaniem symbolicznym do /dev/ide/host0/bus0/target0/
lun0/part1. Moe si to wydawa bardziej skomplikowane, ale gwnie ze wzgldu na nieznajomo tego systemu.

204

   
  

Devfs jest w pewnym stopniu podobny do systemu plikw /proc te jest systemem wirtualnym; pliki s tworzone na bieco przez kod jdra, nie zajmujc miejsca na dysku. Jaka jest
gwna przewaga tego systemu nad tradycyjnym? Ograniczenia wartoci numerw urzdze (do
128), konieczno utrzymywania pliku devices.txt, aby nowe sterowniki nie kolidoway ze sob
(mona by zwikszy zakres numerw urzdze, ale stworzyoby to problemy z wydajnoci) i konieczno umieszczania plikw urzdze na gwnej partycji, praktycznie rzecz biorc, uniemoliwiajca zamontowanie gwnej partycji tylko do odczytu, uruchomienie systemu z nieuniksowego
systemu plikw lub z pamici ROM lub wspdzielenie gwnego katalogu jako dysku sieciowego
NFS to tylko gwne niedogodnoci systemu tradycyjnego. Devfs rozwizuje wszystkie te problemy i czyni Linuksa jeszcze bardziej elastycznym. Podobnych schematw uywaj ju systemy
FreeBSD, Beos, Plan9 i QNX jest to nowo tylko dla Linuksa.
Dalsze szczegy mona znale w FAQ dotyczcym systemu devfs pod adresem http://www.
atnf.csiro.au/~rgooch/linux/docs/devfs.html.

#  $ %


 %
Tradycyjny schemat nazewnictwa urzdze blokowych jest uywany ju od duszego
czasu. Jak wida z przytoczonego przed chwil fragmentu pliku devices.txt, nazw
pierwszej partycji pierwszego dysku IDE byoby /dev/hda1. Dla dysku SCSI byoby to
/dev/sda1 (wymienione w innym miejscu devices.txt). Wszystkie nazwy s opisane
w pliku devices.txt, a wszystkie urzdzenia utworzone w systemie znajduj si w katalogu /dev. Niektre z plikw w tym katalogu s dowizaniami symbolicznymi, na przykad /dev/cdrom jest zwykle tylko dowizaniem do odpowiedniego urzdzenia (/dev/hdc
moe /dev/scd0?); innymi czsto uywanymi dowizaniami s /dev/mouse i /dev/modem.

  $


 &  
Nietrudno zauway w katalogu /dev pliki urzdze niepodczonych do komputera.
Aby system mg korzysta z urzdzenia, plik musi istnie system nie jest w stanie
tworzy plikw urzdze na bieco, dystrybucja zawiera wic spor ilo potencjalnie
potrzebnych plikw urzdze. Jeeli trzeba uy pliku nieobecnego w /dev, do jego
tworzenia suy polecenie 
. Tworzenie urzdzenia jest proste, o ile tylko zna si
typ urzdzenia oraz jego numer gwny i poboczny. Oto skadnia polecenia:
 
    

Przydatna jest opcja , pozwalajca ustali prawa dostpu do pliku (jak dla ) od
razu przy jego tworzeniu, a nie oddzielnie.
Nazw, typ i numery pliku mona znale w pliku devices.txt jest w nim nawet seria
numerw przeznaczonych do eksperymentw z wasnymi sterownikami jdra.

   
   

205

' (
 !
Urzdzenie znakowe jest plikiem przetwarzajcym dane jako strumie znakw, bajt po
bajcie. Przykadami urzdze znakowych s terminale, napdy tam magnetycznych,
klawiatura, karty dwikowe, sieciowy system plikw Coda i inne.
Urzdzenia blokowe posiadaj pocztek, koniec i ustalony rozmiar; dane mona zapisa
na dowolnym miejscu urzdzenia i odczyta je z niego dowolnego miejsca urzdzenia.
Jako e urzdzenia blokowe mog by duo wiksze ni objto danych na nich zawartych, specjalizowane programy, jak tar czy cpio, operuj raczej na zawartoci plikw
ni ich rozmiarze, mogc zachowywa i odczytywa pliki bezporednio z urzdzenia,
nie wymagajc sformatowanego pliku na urzdzeniu blokowym. Dziaa to szczeglnie
dobrze z napdami tam magnetycznych, poniewa s one raczej urzdzeniami znakowymi
ni blokowymi i nie s sformatowane w sposb waciwy dla urzdze blokowych.
Niej wymieniamy niektre z waniejszych urzdze specjalnych.


/dev/null puste urzdzenie, okrelane czasem jako wiadro na bity (bit bucket).
Wszystko, co zapiszemy do tego urzdzenia jest ignorowane. Jest przydatne
do przekierowania informacji, gdy nie chce si ich wywietla ani przekierowywa
do pliku.

/dev/zero to urzdzenie dostarcza niewyczerpanego strumienia zer.


Jest przydatne do nadpisywania plikw lub urzdze zerami.

)
*
Najczciej pracujemy z lokalnymi systemami plikw, umieszczonymi na uywanym
komputerze. Jakie s w danej chwili dostpne? Rni si to zalenie od ustawie jdra
systemu i sprztu; sprawdzamy, zagldajc do pliku /proc/filesystems:
   
 "
 
 " "
 "

 "  
 " 
 "
 " 
.
 "
 
 700
 ""
.1

206

   
  
 " " 
 " 
" 

Interesujce dla nas s wpisy niepoprzedzone sowem .

)
+ 
Systemy plikw moemy podzieli na dwa rodzaje: sieciowe i dyskowe, omwimy je
w nastpnych podrozdziaach.
Mimo e Linux obsuguje szyfrowane systemy plikw, nie s one obsugiwane przez
dystrybucj Red Hata. Dokadniejsze informacje na temat wasnorcznej konfiguracji
mona znale pod adresem http://www.linuxdoc.org/HOWTO/Loopback-EncryptedFilesystem-HOWTO.html.

    


Sieciowe systemy plikw fizycznie znajduj si w odlegym systemie, ale s widoczne
jakby byy lokalnie zamontowanym dyskiem. Najpowszechniej stosowane typy wyliczamy poniej.


NFS powszechnie uywany sieciowy system plikw opracowany przez firm


Sun. Nie posiada wbudowanych mechanizmw zabezpiecze, poniewa zosta
zaprojektowany do pracy w przyjaznej sieci. Jest uwaany przez niektrych
za problematyczny, jednak jest atwy w implementacji. Z reguy uywany
do wspdzielenia plikw midzy systemami uniksowymi.

SMB opierajcy si na sieci protok System Message Block opracowany


przez firm Microsoft. Linuksowa implementacja protokou znana jest
pod nazw Samba i dziaa cakiem dobrze, dopki Microsoft nie wprowadzi
kolejnych zmian do protokou. Z reguy jest uywany do komunikacji midzy
systemami Windows i Linux.

   


Dyskowe systemy plikw znajduj si na urzdzeniu fizycznym, na przykad dysku
twardym, bezporednio podczonym do lokalnego komputera.


FAT nastawiony na dysk, oparty na tablicach (strukturach listy


jednokierunkowej) system plikw Microsoftu. Jest on regularnie rozszerzany
w celu dodania funkcjonalnoci. Profesjonalnym systemem plikw Microsoftu
jest NTFS.

ext2, ext3 i ReiserFS s opartymi na i-wzach uniksowymi systemami plikw.

   
   

207

     
    
Ostatnimi czasy standardowym systemem plikw Linuksa jest ext2, chocia uywano
i uywa si take innych systemw plikw. Dla uytkownikw dystrybucji Red Hat
aktualn technologi jest system ext3. Maj one wiele wsplnych cech, wic najpierw
omwimy dokadnie ext2, a nastpnie ext3.

 
 
 
Pierwotny Extended File System zosta nazwany ext; druga jego wersja nazywa si,
o dziwo, ext2. Ten linuksowy system plikw jest wci rozwijany nietrudno si domyle, skd wzia si nazwa systemu ext3. System ext2 moe obsuy pliki o rozmiarze do 2 GB, katalogi o rozmiarze 2 TB i pliki o nazwach dugoci 255 znakw (jeeli limit ten jest niewystarczajcy, po wprowadzeniu specjalnej aty na jdro systemu
nazwy plikw mog mie do 1024 znakw). Jednym z najwikszych usprawnie systemu ext2 bya moliwo wydajnej alokacji i wykorzystania wolnej przestrzeni. Jest ono
tak wydajne, e systemy plikw ext2zwykle nie potrzebuj defragmentacji (jest to odpowied na czsto zadawane pytanie: tak, istnieje program do defragmentacji dyskw
dla Linuksa, ale jest bardzo rzadko uywany, nie jest obecny w wikszoci dystrybucji
w tym w Red Hat Linuksie i jego uycie nie jest zalecane). Dynamiczna alokacja
zasobw jest take pit Achillesa systemu ext2 gdy plik jest kasowany, jego i-wze
jest usuwany, a bloki dysku skadajce si na plik s uwalniane i mog by od razu ponownie zaalokowane, a skasowane dane bezpowrotnie utracone. Istniej programy
odkasowujce pliki dla systemu ext2, ale ich skuteczno w intensywnie uywanych,
wielouytkownikowych systemach bywa znikoma; w systemie domowym szanse odzyskania danych s wiele wiksze, ale nie jest to gwarantowane ze strony systemu.
Polecenie sync
Linux buforuje zapisy do urzdze, dlatego zapisane dane nie pojawi si na dysku dopki nie
zapeni si bufor, jdro systemu kae wykona zapis lub my polecamy go wykona, uywajc polecenia ; tradycyjnie polecenia uywa si dwukrotnie:
 

Podwjne wywoanie polecenia jest cakowicie zbdne.

  
 
 
Kady system plikw ma swoj charakterystyczn struktur. Rne struktury uywane
s do innych celw zwizanych z wydajnoci, bezpieczestwem, a w przypadku zastrzeonych projektw nawet zmniejszeniem zgodnoci z innymi systemami. System
ext2 zosta zaprojektowany dla zgodnoci z zasadami systemw uniksowych, w szczeglnoci zasady wszystko jest plikiem. Tak wic na przykad katalog w systemie plikw ext2 jest plikiem zawierajcym list nazw plikw znajdujcych si w tym katalogu
oraz pooenie tych plikw na dysku; nazwy przechowywane s w strukturze listy jednokierunkowej, co pozwala unikn marnowania przestrzeni dyskowej zwizanego
z rnymi dugociami nazw plikw.

208

   
  


Plik w systemie ext2 zaczyna si od i-wza (inode), zawierajcego opis pliku: jego typ,
prawa dostpu, waciciela i grup, znaczniki czasu i wskaniki do blokw danych
z zawartoci pliku. Podczas korzystania z pliku jdro systemu uywa tych wskanikw
do znalezienia konkretnego miejsca na dysku zawierajcego dane.




 
W zwizku ze struktur systemu plikw ext2 pojedynczemu plikowi mona przypisa
kilka nazw (wpisw w katalogu); s to tak zwane dowizania twarde (hard links). Mona take utworzy specjalny plik, dowizanie symboliczne (symbolic link), odwoujcy
si do nazwy innego pliku. Rodzaje te rni si tym, e dowizanie twarde odnosi si
do samych danych (wskazuje na i-wze), a symboliczne do nazwy pliku. Oba rodzaje dowiza widzimy w spisie plikw jako zwyky plik i mona operowa zarwno
na waciwym pliku, jak i na dowizaniu. Gwnym zyskiem z posugiwania si dowizaniami jest ograniczenie zuycia przestrzeni dyskowej potrzebnej do przechowywania
zduplikowanych plikw.


  
 
Gdybymy mieli obrazowo przedstawi struktur danych na fizycznym dysku w systemie plikw ext2, przypominayby one seri pudeek blokw. Pierwszy blok dysku
jest blokiem specjalnym, zawierajcym sektor startowy; kady z nastpnych blokw
zawiera system operacyjny, aplikacje bd dane.
Kady blok zoony jest z mniejszych fragmentw danych: superbloku (nazywanego
w ten sposb, poniewa zawiera powielon informacj o danym systemie plikw), powielonych deskryptorw systemu plikw, mapy bitowej bloku, mapy bitowej tablicy
i-wzw, zawartoci tablicy i-wzw, a nastpnie blokw danych. Powielona informacja zwiksza niezawodno systemu i uatwia ratowanie zawartoci dysku po awariach i bdach.
Jak due s te bloki? Domylnym rozmiarem s 1024 bajty, ale rozmiar mona powikszy lub zmniejszy podczas tworzenia systemu plikw. Optymalny rozmiar zaley od
zastosowania systemu do przechowywania duych plikw lepiej uy duych blokw, aby przyspieszy dziaanie dysku kosztem zmarnowanej przestrzeni dla maych
plikw; do przechowywania maych plikw bardziej sensowne jest ustalenie mniejszego
rozmiaru bloku. Niektre z systemw mog wymaga pewnego czasu monitorowania
i pomiarw prdkoci w celu ustalenia optymalnej wartoci. Rozmiar blokw danych
mona ustali podczas formatowania partycji.

 
!"

! 
# 
Spjno systemu plikw zapewnia uycie polecenia  
, jednego z piciu programw
biblioteki ext2 uywanych do utrzymywania i modyfikacji systemu plikw ext2.

   
   

209

Stan systemu plikw jest w systemie ext2 ledzony. Po zamontowaniu systemu plikw
z moliwoci zapisu jdro zaznacza w superbloku odpowiednie pole, mwice, e
system jest nieczysty; po poprawnym wymontowaniu system jest oznaczany jako czysty. Jeeli system plikw nie zosta poprawnie rozmontowany, moe zawiera uszkodzone dane, poniewa cz danych moga nie zosta zapisana (ten problem prbuj
wyeliminowa systemy plikw z urnalem, jak chociaby ext3). Podczas startu systemu
flaga ta jest sprawdzana i jeeli system plikw jest nieczysty, uruchamiany jest program
fsck (w zasadzie fsck jest programem sprawdzajcym rodzaj systemu plikw na danej
partycji i uruchamiajcym program odpowiedni dla danego systemu: fsck.minix,
fsck.ext2, fsck.ext3, fsck.reiserfs, fsck.msdos lub fsck.vfat). Jeeli jdro systemu wykryje
bd w strukturze systemu plikw lub w superbloku, system oznaczany jest jako bdny,
co forsuje sprawdzenie systemu plikw nawet, gdy nic poza tym nie wskazuje na potrzeb uruchomienia fsck.
Domylnie system uruchomi fsck na danym systemie plikw po zadanej liczbie restartw systemu niezalenie od stanu pola czystoci, zalenie od licznika zamontowa systemu (przechowywanego w superbloku) lub po upywie okrelonego czasu od ostatniego sprawdzenia (te zapisanego w superbloku). Parametry te mona dostosowywa za
pomoc polecenia  ; umoliwia ono take zmian sposobu obsugi bdu w systemie plikw przez jdro a take ilo blokw zarezerwowanych dla superuytkownika.
Ta ostatnia opcja jest przydatna na wyjtkowo duych lub szczeglnie maych dyskach
mona wtedy udostpni uytkownikom wicej przestrzeni dyskowej.

  $

# 
Podczas dziaania fsck przetwarza na rne sposoby informacj znalezion w systemie
plikw. Gdy znajdzie katalog, niezwizany z gwnym drzewem katalogw lub nieskasowany plik bez wpisw w adnym katalogu, przenosi plik lub katalog do katalogu
/lost+found, tworzonego na kadej partycji podczas formatowania. Pewna ilo blokw
w systemie plikw jest zarezerwowana do tego i innych celw dla superuytkownika.
Mona zmniejszy ten przydzia, dajc wicej miejsca do wykorzystania uytkownikom, przekazujc odpowiednie argumenty programowi mke2fs podczas tworzenia systemu plikw.

  !
  "   
Red Hat Linux 7.3 zawiera polecenie   , umoliwiajce obejrzenie struktury
systemu plikw ext2. Przykad dziaania tego programu znajduje si w dalszej czci
tego rozdziau.
Skadnia polecenia jest nastpujca:
 =? .D>=?  >=? 5  >
 

Dwie najbardziej przydatne opcje dziaaj, wedug strony podrcznika systemowego,


nastpujco:

210

   
  


 wypisuje bloki oznaczone w systemie plikw jako bdne,

 zmusza   do wywietlenia pliku, nawet jeeli ma on ustawione


flagi, ktrych program nie rozumie (co moe sprawi, e cz wywietlonych
informacji bdzie pozbawiona znaczenia).

Kolejne dwie opcje przydaj si podczas odzyskiwania utraconych danych. Zdesperowany i posunity do ostatecznoci administrator systemu (czyli czytelnik) moe okaza
si wymienionym czarodziejem:


 uyj podczas przegldania systemu innego superbloku; nie


jest to zwykle potrzebne komukolwiek poza czarodziejem przygldajcym si
szcztkom bardzo nieprzyjemnie uszkodzonego systemu plikw;


  przegldajc system, uywaj blokw o podanym
rozmiarze; nie jest to zwykle potrzebne komukolwiek poza czarodziejem
prbujcym co odzyska ze szcztek uszkodzonego systemu plikw.

Do manipulowania systemem ext2 a take do naprawy uszkodzonego systemu plikw


lub do odzyskiwania danych mona te uy programu debugfs. Jako narzdzie o duych moliwociach, domylnie uruchamia si bez moliwoci zapisania jakichkolwiek
zmian do systemu plikw; zapis naley uaktywni podczas uruchamiania polecenia.
Wydajc polecenie  w linii polece programu, zobaczymy spis dostpnych polece.

, 
Ze wzgldu na budow wirtualnego systemu plikw VFS, w systemie Linux mona
atwo korzysta z alternatywnych systemw plikw.
Ostatnimi czasy bardzo aktywnie tworzone s systemy plikw z tzw. urnalem (journaling filesystems). W takich systemach przed wprowadzeniem jakichkolwiek zmian w faktycznym systemie plikw w tzw. urnalu zapisywana jest porcja metadanych opis
wprowadzanych zmian. Dziki temu w razie awarii systemu (spowodowanej chociaby
przerw w dostawie prdu) zmiany w plikach zostan wprowadzone albo w caoci, albo
wcale albo w urnalu znajduje si opis wprowadzanych zmian umoliwiajcy dokoczenie potencjalnie przerwanej w poowie operacji zapisu, albo opisu tam nie ma i wtedy
zmiana zostanie w caoci porzucona. Stosowane s rne implementacje tego pomysu,
uywajce odmiennych kombinacji danych i metadanych, oglnie rzecz biorc, celem jest
doprowadzenie systemu plikw podczas pniejszego startu systemu do stanu, w jakim
znalazby si bez niespodziewanej zapaci systemu. Zawsze istnieje rozdwik midzy
wydajnoci a iloci danych zapisanych w urnalu; system plikw ext3, omawiany
w dalszej czci tego rozdziau, daje administratorowi moliwo ustawienia opcji definiujcych rozsdny dla danego systemu kompromis. Gwnym problemem w systemie
plikw ext2 jest czas sprawdzania systemu plikw po awarii systemu, ktry moe trwa
dugo nawet na systemach umiarkowanej wielkoci; w duych systemach  
moe by
powodem nawet kilkugodzinnej niedostpnoci systemu.
Komercyjne systemy uniksowe korzystaj z rnych rodzajw systemw plikw z urnalem; na Linuksa przenoszony jest system XFS z SGI, a take JFS firmy IBM (oparty
na implemetacji JFS w systemie OS/2, nie w systemie AIX). Kontynuowane s prace

   
   

211

nad systemem ext3, ale w chwili obecnej najbardziej zaawansowany jest system plikw
ReiserFS. Mimo e ext3 jest wystarczajco stabilny, aby by domylnym systemem plikw w Red Hat Linuksie 7.3 i mie zastosowanie w systemach produkcyjnych Red
Hata i innych firm, jest on razem z innymi systemami z urnalem wci uwaany za
oprogramowanie beta, nie nadajce si do uytku w krytycznych systemach. Dzisiaj
ext2 pozostaje waciwym systemem plikw Linuksa, chocia spodziewamy si, e nowy standard wyoni si jeszcze w 2002 roku. Z obsug Red Hata dla ext3 jest on bardzo prawdopodobnym kandydatem, ale bogactwo dostpnych dla Linuksa systemw
plikw jest bardzo due.

# $
Red Hat wybra obsug ext3 jako domylnego systemu plikw z urnalem w swojej
dystrybucje. Inne dystrybucje, jak SuSE czy Mandrake, obsuguj system ReiserFS. Na
dzi istnieje ograniczona moliwo korzystania z systemw XFS i JFS, ale najprawdopodobniej suy one bd gwnie uytkownikom tych systemw plikw do korzystania ze sformatowanych ju dyskw pod Linuksem.
Uzasadnienie wyboru ext3 przez Red Hata jest nie do odparcia: system ten zapewnia
dostpno, spjno danych i szybko dziaania podobn do innych systemw plikw
z urnalem, ale ma jedn unikaln zalet atwe przejcie z systemu ext2 na ext3
w sposb niepodatny na pomyki uytkownika.
Mona wybra korzystanie z systemu plikw ext3 ju przy instalacji; mona te przekonwertowa po uaktualnieniu systemu do wersji 7.3 istniejc partycj ext2 do systemu ext3.

% &
 
$
 

 '
Aby doda moliwo korzystania z urnala do istniejcego systemu plikw ext2, naley uy polecenia  . Aby na przykad przetworzy sformatowan ju partycj
/dev/hda2, wydajemy polecenie:
!" 
 "

Nie ma znaczenia, czy podczas tej operacji zmieniana partycja jest zamontowana, czyli;
jedyn rnic jest pojawienie si nowego pliku .journal w katalogu, w ktrym zamontowano dan partycj o ile bya ona wczeniej zamontowana.
Nastpnie znajdmy odpowiedni linijk w pliku /etc/fstab i zmiemy zapis ext2 na
ext3. Po nastpnym uruchomieniu systemu zostanie ona zamontowana jako ext3.
Jeeli zmiana dotyczya gwnej partycji, nie bdzie mona jej wymontowa przed wydaniem polecenia  , ale nie ma to znaczenia. Po utworzeniu urnalu pojawi si
tylko plik .journal. Naley jednak wtedy utworzy plik initrd (RAM-dysk startowy, zawierajcy jdro Linuksa i minimalny system, umoliwiajcy zaadowanie moduw ze
sterownikami i wystartowanie reszty systemu z gwnej partycji), aby zaadowa sterowniki systemu ext3 przed zamontowaniem gwnej partycji. Bez tego system te wystartuje, ale gwna partycja bdzie zamontowana jako ext2 aden inny system plikw z urnalem nie jest tak dobroduszny.

212

   
  
Podczas kompilacji nowego jdra systemu naley upewni si, e wczona zostaa
obsuga systemu plikw ext3.

(
)*+ 
!
Przed restartem systemu naley uruchomi program mkinitrd:
 "#$%& '"#$%&

Pierwszym argumentem jest plik z obrazem dysku startowego, ktry zostanie umieszczony w katalogu /boot. Moe on mie dowoln nazw, pokazana powyej jest zgodna
z przyjtymi konwencjami. Drugi argument przekazuje wersj jdra, dla ktrego jest
dany plik. Nie musi to by wersja dziaajca w danej chwili; powinna jednak by to
wersja, z ktrej uruchamiany bdzie system. Pozostae moliwe opcje wyjanione s na
odpowiedniej stronie podrcznika systemowego.
Nastpnie naley doda odpowiedni linijk do pliku /boot/grub/grub.conf lub /etc/lilo.conf,
zalenie od uywanego programu adujcego. Do pliku konfiguracyjnego GRUB naley
poniej linijki okrelajcej plik jdra (zaczynajcej si wyrazem
) wpisa linijk:

* *
?<?1

Z kolei do pliku konfiguracyjnego LILO naley w czci dotyczcej interesujcej nas


wersji jdra dopisa:

3* *
?<?1

a nastpnie przeadowa program startowy (tylko w przypadku LILO):




Dodatkow korzyci jest fakt, e dowolny inny system operacyjny, jak BeOS czy
Windows (po zainstalowaniu odpowiednich sterownikw), moe korzysta z partycji
ext3, poniewa dla tych systemw wygldaj one identycznie jak partycje ext2.
Przyjrzyjmy si jeszcze innym argumentom Red Hata przemawiajcym za uyciem
systemu ext3.

 % &'
Podobnie jak w przypadku innych systemw plikw z urnalem, nie ma koniecznoci
kadorazowego uruchamiania polecenia  
; na domowym, 20-gigabajtowym dysku
moe to by nieco irytujce, ale mona sobie wyobrazi kilkugodzinne dziaanie programu fsck na macierzy RAID o pojemnoci dajmy na to terabajta. Brak koniecznoci
uruchamiania  
jest wspln cech systemw plikw z urnalem. Czas potrzebny na
doprowadzenie systemu plikw do stanu uywalnoci po niewaciwym zamkniciu
systemu nie jest zaleny od rozmiaru partycji, lecz wycznie od iloci danych w urnalu. System ext3 udostpnia kilka opcji umoliwiajcych midzy innymi okrelenie
iloci przechowywanej w urnalu informacji. Wedug Red Hat, Inc. zwykle na odczytanie urnala i wprowadzenie zmian do waciwego systemu plikw wystarcza okoo sekundy czasu.

   
   

213

 &'
(
 %&'
Prdko dziaania systemu plikw nie idzie w parze z jego niezawodnoci. Mona
wystawi dane na wiksze ryzyko uszkodzenia w razie niewaciwego zamknicia systemu, zyskujc szybsze dziaanie systemu plikw, lub powici prdko, zapewniajc
zgodno danych na dysku ze stanem systemu operacyjnego.
Dostpne s trzy tryby pracy systemu ext3:


writeback pozwala starym danym pozosta w systemie plikw, osigajc


tym samym maksymaln prdko; nie zapisuje nic bezporednio na dysku,
pozostawiajc oprnianie buforw kodowi jdra uaktywniajcego si
co 30 sekund,

ordered dane pozostaj spjne, jednak kosztem czciowej utraty prdkoci


(domylny tryb pracy w dystrybucji Red Hat),

journal wymaga wikszej iloci przestrzeni dyskowej, przechowujc wicej


danych w urnalu; wydajno jest nisza, poniewa dane zapisywane s
dwukrotnie, ale prdko moe wzrosn przy synchronicznych zapisach
charakterystycznych dla baz danych.

Dla wikszoci uytkownikw domylny wybr jest dobrym kompromisem. Red Hat
obsuguje start systemu z gwnej partycji sformatowanej jako ext3 z odpowiednimi sterownikami adowanymi ze startowego RAM-dysku.
Tryb pracy wybiera si, ustawiajc odpowiedni opcj montowania w pliku /etc/fstab.

  )  *
Innym popularnym systemem plikw z urnalem jest pisany od zera system pomysu
Hansa Reisera, ReiserFS. Jest uywany gwnie w dystrybucjach SuSE i Mandrake, obsugujcych start systemu z partycji ReiserFS. System ten udostpnia podobn funkcjonalno do ext3, ale nie ma prostego sposobu na konwersj partycji ext2 do formatu
ReiserFS (naley utworzy kopi danych, przeformatowa partycj, a nastpnie odtworzy dane z kopii zapasowej). System ten nie sprawdza si przy zdalnym montowaniu
w protokole NFS4. W ReiserFS nie jest moliwe odzyskiwanie skasowanych plikw.
Red Hat Linux obsuguje ReiserFS, lecz bez moliwoci uruchomienia systemu z partycji sformatowanej w systemie plikw Reisera. Nie umoliwia take podczas instalacji
sformatowania partycji jako ReiserFS. Obsuga jest obecna w systemie gwnie z myl
o dostpie do istniejcych ju partycji ReiserFS.

Co wicej, jest (nie bez powodu) uwaany za bardzo niestabilny; szczeglnie nie lubi wielu plikw
w katalogu i intensywnego wykorzystywania dowiza symbolicznych. Wart uwagi cech, o ktrej autor
nie wspomina, jest bezblokowo dane nie s dzielone na bloki, lecz trzymane w drzewiastej strukturze
danych; w systemie ReiserFS plik zajmuje dokadnie tyle miejsca na dysku, ile wynosi jego rozmiar.
przyp. tum.

214

   
  

+*,*
Zarwno SGI z systemem XFS, jak i IBM ze swoim JFS, udostpniaj swoje systemy
plikw Linuksowi. Poniewa przeznaczone s one gwnie do profesjonalnych zastosowa, najprawdopodobniej s udostpniane, aby uatwi uytkownikom systemw
IRIX i AIX przejcie na Linuksa bez koniecznoci reformatowania ogromnych systemw plikw.
aden z tych systemw nie jest obsugiwany w Red Hat Linuksie 7.3, ale dny przygd administrator moe naoy odpowiedni at na jdro systemu i zdoby narzdzia
potrzebne do obsugi tych systemw plikw. SGI udostpniao pyt CD umoliwiajc
instalacj dawniejszych wersji Red Hata z obsug XFS; prawdopodobnie powstanie
take pyta dla Red Hata 7.3.

)-)
Stopie obsugi DOS-owych systemw plikw w Linuksie jest czsto zaskakujcy dla
nowych uytkownikw, ale systemy te ju w pierwszych latach Linuksa okazay si
przydatn opcj. Microsoft by gwnym producentem systemw operacyjnych dla intelowskich komputerw PC, a Linux zawsze skania si w stron wspdziaania.

-
.*/01.*/012*/0$
Systemy operacyjne DOS i Windows uywaj systemu plikw FAT (File Allocation
Table). Liczba po skrcie FAT okrela rozmiar przestrzeni adresowej wskanikw; im
wiksza przestrze, tym wikszy cigy fragment dysku mona zaadresowa i obsuy.
Wczesne wersje systemu FAT byy tworzone z myl o dyskietkach i nie mogy obsuy duych urzdze bez uycia niewydajnych, duych blokw danych. System taki,
FAT12, jest wci uywany na dyskietkach (Linux bez wikszych problemw korzysta
z dyskietek sformatowanych jako FAT12, chocia systemy ext2 i minix te maj zastosowanie, gdy liczy si ilo miejsca dla danych pozostaa po sformatowaniu dyskietki).
Starsze wersje systemu FAT nie obsuguj plikw o nazwach duszych ni jedenacie
znakw. Najnowsz wersj jest FAT32, zgodny wstecz z wczeniejszymi wersjami;
starsze wersje nie s kompatybilne do przodu.
Jdro systemu zaczone do dystrybucji Red Hat 7.3 moe obsuy wszystkie wersje
partycji FAT (wcznie z dyskietkami) przy uyciu moduu jdra .

"
Przede wszystkim system umsdos istnieje z tego samego powodu, z ktrego Linux
z pocztku uywa systemu plikw miniksa. By powszechnie dostpny i... dziaa.
Uywajc systemu plikw umsdos, mona zainstalowa Linuksa na partycji uywanej
przez system DOS lub Windows bez koniecznoci partycjonowania dysku. Uywanie

   
   

215

dwch systemw operacyjnych na jednym komputerze byo codziennoci wczesnych


uytkownikw i pionierw Linuksa. Ponadto dopiero niedawno stay si dostpne bezpieczne i niezawodne programy zmieniajce rozmiar partycji bez utraty danych. Korzystanie z systemu plikw umsdos byo przydatne, wygodne, a do tego sprytne. Aby Linux mg korzysta w rodowisku wielouytkownikowym z plikw znajdujcych si na
partycji FAT, naleao gdzie przechowa informacje i-wzw zwizane z prawami
dostpu. Niestety systemy plikw z rodziny FAT nie umoliwiay przechowania takich
informacji. Nigdy nie byo takiej potrzeby systemy te byy zaprojektowane z myl
o jednouytkownikowym systemie operacyjnym.
Modyfikacja systemu FAT umoliwiajca wykorzystanie go w wielouytkownikowym
rodowisku Linuksa zostaa nazwana umsdos. W kadym katalogu uywanym przez
Linuksa znajduje si plik --linux-.---, zawierajcy potrzebne Linuksowi informacje. S
one synchronizowane z biecym stanem plikw za pomoc polecenia   .
Inicjalizacja istniejcego katalogu systemu DOS nazywana jest promocj katalogu; mona
j przeprowadzi rcznie lub automatycznie podczas montowania systemu plikw.
Jako e obsuga systemu umsdos staje si w miar pojawiania si kolejnych
nowoczesnych alternatyw coraz mniej podana i przydatna, Red Hat Linux nie zawiera
polecenia  ; narzdzia obsugujce system umsdos mona w razie potrzeby
zdoby niezalenie od dystrybucji, skompilowa i zainstalowa je samodzielnie.

Aby zamontowa istniejc partycj FAT jako partycj DOS, uyj typu vfat (moe okaza
si konieczne zaadowanie moduu jdra !), aby widzie dugie nazwy plikw, jeeli
montowany system je obsuguje. Jeeli trzeba uy bardziej restrykcyjnych uprawnie dla
partycji DOS ni domylne, mona ustali je, przekazujc odpowiednie opcje do polecenia
; jeeli musisz ustawi uprawnienia oddzielnie dla poszczeglnych plikw, zamontuj
dysk w systemie   , dokonaj promocji katalogu i ustaw konieczne uprawnienia.

)./-0
Dla przecitnego uytkownika zamontowana pyta CD-ROM wyglda jak cz wasnego systemu plikw Linuksa. Faktycznie nie jest ona wasnym systemem plikw, ale
dziki funkcjonalnoci VFS wyglda, jakby bya. Standardy systemw plikw uywanych na pytach CD-ROM wci ewoluuj, obejmujc coraz to nowe technologie.

3224
System plikw zwykle uywany na pytach CD-ROM jest znany pod nazw standardu definiujcego ten format, iso9660. Kady system operacyjny tumaczy system iso9660 na wasny system plikw (z pewnymi ograniczeniami). Utworzono kilka rozszerze standardu
w celu wyjcia naprzeciw kilku powszechnym potrzebom. Rozszerzenie RockRidge udostpnia dugie nazwy plikw, uniksowe prawa dostpu i dowizania symboliczne. Rozszerzenie Joliet udostpnia dugie nazwy plikw i obsug znakw Unicode, przydatn przy jzykach innych ni angielski. Kompakty El Torito zawieraj obraz startowy, umoliwiajc
przy wykorzystaniu odpowiedniego BIOS-u start systemu operacyjnego z pyty CD.

216

   
  

*
Ten system plikw uywany jest na pytach DVD; nazwa jest skrtem okrelenia Universal Disk Format uniwersalny format dysku. Ma on wbudowanych wiele funkcji, do obsugi ktrych system plikw iso9660 potrzebowaby wprowadzenia rozszerze.

 
Gdy dysk twardy zosta ju podzielony na partycje, naley utworzy na nim system plikw. Pierwsza z tych czynnoci jest okrelana w wiecie systemu DOS jako formatowanie niskopoziomowe, a druga po prostu jako formatowanie. W wiecie uniksowym
jest to okrelane jako tworzenie systemu plikw.
Niesformatowany dysk (dyskietka, dysk twardy lub napd wymienny) z reguy dostarczany jest z gotowym niskopoziomowym formatem (z reguy tworzonym narzdziem,
takim jak fdisk lub superformat). Moe on posiada sektor startowy, a nawet informacje
o partycjach, ale z reguy nie zawiera struktury umoliwiajcej przechowywanie plikw.
Jeeli jest to co wicej ni dyskietka, najpierw naley dostroi tablic partycji za pomoc programu fdisk lub wybranego odpowiednika.
Dyski Zip z reguy posiadaj jedn partycj o numerze 4; ma to jakie tajemnicze znaczenie dla uytkownikw komputerw firmy Apple, lecz dla uytkownikw Linuksa nie
ma adnego. Wikszo informacji o dyskach Zip stwierdza, e montowana jest partycja numer 4 i tyle. Jeeli kogo to irytuje, moe to atwo zmieni.
Aby utworzy struktur waciw dla danego systemu plikw, musimy dokona formatu
wysokiego poziomu. W systemach DOS-owych suy do tego polecenie ;
w Linuksie polecenie 
 do utworzenia systemu plikw ext2 lub ext3, 

  dla systemu ReiserFS i 
  dla systemu FAT.
W systemie mog by dostpne take inne polecenia, ktrych uywamy w razie potrzeby.
Oto one:



  ,


 ,


 ,


 ! ,


 ! ,


 ! ,


 ! ,


 !  ,


 !  ,


 !,


  .

   
   

217

 
Peny przegld wszystkich opcji polecenia 
 mona znale na stronie podrcznika
systemowego polecenia 
 . Oto najbardziej przydatne argumenty, podane na tej
stronie.


Aby sprawdzi dysk w poszukiwaniu sektorw uszkodzonych podczas tworzenia


systemu plikw, uyj opcji .

Uyj opcji ", aby zmieni domyln ilo tworzonych i-wzw (z reguy
suy to zwikszeniu dostpnego miejsca na dysku); domylna warto z reguy
stanowi dobry wybr.

Domylnie system rezerwuje 5% blokw na wyczny uytek superuytkownika


do wykorzystania podczas sprawdzania systemu plikw; warto t mona
zmniejszy przy uyciu opcji , zwalniajc troch miejsca na dysku.

Opcji # mona uy w celu ustalenia etykiety systemu plikw, przydatnej


w razie koniecznoci przypomnienia sposobu wykorzystania systemu plikw,
gdy pracuje si z wieloma systemami plikw, lub zapewnienia nieco wikszej
elastycznoci ustawie w pliku /etc/fstab.

Jako ostatniej prby odzyskania uszkodzonego systemu plikw mona uy


opcji  , aby zapisa tylko superblok i deskryptory, a nie zmienia zawartoci
i-wzw; po zakoczeniu dziaania uyj polecenia  
.

Jak wida, kilka opcji umoliwia udostpnienie wikszej iloci miejsca dla zwykych
uytkownikw kosztem superuytkownika, ktry mgby wykorzysta to miejsce podczas sprawdzania systemu plikw do odzyskania plikw uszkodzonych. Chocia marnotrawstwo nie jest pozytywn cech, domylne ustawienia s zadowalajce dla wikszoci uytkownikw, a dyski twarde staj si coraz tasze.

5  $
Polecenie 
 !  jest twardym dowizaniem do polecenia 
 ; wywoanie polecenia pod t nazw dodaje urnal do tworzonego systemu plikw. Mona te uy opcji $
lub % polecenia 
 albo doda urnal do systemu ext2 za pomoc polecenia  :
!" 


Dokadny opis tych opcji, wzity ze strony podrcznika systemowego, podajemy niej.


$ dodaje do systemu plikw urnal. Jeeli nie podano opcji %, do utworzenia

odpowiednich rozmiarw urnalu w systemie plikw zostan uyte wartoci


domylne (wyliczone na podstawie rozmiaru systemu plikw). Aby korzysta
z urnalu, naley uaktywni w jdrze systemu obsug systemu plikw ext3.


%  podaje parametry tworzonego urnalu. Opcje podaje si


rozdzielone przecinkiem, z wartoci podan po znaku ; obsugiwane s

nastpujce opcje:

218

   
  


&
  tworzy w systemie plikw urnal o podanym

(w megabajtach) rozmiarze, rozmiar musi by rwny co najmniej 1024 bloki


systemu plikw (czyli 1 MB dla 1-kilobajtowych blokw, 4 MB dla blokw
4-kilobajtowych itd.), ale nie wikszy ni 102.400 bloki; w systemie plikw
musi by wystarczajca ilo wolnego miejsca,


 

 ta opcja uaktywni w systemie pliku
zewntrzny urnal; musi on by utworzony poleceniem 
 '$
 

; urnal i urzdzenie zawierajce dane nie musz

znajdowa si na tym samym urzdzeniu.


Mona uy tylko jednej opcji naraz wykluczaj si one wzajemnie.

Tryb korzystania z urnala przez system ext3 mona wybra, dodajc odpowiedni wpis
do pliku /etc/fstab. Oto fragment strony podrcznika systemowego polecenia , opisujcy opcje montowania systemu ext3.
System plikw ext3 jest wersj systemu ext2 poszerzon o obsug urnalu. Obsuguje
wszystkie opcje obsugiwane przez ext2, a ponadto:


$  uaktualnia format urnalu ext3,

$ 
 jeeli w systemie plikw istnieje ju urnal, opcja jest

ignorowana; jeeli nie, zawarto i-wza o podanym numerze zostaje


przeznaczona na urnal; sterownik utworzy nowy urnal, nadpisujc
dotychczasow zawarto pliku,


 nie aduje urnala ext3 podczas montowania,

$ /  /  


okrela tryb korzystania
z urnalu dla danych pliku (metadane s zawsze zapisywane w urnalu):


$ dane s zapisywane w urnalu przed zapisaniem ich we waciwym


systemie plikw,

 tryb domylny, dane s kierowane do gwnego systemu plikw


przed zapisaniem metadanych w urnalu,


kolejno danych nie jest zachowana, dane mog by zapisane
do waciwego systemu plikw po zapisaniu metadanych w urnalu, pono
daje to najwiksz wydajno, jednak po awarii systemu w plikach mog
znale si stare dane.

  
Dokadny opis wszystkich opcji, argumentw i skadni polecenia do tworzenia systemu
plikw Reisera mona znale na stronie podrcznika systemowego polecenia 

  . Skadnia i argumenty przedstawiaj si nastpujco:


=?
/QQ
 ">=?"Q>=?,>
 =  >

   
   


(   wybiera funkcj skrtu uywan do sortowania


plikw w katalogach. Naley wybra jedn z podanych. Domyln jest (.

) wybiera format tworzonego systemu plikw.

 zmniejsza ilo wypisywanych informacji (przydatne, gdy jeste zalogowany


na wolnym czu).

219

Podczas formatowania partycji ReiserFS, gdy jeste zalogowany za pomoc wolnego


cza, przydaje si opcja , zmniejszajca szczegowo informacji wywietlanej
w pasku postpu. Dokadniejsze informacje mona znale na stronie podrcznika systemowego; w wikszoci przypadkw wartoci domylne s wystarczajce.


Mona atwo utworzy system plikw FAT, nie posiadajc adnego oprogramowania
Microsoftu. Dokadne omwienie wszystkich opcji linii polece i skadni do tworzenia
DOS-owego systemu plikw znajduje si na stronie podrcznika systemowego polecenia 
  .
Oto niektre z przydatniejszych argumentw:


opcja  wcza sprawdzanie dysku w poszukiwaniu uszkodzonych sektorw,

gdy potrzebny jest plik z obrazem dysku FAT do celw testowych, mona uy
opcji *, podajc nazw pliku do utworzenia i wymagan ilo blokw; byoby to
mi opcj dla innych polece z rodziny 
 ,


  umie automatycznie wybra odpowiedni wersj systemu FAT podczas
tworzenia systemu plikw, ale podanie opcji +, a nastpnie ), ), lub 
pozwala sforsowa wasny wybr,

mona poda etykiet dysku, o dugoci do 11 znakw, podajc j po opcji ,

opcja  wcza szczegowe informacje wyjciowe, udostpniajc dodatkowe


informacje.

Do sprawdzenia spjnoci systemu plikw FAT mona uy polecenia   


.

0
Systemy plikw w systemach uniksowych s na tyle elastyczne, e nie musz by fizycznie obecne w danym komputerze, mona zamontowa zdalny dysk za porednictwem sieci. Linuksowy system VFS sprawia, e wszystkie systemy plikw widoczne s
jako lokalna cz gwnego drzewa katalogw. Administrator systemu musi zdecydowa, jakie systemy plikw udostpni i w ktrym miejscu przyczy je zamontowa
do gwnego drzewa katalogw.

220

   
  


     6
 
'7
W Linuksie (jak i w innych systemach uniksowych) wszystkie systemy plikw lokalne, zdalne, przechowywane na dysku bd w pamici s zamontowane we wsplnym drzewie katalogw, rozpoczynajcym si od katalogu gwnego (nazywanego root
directory, chocia nie ma on nic wsplnego z uytkownikiem root). Katalog ten okrela
si pojedynczym ukonikiem, . Po zamontowaniu fizyczna lokalizacja systemu plikw
nie ma znaczenia.

  " %  7


Kady system plikw moe by zamontowany w dowolnym miejscu drzewa katalogw,
ale niektre z miejsc bywaj bardziej przydatne ni inne. Nawet jeeli zamontowane s
rne systemy plikw (FAT, ext2, HPFS, ntfs itd.), podsystem VFS jdra Linuksa
sprawia, e s one widoczne w drzewie katalogw jako wasne pliki systemu.

   "
Systemy plikw montuje si za pomoc polecenia , a wymontowuje przy uyciu
polecenia . Powd, dla ktrego drugie polecenie nie nazywa si , ginie
w mrokach historii systemw uniksowych; nazywa si ono tak, jak si nazywa, i trzeba
si do tego przyzwyczai, czy si to wydaje sensowne, czy nie. Polecenie  korzysta z pliku /etc/fstab tablicy systemw plikw, zawierajcej informacje o systemach
plikw stale obecnych w systemie, punktach ich zamontowania oraz opcjach montowania. Oglna skadnia polecenia  jest nastpujca:
 !
   
 


Oto wyjanienie poszczeglnych elementw skadni polecenia .




 zawsze poprzedzony opcj  oraz spacj typ montowanego systemu


plikw. Mona poda midzy innymi  , ,  -,,.,   ,   ,   ,
 ,  . Argument ten jest czsto zbdny, poniewa  jest w stanie

automatycznie wykry rodzaj systemu plikw.




&/& urzdzenie zawierajce montowany system plikw, zwykle


bdzie to co w stylu  ,   lub  .


0&  miejsce w hierarchii katalogw, w ktrym zostanie

zamontowany system plikw. Dobrym miejscem do tymczasowego zamontowania


systemu plikw jest podkatalog katalogu /mnt. Mona utworzy specjalny
katalog dla zamontowania systemu plikw w najbardziej niespodziewanym
miejscu. Co ciekawsze, system plikw mona zamontowa nad istniejcym
ju katalogiem na przykad jeeli w katalogu /foo mamy plik bar, a nastpnie
w /foo zamontujemy system plikw zawierajcy plik snafu, bdziemy mogli
zobaczy plik snafu, a plik bar bdzie niewidoczny. Moliwo dostpu do
obydwu plikw nazywana jest przezroczystym montowaniem systemu plikw
i nie jest obsugiwana przez Linuksa.

   
   

221

Jedynym ograniczeniem montowania czegokolwiek gdziekolwiek jest fakt, e niezbdne do pracy systemu pliki z katalogw /bin, /sbin, /lib, /etc, /dev, /proc i /tmp musz
by obecne podczas startu systemu, wic powinny znajdowa si na tym samym dysku,
montowanym jako gwny system plikw (katalog /). Jeeli pliki te s nieobecne podczas startu systemu, Linux nie uruchomi si.

""
Aby wymontowa system plikw, naley uy polecenia :
! ! 
 


Mona te przekaza nazw zamontowanego urzdzenia:


! !  

Mona wymontowa wszystkie systemy plikw, ktre nie s niezbdne do pracy


systemu (ani nie s w danej chwili uywane) poleceniem , ale nie jest to
dobrym pomysem na wielouytkownikowym systemie sieciowym, poniewa
wtedy uytkownicy strac dostp do czci lub wszystkich swoich plikw.
Wic, jak powiedziaby kady dobry administrator, nie naley tego robi.

Do polecenia  mona przekazywa opcje montowania systemu plikw, podajc je


(jako list rozdzielon przecinkami) po opcji , s one jednak uywane gwnie w pliku
/etc/fstab. Spis dostpnych opcji znajduje si na stronie podrcznika systemowego polecenia ; najczciej uywane wymienione s w dalszej czci tego rozdziau.

, 12
Plik systemowy /etc/fstab zawiera informacje na temat systemw plikw, punktw
i opcji montowania, aby umoliwi automatyczne montowanie systemw plikw podczas startu systemu, a take przyspieszy montowanie rczne, eliminujc konieczno
wpisywania powtarzajcych si zestaww opcji. Dla rnych systemw plikw mona
uy rnych opcji; szczeglnie czstym ich zastosowaniem jest ustawienie praw dostpu do plikw w systemach FAT, jako e sam system plikw nie udostpnia takiej
funkcjonalnoci.
Plik /etc/fstab moe zapisywa jedynie superuytkownik. Korzystaj z niego polecenia,
takie jak  
,  i . Opis kadego z systemw plikw zajmuje jedn linijk;
poszczeglne pola wpisu rozdzielone s spacjami.
Peny opis skadni pliku znajduje si na stronie podrcznika systemowego fstab. Poniej
przedstawiony jest opis skrcony.
W kadej linijce pierwsze pole okrela urzdzenie lub adres zdalnego systemu plikw
do zamontowania.

222

   
  
W drugim polu znajduje si punkt zamontowania systemu plikw w lokalnym drzewie
katalogw.
Trzecie pole okrela typ systemu plikw.
Czwarte pole jest list opcji, rozdzielonych przecinkami. Czsto zawieraj one opcje
 (system plikw nie jest montowany automatycznie przy starcie systemu) i  
(wskazujcy, e dany system plikw moe by montowany przez uytkownika; z reguy
ta opcja jest wczona dla napdw CD-ROM i dyskietek). Oto najwaniejsze z pozostaych opcji:


  zezwala na wykonywanie programw,

 system plikw nie bdzie montowany automatycznie (nie dotyczy go


opcja ),

  blokuje wykonywanie programw; moe to by przydatne


na serwerze z zamontowan partycj zawierajc pliki wykonywalne
dla innej architektury,

  blokuje dziaanie bitw SUID i SGID (daje to poczucie bezpieczestwa,


ale jest ono zudne, jeeli w systemie zainstalowane s programy, takie jak
chociaby suidperl),

 montuje system tylko do odczytu,

 montuje system do odczytu i zapisu,

 wszystkie operacje wejcia-wyjcia maj by wykonywane

synchronicznie (bez buforowania),




  umoliwia uytkownikom montowanie systemu plikw; ta opcja wcza


automatycznie opcje  ,   i  (chyba e zostan wyczone przez
pniejsze podanie opcji przeciwnych, np.  1 11 ).

Opcjami systemu plikw FAT s m. in.:





  ustawia mask dostpu (czyli bity uprawnie, ktre maj by
wyczone); domyln wartoci jest maska dostpu biecego procesu; mask
podaje si jako liczb semkow,

23 / 2 3 / 23 sterownik systemu FAT moe

na bieco przeksztaca pliki z DOS-owym zapisem nowej linii (CRLF)


na pliki z zapisem uniksowym (NL) i na odwrt; dostpne s nastpujce
tryby konwersji:


 konwersja nie jest dokonywana (ten tryb jest domylny),

  konwersja przeprowadzana jest dla wszystkich plikw,

 konwersja przeprowadzana jest dla plikw o znanym rozszerzeniu

tekstowym; lista znanych rozszerze znajduje si w pliku /usr/src/linux/fs/fat/


misc.c i w jdrze dystrybucji Red Hat Linux wyglda ona tak:

   
   

223

  
 R. =>3
SPSSA6SSHASS&SS#%TSSS*4. 4*
S+SSHSS+IISS#$&SSI9&SS(%BS*4

4*
S(SSA9)SS$C+SS59&S*4

4*
S59SS&HS*4

  4*
S$C$S*4   4*
SI5ASSITASS'P(S*4
 4*
S6PSM*4P4*

Interesujc opcj systemu plikw iso9660 jest , pokazujca normalnie niewidoczne pliki.


8  

Pite pole uywane jest przez program dump (do wykonywania kopii zapasowych)
w celu okrelenia, czy powinna zosta utworzona kopia zapasowa tego systemu plikw;
) oznacza tak, . nie.
Szste pole jest uywane przez program fsck w celu okrelenia czstotliwoci i kolejnoci sprawdzania systemu plikw. . oznacza, e ten system nie bdzie automatycznie
sprawdzany (przydatne dla systemw FAT); ) e system bdzie sprawdzany w zadanym czasie. Zaleca si uy  dla niegwnych systemw plikw, aby fsck sprawdza je
rzadziej.

 8
 
6
Oto zawarto prostego pliku fstab systemu z partycj gwn w systemie plikw ext3
na macierzy RAID0 i uruchamianego wymiennie z MS Windows:
#956#3**.1 
 *"*"3/ 30
 *

 
 *"*  
*"*/ 
*"* **      
@
*"* 
** 
 700   
@

*"***R "  ,. 

Dwie linijki oznaczone s opcj


&. Jest to efekt dziaania polecenia   , ktry
wykrywa i dopisuje do pliku fstab urzdzenia wymienne, jak stacje dyskietek, napdy
CD-ROM, Zip, Jaz, LS-120 czy niektre kamery cyfrowe. Opcja  przy partycji
Windows powstrzymuje ostrzeenia; zaleca si wczenie tej opcji, gdy uywa si programu Wine.

#
 "
6
Do edycji pliku fstab wystarczy dowolny edytor plikw tekstowych, uprawnienia superuytkownika i znajomo skadni pliku i znaczenia poszczeglnych opcji.

224

   
  

0  ,3
Programowe macierze RAID s w systemie Red Hat Linux 7.3 zaskakujco atwe
w konfiguracji zarwno w czasie instalacji, jak i pniej. Efektywne wykorzystanie macierzy RAID wymaga zrozumienia ich dziaania i wczeniejszego przemylenia konfiguracji.
Sprztowe macierze RAID, korzystajce z zewntrznego lub wbudowanego w pyt
gwn kontrolera, staj si coraz tasze w miar spadku cen i wzrostu prdkoci dyskw IDE. Z coraz lepsz obsug i nowymi sterownikami kontrolerw RAID macierze
sprztowe staj si coraz powszechniej wykorzystywan opcj take dla uytkownikw
chccych wykorzysta je ze wzgldu na wydajno.

9  )/:7
Macierz RAID nie jest metod ochrony przed uszkodzeniem danych (zapisze ona na
dysk dane uszkodzone w taki sam sposb, jak waciwe). Z drugiej strony, niektre poziomy RAID mog uchroni przed utrat danych, zwikszy wydajno albo poczy
kilka dyskw fizycznych w jeden dysk logiczny. Przecitny indywidualny uytkownik
nie potrzebuje macierzy RAID, bowiem system domowy rzadko kiedy jest systemem
krytycznym (chocia odczucia po utracie plikw do pracy lub szkoy mog by nieco
inne). Wiksza wydajno macierzy RAID nie jest a tak istotna (wikszo sprztu jest
wystarczajco szybka do zastosowa domowych), a cena duych dyskw spada tak nisko, e nie ma potrzeby czenia mniejszych dyskw w jeden wikszy (chyba e kolekcja filmw lub plikw MP3 naprawd wymkna si spod kontroli). Najprostszy, liniowy poziom RAID wydaje si by lepiej obsugiwany przez system LVM.
Oto definicja poszczeglnych poziomw RAID.


Tryb liniowy kilka dyskw jest czonych w jedno wirtualne urzdzenie.


S one zwyczajnie czone jeden po drugim, tak e najpierw zapeniany jest
pierwszy dysk, potem nastpny i tak dalej.

RAID 0 tryb przeplotu. Dane s zapisywane rwnolegle na kilku urzdzeniach


o pojemnoci w przyblieniu rwnej pojemnoci. Daje to pewne zyski
w wydajnoci, ale nie chroni danych.

RAID 1 tryb lustrzany. Dane s zapisywane na kilku dyskach. Dziaa to


wolniej ni w przypadku pojedynczego dysku, ale oferuje pewn ochron
danych. Jeeli dane ulegn uszkodzeniu, zostaj odtworzone z pozostaej kopii.

RAID 4 dziaa podobnie jak RAID 0, ale potrzebuje co najmniej trzech


dyskw i na jednym z nich trzyma dane parzystoci uywane do ochrony
danych. Kada operacja zapisu zapisuje take dysk parzystoci, wic powinien
to by najszybszy dysk w zestawie.

RAID 5 dziaa podobnie jak RAID 4, ale dane parzystoci rozproszone s


na rnych dyskach, co poprawia wydajno i umoliwia odzyskanie danych
po jednoczesnej awarii kilku dyskw.

   
   


RAID 10 macierz RAID-1 dwch macierzy RAID-0.

Partycja wymiany RAID jest to dostpna od pewnego czasu funkcjonalno


jdra. Wystarczy utworzy na kilku dyskach partycje wymiany i wpisa je
do plik /etc/fstab, nadajc im rwny priorytet przez dopisanie opcji ..

225

Uycie macierzy RAID wymaga wstpnego zaplanowania zakupu sprztu, a take dokadnej lektury odpowiedniego dokumentu HOWTO w celu lepszego zrozumienia dokonywanego wyboru. Cz programu instalacyjnego Red Hata Anaconda dotyczca
partycjonowania dysku umoliwi atw konfiguracj macierzy RAID podczas instalacji.

" 
Wikszo uytkownikw indywidualnych rozpoczyna prac z Linuksem od pojedynczej partycji zawierajcej cae drzewo katalogw. Jest to wystarczajce do zastosowa
domowych, ale po pewnym czasie dysk moe okaza si za may. Dodanie nowego
dysku i przeniesienie na niego czci systemu plikw nie jest trudne, ale jest problematyczne dla wielu nowych uytkownikw Linuksa. W poniszym przykadzie zainstalujemy nowy dysk jako /dev/hdb (napd slave na pierwszej tamie), utworzymy na nim
jedn partycj, sformatujemy j w systemie ext3 i przeniesiemy tam dane uytkownikw z katalogu /home. Nastpnie zamontujemy nowy dysk jako katalog /home.
Najpierw naley fizycznie zainstalowa dysk, upewniajc si, e zworki master/slave s
odpowiednio ustawione (nasz dysk powinien by ustawiony jako slave) zarwno na dodawanym, jak i na starym dysku (niektre dyski wymagaj innego ustawienia zwr, gdy
s jedynym dyskiem na kablu, a innego, gdy s dyskiem master z dyskiem slave na tej
samej tamie). Nieprawidowe uzworkowanie dyskw jest bdem popenianym nawet
przez ludzi obeznanych ze sprztem. Po podczeniu dysk powinien zosta wykryty
przez BIOS. Wikszo BIOS-w ma moliwo autodetekcji, mona te wprowadzi
geometri rcznie (ilo cylindrw, gowic i sektorw powinna by podana na obudowie lub w dokumentacji dysku).
Wikszo nowoczesnych duych dyskw korzysta z adresowania LBA, aby obej
ograniczenia rozmiaru dyskw naoone przez BIOS. Jeeli BIOS nie wykrywa dysku,
naley sprawdzi po kolei: kabel zasilania, poprawno podczenia tamy danych
(zwykle ya oznaczona na czerwono powinna by przy kablu zasilania, ale nie zaszkodzi sprawdzi w obie strony) i zwory master/slave. Jeeli wszystko jest w porzdku,
dysk moe by uszkodzony albo dwa dyski (jeeli pochodz od rnych producentw)
mog le wsppracowa. Aby to sprawdzi, mona odczy gwny dysk i wpi nowy, ze zwork ustawion na master, na jego miejsce. Jeeli wtedy dysk zostanie wykryty, mona podejrzewa niezgodno napdw. Naley pamita, eby przecza kable przy wyczonym komputerze w przeciwnym wypadku mona uszkodzi dysk.
Po podczeniu dysku i wykryciu przez BIOS naley utworzy tablic partycji. Uywajc programu fdisk (lub innego wybranego programu), tworzymy jedn partycj, obejmujc cay dysk. Trzeba pamita o zapisaniu zmian w MBR podczas wychodzenia
z programu.

226

   
  
Nastpnie naley sformatowa partycj. Poniewa tworzymy system plikw ext3, uywamy polecenia:
 " 
$

Wczylimy tu szukanie uszkodzonych sektorw dysku podczas formatowania. Program zlokalizuje te sektory i nie bdzie przechowywa w nich danych; gdyby nie zostay wykryte, ryzykowalibymy uszkodzenie danych. Szukanie uszkodzonych sektorw znaczco spowalnia tworzenie systemu plikw, ale jest zwykle dobrym pomysem.
Utwrzmy teraz tymczasowy punkt montowania dysku i zamontujmy go:
  ( 
 !& 
$ ( 

Teraz naley skopiowa zawarto katalogu /home na nowo utworzon partycj. Istotne
jest zachowanie znacznikw czasu oraz praw dostpu. Kopiujemy cae drzewo katalogw; z trzech metod, ktrych mona uy do tego celu (wykorzystanie polece ,
  lub  ), wybieramy najbardziej nam odpowiadajc:
  
 ) ( 

Nastpnie trzeba dopisa do pliku /etc/fstab linijk opisujc sposb montowania nowego systemu plikw:
*"* 1* .1 

Wybralimy pozostawienie domylnych opcji montowania dla naszej partycji. S one


identyczne jak domylne opcje montowania systemu plikw ext2, plus domylny tryb
uywania urnalu .
Po restarcie systemu nowa partycja zawierajca skopiowane pliki bdzie widoczna jako
katalog /home. Zanim to zrobimy, wejdmy do katalogu /home i utwrzmy nowy plik:
!
   '
 

Teraz moemy prbnie zamontowa now partycj:


! ! ( 
 ! 
$
 

Teraz, jeeli sprawdzimy zawarto katalogu /home


 
 

nie zobaczymy pliku tojeststarykataloghome utworzonego poleceniem . Stare pliki


dalej s na swoim miejscu, zostay jedynie przesonite zamontowan partycj. Kiedy
ju sprawdzimy, e wszystko dziaa, moemy odmontowa now partycj i skasowa
star zawarto katalogu /home (ktry moemy rozpozna po obecnoci pliku tojeststarykataloghome). Moemy uy podobnej techniki do tworzenia plikw zastpczych
lub ostrzegajcych, e system plikw, ktry powinien by w tym miejscu, nie jest zamontowany.

   
   

227

40
Najwyszy czas zacz przyzwyczaja si do czego nowego. W poprzednim przykadzie
uylimy tradycyjnego przykadu koczcego si miejsca na dysku i dodawania nowego
napdu. A gdyby mona to byo zrobi w przezroczysty sposb? Tak wanie dziaa LVM
(Logical Volume Manager meneder woluminw logicznych): przestrze dyskowa
z rnych urzdze moe by poczona w pojedynczy wolumin logiczny.
Podobnie jak w przypadku kadej nowej technologii, mamy tu strom krzyw uczenia, na co
skada si w duej mierze sownictwo. To, co dotychczas nazywalimy partycjami, okrelimy teraz jako woluminy fizyczne; moemy dodawa woluminy fizyczne do listy woluminw skadajcych si na wolumin logiczny, na ktrym moemy utworzy system plikw.
LVM moe take tworzy migawki woluminu logicznego, ktre mona oddzielnie zamontowa i wykona kopi zapasow. Moe si to wydawa bezuyteczne, ale na intensywnie uywanych systemach pliki mog si zmienia w trakcie wykonywania kopii
zapasowej, w zwizku z czym odtworzone pniej pliki mog by bdne.
Szczegowe informacje na temat konfiguracji systemu LVM znajduj si na stronie
podrcznika systemowego lvm.

# *+ 2 



Program KDE KDiskFree (rysunek 10.1), uruchamiany z menu KDE lub z linii polece
jako
, wywietla wszystkie systemy plikw wymienione w /etc/fstab, pokazujc informacje na ich temat i umoliwiajc atwe montowanie i wymontowywanie5. Inny program KDE, KwikDisk, umoliwia montowanie i wymontowywanie systemw plikw
przy uyciu apletu panela KDE (jest on apletem programu KDiskFree).


Program KDiskFree

Jak wida na rysunku, program nie radzi sobie szczeglnie dobrze z dyskami opisanymi w * * 
przez podanie etykiety zamiast pliku urzdzenia przyp. tum.

228

   
  
Narzdzie uytkownika montowania dysku, usermount (rysunek 10.2), znajduje si
w menu KDE i GNOME w dziale System, pod nazw Disk Management. Pozwala ono
take formatowa dyski.



Narzdzie usermount

Zarwno KDE, jak i GNOME zawieraj programy do formatowania dyskietek. Program


gfloppy znajduje si w menu GNOME Narzdzia pod nazw Formater dyskietek, natomiast kfloppy mona znale w menu KDE Uytki. Oba programy pozwalaj sformatowa dyskietki 3,5 i 5,25 niskiej i wysokiej gstoci zarwno w systemie plikw FAT,
jak i ext2. Przedstawione s na rysunku 10.3.


Programy
do formatowania
dyskietek, od lewej
dla GNOME i KDE

 
 
6 
Polecenie  moe wywietli lub zmieni etykiet dysku ext2 lub ext3 (mona to
osign take opcj # polecenia  ). Aby na przykad zmieni etykiet partycji
/dev/hda4 na Dane, moemy powiedzie:
"  
 #* 

Do czego moe si przyda etykieta? Mona uy jej zamiast nazwy urzdzenia w /etc/fstab
i, jeeli stosuje si rne partycje, atwiej jest utrzyma porzdek, gdy maj one nazwy, a nie

   
   

229

numery. Mona wtedy take zamienia partycje miejscami bez zmieniania pliku fstab. Polecenie  jest atwiejsze do zapamitania ni opcja polecenia  (jakby jakiekolwiek polecenia uniksowe byy atwe do zapamitania).

" 
Naukowcy zajmujcy si nauczaniem twierdz, e rni ludzie ucz si na rne sposoby.
Dla tych czytelnikw, ktrzy wol przykad od wykadu, zaraz przedstawimy kilka.

0       " 


Poniewa wikszo z nas nie posiada wolnego komputera lub dysku twardego do eksperymentw i wicze, utwrzmy wic dysk w pliku, zapisujc do niego obraz systemu plikw i montujc go przy uyciu urzdze-ptli (loopback device). W ten sposb
nie ryzykujemy przypadkowego uszkodzenia waciwego systemu. W zasadzie mona
by te uy dyskietek, ale ich may rozmiar ogranicza moliwoci wicze.

;   <     "  "


Do utworzenia pliku uyjemy polecenia . Ustawimy rozmiar bloku na 1024 bajty (jeden kilobajt) i utworzymy plik o rozmiarze 10 MB (bdzie konieczne posiadanie wystarczajcej iloci wolnego miejsca na dysku). Potrzebujemy wic 10.240 kilobajtowej
wielkoci blokw.
Jeeli obraz miaby mie rozmiar dyskietki, naleaoby wybra 2880 blokw 512bajtowych dla dyskietki 1,44 MB lub 5760 dla dyskietki 2,88 MB.
 +  '$,"#!$,"#,
;

U @ 
;

U@ 

Jeeli sprawdzimy typ pliku za pomoc polecenia , zobaczymy nastpujcy komunikat:
  '
**

;  " <     " 


Mamy wic plik peen zer. Naley teraz przekona system, e jest to urzdzenie blokowe, a nie plik z danymi, wic uyjemy polecenia   , przypisujcego zwykym plikom urzdzenia-ptle:
!   ,  '

230

   
  
Nastpnie moemy utworzy system plikw:
 "  ,
 :!<?A
?
( 3
%&#.
5 @3! 3
(
@3! 3
/0   
/  !/V 

"



(
  3
  

<7  

<7



< 


&
   
   
<71
8
   
8

   
  
      "
0 

< "
  
2 ? 
?  "



;   < 
     " 
Gdy ju utworzylimy system plikw, moemy poeksperymentowa z rnymi opcjami
polecenia formatujcego. Teraz przyda si punkt zamontowania dla naszego systemu
plikw:
   '

Moemy teraz zamontowa nasz plik:


 !  ,  '

Mona zamontowa plik w ten sposb, poniewa do pliku jest ju przypisane urzdzenie-ptla. Przy pniejszym montowaniu naley zaznaczy, e system powinien uy
urzdzenie-ptli przez podanie opcji montowania  :
 !   '  '

Po zamontowaniu nowego systemu plikw moemy do niego zajrze i zobaczy, e


utworzony zosta katalog lost+found i polecenie  zwraca wynik podobny do przedstawionego niej:

  '
(&@29"2VA  
*"* 7:A17AV**

Aby odmontowa system plikw, naley uy polecenia:


! !  '

Mona te zrobi kopi zapasow pliku, na wypadek gdybymy popsuli orygina:


   '  ' 

   
   

231

Po utworzeniu systemu plikw mona tworzy w nim katalogi, kopiowa do niego pliki,
kasowa je, prbowa odzyskiwa i generalnie wprowadza kontrolowany chaos, jednoczenie uczc si i wiczc przydatne umiejtnoci. W razie zniszczenia systemu plikw
bez moliwoci naprawy, naley go wymontowa, skasowa plik i utworzy nowy.

   " 


Sprawdmy nasz system za pomoc polecenia   po uprzednim wymontowaniu:
! "  '
 :!<?A
?
(" N O
#  N " O
(22$' ::<<? 0?/?  ?/  1
(  
.6(/1
(
" !
( 
 
R

( 
6


 "
+ 
(%&#.
$  /0
5  
B
"   /
(
  7<7<
(
 /7
(
  
5 @
(
@
5 

<7
(


<7
$ 

<
$   

0
# &9/
#
&9/1:
A  
A.  0
#  &91
+ 
"///!0 
C.   
8( /111
B
"  !


B
"  !


(
 
$ @<
T
!5 ?<7
I

&
 T
'

?
5  1!; $  !;1
$  /?0!;
</
  07
 
 

(
  :<?<7
(
 ?<
T
!5 <71?17
5 &
 <71T
'

<7?<7
5  <7/!; $  <70!;1

232

   
  
$  <7:?<1/0!;
<<1
  <
 
 

(
  <1/:?17
(
 <?/0

Wywietla ono, jak wida, sporo informacji. Czytelnik moe porwna je z opisami budowy systemu plikw we wczeniejszej czci rozdziau, aby lepiej poj sposb jego
dziaania.

= 
 
  "


 "
Czytelnik prawdopodobnie pamita, e do, praktycznie rzecz biorc, dowolnej manipulacji systemem plikw naley system wymontowa. Jak mona przemontowa partycje,
nie przerywajc pracy systemu? Aby na przykad przemontowa partycj /home (zakadajc, e katalog ten jest umieszczony na oddzielnej partycji) w trybie tylko do odczytu,
aby sprawdzi j poleceniem  
, a nastpnie zamontowa j z powrotem z moliwoci zapisu, uywamy opcji  polecenia :
 ! !-
 

Nie zadziaa to, gdy zalogowany jest zwyky uytkownik, poniewa partycja /home
bdzie zajta.

Teraz moemy bezpiecznie uruchomi na tej partycji polecenie  


. Po zakoczeniu
przywracamy moliwo zapisu:
 ! !-(
 

Jeeli po starcie systemu gwny system plikw pozosta zamontowany tylko do odczytu, nie trzeba ponownie uruchamia systemu w celu umoliwienia zapisu wystarczy polecenie:
 ! !-(

Jest to atwiejsze ni wymontowanie i ponowne zamontowanie urzdzenia.

  !
 

& 

(
Aby zajrze do startowych dyskietek instalacyjnych, ktrych obrazy s na pycie instalacyjnej Red Hata, moemy zamontowa te pliki, wykorzystujc urzdzenia-ptle:
 !     
   '

>
!
 )/=?"
 
Dla zastanawiajcych si nad zawartoci tajemniczego RAM-dysku startowego podajemy informacj, e jest on zwykym systemem plikw ext2, skompresowanym przy
uyciu polecenia 4& ; rozpakujmy go w katalogu /tmp:

   
   

233

 "#$%& ' "#$%& ''+


'!+  "#$%& ''+

Jeeli w systemie nie ma pliku initrd w katalogu /boot, mona go znale na ktrej
z dyskietek startowych lub utworzy przy uyciu polecenia 
. Teraz zamontujmy
zdekompresowany obraz:
 !  "#$%& '  '

Mona teraz do woli przyglda si zawartoci dysku.


Nie kady system bdzie posiada plik initrd. Zwykle jest on uywany do adowania
sterownikw systemw plikw (np. ext3, ReiserFS) lub sprztu (chociaby kontroler
Promise), ktre musz by obecne, zanim system bdzie mg kontynuowa procedur
startow. Niektre dystrybucje jednodyskietkowe uywaj startowego RAM-dysku do
zaadowania minimalnego systemu operacyjnego, ktry z kolei dekompresuje i aduje
waciwy system plikw z dyskietki.
Mona w ten sposb montowa take obrazy .iso, ale naley pamita, e s one zawsze tylko do odczytu ze wzgldu na budow systemu plikw iso9660; do innych systemw plikw
mona pisa, o ile nie zamontuje si ich tylko do odczytu. W razie potrzeby wprowadzenia
zmian do pliku .iso, naley skopiowa jego zawarto na urzdzenie umoliwiajce zapis,
wprowadzi zmiany, a nastpnie utworzy nowy obraz, korzystajc z polecenia 
  .

- !
Wielu z nas lubi grzeba pod mask systemu, zwikszajc wydajno systemu, a Linux
daje nam kilka wspaniaych narzdzi do tego celu kilka wspaniaych narzdzi. Gdy
moja matka powtarzaa mi: Nie naprawiaj tego, co jest popsute, mj ojciec odpowiada:
Naprawiaj, dopki si nie zepsuje. Zanim zabierzemy si do rzeczy, chciabym jeszcze
przedstawi dwie wskazwki, po pierwsze, przed podkrcaniem systemu sprawd jego wydajno program bonnie jest dobrym testem wydajnoci dysku twardego (nie jest
czci dystrybucji Red Hat; mona go znale pod adresem http://www.coker.com.au/
bonnie++/). Po drugie, naley regulowa na raz tylko jedno ustawienie, aby byo wiadomo, co dziaa, co nie, a co jest zepsute. Niektre z ustawie mog nie dziaa lub zablokowa system.
Zawsze warto mie pod rk sprawn dyskietk startow; naley te pamita, e
wszelkie optymalizacje czytelnik przeprowadza na wasn odpowiedzialno. Dodatkowe
wskazwki na temat optymalizacji dziaania systemu mona znale na stronie WWW
o podkrcaniu Linuksa: http://www.tunelinux.com/.

@ 



8

":@? !   "
Przede wszystkim naley poszuka w dokumentacji posiadanej pyty gwnej opisu dostpnych ustawie i upewni si, e BIOS wykrywa wszystkie dyski tak, jak powinien.
Zmienia naley tylko jedno ustawienie na raz.

234

   
  
Sterowniki IDE jdra Linuksa znajduj si przede wszystkim w plikach hd.c i ide.c.
Jeden lub oba z nich mona wkompilowa na stae w jdro systemu; ide.c moe te
by moduem. Kod ! jest uywany dla zgodnoci ze starymi kontrolerami IDE
i jest domylnie uywany dla dyskw na pierwszej tamie. Na systemie z nowym
kontrolerem mona przeforsowa uycie nowszego kodu, przekazujc do jdra w linii
polece programu startowego lub w pliku konfiguracyjnym LILO albo GRUB parametr .. )..
Inne opcje przedstawione poniej, opracowane zostay na podstawie BootPromptHOWTO i dokumentacji jdra. Mona ich uy do optymalnego skonfigurowania kontrolerw i dyskw IDE; zyski dla rnego sprztu mog si rni, a ustawienia te nie
bd dziaa we wszystkich systemach.



 wcza obsug DMA.


 prbuje dostroi interfejs w celu osignicia odpowiedniej

wydajnoci.


,, wcza obsug dyskw ATA66 (o ile dostpny jest odpowiedni

kontroler).


   wcza emulacj SCSI, wymagan dla nagrywarek CD-RW;

moe dawa pewn popraw wydajnoci take dla zwykych napdw CD-ROM.


   moe by dowoln liczb od 20 do 66; warto ta zwykle jest


wykrywana automatycznie, ale jeli w komunikatach  4 znajduj si uwagi
o nieudanej autodetekcji lub ustawienia zostay zmienione (przetaktowane)
w BIOS-ie, mona poda konkretn warto. Wikszo kontrolerw PCI
bdzie dziaa z wartoci 33.

  niektre pyty gwne dziaaj bdnie bez tej funkcji; jeeli
opcja ta nie jest wymieniona w komunikatach  4, nie naley jej uywa.

Opcje te podaje si w taki sam sposb, jak omawiane wczeniej . )..

   (

Polecenie   moe zosta uyte przez superuytkownika do zmiany ustawie dyskw twardych IDE (ale ju nie SCSI).
Razem z at na jdro systemu i dodatkowymi programami obsugi dyskw program ten
jest czci dystrybucji Red Hat 7.3. Eksperymentw naley dokonywa z dyskami zamontowanymi tylko do odczytu. Program dziaa take z napdami CD-ROM i niektrymi dyskami SCSI.
Oglnie rzecz biorc, sposb wywoania polecenia wyglda nastpujco:

   

Strona podrcznika systemowego hdparm jest bardzo dokadna i zawiera szczegowe


informacje; poniej s podane najbardziej przydatne opcje.

   
   


235

 pobierz (ustaw) wskanik odczytu-w-przd (read-ahead) systemu plikw.

Jest to uywane do zwikszania wydajnoci w sekwencyjnych odczytach duych


plikw poprzez wstpne pobieranie dodatkowych blokw w nadziei, e oka
si one potrzebne. W obecnej wersji jdra (2.0.10) ma to domylne ustawienie
w liczbie 8 sektorw (4 KB). Warto ta wydaje si by dobra dla wikszoci
celw, lecz w systemach, gdzie czsto uywa si losowych przemieszcze
w pliku, lepsza moe by wiksza warto. Dodatkowo, wiele sterownikw IDE
ma take oddzielne wbudowane funkcje tego typu, ktre w wielu sytuacjach
niweluj potrzeb odczytu-w-przd.


 sprawd (wcz) obsug 32-bitowego I/O w (E)IDE. Mona uy


numerycznego parametru do wczenia (wyczenia) obsugi: . wycza obsug
32-bitowego I/O, ) wcza 32-bitowe transfery danych,  wcza 32-bitowe

transfery danych ze specjaln sekwencj sync wymagan przez wiele chipsetw.


Warto  dziaa z prawie wszystkimi chipsetami 32-bitowego IDE, lecz naraa
na dodatkowe koszty. Zauwa, e 32-bit odnosi si do transferw poprzez
szyn PCI lub VLB, lecz tylko do sterownika IDE; wszystkie napdy (E)IDE
maj wci tylko 16-bitowe poczenie ze sterownikiem.


 wcz (wycz) flag using_dma (uycie DMA) dla tego napdu. Opcja ta

dziaa tylko z kilkoma kombinacjami napdw i interfejsw, ktre obsuguj


DMA, a ktre s znane sterownikowi IDE. Praktycznie dla szynowo zarzdzanych
operacji DMA z wieloma napdami obsugiwany jest chipset Intel Triton
(eksperymentalnie). Dobrym pomysem jest te uywanie opcji 56 w poczeniu
z ), aby zapewni, e napd sam w sobie jest zaprogramowany na drugi tryb
DMA wielokrotnych sw. Uywanie DMA niekoniecznie musi powodowa
zwikszenie wydajnoci, lecz wielu ludzi przy tym obstaje.


 wywietl informacj identyfikujc, ktra zostaa uzyskana od napdu

podczas bootowania, o ile jest ona dostpna. Jest to waciwo nowoczesnych


napdw IDE i moe nie by obsugiwana przez starsze urzdzenia. Zwracane
dane mog nie by aktualne, zalenie od dziaa od bootowania systemu.
Mimo to, zawsze pokazywany jest biecy licznik trybu wielokrotnych
sektorw. Dla bardziej dokadnej interpretacji informacji identyfikujcej,
odsyamy do specyfikacji AT Attachment Interface for Disk Drives (ANSI ASC
X3T9.2 working draft, revision 4a, April 19/93).


7 daj informacji identyfikacji bezporednio od napdu. Poza tym dziaa


podobnie do opcji .


pobierz (ustaw) flag keep_settings_over_reset (zachowaj ustawienia
po resecie). Gdy ta flaga jest ustawiona, sterownik bdzie chroni opcje 

po mikkim resecie.


8 ustaw flag keep_features_over_reset (zachowaj waciwoci po resecie).

Ustawienie powoduje, e napd odzyskuje po mikim resecie ustawienia


dla -APSWXZ. Nie wszystkie napdy obsuguj t funkcj.


 pobierz (ustaw) licznik sektorw dla wielosektorowego wejcia-wyjcia

w napdzie. Ustawienie 0 wycza t funkcj. Tryb ten (inaczej znany jako IDE
Block Mode) jest waciwoci wikszoci nowoczesnych dyskw twardych
IDE, zezwalajc na transfer wielu sektorw podczas jednego przerwania

236

   
  
wejcia-wyjcia zamiast tradycyjnego jednego sektora. Gdy wczona jest ta
funkcja, zazwyczaj redukuje to obcienie wejcia-wyjcia przez system
o 30 50%. Na wielu systemach zwiksza to take przepustowo napdu
w granicach od 5% do 50%. Mimo to, niektre napdy (najbardziej zauwaalnie
seria WD Caviar) wydaj si dziaa wolniej w tym trybie.


 prba przeprogramowania chipsetu interfejsu IDE na okrelony tryb PIO

lub prba automatycznego dostosowania si do najlepszego trybu PIO


obsugiwanego przez napd. Waciwo ta jest obsugiwana w jdrze tylko
dla kilku znanych chipsetw. Niektre chipsety IDE nie s w stanie zmieni
trybu PIO dla pojedynczego napdu; w tym wypadku flaga ta moe spowodowa
ustawienie trybu PIO dla obydwu napdw. Wiele chipsetw IDE obsuguje
albo mniej, albo wicej ni standardowe 6 (od 0 do 5) trybw PIO, wic dokadne
ustawienie szybkoci, ktre waciwie jest zaimplementowane, bdzie rni si
zalenie od wyrafinowania chipsetu (sterownika). Uywaj z wielk ostronoci!
Funkcja ta nie daje ochrony dla nieuwanych, a niepomylne dziaanie moe
spowodowa powane uszkodzenie systemu plikw!


 obsu nastpn flag cicho, nie wydajc komunikatw na wyjcie. Jest to

uyteczne dla redukowania zamieszania na ekranie w wypadku uruchamiania


z /etc/rc.d/rc.local. Nie stosuje si do flag , ,  i 9.


 pobierz (ustaw) flag read-only (tylko do odczytu) urzdzenia. Gdy jest

ustawiona, operacje zapisu nie s na tym urzdzeniu dozwolone.




9 dokonaj pomiarw czasu odczytw cache dla celw porwnawczych

i testw wydajnociowych. Aby uzyska znaczce wyniki, operacja ta powinna


by powtarzana 2-3 razy na nieaktywnym pod innymi wzgldami systemie
(bez innych aktywnych procesw) z przynajmniej kilkoma megabajtami wolnej
pamici. Wywietla szybko odczytu bezporednio z linuksowej pamici
podrcznej buforw dyskowych, bez dostpu do dysku. Ta miara jest wskanikiem
przepywu danych midzy procesorem, pamici podrczn i pamici systemu.
Jeli podano rwnie flag , to wskanik poprawnoci, oparty na wyniku 9,
zostanie wczony do wyniku zgaszanego przez operacj .


 dokonaj pomiarw czasu odczytw z urzdzenia dla celw porwnawczych


i testw wydajnociowych. Aby uzyska znaczce wyniki, operacja ta powinna
by powtarzana 2-3 razy na nieaktywnym pod innymi wzgldami systemie
(bez innych aktywnych procesw) z przynajmniej kilkoma megabajtami wolnej
pamici. Wywietla to szybko odczytu poprzez cache buforowy z dysku,
bez wczeniejszego cacheowania danych. Ta miara jest wskanikiem tego,
jak szybko napd jest w stanie obsugiwa sekwencyjne odczyty danych pod
Linuksem bez obcienia zwizanego z systemem plikw. Aby zapewni
dokadne pomiary, cache jest wyprniany przy uyciu ioctl #8+#:;+.

 pobierz (ustaw) flag interrupt-unmask napdu. Ustawienie ) zezwala

sterownikowi na wyaczenie maskowania innych przerwa podczas przetwarzania


przerwania dyskowego, co poprawia w duej mierze pynno dziaania systemu
i eliminuje bdy serial port overrun. Uywaj tej funkcji z ostronoci: niektre
kombinacje napd-kontroler nie radz sobie z ni dobrze, co moe spowodowa
powane uszkodzenie systemu plikw. W szczeglnoci interfejsy CMD-640B
i RZ1000 (E)IDE mog by niestabilne (z powodu usterek sprztowych),

   
   

237

gdy opcja ta jest uywana z wersjami jdra wczeniejszymi ni 2.0.13. Wyczenie


funkcji IDE prefetch tych interfejsw (zwykle ustawienie BIOS/CMOS) daje
bezpieczne rozwizanie tego problemu dla wczeniejszych jder.


< wcz (wycz) pami podrczn zapisu w napdach IDE (domylnie

wyczone).


5 ustaw tryb transferu IDE dla nowszych napdw (E)IDE/ATA2. Jest to


zazwyczaj uywane w poczeniu z ), gdy wcza si DMA do (z) napdu

na obsugiwanym ukadzie kontrolera (jak na przykad Intel 430FX Triton)


przy uyciu 56 do wyboru trybu transferw multiword DMA mode2. Poza
tym uycie tej flagi jest rzadko potrzebne, gdy wikszo (wszystkie)
nowoczesnych napdw IDE domylnie ustawia si na najszybszy ze swoich
trybw PIO przy wczaniu. Zmiana tego zachowania moe by bezuyteczna
i ryzykowna. Na dyskach, ktre wspieraj alternatywne tryby transferu, mona
uy 5 do przeczania samego trybu napdu. Przed zmian trybu transferu
interfejs IDE powinien by uzworkowany lub zaprogramowany (zobacz flag
 ) dla nowego trybu, aby zapobiec utracie i (lub) zniszczeniu danych.
Uywaj tego ze szczegln uwag! Dla trybw transferu PIO (Programmed
Input/Output) uywanych przez Linuksa warto ta jest po prostu oczekiwanym
numerem trybu PIO plus 8. Warto 09 ustawia wic tryb PIO mode1, 10 PIO
mode2, a 11 wybiera PIO mode3. Ustawienie 00 odtwarza domylny tryb PIO
dysku, a 01 wycza IORDY.

- !

Nie ma sensu zostawianie rzeczy takimi, jakie s. Linux dostarcza kilku narzdzi do dostrajania ustawie systemu plikw. Uwaa si, e producenci sprztu i twrcy dystrybucji maj tendencje do wybierania raczej konserwatywnych ustawie, ktre bd zawsze
dziaa, nie wykorzystujc jednak penego potencjau systemu, w czym niniejsza ksika usiuje pomc.
Projektanci systemu plikw Linuksa bardzo dobrze wybrali domylne wartoci uywane
przy tworzeniu systemu plikw. Mimo e dziaaj one dobrze dla wikszoci uytkownikw, w niektrych zastosowaniach serwerowych mona zyska na wydajnoci po
zmianie pewnych parametrw systemu plikw. Jak zwykle, sprawdzaj dziaanie wprowadzonych zmian za pomoc testw wydajnociowych.

    


Opcja '  0   tworzy mniejsz ilo kopii superbloku, pozostawiajc wiksz
ilo miejsca do wykorzystania na pliki. Nie poprawia to w zasadzie wydajnoci, ale na
duych dyskach moe zwolni dodatkowe miejsce. Opcja jest domylnie wczona dla
jder systemu serii 2.2 i pniejszych; jest tu wymieniona tylko dlatego, e wiele rde
nie zwraca na ten fakt uwagi (opcj t mona zmieni w utworzonym ju systemie plikw za pomoc polecenia  ).

238

   
  
Mona te ustali rozmiar bloku przy uyciu opcji 
. Moe on mie wpyw na
wydajno systemu plikw, bo due bloki lepiej dziaaj dla duych plikw i vice versa.
Zasadniczo nie ma regu dotyczcych rozmiaru bloku i zaleca si pozostanie przy domylnych 1024 bajtach lub spdzenie sporej iloci czasu na testowaniu wydajnoci przy
rnych ustawieniach.

    " 


Uywajc polecenia  , mona dostroi kilka zmiennych parametrw systemw
ext2 lub ext3. Oto kilka zwizanych z wydajnoci.


Aby wyczy okresowe sprawdzanie systemu plikw, ustaw warto licznika


montowa przy ktrej system bdzie sprawdzany, na zero (opcja .).

Odstp czasowy midzy kolejnymi wymuszanymi sprawdzeniami systemu


plikw ustala si opcj .

Opcja  moe ustali mniejsz ilo blokw zarezerwowanych


dla superuytkownika (podaje si warto w procentach), uwalniajc
miejsce dla uytkownikw kosztem przestrzeni na odzyskane pliki dla  
.

Mona zmniejszy ilo kopii superbloku przy uyciu opcji '  0  


(nowo tworzone systemy plikw maj to ustawione domylnie). Po ustawieniu
tej opcji naley uruchomi  
.

Jeszcze wicej przestrzeni mona zwolni, posugujc si poleceniem ,


ustawiajcym ilo blokw zarezerwowanych dla superuytkownika.

Warto zauway, e wikszo tych opcji zwalnia cz miejsca na dysku kosztem


moliwoci odzyskania danych przez  
. O ile nie ma koniecznoci wykorzystania
kadego dostpnego fragmentu dysku bez wzgldu na konsekwencje, naley pozosta
przy wartociach domylnych due dyski s coraz tasze.

    
Polecenie to sprawdza zarwno systemy ext3, jak i ext2. Oto niektre z przydatniejszych opcji, wedug strony podrcznika systemowego.


 zamiast uy domylnego superbloku, uyj podanej w argumencie


kopii zapasowej. Ta opcja jest zwykle uywana w razie zniszczenia domylnego
superbloku. Pooenie superbloku zapasowego zaley od rozmiaru bloku systemu
plikw; dla systemw z jednokilobajtowymi blokami superblok mona znale
w bloku 8193; przy dwukilobajtowych blokach bdzie on w bloku 16384, a przy
czterokilobajtowych w bloku 32768.

Mona okrela dodatkowe superbloki, wywoujc polecenie 


 z opcj , powodujc wypisanie pooenia superblokw. Aby polecenie wypisao prawidowe wartoci,
naley uy opcji , podajc rozmiar bloku.

   
   

239

Jeeli podano superblok, a system nie zosta otwarty tylko do odczytu,  
zapisze
w gwnym superbloku prawidowe informacje na zakoczenie sprawdzenia systemu.


 wcza poszukiwanie uszkodzonych sektorw dysku przy uyciu polecenia



i oznaczanie ich przez dodanie numerw blokw do i-wza

uszkodzonych blokw.


 wymusza sprawdzenie, nawet gdy system wydaje si czysty.

 dodaj bloki o numerach podanych w pliku do listy uszkodzonych


blokw. Format pliku jest taki sam, jak tworzony przez polecenie 
.

# ustawia list uszkodzonych blokw na zawarto podanego pliku.


Opcja dziaa analogicznie do , z tym, e przed dodaniem zawartoci pliku lista
uszkodzonych blokw jest czyszczona.

 otwiera system plikw tylko do odczytu, zakadajc odpowied nie


na wszystkie pytania. Umoliwia nieinteraktywne uycie  
.

 automatycznie naprawia system plikw bez zadawania pyta.

 wcza szczegowy opis dziaa.

   6
6
Nie jest programem do dostrajania wydajnoci, 
sprawdza partycj, najlepiej
wymontowan, w poszukiwaniu uszkodzonych sektorw dysku. Oto niektre bardziej
przydatne opcje wymienione na stronie podrcznika systemowego.


 normalnie 
odmwi wykonania testu z zapisem na zamontowanym
systemie plikw, poniewa mogoby to doprowadzi do zapaci systemu.
Mona zmusi program do przeprowadzenia testu przy uyciu opcji ,
ale w normalnych warunkach nie powinno si tego robi. Jedynym przypadkiem,
gdy opcja ta jest bezpieczna w uyciu, jest nieprawidowa zawarto pliku
/etc/mtab, wskazujca na zamontowanie partycji, gdy faktycznie nie jest ona
zamontowana.

   czyta z pliku list znanych ju uszkodzonych blokw.


Program nie bdzie wtedy sprawdza tych blokw, poniewa wiadomo, e s
one uszkodzone. Gdy zamiast nazwy pliku poda si , lista bdzie odczytana
ze strumienia wejciowego. Bloki wymienione w tym pliku nie bd zapisane
na ekran ani do pliku wyjciowego. Mona uy opcji  polecenia    ,
aby uzyska spis blokw oznaczonych jako uszkodzone w formacie
odpowiednim do uycia w tej opcji.

   wypisz list uszkodzonych blokw do podanego pliku.


Bez tej opcji program wywietla numery blokw na ekranie. Format pliku
jest odpowiedni do wykorzystania z opcj  polece  
i 
 .

 wykonuje niedestruktywny test z zapisem; domylnie wykonywany jest

jedynie niedestruktywny test z samym odczytem. Nie mona czy tej opcji
z opcj  , poniewa wykluczaj si one wzajemnie.

240

   
  


 wywietlaj postp operacji, wypisujc numery sprawdzanych w danej

chwili blokw.


 wcza szczegowy opis dziaa.

 wykonuje test z zapisem. W tym tecie 


szuka uszkodzonych
blokw, zapisujc pewne wzorce (. ==, . ((, . ++, . ..) na kadym bloku

urzdzenia, nastpnie odczytujc blok i porwnujc zawarto. Nie mona


uywa tej opcji cznie z .

@ 
 



Opcji tej uywa si w pliku fstab; wycza ona zapisywanie znacznika czasu ostatniego
dostpu do i-wza. Daje to wzrost prdkoci dziaania systemu plikw, gdy jest on obciony czstym dostpem, a informacja o czasie ostatniego dostpu nie jest istotna.




http://www.linuxdoc.org/HOWTO/Filesystems-HOWTO.html w dokumencie
Filesystems-HOWTO mona znale wiele informacji zarwno na temat
wasnych systemw plikw Linuksa, jak i na temat systemw bardziej
egzotycznych.

http://www.linuxdoc.org/HOWTO/mini/Partition/index.html wiele
szczegowych informacji na temat partycjonowania dysku.

http://people.spoiled.org/jha/ext3-faq.html nieoficjalne FAQ linuksowego


systemu plikw ext3.

http://www.linuxdoc.org/HOWTO/mini/Ext2fs-Undeletion.html dokument ten


moe pomc w odzyskaniu skasowanego wanie z partycji ext2/ext3 pliku.

http://www.linuxdoc.org/HOWTO/mini/Ext2fs-Undeletion-Dir-Struct/index.html
nawet w przypadku skasowaniu caego katalogu s jeszcze szanse odzyskania
danych.

http://www.linuxdoc.org/HOWTO/mini/Loopback-Root-FS.html moemy
korzysta nie tylko ze zwykego systemu plikw, ale te z gwnego systemu
plikw zawartego w pliku zapisanego w innym systemie plikw; sposb wykonania
takiej konfiguracji znajduje si w tym dokumencie.

http://www.linuxdoc.org/HOWTO/Loopback-Encrypted-Filesystem-HOWTO.html
dokument opisujcy konfiguracj i uywanie szyfrowanego systemu plikw.

http://www.linuxdoc.org/HOWTO/LVM-HOWTO.html czas poegna si


z przestarzaymi dyskami fizycznymi i systemami plikw o ograniczonym
rozmiarze; pomoe w tym z pewnoci ten dokument, opisujcy system LVM.

http://www.linuxdoc.org/HOWTO/UMSDOS-HOWTO.html dokument
zawierajcy informacje na temat korzystania z systemu plikw umsdos.

   
   

241

http://www.linuxdoc.org/HOWTO/mini/NFS-Root.html, http://www.linuxdoc.org/
HOWTO/mini/NFS-Root-Client-mini-HOWTO/index.html opis konfiguracji
i uywania gwnego systemu plikw montowanego zdalnie jako dysk NFS.

http://www.nyx.net/~sgjoen/disk.html HOWTO na temat podkrcania


wydajnoci systemu z wieloma dyskami; zawiera take oglne informacje
o dyskach, kontrolerach i systemach plikw.

http://www.linuxdoc.org/HOWTO/Software-RAID-HOWTO.html omwienie
konfiguracji programowych macierzy RAID.

http://www.linuxdoc.org/HOWTO/mini/DPT-Hardware-RAID.html omwienie
konfiguracji sprztowej macierzy RAID, z naciskiem na macierze produkowane
przez DPT.

http://www.linuxdoc.org/HOWTO/Tips-HOWTO.html oglne wskazwki


na temat uywania Linuksa, w tym odpowiedzi na pytania dotyczce systemw
plikw, takie jak czy mam wystarczajco duo wolnej przestrzeni?
albo jak przenosi katalogi midzy rnymi systemami plikw?.

http://www.linuxdoc.org/HOWTO/Large-Disk-HOWTO.html dokument
dokadnie omawiajcy wszelkie kopoty zwizane z uywaniem duych dyskw
i sposoby ich rozwizania.

http://www.linuxdoc.org/HOWTO/BootPrompt-HOWTO.html dokument ten


omawia przekazywanie argumentw do jdra Linuksa podczas startu systemu,
wcznie ze spisem najpotrzebniejszych argumentw.

http://www.atnf.csiro.au/~rgooch/linux/docs/devfs.html FAQ linuksowego


systemu plikw urzdze Devfs.

http://www.linux-usb.org/USB-fuide/x498.html rozdzia linuksowego


przewodnika po urzdzeniach USB dotyczcy dyskw.

http://www.tunelinux.com/ strona z informacjami na temat optymalizacji


systemu Linux.

http://www.coker.com.au/bonnie++/ strona narzdzia do pomiaru


wydajnoci dyskw bonnie.

You might also like