Seite 1 von 1
[gelöst] gub auf gub-custom.cfg verlinken
Verfasst: 13 Okt 2023, 11:32
von Markus1982
Hallo Zusammen,
mit dem heutigen update wurde ja auch was an grub geändert.
Man soll jetzt seine Änderungen in der gub-custom.cfg tätigen.
Zitat:
Sollten Sie Änderungen gemacht haben, können Sie diese in die grub-custom.cfg überführen
Wie bring ich opsi jetzt dazu das er auch diese grub-custom.cfg verwendet.
Ich habe nicht viel geändert aber es fehlt einfach local-boot somit fängt er immer gleich an das opsi-Boot image zu laden obwohl ich den client nicht auf setup gestellt habe.
Gruß
Markus
Re: gub auf gub-custom.cfg verlinken
Verfasst: 13 Okt 2023, 12:45
von ThomasT
Hallo Markus,
das sollte auch ohne Anpassungen an der grub-cfg so sein, also dass Boot von Platte der default ist, wenn kein Produkt auf Setup steht.
Welche Version hat denn dein opsi-linux-bootimage?
Welche Dateien fragt der Client denn beim boot an?
Re: gub auf gub-custom.cfg verlinken
Verfasst: 13 Okt 2023, 13:51
von Markus1982
Hallo
er ruft grub.cfg
und da fehlt seit heute local boot
das habe ich jetzt hinzugefügt
Das wird aber ja bei jeden update wieder überschrieben
Boot image
ii opsi-linux-bootimage 20230912-1 all opsi bootimage for netboot tasks.
Welche Dateien fragt der Client denn beim boot an?
Okt 13 10:08:27 i08opsi in.tftpd[2654]: RRQ from ip filename grub/grub.cfg
Okt 13 10:08:28 i08opsi in.tftpd[2655]: RRQ from ip filename linux/pxelinux.cfg/01-90-1b-0e-d9-e0-b5
Okt 13 10:08:29 i08opsi in.tftpd[2656]: RRQ from ip filename linux/miniroot-x64
Okt 13 10:09:15 i08opsi in.tftpd[2760]: RRQ from ip filename linux/install-x64
Re: gub auf gub-custom.cfg verlinken
Verfasst: 13 Okt 2023, 16:45
von m.radtke
Hi,
die Einträge in der grub-custom.cfg können über den vorletzten Eintrag im Grub Auswahlmenü geladen werden.
Ich habe mir eben einen UEFI Client, je mit und ohne OS geschnappt und den an unserem opsi 4.2 Server gestartet. In beiden Fällen existiert der localboot Eintrag.
Wie sieht denn deine grub.cfg aus, nur um Sicher zu gehen?
Es wird nach Windows Startdateien gesucht und wenn sie gefunden werden, sollen diese gestartet werden. Wird keine der gesuchten Dateien gefunden, gibt es einen generischen Eintrag für den Localboot.
Bitte poste auch die komplette Absfolge der Anfragen am TFTP. Eigentlich sollte der Kernel vor miniroot angefragt werden.
Hier ein Auszug wie die Kaskade für den grub.cfg aussehen sollte
Code: Alles auswählen
set timeout=3
set theme=(memdisk)/theme/theme.txt
set gfxmode=1280x720
set gfxpayload=keep
terminal_output gfxterm
background_image (memdisk)/theme/background.png
set net_pxe_mac=$net_default_mac
regexp --set=1:m1 --set=2:m2 --set=3:m3 --set=4:m4 --set=5:m5 --set=6:m6 '^([0-9a-f]{1,2})\:([0-9a-f]{1,2})\:([0-9a-f]{1,2})\:([0-9a-f]{1,2})\:([0-9a-f]{1,2})\:([0-9a-f]{1,2})' "$net_pxe_mac"
set mac=${m1}-${m2}-${m3}-${m4}-${m5}-${m6}
pipefile=${cmdpath}/01-${mac}
source "$pipefile"
if [ "$grub_platform" = "efi" ]; then
search --no-floppy --file --set=bootable_efi /EFI/MICROSOFT/BOOT/BOOTMGFW.EFI
if [ -n "${bootable_efi}" ]; then
menuentry "Local Disk" --class unknown {
set root="${bootable_efi}"
chainloader /EFI/MICROSOFT/BOOT/BOOTMGFW.EFI
boot
}
else
search --no-floppy --file --set=bootable_efi /EFI/BOOT/BOOTX64.EFI
if [ -n "${bootable_efi}" ]; then
menuentry "Local Disk" --class unknown {
set root="${bootable_efi}"
chainloader /EFI/BOOT/BOOTX64.EFI
boot
}
else
search --no-floppy --file --set=bootable_efi /efi/Boot/bootx64.efi
if [ -n "${bootable_efi}" ]; then
menuentry "Local Disk" --class unknown {
set root="${bootable_efi}"
chainloader /efi/Boot/bootx64.efi
boot
}
else
menuentry 'Local Disk' {
exit
}
fi
fi
fi
else
search --no-floppy --file --set=bootable_bios /Boot/BCD --hint hd0,msdos1
if [ -n "${bootable_bios}" ]; then
menuentry "Local Disk -- Windows" --class unknown {
set root="${bootable_bios}"
chainloader +1
boot
}
else
search --no-floppy --file --set=bootable_bios /boot/grub/grub.cfg
if [ -n "${bootable_bios}" ]; then
menuentry "Local Disk -- Linux" --class unknown {
configfile (${bootable_bios})/boot/grub/grub.cfg
}
else
menuentry 'Local Disk' {
exit
}
fi
fi
fi
menuentry 'Start opsi bootimage (x64) - standard' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0
initrd (pxe)/linux/miniroot-x64
}
menuentry 'Start opsi bootimage (x64) - acpi=off noapic' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0 acpi=off noapic
initrd (pxe)/linux/miniroot-x64
}
menuentry 'Start opsi bootimage (x64) - acpi=off noapic mem=2G' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0 acpi=off noapic mem=2G
initrd (pxe)/linux/miniroot-x64
}
menuentry 'Start opsi bootimage (x64) - modprobe.blacklist=intel_lpss_pci' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0 modprobe.blacklist=intel_lpss_pci
initrd (pxe)/linux/miniroot-x64
}
menuentry 'Start opsi bootimage (x64) - edit with <e> and then boot with <F10>' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0
initrd (pxe)/linux/miniroot-x64
}
menuentry 'Load custom boot menu' {
configfile (pxe)/grub/grub-custom.cfg
}
grub_platform
if [ "$grub_platform" = "efi" ]; then
menuentry 'UEFI Firmware Settings' {
fwsetup
}
fi
Re: gub auf gub-custom.cfg verlinken
Verfasst: 17 Okt 2023, 08:33
von Markus1982
Hallo,
sorry für die späte Anwort
Meine grub.cfg sieht genauso aus
Code: Alles auswählen
[set timeout=3
set theme=(memdisk)/theme/theme.txt
set gfxmode=1280x720
set gfxpayload=keep
terminal_output gfxterm
background_image (memdisk)/theme/background.png
set net_pxe_mac=$net_default_mac
regexp --set=1:m1 --set=2:m2 --set=3:m3 --set=4:m4 --set=5:m5 --set=6:m6 '^([0-9a-f]{1,2})\:([0-9a-f]{1,2})\:([0-9a-f]{1,2})\:([0-9a-f]{1,2})\:([0-9a-f]{1,2})\:([0-9a-f]{1,2})' "$net_pxe_mac"
set mac=${m1}-${m2}-${m3}-${m4}-${m5}-${m6}
pipefile=${cmdpath}/01-${mac}
source "$pipefile"
if [ "$grub_platform" = "efi" ]; then
search --no-floppy --file --set=bootable_efi /EFI/MICROSOFT/BOOT/BOOTMGFW.EFI
if [ -n "${bootable_efi}" ]; then
menuentry "Local Disk" --class unknown {
set root="${bootable_efi}"
chainloader /EFI/MICROSOFT/BOOT/BOOTMGFW.EFI
boot
}
else
search --no-floppy --file --set=bootable_efi /EFI/BOOT/BOOTX64.EFI
if [ -n "${bootable_efi}" ]; then
menuentry "Local Disk" --class unknown {
set root="${bootable_efi}"
chainloader /EFI/BOOT/BOOTX64.EFI
boot
}
else
search --no-floppy --file --set=bootable_efi /efi/Boot/bootx64.efi
if [ -n "${bootable_efi}" ]; then
menuentry "Local Disk" --class unknown {
set root="${bootable_efi}"
chainloader /efi/Boot/bootx64.efi
boot
}
else
menuentry 'Local Disk' {
exit
}
fi
fi
fi
else
search --no-floppy --file --set=bootable_bios /Boot/BCD --hint hd0,msdos1
if [ -n "${bootable_bios}" ]; then
menuentry "Local Disk -- Windows" --class unknown {
set root="${bootable_bios}"
chainloader +1
boot
}
else
search --no-floppy --file --set=bootable_bios /boot/grub/grub.cfg
if [ -n "${bootable_bios}" ]; then
menuentry "Local Disk -- Linux" --class unknown {
configfile (${bootable_bios})/boot/grub/grub.cfg
}
else
menuentry 'Local Disk' {
exit
}
fi
fi
fi
menuentry 'Start opsi bootimage (x64) - standard' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0 service=https://i08opsi.informatik.kit.edu:4447/rpc
initrd (pxe)/linux/miniroot-x64
}
menuentry 'Start opsi bootimage (x64) - acpi=off noapic' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0 service=https://i08opsi.informatik.kit.edu:4447/rpc acpi=off noapic
initrd (pxe)/linux/miniroot-x64
}
menuentry 'Start opsi bootimage (x64) - acpi=off noapic mem=2G' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0 service=https://i08opsi.informatik.kit.edu:4447/rpc acpi=off noapic mem=2G
initrd (pxe)/linux/miniroot-x64
}
menuentry 'Start opsi bootimage (x64) - modprobe.blacklist=intel_lpss_pci' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0 service=https://i08opsi.informatik.kit.edu:4447/rpc modprobe.blacklist=intel_lpss_pci
initrd (pxe)/linux/miniroot-x64
}
menuentry 'Start opsi bootimage (x64) - edit with <e> and then boot with <F10>' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0 service=https://i08opsi.informatik.kit.edu:4447/rpc
initrd (pxe)/linux/miniroot-x64
}
menuentry 'Load custom boot menu' {
configfile (pxe)/grub/grub-custom.cfg
}
grub_platform
if [ "$grub_platform" = "efi" ]; then
menuentry 'UEFI Firmware Settings' {
fwsetup
}
fi
nur taucht bei mir nicht im Menü local boot als erstes auf
(Windows ist installiert Client steht nicht auf setup )

- Menü ohne setup.jpg (448.08 KiB) 4273 mal betrachtet
local boot fehlt und somit lädt er den ersten Eintrage
Hier das Menü wenn der Client auf Setup steht
Das ist so ok und funktioniert wie vorher

- Menü client auf setup.jpg (472.73 KiB) 4273 mal betrachtet
Wenn ich das zwischen rein packe als erster Menü Eintrag dann lädt er Windows von der Platte wenn es installiert ist und wenn ich den client auf setup stelle dann installiert er Windows neu, wie früher auch
menuentry 'Local Disk' {
exit
}
Code: Alles auswählen
else
menuentry 'Local Disk' {
exit
}
fi
fi
fi
menuentry 'Local Disk' {
exit
}
menuentry 'Start opsi bootimage (x64) - standard' {
set gfxpayload=keep
linux (pxe)/linux/install-x64 initrd=miniroot-x64 video=vesa:ywrap,mtrr vga=791 quiet splash --no-log console=tty1 console=ttyS0 service=https://i08opsi.informatik.kit.edu:4447/rpc
initrd (pxe)/linux/miniroot-x64
}

- angepasste gub.cfg.jpg (328.87 KiB) 4273 mal betrachtet
Das ist die Ausgabe vom pxe boot wenn der client Netboot Produkt auf setup steht
journalctl -f -u opsi-tftpd-hpa
Code: Alles auswählen
Okt 17 08:05:40 i08opsi in.tftpd[2623]: RRQ from ip filename grub/grub.cfg
Okt 17 08:05:40 i08opsi in.tftpd[2624]: RRQ from ip filename linux/pxelinux.cfg/01-90-1b-0e-d9-e0-b5
Okt 17 08:06:43 i08opsi in.tftpd[2699]: RRQ from ip filename linux/miniroot-x64
Okt 17 08:07:29 i08opsi in.tftpd[2710]: RRQ from ip filename linux/install-x64
Ich habe heute auch das aktuelle bootimage gezogen das hat aber keine Änderung gebraucht
ii opsi-linux-bootimage 20231013-1 all opsi bootimage for netboot tasks.
zieht unser pxe Menü vielleicht die falsche Datei??
Gruß
Markus
Re: gub auf gub-custom.cfg verlinken
Verfasst: 17 Okt 2023, 09:47
von m.radtke
Hi Markus
also der Screenshot vom grub Auswahlmenü nicht gleich aus.
Die Farbgebung ist komisch, die sieht auf meinem Screenshot anders aus als bei Deinem.
AUßerdem fehlt da der Eintrag zum custom Menü und zum UEFI Firmware Setting, siehe mein Screenshot
Poste bitte den kompletten DHCP/TFTP Prozess aus dem syslog
Wie sieht der Inhalt in /tftpboot/linux/pxelinux.cfg aus? also komplett, ab der ersten Anfrage des Clients am Server
Welche Startdatei wird beim DHCP an den Client übergeben?
Habt ihr mehrere opsi Server im Netz? Zieht der Client vielleicht von einem anderen Server eine veraltete Config und Grub Binary?
Gruß
Mathias
Re: gub auf gub-custom.cfg verlinken
Verfasst: 17 Okt 2023, 11:21
von Markus1982
Hallo Mathias,
wir haben unser eigenes pxe Menü und verweisen dann nur auf den opsi Server.
Wir haben nur einen Server im Einsatz.
Ich vermutte das wir auf eine andere Startdatei verweisen.
Ich muss mein Kollegen mal fragen, der das PXE Menü bei uns betreut was er als Startdatei abfrägt.
wenn ich den Befehl absetze sehe ich auch ein symlink.
ls -l /tftpboot/linux/pxelinux.cfg
Code: Alles auswählen
-rw-rw-r-- 1 opsiconfd pcpatch 1027 Okt 17 08:27 default
-rw-rw-r-- 1 opsiconfd pcpatch 1049 Okt 17 08:27 default.20230418
-rw-rw-r-- 1 opsiconfd pcpatch 1027 Okt 17 08:27 default.menu
-rw-rw-r-- 1 opsiconfd pcpatch 1049 Okt 17 08:27 default.menu.20230418
-rw-rw-r-- 1 opsiconfd pcpatch 665 Okt 17 08:27 default.menu.opsi
-rw-rw-r-- 1 opsiconfd pcpatch 34 Okt 17 08:27 default.nomenu
-rw-rw-r-- 1 opsiconfd pcpatch 34 Okt 17 08:27 default.nomenu.opsi
-rw-rw-r-- 1 opsiconfd pcpatch 43 Okt 17 08:27 elilo.conf
-rw-rw-r-- 1 opsiconfd pcpatch 43 Okt 17 08:27 elilo.conf.opsi
-rw-rw-r-- 1 opsiconfd pcpatch 236130 Okt 13 13:41 elilo.efi
-rw-rw-r-- 1 opsiconfd pcpatch 956304 Apr 6 2023 grub.efi
lrwxrwxrwx 1 root root 16 Okt 17 08:27 grubx64.efi -> opsi-netboot.efi
-rw-rw-r-- 1 opsiconfd pcpatch 300 Okt 17 08:27 install3264
-rw-rw-r-- 1 opsiconfd pcpatch 299 Okt 17 08:27 install3264.opsi
-rw-rw-r-- 1 opsiconfd pcpatch 198 Okt 17 08:27 install-elilo-x64
-rw-rw-r-- 1 opsiconfd pcpatch 198 Okt 17 08:27 install-elilo-x64.opsi
-rw-rw-r-- 1 opsiconfd pcpatch 238 Okt 17 08:27 install-grub-x64
-rw-rw-r-- 1 opsiconfd pcpatch 238 Okt 17 08:27 install-grub-x64.opsi
-rw-rw-r-- 1 opsiconfd pcpatch 166 Jun 7 2021 install.opsi
-rw-rw-r-- 1 opsiconfd pcpatch 178 Okt 17 08:27 install-x64
-rw-rw-r-- 1 opsiconfd pcpatch 178 Okt 17 08:27 install-x64.opsi
-rw-rw-r-- 1 opsiconfd pcpatch 1193880 Okt 13 13:41 opsi-netboot.efi
-rw-rw-r-- 1 opsiconfd pcpatch 956304 Okt 13 13:41 shimx64.efi.signed
ich würde den Post jetzt einfach mal pausieren und mich melden wenn ich mehr Infos habe.
Ich vermute den Fehler bei uns.
Ich gebe aber auf jedenfall Rückmeldung.
Gruß
Markus
Re: gub auf gub-custom.cfg verlinken
Verfasst: 17 Okt 2023, 11:41
von m.radtke
Hallo Markus,
ich denke auch, das ihr erstmal bei euch schauen solltet.
WIr testen diese Dinge ja auch regelmäßig. Zudem haben wir diverse Server mit bestimmten Ständen an Paketen. An die habe ich zB einen komplett neuen UEFI Client gehöngt und komme auf das von mir bereits abgebildete Grub Menü.
Der Symling von grubx64.efi auf opsi-netboot.efi ist mit dem gestrigen Hotfix gekommen. Der ist so korrekt.
Gruß
Mathias
Re: gub auf gub-custom.cfg verlinken
Verfasst: 20 Okt 2023, 14:24
von Markus1982
Hallo Mathias,
der Beitrag kann gelöscht oder geschlossen werden.
Bei uns wird das pxe Menü nicht vom opsi-server ausgeliefert.
Wir holen uns die gub.cfg und übersetzen diese.
Was da gemacht wird ist für mich vudu
Da es ein update vom grub gab wurde das falsch übersetzt.
Somit lag der Fehler bei uns.
Tut mir leid für die Unannehmlichkeiten.
Gruß
Markus
Re: gub auf gub-custom.cfg verlinken
Verfasst: 20 Okt 2023, 14:27
von m.radtke
Hallo Markus,
vielen Dank für deine Rückmeldung.
Schönes Wochenede!
Gruß
Mathias