===== What? ===== I found myself on a national holiday, with Fedora32 released, and wanting to upgrade my Fedora31 system. fedup has not failed for me in years, but I want a safety net. I have a single stick around, so let's * setup it to boot a Fedora32, for emergencies * and use the other part of the stick for backup of my homedir * that backup should be encrypted, and also be able to detect bit rot ===== Setup steps, Fedora 33 ===== # Connect the stick, find out which device it got: [root@電脳 ~]# cat /proc/partitions major minor #blocks name 259 0 250059096 nvme0n1 259 1 266240 nvme0n1p1 259 2 1048576 nvme0n1p2 259 3 248743239 nvme0n1p3 253 0 240930816 dm-0 253 1 7811072 dm-1 253 2 240928768 dm-2 253 3 7809024 dm-3 8 0 60063744 sda <---- [root@電脳 ~]# ### install tools dnf -y install pv cryptsetup rsync ### Fetch Fedora iso, and directly write it. Takes 2:22min for me. URL="http://ftp.jaist.ac.jp/pub/Linux/Fedora/releases/33/Server/x86_64/iso/Fedora-Server-dvd-x86_64-33-1.2.iso" URL="https://download.fedoraproject.org/pub/fedora/linux/releases/33/Workstation/x86_64/iso/Fedora-Workstation-Live-x86_64-33-1.2.iso" wget -O - $URL | pv >/dev/sda ### Switch to unit "GB", create a new partition from ### offset 5GB until the end of the usb-stick parted /dev/sda (parted) u Unit? [compact]? GB (parted) mkpart Partition type? primary/extended? p File system type? [ext2]? Start? 5GB End? -1 (parted) p Model: SanDisk Ultra (scsi) Disk /dev/sda: 61.5GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 2 0.00GB 0.01GB 0.01GB primary fat16 esp 1 5.00GB 60.5GB 55.5GB primary ext2 lba (parted) quit ### Now let's create LUKS+dm-integrity layer cryptsetup luksFormat --type luks2 /dev/sda1 \ --integrity hmac-sha256 --cipher aes-xts-plain64 -v cryptsetup open /dev/sda1 luksusb cryptsetup status luksusb mkfs.xfs /dev/mapper/luksusb mount /dev/mapper/luksusb /mnt/usbbackup ===== Actual backup ===== Opening the encrypted device now, doing the backup, and closing. This has to be done each time we want to backup, but the subsequent runs are quicker as only changes are transferred. sudo cryptsetup luksOpen /dev/sda4 usbbackup sudo mount /dev/mapper/usbbackup /mnt/usbbackup rsync -arv \ --delete \ --exclude='Downloads/' \ --exclude='.wine/' \ --exclude='.cache/' \ --exclude='.openra/' \ --exclude='.local/share/Steam/' \ /home/chris \ /mnt/usbbackup/ sudo umount /mnt/usbbackup sudo cryptsetup luksClose luksusb Then you can reboot, and test out the system boots from the usbstick.