*To distinguish subvolumes from folders, all my subvolumes start with an @. But, I had to change all the at symbols by (at) due to this error message: `An error occurred: Sorry, new users can only mention 2 users in a post. `*
| |
create subvolumes `(at)qubes-4.1.2-dom0` and `(at)qubes-4.1.2-varlibqubes` and `(at)qubes-4.2.0-dom0` and `(at)qubes-4.2.0-varlibqubes` (tested with 4.2.0-RC2 and 4.2.0 (leaving previous R4.1.2 as is))
make sure to chown and chmod `(at)qubes-4.X-varlibqubes`:
`chown root:qubes (at)qubes-4.2.0-varlibqubes/`
`chmod 2770 (at)qubes-4.2.0-varlibqubes/`
| create subvolumes `@qubes-4.1.2-dom0` and `@qubes-4.1.2-varlibqubes` and `@qubes-4.2.0-dom0` and `@qubes-4.2.0-varlibqubes` (tested with 4.2.0-RC2 and 4.2.0 (leaving previous R4.1.2 as is))
make sure to chown and chmod `@qubes-4.X-varlibqubes`:
`chown root:qubes @qubes-4.2.0-varlibqubes/`
`chmod 2770 @qubes-4.2.0-varlibqubes/`
|
select `(at)qubes-4.X-dom0` as `/`
select `(at)qubes-4.X-varlibqubes` as `/var/lib/qubes`
=> if that fails, only set `(at)qubes-4.X-dom0` as `/`
| select `@qubes-4.X-dom0` as `/`
select `@qubes-4.X-varlibqubes` as `/var/lib/qubes`
=> if that fails, only set `@qubes-4.X-dom0` as `/`
|
`nano (at)qubes-4.2.0-dom0/root/anaconda-ks.cfg`
| `nano @qubes-4.2.0-dom0/root/anaconda-ks.cfg`
|
#btrfs /var/lib/qubes --subvol --name=(at)qubes-4.2.0-varlibqubes
#btrfs / --subvol --name=(at)qubes-4.2.0-dom0
| #btrfs /var/lib/qubes --subvol --name=@qubes-4.2.0-varlibqubes
#btrfs / --subvol --name=@qubes-4.2.0-dom0
|
`btrfs su sn -r (at)qubes-4.X-dom0 snapshots/(at)qubes-4.X-dom0-<date|time>-ro # (same for (at)qubes-4.X-<date|time>-varlibqubes)`
| `btrfs su sn -r @qubes-4.X-dom0 snapshots/@qubes-4.X-dom0-<date|time>-ro # (same for @qubes-4.X-<date|time>-varlibqubes)`
|
If mounting `(at)qubes-4.X-varlibqubes` on `/var/lib/qubes` during anaconda-install failed, then:
| If mounting `@qubes-4.X-varlibqubes` on `/var/lib/qubes` during anaconda-install failed, then:
|
cd (at)qubes-4.2.0-dom0/var/lib/qubes/
cp -a --reflink=always * /path/to/\(at)qubes-4.2.0-varlibqubes/
| cd @qubes-4.2.0-dom0/var/lib/qubes/
cp -a --reflink=always * /path/to/\@qubes-4.2.0-varlibqubes/
|
and mount `(at)qubes-4.2.0-varlibqubes` on `/var/lib/qubes` in `/etc/fstab`
| and mount `@qubes-4.2.0-varlibqubes` on `/var/lib/qubes` in `/etc/fstab`
|
#UUID=aaaaaaaa-bbbb-0003-bbbb-aaaaaaaaaaaa / btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=(at)qubes-4.1.2-dom0 0 0
#UUID=aaaaaaaa-bbbb-0003-bbbb-aaaaaaaaaaaa /var/lib/qubes btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=(at)qubes-4.1.2-varlibqubes 0 0
UUID=aaaaaaaa-bbbb-0003-bbbb-aaaaaaaaaaaa / btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=(at)qubes-4.2.1-dom0 0 0
UUID=aaaaaaaa-bbbb-0003-bbbb-aaaaaaaaaaaa /var/lib/qubes btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=(at)qubes-4.2.1-varlibqubes 0 0
| #UUID=aaaaaaaa-bbbb-0003-bbbb-aaaaaaaaaaaa / btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=@qubes-4.1.2-dom0 0 0
#UUID=aaaaaaaa-bbbb-0003-bbbb-aaaaaaaaaaaa /var/lib/qubes btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=@qubes-4.1.2-varlibqubes 0 0
UUID=aaaaaaaa-bbbb-0003-bbbb-aaaaaaaaaaaa / btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=@qubes-4.2.1-dom0 0 0
UUID=aaaaaaaa-bbbb-0003-bbbb-aaaaaaaaaaaa /var/lib/qubes btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=@qubes-4.2.1-varlibqubes 0 0
|
#UUID=bbbbbbbb-bbbb-0003-bbbb-bbbbbbbbbbbb / btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=(at)qubes-4.2.1-dom0 0 0
#UUID=bbbbbbbb-bbbb-0003-bbbb-bbbbbbbbbbbb /var/lib/qubes btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=(at)qubes-4.2.1-varlibqubes 0 0
| #UUID=bbbbbbbb-bbbb-0003-bbbb-bbbbbbbbbbbb / btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=@qubes-4.2.1-dom0 0 0
#UUID=bbbbbbbb-bbbb-0003-bbbb-bbbbbbbbbbbb /var/lib/qubes btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=@qubes-4.2.1-varlibqubes 0 0
|
#UUID=cccccccc-bbbb-0003-bbbb-cccccccccccc / btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=(at)qubes-4.2.1-dom0 0 0
#UUID=cccccccc-bbbb-0003-bbbb-cccccccccccc /var/lib/qube btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=(at)qubes-4.2.1-varlibqubes 0 0
| #UUID=cccccccc-bbbb-0003-bbbb-cccccccccccc / btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=@qubes-4.2.1-dom0 0 0
#UUID=cccccccc-bbbb-0003-bbbb-cccccccccccc /var/lib/qube btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,compress=zstd:3,space_cache,subvol=@qubes-4.2.1-varlibqubes 0 0
|
UUID=aaaaaaaa-bbbb-0003-bbbb-aaaaaaaaaaaa /swap btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,space_cache,subvol=(at)swap 0 0
#UUID=bbbbbbbb-bbbb-0003-bbbb-bbbbbbbbbbbb /swap btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,space_cache,subvol=(at)swap 0 0
#UUID=cccccccc-bbbb-0003-bbbb-cccccccccccc /swap btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,space_cache,subvol=(at)swap 0 0
| UUID=aaaaaaaa-bbbb-0003-bbbb-aaaaaaaaaaaa /swap btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,space_cache,subvol=@swap 0 0
#UUID=bbbbbbbb-bbbb-0003-bbbb-bbbbbbbbbbbb /swap btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,space_cache,subvol=@swap 0 0
#UUID=cccccccc-bbbb-0003-bbbb-cccccccccccc /swap btrfs defaults,x-systemd.device-timeout=0,discard,noatime,ssd,space_cache,subvol=@swap 0 0
|
btrfs su sn -r (at)qubes4.1.2-dom0 snapshots/(at)qubes4.1.2-dom0-<date/version>-ro
btrfs send snapshots/(at)qubes4.1.2-dom0-<date/version>-ro | btrfs receive /path/to/other/SSDs # `https://wiki.archlinux.org/title/Btrfs#Send/receive`
btrfs su sn /path/to/other/SSD/snapshots/(at)qubes4.1.2-dom0-<date/version>-ro /path/to/other/SSD/(at)qubes4.1.2-dom0
| btrfs su sn -r @qubes4.1.2-dom0 snapshots/@qubes4.1.2-dom0-<date/version>-ro
btrfs send snapshots/@qubes4.1.2-dom0-<date/version>-ro | btrfs receive /path/to/other/SSDs # `https://wiki.archlinux.org/title/Btrfs#Send/receive`
btrfs su sn /path/to/other/SSD/snapshots/@qubes4.1.2-dom0-<date/version>-ro /path/to/other/SSD/@qubes4.1.2-dom0
|
mounting a `(at)subvolume` inside a VM. => when, for example, cccccccc-bbbb-0003-bbbb-cccccccccccc is not mounted in dom0, then I am able to mount the whole disk (top-level) into any VM. But I am unable to mount a `(at)subvolume` of a, in dom0 mounted, btrfs partition.
| mounting a `@subvolume` inside a VM. => when, for example, cccccccc-bbbb-0003-bbbb-cccccccccccc is not mounted in dom0, then I am able to mount the whole disk (top-level) into any VM. But I am unable to mount a `@subvolume` of a, in dom0 mounted, btrfs partition.
|