Include:Upgrading to latest release
When Alpine Linux is installed ins sys mode, e.g. on a hard drive, upgrading to a newer stable version is a straightforward package manager operation.
Repository Settings
First thing is to to edit or check the /etc/apk/repositories file.
Besides doing it manually (see below) this may also be done using one of the following shortcuts.
- Launching the corresponding alpine setup script,
setup-apkrepos
and pressing e to edit /etc/apk/repositories. Then adjusting (changing) the repository lines to the new version number by hand. - Or, use a one-liner command to edit (change) all versions in the file "in place". This is how you'd change v2.5 to v2.6:
sed -i -e 's/v2\.5/v2.6/g' /etc/apk/repositories
- Launching the corresponding alpine setup script,
Note, subsequent manual changes of the version numbers in /etc/apk/repositories may be avoided for following release upgrades, by having the repository lines refer to "latest-stable" instead of an absolute value:
http://dl-3.alpinelinux.org/alpine/latest-stable/main http://dl-3.alpinelinux.org/alpine/latest-stable/community
However, beware of initiating unexpected release upgrades then.
Manual editing of /etc/apk/repositories:
Edit the /etc/apk/repositories file using any editor of your choice (nano for instance) to edit the Alpine Linux package repositories.
Contents of /etc/apk/repositories
In the above file, to upgrade Alpine Linux from version 3.19 to 3.20, simply replace the number 3.19 by 3.20 in all the places, so that the updated repositories file looks like below:
Contents of /etc/apk/repositories
Upgrading packages
Sometimes it is required to first upgrade just the Alpine Linux Package Manager itself to the latest available version, i.e. before upgrading any other package. This was the case, for example, when upgrading from a version of Alpine before 2.3.0_rc1. But always doing so should't hurt, either:
apk add --upgrade apk-tools
Next, to upgrade all installed packages:
apk upgrade --available
The --available
switch is used to force all packages to be upgraded, even if they have the same version numbers. Sometimes changes in uClibc require doing this.
sync reboot