2023-10-26 02:03:32 +02:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
boot_dir='/boot/syslinux'
|
|
|
|
boot_dir="${boot_dir%/}"
|
|
|
|
boot_disk="$(findmnt --noheadings --target "${boot_dir}" --output 'SOURCE')" || {
|
|
|
|
printf -- '%s\n' \
|
|
|
|
'Unable to identify boot drive for '"'${boot_dir}'"' boot dir.' \
|
|
|
|
'Cowardly exiting. No syslinux files nor MBR were overwritten.'
|
|
|
|
exit 1
|
|
|
|
}
|
2023-10-26 02:20:51 +02:00
|
|
|
if [[ "$(<<<"${boot_fs}" wc -l)" -gt '1' ]]; then
|
2023-10-26 02:03:32 +02:00
|
|
|
printf -- '%s\n' \
|
|
|
|
'More than one drive mounted at '"'${boot_dir}'"' boot dir.' \
|
|
|
|
'Cowardly exiting. No syslinux files nor MBR were overwritten.'
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
find "${boot_dir}" -type f -iname '*.c32' -delete
|
|
|
|
rsync -a '/usr/lib/syslinux/bios/'*'.c32' "${boot_dir}"'/'
|
|
|
|
extlinux --install "${boot_dir}"
|
|
|
|
dd bs=440 count=1 conv=notrunc if='/usr/lib/syslinux/bios/mbr.bin' of="${boot_disk}"
|