• Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    How to pxe boot cent os 7

    Scheduled Pinned Locked Moved Solved
    General
    5
    63
    29.0k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Sebastian Roth Moderator
      last edited by

      @dureal99d Now that you have clead up your exports file it seems like you need to add those again. Please change your last entry to /opt/bootimgs/16.04.1_64 *(rw,sync,no_wdelay,insecure_locks,no_root_squash,insecure) and see if it boots up.

      Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

      Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

      D 2 Replies Last reply Reply Quote 0
      • george1421G
        george1421 Moderator
        last edited by

        OK lets step back and regroup here. Lets do the following

        1. Insert the Centos 7 dvd into your FOG server’s cdrom drive
        2. Key in the following commands into your fog server’s console as root:
        # we are going to put all of our boot images into the web server and issue the files
        # with apache and cut out all of this NFS crud
        mkdir /var/www/html/bootimg
        
        # connect to the centos dvd to the /mnt directory
        mount -o loop /dev/cdrom  /mnt
        
        #show me there is content there
        ls /mnt
        
        # Create a destination directory for the centos installer files
        mkdir /var/www/html/bootimg/centos7x64
        
        # Copy the content of the dvd to the proper location
        cp -r /mnt/*  /var/www/html/bootimg/centos7x64
        
        # Change the access level for world read
        chmod -R 755 /var/www/html/bootimg/centos7x64
        
        # Unmount the dvd drive since we already have the files
        umount /mnt
        
        1. Now in the FOG Configuration->iPXE New Menu Entry enter the following:
          Menu Item: Centos7PXEInst
          Description: Install Centos x64
          Parameters:
          initrd http://${fog-ip}/bootimg/centos7x64/images/pxeboot/initrd.img
          chain http://${fog-ip}/bootimg/centos7x64/images/pxeboot/vmlinuz initrd=initrd.img method=http://${fog-ip}/bootimg/centos7x64/ devfs=nomount ip=dhcp
          boot || goto MENU
          Menu Show with: All Hosts
        2. Now pxe boot your target computer and select the Install Centos x64 menu item.
        3. You should see the installer boot and run.

        This process can be replicated to other linux distributions. I just tested this, this morning on my dev fog server running 1.3.0-rc8 and it works.

        As for a live boot, these settings don’t work, the installer still runs. I don’t have time right now to figure out why the live boot bits are not working.

        Live OS boot

        initrd http://${fog-ip}/bootimg/centos7x64/images/pxeboot/initrd.img
        chain http://${fog-ip}/bootimg/centos7x64/images/pxeboot/vmlinuz initrd=initrd.img root=live:http://${fog-ip}/bootimg/centos7x64/LiveOS/squashfs.img ip=dhcp rootflags="loop" rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 
        boot || goto MENU
        

        Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!

        D 2 Replies Last reply Reply Quote 0
        • D
          dureal99d @Sebastian Roth
          last edited by

          @Sebastian-Roth ok, I’m trying it now

          1 Reply Last reply Reply Quote 0
          • D
            dureal99d @george1421
            last edited by

            @george1421 ok I will try it shortly

            1 Reply Last reply Reply Quote 0
            • D
              dureal99d @Sebastian Roth
              last edited by dureal99d

              @Sebastian-Roth said in How to pxe boot cent os 7:

              /opt/bootimgs/16.04.1_64 *(rw,sync,no_wdelay,insecure_locks,no_root_squash,insecure)

              it works now, I see I had this line “nfsroot=${fog-ip}:/var/www/html/bootimgs/16.04.1_64/” wrong.

              I had nfsroot=${fog-ip}:/bootimgs/16.04.1_64/ which did not work but once I seen the path @george1421 was using I realized I had nfsroot= wrong.

              thank you all @Developers . all I have to do now is try the cent os method made by @george1421. I’m on that now

              1 Reply Last reply Reply Quote 0
              • D
                dureal99d @george1421
                last edited by dureal99d

                @george1421 said in How to pxe boot cent os 7:

                OK lets step back and regroup here. Lets do the following

                1. Insert the Centos 7 dvd into your FOG server’s cdrom drive
                2. Key in the following commands into your fog server’s console as root:
                # we are going to put all of our boot images into the web server and issue the files
                # with apache and cut out all of this NFS crud
                mkdir /var/www/html/bootimg
                
                # connect to the centos dvd to the /mnt directory
                mount -o loop /dev/cdrom  /mnt
                
                #show me there is content there
                ls /mnt
                
                # Create a destination directory for the centos installer files
                mkdir /var/www/html/bootimg/centos7x64
                
                # Copy the content of the dvd to the proper location
                cp -r /mnt/*  /var/www/html/bootimg/centos7x64
                
                # Change the access level for world read
                chmod -R 755 /var/www/html/bootimg/centos7x64
                
                # Unmount the dvd drive since we already have the files
                umount /mnt
                
                1. Now in the FOG Configuration->iPXE New Menu Entry enter the following:
                  Menu Item: Centos7PXEInst
                  Description: Install Centos x64
                  Parameters:
                  initrd http://${fog-ip}/bootimg/centos7x64/images/pxeboot/initrd.img
                  chain http://${fog-ip}/bootimg/centos7x64/images/pxeboot/vmlinuz initrd=initrd.img method=http://${fog-ip}/bootimg/centos7x64/ devfs=nomount ip=dhcp
                  boot || goto MENU
                  Menu Show with: All Hosts
                2. Now pxe boot your target computer and select the Install Centos x64 menu item.
                3. You should see the installer boot and run.

                This process can be replicated to other linux distributions. I just tested this, this morning on my dev fog server running 1.3.0-rc8 and it works.

                As for a live boot, these settings don’t work, the installer still runs. I don’t have time right now to figure out why the live boot bits are not working.

                Live OS boot

                initrd http://${fog-ip}/bootimg/centos7x64/images/pxeboot/initrd.img
                chain http://${fog-ip}/bootimg/centos7x64/images/pxeboot/vmlinuz initrd=initrd.img root=live:http://${fog-ip}/bootimg/centos7x64/LiveOS/squashfs.img ip=dhcp rootflags="loop" rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 
                boot || goto MENU
                

                @george1421 This worked like a charm. Cent os boots, I have to do the net install type but it boots and is able to be installed.

                Thank you all.

                Side note, this should work for fedora? yet fedora is refusing to boot. I think because fedora does that live boot thingy. gices this error >>dracut: FATAL: No or empty root=argument dracut: Refusing to continue. yet this thread is solved.

                george1421G 1 Reply Last reply Reply Quote 0
                • george1421G
                  george1421 Moderator @dureal99d
                  last edited by

                  @dureal99d The live boot bits that didn’t work for centos was from a fedora pxe boot guide. That is all I did and then just translated what was needed for the structure that fog uses. You will get much faster boot speed with http over ftp, or tftp that is why I kept everything in the same protocol by specifying http:// when making an object reference.

                  Also from my instructcions I moved the files out of the fog directory where they will get clobbered when you update FOG. By putting them on the web server in a different root folder (i.e. not /fog) the fog installer scripts will not touch them. It would be very depressing if you created this monster boot menu and then have a fog upgrade eat all of your hard work.

                  Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!

                  D 1 Reply Last reply Reply Quote 0
                  • D
                    dureal99d @george1421
                    last edited by Wayne Workman

                    @george1421 said in How to pxe boot cent os 7:

                    fedora pxe boot guide.

                    @george1421 I have moved from the files from the fog root and moved them to /opt/bootimgs/ then I created a soft link to them as suggested by @Wayne-Workman . So no more fog eating the files on every upgrade. thank you. I am going to start reading up on all these codes so I can have a better understanding for these situation.

                    at any rate if you find you get the time a fedora code would be nice but not all that needed. oh and i almost forgot to post this.

                    Working boot menu for all but “centos live” and “fedora”

                    Hope this helps make someone’s life a bit easier now or later

                    :MENU
                    menu
                    item --gap -- ---------------- iPXE boot menu ----------------
                    item mac Macrium Reflect
                    item clonezilla Clonezilla 2015
                    item ubuntu6 Ubuntu 16:04.1 x64
                    item ubuntu6 Ubuntu 16:04.1 x32
                    item ubuntu Ubuntu 15:10 x64
                    item ubuntu Ubuntu 15:10 x32
                    item kubuntu6 Kubuntu 16:04.1 x64 
                    item kubuntu6 Kubuntu 16:04.1 x32
                    item kubuntu Kubuntu 15:10 x64 
                    item kubuntu Kubuntu 15:10 x32
                    item mint18 Linux Mint 18 "Sarah" - MATE (32-bit)
                    item Mint18 Linux Mint 18 "Sarah" - MATE (64-bit)
                    item mint Linux Mint 17.2 "Rafaela" - MATE (32-bit)
                    item Mint Linux Mint 17.2 "Rafaela" - MATE (64-bit)
                    item mint Linux Mint 17.2 "Rafaela" - Cinnamon (32-bit)
                    item Mint Linux Mint 17.2 "Rafaela" - Cinnamon (64-bit)
                    item BOOTCD Hirens 15.2 BOOTCD
                    item pgon Paragon Harddisk Manager 12
                    item ubd Ultimate Boot Disk
                    item ez  EZ Gig IV Cloning Software
                    item centos Centos
                    item centos2 Centos Live
                    item hostinfo details about this computer
                    item shell ipxe shell
                    item return return to previous menu
                    choose --default return --timeout 5000 target && goto ${target}
                    :mac
                    initrd http://${fog-ip}/fog/service/ipxe/mac/mac.iso
                    chain memdisk iso raw ||
                    goto MENU
                    
                    :clonezilla
                    kernel http://${fog-ip}/bootimgs/clonezilla/vmlinuz
                    initrd http://${fog-ip}/bootimgs/clonezilla/initrd.img
                    imgargs vmlinuz boot=live username=user fetch=http://${fog-ip}/bootimgs/clonezilla/filesystem.squashfs locale=en_US.UTF-8 keyboard-layouts=NONE
                    boot || echo failed to boot
                    prompt
                    goto MENU```
                    
                    :ubuntu6
                    kernel http://${fog-ip}/bootimgs/16.04.1_64/casper/vmlinuz.efi
                    initrd http://${fog-ip}/bootimgs/16.04.1_64/casper/initrd.lz
                    imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/16.04.1_64/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :ubuntu6
                    kernel http://${fog-ip}/bootimgs/16.04.1_32/casper/vmlinuz
                    initrd http://${fog-ip}/bootimgs/16.04.1_32/casper/initrd.lz
                    imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/16.04.1_32/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :ubuntu
                    kernel http://${fog-ip}/bootimgs/15.10_64/casper/vmlinuz.efi
                    initrd http://${fog-ip}/bootimgs/15.10_64/casper/initrd.lz
                    imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/15.10_64/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :ubuntu
                    kernel http://${fog-ip}/bootimgs/15.10_32/casper/vmlinuz
                    initrd http://${fog-ip}/bootimgs/15.10_32/casper/initrd.lz
                    imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/15.10_32/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :kubuntu6
                    kernel http://${fog-ip}/bootimgs/kubuntu6_64/casper/vmlinuz.efi
                    initrd http://${fog-ip}/bootimgs/kubuntu6_64/casper/initrd.lz
                    imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/kubuntu6_64/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :kubuntu6
                    kernel http://${fog-ip}/bootimgs/kubuntu6_32/casper/vmlinuz
                    initrd http://${fog-ip}/bootimgs/kubuntu6_32/casper/initrd.lz
                    imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/kubuntu6_32/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    
                    :kubuntu
                    kernel http://${fog-ip}/bootimgs/kubuntu5_64/casper/vmlinuz.efi
                    initrd http://${fog-ip}/bootimgs/kubuntu5_64/casper/initrd.lz
                    imgargs vmlinuz.efi root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/kubuntu5_64/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :kubuntu
                    kernel http://${fog-ip}/bootimgs/kubuntu5_32/casper/vmlinuz
                    initrd http://${fog-ip}/bootimgs/kubuntu5_32/casper/initrd.lz
                    imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/kubuntu5_32/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :mint18
                    kernel http://${fog-ip}/bootimgs/lm18_32/casper/vmlinuz
                    initrd http://${fog-ip}/bootimgs/lm18_32/casper/initrd.lz
                    imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/lm18_32/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :Mint18
                    kernel http://${fog-ip}/bootimgs/lm18_64/casper/vmlinuz.efi
                    initrd http://${fog-ip}/bootimgs/lm18_64/casper/initrd.lz
                    imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/lm18_64/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :mint
                    kernel http://${fog-ip}/bootimgs/lm_32/casper/vmlinuz
                    initrd http://${fog-ip}/bootimgs/lm_32/casper/initrd.lz
                    imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/lm_32/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :Mint
                    kernel http://${fog-ip}/bootimgs/lm_64/casper/vmlinuz
                    initrd http://${fog-ip}/bootimgs/lm_64/casper/initrd.lz
                    imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/lm_64/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :mint
                    kernel http://${fog-ip}/bootimgs/lmc_32/casper/vmlinuz
                    initrd http://${fog-ip}/bootimgs/lmc_32/casper/initrd.lz
                    imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/lmc_32/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :Mint
                    kernel http://${fog-ip}/bootimgs/lmc_64/casper/vmlinuz
                    initrd http://${fog-ip}/bootimgs/lmc_64/casper/initrd.lz
                    imgargs vmlinuz root=/dev/nfs boot=casper netboot=nfs nfsroot=${fog-ip}:/var/www/html/bootimgs/lmc_64/ locale=en_US.UTF-8 keyboard-configuration/layoutcode=la mirror/country=US
                    boot || goto failed
                    goto start
                    
                    :centos
                    initrd http://${fog-ip}/bootimgs/centos/images/pxeboot/initrd.img
                    chain http://${fog-ip}/bootimgs/centos/images/pxeboot/vmlinuz initrd=initrd.img method=http://${fog-ip}/bootimgs/centos/ devfs=nomount ip=dhcp
                    boot || goto MENU
                    
                    :centos2
                    initrd http://${fog-ip}/bootimgs/centos/images/pxeboot/initrd.img
                    chain http://${fog-ip}/bootimgs/centos/images/pxeboot/vmlinuz initrd=initrd.img root=live:http://${fog-ip}/bootimgs/centos/LiveOS/squashfs.img ip=dhcp rootflags="loop" rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 
                    boot || goto MENU
                    
                    :BOOTCD
                    initrd http://${fog-ip}/bootimgs/bootcd/hirensboot.iso ||
                    chain memdisk iso raw ||
                    boot ||
                    goto MENU
                    
                    :pgon
                    initrd http://${fog-ip}/bootimgs/pgon/phdman12.iso ||
                    chain memdisk iso raw ||
                    boot ||
                    goto MENU
                    
                    :ubd
                    initrd http://${fog-ip}/bootimgs/ubcd/ubcd535.iso ||
                    chain memdisk iso raw ||
                    boot ||
                    goto MENU
                    
                    :ez
                    initrd http://${fog-ip}/bootimgs/ez/EZGIG438.iso ||
                    chain memdisk iso raw ||
                    boot ||
                    goto MENU
                    
                    :hostinfo
                    echo This computer : ||
                    echo MAC address....${net0/mac} ||
                    echo IP address.....${ip} ||
                    echo Netmask........${netmask} ||
                    echo Serial.........${serial} ||
                    echo Asset number...${asset} ||
                    echo Manufacturer...${manufacturer} ||
                    echo Product........${product} ||
                    echo BIOS platform..${platform} ||
                    echo ||
                    echo press any key to return to Menu ||
                    prompt
                    goto MENU
                    
                    :shell
                    shell ||
                    goto MENU
                    :return
                    chain http://${fog-ip}/${fog-webroot}/bootimgs/boot.php?mac=${net0/mac} ||
                    prompt
                    goto MENU
                    Autoboot
                    
                    D 1 Reply Last reply Reply Quote 2
                    • D
                      dureal99d @dureal99d
                      last edited by

                      @dureal99d said in How to pxe boot cent os 7:

                      initrd http://${fog-ip}/bootimgs/centos/images/pxeboot/initrd.img
                      chain http://${fog-ip}/bootimgs/centos/images/pxeboot/vmlinuz initrd=initrd.img root=live:http://${fog-ip}/bootimgs/centos/LiveOS/squashfs.img ip=dhcp rootflags=“loop” rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0
                      boot || goto MENU

                      @Developers @Moderators @Senior-Developers I wanted to update this thread with my current progress. both are working bootable.

                      in virtualbox i had to have at least 1650 gigs of ram allocated for it to boot. anything under that and it will error out. but i expect most machines these days to have at least 3 to 4 gigs of ram so any who choose to use should be fine.

                      Hope this helps make someones life a bit easier.

                      both are fully working
                      live only fedora
                      initrd http://${fog-ip}/bootimgs/fedora/images/pxeboot/initrd.img
                      chain http://${fog-ip}/bootimgs/fedora/images/pxeboot/vmlinuz initrd=initrd.img root=live:http://${fog-ip}/bootimgs/fedora/LiveOS/squashfs.img devfs=nomount ip=dhcp
                      boot || goto MENU

                      live and install fedora
                      initrd http://${fog-ip}/bootimgs/fedora/images/pxeboot/initrd.img
                      chain http://${fog-ip}/bootimgs/fedora/images/pxeboot/vmlinuz initrd=initrd.img root=live:http://${fog-ip}/bootimgs/fedora/LiveOS/squashfs.img rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0
                      boot || goto MENU

                      D 1 Reply Last reply Reply Quote 1
                      • D
                        dureal99d @dureal99d
                        last edited by

                        @Wayne-Workman Here is an updated working centos boot code that works for using your own downloaded repo as well as the online repo.

                        I downloaded my own repo using command <wget -r -l 0 ./LOCAL-DIR WEBSITE-URL> in Ubuntu.
                        once downloaded
                        I then copied the repo from my home directory to the /bootimgs folder.
                        I then modified the boot code originally provided by @george1421 from:
                        :centos
                        initrd http://${fog-ip}/bootimgs/centos/images/pxeboot/initrd.img
                        chain http://${fog-ip}/bootimgs/centos/images/pxeboot/vmlinuz initrd=initrd.img method=http://${fog-ip}/bootimgs/centos/ devfs=nomount ip=dhcp
                        boot || goto MENU

                        to

                        initrd http://${fog-ip}/bootimgs/centos/images/pxeboot/initrd.img
                        chain http://${fog-ip}/bootimgs/centos/images/pxeboot/vmlinuz initrd=initrd.img root=live:http://${fog-ip}/bootimgs/centos/LiveOS/squashfs.img ip=dhcp repo=http://192.168.1.109/bootimgs/centosrepo/mirror.nodeshosting.com/centos/7.2.1511/os/x86_64 splash quiet – || read void
                        boot || goto MENU

                        the end result is that now I have my own home repo that works even if my machine is not connected to the internet. I assume this is good for corporate or environments where the admin is not wanting to use much data from or restrict the net.

                        it also makes short work of the install time.

                        I hope this makes someone’s life a bit more easier

                        0_1473836274949_cent os boot complete.png

                        1 Reply Last reply Reply Quote 1
                        • 1
                        • 2
                        • 3
                        • 4
                        • 4 / 4
                        • First post
                          Last post

                        198

                        Online

                        12.0k

                        Users

                        17.3k

                        Topics

                        155.2k

                        Posts
                        Copyright © 2012-2024 FOG Project