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 Lokalne haki chroot/live
9.2.2 Haki podczas uruchamiania
9.2.3 Lokalne haki binarne
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

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

Zgłaszanie błędów

14. Zgłaszanie błędów

Systemy live są dalekie od doskonałości, ale chcemy, uczynić je jak najbliższe perfekcji - z Waszą pomocą. Nie wahaj się zgłosić błąd. Lepiej jest wypełnić raport dwa razy niż wcale. Ten rozdział zawiera zalecenia dotyczące sposobu składania raportów o błędach.

Dla niecierpliwych:

14.1 Znane problemy

Ponieważ Debian testing} * i Debian *{unstable dystrybucjami ruchomymi, w przypadku określenia jednej z nich jako dystrybucji systemu docelowego, kompilowanie nie zawsze zakończy się sukcesem.

Jeśli budowanie systemu opartego na testing lub unstable powoduje u Ciebie zbyt wiele trudności, raczej wykorzystaj wydanie stable. live-build zawsze ustawia domyślnie wydanie stable.

Obecnie znane problemy wymienione są w ramach sekcji "status" na naszej stronie internetowej w ‹http://live-systems.org/›.

To jest poza zakresem tej instrukcji, aby szkolić się poprawnie identyfikować i naprawiać problemy pakietów z dystrybucji rozwojowych, jednak istnieją dwie rzeczy, których zawsze można spróbować: Jeśli kompilowanie nie powiedzie się, gdy docelową dystrybucją jest testing, to spróbuj z unstable. Jeśli unstable również nie działa, to przywróć do dystrybucji testing i przypnij nowszą wersję wadliwego pakietu z wersji unstable (patrz Przypinanie APT aby uzyskać szczegóły).

14.2 Przebuduj od zera

Aby upewnić się, że dany błąd nie jest spowodowany nie w pełni wyczyszczonym budowanym systemem, proszę zawsze odbudować cały system live od podstaw, aby sprawdzić, czy błąd jest powtarzalny.

14.3 Używaj aktualnych pakietów

Używanie przestarzałych pakietów może powodować poważne problemy podczas próby odtworzenia (i ostatecznego rozwiązania) problemu. Upewnij się, że system na którym kompilujesz jest aktualny i wszelkie pakiety zawarte w obrazie również.

14.4 Zbierz potrzebne informacje

Proszę dostarczyć wystarczającą ilość informacji z raportem. Obejmujące co najmniej, dokładną wersję live-build, gdzie napotkano błąd i kroki, jak go odtworzyć. Proszę użyć zdrowego rozsądku i przedstawić wszelkie inne istotne informacje, jeśli uważasz, że może to pomóc w rozwiązaniu problemu.

Aby w pełni wykorzystać Twój raport o błędzie, będziemy potrzebować przynajmniej następujących informacji:

Można wygenerować log procesu kompilacji przy użyciu polecenia tee. Polecamy robić to automatycznie przy użyciu skryptu auto/build (patrz Zarządzanie konfiguracją w celu uzyskania szczegółów).

# lb build 2>&1 | tee build.log

W czasie uruchamiania live-boot i live-config przetrzymują swoje logi w /var/log/live/. Sprawdź je w poszukiwaniu błędów.

Dodatkowo, aby wykluczyć inne błędy, zawsze dobrym pomysłem jest, aby spakować do archiwum tar swój katalog config/ i przesłać go gdzieś (nie należy wysłać go jako załącznik do listy), tak aby można spróbować odtworzyć napotkane błędy. Jeśli sprawia to trudność (np. ze względu na rozmiar) można użyć wyjścia z polecenia lb config --dump, które tworzy podsumowanie drzewa konfiguracyjnego (czyli np. listę plików w podkatalogach config/, ale bez załączania ich).

Pamiętaj, aby wysłać wszystkie dzienniki i logi, które zostały wyprodukowane z ustawień regionalnych angielskich, np. uruchom polecenia live-build ze zmiennymi LC_ALL=C lub LC_ALL=en_US.

14.5 Wyizoluj prawdopodobną wadę, jeśli to możliwe

Jeśli to możliwe, należy wyizolować przypadek do najmniejszej zmiany, które generuje błąd. Nie zawsze jest łatwo to zrobić, więc jeśli nie możesz dodać takiej informacji do raportu, nie martw się. Jednakże, jeśli użytkownik dobrze planuje swój cykl rozwoju, przy użyciu małych zestawów zmian na iterację, można być w stanie wyizolować problem poprzez budowę prostszej konfiguracji "bazy", która blisko pasuje do rzeczywistej konfiguracji oraz tylko uszkodzony zestaw zmian do niej dodany. Jeśli masz trudności z sortowaniem, które z Twoich zmian wygenerowały błąd, może to znaczyć, że uwzględniono za dużo w każdym zestawie zmian i powinno się raczej kształcić w mniejszych krokach.

14.6 Wybierz odpowiedni pakiet dla którego zgłaszasz błąd

Jeśli nie wiesz, który komponent jest odpowiedzialny za błąd, lub jeśli błąd jest ogólnym błędem dotyczącym systemów live, można wypełnić raport błędu dotyczący pseudo-pakietu debian-live.

Jednak będziemy wdzięczni, jeśli postarasz się zawęzić pole możliwości, w których może pojawiać się błąd.

14.6.1 W czasie budowania podczas ładowania początkowego (bootstrapping)

Początkowo live-build ładuje podstawowy system Debianu używając debootstrap lub cdebootstrap. Może się to nie powieść w zależności od używanego narzędzia do ładowania i dystrybucji Debiana, która jest pobierana. Jeśli błąd pojawi się tutaj, należy sprawdzić, czy błąd jest związany z konkretnym pakietem Debiana (najprawdopodobniej) lub, jeśli jest to związane z samym narzędziem ładowania początkowego.

W obu przypadkach nie jest to błąd w systemie live, ale w samym Debianie i prawdopodobnie nie możemy naprawić go bezpośrednio. Proszę zgłosić taki błąd jako dotyczący narzędzia ładowania początkowego (ang. bootstraping tool) lub uszkodzonego pakietu.

14.6.2 W czasie budowania podczas instalacji pakietów

live-build instaluje dodatkowe pakiety z archiwum Debiana i w zależności od używanej dystrybucji Debian i codziennego stanu archiwum, może się to nie powieść. Jeśli błąd pojawi się w tym miejscu, należy sprawdzić, czy błąd jest powtarzalny w normalnym systemie.

Jeśli jest to przypadek, gdzie błąd nie występuje w systemie live, ale w Debianie - zgłoś go jako dotyczący wadliwego pakietu. Uruchomienie debootstrap niezależnie od samej kompilacji systemu live lub uruchomianie lb bootstrap - debug daje więcej informacji.

Ponadto, w przypadku korzystania z lokalnego serwera lustrzanego i/lub jakichkolwiek serwerów proxy i doświadczania problemów prosimy zawsze najpierw spróbować odtworzyć czyności z użyciem oficjalnego serwera lustrzanego.

14.6.3 W czasie uruchamiania

Jeśli obraz nie uruchamia się, należy zgłosić go do listy wraz z informacjami wymaganymi w Zbierz potrzebne informacje. Nie zapomnij wspomnieć, jak/kiedy dokładnie obraz nie zadziałał, czy był użyty za pomocą wirtualizacji lub rzeczywistego sprzętu. Jeśli korzystasz z technologii wirtualizacji w jakiejkolwiek formie, proszę zawsze uruchomić go na prawdziwym sprzęcie przed zgłoszeniem błędu. Zapewnienie zrzutu ekranu awarii jest również bardzo pomocne.

14.6.4 W czasie gdy system jest już uruchomiony

Jeśli pakiet został zainstalowany, ale nie działa gdy system live faktycznie działa, jest to prawdopodobnie błąd w systemie live. Jednakże:

14.7 Spróbuj wykonać parę kroków

Przed zgłoszeniem błędu, proszę poszukaj w internecie danego komunikatu o błędzie lub objawu jaki otrzymujesz. Ponieważ jest mało prawdopodobne, że jesteś jedyną osobą, która zmaga się ze szczególnym problem. Zawsze jest szansa, że został on już omówiony w innym miejscu i zaproponowano już możliwe rozwiązanie, obejście lub patch.

Należy zwrócić szczególną uwagę na listę mailingową systemów live, jak również strona główna, ponieważ zawierają one prawdopodobnie najbardziej aktualne informacje. Jeśli takowa informacja istnieje, zawsze należy zawrzeć odniesienie do niej w swoim raporcie o błędzie.

Ponadto, należy sprawdzić aktualne wykazy błędów dla live-build, live-boot, live-config i live-tools, aby zobaczyć, czy coś podobnego nie zostało już zgłoszone.

14.8 Gdzie zgłaszać błędy

Live Systems Project śledzi wszystkie błędy w systemie śledzenia błędów (BTS). Aby uzyskać informacje na temat korzystania z tego systemu, zobacz ‹https://bugs.debian.org/›. Możesz też przesłać błędy używając polecenia #{reportbug} z pakietu o tej samej nazwie.

Ogólnie rzecz biorąc, należy zgłaszać błędy podczas kompilacji: jako dotyczące pakietu live-build, błędy podczas uruchamiania: live-boot oraz błędy w czasie działania systemu live: jako dotyczące live-config. Jeśli nie jesteś pewien, który pakiet będzie odpowiedni lub potrzebujesz więcej pomocy, przed złożeniem zgłoszenia błędu, zgłoś raport dotyczący pseudo-pakietu debian-live. Zajmiemy się wtedy nim i przypiszemy do odpowiedniego pakietu.

Należy pamiętać, że błędy znalezione w dystrybucji pochodzących od Debiana (takich jak Ubuntu, i inne) nie powinny być zgłaszane do BTS Debiana, chyba że błędy te mogą być odtworzone w Debianie przy użyciu oficjalnych pakietów Debiana.



<< previous toc next >>