jak działa linux ebook, ebooki
[ Pobierz całość w formacie PDF ]
4
Jak działa Linux
1.14. Wej)cie i wyj)cie powłoki ..................................................................................... 28
1.14.1. Standardowy strumie0 bł4dów ................................................................. 29
1.14.2. Przekierowywanie standardowego wej)cia .............................................. 30
1.15. Prawidłowe odczytywanie komunikatów o bł4dach .............................................. 30
1.15.1. Typowe bł4dy........................................................................................... 31
1.16. Procesy................................................................................................................... 32
1.16.1. Przerywanie działania procesów .............................................................. 33
1.16.2. Kontrola zada0 ......................................................................................... 34
1.16.3. Procesy działaj%ce w tle............................................................................ 34
1.17. Tryby plików i uprawnienia................................................................................... 35
1.17.1. Modyfikowanie uprawnie0....................................................................... 36
1.17.2. Dowi%zania symboliczne.......................................................................... 38
1.18. Archiwizowanie i kompresowanie plików............................................................. 39
1.18.1. Archiwa skompresowane (.tar.gz)............................................................ 41
1.18.2. Inne narz4dzia kompresuj%ce.................................................................... 42
Rozdział 2. Urzdzenia, dyski, systemy plików i jdro systemu............................ 43
2.1. Hierarchia katalogów............................................................................................. 43
2.1.1. Najwa/niejsze katalogi............................................................................. 44
2.1.2. Pozostałe katalogi główne........................................................................ 45
2.1.3. Katalog /usr.............................................................................................. 45
2.2. J%dro systemu......................................................................................................... 46
2.3. Urz%dzenia ............................................................................................................. 47
2.3.1. Polecenie dd i urz%dzenia......................................................................... 48
2.3.2. Podsumowanie nazewnictwa urz%dze0..................................................... 49
2.3.3. Tworzenie plików urz%dze0 ..................................................................... 52
2.3.4. Partycjonowanie urz%dze0 dyskowych..................................................... 53
2.4. Systemy plików...................................................................................................... 56
2.4.1. Typy systemów plików............................................................................. 56
2.4.2. Tworzenie systemu plików....................................................................... 57
2.4.3. Montowanie systemu plików.................................................................... 57
2.4.4. Buforowanie systemów plików ................................................................ 59
2.4.5. Opcje montowania systemów plików....................................................... 59
2.4.6. Tabela systemów plików /etc/fstab........................................................... 61
2.4.7. Pojemno)A systemu plików ...................................................................... 63
2.4.8. Sprawdzanie i naprawianie systemów plików.......................................... 64
2.4.9. Systemy plików o specjalnym znaczeniu ................................................. 67
2.5. Przestrze0 wymiany i pami4A wirtualna................................................................. 67
2.5.1. Wykorzystywanie partycji jako przestrzeni wymiany.............................. 68
2.5.2. Wykorzystywanie pliku jako przestrzeni wymiany.................................. 68
2.5.3. Jak wielkiej przestrzeni wymiany potrzebuj4?......................................... 69
Rozdział 3. Jak uruchamia si# Linux? ................................................................. 71
3.1. Program init ........................................................................................................... 72
3.1.1. Poziomy uruchomienia (runlevels)........................................................... 72
3.1.2. Jak uruchamiane s% procesy na ró/nych poziomach uruchomienia? ........ 74
3.1.3. Dodawanie i usuwanie usług.................................................................... 75
3.1.4. Kontrolowanie programu init ................................................................... 76
3.1.5. Wył%czanie systemu................................................................................. 77
3.2. Programy rozruchowe............................................................................................ 78
3.2.1. LILO......................................................................................................... 79
3.2.2. GRUB....................................................................................................... 79
3.2.3. Inne programy rozruchowe....................................................................... 81
3.2.4. Tryb pojedynczego u/ytkownika i uruchomienie awaryjne ..................... 81
3.3. Konsole wirtualne.................................................................................................. 82
Spis treci
5
Rozdział 4. Kluczowe pliki systemowe, serwery i narz#dzia ................................. 83
4.1. Dzienniki systemowe............................................................................................. 84
4.2. Pierwsze spojrzenie na katalog /etc........................................................................ 85
4.3. Pliki zarz%dzania u/ytkownikami........................................................................... 86
4.3.1. Manipulowanie u/ytkownikami i hasłami................................................ 88
4.3.2. Praca z grupami........................................................................................ 88
4.4. Programy getty i login............................................................................................ 89
4.5. Ustawianie czasu.................................................................................................... 90
4.5.1. Strefy czasowe.......................................................................................... 91
4.5.2. Czas sieciowy........................................................................................... 91
4.6. Planowanie powtarzalnych zada0 w programie cron ............................................. 92
4.6.1. Instalowanie plików crontab..................................................................... 93
4.6.2. Systemowe pliki crontab .......................................................................... 93
4.7. Planowanie jednorazowych zada0 w programie at................................................. 94
4.8. .ledzenie procesów................................................................................................ 94
4.8.1. Wyszukiwanie otwartych plików programem lsof ................................... 95
4.8.2. .ledzenie działania programu poleceniami strace i ltrace ........................ 97
4.9. Nadawanie procesom priorytetów.......................................................................... 99
4.10. Monitorowanie wydajno)ci systemu.................................................................... 100
4.11. Uruchamianie polece0 przez superu/ytkownika .................................................. 102
4.11.1. Rzeczywisty UID i efektywny UID........................................................ 104
Rozdział 5. Konfigurowanie sieci...................................................................... 105
5.1. Warstwy sieciowe ................................................................................................ 105
5.2. Warstwa internetowa............................................................................................ 106
5.2.1. Wi4cej o podsieciach.............................................................................. 107
5.3. Proste narz4dzia protokołu ICMP ........................................................................ 108
5.4. Konfigurowanie interfejsów i warstwy komputer-sieA......................................... 109
5.5. Konfigurowanie bramy domy)lnej....................................................................... 111
5.6. Rozwi%zywanie nazw komputerów...................................................................... 112
5.7. Korzystanie z klientów DHCP............................................................................. 114
5.8. Poł%czenia PPP .................................................................................................... 115
5.8.1. Testowanie portu szeregowego i modemu.............................................. 116
5.8.2. Uruchamianie demona pppd z plikami opcji.......................................... 117
5.8.3. Skrypty chat ........................................................................................... 119
5.8.4. Protokoły PAP i CHAP.......................................................................... 120
5.8.5. Pliki opcji............................................................................................... 121
5.8.6. Uprawnienia katalogu PPP..................................................................... 123
5.9. Poł%czenia szerokopasmowe................................................................................ 123
5.9.1. Routery................................................................................................... 124
5.9.2. PPP over Ethernet (PPPoE).................................................................... 125
5.10. Sieci Ethernet....................................................................................................... 126
5.10.1. Ethernet i protokół IP............................................................................. 127
5.10.2. Sieci prywatne........................................................................................ 128
5.11. Konfigurowanie tras............................................................................................. 129
5.12. Warstwa transportowa — TCP, UDP i usługi...................................................... 131
5.13. Zapory sieciowe................................................................................................... 132
5.13.1. Strategie tworzenia zapór sieciowych .................................................... 135
5.13.2. Opcje programu iptables ........................................................................ 136
5.14. Translacja adresów sieciowych (maskarada IP)................................................... 137
5.15. Ethernet bezprzewodowy..................................................................................... 139
5.15.1. Wykład o bezpiecze0stwie sieci bezprzewodowych .............................. 142
6
Jak działa Linux
Rozdział 6. Usługi sieciowe ............................................................................. 143
6.1. Podstawy usług .................................................................................................... 143
6.2. Serwery autonomiczne......................................................................................... 144
6.3. Demon inetd......................................................................................................... 145
6.3.1. Wrapper TCP: tcpd, /etc/hosts.allow, /etc/hosts.deny ............................ 146
6.3.2. xinetd...................................................................................................... 147
6.4. SSH...................................................................................................................... 148
6.4.1. Instalowanie biblioteki OpenSSH .......................................................... 148
6.4.2. Serwer SSHD ......................................................................................... 149
6.4.3. Klient SSH ............................................................................................. 150
6.5. Narz4dzia diagnostyczne...................................................................................... 152
6.5.1. lsof.......................................................................................................... 152
6.5.2. tcpdump.................................................................................................. 153
6.5.3. Netcat ..................................................................................................... 155
6.6. Zdalne wywoływanie procedur (RPC)................................................................. 156
6.7. Zabezpieczenie sieci ............................................................................................ 156
6.7.1.
Bezpiecze0stwo dystrybucji Linuksa ..................................................... 158
6.7.2.
Typowe słabo)ci..................................................................................... 158
6.7.3.
Skanowanie portów................................................................................ 159
6.7.4.
Lródła danych o zabezpieczeniach......................................................... 160
Rozdział 7. Wprowadzenie do skryptów powłoki ............................................... 161
7.1. Podstawy skryptów powłoki ................................................................................ 161
7.1.1. Ograniczenia skryptów powłoki............................................................. 162
7.2. Cudzysłowy.......................................................................................................... 162
7.3. Zmienne specjalne................................................................................................ 163
7.3.1. Zmienne $1, $2…................................................................................... 163
7.3.2. Zmienna $#............................................................................................. 164
7.3.3. Zmienna $@........................................................................................... 164
7.3.4. Zmienna $0............................................................................................. 165
7.3.5. Zmienna $$............................................................................................. 165
7.3.6. Zmienna $?............................................................................................. 165
7.4. Kody wyj)cia ....................................................................................................... 165
7.5. Wyra/enia warunkowe......................................................................................... 166
7.5.1. Konstrukcje logiczne && i || .................................................................. 168
7.5.2. Sprawdzanie warunków.......................................................................... 169
7.5.3. Porównywanie ci%gów znaków instrukcj% case........................................ 171
7.6. P4tle ..................................................................................................................... 172
7.7. Podmiana polece0................................................................................................ 173
7.8. Zarz%dzanie plikami tymczasowymi ..................................................................... 174
7.9. Dokumenty miejscowe......................................................................................... 175
7.10. Wa/ne narz4dzia skryptów powłoki..................................................................... 176
7.10.1. Polecenie basename................................................................................ 176
7.10.2. Polecenie awk......................................................................................... 177
7.10.3. Polecenie sed.......................................................................................... 177
7.10.4. Polecenie xargs....................................................................................... 178
7.10.5. Polecenie expr........................................................................................ 179
7.10.6. Polecenie exec........................................................................................ 179
7.11. Podpowłoki.......................................................................................................... 179
7.12. Wł%czanie do skryptów innych plików ................................................................ 180
7.13. Pobieranie danych od u/ytkowników................................................................... 180
7.14. Za du/o?............................................................................................................... 180
Spis treci
7
Rozdział 8. Narz#dzia programistyczne ............................................................. 183
8.1. Kompilator j4zyka C............................................................................................ 183
8.1.1. Wiele plików Sródłowych....................................................................... 184
8.1.2. Pliki i katalogi nagłówkowe................................................................... 185
8.1.3. Konsolidacja z bibliotekami................................................................... 187
8.1.4. Biblioteki współdzielone........................................................................ 188
8.1.5. Make....................................................................................................... 191
8.2. Debugery.............................................................................................................. 197
8.3. Lex i Yacc............................................................................................................ 198
8.4. J4zyki skryptowe.................................................................................................. 198
8.4.1. Perl......................................................................................................... 200
8.4.2. Python .................................................................................................... 200
8.4.3. Pozostałe j4zyki skryptowe .................................................................... 201
8.5. Java ...................................................................................................................... 201
8.6. Kod asemblerowy i zasada działania kompilatorów ............................................ 202
Rozdział 9. Kompilowanie programów z kodu 2ródłowego.................................. 205
9.1. Rozpakowywanie pakietów Sródłowych.............................................................. 206
9.1.1. Od czego zacz%A? ................................................................................... 206
9.2. GNU Autoconf..................................................................................................... 207
9.2.1. Opcje skryptu configure......................................................................... 208
9.2.2. Zmienne )rodowiskowe.......................................................................... 209
9.2.3. Cele tworzone przez system Autoconf ................................................... 210
9.2.4. Pliki dziennika systemu Autoconf.......................................................... 211
9.3. Inne systemy ........................................................................................................ 211
9.3.1. R4cznie konfigurowane pliki Makefile................................................... 212
9.3.2. Imake...................................................................................................... 212
9.3.3. pkg-config .............................................................................................. 214
9.4. Praktyki instalacyjne............................................................................................ 215
9.4.1. Gdzie instalowaA?................................................................................... 216
9.5. Stosowanie poprawek........................................................................................... 219
9.6. Rozwi%zywanie problemów z kompilowaniem i instalowaniem.......................... 220
9.6.1. Cz4ste bł4dy ........................................................................................... 221
Rozdział 10. Konserwacja jdra systemu............................................................ 223
10.1. Czy musz4 kompilowaA j%dro własnego systemu?............................................... 224
10.2. Czego potrzeba do kompilacji j%dra systemu? ..................................................... 224
10.3. Pobieranie kodu Sródłowego................................................................................ 225
10.3.1. Rozpakowywanie archiwum z kodem Sródłowym................................. 225
10.3.2. Przegl%d kodu Sródłowego j%dra ............................................................ 226
10.3.3. J%dra w ró/nych dystrybucjach............................................................... 226
10.4. Konfigurowanie i kompilowanie j%dra................................................................. 227
10.4.1. Opcje konfiguracyjne ............................................................................. 229
10.4.2. Kompilowanie j%dra i modułów ............................................................. 237
10.4.3. Instalowanie modułów ........................................................................... 239
10.4.4. Parametry j%dra ...................................................................................... 239
10.5. Instalowanie j%dra za pomoc% programu rozruchowego ...................................... 240
10.5.1. Który program rozruchowy wybraA?...................................................... 241
10.5.2. GRUB..................................................................................................... 241
10.5.3. LILO....................................................................................................... 243
10.5.4. Pocz%tkowe RAM-dyski......................................................................... 245
10.6. Testowanie j%dra.................................................................................................. 246
10.7. Dyskietki startowe................................................................................................ 246
10.8. Praca z ładowalnymi modułami j%dra .................................................................. 247
10.8.1. Program ładuj%cy moduły j%dra.............................................................. 248
10.8.2. Konfiguracja programu modprobe ......................................................... 248
[ Pobierz całość w formacie PDF ]