Unable to boot or use chroot

Already explained:

That can be done, but would be a lot to write and explain, especially because of btrfs (and you are not familiar with it). Also, you need some basic understanding about the process so that nothing goes wrong. I assume you have almost zero knowledge about it. Contact me via PM, if you would like some support and real time explanations, I will not explain every single detail here, since a search with the correct terms can give you all the information you need, and you need the will and time to learn that.

Perhaps a fresh installation on sda would be better for you, since I assume that you are a newbie on this field. :man_shrugging: Using dd for btrfs is not recommended!

TimeShift is not a real backup tool and was never intended. Timeshift is more like “Windows Recovery”. By default, it creates a snapshot of your system files on the same disk and with timeshift-autosnap it creates a snapshot right before a system upgrade starts. And if something went wrong, you can roll it back.

If you want to backup your home files, I would suggest using borg. There are 2 GUIs for that vorta and pika-backup, although you can also just use a script. Borg supports snapshots, deduplication and compression.

Anyway, why would you create images of the whole OS? What would make sense on debian servers, which doesn’t change very often, but a rolling OS is still rolling. You will spend a lot of time creating images every time something changes.

I have a backup OS, which is just a customized Manjaro ISO and I don’t use a flash drive for this.

  1. Make some space on sdc and create a 10GB vfat partition and flag it with boot,esp and name the partition and file system “RECOVERY” (:point_right: important :point_left:).
  2. Mount it and install grub on it:
sudo mount --mkdir --label RECOVERY /mnt/recovery
sudo grub-install --target=x86_64-efi --recheck --removable --efi-directory=/mnt/recovery --boot-directory=/mnt/recovery/boot --verbose --force
  1. Create an efi entry in your UEFI/BIOS:
 sudo efibootmgr --create --disk /dev/sdX --part <number> --label "Recovery" --loader '\EFI\BOOT\BOOTX64.EFI'
  1. Copy a Manjaro ISO to that partition:
sudo cp -f /path/to/manjaro.iso /mnt/recovery/manjaro.iso
  1. This script has to be in /mnt/recovery/boot/grub/grub.cfg (create it):
function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if loadfont $prefix/fonts/unicode.pf2 ; then
  # Set Video
  set gfxmode=auto
  load_video
  insmod gfxterm
  # Set Langauge for grub
  set locale_dir="$prefix/locale"
  set lang="de"
  insmod gettext
fi

# Set keyboard language for grub
#insmod keylayouts
#keymap $prefix/lang.gkb

terminal_input console
terminal_output gfxterm

insmod part_gpt
insmod part_msdos
insmod fat
set label="RECOVERY"
search --no-floppy --label --set=root $label
insmod png

set timeout_style="menu"
set timeout="10"

menuentry "Manjaro ISO"  {
    # Setup grub
    load_video
    set gfxpayload=keep
    insmod part_gpt
    insmod part_msdos
    insmod fat

    ## Set Parameters for the ISO
    # Set the free or nonfree drivers
    set dri="free"
    # Set the language of the Desktop (localectl list-locales)
    set lang="de_DE"
    # Set keyboard language (localectl list-keymaps)
    set keyboard="de"
    # Set the timezone (timedatectl list-timezones)
    set timezone="Europe/Berlin"
    # Copy to RAM (needs at least 8GB RAM)
    #set c2r="copy2ram"

    # Set Params searching the ISO
    # Label of the partition where it searches for the iso file
    set label="RECOVERY"
    # Search for the partition label and switch to the root directory of it
    search --no-floppy --label --set=root $label
    # Set the device where the ISO is located
    set device="/dev/disk/by-label/$label"
    # Set the Path to the ISO
    set file="/manjaro.iso"

    loopback loop $file
    linux  (loop)/boot/vmlinuz-x86_64  img_dev=$dev img_loop=$file driver=$dri tz=$timezone lang=$lang keytable=$keyboard $cr2
    initrd (loop)/boot/intel_ucode.img (loop)/boot/initramfs-x86_64.img
}
  1. And now you are done. You can now reboot, type F12 and choose “Recovery” from the Bootmenu. This little installation is fully dedicated and even work when your main installation is non-functional. You can also do a full installation form here.

:notebook: You need to adjust the parameter in menu to your language. Parameters are mostly explained. If you have an amd CPU, then replace intel_ucode.img with amd_ucode.img.

Anyway, this works for me in production and if something goes wrong, I can always boot a live session and fix stuff.

Ok I hope this is clear now and helpful. :wink: