Rozdział 4. Aktualizacja z Debiana 7 (wheezy)

Spis treści

4.1. Przygotowanie do aktualizacji
4.1.1. Kopia zapasowa danych i konfiguracji
4.1.2. Uprzednie ostrzeżenie użytkowników
4.1.3. Przygotowanie do przestoju usług
4.1.4. Przygotowanie do odzyskiwania
4.1.5. Przygotowanie bezpiecznego środowiska do uaktualnienia
4.2. Sprawdzenie statusu systemu
4.2.1. Przejrzenie zaplanowanych działań w menedżerze pakietów
4.2.2. Wyłączenie priorytetów APT-a (APT pinning)
4.2.3. Sprawdzenie statusu pakietów
4.2.4. Sekcja proposed-updates
4.2.5. Nieoficjalne źródła
4.3. Przygotowanie źródeł do APT-a
4.3.1. Dodanie internetowych źródeł APT-a
4.3.2. Dodanie źródeł APT-a do lokalnego serwera lustrzanego
4.3.3. Dodanie źródeł APT-a do nośników optycznych
4.4. Aktualizacja pakietów
4.4.1. Zapisanie sesji
4.4.2. Aktualizowanie listy pakietów
4.4.3. Zapewnienie wystarczającej ilości wolnego miejsca
4.4.4. Minimalna aktualizacja systemu
4.4.5. Aktualizacja systemu
4.5. Możliwe problemy przy aktualizacji
4.5.1. Podczas aktualizacji dystrybucji pojawia się błąd Nie udało się wykonać natychmiastowej konfiguracji.
4.5.2. Spodziewane usunięcia pakietów
4.5.3. Konflikty lub pętle wymaga wstępnie
4.5.4. Konflikty plików
4.5.5. Zmiany konfiguracji
4.5.6. Zmiany sesji na konsoli
4.5.7. Pakiety specjalnej troski
4.6. Aktualizacja jądra i powiązanych pakietów
4.6.1. Instalowanie metapakietu jądra
4.6.2. Zmiany w montowaniu i sprawdzaniu systemu plików /usr
4.7. Sprawy do zrobienia przed ponownym uruchomieniem
4.8. Przygotowanie do kolejnego wydania
4.8.1. Czyszczenie usuniętych pakietów
4.9. Przestarzałe składniki
4.10. Przestarzałe pakiety
4.10.1. Pakiety atrapy

4.1. Przygotowanie do aktualizacji

Przed aktualizacją zalecamy zapoznanie się z informacjami zawartymi w Rozdział 5, Problemy, które należy mieć na uwadze, a dotyczące wydania jessie. Rozdział ten opisuje również potencjalne trudności, niezwiązane bezpośrednio z procesem aktualizacji, o których warto wiedzieć przed rozpoczęciem całej procedury.

4.1.1. Kopia zapasowa danych i konfiguracji

Przed zaktualizowaniem systemu zalecamy wykonanie pełnej kopii zapasowej, a przynajmniej kopii tych danych i konfiguracji, których utrata byłaby dla nas bolesna. Narzędzia i proces aktualizacji są dość niezawodne, lecz problem sprzętowy w trakcie procedury może spowodować znaczne uszkodzenie systemu.

Główną rzeczą, którą warto skopiować jest zawartość plików /etc, /var/lib/dpkg, /var/lib/apt/extended_states oraz wynik polecenia dpkg --get-selections "*" (cudzysłów jest istotny). Jeśli do zarządzania pakietami wykorzystuje się program aptitude, należy zachować również zawartość pliku /var/lib/aptitude/pkgstates.

Sam proces aktualizacji nie zmienia niczego w katalogu /home. Niektóre aplikacje (np. część zestawu Mozilla oraz środowiska graficzne GNOME i KDE) nadpisują istniejące ustawienia użytkownika wartościami domyślnymi, gdy użytkownik uruchamia dany program jako pierwszy. Środkiem ostrożności jest wykonanie kopii zapasowych ukrytych plików i katalogów (z kropką - dotfiles) z katalogów domowych użytkowników. Ta kopia może ułatwić odtworzenie lub przywrócenie starych ustawień. Powinno się również poinformować o tym pozostałych użytkowników.

Operacja związana z instalacją pakietów musi być wykonana z uprawnieniami administratora, dlatego należy się zalogować na konto root, używając polecenia su lub wykorzystując sudo do uzyskania potrzebnych uprawnień.

Przed aktualizacją należy wykonać kilka czynności, dlatego trzeba zapoznać się z poniższą listą:

4.1.2. Uprzednie ostrzeżenie użytkowników

Przed każdą aktualizacją powinno się poinformować innych użytkowników systemu o tym fakcie, choć osoby uzyskujące dostęp do komputera za pomocą ssh nie powinny napotkać większych problemów podczas kontynuowania pracy.

Jako dodatkowe zabezpieczenie można wykonać przed wykonaniem aktualizacji kopię zapasową lub odmontować partycję z katalogiem /home.

Przy aktualizacji do wydania jessie konieczne jest zaktualizowanie jądra. Nie obędzie się więc bez ponownego uruchomienia komputera. Zwykle odbywa się to po zakończeniu aktualizacji.

4.1.3. Przygotowanie do przestoju usług

Mogą istnieć usługi oferowane przez system, które są związane z pakietami objętymi aktualizacją. W takim przypadku proszę pamiętać, że podczas aktualizacji i konfiguracji będą one zatrzymane na czas zastąpienia ich przez nowszą wersję oraz nie będą w tym czasie dostępne.

Dokładny czas braku dostępu do usług zależy od liczby aktualizowanych pakietów i od okresu, w jakim administrator odpowie na pytania konfiguracyjne. Proszę zwrócić uwagę, że jeśli proces aktualizacji nie będzie nadzorowany, a system będzie wymagał reakcji administratora, występuje duże prawdopodobieństwo trwania usług niedostępnych[1] w dłuższym okresie.

Jeśli aktualizowany system udostępnia usługi, które są krytyczne dla użytkowników bądź sieci[2], można ograniczyć przerwę w ich działaniu wykonując aktualizację minimalną (zgodnie z opisem w Sekcja 4.4.4, „Minimalna aktualizacja systemu”) a następnie wykonać aktualizację jądra i ponownie uruchomić komputer (aktualizując pakiety związane z krytycznymi usługami). Dopiero później należy wykonać pełną aktualizację opisaną w Sekcja 4.4.5, „Aktualizacja systemu”. W ten sposób można sprawdzić, że krytyczne usługi działają i są dostępne w trakcie pełnej aktualizacji, a przerwa w działaniu będzie zminimalizowana.

4.1.4. Przygotowanie do odzyskiwania

Choć Debian stara się zapewnić, że system będzie się uruchomiał w każdym przypadku to zawsze istnieje możliwość, że wystąpią problemy z ponownym jego uruchomieniem po dokonaniu aktualizacji. Rozpoznane, ewentualne problemy są omówione w tym i kolejnych rozdziałach uwag do wydania.

Z tego względu należy się upewnić, że będzie istniała możliwość odzyskania systemu jeśli nie uruchomi się on po aktualizacji (lub w przypadku systemów zarządzanych zdalnie nie zaktywuje sieci).

W przypadku aktualizacji zdalnej za pomocą ssh, zaleca się dodatkowe środki bezpieczeństwa, w celu zapewnienia sobie możliwości dostępu do serwera za pomocą zdalnego terminala szeregowego. Istnieje ryzyko, że po aktualizacji jądra i ponownym uruchomieniu systemu wystąpi konieczność poprawienia konfiguracji systemu korzystając z konsoli lokalnej. Jeśli w trakcie aktualizacji system zostanie przypadkowo zresetowany, możliwe że konieczne będzie odzyskiwanie za pomocą lokalnej konsoli.

Zalecamy korzystanie z trybu ratunkowego w instalatorze Debiana jessie. Zaletą skorzystania z instalatora jest możliwość wyboru takiej metody jaka jest najkorzystniejsza. Więcej informacji zawiera Recovering a Broken System w rozdziale 8 przewodnika instalacji i FAQ instalatora Debiana.

Jeśli ten sposób zawiedzie konieczne jest zapewnienie sobie alternatywnego sposobu rozruchu systemu, by móc go naprawić. Rozwiązaniem może okazać się specjalny obraz ratunkowy lub płyta typu live CD. Po uruchomieniu systemu za pomocą jednej z tych metod powinno się udać podmontować główny system plików, a następnie wykonać chroot w celu rozpoznania i naprawy problemu.

4.1.4.1. Debugowanie powłoki podczas rozruchu przy użyciu initrd

Pakiet initramfs-tools udostępnia powłokę debugowania[3] w generowanych obrazach initrd. Na przykład: jeśli initrd nie będzie mógł zamontować głównego systemu plików to przeniesie się do powłoki debugowania z dostępnymi podstawowymi poleceniami, aby dać możliwość znalezienia problemu i naprawy.

Podstawowymi sprawami do sprawdzenia są: obecność poprawnych plików urządzeń w /dev; które moduły są załadowane (cat /proc/modules); wynik dmesg pod kątem błędów ładowania sterowników. Wynik dmesg pokaże również jakie pliki urządzeń zostały przypisane do danych dysków; powinno się je sprawdzić z wynikiem echo $ROOT, aby upewnić się, że główny system plików znajduje się na oczekiwanym urządzeniu.

Jeśli problem się rozwiąże to polecenie exit zamknie powłokę debugowania i proces debugowania będzie kontynuowany od momentu wystąpienia błędu. Oczywiście, konieczne będzie naprawienie źródła problemu i ponowne wygenerowanie initrd, aby przy następnym rozruchu nie znaleźć się w identycznej sytuacji.

4.1.4.2. Debugowanie powłoki podczas rozruchu przy użyciu systemd

Jeśli rozruch nie powiedzie się korzystając z systemd, można dostać się do powłoki roota służącej do debugowania zmieniając wiersz polecenia jądra. Jeśli podstawowy rozruch uda się, lecz część usług nie wystartuje, można spróbować dodać do parametrów jądra systemd.unit=rescue.target.

Z kolei parametr jądra systemd.unit=emergency.target udostępni powłokę roota najwcześniej jak to możliwe. Będzie to jednak jeszcze przed zamontowaniem głównego systemu plików z uprawnieniami do odczytu i zapisu. Zajdzie konieczność ręcznego wykonania:

mount -o remount,rw /

Więcej informacji o debugowaniu rozruchu kończącego się niepowodzeniem za pomocą systemd można znaleźć w artykule Diagnosing Boot Problems.

W najgorszym scenariuszu może zajść konieczność dokonania rozruchu ze pomocą starego systemu sysvinit. Aby to uczynić pakiet sysvinit musi być wciąż zainstalowany, a plik binarny /lib/sysvinit/init zawarty w initramfs. Jeśli te wymagania są spełnione, należy dodać init=/lib/sysvinit/init do wiersza polecenia jądra, co spowoduje rozruch z wykorzystaniem pliku binarnego sysvinit.

4.1.5. Przygotowanie bezpiecznego środowiska do uaktualnienia

Aktualizacja dystrybucji może być wykonana lokalnie, z trybu tekstowego wirtualnej konsoli (lub przez bezpośrednio połączony terminal szeregowy) bądź zdalnie, za pomocą ssh.

[Ważne]Ważne

Jeśli korzysta się z usług VPN (takich jak tinc) to mogą one nie być dostępne w czasie aktualizacji. Proszę zapoznać się z Sekcja 4.1.3, „Przygotowanie do przestoju usług”.

Aby zapewnić sobie większy margines bezpieczeństwa podczas aktualizacji zdalnej sugeruje się uruchomić proces aktualizacji w wirtualnej konsoli (zapewnionej przez program screen, który pozwala na bezpieczne ponowne podłączenie oraz zapewnia trwałość procesu aktualizacji, nawet przy zerwaniu połączenia).

[Ważne]Ważne

Nie należy wykonywać aktualizacji przy użyciu telnet, rlogin, rsh lub z sesji X zarządzanej przez xdm, gdm, kdm, itp. na aktualizowanym komputerze. Każda z tych usług może zostać przerwana podczas aktualizacji co może skutkować niedostępnym systemem, uaktualnionym jedynie częściowo. Używanie programu GNOME update-manager jest zdecydowanie odradzane przy aktualizacji do obecnego wydania, ponieważ narzędzie to wymaga, aby sesja pulpitu pozostawała aktywna.

4.2. Sprawdzenie statusu systemu

Proces aktualizacji opisany w tym rozdziale został opracowany dla aktualizacji z czystego wydania wheezy bez pakietów pochodzących z zewnątrz. Aby zwiększyć niezawodność aktualizacji można usunąć takie pakiety przed rozpoczęciem procesu.

Bezpośrednie aktualizacje z wydań Debiana starszych od 7 (wheezy) nie są wspierane. Proszę zapoznać się z instrukcjami w Uwagach do wydania Debian 7, aby wykonać wpierw aktualizację do wydania 7.

Procedura ta zakłada, że system został zaktualizowany do ostatniej aktualizacji punktowej wheezy. Jeśli się tego nie wykonało lub nie jest się tego pewnym należy wykonać instrukcje z Sekcja A.1, „Uaktualnienie wydania wheezy”.

4.2.1. Przejrzenie zaplanowanych działań w menedżerze pakietów

Niekiedy użycie do instalowania pakietów apt-get zamiast aptitude może spowodować, że aptitude potraktuje je jako nieużywane i przeznaczy do usunięcia. Z reguły należy się upewnić, że system jest całkowicie uaktualniony i czysty przed rozpoczęciem procesu aktualizacji.

Z tego powodu należy sprawdzić czy nie ma zaplanowanych działań w menedżerze pakietów aptitude. Jeśli jakiś pakiet jest przeznaczony do usunięcia lub aktualizacji może to negatywnie wpłynąć na przebieg aktualizacji. Proszę zauważyć, że naprawienie tego problemu będzie możliwe tylko wówczas, gdy sources.list wciąż wskazuje na wydanie wheezy, a nie na stable lub jessie - patrz Sekcja A.2, „Sprawdzenie listy źródeł”.

Sprawdzenie polega na uruchomieniu aptitude w trybie wizualnym i wciśnięciu g (pobierz/instaluj/usuń). Jeśli pokazane zostaną jakieś akcje należy je przejrzeć i albo poprawić, albo wykonać. Jeśli nie będzie sugerowanych akcji zostanie wyświetlony komunikat: Nie jest zaplanowana instalacja, aktualizacja, ani usunięcie żadnych pakietów.

4.2.2. Wyłączenie priorytetów APT-a (APT pinning)

Jeśli skonfigurowano APT w celu instalacji konkretnych pakietów z dystrybucji innej niż stabilna (np. testowej), konieczna może okazać się zmiana konfiguracji priorytetów APT-a (przechowywanej w /etc/apt/preferences i /etc/apt/preferences.d/), aby zezwolić na aktualizację pakietów do wersji nowego wydania stabilnego. Więcej informacji na ten temat można znaleźć w podręczniku systemowym apt_preferences(5).

4.2.3. Sprawdzenie statusu pakietów

Niezależnie od wybranej metody aktualizacji zaleca się uprzednie sprawdzenie wszystkich pakietów i zweryfikowanie czy wszystkie nadają się do aktualizacji. Następujące polecenie pokaże pakiety o statusie częściowo zainstalowany lub nieprawidłowa konfiguracja i te z jakimkolwiek statusem błędu:

# dpkg --audit

Można również sprawdzić stan wszystkich pakietów za pomocą aptitude lub np.:

# dpkg -l | pager

albo:

# dpkg --get-selections "*" > ~/curr-pkgs.txt

Pożądane może okazać się usunięcie wszelkich zatrzymań z pakietów. Jeśli jakikolwiek aktualizowany pakiet o statusie istotny będzie zatrzymany to aktualizacja nie powiedzie się.

Proszę zauważyć, że aptitude używa innej metody rejestrowania zatrzymanych pakietów niż apt-get i dselect. Pakiety zatrzymane w aptitude można sprawdzić za pomocą polecenia:

# aptitude search "~ahold" 

Pakiety zatrzymane w apt-get można sprawdzić korzystając z:

# dpkg --get-selections | grep 'hold$'

Jeśli zmieniono jakiś pakiet lub ponownie skompilowano go lokalnie bez zmiany nazwy ani dodania epoki do nazwy, konieczne będzie zatrzymanie go, aby zapobiec uaktualnieniu.

Stan zatrzymania pakietu w apt-get można zmienić za pomocą:

# echo package_name hold | dpkg --set-selections

Proszę zastąpić hold słowem install aby cofnąć zatrzymanie pakietu.

Jeśli sygnalizowana jest potrzeba poprawy najlepiej jest upewnić się, że lista sources.list wciąż odnosi się do wydania wheezy, zgodnie z opisem Sekcja A.2, „Sprawdzenie listy źródeł”.

4.2.4. Sekcja proposed-updates

Jeśli w pliku /etc/apt/sources.list znajduje się sekcja proposed-updates należy usunąć ją przed rozpoczęciem aktualizacji systemu. Jest to środek ostrożności zmniejszający prawdopodobieństwo konfliktów.

4.2.5. Nieoficjalne źródła

Jeśli zainstalowano pakiety pochodzące spoza Debiana należy pamiętać, że mogą one zostać usunięte podczas aktualizacji z powodu konfliktów w zależnościach. Jeśli pakiety zostały zainstalowane przez dodanie dodatkowego archiwum pakietów w /etc/apt/sources.list należy sprawdzić czy nie oferuje ono pakietów skompilowanych dla wydania jessie. Wówczas należy odpowiednio zmienić wiersz dotyczący tego archiwum we wspomnianym pliku, w tym samym czasie co pozostałe wiersze związane z pakietami Debiana.

Część użytkowników może posiadać nieoficjalne, backportowane wersje pakietów, które są nowsze niż pakiety zainstalowane w Debianie wheezy. Te pakiety będą prawdopodobnie sprawiać kłopoty z powodu konfliktów plików[4]. Sekcja 4.5, „Możliwe problemy przy aktualizacji” opisuje sposoby rozwiązywania konfliktów plików.

4.3. Przygotowanie źródeł do APT-a

Przed rozpoczęciem aktualizacji należy przygotować plik konfiguracyjny apt z listami pakietów - /etc/apt/sources.list.

apt weźmie pod uwagę wszystkie pakiety oznaczone za pomocą wpisu deb i zainstaluje pakiety o najwyższym numerze wersji, dając priorytet wcześniejszym wierszom w pliku (stąd, jeśli wymieniono kilka położeń powinno się zwykle jako pierwszy umieścić lokalny dysk twardy, następnie CD-ROM-y, a na końcu serwery lustrzane HTTP/FTP).

Wydanie można określić dzięki nazwie kodowej (np. wheezy, jessie) lub statusowi wydania (oldstable - stare stabilne, stable - stabilne, testing - testowe, unstable - niestabilne). Zapis odnoszący się do nazwy kodowej ma tę zaletę, że użytkownik nie zostanie nigdy zaskoczony nowym wydaniem. Z tego powodu to rozwiązanie jest preferowane w niniejszym dokumencie. Z drugiej strony, powoduje to konieczność samodzielnego sprawdzania czy nie wydano nowej wersji systemu. Jeśli użyje się nazwy statusu pokaże się wówczas bardzo dużo dostępnych aktualizacji pakietów.

4.3.1. Dodanie internetowych źródeł APT-a

Domyślna konfiguracja jest przeznaczona do instalacji z głównych serwerów internetowych Debiana, ale można zmodyfikować plik /etc/apt/sources.list w celu użycia innych serwerów lustrzanych, najlepiej położonych najbliżej użytkownika (w infrastrukturze sieciowej).

Adresy serwerów lustrzanych HTTP i FTP można znaleźć na stronie https://www.debian.org/distrib/ftplist (w rozdziale lista serwerów lustrzanych Debiana). Serwery HTTP są zwykle szybsze niż FTP.

Załóżmy na przykład, że najbliższym serwerem lustrzanym jest http://mirrors.kernel.org. Przy sprawdzaniu go przeglądarką internetową lub programem FTP, można zauważyć, że główne katalogi są ułożone podobnie do:

http://mirrors.kernel.org/debian/dists/jessie/main/binary-powerpc/...
http://mirrors.kernel.org/debian/dists/jessie/contrib/binary-powerpc/...

Aby użyć tego serwera lustrzanego z apt, należy dodać poniższy wiersz do pliku sources.list:

deb http://mirrors.kernel.org/debian jessie main contrib

Proszę zwrócić uwagę, że dists jest dodane jawnie, a argumenty po nazwie wydania są używane do rozwinięcia ścieżki na wiele katalogów.

Pod dodaniu nowych źródeł należy wyłączyć istniejące wcześniej wiersze deb w sources.list, dodając na ich początku znak kratki (#).

4.3.2. Dodanie źródeł APT-a do lokalnego serwera lustrzanego

Zamiast używania serwerów lustrzanych HTTP lub FTP, można zmodyfikować swój plik /etc/apt/sources.list tak, aby skorzystać z kopii na dysku lokalnym (np. zamontowanej za pomocą NFS).

Kopia serwera lustrzanego może się znajdować np. w /var/ftp/debian/ i posiadać główne katalogi, takie jak:

/var/ftp/debian/dists/jessie/main/binary-powerpc/...
/var/ftp/debian/dists/jessie/contrib/binary-powerpc/...

Aby użyć jej ze swoim aptem, proszę dodać ten wiersz do pliku sources.list:

deb file:/var/ftp/debian jessie main contrib

Proszę zwrócić uwagę, że dists jest dodane jawnie, a argumenty po nazwie wydania są używane do rozwinięcia ścieżki na wiele katalogów.

Pod dodaniu nowych źródeł należy wyłączyć istniejące wcześniej wiersze deb w sources.list, dodając na ich początku znak kratki (#).

4.3.3. Dodanie źródeł APT-a do nośników optycznych

Aby korzystać wyłącznie z płyt (CD, DVD lub Blu-ray), proszę wyłączyć istniejące wiersze deb w pliku /etc/apt/sources.list dodając na początku znak kratki (#).

Proszę upewnić się, że w pliku /etc/fstab istnieje wiersz pozwalający na zamontowanie CD-ROM-u w punkcie montowania /media/cdrom. Na przykład, jeśli napęd CD-ROM jest urządzeniem /dev/sr0, to plik /etc/fstab powinien zawierać wiersz podobny do poniższego:

/dev/sr0 /media/cdrom auto noauto,ro 0 0

Proszę zauważyć, że w czwartym polu, między słowami noauto,ro nie mogą występować spacje.

Aby sprawdzić, czy wszystko działa, proszę włożyć płytę i spróbować wykonać

# mount /media/cdrom    # montowanie płyty w punkcie montowania
# ls -alF /media/cdrom  # wyświetlenie głównego katalogu płyty
# umount /media/cdrom   # odmontowanie płyty

Następnie, proszę uruchomić:

# apt-cdrom add

dla każdej płyty binarnej Debiana, aby dodać dane z każdego CD do bazy danych APT-a.

4.4. Aktualizacja pakietów

Zalecanym sposobem aktualizacji z poprzedniego wydania systemu Debian jest narzędzie zarządzania pakietami apt-get. W poprzednich wydaniach zalecano skorzystanie z aptitude, lecz najnowsze wersje apt-get zawierają równorzędną funkcjonalność i dają lepsze rezultaty w procesie aktualizacji.

Proszę nie zapomnieć o zamontowaniu potrzebnych partycji do odczytu i zapisu (przede wszystkim partycji głównej i /usr), za pomocą polecenia podobnego do poniższego:

# mount -o remount,rw /punkt-montowania

Proszę dobrze sprawdzić czy źródła APT-a (w /etc/apt/sources.list) odnoszą się do wydania jessie lub stable. Nie powinno być tam wpisów dotyczących wheezy.

[Uwaga]Uwaga

Wiersze źródeł CD-ROM-u mogą niekiedy wskazywać na unstable; choć może być to mylące, nie należy tego zmieniać.

4.4.1. Zapisanie sesji

Zaleca się skorzystanie z programu /usr/bin/script, aby zapisać wyniki sesji aktualizacji. Wówczas, jeśli wystąpi problem, gotowy będzie log, który będzie można wykorzystać np. do zgłoszenia błędu. Aby rozpocząć zapisywanie, proszę wpisać:

# script -t 2>~/upgrade-jessiekrok.time -a ~/upgrade-jessiekrok.script

lub coś podobnego. Jeśli będzie trzeba uruchomić zapis ponownie (np. po ponownym uruchomieniu systemu), proszę użyć innej wartości krok, aby wskazać zapisywany krok aktualizacji. Nie należy umieszczać pliku (do którego będzie się zapisywało) w katalogu tymczasowym, takim jak /tmp lub /var/tmp. Pliki w tych katalogach będą usuwane przy aktualizacjach i po restarcie.

Zapis ten pozwoli również na przejrzenie informacji, które już zniknęły z ekranu. Jeśli jest się w konsoli systemowej wystarczy przełączyć się do VT2 (za pomocą Alt+F2) i (po zalogowaniu się) skorzystać z polecenia less -R ~root/upgrade-jessie.script, aby przejrzeć plik.

Po zakończeniu aktualizacji można zatrzymać polecenie script poleceniem exit.

Jeśli użyto przełącznika -t do polecenia script można skorzystać z programu scriptreplay, aby odtworzyć całą sesję:

# scriptreplay ~/upgrade-jessie.time ~/upgrade-jessie.script

4.4.2. Aktualizowanie listy pakietów

Na początku, należy pobrać listę dostępnych pakietów nowego wydania. Można to zrobić za pomocą polecenia:

# apt-get update

4.4.3. Zapewnienie wystarczającej ilości wolnego miejsca

Konieczne jest upewnienie się, że system posiada wystarczająco dużo wolnej przestrzeni dyskowej przed pełną aktualizacją systemu, opisaną w sekcji Sekcja 4.4.5, „Aktualizacja systemu”. Wszystkie pakiety potrzebne do instalacji są najpierw pobierane z sieci i przechowywane w /var/cache/apt/archives (przy pobieraniu w podkatalogu partial/), dlatego trzeba zapewnić sobie wolne miejsce na partycji z katalogiem /var/. Po zakończeniu pobierania wolne miejsce potrzebne będzie na innych partycjach, aby zainstalować aktualizowane pakiety (które mogą zawierać większe pliki wykonywalne lub więcej danych) i nowe pakiety, pobrane przy aktualizacji. Jeśli jest zbyt mało wolnego miejsca można doprowadzić do trudnej w opanowaniu, niedokończonej aktualizacji.

Polecenie apt-get może pokazać szczegółowe informacje o potrzebnym miejscu. Przed wykonaniem aktualizacji przybliżoną wartość wymaganej przestrzeni można zobaczyć wykonując:

# apt-get -o APT::Get::Trivial-Only=true dist-upgrade
[ ... ]
XXX aktualizowanych, XXX nowo instalowanych, XXX do usunięcia i XXX nieaktualizowanych.
Konieczne pobranie xx.x MB archiwów. 
Po tej operacji zostanie dodatkowo użyte AAA MB miejsca na dysku.
[Uwaga]Uwaga

Wykonanie tego polecenia na początku procesu aktualizacji może wypisać błąd, z powodów opisanych w następnych rozdziałach. Trzeba wówczas poczekać z komendą do zakończenia minimalnej aktualizacji systemu (opisanej w rozdziale Sekcja 4.4.4, „Minimalna aktualizacja systemu”)

Jeśli zabraknie miejsca apt-get wyświetli ostrzeżenie:

E: Niestety w /var/cache/apt/archives/ nie ma wystarczającej ilości wolnego miejsca.

W takim przypadku, konieczne będzie zwolnienie miejsca na dysku. Można:

  • Usunąć pakiety pobrane wcześniej do instalacji (z /var/cache/apt/archives). Zwolnienie bufora pakietów za pomocą polecenia apt-get clean usunie wszystkie pobrane wcześniej pliki pakietów.

  • Usunąć zapomniane pakiety. Jeśli w wheezy korzystano z poleceń aptitude lub apt-get do ręcznego instalowania pakietów to programy te przechowują o nich informacje i będą w stanie oznaczyć jako przestarzałe pakiety, pobrane jedynie przez zależności, które nie są dłużej potrzebne po usunięciu pakietu. Nie przeznaczą one do usunięcia pakietów zainstalowanych ręcznie lecz jedynie te zainstalowane automatycznie. Aby usunąć nieużywane obecnie pakiety zainstalowane automatycznie proszę wykonać:

    # apt-get autoremove
    

    Do znalezienia zbędnych pakietów można również użyć programów deborphan, debfoster lub cruft. Nie należy usuwać wszystkich proponowanych przez to narzędzie pakietów bez zastanowienia (szczególnie, jeśli skorzysta się z agresywnych opcji, które nie są domyślne, a są podatne na nieprawidłowe wskazania). Powinno się osobiście przejrzeć pakiety sugerowane do usunięcia (ich zawartość, rozmiar i opis) przed ostateczną decyzją.

  • Usunąć pakiety zajmujące zbyt dużo miejsca, które nie są obecnie potrzebne (można je zawsze doinstalować po aktualizacji). Jeśli zainstalowano pakiet popularity-contest to do wyświetlenia listy nieużywanych pakietów zajmujących najwięcej miejsca można posłużyć się poleceniem popcon-largest-unused. Największe pakiety można znaleźć poleceniem dpigs (z pakietu debian-goodies) lub programem wajig (poleceniem wajig size). Można użyć także programu aptitude. W tym celu proszę uruchomić aptitude w trybie wizualnym, wybrać WidokiNowy płaski widok pakietów, wcisnąć l, wpisać ~i, następnie wcisnąć S i wpisać ~installsize. W ten sposób można otrzymać zwięzłą listę do dalszych działań.

  • Usunąć niepotrzebne tłumaczenia i pliki lokalizacji. Można zainstalować pakiet localepurge i skonfigurować go tak, aby zachował w systemie jedynie potrzebne tłumaczenia. Zredukuje to przestrzeń zajętą przez katalog /usr/share/locale.

  • Tymczasowo przenieść na inny system lub usunąć całkowicie dzienniki systemowe z katalogu /var/log/.

  • Użyć tymczasowego /var/cache/apt/archives; można użyć tymczasowego katalogu bufora z innego systemu plików (urządzenia USB, przenośnego dysku, używanego systemu plików, ...)

    [Uwaga]Uwaga

    Proszę nie używać montowań NFS, ponieważ połączenie sieciowe może zostać przerwane przy aktualizacji.

    Na przykład, jeśli napęd USB jest zamontowany w /media/usbkey:

    1. usunięcie poprzednio pobranych pakietów do instalacji:

      # apt-get clean

    2. skopiowanie katalogu /var/cache/apt/archives na napęd USB:

      # cp -ax /var/cache/apt/archives /media/usbkey/

    3. zamontowanie tymczasowego bufora w obecnym:

      # mount --bind /media/usbkey/archives /var/cache/apt/archives

    4. przywrócenie pierwotnego katalogu /var/cache/apt/archives po aktualizacji:

      # umount /media/usbkey/archives

    5. usunięcie pozostałego /media/usbkey/archives.

    Tymczasowy bufor można utworzyć w dowolnym systemie plików zamontowanym w systemie.

  • Wykonanie minimalnej aktualizacji (opisanej w Sekcja 4.4.4, „Minimalna aktualizacja systemu”) lub częściowych aktualizacji systemu przed pełną aktualizacją. Umożliwi to częściową aktualizację systemu i pozwoli na wyczyszczenie bufora pakietów przed pełną aktualizacją.

Proszę zwrócić uwagę, że w celu bezpiecznego usunięcia pakietów zaleca się przełączenie swojego pliku sources.list z powrotem na wydanie wheezy zgodnie z opisem w Sekcja A.2, „Sprawdzenie listy źródeł”.

4.4.4. Minimalna aktualizacja systemu

W niektórych przypadkach bezpośrednie wykonanie pełnej aktualizacji (opisanej poniżej) może usunąć wiele pakietów które mają być zachowane. Z tego powodu zaleca się wykonanie dwustopniowej aktualizacji. Najpierw minimalnej, pozwalającej uporać się z tymi konfliktami, a następnie pełnej, zgodnie z opisem w Sekcja 4.4.5, „Aktualizacja systemu”.

Aby to zrobić, proszę wykonać

# apt-get upgrade
[Uwaga]Uwaga

Proces aktualizacji innych wydań zalecał używanie programu aptitude do aktualizacji. To narzędzie nie jest zalecane do aktualizacji z wydania wheezy do jessie.

W ten sposób zaktualizowane zostaną pakiety, które nie wymagają usunięcia lub instalacji innych pakietów.

Minimalna aktualizacja systemu może okazać się przydatna również w systemach z niewielką ilością wolnego miejsca, na których pełna aktualizacja nie może być wykonana z tego powodu.

Jeśli zainstalowano pakiet apt-listchanges to (w domyślnej konfiguracji) wyświetli on ważne informacje o aktualizowanych pakietach w programie stronicującym. Po zapoznaniu się z ich treścią należy wcisnąć q aby kontynuować aktualizację.

4.4.5. Aktualizacja systemu

Po wykonaniu poprzednich kroków, nadszedł czas na główną część aktualizacji. Proszę wykonać

# apt-get dist-upgrade
[Uwaga]Uwaga

Proces aktualizacji innych wydań zalecał używanie programu aptitude do aktualizacji. To narzędzie nie jest zalecane do aktualizacji z wydania wheezy do jessie.

Przeprowadzona zostanie w ten sposób pełna aktualizacja systemu, instalacja najnowszych dostępnych wersji wszystkich pakietów i rozwiązanie wszystkich możliwych zmian zależności pakietów w innych wydaniach. Jeśli jest to konieczne zainstalowane zostaną nowe pakiety (najczęściej nowe wersje bibliotek lub pakiety o nowych nazwach) i usunięte wszystkie niepotrzebne pakiety powodujące konflikty.

Przy aktualizacji z zestawu CD-ROM-ów (lub płyt DVD), użytkownik będzie proszony o włożenie określonej płyty w wielu miejscach aktualizacji. Z powodu zależności między pakietami rozproszonymi na poszczególnych nośnikach konieczne może okazać się wielokrotne wkładanie tej samej płyty.

Nowe wersje zainstalowanych pakietów, które nie mogą być zainstalowane bez zmiany statusu innego pakietu zostaną pozostawione w bieżącej wersji (wyświetlone jako zatrzymane). Można to rozwiązać za pomocą aptitude, wybierając te pakiety do instalacji; można też spróbować wykonać apt-get install pakiet.

4.5. Możliwe problemy przy aktualizacji

Poniższe sekcje opisują znane problemy, które mogą pojawić się przy aktualizacji do wydania jessie.

4.5.1. Podczas aktualizacji dystrybucji pojawia się błąd Nie udało się wykonać natychmiastowej konfiguracji.

W niektórych przypadkach polecenie apt-get dist-upgrade po pobraniu pakietów może wypisać następujący błąd:

E: Nie udało się wykonać natychmiastowej konfiguracji "pakietu". Proszę wykonać "man 5 apt.conf" i zapoznać się z wpisem APT::Immediate-Configure aby dowiedzieć się więcej.

W takim wypadku, polecenie apt-get dist-upgrade -o APT::Immediate-Configure=0 powinno pozwolić przeprowadzić aktualizację pomyślnie.

Innym wyjściem pozwalającym obejść problem jest tymczasowe dodanie do pliku sources.list źródeł wydań wheezy i jessie, a następnie uruchomienie apt-get update.

4.5.2. Spodziewane usunięcia pakietów

Proces aktualizacji do wydania jessie może prosić o usunięcie pewnych pakietów. Dokładna lista będzie zależała od obecnie zainstalowanych pakietów. Niniejsze uwagi do wydania dają ogólny obraz tego zabiegu. W razie wątpliwości przed kontynuowaniem należy sprawdzić kasowanie proponowane przez każdą z metod. Więcej informacji o pakietach przestarzałych w jessie znajduje się w Sekcja 4.10, „Przestarzałe pakiety”.

4.5.3. Konflikty lub pętle wymaga wstępnie

Czasami potrzebne jest włączenie opcji APT::Force-LoopBreak w APT, aby móc tymczasowo usunąć pakiet istotny z powodu pętli konfliktów/zależności wstępnych. Polecenie apt-get wyświetli o tym ostrzeżenie i przerwie aktualizację. Można obejść problem podając opcję -o APT::Force-LoopBreak=1 w wierszu polecenia apt-get.

Istnieje możliwość, że struktura zależności systemowych będzie na tyle naruszona, że konieczna będzie ręczna interwencja. Zwykle oznacza to użycie polecenia apt-get lub

# dpkg --remove nazwa-pakietu

aby wyeliminować część przeszkadzających pakietów lub

# apt-get -f install
# dpkg --configure --pending

W sytuacjach ekstremalnych konieczne może być wymuszenie reinstalacji za pomocą polecenia

# dpkg --install /ścieżka/do/nazwy-pakietu.deb

4.5.4. Konflikty plików

Konflikty plików nie powinny wystąpić przy aktualizacji z czystego wydania wheezy, lecz mogą się pojawić przy zainstalowanych nieoficjalnych backportach. Konflikty plików objawiają się komunikatami błędów, podobnymi do poniższego:

Rozpakowywanie <pakiet-foo> (z <plik-pakietu-foo>) ...
dpkg: błąd przetwarzania <pakiet-foo> (--install):
 próba nadpisania "<jakiś-plik>",
 który istnieje także w pakiecie <pakiet-bar>
dpkg-deb: podproces wklej zabity przez sygnał (Przerwany potok)
 Wystąpiły błędy podczas przetwarzania:
 <pakiet-foo>

Można spróbować rozwiązać konflikt plików przez wymuszenie usunięcia pakietu wymienionego w ostatnim wierszu komunikatu błędu:

# dpkg -r --force-depends nazwa-pakietu

Po zakończeniu naprawy powinno się dać wznowić aktualizację, ponawiając poprzednio wymienione polecenia apt-get.

4.5.5. Zmiany konfiguracji

Podczas aktualizacji zostaną wyświetlone pytania dotyczące konfiguracji lub ponownej konfiguracji kilku pakietów. Gdy pytanie będzie dotyczyło tego czy plik w katalogu /etc/init.d lub plik /etc/manpath.config ma zostać zastąpiony wersją opiekuna pakietu to odpowiedź powinna z reguły brzmieć tak (aby zapewnić spójność systemu). Zawsze można cofnąć się do starszej wersji, ponieważ są one zapisywane z rozszerzeniem .dpkg-old.

W razie wątpliwości, proszę zapisać nazwę pakietu lub pliku i zdecydować o tym później. Można przeszukać plik z zapisem sesji, aby znaleźć informację wyświetloną na ekranie przy aktualizacji.

4.5.6. Zmiany sesji na konsoli

Jeśli aktualizacja jest wykonywana z lokalnej konsoli systemowej, w którymś momencie aktualizacji może zdarzyć się, że konsola zostanie przesunięta na inny widok i straci się obraz procesu aktualizacji. Prawdopodobieństwo takiego zdarzenia istnieje np. podczas korzystania z interfejsu graficznego, gdy restartowany jest menedżer logowania.

Aby odzyskać konsolę, na której trwa aktualizacja, należy wcisnąć Ctrl+Alt+F1, aby przełączyć się z powrotem na terminal wirtualny 1 z graficznego ekranu powitalnego lub Alt+F1 z trybu lokalnej konsoli tekstowej. Proszę zastąpić F1 klawiszem funkcyjnym o tym samym numerze co terminal wirtualny, na którym trwa aktualizacja. Można również skorzystać ze kombinacji Alt+strzałka w lewo lub Alt+strzałka w prawo aby przenosić się na kolejne terminale tekstowe.

4.5.7. Pakiety specjalnej troski

Pakiety powinny się zwykle aktualizować bez problemów, z wydania wheezy do jessie. Jest jednak kilka przypadków, gdzie może okazać się potrzebna interwencja albo przed, albo w trakcie aktualizacji. Szczegółowa rozpiska dla poszczególnych pakietów znajduje się poniżej.

4.5.7.1. systemd

Aktualizacja Debiana z wydania wheezy do jessie domyślnie zmieni domyślny system init z SysV na systemd. W zależności od systemu i ustawień użytkownika może zajść potrzeba dokonania pewnych zmian ręcznie. Szczegółowy opis znanych problemów znajduje się w Sekcja 5.6, „Aktualizacja instaluje nowy domyślny system init wydania Jessie”.

4.5.7.2. LXC

W przypadku zainstalowanego LXC przy aktualizacji systemu i kontenerów należy zachować szczególną ostrożność. Potencjalne problemy i ich rozwiązania opisano w Sekcja 5.8, „Zastrzeżenia przy aktualizacji gospodarzy i kontenerów LXC”.

4.6. Aktualizacja jądra i powiązanych pakietów

Niniejszy rozdział opisuje sposób aktualizacji jądra i identyfikacji potencjalnych problemów który mogą się pojawić. Można zainstalować jeden z pakietów linux-image-* udostępnionych przez Debiana lub skompilować dostosowany do swoich potrzeb.

Proszę zauważyć, że wiele poniższych informacji zakłada, że używa się jednego z modularnych jąder Debiana razem z initramfs-tools i udev. Jeśli korzysta się z własnego, dostosowanego jądra, które nie wymaga initrd lub wykorzystuje się inny program tworzący initrd to część informacji będzie nieprzydatna.

4.6.1. Instalowanie metapakietu jądra

Przy aktualizowaniu dystrybucji z wydania wheezy do jessie zaleca się zainstalowanie metapakietu linux-image-*, jeśli nie dokonano tego wcześniej. Te metapakiety będą zainstalowane automatycznie w nowszych wersjach jądra przy dokonywaniu aktualizacji. To, czy są zainstalowane, można sprawdzić za pomocą:

# dpkg -l "linux-image*" | grep ^ii | grep -i meta

Jeśli nie zostanie wypisany żaden wynik potrzeba będzie albo zainstalować ręcznie nowy pakiet linux-image lub zainstalować metapakiet linux-image. Aby zobaczyć listę dostępnych metapakietów linux-image, proszę wykonać:

# apt-cache search linux-image- | grep -i meta | grep -v transition

W razie wątpliwości co do wyboru pakietu proszę uruchomić uname -r i znaleźć pakiet o podobnej nazwie. Na przykład jeśli widać 2.6.32-5-amd64, to zaleca się zainstalowanie linux-image-amd64. Można również użyć apt-cache, aby zobaczyć długi opis każdego pakietu, pomocny do wyboru najlepszego z nich. Na przykład:

# apt-cache show linux-image-amd64

Powinno się następnie uruchomić apt-get install, aby go zainstalować. Po zainstalowaniu nowego jądra należy uruchomić system ponownie przy możliwie najbliższej okazji, aby zyskać zalety nowego jądra. Przed wykonaniem pierwszego ponownego uruchomienia proszę zapoznać się z Sekcja 4.7, „Sprawy do zrobienia przed ponownym uruchomieniem”.

Dla bardziej doświadczonych użytkowników istnieje łatwy sposób skompilowania swojego, dostosowanego jądra w systemie Debian. Proszę zainstalować źródła jądra zawarte w pakiecie linux-source. Do zbudowania pakietu binarnego można wykorzystać deb-pkg, dostępne w źródłach makefile. Więcej informacji można znaleźć na stronie Debian Linux Kernel Handbook, dostępnej również jako pakiet debian-kernel-handbook (w języku angielskim).

Jeśli to możliwe, to osobna aktualizacja pakietu jądra od głównego dist-upgrade jest dobrym rozwiązaniem - redukuje szanse na otrzymanie tymczasowo pozbawionego możliwości rozruchu systemu. Należy to zrobić wyłącznie po aktualizacji minimalnej, opisanej w Sekcja 4.4.4, „Minimalna aktualizacja systemu”.

4.6.2. Zmiany w montowaniu i sprawdzaniu systemu plików /usr

Obecnie, initramfs-tools będzie sprawdzało również główny system plików przed zamontowaniem go, za pomocą fsck. Jeśli wybrano systemd jako swój system init oraz istnieje oddzielny system plików /usr, sprawdzany i montowany będzie również /usr.

  • Jeśli /usr jest oddzielnym systemem plików na urządzeniu RAID, a ustawienie INITRDSTART w /etc/default/mdadm nie ma wartości "all", konieczna będzie jego zmiana, aby objąć również to urządzenie.

  • Jeśli /usr jest oddzielnym system plików na woluminie logicznym LVM, a wiersz /usr w /etc/fstab określa urządzenie przez UUID lub LABEL, konieczna jest jego zmiana i zapis w formacie /dev/mapper/VG-LV lub /dev/VG/LV.

  • Nie jest obecnie możliwe montowanie za pomocą podpięcia ("bind") systemu plików /usr.

  • Jeśli RTC (zegar czasu rzeczywistego) jest ustawiony na czas lokalny i wyprzedza on UTC, e2fsck wypisze ostrzeżenie w trakcie rozruchu o zmianie czasu do tyłu (błąd #767040). Można to wyłączyć za pomocą następujących wierszy w /etc/e2fsck.conf:

    [options]
    broken_system_clock=1
    

4.7. Sprawy do zrobienia przed ponownym uruchomieniem

Po zakończeniu apt-get dist-upgrade formalna aktualizacja jest zakończona, lecz są pewne rzeczy do sprawdzenia przed ponownym uruchomieniem.

  • Przy aktualizacji z wydania Wheezy do Jessie dobrym pomysłem może być wyczyszczenie starych pakietów przed pierwszym ponownym uruchomieniem. W szczególności problemy mogą sprawiać stare skrypty init. Proszę zapoznać się z Sekcja 4.8.1, „Czyszczenie usuniętych pakietów” aby dowiedzieć się więcej o znajdowaniu i czyszczeniu usuniętych pakietów.

4.8. Przygotowanie do kolejnego wydania

Po aktualizacji jest kilka rzeczy, które można zrobić w celu przygotowania do następnego wydania.

4.8.1. Czyszczenie usuniętych pakietów

Ogólnym zaleceniem jest czyszczenie usuniętych pakietów. Ma to szczególny sens, jeśli pakiety zostały usunięte we wcześniejszej aktualizacji wydania (np. przy aktualizacji do wheezy) lub pochodzą od zewnętrznych dostawców. W szczególności znane są problemy ze starymi skryptami init.d.

[Ostrzeżenie]Ostrzeżenie

Wyczyszczenie pakietu zazwyczaj usuwa również jego pliki dziennika, dlatego można rozważyć uprzednie wykonanie ich kopii zapasowej.

Poniższe polecenie wyświetla listę wszystkich usuniętych pakietów z pozostawionymi w systemie plikami konfiguracyjnymi:

# dpkg -l | awk '/^rc/ { print $2 }'

Pakiety można wyczyścić poleceniem apt-get purge. Aby wyczyścić od razu wszystkie, można skorzystać z następującego polecenia:

# apt-get purge $(dpkg -l | awk '/^rc/ { print $2 }')

Jeśli korzysta się z programu aptitude, można rozważyć użycie następującego odpowiednika powyższych poleceń:

$ aptitude search '~c'
$ aptitude purge '~c'

4.9. Przestarzałe składniki

Od następnego wydania systemu Debian 9 (nazwa kodowa stretch) część funkcji zostanie porzucona. Użytkownicy powinni przejść na rozwiązania alternatywne, aby uniknąć problemów przy aktualizacji do 9.

Dotyczy do między innymi:

  • Pakiet hardening-wrapper jest przestarzały i będzie prawdopodobnie usunięty w wydaniu Stretch.

4.10. Przestarzałe pakiety

Wprowadzając wiele nowych pakietów, jessie porzuca i pomija również sporo starych pakietów z wydania wheezy. Nie ma dla nich ścieżki aktualizacji. Choć nic nie stoi na przeszkodzie, aby w razie potrzeby używać takich pakietów to projekt Debian kończy wsparcie bezpieczeństwa po roku od wydania jessie[5] i nie dostarczy innego wsparcie w międzyczasie. Zaleca się zastąpienie ich dostępnymi alternatywami jeśli takie istnieją.

Jest wiele powodów, dla których pakiet mógł zostać usunięty z dystrybucji: nie jest dłużej utrzymywany przez projekt macierzysty, nie ma chętnego Dewelopera Debiana, który byłby zainteresowany opiekowaniem się pakietem, funkcja którą pełnił została przejęta przez inne programy (lub nowszą wersję), nie jest dłużej uważany za odpowiedni dla wydania jessie ze względu na poważne błędy. W tym ostatnim przypadku pakiet może być wciąż obecny w dystrybucji niestabilnej.

Znalezienie pakietów przestarzałych w zaktualizowanym systemie jest łatwe ponieważ interfejsy zarządzania pakietami oznaczają je odpowiednio. W aptitude znajdują się one w sekcji Pakiety przestarzałe i lokalne.

System śledzenia błędów Debiana często udostępnia dodatkowe informacje nt. powodów usunięcia danego pakietu. Należy przejrzeć zarówno archiwalne zgłoszenia błędów samego pakietu jak i archiwalne zgłoszenia pseudopakietu ftp.debian.org.

Lista przestarzałych pakietów obejmuje:

  • postgresql-9.1, zastąpiony przez postgresql-9.4. Po ukończeniu aktualizacji systemu powinno się zaplanować aktualizację swoich baz danych PostgreSQL 9.1 do nowej wersji 9.4 za pomocą narzędzia pg_upgradecluster. Użytkownikom języka proceduralnego PL/perl wydanie Jessie zapewnia zaktualizowany pakiet postgresql-plperl-9.1 zlinkowany z wersją biblioteki libperl z Jessie, aby umożliwić aktualizację do nowej wersji perla w Jessie przy zachowaniu działających starych funkcji bazy danych PL/perl aż do momentu zaktualizowania samej bazy.

  • python3.2, zastąpiony przez python3.4 (wersja 2.7 jest wspierana w wheezy i jessie).

  • ruby1.8 i ruby1.9.1; zastąpione przez ruby2.1. Proszę zainstalować pakiet ruby aby automatycznie śledzić bieżącą wersję ruby.

  • mplayer; można go zastąpić pakietem mplayer2 lub mpv (nowość w jessie). Stary pakiet był najbardziej kompatybilny gdy idzie o argumenty wiersza poleceń i konfigurację (dodając przy tym kilka nowych funkcji), natomiast nowszy dodaje wiele nowych funkcji i usprawnień i jest aktywnie rozwijany przez swój projekt macierzysty.

  • openoffice.org; proszę przejść na libreoffice.

  • squid, zastąpiony przez squid3.

  • libjpeg-progs, zastąpiony przez libjpeg-turbo-progs.

  • openjdk-6-*, zastąpiony przez openjdk-7-*.

4.10.1. Pakiety atrapy

Część pakietów z wydania wheezy w jessie została podzielona na kilka pakietów, często w celu ułatwienia zarządzania systemem. Aby ułatwić ścieżkę aktualizacji jessie często udostępnia pakiety atrapy: puste pakiety o tej samej nazwie co stary pakiet w wydaniu wheezy, z zależnościami, które spowodują instalację nowych pakietów. Te pakiety atrapy stają się niepotrzebne po aktualizacji i mogą zostać usunięte.

Większość (choć nie wszystkie) opisów pakietów atrap wskazuje ich przeznaczenie. Opisy pakietów nie są jednak ustandaryzowane, można skorzystać więc z deborphan z opcjami --guess-* (np. --guess-dummy), aby je odszukać. Proszę zwrócić uwagę, że część pakietów atrap nie jest przeznaczona do usunięcia po aktualizacji, lecz są używane do śledzenia obecnie dostępnych wersji danego pakietu.



[1] Jeśli priorytet debconfa jest ustawiony na bardzo wysoką wartość to może spowodować niewyświetlanie pytań konfiguracyjnych. Usługi zależne od domyślnych odpowiedzi, które nie będą pasowały do danego systemu, nie uruchomią się.

[2] Przykład: usługi DNS i DHCP, szczególnie jeśli nie ma redundancji lub tzw. failover. W przypadku DHCP użytkownicy mogą zostać odłączeni z sieci, jeśli czas dzierżawy jest mniejszy niż czas trwania aktualizacji.

[3] Można wyłączyć tę funkcję dodając parametr panic=0 do parametrów rozruchowych.

[4] System zarządzania pakietami Debiana nie pozwala zwykle na usunięcie lub zastąpienie pliku będącego własnością innego pakietu, chyba że pakiet został zdefiniowany jako zastępujący dany pakiet.

[5] Lub tak długo, aż nie pojawi się nowe wydanie w tym czasie. Zwykle jedynie dwa wydania stabilne są wspierane w dowolnym czasie.