Linux. Podr - Helion

Tytuł oryginału: The Software Developer's Guide to Linux: A practical, no-nonsense guide to using the Linux command line and utilities as a software developer
ISBN: 978-83-289-1754-5
okładka: mi
Księgarnia: Helion
Książka będzie dostępna od października 2024
Zobacz także:
- Jak zhakowa 125,00 zł, (10,00 zł -92%)
- Blockchain i kryptowaluty. Kurs video. Zdecentralizowane finanse od podstaw 118,90 zł, (11,89 zł -90%)
- Web scraping. Kurs video. Zautomatyzowane pozyskiwanie danych z sieci 126,36 zł, (13,90 zł -89%)
- GraphQL. Kurs video. Buduj nowoczesne API w Pythonie 153,64 zł, (16,90 zł -89%)
- Windows Media Center. Domowe centrum rozrywki 66,67 zł, (8,00 zł -88%)
Spis treści
Linux. Podręcznik dewelopera. Rzeczowy przewodnik po wierszu poleceń i innych narzędziach -- spis treści
O autorach
O korektorach merytorycznych
Wprowadzenie
Rozdział 1. Jak działa wiersz poleceń?
- Na początku był... REPL
- Składnia wiersza poleceń (odczyt)
- Wiersz poleceń i powłoka 	- Skąd powłoka wie, co uruchomić? (ewaluowanie)
- Krótka definicja interfejsu POSIX
 
- Podstawowe umiejętności wiersza poleceń 	- Podstawy systemu plików Uniksa
- Bezwzględne i względne ścieżki plików
- Rozglądanie się po systemie plików - nawigacja w wierszu poleceń
- Poruszanie się po systemie plików
- Odczytywanie plików
- Wprowadzanie zmian
 
- Uzyskiwanie pomocy
- Autouzupełnianie powłoki
- Podsumowanie
Rozdział 2. Praca z procesami
- Podstawy procesów 	- Z czego składa się proces Linuksa?
- Identyfikator procesu (PID)
- Efektywny identyfikator użytkownika (EUID) i efektywny identyfikator grupy (EGID)
- Zmienne środowiskowe
- Katalog roboczy
 
- Praktyczne polecenia do pracy z procesami systemu Linux
- Zaawansowane koncepcje i narzędzia związane z procesami 	- Sygnały
- lsof - wyświetlanie uchwytów plików otwartych przez proces
- Dziedziczenie
 
- Przegląd - przykładowa sesja rozwiązywania problemów
- Podsumowanie
Rozdział 3. Zarządzanie usługami za pomocą usługi systemd
- Podstawy 	- init
 
- Procesy i usługi
- Polecenia systemctl 	- Sprawdzanie statusu usługi
- Uruchamianie usługi
- Zatrzymywanie usługi
- Restartowanie usługi
- Ponowne załadowywanie usługi
- Enable i disable
 
- Kilka słów na temat Dockera
- Podsumowanie
Rozdział 4. Korzystanie z historii powłoki
- Historia powłoki 	- Pliki konfiguracyjne powłoki
- Pliki historii
- Przeszukiwanie historii powłoki
- Wyjątki
 
- Wykonywanie poprzednich poleceń za pomocą ! 	- Ponowne uruchamianie polecenia z tymi samymi argumentami
- Dołączanie do polecenia jakiegoś polecenia z historii
 
- Przeskakiwanie na początek lub koniec bieżącej linii
- Podsumowanie
Rozdział 5. Wprowadzenie do plików
- Pliki w Linuksie - absolutne podstawy 	- Pliki tekstowe
- Co to jest plik binarny?
- Znaki zakończenia linii
 
- Drzewo systemu plików
- Podstawowe operacje systemu plików 	- ls
- pwd
- cd
- touch
- less
- tail
- mv
- cp
- mkdir
- rm
 
- Edycja plików
- Typy plików 	- Dowiązania symboliczne
- Dowiązania twarde
- Polecenie file
 
- Zaawansowane operacje na plikach 	- Wyszukiwanie zawartości pliku za pomocą narzędzia grep
- Wyszukiwanie plików za pomocą narzędzia find
 
- Zaawansowane zagadnienia systemu plików 	- FUSE - jeszcze więcej zabawy z systemem plików Uniksa
 
- Podsumowanie
Rozdział 6. Edycja plików w wierszu poleceń
- Nano 	- Instalowanie nano
- Ściągawka z nano
 
- Vi(m) 	- Polecenia vi/vima
- Tryby
- Wskazówki dotyczące nauki edytora vi(m)
- Wiązania vima w innym oprogramowaniu
 
- Edytowanie pliku, do którego nie masz uprawnień
- Ustawianie preferowanego edytora
- Podsumowanie
Rozdział 7. Użytkownicy i grupy
- Czym jest użytkownik?
- Root kontra reszta świata
- Polecenie sudo
- Czym jest grupa?
- Miniprojekt: zarządzanie użytkownikami i grupami 	- Tworzenie użytkownika
- Tworzenie grupy
- Modyfikowanie użytkownika
 
- Zagadnienia zawansowane, czyli czym tak naprawdę jest użytkownik? 	- Metadane i atrybuty użytkownika
 
- Kilka słów na temat skryptów
- Podsumowanie
Rozdział 8. Własność i uprawnienia
- Odszyfrowywanie długiego listingu
- Atrybuty pliku 	- Typ pliku
- Uprawnienia
- Liczba dowiązań twardych
- Własność użytkownika
- Własność grupy
- Rozmiar pliku
- Czas modyfikacji
- Nazwa pliku
 
- Własność
- Uprawnienia 	- Zapisywanie uprawnień za pomocą liczb (ósemkowych)
- Typowe uprawnienia
 
- Zmiana własności (chown) i uprawnień (chmod) 	- chown
- chmod
 
- Podsumowanie
Rozdział 9. Zarządzanie zainstalowanym oprogramowaniem
- Praca z pakietami oprogramowania 	- Aktualizowanie lokalnej pamięci podręcznej stanem repozytorium
- Wyszukiwanie pakietu
- Instalowanie pakietu
- Uaktualnianie wszystkich pakietów, które mają dostępne aktualizacje
- Usuwanie pakietu (i jego wszelkich zależności, pod warunkiem że nie są wykorzystywane przez inne pakiety)
- Kwerendowanie zainstalowanych pakietów
 
- Wymagana ostrożność - curl | bash
- Kompilowanie zewnętrznego oprogramowania ze źródła 	- Przykład: kompilowanie i instalowanie narzędzia htop
 
- Podsumowanie
Rozdział 10. Konfigurowanie oprogramowania
- Hierarchia konfiguracji
- Argumenty wiersza poleceń
- Zmienne środowiskowe
- Pliki konfiguracyjne 	- Konfiguracja na poziomie systemu w katalogu /etc/
- Konfiguracja na poziomie użytkownika w katalogu ~/.config
 
- Jednostki systemd 	- Tworzenie własnej usługi
 
- Kilka zdań na temat konfiguracji w Dockerze
- Podsumowanie
Rozdział 11. Potoki i przekierowanie
- Deskryptory plików 	- Do czego odwołują się te deskryptory plików?
 
- Przekierowywanie wejścia i wyjścia (praca z deskryptorami plików dla zabawy i potencjalnych korzyści) 	- Przekierowywanie danych wejściowych - <
- Przekierowywanie danych wyjściowych - >
- Przekierowywanie błędów za pomocą 2>
 
- Łączenie poleceń za pomocą potoków (|) 	- Polecenia z wieloma potokami
 
- Narzędzia CLI, które należy znać 	- cut
- sort
- uniq
- wc
- head
- tail
- tee
- awk
- sed
 
- Praktyczne wzorce potoków 	- "Top X" z licznikiem
- curl | bash
- Filtrowanie i wyszukiwanie za pomocą narzędzia grep
- grep i tail do monitorowania dzienników
- find i xargs do wykonywania operacji na grupach plików
- sort, uniq i odwrotne sortowanie liczbowe do przeprowadzania analizy danych
- awk i sort do przeformatowywania danych i przetwarzania opartego na polach
- sed i tee do edytowania i tworzenia kopii zapasowych
 
- Zagadnienia zaawansowane: sprawdzanie deskryptorów plików
- Podsumowanie
Rozdział 12. Automatyzacja zadań za pomocą skryptów powłoki
- Dlaczego potrzebujesz podstaw pisania skryptów powłoki Bash?
- Podstawy 	- Zmienne
- Pobieranie
 
- Porównanie Basha z innymi powłokami
- Shebangi i wykonywalne pliki tekstowe 	- Typowe ustawienia powłoki Bash (opcje i argumenty)
- /usr/bin/env
- Znaki specjalne i znaki ucieczki
- Podstawianie poleceń
 
- Testowanie 	- Operatory testowe
- [[ testowanie plików i łańcuchów znaków ]]
- (( testowanie arytmetyczne ))
 
- Wyrażenia warunkowe: if/then/else 	- if-else
 
- Pętle 	- Pętle w stylu C
- for.in
- While
- Eksportowanie zmiennych
 
- Funkcje 	- Preferuj zmienne lokalne
 
- Przekierowanie wejścia i wyjścia 	- < - przekierowanie wejścia
- > i >> - przekierowanie wyjścia
- Zastosowanie 2>&1 do przekierowywania STDERR i STDOUT
 
- Składnia interpolacji zmiennej - ${}
- Ograniczenia skryptów powłoki
- Podsumowanie
- Źródła
Rozdział 13. Bezpieczny dostęp zdalny za pomocą SSH
- Elementarz kryptografii klucza publicznego 	- Szyfrowanie komunikatów
- Podpisywanie komunikatów
 
- Klucze SSH 	- Wyjątki od zasad
- Logowanie i uwierzytelnianie
 
- Projekt praktyczny: konfigurowanie logowania opartego na kluczu na zdalnym serwerze 	- Krok 1. Otwórz terminal na kliencie SSH (nie na serwerze)
- Krok 2. Wygeneruj parę kluczy
- Krok 3. Skopiuj klucz publiczny na serwer
- Krok 4. Przetestuj to!
 
- Konwersja kluczy SSH2 na format OpenSSH 	- Co chcemy osiągnąć?
- Jak przekonwertować klucz w formacie SSH2 na OpenSSH?
- Na odwrót: konwersja kluczy OpenSSH na format SSH2
 
- Agent SSH
- Typowe błędy SSH i argument -v (verbose)
- Przesyłanie plików 	- SFTP
- SCP
- Przydatne przykłady
 
- Tunele 	- Przekierowanie lokalne
- Serwer pośredni (proxy)
 
- Plik konfiguracyjny
- Podsumowanie
Rozdział 14. Kontrola wersji za pomocą Gita
- Trochę informacji na temat Gita
- Czym jest rozproszony system kontroli wersji?
- Podstawy Gita 	- Pierwsza konfiguracja
- Inicjalizowanie nowego repozytorium Gita
- Wprowadzanie i obserwowanie zmian
- Przechowywanie i zatwierdzanie zmian
- Opcjonalne dodawanie zdalnego repozytorium Gita
- Wysyłanie i pobieranie
- Klonowanie repozytorium
 
- Terminologia 	- Repozytorium
- Gałąź
- Tag
- Scalanie
- Konflikt scalania
- Stash
- Pull request
- Cherry-picking
- Bisecting
- Rebasing
 
- Najlepsze praktyki dotyczące komunikatów commitów 	- Dobre komunikaty o commitach
 
- Graficzne interfejsy użytkownika
- Przydatne aliasy powłoki
- GitHub dla ubogich 	- Uwagi wstępne
- 1. Łączenie z serwerem
- 2. Instalowanie Gita
- 3. Inicjalizowanie repozytorium
- 4. Klonowanie repozytorium
- 5. Dokonaj edycji projektu i wyślij zmiany
 
- Podsumowanie
Rozdział 15. Konteneryzacja aplikacji za pomocą Dockera
- Dlaczego kontenery działają jako pakiety?
- Wymagania wstępne - instalacja Dockera
- Przyspieszony kurs Dockera
- Tworzenie obrazów za pomocą pliku Dockerfile
- Polecenia kontenera 	- docker run
- docker ps
- docker exec
- docker stop
 
- Projekt Dockera: kontener aplikacji utworzonej w języku Python i frameworku Flask 	- 1. Konfigurowanie aplikacji
- 2. Tworzenie obrazu Dockera
- 3. Uruchomienie kontenera z obrazu
 
- Porównanie kontenerów i maszyn wirtualnych
- Krótka uwaga na temat repozytoriów obrazów Dockera
- Bolesne lekcje dotyczące kontenerów 	- Rozmiar obrazu
- Standardowa biblioteka C
- Laptop nie jest środowiskiem produkcyjnym - zewnętrzne zależności
 
- Teoria kontenerów: przestrzeń nazw
- Jak przeprowadzać operacje na kontenerach?
- Podsumowanie
Rozdział 16. Monitorowanie dzienników aplikacji
- Wprowadzenie do rejestrowania 	- Rejestrowanie w Linuksie bywa. dziwne
- Wysyłanie komunikatów dziennika
 
- journald usługi systemd
- Przykładowe polecenia journalctl 	- Śledzenie aktywnych dzienników dla jednostki
- Filtrowanie według czasu
- Filtrowanie pod kątem określonego poziomu dziennika
- Sprawdzanie dzienników z poprzedniego rozruchu
- Komunikaty jądra
 
- Rejestrowanie w kontenerach Dockera
- Podstawy dziennika syslog 	- Kategorie rejestrowania
- Poziomy dotkliwości
- Konfiguracja i implementacje
 
- Wskazówki dotyczące rejestrowania 	- Słowa kluczowe podczas korzystania z logowania ustrukturyzowanego
- Poziomy dotkliwości
 
- Rejestrowanie scentralizowane
- Podsumowanie
Rozdział 17. Mechanizm równoważenia obciążenia i HTTP
- Podstawowa terminologia 	- Brama
- Upstream
 
- Najczęściej pojawiające się błędne przekonania na temat protokołu HTTP 	- Kody stanu HTTP
- Nagłówki HTTP
- Wersje protokołu HTTP
- Mechanizm równoważenia obciążenia
- CORS
 
- Podsumowanie





