Subcategories

  • Technical help directly related to FOG.
    9k Topics
    85k Posts
    george1421G

    @chevengur I can tell you how I would go about figuring this this.

    Take a computer that represents the finished design of how your disk are laid out. Schedule a deployment to that computer, but before you hit the schedule task button, tick the debug checkbox then schedule the deployment. No worries as long as you pick debug mode since it will never get to the deployment phase. Now pxe boot the target computer, it should boot into the FOS linux console. After a few screens of text you need to clear with the enter key you will be dropped to the FOS linux command prompt. From there issue, the efibootmgr command with no parameters. It should print something similar to below (note this is from my laptop) thunder@lightning:~$ efibootmgr BootCurrent: 0005 Timeout: 2 seconds BootOrder: 0005,0004,0000,0001,0002,0003 Boot0000* UEFI BC511 NVMe SK hynix 256GB SN9BN62231050BJ2H 1 HD(1,GPT,d00df89f-1edb-44f8-b325-245b607b2321,0x800,0x100000)/File(\EFI\Boot\BootX64.efi){auto_created_boot_option} Boot0001* ONBOARD NIC (IPV4) PciRoot(0x0)/Pci(0x1f,0x6)/MAC(b44,0)/IPv4(0.0.0.00.0.0.0,0,0){auto_created_boot_option} Boot0002* ONBOARD NIC (IPV6) PciRoot(0x0)/Pci(0x1f,0x6)/MAC(b440)/IPv6([::]:<->[::]:,0,0){auto_created_boot_option} Boot0003* UEFI HTTPs Boot (MAC:B445065BDC4B) PciRoot(0x0)/Pci(0x1f,0x6)/MAC(b445065bdc4b,0)/IPv4(0.0.0.00.0.0.0,0,0)/Uri(){auto_created_boot_option} Boot0004* debian HD(1,GPT,d00df89f-1edb-07b2321,0x800,0x100000)/File(\EFI\debian\shimx64.efi) Boot0005* Ubuntu HD(1,GPT,d00df89f-1edb-607b2321,0x800,0x100000)/File(\EFI\ubuntu\shimx64.efi)

    You can see from this the default BootOrder is 5, 4, 0, 1, 2, 3 this lists the different boot managers found by the firmware.

    So it will boot ubuntu first, then debian, the hard drive, onboard nic v4, onboard nic v6, http boot.

    Now lets say I wanted debian to boot first I might issue the command.
    efibootmgr -o 4,5, 0,1, 2, 3

    Now reboot the computer with the reboot command see if it changes the boot order specific to your options.

    After you get this worked out, you will need to clean up this deploy task on your fog server so it doesn’t do this moving forward. But for debugging as long as the fos engine doesn’t complete, every time you reboot the computer will enter the FOS debug console. This helps with debugging and tweaking your post install script.

  • Problems with specific computer models.
    708 Topics
    8k Posts
    A

    @FlorianLenz I did all these steps and it worked with normal USB adapters, but with USB-C-Ethernet adapters does not work, could you help me out?
    (It could be important to know this type-c adapter have 1 HDMI port and 3 normal usb ports)

  • Technical help related to a Windows Problem.
    1k Topics
    8k Posts
    A

    @Sebastian-Roth while poking round in the BIOS on some new Dell machines I did find an option called “Force PXE on next Boot” - https://www.dell.com/support/manuals/en-uk/dell-cmnd-config-v3.0/dell_command_configure_cli-v3/-forcepxeonnextboot?guid=guid-85c17652-4a18-4538-8665-e6b3e777d649&lang=en-us

    You have to have the dell tools installed, but this would be a possible option.

    I know with my current machines when a BIOS update happens it keeps overwriting the boot order so my PXE boot doesn’t happen. Quite annoying!

    I don’t know how I’d go about making the FOG Client execute this command before a task reboot though.

  • Technical help related to a Linux Problem.

    726 Topics
    6k Posts
    george1421G

    @JasonNaughton Looking at the code the error would indicate that the target computer can’t reach the fog server.

    https://github.com/FOGProject/fos/blob/8893d32bfb702dcf7b8f5427ccd6748fac15df17/Buildroot/board/FOG/FOS/rootfs_overlay/etc/init.d/S40network#L64

    What I want you to do is to pxe boot the computer into debug mode. Schedule a deployment to this computer but before you hit the schedule task button tick the debug checkbox. Now pxe boot the target computer, you will still get the errors but you will be dropped to the fos linux command prompt.

    run this command ip a s that should show if your network interface has an IP address. If not then issue this command.
    /sbin/udhcpc -i enp128s31f6 --now where enp128s31f6 is the name I gleaned from your screen shot that appears to have picked up an IP address. See if it gets an IP address now. See if you can ping the fog server’s IP address.

    The ‘checker’ script makes this call to verify your fog server is reachable.
    curl -Ikfso /dev/null "${web}"/index.php --connect-timeout 5 replace the entire ${web} with the IP address of your fog server. See if that returns a value.

    Finally search the system messages to see if there is something related to firmware.
    grep -i -e firm /var/log/syslog I think syslog is the right file, if it returns nothing try /var/log/messages One error could be the network adapter needs a specific firmware for the network adapter to communicate. That firmware may need to be added to the linux kernel.

  • Technical help related to a Mac Problem.

    80 Topics
    942 Posts
    B

    Hello everyone,

    As I work at a secondary school, I was able to get hold of some Catalina iMacs (iMac 14.3).
    I already use FOG to deploy Windows and Linux images on PCs.

    I would like to deploy a LinuxMint image on these iMacs.

    However, I am unable to boot into PXE on them with FOG, and I do not know what is wrong.

    I modified my DHCP server as follows:

    ## FOG class "UEFI-32-1" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00006"; filename "i386-efi/ipxe.efi"; } class "UEFI-32-2" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00002"; filename "i386-efi/ipxe.efi"; } class "UEFI-64-1" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00007"; filename "ipxe.efi"; } class "UEFI-64-2" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00008"; filename "ipxe.efi"; } class "UEFI-64-3" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00009"; filename "ipxe.efi"; } class "Apple-Intel-Netboot" { match if substring (option vendor-class-identifier, 0, 14) = "AAPLBSDPC/i386"; option dhcp-parameter-request-list 1,3,17,43,60; if (option dhcp-message-type = 8) { option vendor-class-identifier "AAPLBSDPC"; if (substring(option vendor-encapsulated-options, 0, 3) = 01:01:01) { # BSDP List option vendor-encapsulated-options 01:01:01:04:02:80:00:07:04:81:00:05:2a:09:0D:81:00:05:2a:08:69:50:58:45:2d:46:4f:47; } elsif (substring(option vendor-encapsulated-options, 0, 3) = 01:01:02) { #BSDP Select option vendor-encapsulated-options 01:01:02:08:04:81:00:05:2a:82:0a:4e:65:74:42:6f:6f:74:30:30:31; # filename "i386-efi/ipxe.efi"; filename "snp.efi"; } } } class "Legacy" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00000"; filename "undionly.kkpxe"; } ### END FOG

    I tested ipxe.efi in 64-bit and 32-bit, as well as snp.efi, but it still doesn’t work. I get some kind of spinning planet when I try to boot.

    I admit I don’t fully understand the documentation page: https://wiki.fogproject.org/wiki/index.php/FOG_on_a_MAC

    Thanks in advance!

  • General Developer questions relating to FOG.
    678 Topics
    5k Posts
    S

    Hello!
    I’m new to using FOG and currently having the issue that after a deployment, windows will change the boot order to be first in the boot priority list.
    I’ve done some reading and someone published a FogAPI command to Set-WinToBootToPxe, however I am just not sure how to do this.

    If there are any other solutions for this problem please let me know!
    Cheers.

140

Online

12.4k

Users

17.4k

Topics

155.9k

Posts