Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00165 008412 10460418 na godz. na dobę w sumie
Linux. Receptury - książka
Linux. Receptury - książka
Autor: Liczba stron: 560
Wydawca: Helion Język publikacji: polski
ISBN: 83-7361-879-1 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> systemy operacyjne >> linux
Porównaj ceny (książka, ebook, audiobook).

Zbiór praktycznych porad dla użytkowników i administratorów Linuksa

O popularności Linuksa i jej powodach napisano już bardzo dużo. Dostępny nieodpłatnie system operacyjny, stabilny, bezpieczny i możliwy do zastosowania zarówno w serwerach, jak i stacjach roboczych -- brzmi to niemal jak utopia, a jednak jest prawdą. Wielu użytkowników komputerów, zachęconych opiniami na temat Linuksa, zdecydowało się na jego instalację. Pierwszy kontakt z systemem w większości sytuacji przebiega bez problemów dzięki dopracowanemu modułowi instalacyjnemu i graficznemu interfejsowi użytkownika. Problemy rozpoczynają się w momencie przejścia do bardziej zaawansowanych zagadnień. Tryb tekstowy, polecenia z dziesiątkami opcji i parametrów, pliki konfiguracyjne liczące dziesiątki linijek i trudna do zlokalizowania dokumentacja dość skutecznie odstraszają od prób poznawania tajników Linuksa.

'Linux. Receptury' to książka, dzięki której Linux wyda się mniej przerażający. Zawiera rozwiązania większości problemów mogących pojawić się podczas pracy z Linuksem. Opisuje sposoby konfigurowania systemu, administrowania nim, znajdowania informacji w dokumentacji oraz korzystania z poleceń i narzędzi systemowych. Wszystko, co może sprawiać kłopoty użytkownikowi lub administratorowi Linuksa, zostało tu wyjaśnione w jasny i czytelny sposób. Każda receptura, poza omówieniem problemu i przedstawieniem gotowego rozwiązania, zawiera także analizę, która jest bardzo pomocna przy dostosowywaniu sposobu postępowania do własnych potrzeb.

Stosowanie gotowych rozwiązań najczęściej występujących problemów to oszczędność nie tylko pracy, ale i czasu.

Znajdź podobne książki Ostatnio czytane w tej kategorii

Darmowy fragment publikacji:

IDZ DO IDZ DO PRZYK£ADOWY ROZDZIA£ PRZYK£ADOWY ROZDZIA£ SPIS TREĎCI SPIS TREĎCI Linux. Receptury KATALOG KSI¥¯EK KATALOG KSI¥¯EK KATALOG ONLINE KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG ZAMÓW DRUKOWANY KATALOG Autor: Carla Schroder T³umaczenie: Adam Jarczyk ISBN: 83-7361-879-1 Tytu³ orygina³u: Linux Cookbook Format: B5, stron: 560 TWÓJ KOSZYK TWÓJ KOSZYK DODAJ DO KOSZYKA DODAJ DO KOSZYKA CENNIK I INFORMACJE CENNIK I INFORMACJE ZAMÓW INFORMACJE ZAMÓW INFORMACJE O NOWOĎCIACH O NOWOĎCIACH ZAMÓW CENNIK ZAMÓW CENNIK CZYTELNIA CZYTELNIA FRAGMENTY KSI¥¯EK ONLINE FRAGMENTY KSI¥¯EK ONLINE Wydawnictwo Helion ul. Chopina 6 44-100 Gliwice tel. (32)230-98-63 e-mail: helion@helion.pl Zbiór praktycznych porad dla u¿ytkowników i administratorów Linuksa O popularnoġci Linuksa i jej powodach napisano ju¿ bardzo du¿o. Dostêpny nieodp³atnie system operacyjny, stabilny, bezpieczny i mo¿liwy do zastosowania zarówno w serwerach, jak i stacjach roboczych -- brzmi to niemal jak utopia, a jednak jest prawd¹. Wielu u¿ytkowników komputerów, zachêconych opiniami na temat Linuksa, zdecydowa³o siê na jego instalacjê. Pierwszy kontakt z systemem w wiêkszoġci sytuacji przebiega bez problemów dziêki dopracowanemu modu³owi instalacyjnemu i graficznemu interfejsowi u¿ytkownika. Problemy rozpoczynaj¹ siê w momencie przejġcia do bardziej zaawansowanych zagadnieñ. Tryb tekstowy, polecenia z dziesi¹tkami opcji i parametrów, pliki konfiguracyjne licz¹ce dziesi¹tki linijek i trudna do zlokalizowania dokumentacja doġæ skutecznie odstraszaj¹ od prób poznawania tajników Linuksa. „Linux. Receptury” to ksi¹¿ka, dziêki której Linux wyda siê mniej przera¿aj¹cy. Zawiera rozwi¹zania wiêkszoġci problemów mog¹cych pojawiæ siê podczas pracy z Linuksem. Opisuje sposoby konfigurowania systemu, administrowania nim, znajdowania informacji w dokumentacji oraz korzystania z poleceñ i narzêdzi systemowych. Wszystko, co mo¿e sprawiaæ k³opoty u¿ytkownikowi lub administratorowi Linuksa, zosta³o tu wyjaġnione w jasny i czytelny sposób. Ka¿da receptura, poza omówieniem problemu i przedstawieniem gotowego rozwi¹zania, zawiera tak¿e analizê, która jest bardzo pomocna przy dostosowywaniu sposobu postêpowania do w³asnych potrzeb. • Przeszukiwanie dokumentacji systemowej • Instalowanie oprogramowania z pakietów RPM i z kodu ĥród³owego • Wykrywanie nowego sprzêtu • Uruchamianie i zatrzymywanie systemu • Administracja kontami u¿ytkowników i systemem plików • Aktualizowanie j¹dra systemu • Nagrywanie p³yt CD i DVD • Konfiguracja wielosystemowa • Tworzenie kopii zapasowych i odtwarzanie systemu • Konfiguracja us³ug sieciowych • Serwer WWW i poczty elektronicznej Stosowanie gotowych rozwi¹zañ najczêġciej wystêpuj¹cych problemów to oszczêdnoġæ nie tylko pracy, ale i czasu. Spis treści Przedmowa .....................................................................................................................17 1. Znajdowanie dokumentacji...........................................................................................21 21 22 24 25 26 27 28 28 29 30 31 1.1. Wprowadzenie 1.2. Strony man — wprowadzenie 1.3. Znajdowanie odpowiednich stron man 1.4. Znajdowanie zgubionych stron man 1.5. Czytanie stron man bez odpowiedniej przeglądarki 1.6. Konfiguracja manpath 1.7. Korzystanie ze stron info 1.8. Drukowanie stron man 1.9. Drukowanie stron info 1.10. Drukowanie wybranych stron man lub info 1.11. Znajdowanie całej dokumentacji programu 2. Instalacja i zarządzanie oprogramowaniem w systemach opartych na RPM........... 35 35 36 37 38 39 41 42 42 43 45 46 47 49 50 51 52 52 53 2.1. Wprowadzenie 2.2. Instalowanie RPM-ów 2.3. Aktualizacja RPM-ów 2.4. Usuwanie RPM-ów 2.5. Gromadzenie informacji o zainstalowanych RPM-ach 2.6. Zdobywanie informacji z niezainstalowanych RPM-ów 2.7. Znajdowanie niedawno zainstalowanych RPM-ów 2.8. Przebudowa bazy danych RPM 2.9. Śledzenie bibliotek skompilowanych ze źródeł w systemie RPM 2.10. Rozwiązywanie problemów z instalacją RPM 2.11. Instalowanie RPM-ów źródłowych 2.12. Zmiany opcji kompilacji RPM-a źródłowego 2.13. Instalacja Yum 2.14. Konfiguracja Yum 2.15. Instalacja i aktualizacja pakietów za pomocą Yum 2.16. Usuwanie pakietów za pomocą Yum 2.17. Gromadzenie za pomocą Yum informacji o zainstalowanych pakietach 2.18. Konserwacja Yum 5 3. Instalacja i zarządzanie oprogramowaniem w systemach opartych na Debianie ... 55 55 56 58 59 60 60 61 62 63 64 65 67 68 69 70 71 3.1. Wprowadzenie 3.2. Zdobywanie oprogramowania dla systemu Debian 3.3. Instalacja pakietów Debiana z płyt CD-ROM 3.4. Instalacja pakietów w systemach Debian 3.5. Usuwanie pakietów z systemu Debian 3.6. Instalacja ze źródeł w systemie Debian 3.7. Aktualizacja pakietów w systemie Debian 3.8. Aktualizacja systemu Debian 3.9. Przejście do nowszej wersji Debiana 3.10. Prowadzenie mieszanego systemu Debian 3.11. Wyszukiwanie pakietów zainstalowanych w systemie Debian 3.12. Utrzymanie pamięci podręcznej pakietów w Debianie 3.13. Rozwiązywanie konfliktów zależności 3.14. Tworzenie lokalnego repozytorium Debiana 3.15. Wybór serwerów zwierciadlanych pakietów dla apt-proxy.conf 3.16. Dodajemy własną pamięć podręczną pakietów do apt-proxy.conf 4. Instalacja programów z kodu źródłowego .................................................................. 73 73 73 4.1. Wprowadzenie 4.2. Przygotowanie systemu do kompilacji programów ze źródeł 4.3. Generowanie listy plików przy instalacji ze źródeł w celu ułatwienia deinstalacji 4.4. Instalacja programów z kodu źródłowego 4.5. Tworzenie pakietów z kodu źródłowego za pomocą CheckInstall 75 75 77 5. Wykrywanie sprzętu bez otwierania obudowy .......................................................... 79 79 80 82 83 86 87 5.1. Wprowadzenie 5.2. Wykrywanie sprzętu za pomocą lspci 5.3. Gromadzenie informacji o sprzęcie za pomocą dmesg 5.4. Obraz uruchomionego sprzętu w /proc 5.5. Przeglądanie partycji dysku narzędziem fdisk 5.6. Obliczenie pojemności dysku twardego 6. Edycja plików tekstowych za pomocą JOE i Vim .........................................................89 89 91 92 93 94 95 96 6.1. Wprowadzenie 6.2. Znajdowanie poleceń JOE 6.3. Dostosowanie JOE do własnych potrzeb 6.4. Zapis preferencji JOE w osobnym pliku 6.5. Kopiowanie pomiędzy plikami w JOE 6.6. Wyszukiwanie i zastępowanie w JOE 6.7. Zaznaczanie tekstu pionowo w JOE 6 | Spis treści 6.8. Wyszukiwanie i otwieranie plików w JOE 6.9. Szybka nauka edytora Vim 6.10. Tworzenie autotekstu za pomocą skrótów Vim 6.11. Przypisywanie poleceń do kombinacji klawiszy 6.12. Dostosowanie ustawień edytora Vim do własnych potrzeb 6.13. Szybka nawigacja w edytorze Vim za pomocą znaczników 6.14. Powrót do pracy w miejscu jej ukończenia — sesje edytora Vim 6.15. Ustawienie domyślnego edytora 6.16. Wykrywanie opcji kompilacji edytora Vim 97 98 100 101 102 104 105 107 108 7. Uruchamianie i zamykanie systemu Linux................................................................. 109 109 111 112 113 114 115 116 118 119 119 121 121 7.1. Wprowadzenie 7.2. Zmiana poziomu działania po starcie 7.3. Zmiana domyślnego poziomu działania 7.4. Uruchamianie i zatrzymywanie X 7.5. Zarządzanie poziomami działania w Debianie 7.6. Tworzenie tekstowych i graficznych poziomów działania w Debianie 7.7. Zarządzanie poziomami działania w systemie Red Hat 7.8. Ręczna konfiguracja uruchamiania usług 7.9. Ręczne uruchamianie i zatrzymywanie usług 7.10. Wyłączanie i przeładowywanie Linuksa 7.11. Wyłączanie i ograniczanie dostępu do Ctrl+Alt+Del 7.12. Automatyczne wyłączanie systemu 8. Zarządzanie użytkownikami i grupami ......................................................................123 123 124 126 126 128 129 130 131 132 133 134 134 135 136 136 137 8.1. Wprowadzenie 8.2. Rozróżnianie kont użytkowników i kont systemowych 8.3. Znajdowanie UID i GID użytkownika 8.4. Dodawanie użytkowników poleceniem useradd 8.5. Dodawanie użytkowników poleceniem adduser 8.6. Modyfikacja kont użytkowników 8.7. Usuwanie użytkownika 8.8. Łatwe i przyjemne zabijanie procesów użytkownika 8.9. Blokowanie kont 8.10. Zarządzanie hasłami 8.11. Dodawanie grup poleceniem groupadd 8.12. Usuwanie grup poleceniem groupdel 8.13. Tworzenie użytkownika systemowego 8.14. Tworzenie grup systemowych poleceniem addgroup 8.15. Dodawanie i usuwanie członków grupy 8.16. Kontrola poprawności plików haseł Spis treści | 7 8.17. Dodawanie wsadowe użytkowników 8.18. Masowa zmiana haseł 8.19. Dodawanie wsadowe użytkowników do grup 8.20. Chwilowy dostęp do konta root za pomocą polecenia su 8.21. Przyznawanie ograniczonych uprawnień użytkownika root za pomocą sudo 8.22. Limity dyskowe 138 143 144 145 146 148 9. Zarządzanie plikami i partycjami ................................................................................ 151 151 9.1. Wprowadzenie 9.2. Ustawianie uprawnień do plików i katalogów z użyciem numerycznej notacji chmod 9.3. Operacje wsadowe z chmod 9.4. Ustawianie uprawnień do plików i katalogów z użyciem symbolicznej notacji chmod 9.5. Zmiana właściciela pliku poleceniem chown 9.6. Operacje wsadowe z chown 9.7. Tworzenie katalogu współużytkowanego za pomocą setgid i bitu lepkości 9.8. Ustawianie domyślnych uprawnień poleceniem umask 9.9. Montowanie i odmontowywanie dysków wymiennych 9.10. Konfiguracja montowania systemów plików w /etc/fstab 9.11. Montowanie i odmontowywanie systemów plików na dyskach twardych 9.12. Znajdowanie nazw urządzeń na potrzeby mount i fstab 9.13. Tworzenie plików i katalogów 9.14. Usuwanie plików i katalogów 9.15. Kopiowanie, przenoszenie i zmiana nazw plików i katalogów 9.16. Tworzenie linuksowych partycji dyskowych poleceniem fdisk 9.17. Tworzenie systemu plików na nowej partycji 157 158 159 161 161 162 164 165 167 169 170 173 174 175 176 177 10. Łatanie, modyfikacje i aktualizacje jądra ...................................................................179 179 181 185 186 187 188 189 190 193 193 194 195 10.1. Wprowadzenie 10.2. Dodawanie nowych funkcji do jądra 2.4 10.3. Odchudzanie standardowego jądra 2.4 10.4. Aktualizacja do najnowszej stabilnej wersji jądra 2.4 10.5. Kompilacja jądra 2.6 10.6. Dodawanie nowych funkcji do jądra 2.6 10.7. Dodawanie nowego modułu ładowalnego jądra 10.8. Instalacja poprawek 10.9. Usuwanie poprawki 10.10. Tworzenie obrazu initrd 10.11. Tworzenie dyskietki startowej w Debianie 10.12. Tworzenie dyskietki startowej w systemie Red Hat 8 | Spis treści 11. Nagrywanie CD i DVD ..................................................................................................197 197 200 201 203 205 206 207 208 209 210 211 213 11.1. Wprowadzenie 11.2. Znajdowanie adresu SCSI nagrywarki CD lub DVD 11.3. Włączenie emulacji SCSI dla nagrywarek CD i DVD IDE/Atapi 11.4. Nagrywanie CD z danymi do powszechnego użytku 11.5. Tworzenie drzew katalogów na CD 11.6. Kopiowanie CD lub DVD 11.7. Kasowanie CD-RW 11.8. Nagrywanie wielosesyjnej płyty CD z danymi 11.9. Tworzenie startowego dysku CD 11.10. Dzielenie dużego pliku na kilka CD 11.11. Nagrywanie DVD z danymi 11.12. Nagrywanie płyt audio CD dla standardowych odtwarzaczy CD 12. Zarządzanie programem rozruchowym i start wielosystemowy.............................217 217 218 220 222 223 224 226 228 229 230 231 233 235 236 237 238 239 241 242 243 244 245 12.1. Wprowadzenie 12.2. Migracja z LILO do GRUB 12.3. Instalacja GRUB bez dyskietki 12.4. Instalacja GRUB za pomocą grub-install 12.5. Przygotowanie komputera do uruchamiania różnych systemów Linux 12.6. Dodawanie kolejnych instalacji Linuksa do systemu 12.7. Znajdowanie parametrów startowych z powłoki poleceń GRUB 12.8. Konfiguracja partycji startowej 12.9. Tworzenie menu startowego GRUB 12.10. Modyfikacje menu.lst 12.11. Dodawanie Windows 95, 98 lub Me do systemu Linux 12.12. Dodawanie Windows NT, 2000 lub XP do startu wielosystemowego 12.13. Przywracanie GRUB w MBR za pomocą płyty CD Knoppix 12.14. Ochrona plików systemowych hasłem GRUB 12.15. Blokowanie dostępu użytkowników do konkretnych pozycji menu GRUB 12.16. Tworzenie obrazka startowego GRUB 12.17. Uruchamianie Linuksa z LILO 12.18. Wybór systemu Linux do uruchomienia w LILO 12.19. Start wielosystemowy Linuksa i Windows za pomocą LILO 12.20. Tworzenie dyskietki startowej LILO 12.21. Ochrona LILO hasłem 12.22. Tworzenie kopii zapasowej MBR 13. Ratowanie i przywracanie systemu za pomocą dystrybucji Knoppix ..................... 247 247 247 249 13.1. Wprowadzenie 13.2. Uruchomienie systemu Knoppix 13.3. Tworzenie dyskietki startowej Knoppiksa Spis treści | 9 13.4. Zapis konfiguracji systemu Knoppix w pamięci USB PenDrive 13.5. Tworzenie trwałego, zaszyfrowanego katalogu /home dla systemu Knoppix 13.6. Kopiowanie plików z innego PC z systemem Linux 13.7. Kopiowanie plików na udział Samba 13.8. Kopiowanie plików na CD-R/RW 13.9. Edycja plików konfiguracyjnych z poziomu systemu Knoppix 13.10. Instalacja oprogramowania w systemie Knoppix 13.11. Przywracanie hasła konta root 13.12. Instalacja systemu Knoppix na dysku twardym 13.13. Skanowanie Windows w poszukiwaniu wirusów za pomocą systemu Knoppix 250 250 251 253 254 254 255 256 257 257 14. Drukowanie przy użyciu CUPS ................................................................................... 259 259 261 264 265 266 267 268 269 270 271 14.1. Wprowadzenie 14.2. Instalacja drukarki w autonomicznym PC z systemem Linux 14.3. Udostępnianie drukarek klientom linuksowym 14.4. Udostępnianie drukarki bez rozwiązywania nazw 14.5. Obsługa klientów Windows bez Samby 14.6. Udostępnianie drukarek za pomocą Samby w mieszanej sieci lokalnej 14.7. Tworzenie dedykowanego serwera drukarek CUPS 14.8. Drukowanie rozproszone z użyciem klas 14.9. Ograniczanie dostępu do drukarek i klas 14.10. Rozwiązywanie problemów 15. Konfiguracja grafiki i zarządzanie serwerem X Window ........................................ 273 273 276 278 279 280 281 283 285 288 288 289 290 15.1. Wprowadzenie 15.2. Jednoczesne korzystanie z X Window i konsoli 15.3. Instalacja nowej karty graficznej 15.4. Edycja XF86Config 15.5. Włączenie akceleracji sprzętowej 3D w XFree86/DRI 15.6. Rozwiązywanie problemów z akceleracją sprzętową 3D 15.7. Konfiguracja dwumonitorowa 15.8. Wybór ServerLayout przy starcie 15.9. Ustawienie domyślnego ServerLayout 15.10. Konfiguracja startx 15.11. Zmiana graficznego menedżera logowania 15.12. Jednoczesne uruchamianie różnych menedżerów okien za pomocą Xnest 16. Tworzenie i przywracanie danych z kopii zapasowych........................................... 293 293 295 296 16.1. Wprowadzenie 16.2. Lokalne transfery i synchronizacja plików za pomocą rsync 16.3. Bezpieczne przesyłanie plików z użyciem rsync i ssh 10 | Spis treści 16.4. Tworzenie serwera kopii zapasowych rsync 16.5. Zabezpieczanie modułów rsync 16.6. Instalacja anonimowego publicznego serwera rsync 16.7. Uruchamianie demona rsync przy starcie systemu 16.8. Precyzyjne wybieranie plików 16.9. Automatyzacja tworzenia kopii zapasowych za pomocą rsync przez ssh 16.10. Ograniczenie pasma sieci używanego przez rsync 16.11. Wskazywanie ścieżek w rsync 16.12. Instalacja rsync w klientach Windows 16.13. Tworzenie wiadomości dnia dla rsync 16.14. Tworzenie startowej płyty CD do przywracania systemu z pomocą Mondo Rescue 16.15. Weryfikacja kopii zapasowej Mondo 16.16. Tworzenie startowej płyty DVD do przywracania systemu z pomocą Mondo Rescue 16.17. Klonowanie systemów linuksowych z pomocą Mondo Rescue 16.18. Zastosowanie mindi-kernel 16.19. Przywracanie systemu z płyty ratunkowej Mondo 16.20. Przywracanie wybranych plików z płyty Mondo 298 300 301 302 303 304 305 306 306 307 308 311 312 313 314 314 315 17. Dostęp zdalny................................................................................................................317 317 318 320 321 323 324 325 326 327 327 329 330 331 17.1. Wprowadzenie 17.2. Konfiguracja OpenSSH po raz pierwszy 17.3. Generowanie nowych kluczy hosta 17.4. Uwierzytelnianie za pomocą kluczy publicznych 17.5. Korzystanie z dodatkowych par kluczy 17.6. Logowanie bez hasła z użyciem narzędzia ssh-agent 17.7. Lepsze logowanie bez hasła z użyciem keychain 17.8. Logowanie bez hasła dla zadań cron 17.9. Automatyczne wyłączanie ssh-agent przy wylogowaniu 17.10. Dostosowanie wiersza zachęty Bash dla ssh 17.11. Tunelowanie X przez SSH 17.12. Łączenie z komputera Windows 17.13. Uprawnienia do plików ssh 18. Kontrola wersji............................................................................................................. 333 333 335 336 338 339 341 18.1. Wprowadzenie 18.2. Tworzenie prostego lokalnego repozytorium RCS 18.3. Pobieranie starszych wersji plików z RCS 18.4. Porównywanie wersji pliku w RCS 18.5. Zarządzanie systemowymi plikami konfiguracyjnymi za pomocą RCS 18.6. CVS w roli lokalnego repozytorium dla pojedynczego użytkownika Spis treści | 11 18.7. Dodawanie nowych plików do repozytorium CVS 18.8. Usuwanie plików z repozytorium CVS 18.9. Tworzenie wspólnego repozytorium CVS 18.10. Udostępnianie jednego repozytorium kilku grupom 18.11. Dostęp do zdalnego repozytorium CVS 18.12. Aktualizacja plików roboczych w CVS 18.13. Pobieranie określonych starszych wersji z CVS 18.14. Anonimowe repozytorium CVS tylko do odczytu, wykorzystujące Pserver 18.15. Dublowanie repozytorium CVS 18.16. Zapisywanie plików binarnych w CVS 18.17. Tworzenie obrazów wersji za pomocą etykiet 18.18. Tworzenie gałęzi stabilnych i rozwojowych projektu 18.19. Dostosowanie środowiska CVS do własnych potrzeb 18.20. Planowanie miejsca na repozytorium CVS 343 344 345 346 347 348 349 351 353 354 355 356 358 359 19. Synchronizacja czasu przez NTP .................................................................................361 361 362 363 365 366 368 370 371 19.1. Wprowadzenie 19.2. Instalacja lokalnego serwera czasu 19.3. Łączenie się z lokalnym serwerem czasu 19.4. Kontrola dostępu 19.5. Wybór puli NTP 19.6. Łączenie z serwerem czasu za pomocą łącza tymczasowego 19.7. Konfiguracja kilku serwerów czasu 19.8. Uwierzytelnianie kluczami w protokole NTP 20. Instalacja serwera pocztowego Postfix..................................................................... 373 373 374 378 379 382 382 383 385 386 388 389 390 392 393 20.1. Wprowadzenie 20.2. Instalacja serwera pocztowego POP3 20.3. Instalacja serwera pocztowego POP3 w systemie Debian 20.4. Testowanie serwera pocztowego SMTP/POP3 20.5. Wysyłanie poczty internetowej 20.6. Odbieranie poczty internetowej 20.7. Instalacja Cyrus-SASL do autoryzacji SMTP 20.8. Instalacja Cyrus-SASL w Debianie 20.9. Konfiguracja smtp-auth do uwierzytelniania użytkowników 20.10. Uwierzytelnianie Postfiksa na innym serwerze za pomocą smtp-auth 20.11. Konfiguracja pełnej nazwy domeny 20.12. Instalacja serwera poczty IMAP 20.13. Podłączanie użytkowników 20.14. Udostępnianie folderów IMAP 12 | Spis treści 20.15. Domeny wirtualnych skrzynek pocztowych w Postfiksie 20.16. Tworzenie listy dystrybucyjnej z pomocą couriermlm 20.17. Zarządzanie listą couriermlm 20.18. Dostęp do poczty przez WWW 20.19. Tabele kodów odpowiedzi i poleceń SMTP 394 397 399 400 401 21. Walka ze spamem i złośliwymi programami.............................................................403 403 21.1. Wprowadzenie 21.2. Podstawowa lista kontrolna: przygotowania do tworzenia zabezpieczeń przed spamem i malware 21.3. Bezpieczne testowanie nowych reguł antyspamowych w Postfiksie 21.4. Podstawowe konfiguracje reguł antyspamowych w Postfiksie 21.5. Tworzenie białych list 21.6. Czarne listy oparte na DNS-ie 21.7. Odrzucanie wiadomości z załącznikami 21.8. Instalacja Clam Anti-Virus na serwerze Postfiksa 21.9. Instalacja SpamAssassin na serwerze Postfiksa z Amavisd-new 21.10. Instalacja programu SpamAssassin bez Amavisd-new 405 406 407 410 411 413 414 417 418 22. Serwer WWW Apache ................................................................................................ 421 421 22.1. Wprowadzenie 425 22.2. Instalacja Apache 2.0 z kodu źródłowego 428 22.3. Dodawanie nowych modułów po instalacji 429 22.4. Ustawienia uprawnień i własności plików Apache 430 22.5. Lokalny dostęp do podręcznika użytkownika Apache 431 22.6. Konfiguracja prostego publicznego serwera WWW 432 22.7. Przekierowanie URL do nowego katalogu 432 22.8. Przydzielenie użytkownikom indywidualnych katalogów WWW 433 22.9. Uruchamianie Apache przy starcie systemu 434 22.10. Prowadzenie wielu domen w Apache 436 22.11. Używanie osobnych plików dziennika dla hostów wirtualnych 437 22.12. Blokowanie dostępu do witryn lokalnych z internetu 438 22.13. Zabezpieczanie wybranych katalogów hasłami 440 22.14. Kontrola nad robotami przeszukującymi WWW za pomocą robots.txt 442 22.15. Blokowanie niepożądanych gości 442 22.16. Tworzenie własnych stron obsługujących błędy 443 22.17. Modyfikacje domyślnych stron błędów w Apache 444 22.18. Tworzenie czytelnych indeksów katalogów 445 22.19. Dostarczanie stron w różnych językach z użyciem Content Negotiation 22.20. Używanie ikon favicon 447 22.21. Przeglądanie dzienników dostępu Apache za pomocą narzędzia Webalizer 448 Spis treści | 13 23. Udostępnianie plików i drukarek oraz uwierzytelnianie w domenach za pomocą Samby........................................... 451 451 453 456 457 460 23.1. Wprowadzenie 23.2. Prosty anonimowy serwer plików Samba dla systemów Windows 23.3. Tworzenie sieci komputerów równorzędnych Windows i Linux 23.4. Włączanie udostępniania plików w komputerach Windows 23.5. Uwierzytelnianie na serwerze Samby 23.6. Wsadowa konwersja użytkowników systemowych na użytkowników Samby 23.7. Logowanie do Samby z Windows 95/98/Me 23.8. Rozwiązywanie problemów z szyfrowaniem haseł w systemach Windows 23.9. Kontrola dostępu do udziału za pomocą ACL 23.10. Tworzenie udziałów publicznych dla użytkowników 23.11. Dostęp do katalogów macierzystych użytkowników za pomocą Samby 23.12. Tworzenie podstawowego kontrolera domeny za pomocą Samby 23.13. Dołączanie Windows 95/98/Me do domeny obsługiwanej przez Sambę 23.14. Dołączanie Windows NT/2000 do domeny obsługiwanej przez Sambę 23.15. Dołączanie Windows XP do domeny obsługiwanej przez Sambę 23.16. Obsługa profili mobilnych 23.17. Podłączanie klientów linuksowych do serwera plików lub sieci równorzędnej w Sambie 23.18. Podłączanie klientów linuksowych do grup roboczych Samby za pomocą narzędzi wiersza poleceń 23.19. Łączenie klientów linuksowych z domeną Samby za pomocą przeglądarek graficznych 23.20. Łączenie klientów linuksowych z domeną Samby za pomocą narzędzi wiersza poleceń 23.21. Synchronizacja haseł Samby i Linuksa 23.22. Udostępnianie drukarek linuksowych w Windows 23.23. Udostępnianie drukarek Windows dla systemów Linux 23.24. Uruchamianie aplikacji Windows pod Linuksem za pomocą CrossOver Office 462 463 463 464 465 466 467 470 470 471 472 473 476 478 478 479 480 481 482 24. Rozwiązywanie nazw ................................................................................................ 487 487 489 491 492 493 494 495 496 24.1. Wprowadzenie 24.2. Lokalne rozwiązywanie nazw za pomocą plików hosts 24.3. Instalacja serwera DHCP 24.4. Konfiguracja klientów DHCP 24.5. Dodawanie statycznych hostów do DHCP 24.6. Prowadzenie publicznego serwera DNS 24.7. Instalacja djbdns 24.8. Przenoszenie plików dzienników tinydns i dnscache 14 | Spis treści 24.9. djbdns jako lokalny buforujący serwer nazw 24.10. Konfiguracja klientów linuksowych i Windows do współpracy z buforującym serwerem DNS 24.11. Publiczny serwer DNS wykorzystujący tinydns 24.12. Instalacja prywatnego serwera tinydns 24.13. Proste równoważenie obciążenia za pomocą tinydns 24.14. Synchronizacja z drugim serwerem tinydns 24.15. Lokalny buforujący serwer nazw BIND 24.16. Prywatny serwer DNS BIND 24.17. Kontrola składni 24.18. Konfiguracja publicznego serwera DNS BIND 24.19. Konfiguracja wtórnego serwera BIND 24.20. Proste równoważenie obciążenia za pomocą serwera BIND 24.21. Testowanie serwera tinydns 24.22. Testowanie i odpytywanie serwerów DNS za pomocą narzędzi dig i dnstrace 497 499 501 503 504 505 506 508 512 512 515 517 518 518 A Źródła dokumentacji Linuksa ......................................................................................521 B Źródła online ................................................................................................................ 525 C Typy plików Microsoftu .............................................................................................. 527 D Skrypt startowy CVSD..................................................................................................531 Skorowidz..................................................................................................................... 533 Spis treści | 15 ROZDZIAŁ 4. Instalacja programów z kodu źródłowego 4.1. Wprowadzenie Mimo wszystkich dostępnych menedżerów pakietów i narzędzi do rozwiązywania zależności bywa, że preferowana jest kompilacja z kodu źródłowego. Na przykład potrzebny nam pro- gram może być niedostępny w postaci pakietu, możemy potrzebować ścisłej kontroli nad tym, które opcje i funkcje mają być wbudowane, lub chcemy zoptymalizować program dla konkret- nej architektury. Wielu doświadczonych administratorów zaleca kompilację z kodu źródłowe- go programów krytycznych dla bezpieczeństwa (np. ssh i wszystkie serwery). Przy kompilacji z kodu źródłowego zaleca się przeczytanie wszystkich instrukcji. Wprawdzie procedura złożona z poleceń configure — make — make install jest w miarę standardowa, lecz zdarza się wiele wyjątków spowodowanych dziwactwami autorów. Często dostępnych jest wiele opcji konfiguracji, o których mówi tylko dokumentacja programu. Jeśli ktoś woli korzystać z pakietów, to wszystkie narzędzia do budowy własnych pakietów RPM i .deb są dostępne za darmo. Jednakże krzywa uczenia się używania RPM lub budowy własnych .deb jest dość stroma. Jest jeszcze trzecia opcja — CheckInstall. Program ten jest do- skonałym narzędziem pozwalającym z łatwością budować z kodu źródłowego własne pakiety RPM, Debiana lub Slackware. 4.2. Przygotowanie systemu do kompilacji programów ze źródeł Problem Wiemy, że do budowania programów ze źródeł potrzebny jest kompilator i, być może, jeszcze jakieś inne narzędzia, lecz nie wiemy dokładnie jakie. 73 Rozwiązanie Potrzebne będą programy z dwóch kategorii: • Niezbędne narzędzia programistyczne wspólne dla wszystkich systemów linuksowych. • Konkretne biblioteki lub narzędzia zależne od kompilowanego programu. Oto lista typowych narzędzi programistycznych dla Linuksa: GNU coreutils Duży zbiór niezbędnych narzędzi systemowych: shellutils (narzędzia powłoki), fileutils (narzędzia plikowe) i textutils (narzędzia tekstowe). Pełna lista znajduje się pod adresem http://www.gnu.org/software/coreutils/; patrz też info coreutils. GNU binutils Narzędzia do pracy na plikach binarnych (http://www.gnu.org/software/binutils/). gcc GNU Compiler Collection — zbiór kompilatorów obejmujący języki C, C++, Objective-C, Fortran, Java i Ada oraz biblioteki dla nich. GNU tar Narzędzie archiwizacyjne do obsługi archiwów tar kodu źródłowego (z rozszerzeniem .tar). gunzip Narzędzie do kompresji często używane w połączeniu z tar (rozszerzenie .tar.gz). bunzip2 Format superkompresji do pakowania i rozpakowywania archiwów tar (rozszerzenie .bz2). make To polecenie odczytuje opcje konfiguracji i inicjuje kompilację plików programu. Dokumentacja dla kompilowanej aplikacji powinna powiedzieć o wszystkim, co jest niezbędne do pomyślnej kompilacji. Analiza W większości dystrybucji Linuksa dostępna jest opcja instalacji „Core Development Tools” lub podobna, więc nie musimy polować na narzędzia i instalować ich indywidualnie. Trzeba będzie przeczytać dokumentację kompilowanej aplikacji, aby wyszukać wszelkie wy- mogi dla danego programu. Archiwum tar kodu źródłowego powinno zawierać pliki READ- ME, INSTALL lub inną dokumentację. Radzę przeczytać wszystko. Skrypt konfiguracyjny po uruchomieniu sprawdza w systemie, czy wszystkie potrzebne elementy są obecne. Jeśli cze- gokolwiek brakuje, skrypt kończy pracę i zwraca komunikat o błędzie, określając, co jeszcze jest potrzebne. Zobacz również • Rozdział 14. książki LPI Linux Certification in a Nutshell Jeffa Deana (O’Reilly) 74 | Rozdział 4. Instalacja programów z kodu źródłowego 4.3. Generowanie listy plików przy instalacji ze źródeł w celu ułatwienia deinstalacji Problem Chcemy wiedzieć, które pliki są instalowane w systemie przy instalacji programu z kodu źródłowego, co pozwoli znaleźć i usunąć je wszystkie, gdy zdecydujemy, że program jest już niepotrzebny. Niektórzy autorzy zapobiegliwie udostępniają opcję „make uninstall”, co pozwala całkowicie odinstalować program, lecz wielu tak nie robi. Rozwiązanie Możemy za pomocą standardowych narzędzi linuksowych wygenerować listę wszystkich pli- ków w systemie przed instalacją, a następnie listę plików po instalacji. Porównanie tych dwóch list poleceniem diff pozwoli zbudować listę świeżo zainstalowanych plików. Poniższy przy- kład opiera się na JOE (ang. Joe’s Own Editor): # find / | grep -v -e ^/proc/ -e ^/tmp/ -e ^/dev/ r joe-preinstall.list Po skompilowaniu i zainstalowaniu nowego programu wygenerujemy drugą listę: # find / | grep -v -e ^/proc/ -e ^/tmp/ -e ^/dev/ r joe-postinstall.list a następnie za pomocą diff listę plików zainstalowanych przez Joe: # diff joe-preinstall.list joe-postinstall.list jroe-installed.list Analiza Używając find w połączeniu z grep, możemy z łatwością wykluczyć katalogi, które nie mają znaczenia dla ostatecznej listy. Opcja -v polecenia grep odwraca wzorzec wyszukiwania, tak że są wyszukiwane wiersze niezgodne z podanym wzorcem. -e definiuje wzorzec wyszuki- wania, natomiast ^ oznacza początek wiersza. Razem mówi to: „Ignoruj wiersze zaczynające się od…” Nie musimy zawracać sobie głowy katalogami /proc i /tmp, ponieważ ich zawartość nieustan- nie się zmienia. Plikami /dev zarządza system, więc również możemy je zignorować. Jest to też ważny środek bezpieczeństwa — gdy usuwamy program ręcznie, używając wygenerowanej li- sty różnic, /proc, /tmp i /dev są katalogami, których nie powinniśmy w żadnym przypadku ruszać. Zobacz również • grep(1), find(1), diff(1) 4.4. Instalacja programów z kodu źródłowego Problem Chcemy zainstalować program z kodu źródłowego, lecz trudno jest poruszać się po gęstwinie archiwów tar, plików makefile itp. 4.4. Instalacja programów z kodu źródłowego | 75 Rozwiązanie Najpierw należy rozpakować archiwum tar, a następnie skonfigurować (configure), skompi- lować (make) i zainstalować (install) program. Zaczniemy pracę w katalogu mieszczącym archiwum tar i drzewo katalogów źródeł. Poniższy przykład opiera się na JOE (Joe’s Own Editor): # cd /usr/src/downloads # tar zxvf joe-2.9.8.tar.gz # cd joe-2.9.8 # ls # less README # less INFO # ./configure --help # ./configure opcje, jeśli są potrzebne # make # make install | tee joe-makeinstall Ostatnie polecenie zapisuje wyjście procedury instalacji do pliku tekstowego joe-makeinstall. Niektóre programy są archiwizowane za pomocą narzędzia bzip2 zamiast bardziej tradycyjnego gzip. Archiwa .bz2 rozpakowuje się następująco: # tar jxvf joe-2.9.8.tar.bz2 Do odinstalowania programu skompilowanego z kodu źródłowego posłuży polecenie: # make uninstall Zadziała to tylko wtedy, jeśli autor programu przewidział opcję make uninstall. Przekiero- wanie wyjścia polecenia make install do pliku tekstowego pozwala zapamiętać informacje, które mogą się przydać, gdy trzeba będzie usunąć wszystkie pliki ręcznie. Listę możemy też wygenerować tak jak w recepturze 4.3. Analiza Kroki opisane w niniejszej recepturze są standardowym procesem instalacji programów z kodu źródłowego. Jednakże nie wszyscy autorzy programów posługują się tą samą procedurą. Przed rozpoczęciem pracy powinniśmy przejrzeć dokumentację programu. Najważniejsze jest zapoznanie się z opcjami configure. Niektóre programy, np. Apache, mają dziesiątki opcji kompilacji. Z punktu widzenia bezpieczeństwa rozsądnie jest wkompilować obsługę tylko tego, co naprawdę będzie potrzebne. Jest to szczególnie ważne w przypadku serwerów mających kontakt z niezaufanymi sieciami, na przykład serwerów WWW i poczty. Kompilacja programów z kodu źródłowego ma następujące zalety: • Możemy skonfigurować dokładnie takie opcje, jakich nam potrzeba. • Możemy zoptymalizować program dla konkretnej architektury systemu. • Mamy absolutną kontrolę nad tym, co ma być zainstalowane. Wady też się znajdą: • Uaktualnienia i usuwanie programów może być nieprzyjemne. • Od piekła zależności dzieli tylko jeden krok. • Kompilacja dużego programu może trwać godzinami. 76 | Rozdział 4. Instalacja programów z kodu źródłowego Pewne serwery powinny być kompilowane z kodu źródłowego. Na przykład serwer WWW Apache naprawdę wymaga kompilacji z kodu źródłowego, aby pozwolić na pełne dostoso- wanie do konkretnych potrzeb i optymalizację. W przypadku systemów biurkowych możemy sobie to darować. Są zbyt duże i złożone. Dla nich optymalne będą wygodne dystrybucje Linuksa oparte na pakietach. Zobacz również • info tar, make(1), bzip2(1) 4.5. Tworzenie pakietów z kodu źródłowego za pomocą CheckInstall Problem Chcemy stworzyć z kodu źródłowego pakiet dla systemu Slackware, Red Hat lub Debian, po- nieważ dana aplikacja nie jest dostępna w postaci potrzebnego nam pakietu. Z lektury doty- czącej budowania pakietów wynika, że jest to bardzo skomplikowane zadanie. Czy jest jakiś łatwiejszy sposób? Rozwiązanie Posłużymy się CheckInstall. Ponownie za przykład weźmiemy Joe’s Own Editor. Dla systemu Debian procedura wygląda tak: # mkdir /doc-pak # tar zxvf joe-2.9.8.tar.gz # cd joe-2.9.8 # ./configure # make # checkinstall -D Narzędzie CheckInstall zastępuje polecenie make install, musi więc zostać uruchomione w ka- talogu głównym drzewa katalogów kodu źródłowego. Dalej wystarczy postępować zgodnie ze wskazówkami. CheckInstall zbuduje i zainstaluje pakiet .deb, co możemy sprawdzić: $ dpkg -l | grep joe ii joe 2.9.8-1 joe’s own editor I to wszystko. Program został zainstalowany i jest gotowy do pracy. Kopia pakietu pozostała w katalogu źródłowym. Do zbudowania pakietu Slackware posłuży polecenie: # checkinstall -S Do zbudowania pakietu RPM: # checkinstall -R 4.5. Tworzenie pakietów z kodu źródłowego za pomocą CheckInstall | 77 Analiza W katalogu doc-pak CheckInstall umieszcza plik README i pozostałą dokumentację progra- mu. Jeśli nie utworzymy tego katalogu, CheckInstall zapyta, czy chcemy utworzyć domyślny katalog na dokumentację. Jeżeli odpowiemy, że nie, pakiet nie będzie zawierać dokumentacji. CheckInstall wykorzystuje macierzyste menedżery pakietów dla instalowanego programu: RPM w systemie Red Hat, installpkg w Slackware i .apt w Debianie. Do usunięcia pakietu CheckIn- stall możemy po prostu użyć menedżera pakietów z naszego systemu. CheckInstall obsługuje wszelkie skrypty instalacyjne, na przykład: # checkinstall -D make install_packages # checkinstall -R make modules_install # checkinstall -S install.sh # checkinstall -D setup Przypominam o przeczytaniu pliku README programu i innej dołączonej dokumentacji. Nie wszystkie pakiety źródłowe używają tradycyjnej procedury configure-make-make install. Niektó- re wykorzystują skrypty instalacyjne, jak powyższe przykłady. CheckInstall jak na razie nie pozwala na tworzenie pakietu bez automatycznego zainstalowania, lecz to może się zmienić w przyszłych wersjach. Zobacz również • Strona macierzysta CheckInstall (http://asic-linux.com.mx/~izto/checkinstall/news.php) 78 | Rozdział 4. Instalacja programów z kodu źródłowego
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

Linux. Receptury
Autor:

Opinie na temat publikacji:


Inne popularne pozycje z tej kategorii:


Czytaj również:


Prowadzisz stronę lub blog? Wstaw link do fragmentu tej książki i współpracuj z Cyfroteką: