MrGeneration

MrGeneration / Debian / Ubuntu Upgrade

Last active 4 months ago

Like 0

This gist provides contextual copy paste options for Distribution upgrades with installed Zammad and PostgreSQL for Debian (10, 11, 12) and Ubuntu (18, 20, 22). Video context to this: https://youtu.be/IXp4VWU27wo

Revision 82ffc23081b69ec9c71c576fa2736596216896b5

1-general-prerequisites-before-upgrade.sh Raw
1systemctl disable zammad --now
2apt-mark hold zammad
3apt update
4apt upgrade
5
6# Do once, new since recent psql CVEs
7apt install curl ca-certificates
8install -d /usr/share/postgresql-common/pgdg
9curl -o /usr/share/postgresql-common/pgdg/apt.postgresql.org.asc --fail https://www.postgresql.org/media/keys/ACCC4CF8.asc
10echo "deb [signed-by=/usr/share/postgresql-common/pgdg/apt.postgresql.org.asc] https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list
11
12# Continue with step 2 or 3 depending on your current state
2-debian-10-to-11-repositories.sh Raw
1sed -i 's/debian-security buster\/updates/ bookworm-security/g' /etc/apt/sources.list
2sed -i 's/buster/bullseye/g' /etc/apt/sources.list
3sed -i 's/buster/bullseye/g' /etc/apt/sources.list.d/pgdg.list
4sed -i 's/debian 10/debian 11/g' /etc/apt/sources.list.d/zammad.list
5
6apt clean; apt update
7apt upgrade
8apt dist-upgrade
9
10# Current stable psql version is 16
11pg_dropcluster --stop 16 main
12pg_upgradecluster 11 main /var/lib/postgresql/16/
13
14# Below two are old (pre recent psql CVE)
15# pg_dropcluster --stop 13 main
16# pg_upgradecluster 11 main /var/lib/postgresql/13/
17
18apt autoremove
19shutdown -r now
2-ubuntu-18-to-20-repositories.sh Raw
1sed -i 's/bionic/focal/g' /etc/apt/sources.listsed -i 's/buster/bullseye/g' /etc/apt/sources.list.d/pgdg.list
2sed -i 's/ubuntu 18/ubuntu 20/g' /etc/apt/sources.list.d/zammad.list
3apt clean; apt update
4apt upgrade
5apt dist-upgrade
6
7pg_dropcluster --stop 13 main
8pg_upgradecluster 11 main /var/lib/postgresql/13/
9
10apt autoremove
11shutdown -r now
3-debian-11-to-12-repositories.sh Raw
1sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list
2sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list.d/pgdg.list
3sed -i 's/debian 11/debian 12/g' /etc/apt/sources.list.d/zammad.list
4apt clean; apt update
5apt upgrade
6apt dist-upgrade
7
8# Below two are no longer relevant if you use psql repo and already upgraded to psql 16
9# pg_dropcluster --stop 13 main
10# pg_upgradecluster 13 main /var/lib/postgresql/15/
11
12apt autoremove
13shutdown -r now
3-ubuntu-20-to-22-repositories.sh Raw
1sed -i 's/focal/jammy/g' /etc/apt/sources.list
2sed -i 's/ubuntu 20/ubuntu 22/g' /etc/apt/sources.list.d/zammad.list
3apt clean; apt update
4apt upgrade
5apt dist-upgrade
6
7pg_dropcluster --stop 13 main
8pg_upgradecluster 13 main /var/lib/postgresql/15/
9
10apt autoremove
11shutdown -r now
4-finish-upgrade.sh Raw
1apt-mark unhold zammad
2systemctl enable zammad
3apt update
4apt install zammad