2021-10-09 12:17:52 -04:00
|
|
|
---
|
|
|
|
lang: en
|
|
|
|
layout: doc
|
|
|
|
permalink: /doc/upgrade/4.1/
|
|
|
|
title: How to upgrade to Qubes 4.1
|
|
|
|
---
|
|
|
|
|
2022-08-04 09:56:56 -04:00
|
|
|
This page explains how to upgrade from Qubes 4.0 to Qubes 4.1. There are two
|
|
|
|
ways to upgrade: a clean installation or an in-place upgrade. In general, a
|
|
|
|
clean installation is simpler and less error-prone, but an in-place upgrade
|
|
|
|
allows you to preserve your customizations.
|
2021-10-09 12:17:52 -04:00
|
|
|
|
|
|
|
## Back up
|
|
|
|
|
2021-10-11 19:20:24 -04:00
|
|
|
Before attempting either an in-place upgrade or a clean installation, we
|
|
|
|
strongly recommend that you first [back up your
|
2022-08-04 09:56:56 -04:00
|
|
|
system](/doc/how-to-back-up-restore-and-migrate/) so that you don't lose any
|
|
|
|
data.
|
2021-10-09 12:17:52 -04:00
|
|
|
|
|
|
|
## Clean installation
|
|
|
|
|
2021-10-11 19:20:24 -04:00
|
|
|
If you would prefer to perform a clean installation rather than upgrading
|
|
|
|
in-place:
|
2021-10-09 12:17:52 -04:00
|
|
|
|
2021-10-11 19:20:24 -04:00
|
|
|
1. Create a
|
|
|
|
[backup](/doc/how-to-back-up-restore-and-migrate/#creating-a-backup) of your
|
|
|
|
current installation.
|
2022-08-04 09:56:56 -04:00
|
|
|
2. [Download](/downloads/) the latest 4.1 release.
|
|
|
|
3. Follow the [installation guide](/doc/installation-guide/) to install Qubes
|
2021-10-11 19:20:24 -04:00
|
|
|
4.1.
|
2022-08-04 09:56:56 -04:00
|
|
|
4. [Restore from your
|
2021-10-11 19:20:24 -04:00
|
|
|
backup](/doc/how-to-back-up-restore-and-migrate/#restoring-from-a-backup) on
|
|
|
|
your new 4.1 installation.
|
2021-10-09 12:17:52 -04:00
|
|
|
|
|
|
|
## In-place upgrade
|
|
|
|
|
2022-08-04 09:56:56 -04:00
|
|
|
**Warning:** It is not possible to upgrade directly from releases earlier than
|
|
|
|
4.0. If you're still on an earlier release, please either perform a [clean
|
|
|
|
installation of 4.1](#clean-installation) or [upgrade to
|
|
|
|
4.0](/doc/upgrade/4.0/) first.
|
|
|
|
|
2021-10-11 19:20:24 -04:00
|
|
|
The upgrade may take several hours, and will download several gigabytes of
|
|
|
|
data.
|
2021-10-10 00:50:12 -04:00
|
|
|
|
2021-10-11 19:20:24 -04:00
|
|
|
In place upgrade is a complex operation. For this reason, we provide a
|
|
|
|
`qubes-dist-upgrade` tool to handle all the necessary steps automatically. You
|
|
|
|
can install it with the following command in the dom0 terminal:
|
2021-10-10 00:50:12 -04:00
|
|
|
|
|
|
|
sudo qubes-dom0-update -y qubes-dist-upgrade
|
|
|
|
|
2022-03-16 03:53:43 -04:00
|
|
|
The upgrade consists of seven stages --- six before restarting the system ---
|
|
|
|
labeled "STAGE 0" through "STAGE 5" in the options list below. The seventh stage
|
2022-03-16 03:50:08 -04:00
|
|
|
is rebuilding the application and features lists, which you can start with the
|
2021-10-11 19:20:24 -04:00
|
|
|
`--resync-appmenus-features` option.
|
2021-10-10 00:50:12 -04:00
|
|
|
|
|
|
|
Full list of options can be obtained with `qubes-dist-upgrade --help`:
|
|
|
|
|
|
|
|
Usage: qubes-dist-upgrade [OPTIONS]...
|
|
|
|
|
|
|
|
This script is used for updating current QubesOS R4.0 to R4.1.
|
|
|
|
|
|
|
|
Options:
|
|
|
|
--double-metadata-size, -d (STAGE 0) Double current LVM thin pool metadata size.
|
|
|
|
--update, -t (STAGE 1) Update of dom0, TemplatesVM and StandaloneVM.
|
|
|
|
--template-standalone-upgrade, -l (STAGE 2) Upgrade templates and standalone VMs to R4.1 repository.
|
|
|
|
--release-upgrade, -r (STAGE 3) Update 'qubes-release' for Qubes R4.1.
|
|
|
|
--dist-upgrade, -s (STAGE 4) Upgrade to Qubes R4.1 and Fedora 32 repositories.
|
|
|
|
--setup-efi-grub, -g (STAGE 5) Setup EFI Grub.
|
|
|
|
--all, -a Execute all the above stages in one call.
|
|
|
|
|
|
|
|
--assumeyes, -y Automatically answer yes for all questions.
|
|
|
|
--usbvm, -u Current UsbVM defined (default 'sys-usb').
|
|
|
|
--netvm, -n Current NetVM defined (default 'sys-net').
|
|
|
|
--updatevm, -f Current UpdateVM defined (default 'sys-firewall').
|
|
|
|
--skip-template-upgrade, -j Don't upgrade TemplateVM to R4.1 repositories.
|
|
|
|
--skip-standalone-upgrade, -k Don't upgrade StandaloneVM to R4.1 repositories.
|
|
|
|
--only-update Apply STAGE 0, 2 and resync appmenus only to
|
|
|
|
selected qubes (coma separated list).
|
|
|
|
--keep-running List of extra VMs to keep running during update (coma separated list).
|
|
|
|
Can be useful if multiple updates proxy VMs are configured.
|
|
|
|
--max-concurrency How many TemplateVM/StandaloneVM to update in parallel in STAGE 1
|
|
|
|
(default 4).
|
|
|
|
|
|
|
|
--resync-appmenus-features Resync applications and features. To be ran individually
|
|
|
|
after reboot.
|
|
|
|
|
|
|
|
After installing the tool, upgrade can be performed all at once with:
|
|
|
|
|
|
|
|
sudo qubes-dist-upgrade --all
|
|
|
|
|
2021-10-11 19:20:24 -04:00
|
|
|
Optionally, an `--assumeyes` (or `-y`) option can be used to automatically
|
|
|
|
accept all the actions without confirmation.
|
2021-10-10 00:50:12 -04:00
|
|
|
|
2021-10-11 19:20:24 -04:00
|
|
|
Alternatively, each upgrade stage can be started separately (see the list of
|
|
|
|
options above).
|
2021-10-10 00:50:12 -04:00
|
|
|
|
2022-03-16 03:50:08 -04:00
|
|
|
After completing "STAGE 0" through "STAGE 5", restart the system. Then perform
|
2021-10-11 19:20:24 -04:00
|
|
|
the final step:
|
2021-10-10 00:50:12 -04:00
|
|
|
|
|
|
|
sudo qubes-dist-upgrade --resync-appmenus-features
|
|
|
|
|
|
|
|
When this completes, you can start using Qubes OS 4.1.
|
|
|
|
|
|
|
|
### Known issues
|
|
|
|
|
2021-10-11 19:20:24 -04:00
|
|
|
1. The script does not convert LUKS1 to LUKS2 disk encryption format (fresh
|
|
|
|
Qubes 4.1 install uses LUKS2 for disk encryption, while earlier versions use
|
|
|
|
LUKS1).
|
|
|
|
2. Early Qubes 4.0 pre-releases (before R4.0-rc2) made `/boot/efi` partition
|
|
|
|
only 200MB, which is too small for R4.1. In case of such partition layout,
|
|
|
|
clean installation is necessary.
|
|
|
|
3. If user has created some custom qrexec policy entries, they may not be
|
|
|
|
correctly handled in R4.1, resulting in denying all the calls. It is advised
|
|
|
|
to verify if there are not qrexec policy errors in the log after the system
|
|
|
|
restart - using `journalctl -b` command.
|
|
|
|
|
|
|
|
If any early upgrade stage fails, the `qubes-dist-upgrade` tool will try to
|
|
|
|
restore previous system state. After fixing an issue, the tool can be started
|
|
|
|
again, to retry the operation. If a later stage (number 3 or later) fails, the
|
|
|
|
tool may not be able to rollback the changes. But it may still be possible to
|
|
|
|
retry the upgrade.
|
2021-10-09 12:17:52 -04:00
|
|
|
|
|
|
|
## Update
|
|
|
|
|
2021-10-11 19:20:24 -04:00
|
|
|
After upgrading or performing a clean installation, we strongly recommend
|
|
|
|
[updating your system](/doc/how-to-update/).
|