×

Pages

Labels

Search

×

Pages

×
×

Notice

The site is currently undergoing scheduled maintenance, and may not function correctly. Please come back later.

Advertisement

advertisement

Create A Frugal Rambooting Debian Installation i1 v3

This tutorial covers how to create a frugal (changes are lost) rambooting (the operating system is copied to memory during boot) Debian 10 system image, installing it, and setting up a temporary flat-install (regular installation) for updating the frugal install.These steps use Debian 10.4.0 XFCE AMD64, on an empty machine (no data, no operating systems, etc), and do not include consideration for other variants. The method used in this tutorial is nearly identical to configuring a Debian installation as a frugal-install, and is similar to converting live-media into a frugal media/install. Read through all the steps, and the notes at the bottom before proceeding.

Create a System Image:
- Download, and install Debian 10 using the Debian 10.4.0 XFCE AMD64 live media ("https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/debian-live-10.4.0-amd64-xfce.iso").
- Login as administrator (the user account created during installation) on the Debian installation.
- Open the "Applications" menu (located top left), go to "System", and click "Xfce Terminal" (a terminal emulator).
- In terminal enter "sudo apt update".
- In terminal enter "sudo apt install xorriso live-boot live-build live-tools initramfs-tools squashfs-tools gdisk tar zip unzip".
- In terminal enter "sudo apt clean".
- Boot the Debian live media in try mode.
- Open the "Applications" menu (located top left), go to "System", and click "Xfce Terminal" (a terminal emulator).
- In terminal enter "sudo apt update".
- In terminal enter "sudo apt install xorriso squashfs-tools tar zip unzip gdisk".
- In terminal enter "sudo apt clean".
- In terminal enter "sudo mkdir '/media/debian-installation'.
- In terminal enter "sudo blkid', and note the device path of the Debian installation root partition (eg: '/dev/sda2').
- In terminal enter "sudo mount '/dev/sda2' '/media/debian-installation'
- In terminal enter "sudo mv '/media/debian-installation/etc/fstab' '/media/debian-installation/etc/fstab.original'".
- In terminal enter "sudo -i".
- In terminal enter "echo -e "#OSP\n#UUID=a893cdad-bd69-4f85-982f-cd0ad518a22f\t/\text4\terrors=remount-ro\t0\t1\n#SWAP\n#UUID=a893cdad-bd69-4f85-982f-cd0ad518a22f\tnone\tswap\tsw\t0\t0\n#DVD/CD Drive\n/dev/sr0\t/media/cdrom0\tudf,iso9660\tuser,noauto\t0\t0" > '/media/debian-installation/etc/fstab'".
- In terminal enter "exit".
- If it isn't already connected, insert an empty (or okay to format) drive to save the system image to (eg: '/dev/sdb').
- In terminal enter "sudo lsblk -a -p", find the drive where the system image will be saved to, and note the device path (eg: '/dev/sdb').
- In terminal enter "sudo sgdisk --zap-all '/dev/sdb'". This will delete everything from this drive!
- In terminal enter "sudo sgdisk -g '/dev/sdb'".
- In terminal enter "sudo sgdisk -N 1 '/dev/sdb'".
- In terminal enter "sudo mkfs -t ext4 '/dev/sdb1'".
- In terminal enter "sudo mkdir '/media/system-image'".
- In terminal enter "sudo mount '/dev/sdb1' '/media/system-image'". "sdb1" being the partition on the drive where the system image is going to be saved.
- In terminal enter "sudo mkdir '/media/system-image/OSP'".
- In terminal enter "sudo mksquashfs '/media/debian-installation' '/media/system-image/OSP/filesystem.squashfs'".
- In terminal enter "cd '/media/system-image/OSP' && sudo xorriso -dev '/media/system-image/OSP/rootfs.iso' -add 'filesystem.squashfs' && cd -".
- In terminal enter "sudo rm '/media/system-image/OSP/filesystem.squashfs'".
- In terminal enter "sudo mv '/media/debian-installation/etc/fstab.original' '/media/debian-installation/etc/fstab'".
- In terminal enter "sudo mkdir '/media/system-image/OSP/boot'".
- In terminal enter "sudo ls -l '/media/debian-installation/boot'". Note the filename of the initrd file (eg: initrd.img-4.19.0-9-amd64).
- In terminal enter "sudo cp '/media/debian-installation/boot/initrd.img-4.19.0-9-amd64' '/media/system-image/OSP/boot/initrd.img'". "initrd.img-4.19.0-9-amd64" being the filename of the initrd.
- In terminal enter "sudo ls -l '/media/debian-installation/boot'". Note the filename of the vmlinuz file (eg: vmlinuz-4.19.0-9-amd64).
- In terminal enter "sudo cp '/media/debian-installation/boot/vmlinuz-4.19.0-9-amd64' '/media/system-image/OSP/boot/vmlinuz'". "vmlinuz-4.19.0-9-amd64" being the filename of the vmlinuz.
- In terminal enter "sudo umount '/media/debian-installation'".
- In terminal enter "sudo umount '/media/debian-installation'".
- In terminal enter "sudo rmdir '/media/debian-installation'".
- In terminal enter "sudo mkdir '/media/system-image/OSP/boot/grub'".
- In terminal enter "sudo nano '/media/system-image/OSP/boot/grub/grub.cfg'".
- In Nano enter:
[quote]
#Graphics
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
insmod all_video
insmod gfxterm
set gfxmode=auto

#Theme
set color_normal=white/black
set color_highlight=black/white
set menu_color_normal=white/black
set menu_color_highlight=black/white

#Menu Entries
menuentry "Debian (Frugal Rambooting)" {
    search --no-floppy --fs-uuid --set=root b23a39a1-a5b8-456e-a3d1-783e59907c0b
    insmod gzio
    insmod part_gpt
    insmod ext2
    linux    /boot/vmlinuz boot=live toram live-media-path=/ findiso=/rootfs.iso root=UUID=b23a39a1-a5b8-456e-a3d1-783e59907c0b ro quiet
    initrd    /boot/initrd.img
}
menuentry "Debian (Frugal)" {
    search --no-floppy --fs-uuid --set=root b23a39a1-a5b8-456e-a3d1-783e59907c0b
    insmod gzio
    insmod part_gpt
    insmod ext2
    linux    /boot/vmlinuz boot=live live-media-path=/ findiso=/rootfs.iso root=UUID=b23a39a1-a5b8-456e-a3d1-783e59907c0b ro quiet
    initrd    /boot/initrd.img
}
menuentry "Debian (Frugal Rambooting) [OLD]" {
    search --no-floppy --fs-uuid --set=root b23a39a1-a5b8-456e-a3d1-783e59907c0b
    insmod gzio
    insmod part_gpt
    insmod ext2
    linux    /boot/vmlinuz.old boot=live toram live-media-path=/ findiso=/rootfs.iso.old root=UUID=b23a39a1-a5b8-456e-a3d1-783e59907c0b ro quiet
    initrd    /boot/initrd.img.old
}
menuentry "Debian (Frugal) [OLD]" {
    search --no-floppy --fs-uuid --set=root b23a39a1-a5b8-456e-a3d1-783e59907c0b
    insmod gzio
    insmod part_gpt
    insmod ext2
    linux    /boot/vmlinuz.old boot=live live-media-path=/ findiso=/rootfs.iso.old root=UUID=b23a39a1-a5b8-456e-a3d1-783e59907c0b ro quiet
    initrd    /boot/initrd.img.old
}
menuentry "Debian (Flat)" {
    search --no-floppy --fs-uuid --set=root b23a39a1-a5b8-456e-a3d1-783e59907c0b
    insmod gzio
    insmod part_gpt
    insmod ext2
    linux    /vmlinuz root=UUID=b23a39a1-a5b8-456e-a3d1-783e59907c0b ro quiet
    initrd    /initrd.img
}
[/quote]
- In Nano press "control" + "X" to exit. When prompted to save enter "y".
- In terminal enter "sudo tar -cpf '/media/system-image/OSP.tar' -C '/media/system-image/OSP' 'boot' 'rootfs.iso'".
- In terminal enter "sudo rm -r '/media/system-image/OSP'".
- In terminal enter "cd '/media/system-image' && sudo zip -r 'system-image.zip' 'OSP.tar' && cd -".
- In terminal enter "sudo rm '/media/system-image/OSP.tar'".
- Logoff the Debian live media. The system image is finished being created. You can move it where ever you want.

Install a System Image (UEFI):
- Login as Administrator on the Debian installation.
- If it isn't already connected, connect the device which the Debian system image will be installed on. All existing content on this device is going to be erased during the installation.
- In terminal enter "lsblk -a -p", find the device which the Debian system image will be installed on, and note the device path (eg: "/dev/sdc").
- In terminal enter "sudo sgdisk --zap-all '/dev/sdc'".
- In terminal enter "sudo sgdisk -g '/dev/sdc'".
- In terminal enter "sudo sgdisk -n 1:0:+128M '/dev/sdc'". Replace "128" with the size in Mebibytes you want the ESP (EFI System Partition) to be. If you don't what size to use, keep it at the standard 128.
- In terminal enter "sudo mkfs -t vfat '/dev/sdc1'". Replace "/dev/sdc1" with the device partition created in the last step (eg: If the drive used was /dev/sdc, then the partition is /dev/sdc1).
- In terminal enter "sudo sgdisk -n 2:0:+20G '/dev/sdc'". Replace "20" with the size in Gibibytes you want the OSP (Operating System Partition) to be. How large you make it depends on the size of your system image, and how large the device being installed to is. Keep in mind you'll want minimum about twice the size of the system image, so you have room for it, and an older version of it.
- In terminal enter "sudo mkfs -t ext4 '/dev/sdc2'". Replace "/dev/sdc2" with the device partition created in the previous step (eg: If the drive used was /dev/sdc then the partition is /dev/sdc2).
- In terminal enter "sudo sgdisk -n 3:0:+20G '/dev/sdc'". Replace "20" with the size in Gigabytes you want for an empty partition. This partition will be used for housing a flat-install on a temporary basis for creating updated system images. The rest of the time it will be empty. How large you make it depends on the size of your extracted system image, and how large the device being installed to is.
- In terminal type "sudo mkfs -t ext4 '/dev/sdc3'". Replace "/dev/sdc3" with the previously created partition (eg: if the drive used was /dev/sdc then the partition is /dev/sdc3).
- In terminal enter "lsblk -a -p", find the OSP, and note the device path (eg: "/dev/sdc2").
- In terminal enter "sudo mkdir '/media/system-osp'".
- In terminal enter "sudo mount '/dev/sdc2' '/media/system-osp'".
- In terminal enter "lsblk -a -p", find the drive where you saved the system-image, and note the device path (eg: "/dev/sdb1").
- In terminal enter "sudo mkdir '/media/system-image'".
- In terminal enter "sudo mount '/dev/sdb1' '/media/system-image'".
- In terminal enter "sudo unzip -p '/media/system-image/system-image.zip' 'OSP.tar' | sudo tar -xpf - -C '/media/system-osp'".
- In terminal enter "sudo blkid". Note the filesystem UUID, labelled as "UUID" (eg: "ebf37fb3-2a8c-40ad-9896-f248ae062174") for the OSP (eg: "/dev/sdc2").
- In terminal enter "sudo sed -i 's/b23a39a1-a5b8-456e-a3d1-783e59907c0b/ebf37fb3-2a8c-40ad-9896-f248ae062174/g' '/media/system-osp/boot/grub/grub.cfg'". Replace "ebf37fb3-2a8c-40ad-9896-f248ae062174" with the previously noted UUID of the OSP.
- In terminal enter "sudo mkdir '/media/system-esp'".
- In terminal enter "sudo blkid". Find the ESP, and note the device path (eg: "/dev/sdc1").
- In terminal enter "sudo mount '/dev/sdc1' '/media/system-esp'".
- In terminal enter "sudo grub-install --efi-directory='/media/system-esp' --uefi-secure-boot '/dev/sdc' --boot-directory='/media/system-osp/boot' --bootloader-id='Debian Compressed Frugal' --removable". Substitute '/dev/sdc' for the device being installed to.
- In terminal enter "sudo umount '/media/system-osp'.
- In terminal enter "sudo rmdir '/media/system-osp'.
- In terminal enter "sudo umount '/media/system-esp'.
- In terminal enter "sudo rmdir '/media/system-esp'.
- In terminal enter "sudo umount '/media/system-image'.
- In terminal enter "sudo rmdir '/media/system-image'.

Install a System Image (BIOS):
- Login as Administrator on the Debian installation.
- In terminal enter "sudo apt update".
- In terminal enter "sudo apt install parted".
- If it isn't already connected, connect the device which the Debian system image will be installed on. All existing content on this device is going to be erased during the installation.
- In terminal enter "lsblk -a -p", find the device which the Debian system image will be installed on, and note the device path (eg: "/dev/sdc").
- In terminal enter "sudo parted -s '/dev/sdc' mklabel msdos".
- In terminal enter "sudo parted -s -a optimal '/dev/sdc' mkpart primary ext4 0% 20GiB".
- In terminal enter "sudo mkfs -t ext4 '/dev/sdc1'". Replace "/dev/sdc1" with the device partition created in the previous step (eg: If the drive used was /dev/sdc then the partition is /dev/sdc1).
- In terminal enter "sudo parted -s '/dev/sdc' set 1 boot on".
- In terminal enter "sudo parted -s -a optimal '/dev/sdc' mkpart primary ext4 20GiB 40GiB".
- In terminal enter "sudo mkfs -t ext4 '/dev/sdc2'". Replace "/dev/sdc2" (eg: If the drive used was /dev/sdc then the partition is /dev/sdc2).
- In terminal enter "lsblk -a -p", find the OSP, and note the device path (eg: "/dev/sdc1").
- In terminal enter "sudo mkdir '/media/system-osp'".
- In terminal enter "sudo mount '/dev/sdc1' '/media/system-osp'".
- In terminal enter "lsblk -a -p", find the drive where you saved the system-image, and note the device path (eg: "/dev/sdb1").
- In terminal enter "sudo mkdir '/media/system-image'".
- In terminal enter "sudo mount '/dev/sdb1' '/media/system-image'".
- In terminal enter "sudo unzip -p '/media/system-image/system-image.zip' 'OSP.tar' | sudo tar -xpf - -C '/media/system-osp'".
- In terminal enter "sudo blkid". Note the filesystem UUID, labelled as "UUID" (eg: "8a9577b5-3fcd-4cb1-bfec-5fc658a4833c") for the OSP (eg: "/dev/sdc1").
- In terminal enter "sudo sed -i 's/ebf37fb3-2a8c-40ad-9896-f248ae062174/8a9577b5-3fcd-4cb1-bfec-5fc658a4833c/g' '/media/system-osp/boot/grub/grub.cfg'". Replace "8a9577b5-3fcd-4cb1-bfec-5fc658a4833c" with the previously noted UUID of the OSP.
- In terminal enter "sudo sed -i '2s/insmod efi_gop/#insmod efi_gop/g' '/media/system-osp/boot/grub/grub.cfg'".
- In terminal enter "sudo sed -i '3s/insmod efi_uga/#insmod efi_uga/g' '/media/system-osp/boot/grub/grub.cfg'".
- In terminal enter "sudo sed -i 's/insmod part_gpt/insmod part_msdos/g' '/media/system-osp/boot/grub/grub.cfg'".
- In terminal enter "sudo blkid". Note the device path the system is installed on (eg: "/dev/sdc", not a specific partition!).
- In terminal enter "sudo apt update".
- In terminal enter "sudo apt install grub-pc-bin". This adds support for installing Grub2 on BIOS/MBR setups.
- In terminal enter "sudo grub-install --target=i386-pc --boot-directory='/media/system-osp/boot' --bootloader-id='Debian Compressed Frugal' '/dev/sdc'". Substitute '/dev/sdc' for the device being installed to.
- In terminal enter "sudo umount '/media/system-osp'.
- In terminal enter "sudo rmdir '/media/system-osp'.
- In terminal enter "sudo umount '/media/system-image'.
- In terminal enter "sudo rmdir '/media/system-image'.

Use an Installation:
- Upon booting from the drive, choose either "Debian (Frugal Rambooting)" to boot-to-ram, or "Debian (Frugal)" to boot from disk. If you have an old version present you can also use the "Debian (Frugal Rambooting) [OLD]", and "Debian (Frugal) [OLD]" entries to boot those. The "Debian (Flat)" entry will only work when there is a flat-install present (eg: when creating an updated system-image), it has been configured to point to the appropriate filesystem UUID, and the fstab is up to date.

Update an Installation:
- Boot the system using the "Debian (Frugal Rambooting)" entry.
- In terminal enter "lsblk -a -p". Note the device path for the empty partition for the flat-install (eg: "/dev/sdc3").
- In terminal enter "sudo mkfs -t ext4 '/dev/sdc3'". Replace "/dev/sdc3" with the previously noted device path.
- In terminal enter "sudo mkdir '/media/system-flat-install'".
- In terminal etner "sudo mount '/dev/sdc3' '/media/system-flat-install'".
- In terminal enter "lsblk -a -p". Note the device path for the system OSP partition (eg: "/dev/sdc2").
- In terminal enter "sudo mkdir '/media/system-osp'".
- In terminal enter "sudo mount '/dev/sdc2' '/media/system-osp'". Replace '/dev/sdc2' with the previously noted device path.
- In terminal enter "sudo mkdir '/media/system-iso'".
- In terminal enter "sudo mount '/media/system-osp/rootfs.iso' '/media/system-iso'".
- In terminal enter "sudo unsquashfs -f -d '/media/system-flat-install' '/media/system-iso/filesystem.squashfs'".
- In terminal enter "sudo umount '/media/system-iso'".
- In terminal enter "sudo rmdir '/media/system-iso'".
- In terminal enter "cat '/media/system-osp/boot/grub/grub.cfg' | head --lines=53 | tail --lines=1". Note the UUID after the word "root". This is the filesystem UUID being used by Grub for the system flat-install partition (eg: "ebf37fb3-2a8c-40ad-9896-f248ae062174").
- In terminal enter "sudo blkid". Note the current filesystem UUID (eg: "dc2ef2e2-a2a5-4f50-a551-11108a3881e4") of the flat-install partition (eg: "/dev/sdc3").
- In terminal enter "sudo sed -i '53s/ebf37fb3-2a8c-40ad-9896-f248ae062174/dc2ef2e2-a2a5-4f50-a551-11108a3881e4/' '/media/system-osp/boot/grub/grub.cfg'". Substitute the first UUID for the one currently used by Grub, and the second UUID for the one currently used by the flat-install partition's filesystem.
- In terminal enter "sudo sed -i '57s/ebf37fb3-2a8c-40ad-9896-f248ae062174/dc2ef2e2-a2a5-4f50-a551-11108a3881e4/' '/media/system-osp/boot/grub/grub.cfg'".
- In terminal enter "cat '/media/system-flat-install/etc/fstab' | head --lines=2 | tail --lines=1". Note the UUID after "UUID=". This is the filesystem UUID (eg: "a893cdad-bd69-4f85-982f-cd0ad518a22f") currently being used by fstab for the system flat-install root partition.
- In terminal enter "sudo blkid". Note the current filesystem UUID (eg: "dc2ef2e2-a2a5-4f50-a551-11108a3881e4") of the flat-install partition (eg: "/dev/sdc3").
- In terminal enter "sudo sed -i '2s/a893cdad-bd69-4f85-982f-cd0ad518a22f/dc2ef2e2-a2a5-4f50-a551-11108a3881e4/' '/media/system-flat-install/etc/fstab'". Substitute the first UUID for the one currently used by fstab, and the second UUID for the one currently used by the flat-install partition's filesystem.
- In terminal enter "sudo sed -i '2s/#UUID/UUID/' '/media/system-flat-install/etc/fstab'".
- In terminal enter "sudo umount '/media/system-osp'".
- In terminal enter "sudo rmdir '/media/system-osp'".
- In terminal enter "sudo umount '/media/system-flat-install'".
- In terminal enter "sudo rmdir '/media/system-flat-install'".
- Reboot.
- Choose the "Debian (Flat)" menu entry at boot. This will boot up the flat-install.
- Login, and make any desired changes (eg: system updates, software installation, program preferences, etc).
- In terminal enter "lsblk -a -p". Note the device path for the system OSP partition (eg: "/dev/sdc2").
- In terminal enter "sudo mkdir '/media/system-osp'".
- In terminal enter "sudo mount '/dev/sdc2' '/media/system-osp'". Replace '/dev/sdc2' with the previously noted device path.
- In terminal enter "sudo mv '/media/system-osp/boot/initrd.img' '/media/system-osp/boot/initrd.img.old'".
- In terminal enter "sudo mv '/media/system-osp/boot/vmlinuz' '/media/system-osp/boot/vmlinuz.old'".
- In terminal enter "sudo mv '/media/system-osp/rootfs.iso' '/media/system-osp/rootfs.iso.old'".
- In terminal enter "sudo umount '/media/system-osp'".
- In terminal enter "sudo rmdir '/media/system-osp'".
- Reboot.
- Chose the "Debian (Frugal Rambooting) [Old]" menu entry at boot. This will boot up the old system.
- Login.
- In terminal enter "lsblk -a -p". Note the device path for the system OSP partition (eg: "/dev/sdc2").
- In terminal enter "sudo mkdir '/media/system-osp'".
- In terminal enter "sudo mount '/dev/sdc2' '/media/system-osp'". Replace '/dev/sdc2' with the previously noted device path.
- In terminal enter "lsblk -a -p". Note the device path for the empty partition used for the flat-install (eg: "/dev/sdc3").
- In terminal enter "sudo mkdir '/media/system-flat-install'".
- In terminal etner "sudo mount '/dev/sdc3' '/media/system-flat-install'". Replace "/dev/sdc3" with the previously noted device path.
- In terminal enter "sudo sed -i '2s/UUID/#UUID/' '/media/system-flat-install/etc/fstab'".
- In terminal enter "sudo mksquashfs '/media/system-flat-install' '/media/system-osp/filesystem.squashfs'".
- In terminal enter "cd '/media/system-osp' && sudo xorriso -dev '/media/system-osp/rootfs.iso' -add 'filesystem.squashfs' && cd -".
- In terminal enter "sudo rm '/media/system-osp/filesystem.squashfs'".
- In terminal enter "sudo ls -l '/media/system-flat-install/boot'". Note the filename of the initrd file (eg: initrd.img-4.19.0-9-amd64).
- In terminal enter "sudo cp '/media/system-flat-install/boot/initrd.img-4.19.0-9-amd64' '/media/system-osp/boot/initrd.img'". "initrd.img-4.19.0-9-amd64" being the filename of the initrd.
- In terminal enter "sudo ls -l '/media/system-flat-install/boot'". Note the filename of the vmlinuz file (eg: vmlinuz-4.19.0-9-amd64).
- In terminal enter "sudo cp '/media/system-flat-install/boot/vmlinuz-4.19.0-9-amd64' '/media/system-osp/boot/vmlinuz'". "vmlinuz-4.19.0-9-amd64" being the filename of the vmlinuz.
- In terminal enter "sudo umount '/media/system-osp'".
- In terminal enter "sudo rmdir '/media/system-osp'".
- In terminal enter "sudo umount '/media/system-flat-install'".
- In terminal enter "sudo rmdir '/media/system-flat-install'".
- Reboot.
- Chose the "Debian (Frugal Rambooting)" menu entry at boot. This will boot up the new system.
- Login.
- In terminal enter "lsblk -a -p". Note the device path for the empty partition for the flat-install (eg: "/dev/sdc3").
- In terminal enter "sudo mkfs -t ext4 '/dev/sdc3'". Replace "/dev/sdc3" with the previously noted device path. This will delete the flat-install, and make it an empty partition again.

Notes:
- Tested with Debian 10.4.0 XFCE AMD64.
- These steps were updated from an older tutorial.
- Do NOT blatently run commands. Some expect you to substitute values!
- On the Debian live media the administrative account is "user", and the password is "live".
- The steps do not setup the installation with a swap partition (or file), because on many modern systems it isn't needed, and causes unwanted writes. However, this means you won't be able to "suspend" or "hibernate" the system. You can add one by creating one (eg: If using /dev/sdc, "sudo sgdisk -n 4:0:+16G '/dev/sdc'", then "sudo mkswap '/dev/sdc4'"), and then adding an entry for it in fstab when updating the system-image. A swap partition should be atleast the same size as your RAM (so that it can store all the RAM data). If your system has a moderate amount of RAM you may want to use double that size for the SWAP partition. If your system very little RAM you may want to use quadruple the amount of SWAP.
- Live-boot does not work well when multiple squashfs files exist on a device. It has a habbit (depending on the name) of loading multiple squashfs files at once. As a work around, these steps pack the squashfs files into ISO's which allows specifying the exact file to load.
- Live-boot does not support live-media-path's with periods, or underscores when booting to ram. Instead it will boot.
- The temporary flat-install created during updating must have the fstab configured or the xserver will fail at login, and startx will not be able to start it.
- The frugal install will not have a background image displayed in Grub, because this can't be configured in grub.cfg.
- When using "grub-install" in these steps "--bootloader-id='Debian Compressed Frugal'" is specified. Normally this sets the folder name used on the ESP (eg: "/EFI/Debian Compressed Frugal"), and the entry name used in the UEFI (eg: "Debian Compressed Frugal"). In these steps "--removable" is also used, which overrules the ID specification, and makes grub install to /EFI/BOOT on the ESP. It will also use the name "BOOTX64.EFI" instead of "grubx64.efi". UEFIs typically know to check ESPs for /EFI/BOOT/BOOTX64.EFI, which is why you can boot that boot manager when specifying to boot from a device entry. UEFIs typically don't know to search other directories (eg: "/EFI/Debian Compressed Frugal"), which means you can only boot the boot-manager if you have an entry (which grub would create) in your UEFI pointing to that EFI file. Because these steps use "--removable" there will be no entry; you will need to boot from the device entry instead.
- These notes don't take into consideration BIOS system, except for the steps on installing the system-image on a BIOS machine. Those steps don't take into consideration BIOS systems using GPT (GUID Partition Table).
- In these steps a Grub boot folder is created on the OSP of the frugal install. Alternatively "--boot-directory=" could have been used to place the grub folder on the ESP, or a seperate boot partition. You can also create a grub folder containing a grub.cfg that just points to another grub.cfg on another partition.
- "live-config" isn't installed, because it isn't needed for this type of installation. It's used for creating frugal installations with modified configs like: creating a new user, changing the hostname, auto-logins.
- These steps create a compressed squashfs using mksquashfs's default settings. Performance systems with ample RAM, and diskspace may wish to disable compression.

Authors:James Daniel Marrs Ritchey
License:Ritchey Permissive License v10
Ritchey Permissive License v10:

Subject to the terms of this license, any legal entity who receives material licensed with this license is hereby granted otherwise irrevocable royalty-free permission to do anything with the material. Permissions are revoked permanently from the legal entity upon breach of this license. The material is provided as it is, without implied fitness for any purpose. All obligations to the legal entity (including warranties, and guarantees) are disclaimed by all parties involved. The authors, copyright holders, patent holders, and providers of the material will not be held liable for anything (including damages, or liabilities) in connection with the material. The legal entity is responsible for any consequences of sharing the material (including damages, or liabilities), and takes on all obligations (including warranties, and guarantees) to recipients. The material must entirely remain solely under this license. This license is to be upheld in Canada, subject to the laws of Canada, as they were on April 21, 2019. The legal entity must be capable of being bound to all parts of this license, and by using the material agrees to be. If any part of this license is unenforceable the license cannot be accepted. The license text is provided under these terms.

Advertisment

advertisement
Copyright © James Daniel Marrs Ritchey.

Siteviews