From 4537350e0b7b4571663c268a159b92e235b689a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= Date: Sun, 29 Nov 2015 23:45:27 +0100 Subject: [PATCH] Prefer Fedora 21 -> Fedora 23 upgrade --- managing-os/fedora-template-upgrade-21.md | 87 ++++++++++++----------- 1 file changed, 45 insertions(+), 42 deletions(-) diff --git a/managing-os/fedora-template-upgrade-21.md b/managing-os/fedora-template-upgrade-21.md index c841b50d..ff8c5012 100644 --- a/managing-os/fedora-template-upgrade-21.md +++ b/managing-os/fedora-template-upgrade-21.md @@ -11,47 +11,44 @@ redirect_from: Upgrading the Fedora 21 Template ================================ -**Note: the Fedora 22 template is still in testing phase. Keep this in mind -when you decide whether remove old Fedora 21 template.** - -Summary: Upgrading the Standard Fedora 21 Template to Fedora 22 +Summary: Upgrading the Standard Fedora 21 Template to Fedora 23 --------------------------------------------------------------- - [user@dom0 ~]$ qvm-clone fedora-21 fedora-22 + [user@dom0 ~]$ qvm-clone fedora-21 fedora-23 [user@dom0 ~]$ truncate -s 5GB /var/tmp/template-upgrade-cache.img - [user@dom0 ~]$ qvm-run -a fedora-22 gnome-terminal - [user@dom0 ~]$ qvm-block -A fedora-22 dom0:/var/tmp/template-upgrade-cache.img - [user@fedora-22 ~]$ sudo mkfs.ext4 /dev/xvdi - [user@fedora-22 ~]$ sudo mount /dev/xvdi /mnt/removable - [user@fedora-22 ~]$ sudo mkdir /mnt/removable/modules - [user@fedora-22 ~]$ sudo cp -rp /usr/lib/modules /mnt/removable/modules - [user@fedora-22 ~]$ sudo mount --bind /mnt/removable/modules /usr/lib/modules - [user@fedora-22 ~]$ sudo yum clean all - [user@fedora-22 ~]$ sudo yum --releasever=22 --enablerepo=qubes*current-testing --setopt=cachedir=/mnt/removable distro-sync + [user@dom0 ~]$ qvm-run -a fedora-23 gnome-terminal + [user@dom0 ~]$ qvm-block -A fedora-23 dom0:/var/tmp/template-upgrade-cache.img + [user@fedora-23 ~]$ sudo mkfs.ext4 /dev/xvdi + [user@fedora-23 ~]$ sudo mount /dev/xvdi /mnt/removable + [user@fedora-23 ~]$ sudo mkdir /mnt/removable/modules + [user@fedora-23 ~]$ sudo cp -rp /usr/lib/modules /mnt/removable/modules + [user@fedora-23 ~]$ sudo mount --bind /mnt/removable/modules /usr/lib/modules + [user@fedora-23 ~]$ sudo yum clean all + [user@fedora-23 ~]$ sudo yum --releasever=23 --enablerepo=qubes*current-testing --setopt=cachedir=/mnt/removable distro-sync (Shut down TemplateVM by any normal means.) [user@dom0 ~]$ rm /var/tmp/template-upgrade-cache.img - [user@dom0 ~]$ qvm-trim-template fedora-22 + [user@dom0 ~]$ qvm-trim-template fedora-23 (Done.) -Detailed: Upgrading the Standard Fedora 21 Template to Fedora 22 +Detailed: Upgrading the Standard Fedora 21 Template to Fedora 23 ---------------------------------------------------------------- These instructions will show you how to upgrade the standard Fedora 21 -TemplateVM to Fedora 22. The same general procedure may be used to upgrade any +TemplateVM to Fedora 23. The same general procedure may be used to upgrade any template based on the standard Fedora 21 template. 1. Clone the existing template and start a terminal in the new template. - [user@dom0 ~]$ qvm-clone fedora-21 fedora-22 - [user@dom0 ~]$ qvm-run -a fedora-22 gnome-terminal + [user@dom0 ~]$ qvm-clone fedora-21 fedora-23 + [user@dom0 ~]$ qvm-run -a fedora-23 gnome-terminal 2. Attempt the upgrade process in the new template. For now you need to enable testing repository to do that. - [user@fedora-22 ~]$ sudo yum clean all - [user@fedora-22 ~]$ sudo yum --releasever=22 --enablerepo=qubes*current-testing distro-sync + [user@fedora-23 ~]$ sudo yum clean all + [user@fedora-23 ~]$ sudo yum --releasever=23 --enablerepo=qubes*current-testing distro-sync (Shut down TemplateVM via Qubes VM Manager; may need to be killed.) @@ -62,24 +59,24 @@ template based on the standard Fedora 21 template. attach it to the template as a virtual disk. [user@dom0 ~]$ truncate -s 5GB /var/tmp/template-upgrade-cache.img - [user@dom0 ~]$ qvm-block -A fedora-22 dom0:/var/tmp/template-upgrade-cache.img + [user@dom0 ~]$ qvm-block -A fedora-23 dom0:/var/tmp/template-upgrade-cache.img Then reattempt the upgrade process, but this time using the virtual disk as a cache. - [user@fedora-22 ~]$ sudo mkfs.ext4 /dev/xvdi - [user@fedora-22 ~]$ sudo mount /dev/xvdi /mnt/removable - [user@fedora-22 ~]$ sudo yum clean all - [user@fedora-22 ~]$ sudo yum --releasever=22 --enablerepo=qubes*current-testing --setopt=cachedir=/mnt/removable distro-sync + [user@fedora-23 ~]$ sudo mkfs.ext4 /dev/xvdi + [user@fedora-23 ~]$ sudo mount /dev/xvdi /mnt/removable + [user@fedora-23 ~]$ sudo yum clean all + [user@fedora-23 ~]$ sudo yum --releasever=23 --enablerepo=qubes*current-testing --setopt=cachedir=/mnt/removable distro-sync (Poweroff via Qubes VM Manager. May need to be killed.) 4. If `yum` complains that there is not enough free space in `/usr/lib/modules`, do this before reattempting the upgrade: - [user@fedora-22 ~]$ sudo mkdir /mnt/removable/modules - [user@fedora-22 ~]$ sudo cp -rp /usr/lib/modules /mnt/removable/modules - [user@fedora-22 ~]$ sudo mount --bind /mnt/removable/modules /usr/lib/modules + [user@fedora-23 ~]$ sudo mkdir /mnt/removable/modules + [user@fedora-23 ~]$ sudo cp -rp /usr/lib/modules /mnt/removable/modules + [user@fedora-23 ~]$ sudo mount --bind /mnt/removable/modules /usr/lib/modules 5. `yum` may complain: @@ -97,25 +94,25 @@ template based on the standard Fedora 21 template. 7. Trim the new template (see **Compacting the Upgraded Template** for details and other options). - [user@dom0 ~]$ qvm-trim-template fedora-22 + [user@dom0 ~]$ qvm-trim-template fedora-23 8. (Optional) Remove the old default template. [user@dom0 ~]$ sudo yum remove qubes-template-fedora-21 -Summary: Upgrading the Minimal Fedora 21 Template to Fedora 22 +Summary: Upgrading the Minimal Fedora 21 Template to Fedora 23 -------------------------------------------------------------- - [user@dom0 ~]$ qvm-clone fedora-21-minimal fedora-22-minimal - [user@dom0 ~]$ qvm-run -a fedora-22-minimal xterm - [user@fedora-22-minimal ~]$ su - - [root@fedora-22-minimal ~]# yum clean all - [user@fedora-22-minimal ~]# yum --releasever=22 --enablerepo=qubes*current-testing distro-sync + [user@dom0 ~]$ qvm-clone fedora-21-minimal fedora-23-minimal + [user@dom0 ~]$ qvm-run -a fedora-23-minimal xterm + [user@fedora-23-minimal ~]$ su - + [root@fedora-23-minimal ~]# yum clean all + [user@fedora-23-minimal ~]# yum --releasever=23 --enablerepo=qubes*current-testing distro-sync (Shut down TemplateVM by any normal means.) - [user@dom0 ~]$ qvm-trim-template fedora-22-minimal + [user@dom0 ~]$ qvm-trim-template fedora-23-minimal (If you encounter insufficient space issues, you may need to use the methods described for the standard template above.) @@ -147,7 +144,7 @@ really necessary after upgrading. If you have at least `qubes-core-dom0-2.1.68` installed or are on Qubes R3.0, you can use the `qvm-trim-template` tool: - [user@dom0 ~]$ qvm-trim-template fedora-22 + [user@dom0 ~]$ qvm-trim-template fedora-23 If you do not have `qubes-core-dom0-2.1.68` or are on older Qubes version, you can compact the `root.img` manually. To do this, you will need about 15GB (the @@ -156,15 +153,15 @@ TemplateVM's max size + the actually used space there) free space in dom0. 1. Start the template and fill all the free space with zeros, for example with: - [user@fedora-22 ~]$ dd if=/dev/zero of=/var/tmp/zero + [user@fedora-23 ~]$ dd if=/dev/zero of=/var/tmp/zero 2. Wait for the "No space left on device" error. Then: - [user@fedora-22 ~]$ rm -f /var/tmp/zero + [user@fedora-23 ~]$ rm -f /var/tmp/zero 3. Shut down the template and all VMs based on it. Then: - [user@dom0 ~]$ cd /var/lib/qubes/vm-templates/fedora-22 + [user@dom0 ~]$ cd /var/lib/qubes/vm-templates/fedora-23 [user@dom0 ~]$ cp --sparse=always root.img root.img.new [user@dom0 ~]$ mv root.img.new root.img @@ -198,7 +195,13 @@ list which also apply to TemplateVM management and migration in general: * [Marek](https://groups.google.com/d/msg/qubes-users/mCXkxlACILQ/dS1jbLRP9n8J) * [Jason M](https://groups.google.com/d/msg/qubes-users/mCXkxlACILQ/5PxDfI-RKAsJ) -Known issues with Fedora 22 +Upgrading to Fedora 22 +====================== + +You may choose to upgrade to Fedora 22 instead of Fedora 23. In that case, +simply replace version "23" with "22" in all above commands. + +Known issues with Fedora 23 =========================== * [Graphical update tools (using PackageKit) does not work](https://github.com/QubesOS/qubes-issues/issues/982).