Generalize whonix-reinstall to apply to all templates
This commit is contained in:
parent
4fadbec0c9
commit
8741932d59
74
managing-os/reinstall-template.md
Normal file
74
managing-os/reinstall-template.md
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
---
|
||||||
|
layout: doc
|
||||||
|
title: How to Reinstall a TemplateVM
|
||||||
|
permalink:
|
||||||
|
redirect_from:
|
||||||
|
- /doc/whonix/reinstall/
|
||||||
|
---
|
||||||
|
|
||||||
|
How to Reinstall a TemplateVM
|
||||||
|
=============================
|
||||||
|
|
||||||
|
If you suspect your [TemplateVM] is broken, misconfigured, or compromised,
|
||||||
|
or if you wish to do a clean reinstall in order to upgrade to a new version, you
|
||||||
|
can reinstall any TemplateVM from the Qubes repository. In what follows, the
|
||||||
|
phrase "target TemplateVM" refers to whichever TemplateVM you want to reinsatll.
|
||||||
|
If you want to reinstall more than one TemplateVM, repeat these instructions for
|
||||||
|
each one.
|
||||||
|
|
||||||
|
1. (Optional) Clone the existing target TemplateVM.
|
||||||
|
|
||||||
|
This can be a good idea if you've customized the existing template and want
|
||||||
|
to keep your customizations. On the other hand, if you suspect that this
|
||||||
|
template is broken, misconfigured, or compromised, you may want to remove it
|
||||||
|
without cloning it.
|
||||||
|
|
||||||
|
2. Create a temporary dummy template:
|
||||||
|
|
||||||
|
mkdir /var/lib/qubes/vm-templates/dummy
|
||||||
|
touch /var/lib/qubes/vm-templates/dummy/{root.img,private.img}
|
||||||
|
qvm-add-template dummy
|
||||||
|
|
||||||
|
3. Temporarily change all VMs based on the target TemplateVM to the new dummy
|
||||||
|
template, or remove them.
|
||||||
|
|
||||||
|
This can be a good idea if you have user data in these VMs that you want to
|
||||||
|
keep. On the other hand, if you suspect that these VMs (or the templates on
|
||||||
|
which they are based) are broken, misconfigured, or compromised, you may
|
||||||
|
want to remove them instead. You can do this in Qubes Manager by
|
||||||
|
right-clicking on the VM and clicking **Remove VM**, or you can use the
|
||||||
|
command `qvm-remove <vm-name>` in dom0.
|
||||||
|
|
||||||
|
Using a dummy template as a temporary template is preferable to using another
|
||||||
|
real TemplateVM because you can't accidentally boot any VMs from the dummy
|
||||||
|
template. (There is no OS in the dummy template, so the boot will fail.)
|
||||||
|
|
||||||
|
4. Uninstall the target TemplateVM from dom0:
|
||||||
|
|
||||||
|
$ sudo yum remove <template-package-name>
|
||||||
|
|
||||||
|
For example, to uninstall the `whonix-gw` template:
|
||||||
|
|
||||||
|
$ sudo yum remove qubes-template-whonix-gw
|
||||||
|
|
||||||
|
5. Reinstall the target TemplateVM in dom0:
|
||||||
|
|
||||||
|
$ sudo qubes-dom0-update --enablerepo=<optional-additional-repo> \
|
||||||
|
<template-package-name>
|
||||||
|
|
||||||
|
For example, to install the `whonix-gw` template:
|
||||||
|
|
||||||
|
$ sudo qubes-dom0-update --enablerepo=qubes-templates-community \
|
||||||
|
qubes-template-whonix-gw
|
||||||
|
|
||||||
|
6. If you temporarily changed all VMs based on the target TemplateVM to the
|
||||||
|
dummy template in step 3, change them back to the new target TemplateVM now.
|
||||||
|
If you instead removed all VMs based on the old target TemplateVM, you can
|
||||||
|
recreate your desired VMs from the newly reinstalled target TemplateVM now.
|
||||||
|
|
||||||
|
At a minimum, you'll want a ProxyVM (conventionally called `sys-whonix`)
|
||||||
|
based on `whonix-gw` and an AppVM based on `whonix-ws` that uses `sys-whonix`
|
||||||
|
as its NetVM.
|
||||||
|
|
||||||
|
[TemplateVM]: /doc/templates/
|
||||||
|
|
|
@ -1,54 +0,0 @@
|
||||||
---
|
|
||||||
layout: doc
|
|
||||||
title: Reinstall Whonix in Qubes
|
|
||||||
permalink: /doc/whonix/reinstall/
|
|
||||||
---
|
|
||||||
|
|
||||||
Reinstall Whonix in Qubes
|
|
||||||
===========================
|
|
||||||
|
|
||||||
If you suspect your Whonix templates are broken, misconfigured, or compromised,
|
|
||||||
or if you wish to do a clean reinstall in order to upgrade to a new version, you
|
|
||||||
can reinstall the Whonix templates from the Qubes repository. This procedure
|
|
||||||
involves [uninstalling] your Whonix templates, then [installing] them again.
|
|
||||||
|
|
||||||
1. (Optional) Clone your existing `whonix-gw` and `whonix-ws` templates.
|
|
||||||
|
|
||||||
This can be a good idea if you've customized the existing templates and want
|
|
||||||
to keep them. On the other hand, if you suspect that these templates are
|
|
||||||
broken, misconfigured, or compromised, you may want to remove them
|
|
||||||
without cloning them.
|
|
||||||
|
|
||||||
2. (Optional) Temporarily change all VMs based on `whonix-gw` and `whonix-ws` to
|
|
||||||
another template (e.g., the ones created in the previous step).
|
|
||||||
|
|
||||||
This can be a good idea if you have user data in these VMs that you want to
|
|
||||||
keep. On the other hand, if you suspect that these VMs (or the templates on
|
|
||||||
which they are based) are broken, misconfigured, or compromised, you may
|
|
||||||
want to remove them instead. You can do this in Qubes Manager by
|
|
||||||
right-clicking on the VM and clicking **Remove VM**, or you can use the
|
|
||||||
command `qvm-remove <vm-name>` in dom0.
|
|
||||||
|
|
||||||
3. Uninstall the Whonix templates from dom0:
|
|
||||||
|
|
||||||
$ sudo yum remove qubes-template-whonix-gw
|
|
||||||
$ sudo yum remove qubes-template-whonix-ws
|
|
||||||
|
|
||||||
4. Reinstall the Whonix templates in dom0:
|
|
||||||
|
|
||||||
$ sudo qubes-dom0-update --enablerepo=qubes-templates-community \
|
|
||||||
qubes-template-whonix-gw qubes-template-whonix-ws
|
|
||||||
|
|
||||||
5. If you followed step 2, change the VMs from step 2 back to the new
|
|
||||||
`whonix-gw` and `whonix-ws`. If you instead removed all VMs based on the old
|
|
||||||
`whonix-gw` and `whonix-ws`, simply create your desired VMs from the new
|
|
||||||
templates.
|
|
||||||
|
|
||||||
At a minimum, you'll want a ProxyVM (conventionally called `sys-whonix`)
|
|
||||||
based on `whonix-gw` and an AppVM based on `whonix-ws` that uses `sys-whonix`
|
|
||||||
as its NetVM.
|
|
||||||
|
|
||||||
|
|
||||||
[uninstalling]: /doc/whonix/uninstall/
|
|
||||||
[installing]: /doc/whonix/install/
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user