hardware:jednodeskove-pocitace:espressobin:upgrade-debian-9-na-10-buster

Espressobin: upgrade z Debian 9 na Debian 10 Buster

Vytvořeno: 10.4.2020

Poznámka k aktuálnosti: Toto je dobový článek. Postup odpovídá přechodu ze Stretch na Buster a dnes už slouží spíš jako dokumentační zápisek k upgrade routeru než jako aktuální doporučení.

Když se blížil konec podpory Debianu 9 Stretch, řešil jsem na Espressobinu přechod na Debian 10 Buster. Protože šlo o router, dělal jsem upgrade opatrně a s rezervou času. Samotný přechod proběhl bez velkých komplikací, ale po restartu jsem musel dořešit automatický start dnsmasq.

Nejdřív dává smysl dostat Debian 9 do posledního konzistentního stavu:

sudo apt update
sudo apt upgrade
sudo apt full-upgrade
sudo apt --purge autoremove

Potom je vhodné systém restartovat a ověřit, že všechno ještě funguje.

Před změnou jsem si pro jistotu udělal zálohu sources.list i sources.list.d:

sudo cp -v /etc/apt/sources.list /root/
sudo cp -rv /etc/apt/sources.list.d/ /root/

Pak už šlo přepsat stretch na buster:

sudo sed -i 's/stretch/buster/g' /etc/apt/sources.list
sudo sed -i 's/stretch/buster/g' /etc/apt/sources.list.d/*
cat /etc/apt/sources.list

Na původním systému zdroje vypadaly zhruba takto:

deb http://httpredir.debian.org/debian stretch main contrib non-free
deb http://httpredir.debian.org/debian stretch-updates main contrib non-free
deb http://httpredir.debian.org/debian stretch-backports main contrib non-free
deb http://security.debian.org/ stretch/updates main contrib non-free

Po úpravě zdrojů následovalo načtení balíčků a nejprve menší upgrade:

sudo apt update
sudo apt upgrade

Při tomto kroku jsem si dával pozor na dotazy kolem konfiguračních souborů, aby si systém nepřepsal lokální nastavení služeb.

Hlavní přechod na Buster:

sudo apt full-upgrade

Po restartu jsem si ověřil verzi systému a uklidil staré balíčky:

uname -r
lsb_release -a
sudo apt --purge autoremove

Po restartu se ukázalo, že DHCP server dnsmasq nenaběhne automaticky. Ruční start sice fungoval:

systemctl start dnsmasq

Ale v logu byla chyba s portem 53:

dnsmasq: failed to create listening socket for port 53: Address already in use

První část řešení byla v /etc/systemd/resolved.conf, kde bylo potřeba nastavit:

DNSStubListener=no

Jenže tím problém úplně nezmizel. Druhou příčinou byl parametr bind-interfaces v /etc/dnsmasq.conf. Při bootu zřejmě ještě nebyla síť připravená a démon kvůli tomu spadl. Pomohlo řádek zakomentovat.

Výsledná konfigurace vypadala takto:

interface=br0
listen-address=172.24.1.1
#bind-interfaces
server=8.8.8.8
domain-needed
bogus-priv
dhcp-range=172.24.1.50,172.24.1.150,12h
  • hardware/jednodeskove-pocitace/espressobin/upgrade-debian-9-na-10-buster.txt
  • Poslední úprava: 23.04.2026 11:48
  • autor: Petr Nosek