Product SiteDocumentation Site

6.6. Uaktualnienie z Jednej Stabilnej Dystrybucji do Następnej

Jedna z najbardziej rozpoznawalnych funkcji Debiana jest jego zdolność uaktualniania całego systemu z jednego stabilnego wydania do następnego: dist-upgrade — dobrze znana fraza — znacznie przyczyniła się do reputacji projektu. Przy zachowaniu odpowiedniej troski, uaktualnienie może zająć zaledwie kilka minut lub kilkanaście minut, zależnie od prędkości pobierania z repozytoriów pakietów.

6.6.1. Zalecana Procedura

W związku z tym, że Debian ma sporo czasu do ewolucji pomiędzy stabilnymi wydaniami, przed uaktualnieniem należy przeczytać informacje o wydaniu.
In this section, we will focus on upgrading a Jessie system to Stretch. This is a major operation on a system; as such, it is never 100% risk-free, and should not be attempted before all important data has been backed up.
Kolejnym dobrym zwyczajem ułatwiającym uaktualnienie (i skracającym je) jest porządkowanie zainstalowanych pakietów i zachowywanie tylko tych, które są naprawdę wymagane. Pomocnymi narzędziami do tego celu mogą być aptitude, deborphan i debfoster (spójrz na fiszkę Sekcja 6.2.7, „Śledzenie Automatycznie Zainstalowanych Pakietów”). Na przykład można użyć jednej ze wspomnianych komend, a następnie użyć trybu interaktywnego aptitude w celu sprawdzenia i dopracowania zaplanowanych usunięć:
# deborphan | xargs aptitude --schedule-only remove
Now for the upgrading itself. First, you need to change the /etc/apt/sources.list file to tell APT to get its packages from Stretch instead of Jessie. If the file only contains references to Stable rather than explicit codenames, the change isn't even required, since Stable always refers to the latest released version of Debian. In both cases, the database of available packages must be refreshed (with the apt update command or the refresh button in synaptic).
Once these new package sources are registered, you should first do a minimal upgrade with apt upgrade. By doing the upgrade in two steps, we ease the job of the package management tools and often ensure that we have the latest versions of those, which might have accumulated bugfixes and improvements required to complete the full distribution upgrade.
Once this first upgrade is done, it is time to handle the upgrade itself, either with apt full-upgrade, aptitude, or synaptic. You should carefully check the suggested actions before applying them: you might want to add suggested packages or deselect packages which are only recommended and known not to be useful. In any case, the front-end should come up with a scenario ending in a coherent and up-to-date Stretch system. Then, all you need is to do is wait while the required packages are downloaded, answer the Debconf questions and possibly those about locally modified configuration files, and sit back while APT does its magic.

6.6.2. Obsługa Problemów po Uaktualnieniu

Wbrew największym wysiłkom opiekunów Debiana, uaktualnienie nie zawsze jest tak bezproblemowe jak można by sobie życzyć. Nowe wersje oprogramowania mogą być niekompatybilne z poprzednimi (na przykład mogło się zmienić ich domyślne zachowanie lub format danych). Pomimo fazy testowania, poprzedzającej każde wydanie Debiana, mogły również przemknąć się jakieś błędy.
W celu przewidzenia niektórych problemów można zainstalować pakiet apt-listchanges, który wyświetla informacje o możliwych problemach na początku procesu uaktualnienia pakietu. Informacja ta jest opracowana przez opiekunów pakietu i umieszczona w plikach /usr/share/doc/pakiet/NEWS.Debian dla pożytku użytkowników. Czytanie tych plików (prawdopodobnie używając apt-listchanges) powinno pomóc w uniknięciu niemiłych niespodzianek.
You might sometimes find that the new version of a software doesn't work at all. This generally happens if the application isn't particularly popular and hasn't been tested enough; a last-minute update can also introduce regressions which are only found after the stable release. In both cases, the first thing to do is to have a look at the bug tracking system at https://bugs.debian.org/package, and check whether the problem has already been reported. If it hasn't, you should report it yourself with reportbug. If it is already known, the bug report and the associated messages are usually an excellent source of information related to the bug:
  • czasami istnieje już łatka i jest dostępna w zgłoszeniu błędu; można wtedy lokalnie przekompilować naprawioną wersję zepsutego pakietu (spójrz na fiszkę Sekcja 15.1, „Rebuilding a Package from its Sources”);
  • w innych przypadkach, użytkownicy znajdują obejścia problemu i dzielą się swoimi spostrzeżeniami w odpowiedziach pod zgłoszeniem;
  • w jeszcze innych przypadkach, naprawiona wersja pakietu mogła zostać już przygotowana i udostępniona przez jego opiekuna.
Depending on the severity of the bug, a new version of the package may be prepared specifically for a new revision of the stable release. When this happens, the fixed package is made available in the proposed-updates section of the Debian mirrors (see Sekcja 6.1.2.3, „Proponowane Aktualizacje”). The corresponding entry can then be temporarily added to the sources.list file, and updated packages can be installed with apt or aptitude.
Sometimes the fixed package isn't available in this section yet because it is pending a validation by the Stable Release Managers. You can verify if that's the case on their web page. Packages listed there aren't available yet, but at least you know that the publication process is ongoing.