Skip to content

Instantly share code, notes, and snippets.

@LordVeovis
Last active June 11, 2024 22:00
Show Gist options
  • Select an option

  • Save LordVeovis/faa8d952c0ad784e33d49251bca17504 to your computer and use it in GitHub Desktop.

Select an option

Save LordVeovis/faa8d952c0ad784e33d49251bca17504 to your computer and use it in GitHub Desktop.
PXE v2
#!/bin/sh
tftp_root=/srv/tftp3/root
alias de='docker exec'
[ -d "$tftp_root" ] || mkdir -p "$tftp_root"
mkdir $tftp_root/isos
mkdir -p /mnt/iso
# download grub for ubuntu
# https://ubuntu.com/server/docs/install/netboot-amd64
mkdir -p $tftp_root/boot/ubuntu/grub
mkdir -p $tftp_root/grub/x86_64-efi
docker pull ubuntu
dc_ubuntu=$(docker run --rm -d --name ubuntu ubuntu bash -c "while true; do sleep 30; done")
de "$dc_ubuntu" apt-get update
de "$dc_ubuntu" apt-get upgrade -y
de "$dc_ubuntu" apt-get install cd-boot-images-amd64
de -u _apt -w /tmp "$dc_ubuntu" apt-get download shim-signed
de "$dc_ubuntu" bash -c "dpkg-deb --fsys-tarfile /tmp/shim-signed*deb | tar x ./usr/lib/shim/shimx64.efi.signed.latest -O" > "$tftp_root"/boot/ubuntu/bootx64.efi
de -u _apt -w /tmp "$dc_ubuntu" apt-get download grub-efi-amd64-signed
de "$dc_ubuntu" bash -c "dpkg-deb --fsys-tarfile /tmp/grub-efi-amd64-signed*deb | tar x ./usr/lib/grub/x86_64-efi-signed/grubnetx64.efi.signed -O" > "$tftp_root"/boot/ubuntu/grubx64.efi
de -u _apt -w /tmp "$dc_ubuntu" apt-get download grub-common
#de ubuntu bash -c "dpkg-deb --fsys-tarfile grub-common*deb | tar x ./usr/share/grub/ascii.pf2 -O" > "$tftp_root"/ascii.pf2
#de ubuntu bash -c "dpkg-deb --fsys-tarfile grub-common*deb | tar x ./usr/share/grub/euro.pf2 -O" > "$tftp_root"/euro.pf2
#de ubuntu bash -c "dpkg-deb --fsys-tarfile grub-common*deb | tar x ./usr/share/grub/unicode.pf2 -O" > "$tftp_root"/unicode.pf2
de "$dc_ubuntu" apt-get install -y grub-efi-amd64-bin
docker cp "$dc_ubuntu":/usr/lib/grub/x86_64-efi/command.lst "$tftp_root"/grub/x86_64-efi/
docker cp "$dc_ubuntu":/usr/lib/grub/x86_64-efi/fs.lst "$tftp_root"/grub/x86_64-efi/
docker cp "$dc_ubuntu":/usr/lib/grub/x86_64-efi/crypto.lst "$tftp_root"/grub/x86_64-efi/
docker cp "$dc_ubuntu":/usr/lib/grub/x86_64-efi/terminal.lst "$tftp_root"/grub/x86_64-efi/
#de "$dc_ubuntu" tar cv --exclude 'monolithic' /usr/lib/grub/x86_64-efi/{command,fs,crypto,terminal}.lst | tar xv --strip-components 3 -C "$tftp_root"/grub/x86_64-efi
de -e DEBIAN_FRONTEND=noninteractive "$dc_ubuntu" apt-get install -y console-setup grub-common
de "$dc_ubuntu" grub-kbdcomp -o /tmp/prout fr
docker kill "$dc_ubuntu"
[ -d "$tftp_root"/ubuntu/22.04 ] || mkdir -p "$tftp_root"/ubuntu/22.04
#wget -O "$tftp_root"/isos/ubuntu-22.04.2-live-server-amd64.iso https://releases.ubuntu.com/22.04.2/ubuntu-22.04.2-live-server-amd64.iso
wget -O "$tftp_root"/isos/ubuntu-22.04.4-live-server-amd64.iso http://ubuntu.mirrors.ovh.net/ubuntu-releases/jammy/ubuntu-22.04.4-live-server-amd64.iso
mount -t iso9660 -o loop,ro "$tftp_root"/isos/ubuntu-22.04.4-live-server-amd64.iso /mnt/iso/
cp /mnt/iso/casper/hwe-* "$tftp_root"/ubuntu/22.04/
umount /mnt/iso
local-service
dhcp-range=192.168.45.0,proxy,255.255.255.0
dhcp-vendorclass=BIOS,PXEClient:Arch:00000
dhcp-vendorclass=UEFI32,PXEClient:Arch:00006
dhcp-vendorclass=UEFI,PXEClient:Arch:00007
dhcp-vendorclass=UEFI64,PXEClient:Arch:00009
dhcp-boot=boot/ubuntu/bootx64.efi,,192.168.45.102
pxe-service=net:#ipxe,x86PC, "prout",1
log-dhcp
conf-dir=/etc/dnsmasq.d/,*.conf
set default="0"
set timeout=3
if loadfont unicode ; then
set gfxmode=auto
set locale_dir=$prefix/locale
set lang=en_US
fi
terminal_output gfxterm
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
#if background_color 44,0,0; then
# clear
#fi
function gfxmode {
set gfxpayload="${1}"
if [ "${1}" = "keep" ]; then
set vt_handoff=vt.handoff=7
else
set vt_handoff=
fi
}
set linux_gfx_mode=keep
export linux_gfx_mode
menuentry 'Ubuntu 22.04 - NUC13' --class ubuntu --class gnu-linux --class gnu --class os {
gfxmode $linux_gfx_mode
linuxefi /ubuntu/22.04/hwe-vmlinuz ip=dhcp netboot=nfs nfsroot=192.168.45.102:/mnt/ubuntu-22.04.4-live-server-amd64.iso $vt_handoff autoinstall ds=nocloud\;s=http://192.168.45.102/cloud-init/__dmi.system-serial-number__/ ---
initrdefi /ubuntu/22.04/hwe-initrd
}
# https://github.com/canonical/cloud-init/blob/main/doc/rtd/explanation/kernel-cmdline.rst
menuentry 'Ubuntu 22.04' --class ubuntu --class gnu-linux --class gnu --class os {
gfxmode $linux_gfx_mode
linuxefi /ubuntu/22.04/hwe-vmlinuz ip=dhcp url=http://192.168.45.137/isos/ubuntu-22.04.2-live-server-amd64.iso $vt_handoff language=fr country=FR de=nocloud-net root=/dev/ram0 ramdisk_size=1500000
initrdefi /ubuntu/22.04/hwe-initrd
}
menuentry 'ESXi 8.0u1a' --class esxi --class os {
chainloader /esxi/mboot.efi -V -c boot.cfg
}
menuentry 'Memtest86' {
chainloader /memtest/BOOTX64.efi
}
sv-alp-pxe:/etc# tree /srv/tftp3
/srv/tftp3
└── root
├── boot
│ └── ubuntu
│ ├── bootx64.efi
│ ├── grub
│ │ └── x86_64-efi
│ │ ├── command.lst
│ │ ├── crypto.lst
│ │ ├── fdt.lst
│ │ ├── fs.lst
│ │ ├── moddep.lst
│ │ ├── partmap.lst
│ │ ├── parttool.lst
│ │ ├── terminal.lst
│ │ └── video.lst
│ └── grubx64.efi
├── grub
│ ├── grub.cfg
│ └── x86_64-efi
│ ├── command.lst
│ ├── crypto.lst
│ ├── fs.lst
│ └── terminal.lst
├── isos
│ └── ubuntu-22.04.4-live-server-amd64.iso
└── ubuntu
└── 22.04
├── hwe-initrd
└── hwe-vmlinuz
#cloud-config
chpasswd:
expire: false
list:
- installer:$y$j9T$G9MSB.vH7GrAaDnut03tn.$e2bx5QBzKXDcHEFhfWNOOcHWzpH3ZqjTtPj9Xt5NFa4
ssh_authorized_keys:
- ssh-ed25519 AAAA..............TlWDD my-public-ssh-key
autoinstall:
apt:
disable_components: []
fallback: abort
geoip: true
preserve_sources_list: false
mirror-selection:
primary:
- uri: http://archive.ubuntu.com/ubuntu
security:
- uri: http://security.ubuntu.com/ubuntu
sources:
docker.list:
source: |
deb [arch=amd64] https://download.docker.com/linux/ubuntu $RELEASE stable
key: |
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
YT90qFF93M3v01BbxP+EIY2/9tiIPbrd
=0YYh
-----END PGP PUBLIC KEY BLOCK-----
#keyid: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
veeam.list:
source: |
deb [arch=amd64] http://repository.veeam.com/backup/linux/agent/dpkg/debian/public stable veeam
key: |
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
dUIoyfq2JAH/h3VJtcs9+73uTaJOSqsi
=U/5P
-----END PGP PUBLIC KEY BLOCK-----
codecs:
install: false
drivers:
install: false
identity:
hostname: bes
password: $y$j9T$G9MSB.vH7GrAaDnut03tn.$e2bx5QBzKXDcHEFhfWNOOcHWzpH3ZqjTtPj9Xt5NFa4
realname: Veovis
username: veovis
kernel: { flavor: hwe }
keyboard: { layout: fr, variant: oss }
locale: en_US.UTF-8
network:
version: 2
ethernets:
enp1s0:
critical: true
dhcp-identifier: mac
dhcp4: true
dhcp6: true
oem: { install: auto }
packages:
- dmidecode
- htop
- less
- vim
- docker-ce
- blksnap
- veeam
- tcpdump
- iputils-ping
- rsync
- nfs-common
refresh-installer:
update: true
source:
id: ubuntu-server-minimal
search_drivers: false
ssh:
allow-pw: false
authorized-keys:
- 'ssh-ed25519 AAAA..............TlWDD
my-public-ssh-key # ssh-import-id gh:LordVeovis'
install-server: true
storage:
swap: { size: 0 }
version: 1
config:
- type: disk
id: disk0
serial: CT1000MX500SSD1_0123456789AB
path: /dev/sda
ptable: gpt
name: ssd
wipe: superblock
grub_device: true
- type: partition
id: part-esp
device: disk0
number: 1
flag: boot
wipe: superblock
offset: 1M # not enough space for grub else
size: 1GB
grub_device: true
- type: partition
id: part-boot
device: disk0
number: 2
wipe: superblock
partition_type: bc13c2ff-59e6-4262-a352-b275fd6f7172
size: 1GB
- type: partition
id: part-root
device: disk0
number: 3
wipe: superblock
partition_type: 4f68bce3-e8cd-4db1-96e7-fbcaf984b709
size: 64GB
- type: partition
id: part-docker
device: disk0
number: 4
size: 64GB
- type: partition
id: part-srv
device: disk0
number: 5
wipe: superblock
partition_type: 3b8f8425-20e0-4f3b-907f-1a25a76f98e8
size: 737GB
- type: partition
id: part-swap
device: disk0
number: 6
flag: swap
size: 32GB
- id: format-esp
type: format
fstype: fat32
volume: part-esp
label: efi
- id: format-boot
type: format
fstype: ext4
volume: part-boot
label: boot
- id: format-root
type: format
fstype: ext4
volume: part-root
label: root
- id: format-docker
type: format
fstype: ext4
volume: part-docker
- id: format-srv
type: format
fstype: ext4
volume: part-srv
- id: format-swap
type: format
fstype: swap
volume: part-swap
- id: mount-boot
type: mount
path: /boot
device: format-boot
- id: mount-esp
type: mount
path: /boot/efi
device: format-esp
- id: mount-root
type: mount
path: /
device: format-root
- id: mount-docker
type: mount
path: /var/lib/docker
device: format-docker
- id: mount-srv
type: mount
path: /srv
device: format-srv
timezone: Europe/Paris
updates: all
late-commands:
- curtin in-target -- systemctl disable multipathd polkit packagekit
# - curtin in-target -- systemctl stop multipathd polkit packagekit
- curtin in-target -- apt-get remove --purge --assume-yes polkitd packagekit
- curtin in-target -- apt-get autoremove --assume-yes
- curtin in-target -- systemctl disable snapd.service snapd.socket snapd.seeded.service
# - curtin in-target -- apt-get autoremove -y --purge snapd
version: 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment