Opdater alle installererede programmer nu
Source: Download script
Last Updated: 4. December 2024 by Agnete Moos (agms@sonderborg.dk)
Click to see the source code
#!/usr/bin/env bash
# SYNOPSIS
# update_all.sh
#
# DESCRIPTION
# This script updates all apt repositories and then applies all available
# upgrades, picking default values for all debconf questions. It takes no
# parameters.
# Snap packages are already updated automatically by default in Ubuntu.
#
# IMPLEMENTATION
# copyright Copyright 2022, Magenta ApS
# license GNU General Public License
set -ex
# Fix dpkg settings to avoid interactivity.
if ! grep --quiet "Dpkg::Lock" /etc/apt/apt.conf.d/local; then
cat <<- EOF > /etc/apt/apt.conf.d/local
Dpkg::Options {
"--force-confdef";
"--force-confold";
};
Dpkg::Lock {Timeout "300";};
EOF
fi
# Stop Debconf from doing anything
export DEBIAN_FRONTEND=noninteractive
# Update apt packages
apt-get update > /dev/null # Resync the local package index from its remote counterpart
# Configure any packages which have been unpacked but not configured, as otherwise --fix-broken might fail
# However, package configuration can also fail due to dependency issues that would be fixed by --fix-broken
# so if the command fails, try to run --fix-broken
dpkg --configure -a || apt-get --assume-yes --fix-broken install
# Attempt to fix broken or interrupted installations
# If this fails, try to configure any packages which have been unpacked but not configured
apt-get --assume-yes --fix-broken install || dpkg --configure -a
apt-get --assume-yes dist-upgrade # Upgrade all packages, and if needed remove packages preventing an upgrade
apt-get --assume-yes autoremove # Remove packages only installed as dependencies which are no longer dependencies
apt-get --assume-yes clean # Remove local repository of retrieved package files
Beskrivelse
Dettte script opdaterer alle pakker på systemet “her og nu”.
Så det anbefales at køre dette script hvis en opdatering ude på maskinen er gået galt, eller hvis man kun har sat automatiske sikkerhedsopdateringer til.
Da scriptet involverer overførsel af meget data kan det i nogle situationer godt fejle, hvis der i opdateringsperioden opstår netværksproblemer lokalt eller hos de servere, der opdateres fra. Oplever du fejl, kan det derfor godt anbefales at prøve at køre scriptet én gang til.
Dette script er blevet testet og virker på Ubuntu 22.04.