• Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login
    1. Home
    2. MattT
    M
    • Profile
    • Following 0
    • Followers 0
    • Topics 0
    • Posts 4
    • Best 0
    • Controversial 0
    • Groups 0

    MattT

    @MattT

    0
    Reputation
    375
    Profile views
    4
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    MattT Unfollow Follow

    Latest posts made by MattT

    • RE: Surface Pro - PXE boot - Need to image for mass deployment

      Sorry for the long delay in responding

      image/deploy UEFI based hardware.

      This is not yet setup with fog other than having used an existing fog server as the platform for our testing. What we were able to accomplish is have dhcp provision the appropriate boot files for

      1. legacy bios based PXE booted hardware (what FOG currently does)
      2. 64 bit UEFI based hardware (Windows SurfacePro2) ,
      3. 32 bit UEFI based hardware (Dell Venu Pro )
        The DHCP setup in step one sets up the framework for net booting the correct scenario for each.

      You then need to setup the grub 2 kernels for 64bit and 32bit respectively. We used the – latest Clonezilla live distro and [SIZE=3]Ubuntu Mini Network Installer ISO as sources for the grub2 that we then created the bootx64.efi file from. [/SIZE]

      The grub2 network boot setup happens separately from fog and we have not yet tried to integrate fog into this other than for the existing Legacy PXE setup.

      We have been unable to get beyond a grub prompt on 32 bit hardware as we have been unable to find grub2 net.mod files that are needed to establish a network connection once the grub boot loader is loaded. It seems Ubuntu has stopped support for 32bit UEFI

      We have been on a bit of a hiatus from this after having gotten to this point and are discussing options for supporting the UEFI based hardware. We know we can at least netboot and get clonezilla to work to image these 64 bit machines and have been waiting and hoping to find others working on this but it seems that for most a one off approach is fine ie boot to USB and image each separately or the big shops with money buy the heavy metal solutions to rollout said machines

      We have identified our next goal to try and integrate a fog imaging solution with .33b but have not had much time to devote to this.

      posted in FOG Problems
      M
      MattT
    • RE: Surface Pro - PXE boot - Need to image for mass deployment

      Continued …

      [LIST]
      [*]4. Booting applications tested with Grub:
      [/LIST]

      [LIST]
      [*][SIZE=3]to make the grub bootloader more freindly you can setup a menu config file on the server that allows you to perform various functions like chainloading a linux kernel or even an iso[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3](this is like the menu in PXE that allows you to choose an option at boot time) we started by copying the /EFI/boot/ folder from the clonezilla-live saucey CD to the tftpboot folder on the server then editing the grub.cfg file. This file resides on the server and can be changed like any text file in linux, this makes it very easy to change options[/SIZE]
      [/LIST]

      [LIST]
      [*]vim /tftpboot/EFI/boot/grub.cfg
      [/LIST]

      [LIST]
      [*]set prefix=/EFI/boot/
      [/LIST]

      [LIST]
      [*]set default=“1”
      [/LIST]

      [LIST]
      [*]if loadfont $prefix/unicode.pf2; then
      [/LIST]

      [LIST]
      [*]set gfxmode=auto
      [/LIST]

      [LIST]
      [*]insmod efi_gop
      [/LIST]

      [LIST]
      [*]insmod efi_uga
      [/LIST]

      [LIST]
      [*]insmod gfxterm
      [/LIST]

      [LIST]
      [*]terminal_output gfxterm
      [/LIST]

      [LIST]
      [*]fi
      [/LIST]

      [LIST]
      [*]set timeout=“5”
      [/LIST]

      [LIST]
      [*]set hidden_timeout_quiet=false
      [/LIST]

      [LIST]
      [*]#if background_image $prefix/ocswp-grub2.png; then
      [/LIST]

      [LIST]
      [*]# set color_normal=black/black
      [/LIST]

      [LIST]
      [*]# set color_highlight=magenta/black
      [/LIST]

      [LIST]
      [*]#else
      [/LIST]

      [LIST]
      [*]# set color_normal=cyan/blue
      [/LIST]

      [LIST]
      [*]# set color_highlight=white/blue
      [/LIST]

      [LIST]
      [*]#fi
      [/LIST]

      [LIST]
      [*][SIZE=3][SIZE=4][COLOR=#0000dd][SIZE=4][COLOR=#0000dd]menuentry “Boot Local Drive([/COLOR][/SIZE][/COLOR][/SIZE][SIZE=4][COLOR=#dd0000][SIZE=4][COLOR=#dd0000]not working[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=4][COLOR=#0000dd][SIZE=4][COLOR=#0000dd])”{[/COLOR][/SIZE][/COLOR][/SIZE][/SIZE]
      [/LIST]

      [LIST]
      [*]set root=(hd0,1)
      [/LIST]

      [LIST]
      [*]chainloader +1
      [/LIST]

      [LIST]
      [*]}
      [/LIST]

      [LIST]
      [*][SIZE=3][SIZE=4][COLOR=#0000dd][SIZE=4][COLOR=#0000dd]menuentry “Ubuntu Mini Net installer ([/COLOR][/SIZE][/COLOR][/SIZE][SIZE=4][COLOR=#dd0000][SIZE=4][COLOR=#dd0000]works with MS SURFACE and Dell 3330 60mb[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=4][COLOR=#0000dd][SIZE=4][COLOR=#0000dd])”{[/COLOR][/SIZE][/COLOR][/SIZE][/SIZE]
      [/LIST]

      [LIST]
      [*]# search --set -f /vmlinuz
      [/LIST]

      [LIST]
      [*]linux /linux boot=live username=user config noswap edd=on nomodeset noeject locales= keyboard-layouts= irqpoll ip=10.10.10.1 vga=normal fetch=[url]http://10.10.10.1/efi.img[/url]
      [/LIST]

      [LIST]
      [*]initrd /initrd.gz
      [/LIST]

      [LIST]
      [*]}
      [/LIST]

      [LIST]
      [*][SIZE=3][SIZE=4][COLOR=#0000dd][SIZE=4][COLOR=#0000dd]menuentry “Clonezilla live (Failsafe mode [/COLOR][/SIZE][/COLOR][/SIZE][SIZE=4][COLOR=#dd0000][SIZE=4][COLOR=#dd0000]Works with DELL 3330 73mb[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=4][COLOR=#0000dd][SIZE=4][COLOR=#0000dd])”{[/COLOR][/SIZE][/COLOR][/SIZE][/SIZE]
      [/LIST]

      [LIST]
      [*]# search --set -f /vmlinuz
      [/LIST]

      [LIST]
      [*]linux /vmlinuz boot=live username=user config noswap edd=on nomodeset noeject locales= keyboard-layouts= ocs_live_run=“ocs-live-general”
      [/LIST]

      [LIST]
      [*]ocs_live_extra_param=“” ocs_live_batch=no irqpoll ip=10.10.10.1 vga=normal nosplash
      [/LIST]

      [LIST]
      [*]fetch=tftp://10.10.10.1/filesystem.squashfs
      [/LIST]

      [LIST]
      [*]initrd /initrd.img
      [/LIST]

      [LIST]
      [*]}
      [/LIST]

      [LIST]
      [*][SIZE=3] – Clonezilla version: [/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] – Ubuntu Mini Network Installer ISO version:[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]Distro ISOs can be downloaded and files directly extracted from the /boot/[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]Note for a menu item to sucessfully boot the hardware it must be compatible with the hardware ie. contain the necessary network driver and other hardware drivers.[/SIZE]
      [/LIST]

      [LIST]
      [*]5. UEFI PXE Boot Test Results:
      [/LIST]

      [LIST]
      [*][SIZE=3] a.) Dell3330: [/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]-- Works flawlessly with clonezilla and Unbuntu mini iso[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]-- The initial network download speed is what we expect 65MB to 100MB[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] b.) MS surface pro (version 1 with firmware updates and an MS USB-NIC adapter)[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]-- Grub network slow: Initial download for the next booting image is very slow, 75 to 550kb, avg 200kb[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]-- With clonezilla:[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]-- With Unbuntu mini ISO: Boot sucessfullly and the NIC works in the speed as we expect[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] c.) Various other hardware like Dell 5530 and Dell 5420 are not necessarily fully UEFI compliant in our experience[/SIZE]
      [/LIST]

      [LIST]
      [*]6. What we need to do next:
      [/LIST]

      [LIST]
      [*][SIZE=3] a. get a working “Boot Local Disk” default item working this would be like the default in the FOG pxe menu[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] b. Identify kernels and ISOs compatibilty with various hardware.[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] c. see if we can speed up MS Surface tablet boot speed either through improved grub driver or smaller kernel images[/SIZE]
      [/LIST]

      [SIZE=4][/SIZE]
      [SIZE=4] [/SIZE]
      [SIZE=4][/SIZE]

      posted in FOG Problems
      M
      MattT
    • RE: Surface Pro - PXE boot - Need to image for mass deployment

      Here are some of our preliminary findings on UEFI pxe booting

      Note that not all grub sources contain the necessary
      modules to netboot as the net.mod and others are missing or don’t work.
      [LIST]
      [*][SIZE=3]PXE Boot Windows UEFI hardware to Linux PXE Server [/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3][SIZE=4]--------------------------------------------------------[/SIZE][/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]Overview[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]booting UEFI hardware via PXE is possible by using our existing Linux server environment. [/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]Setting UEFI booting integrated with legacy PXE booting involves configuration changes to the dhcp server and adding functionality to the tftpboot server.[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]Configuring the DHCP server is shown in step 1 and has no hazardous effects on the live network environment as the configuration selects the proper boot method for each instance and as long as no machines are configured to UEFI boot with network as the first option as we currently don’t have a working boot to local disk option [/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]Configuring a bootable grub2 menu with options and default is very possible[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]Booting useful applications via UEFI is possible with hardware compatiblity of some hardware an issue. ie Dell 5420,5530 and MS Surface[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]Other Applications will need to be evaluated on a individual basis for grub and hardware compatibily[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]UEFI is not mainstream as based on our research very few people or organizations are doing this at this time [/SIZE]
      [/LIST]

      [LIST]
      [*]1. PXE server and DHCP setup
      [/LIST]

      [LIST]
      [*][SIZE=3] – Linux server version: Debian Wheezy[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] – DHCP configuration file:[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]Start with standard fog confiuration to setup working tftp server[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]On DHCP server[/SIZE]
      [/LIST]

      [LIST]
      [*]In /etc/dhcp/dhcpd.conf change Original PXE boot stanza to the following
      [/LIST]

      [LIST]
      [*]next-server 192.168.0.2
      [/LIST]

      [LIST]
      [*]option arch code 93 = unsigned integer 16;
      [/LIST]

      [LIST]
      [*]if option arch = 00:07 {
      [/LIST]

      [LIST]
      [*]filename “bootx64.efi”;
      [/LIST]

      [LIST]
      [*]}else if option arch = 00:06 {
      [/LIST]

      [LIST]
      [*]filename “bootia32.efi”;
      [/LIST]

      [LIST]
      [*]}else {
      [/LIST]

      [LIST]
      [*]filename “pxelinux.0”;
      [/LIST]

      [LIST]
      [*]}
      [/LIST]

      [LIST]
      [*][SIZE=3]each of the files listed above are located in the root of the tftpboot directory in the example above [/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] a. pxelinux.0 is setup in the normal fog install[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] b. bootx64.efi and bootia32.efi are compliled as grub bootloaders for UEFI explained in Step 2 below.[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]There are now 3 boot options that dhcp knows to select based on system achitecture when it boots to dhcp.[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] a. 00:07 specifies 64bit hardware UEFI hardware[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] b. 00:06 specifies 32bit hardware UEFI hardware [/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] c. pxelinux.0 specifies normal non-UEFI pxeboot setup[/SIZE]
      [/LIST]

      [LIST]
      [*]2. Modules for Grub2:
      [/LIST]

      [LIST]
      [*][SIZE=3]We have found 2 sources that work for creating the .efi files needed to boot hardware to the server many do not[/SIZE]
      [/LIST]

      [LIST]
      [*]On tftpboot server run
      [/LIST]

      [LIST]
      [*]apt-get install grub-efi-ia32-bin grub-efi-amd64-bin grub-pc
      [/LIST]

      [LIST]
      [*]to install grub files needed
      [/LIST]

      [LIST]
      [*]3. Make efi boot image (Script):
      [/LIST]

      [LIST]
      [*]vim /root/build64.sh
      [/LIST]

      [LIST]
      [*]grub-mkimage --format=x86_64-efi
      [/LIST]

      [LIST]
      [*]–config=/tftpboot/EFI/boot/grub.cfg
      [/LIST]

      [LIST]
      [*]–output=/tftpboot/bootx64.efi
      [/LIST]

      [LIST]
      [*]ls /usr/lib/grub/x86_64-efi | sed -n 's/\.mod//gp'
      [/LIST]

      [LIST]
      [*][SIZE=3]At this point a 64bit UEFI piece of hardware should be able to boot to the network and get a grub prompt[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3]Note a. various versions of grub have different capabilities regarding network booting as some do not include the necessary network modules[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3][SIZE=4] b. [/SIZE][SIZE=4][COLOR=#dd0000][SIZE=4][COLOR=#dd0000]–config=[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=4] points to the location of the grub.cfg file in step 4 below[/SIZE][/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3][SIZE=4] c. [/SIZE][SIZE=4][COLOR=#dd0000][SIZE=4][COLOR=#dd0000]–output=[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=4] is the location of the folder where the compiled file ends up[/SIZE][/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3][SIZE=4] d. line starting [/SIZE][SIZE=4][COLOR=#dd0000][SIZE=4][COLOR=#dd0000]`ls[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=4] specifies location of grub modules and what to include, in this example everything[/SIZE][/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] two Distros that worked at this point are[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] – From Debian Sid[/SIZE]
      [/LIST]

      [LIST]
      [*][SIZE=3] – From Ubuntu mini ISO (Saucy, less modules than Sid)[/SIZE]
      [/LIST]

      posted in FOG Problems
      M
      MattT
    • RE: Surface Pro - PXE boot - Need to image for mass deployment

      The MS Surface Pros use UEFI pxe boot to boot to the network. We have done some preliminary work with netbooting UEFI machines and have had mixed results. We are able to get the Surface Pro and Dell 3330 to boot to the network and display a grub2 menu successfully. The Dell we can use clonezilla across the network to upload and deploy an image. With the Surface we can connect to a server but a 1/10th the speed of the Dell and clonezilla is not able to connect to the server as the MS usb nic is not supported.

      posted in FOG Problems
      M
      MattT