Benutzer-Werkzeuge

Webseiten-Werkzeuge


apt

Apt

APT Einstellungen

Im folgenden werden backports die gleiche Priorität wie den jeweiligen dazugehörigen Repositories zugewiesen (Priorität 500, ist standardmäßig 100), um relativ sicher neuere Paketversionen zur Verfügung zu haben. Allerdings ist dies nicht immer erwünscht, da backports nicht im gleichen Maße getestet werden wie die regulären Repositories.

  • automatisch aus stable installieren (Priorität 500)
  • niemals automatisch aus testing installieren (Priorität -1)
  • niemals automatisch aus unstable installieren (Priorität -1)
/etc/apt/preferences.d/debian.pref
# stable
Package: *
Pin: release n=trixie, o=Debian
Pin-Priority: 500
 
Package: *
Pin: release n=trixie-security, o=Debian
Pin-Priority: 500
 
Package: *
Pin: release n=trixie-updates, o=Debian
Pin-Priority: 500
 
# stable-backports
Package: *
Pin: release n=trixie-backports, o=Debian Backports
Pin-Priority: 500
 
# stable-backports: kernel
Package: linux-headers-* linux-image-*
Pin: release n=trixie-backports, o=Debian Backports
Pin-Priority: 100
 
# testing
Package: *
Pin: release n=forky, o=Debian
Pin-Priority: -1
 
Package: *
Pin: release n=forky-security, o=Debian
Pin-Priority: -1
 
Package: *
Pin: release n=forky-updates, o=Debian
Pin-Priority: -1
 
# testing-backports
Package: *
Pin: release n=forky-backports, o=Debian Backports
Pin-Priority: -1
 
# unstable
Package: *
Pin: release n=sid, o=Debian
Pin-Priority: -1

APT Quellen

  • seit debian 13 ist das deb822 format standard (siehe man deb822), die standard datei für apt quellen ist nun /etc/apt/sources.list.d/debian.sources
    • die alte datei /etc/apt/sources.list sollte gelöscht werden um konflikte zu vermeiden
  • seit debian 12 gibt es die neue komponente non-free-firmware, sie wurde von non-free abgespalten und enthält nicht freie firmware pakete
    • dadurch wird folgende konfiguration erleichtert: Components: main non-free-firmware (möglichst wenig non-free pakete, aber gleichzeitig kritische firmware pakete)
/etc/apt/sources.list.d/debian.sources
# stable
Enabled: yes
Types: deb
URIs: https://deb.debian.org/debian
Suites: trixie trixie-updates trixie-backports
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
 
Enabled: yes
Types: deb
URIs: https://deb.debian.org/debian-security
Suites: trixie-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
 
# testing
Enabled: no
Types: deb
URIs: https://deb.debian.org/debian
Suites: forky forky-updates forky-backports
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
 
Enabled: no
Types: deb
URIs: https://deb.debian.org/debian-security
Suites: forky-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
 
# unstable
Enabled: no
Types: deb
URIs: https://deb.debian.org/debian
Suites: sid
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

falls der debian archiv keyring nicht aktuell oder kaputt ist:

# debian archive keyring installieren
apt upgrade debian-archive-keyring
 
# alternative: debian archive keyring neuinstallieren und dabei originale keys wiederherstellen (z.b. falls ausversehen gelöscht/verändert)
apt reinstall -o Dpkg::Options::="--force-confmiss,confnew" debian-archive-keyring

Upgrade

tags für suche: apt-get, apt, aptitude, update, upgrade, dist-upgrade, full-upgrade, autoremove

Skript

Dieses Skript in den PATH legen (z.B. /usr/local/sbin/upgrade.sh oder /root/.local/bin/upgrade.sh) und dann als root mit upgrade.sh aufrufen

upgrade.sh
#!/bin/bash
 
#------------------------------------------------------------------------------#
#
# totsicheres Update
# es sollte alle gängigen Probleme, durch mehrmahligen Aufruf, beheben
#
#------------------------------------------------------------------------------#
 
time (
#apt -y purge plymouth
locale-gen ;
rm -fr /var/lib/apt/lists/partial/* ;
apt-get -y autoclean ;
apt-get -y autoremove ;
apt -y autoclean ;
apt -y autoremove ;
dpkg --configure -a ;
apt-get -y dist-upgrade ;
apt-get -y autoclean ;
apt-get -y autoremove ;
apt -y autoclean ;
apt -y autoremove ;
 
apt install linux-headers-generic linux-image-generic ;
apt autoremove
apt -y update && apt -y full-upgrade
 
#apt -y install ubuntu-drivers-common alsa-utils
#ubuntu-drivers install
) && echo OK
 
dpkg --configure -a
#ubuntu-drivers devices
#fwupdmgr get-upgrades
 
apt -y purge $(dpkg -l | sed "s/^ic[ ]*//;s/ .*//" | grep -E ^linux-)
apt -y purge $(dpkg -l | sed "s/^rc[ ]*//;s/ .*//" | grep -E ^linux-)
dpkg -l | awk '/linux-/{print $1,$2}'
lsb_release -a
uname -a
cat /var/run/reboot-required

Alternatives Skript

Dieses Skript in den PATH legen (z.B. /usr/local/bin/upgrade.sh oder ~/.local/bin/upgrade.sh) und dann mit upgrade.sh und/oder sudo upgrade.sh aufrufen

upgrade.sh
#!/usr/bin/env bash
 
set -o errexit
set -o nounset
set -o pipefail
shopt -s inherit_errexit
 
if command -v pipx > /dev/null
then
	pipx upgrade-all
	printf "\n"
fi
 
if test "${EUID}" -ne 0
then
	if command -v flatpak > /dev/null
	then
		flatpak update
		printf "\n"
	fi
fi
 
if test "${EUID}" -eq 0
then
	kernel=(linux-headers-generic linux-image-generic)
	if apt-cache show raspberrypi-bootloader > /dev/null 2>&1
	then
		kernel=(raspberrypi-bootloader raspberrypi-kernel raspberrypi-kernel-headers)
	fi
 
	time {
		locale-gen &&
		dpkg --configure -a &&
		apt-get update &&
		apt-get autoclean &&
		apt-get autoremove &&
		apt-get install "${kernel[@]}" &&
		apt-get dist-upgrade &&
		apt-get autoremove &&
		dpkg --configure -a
	}
 
	exit_code="${?}"
 
	if test -e /run/reboot-required || test -e /run/reboot-required.pkgs
	then
		reboot_required=" -> REBOOT REQUIRED"
	fi
 
	if test "${exit_code}" -eq 0
	then
		printf "\nUPDATE SUCCEEDED%s\n" "${reboot_required:-}"
	else
		printf "\nUPDATE FAILED%s\n" "${reboot_required:-}"
	fi
 
	exit "${exit_code}"
fi
/home/http/wiki/data/pages/apt.txt · Zuletzt geändert: von david