Version 2 vs 7
Version 2 vs 7
Edits
Edits
- Edit by keithzg, Version 7
- Mon, Oct 28 11:26 PM
- ·Ah that's not a valid link, https://cdimage.ubuntu.com/netboot/ just links to forum steps . . .
- Edit by keithzg, Version 2
- Jun 17 2023 12:06 AM
- ·Add chroot notes
Edit Older Version 2... | Edit Draft Version 7... |
Content Changes
Content Changes
= Ubuntu Server installs =
There used to be minimal installers and a python commandline utility to build KVM images. Not Enterprise enough, I suppose.
There is still a minimal ISO, hidden away:
* 20.04: http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/mini.iso
= Notes on chroot'ing from SystemRescueCD =
Say you mount like so:
```
sudo mount /dev/sda1 /mnt
sudo mount --bind /dev /mnt/dev &&
sudo mount --bind /dev/pts /mnt/dev/pts &&
sudo mount --bind /proc /mnt/proc &&
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
```
But then running `grub-install` returns
```
grub-install: warning: EFI variables cannot be set on this system.
grub-install: warning: You will have to complete the GRUB setup manually.
```
You just need to run `grub-install --removable` to avoid that, having bootstrapped into this via EFI USB boot was how I got there myself certainly as per https://superuser.com/a/1749282
= Ubuntu Server installs =
== Minimal installers ==
There used to be minimal installers and a python commandline utility to build KVM images. Not Enterprise enough, I suppose.
There is still a minimal ISO, hidden away:
* 20.04: http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/mini.iso
* 22.04: Follow https://www.server-world.info/en/note?os=Ubuntu_22.04 I guess?
While the upstream `virt-install` command can create VMs from ubuntu dist trees, there don't seem to be any for 24.04 Noble...
Official instructions for netbooting at at https://discourse.ubuntu.com/t/netbooting-the-live-server-installer/14510 lol
== Hide ESM rambling ==
`sudo touch /var/lib/update-notifier/hide-esm-in-motd` as per https://askubuntu.com/a/1509911/306954 (may also need to run `sudo rm /var/lib/update-notifier/updates-available`?).
= Notes on chroot'ing from SystemRescueCD or the like =
You can mount it like so:
```
lang=bash
# Mounting a classic MBR/Legacy install
sudo mount /dev/sda1 /mnt
# Or, mounting a UEFI install, you may find the first partition is actually an EFI partition rather than your root. So instead it's more like:
sudo mount /dev/sda2 /mnt
sudo mount /dev/sda1 /mnt/boot/efi
# Either way, then mount all the devices from the live session
sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
# And now chroot into a shell in your existing install
sudo chroot /mnt
```
But if you're fixing GRUB on an EFI system and have booted into SystemRescueCD (or a live Kubuntu USB or such) in UEFI mode you may then find that running `grub-install` returns
```
grub-install: warning: EFI variables cannot be set on this system.
grub-install: warning: You will have to complete the GRUB setup manually.
```
You just need to run `grub-install --removable` to avoid that, having bootstrapped into this via EFI USB boot was how I got there myself certainly as per https://superuser.com/a/1749282
= Hey I have an old 18.04 32-bit install and I wanna bitness crossgrade because reinstallers are cowards =
See https://wiki.debian.org/CrossGrading, which builds on https://wiki.debian.org/Multiarch/HOWTO, but I did specifically the following to go from i386 to amd64:
# `dpkg --add-architecture amd64`
# `apt update`
# `apt install linux-generic:amd64` (rather than `linux-image-amd64:amd64`)
# `reboot`
# `apt clean` to ensure laziness isn't punished later
# `apt install libbz2-1.0:amd64 libacl1:amd64 liblzma5:amd64 libgcrypt20:amd64 libsystemd0:amd64 libselinux1:amd64 libzstd1:amd64` for some additional packages needed before...
# `apt --download-only install dpkg:amd64 tar:amd64 apt:amd64 `
## and hey maybe also `apt --download-only install --reinstall dpkg:i386 tar:i386 apt:i386` if you want those around for when the attempted 64-bit install of the package manager fails
# `dpkg --install /var/cache/apt/archives/*_amd64.deb`
# `dpkg --print-architecture` should now return `amd64` (and, like, not crash or anything)
# `apt purge '?obsolete'` is recommended by the Debian instructions, didn't need it myself
# Now run:
## `apt-mark showauto | sed -n -e's/:i386$//p' > auto-package-list`
## `apt install $(dpkg -l | awk '$1 ~ /^.i/ && $2 ~ /:i386$/ { sub(":i386", ""); print $2 }')`
## `xargs apt-mark auto < auto-package-list`
# That results in a state where you now will need to run `apt --fix-broken install` and hopefully the gods are on your side---apparently they're on mine!
= Ubuntu Server installs =
== Minimal installers ==
There used to be minimal installers and a python commandline utility to build KVM images. Not Enterprise enough, I suppose.
There is still a minimal ISO, hidden away:
* 20.04: http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/mini.iso
* 22.04: Follow https://www.server-world.info/en/note?os=Ubuntu_22.04 I guess?
While the upstream `virt-install` command can create VMs from ubuntu dist trees, there don't seem to be any for 24.04 Noble...
Official instructions for netbooting at at https://discourse.ubuntu.com/t/netbooting-the-live-server-installer/14510 lol
== Hide ESM rambling ==
`sudo touch /var/lib/update-notifier/hide-esm-in-motd` as per https://askubuntu.com/a/1509911/306954 (may also need to run `sudo rm /var/lib/update-notifier/updates-available`?).
= Notes on chroot'ing from SystemRescueCD or the like =
Say youYou can mount it like so:
```
lang=bash
# Mounting a classic MBR/Legacy install
sudo mount /dev/sda1 /mnt
sudo mount --bind /dev /mnt/dev &&# Or, mounting a UEFI install, you may find the first partition is actually an EFI partition rather than your root. So instead it's more like:
sudo mount --bind /dev/ptssda2 /mnt/dev/pts &&t
sudo mount --bind /proc /mnt/proc &&/dev/sda1 /mnt/boot/efi
# Either way, then mount all the devices from the live session
sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
# And now chroot into a shell in your existing install
sudo chroot /mnt
```
But thenif you're fixing GRUB on an EFI system and have booted into SystemRescueCD (or a live Kubuntu USB or such) in UEFI mode you may then find that running `grub-install` returns
```
grub-install: warning: EFI variables cannot be set on this system.
grub-install: warning: You will have to complete the GRUB setup manually.
```
You just need to run `grub-install --removable` to avoid that, having bootstrapped into this via EFI USB boot was how I got there myself certainly as per https://superuser.com/a/1749282
= Hey I have an old 18.04 32-bit install and I wanna bitness crossgrade because reinstallers are cowards =
See https://wiki.debian.org/CrossGrading, which builds on https://wiki.debian.org/Multiarch/HOWTO, but I did specifically the following to go from i386 to amd64:
# `dpkg --add-architecture amd64`
# `apt update`
# `apt install linux-generic:amd64` (rather than `linux-image-amd64:amd64`)
# `reboot`
# `apt clean` to ensure laziness isn't punished later
# `apt install libbz2-1.0:amd64 libacl1:amd64 liblzma5:amd64 libgcrypt20:amd64 libsystemd0:amd64 libselinux1:amd64 libzstd1:amd64` for some additional packages needed before...
# `apt --download-only install dpkg:amd64 tar:amd64 apt:amd64 `
## and hey maybe also `apt --download-only install --reinstall dpkg:i386 tar:i386 apt:i386` if you want those around for when the attempted 64-bit install of the package manager fails
# `dpkg --install /var/cache/apt/archives/*_amd64.deb`
# `dpkg --print-architecture` should now return `amd64` (and, like, not crash or anything)
# `apt purge '?obsolete'` is recommended by the Debian instructions, didn't need it myself
# Now run:
## `apt-mark showauto | sed -n -e's/:i386$//p' > auto-package-list`
## `apt install $(dpkg -l | awk '$1 ~ /^.i/ && $2 ~ /:i386$/ { sub(":i386", ""); print $2 }')`
## `xargs apt-mark auto < auto-package-list`
# That results in a state where you now will need to run `apt --fix-broken install` and hopefully the gods are on your side---apparently they're on mine!