Live manual

Live Systems

<< previous toc next >>

Podręcznik Systemów Live

O tym podręczniku

O tym podręczniku

1. O tym podręczniku

1.1 Dla niecierpliwych
1.2 Definicje
1.3 Autorzy
1.4 Wnoszenie wkładu do tego dokumentu
1.4.1 Nanoszenie zmian
1.4.2 Tłumaczenie

O Live Systems Project

2. O Live Systems Project

2.1 Motywacja
2.1.1 Co jest nie tak w moim dotychczasowym systemie live?
2.1.2 Czemu tworzyć nasz własny system live?
2.2 Filozofia
2.2.1 Tylko niezmienione pakiety z działu Debian "main"
2.2.2 Bez konfiguracji pakietów systemu live
2.3 Kontakt

Użytkownik

Instalacja

3. Instalacja

3.1 Wymagania
3.2 Instalowanie live-build
3.2.1 Z repozytorium Debiana
3.2.2 Ze źródła
3.2.3 Ze zrzutów deweloperskich
3.3 Instalowanie live-boot i live-config
3.3.1 Z repozytorium Debiana
3.3.2 Ze źródła
3.3.3 Ze zrzutów deweloperskich

Podstawy

4. Podstawy

4.1 Co to jest system live?
4.2 Pobieranie prekompilowanych obrazów
4.3 Using the web live image builder
4.3.1 Używanie i przestrogi dotyczące Web buildera
4.4 Pierwsze kroki: budowanie obrazu ISO-hybrydy
4.5 Korzystanie z hybrydowego obrazu ISO live
4.5.1 Wypalanie obrazu ISO na fizycznym nośniku
4.5.2 Kopiowanie obrazu ISO-hybrydy na nośnik USB
4.5.3 Wykorzystanie przestrzeni pozostałej na nośniku USB
4.5.4 Uruchamianie nośnika live
4.6 Używanie wirtualnej maszyny do testowania
4.6.1 Testowanie obrazu ISO z użyciem QEMU
4.6.2 Testowanie obrazu ISO z użyciem VirtualBox'a
4.7 Budowanie i używanie obrazu HDD
4.8 Budowanie obrazu netboot
4.8.1 Serwer DHCP
4.8.2 Serwer TFTP
4.8.3 Serwer NFS
4.8.4 Netboot testing HowTo
4.8.5 Qemu
4.9 Webbooting
4.9.1 Getting the webboot files
4.9.2 Uruchamianie obrazów webboot

Przegląd narzędzi

5. Przegląd narzędzi

5.1 Pakiet live-build
5.1.1 Polecenie lb config
5.2 Wcięcia
5.2.1 Polecenie lb build
5.2.2 Polecenie lb clean
5.3 Pakiet live-boot
5.4 Pakiet live-config

Zarządzanie konfiguracją

6. Zarządzanie konfiguracją

6.1 Radzenie sobie ze zmianami konfiguracji
6.1.1 Czemu używać automatycznych skryptów? Co one robią?
6.1.2 Użyj przykładowych automatycznych skryptów
6.2 Klonowanie konfiguracji opublikowanej przez Git

Dostosowywanie zawartości

7. Opis dostosowywania

7.1 Konfiguracja podczas kompilacji vs. podczas uruchamiania systemu
7.2 Etapy kompilacji
7.3 Uzupełnienie lb config plikami
7.4 Zadania dostosowywania

Dostosowywanie instalacji pakietów

8. Dostosowywanie instalacji pakietów

8.1 Źródła pakietu
8.1.1 Dystrybucja, działy archiwum i tryb
8.1.2 Serwery lustrzane dystrybucji
8.1.3 Serwery lustrzane dystrybucji używane podczas budowania obrazu
8.1.4 Serwery lustrzane dystrybucji użyte podczas uruchomienia
8.1.5 Dodatkowe repozytoria
8.2 Wybieranie pakietów do instalacji
8.2.1 Lista pakietów
8.2.2 Używanie metapakietów
8.2.3 Lokalna lista pakietów
8.2.4 Lokalna lista pakietów binarnych
8.2.5 Wygenerowana lista pakietów
8.2.6 Używanie instrukcji warunkowych w listach pakietów.
8.2.7 Usuwanie pakietu podczas instalacji
8.2.8 Pulpit i zadania językowe
8.2.9 Rodzaj jądra i wersja
8.2.10 Niestandardowe jądra
8.3 Instalowanie zmodyfikowanych pakietów lub pakietów innych firm
8.3.1 Używanie packages.chrootdo instalacji niestandardowych pakietów
8.3.2 Używanie repozytoriium APT aby zainstalować niestandarkowe pakiety
8.3.3 Niestandardowe pakiety i APT
8.4 Konfigurowanie APT podczas kompilacji
8.4.1 Wybieranie apt lub aptitude
8.4.2 Używanie serwera proxy z APT
8.4.3 Podkręcanie APT celu zaoszczędzenia miejsca
8.4.4 Przekazywanie opcji do apt lub aptitude
8.4.5 Pinning APT

Dostosowywanie zawartości

9. Dostosowywanie zawartości

9.1 Uwzględnianie
9.1.1 Lokalnie uwzględniane w chroot/live
9.1.2 Lokalnie uwzględniane dane binarne
9.2 Haki
9.2.1 Chroot local hooks
9.2.2 Lokalne haki binarne
9.2.3 Haki podczas uruchamiania
9.3 Wstępne ustawienie pytań Debconfa (Preseeding)

Dostosowywanie zdarzeń podczas uruchamiania systemu

10. Dostosowywanie zdarzeń podczas uruchamiania systemu

10.1 Personalizacja użytkownika live
10.2 Ustawianie lokalizacji i języka
10.3 Persistence
10.3.1 Plik persistence.conf
10.3.2 Używanie więcej niż jednego magazynu persistence
10.3.3 Using persistence with encryption

Dostosowywanie obrazu binarnego

11. Dostosowywanie obrazu binarnego

11.1 Programy ładujące (ang. Bootloadery)
11.2 Metadane ISO

Dostosowywanie Instalatora Debiana

12. Dostosowywanie Instalatora Debiana

12.1 Typy Instalatora Debiana
12.2 Dostosowywanie Instalatora Debiana przez preseeding
12.3 Dostosowywanie zawartości Instalatora Debiana

Projekt

Wnoszenie wkładu do tego projektu

13. Wnoszenie wkładu do tego projektu

13.1 Wprowadzanie zmian
13.2 Translation of man pages

Zgłaszanie błędów

14. Zgłaszanie błędów

14.1 Znane problemy
14.2 Przebuduj od zera
14.3 Używaj aktualnych pakietów
14.4 Zbierz potrzebne informacje
14.5 Wyizoluj prawdopodobną wadę, jeśli to możliwe
14.6 Wybierz odpowiedni pakiet dla którego zgłaszasz błąd
14.6.1 W czasie budowania podczas ładowania początkowego (bootstrapping)
14.6.2 W czasie budowania podczas instalacji pakietów
14.6.3 W czasie uruchamiania
14.6.4 W czasie gdy system jest już uruchomiony
14.7 Spróbuj wykonać parę kroków
14.8 Gdzie zgłaszać błędy

Styl Kodowania

15. Styl Kodowania

15.1 Kompatybilność
15.2 Wcięcia
15.3 Zawijanie
15.4 Zmienne
15.5 Różne

Procedury

16. Procedury

16.1 Główne wydanie
16.2 Wydanie Docelowe
16.2.1 Ostatnie Wydanie Docelowe Debiana
16.2.2 Szablon obwieszczenia dla wydania docelowego

Repozytorium Git

17. Repozytorium Git

17.1 Obsługa wielu repozytoriów

Przykłady

Przykłady

18. Przykłady

18.1 Używanie przykładów
18.2 Samouczek 1: Domyślny obraz
18.3 Samouczek 2: Narzędzie przeglądarka
18.4 Samouczek 3: Spersonalizowany obraz
18.4.1 Pierwsza zmiana
18.4.2 Druga zmiana
18.5 Kiosk-klient serwera VNC
18.6 Bazowy obraz dla nośnika USB z 128MB pamięci.
18.7 Pulpit GNOME w lokalnym języku oraz instalator

Dodatek

Przewodnik redakcyjny

19. Przewodnik redakcyjny

19.1 Wytyczne dla autorów
19.1.1 Funkcje językowe
19.1.2 Procedury
19.2 Wytyczne dla tłumaczy
19.2.1 Wskazówki tłumaczenia

Metadata

SiSU Metadata, document information

Podręcznik Systemów Live

Dostosowywanie zawartości

9. Dostosowywanie zawartości

Ten rozdział omawia dokładną regulację dostosowywania zawartości systemu poza samym wybieraniem pakietów do wyboru, które będą zawarte. Uwzględnianie pozwala dodać lub wymienić dowolne pliki w obrazie systemu live, haki pozwalają na wykonanie dowolnego polecenia na różnych etapach produkcji oraz w czasie rozruchu a opcji preseeding pozwala skonfigurować pakiety, gdy są zainstalowane poprzez dostarczenie odpowiedzi na pytania debconfa.

9.1 Uwzględnianie

Chociaż najlepiej byłoby gdyby system live zawierał się wyłącznie z plików dostarczonych przez całkowicie niemodyfikowane pakiety, to czasami wygodniejszym jest, dostarczenie lub zmodyfikowanie pewnych treści za pomocą plików. Korzystając z uwzględniania, można dodać (lub wymienić) dowolne pliki w systemie obrazu live. live-build dostarcza dwa takie mechanizmy wykorzystania:

Proszę zobaczyć Definicje aby uzyskać więcej informacji na temat różnicy między obrazami "binarnymi" a obrazami "live".

9.1.1 Lokalnie uwzględniane w chroot/live

Chroot local includes can be used to add or replace files in the chroot/Live filesystem so that they may be used in the Live system. A typical use is to populate the skeleton user directory (/etc/skel) used by the Live system to create the live user's home directory. Another is to supply configuration files that can be simply added or replaced in the image without processing; see Chroot local hooks if processing is needed.

Aby dołączyć pliki, po prostu dodaj je do katalogu config/includes.chroot. Ten katalog odnosi się do katalogu root / systemu live. Na przykład, aby dodać plik /var/www/index.html do systemu live, użyj:

$ mkdir -p config/includes.chroot/var/www
$ cp /path/to/my/index.html config/includes.chroot/var/www

Konfiguracja będzie mieć następujący układ:

- config
    [...]
     |-- includes.chroot
     |   `-- var
     |       `-- www
     |           `-- index.html
    [...]

Lokalnie uwzględnione w chroot są instalowane po instalacji pakietów, tak że pliki zainstalowane przez pakiety są zastępowane.

9.1.2 Lokalnie uwzględniane dane binarne

Aby zawierać materiały takie jak filmy lub dokumentacja na systemie plików nośnika tak, aby były one dostępne od razu po włożeniu nośnika bez uruchamiania systemu live, możesz użyć lokalnego uwzględniania danych binarnych. Działa to w podobny sposób do lokalnego uwzględniania w chroot/live. Załóżmy na przykład, że pliki ~/video_demo.* to filmy demonstacyjne systemu live opisanego przez i dowiązane przez stronę indeksu HTML. Wystarczy skopiować materiał z config/includes.binary/ w następujący sposób:

$ cp ~/video_demo.* config/includes.binary/

Pliki te pojawią się teraz w katalogu głównym nośnika live.

9.2 Haki

Hooks allow commands to be run in the chroot and binary stages of the build in order to customize the image. Depending on whether you are building a live image or a regular system image you have to place your hooks in config/hooks/live or config/hooks/normal respectively. These are frequently referred to as local hooks because they are executed inside the build environment.

There are also boot-time hooks that allow you to run commands once the image has already been built, during the boot process.

9.2.1 Chroot local hooks

To run commands in the chroot stage, create a hook script with a .hook.chroot suffix containing the commands either in the config/hooks/live or config/hooks/normal directories. The hook will run in the chroot after the rest of your chroot configuration has been applied, so remember to ensure your configuration includes all packages and files your hook needs in order to run. See the example chroot hook scripts for various common chroot customization tasks provided in /usr/share/doc/live-build/examples/hooks which you can copy or symlink to use them in your own configuration.

9.2.2 Lokalne haki binarne

To run commands in the binary stage, create a hook script with a .hook.binary suffix containing the commands either in the config/hooks/live or config/hooks/normal directories. The hook will run after all other binary commands are run, but before binary_checksums, the very last binary command. The commands in your hook do not run in the chroot, so take care not to modify any files outside of the build tree, or you may damage your build system! See the example binary hook scripts for various common binary customization tasks provided in /usr/share/doc/live-build/examples/hooks which you can copy or symlink to use them in your own configuration.

9.2.3 Haki podczas uruchamiania

Aby wykonać polecenia przy starcie systemu, możesz dostarczyć haki live-config, jak wyjaśniono w jego podręczniku man w sekcji "Customization" (ang. dostosowywanie). Przeanalizuj własne haki live-config dostarczone w /lib/live/config/, zwracając uwagę na numery sekwencji. Następnie dodaj swój własne hak z odpowiednim prefiksem numeru sekwencji, albo jako lokalnie uwzględnione w chroot w config/includes.chroot/lib/live/config/, lub w postaci niestandardowego pakietu omówione w Instalowanie zmodyfikowanych pakietów lub pakietów innych firm.

9.3 Wstępne ustawienie pytań Debconfa (Preseeding)

Pliki w katalogu config/preseed/ z rozszerzeniem .cfg w następującym etapie (.chroot lub .binary) są brane pod uwagę jako pliki preseed debconfa i są instalowane za pomocą live-build przez debconf-set-selections podczas odpowiedniego etapu.

Aby uzyskać więcej informacji o debconf, proszę przeczytaj debconf(7) z pakietu debconf.


<< previous toc next >>