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

reboot a running linux in pxe with kexec

Scheduled Pinned Locked Moved Solved
Linux Problems
4
16
7.7k
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.
  • P
    pga
    last edited by Jul 3, 2015, 4:51 PM

    I want to reboot a running linux in pxe mode, to connect to a fog server.

    For this task, my current track is to use kexec.

    I retreive the kernel image and the init from the tftp server (the fog server in our installation) from the directory …/fog/service/ipxe

    Then:

    kexec -l bzImage --init=init.xz # load the new kernel
    kexec -e # replace current kernel with the loaded one

    And it does not work (nothing is displayed).

    Has anyone tried and succeed such a reboot from linux ?

    Thanks in advance for any clue

    1 Reply Last reply Reply Quote 0
    • T
      Tom Elliott
      last edited by Jul 4, 2015, 5:11 AM

      I guess I don’t understand what you mean?

      kexec would be used to switch the current running kernel, but if you are rebooting the client, it’s no longer using what you setup kexec for.

      Maybe I’m mis-understanding?

      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! Get in contact with me (chat bubble in the top right corner) if you want to join in.

      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

      1 Reply Last reply Reply Quote 0
      • P
        pga
        last edited by Jul 6, 2015, 8:42 AM

        Let’s try to explain a little better:

        I want to launch a reinstallation of a running linux computer. But I can’t access the machine to press the adequate key to select pxe boot at the reboot.

        So I need a way to use the current linux kernel to do a kind of reboot, using the kernel and initrd from the fog server.

        I hope my explanation is a little more clear.

        1 Reply Last reply Reply Quote 0
        • P
          pga
          last edited by Jul 6, 2015, 9:35 AM

          No, I am not rebooting the client if using kexec, just replacing the current kernel with the kernel from the fog server.
          It looks like a reboot, but it is not a reboot 🙂

          W 1 Reply Last reply Jul 6, 2015, 11:44 AM Reply Quote 0
          • T
            Tom Elliott
            last edited by Jul 6, 2015, 11:08 AM

            The kernel that’s loaded to with the client is from the FOG Server, is there another kernel you’re referring to?

            Can you show a layout and possible flow chart depicting what you’re describing?

            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! Get in contact with me (chat bubble in the top right corner) if you want to join in.

            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

            1 Reply Last reply Reply Quote 0
            • W
              Wayne Workman @pga
              last edited by Wayne Workman Jul 6, 2015, 5:45 AM Jul 6, 2015, 11:44 AM

              @Tom-Elliott Basically, I think he wants to configure/change a running machine so that next time it boots, it boots to the network (I assume to access a Linux install ISO)… because he can’t get to it to press the F-whatever key to make it boot from network.

              @pga I am assuming you have SSH access?

              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!
              Daily Clean Installation Results:
              https://fogtesting.fogproject.us/
              FOG Reporting:
              https://fog-external-reporting-results.fogproject.us/

              P 1 Reply Last reply Jul 6, 2015, 1:37 PM Reply Quote 0
              • P
                pga @Wayne Workman
                last edited by Jul 6, 2015, 1:37 PM

                @Wayne-Workman yes I have root ssh access. And you have expressed my request much better than me, thanks a lot.

                W 1 Reply Last reply Jul 6, 2015, 1:56 PM Reply Quote 0
                • W
                  Wayne Workman @pga
                  last edited by Jul 6, 2015, 1:56 PM

                  @pga I don’t think you could reinstall from scratch using an ISO… if you SSH’d into a fog host that has network booted, you’d simply get a bash prompt, and not the advanced iPXE menus that you want.

                  If possible, you’d need to just build an image for the box before hand and then image it with that.

                  To get it to network boot, you’d have to set up chain loading to the network on the HDD… and that’s going to be interesting to see… and I have no idea how to do it.

                  Why can’t you go to the machine?

                  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!
                  Daily Clean Installation Results:
                  https://fogtesting.fogproject.us/
                  FOG Reporting:
                  https://fog-external-reporting-results.fogproject.us/

                  P 1 Reply Last reply Jul 6, 2015, 2:46 PM Reply Quote 0
                  • T
                    Tom Elliott
                    last edited by Jul 6, 2015, 2:40 PM

                    You have to remember, when linux loads it boots to an OS layer through a portion, essentially, that tells it how to use the root filesystem, or the initrd=init.xz argument as you described.

                    The problem is, you’re not loading the system when you’re using kexec. All you’re loading is a new kernel, not a new OS layer. I’m pretty sure you would not be able to do this as you’re thinking.

                    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! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                    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

                    1 Reply Last reply Reply Quote 0
                    • P
                      pga @Wayne Workman
                      last edited by Jul 6, 2015, 2:46 PM

                      @Wayne-Workman I can go to a single machine, but not 200 of them in a reasonable time 🙂

                      1 Reply Last reply Reply Quote 0
                      • J
                        Junkhacker Developer
                        last edited by Jul 7, 2015, 1:13 PM

                        can you not set these machines to boot to the network by default?

                        signature:
                        Junkhacker
                        We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

                        P 1 Reply Last reply Jul 7, 2015, 1:18 PM Reply Quote 0
                        • P
                          pga @Junkhacker
                          last edited by Jul 7, 2015, 1:18 PM

                          @Junkhacker not every bios supports pxe unfortunately.

                          I am currently trying with grub and booting to ipxe, I’ll see what result it gives me.

                          1 Reply Last reply Reply Quote 0
                          • J
                            Junkhacker Developer
                            last edited by Jul 7, 2015, 1:19 PM

                            you can also use the ipxe boot cd iso (downloadable from the ipxe website) to boot to pxe from a cd

                            signature:
                            Junkhacker
                            We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

                            P 1 Reply Last reply Jul 7, 2015, 1:23 PM Reply Quote 0
                            • P
                              pga @Junkhacker
                              last edited by Jul 7, 2015, 1:23 PM

                              @Junkhacker that is equivalent to the grub + ipxe solution I think, and I don’t have to insert a CD in all my machines at least 🙂
                              My absolute restriction is that I don’t have a physical access to each machine, only a root ssh access.

                              Or maybe you know a way to directly reboot to an iso located on a hard drive ?

                              J 1 Reply Last reply Jul 7, 2015, 1:35 PM Reply Quote 0
                              • J
                                Junkhacker Developer @pga
                                last edited by Jul 7, 2015, 1:35 PM

                                @pga i do, but it would be more efficient to use grub to boot directly to the ipxe network boot file you want to use 😉

                                signature:
                                Junkhacker
                                We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

                                1 Reply Last reply Reply Quote 0
                                • P
                                  pga
                                  last edited by Jul 7, 2015, 3:20 PM

                                  Ok, it is quite simple with grub.

                                  For instance, with a debian jessie:

                                  1. install ipxe with grub
                                  apt-get install ipxe
                                  
                                  1. Set the next grub boot to use the ipxe menu
                                  grub-reboot 2
                                  
                                  1. Reboot !
                                  reboot
                                  

                                  The number to use is the number of the grub entry (counting the submenu) of the pxe entry, starting from 0.

                                  Thank you for your help, I hope the result could help someone in the future.

                                  1 Reply Last reply Reply Quote 1
                                  • 1 / 1
                                  1 / 1
                                  • First post
                                    11/16
                                    Last post

                                  201

                                  Online

                                  12.0k

                                  Users

                                  17.3k

                                  Topics

                                  155.2k

                                  Posts
                                  Copyright © 2012-2024 FOG Project