GRUB stops at initramfs while booting KALI from ISO image in USB

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
1
down vote

favorite












Here where I am trying to do.



USB Stick Boots to -> GRUB Loader -> GRUB boots one of many ISO files on the USB into LIVE mode.


Here is my directory structure which is really simple



MULTIBOOT(USB stick) ->
- ubuntu-14.04.1-desktop-i386.iso (ISO File)
- Parrot-full-3.6_amd64.iso (ISO File)
- kali-linux-2017.1-amd64.iso (ISO File)
- boot (FOLDER)
- boot/grub (FOLDER)


unbutu iso boots fine in my computer and in my VM parrot and kali iso load kernel but stop at initramfs and complain "install media not found"



Here is my grub.cfg file



menuentry "ubuntu-14.04.1-desktop-i386 Desktop ISO" 
loopback loop /ubuntu-14.04.1-desktop-i386.iso
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-14.04.1-desktop-i386.iso noeject noprompt splash --
initrd (loop)/casper/initrd.lz


menuentry "Parrot-full-3.6_amd64 ISO"
loopback loop /Parrot-full-3.6_amd64.iso
linux (loop)/live/vmlinuz boot=live iso-scan/filename=/Parrot-full-3.6_amd64.iso noeject noprompt splash --
initrd (loop)/live/initrd.img



menuentry "kali3-amd64 Live system"
loopback loop /kali-linux-2017.1-amd64.iso
linux (loop)/live/vmlinuz boot=live iso-scan/filename=/kali-linux-2017.1-amd64.iso splash username=root hostname=kali
initrd (loop)/live/initrd.img



I have tried these ISOs in virtual machines and the work. I also tried as on my PC by putting them on USB using RUFUS and booting directly. They work. The problem with RUFUS is that it works when I use single ISO. But I don't want to make one USB per ISO. I want to make ONLY ONE USB that holds all the ISOs and I should be able to boots which ever I want into LIVE mode. So I switched on to GRUB. But I must say that while GRUB is okay but its documentation is severely limited and fragmented. I am guessing if I need this, then lot of other people need this too.










share|improve this question














bumped to the homepage by Community♦ 4 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.


















    up vote
    1
    down vote

    favorite












    Here where I am trying to do.



    USB Stick Boots to -> GRUB Loader -> GRUB boots one of many ISO files on the USB into LIVE mode.


    Here is my directory structure which is really simple



    MULTIBOOT(USB stick) ->
    - ubuntu-14.04.1-desktop-i386.iso (ISO File)
    - Parrot-full-3.6_amd64.iso (ISO File)
    - kali-linux-2017.1-amd64.iso (ISO File)
    - boot (FOLDER)
    - boot/grub (FOLDER)


    unbutu iso boots fine in my computer and in my VM parrot and kali iso load kernel but stop at initramfs and complain "install media not found"



    Here is my grub.cfg file



    menuentry "ubuntu-14.04.1-desktop-i386 Desktop ISO" 
    loopback loop /ubuntu-14.04.1-desktop-i386.iso
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-14.04.1-desktop-i386.iso noeject noprompt splash --
    initrd (loop)/casper/initrd.lz


    menuentry "Parrot-full-3.6_amd64 ISO"
    loopback loop /Parrot-full-3.6_amd64.iso
    linux (loop)/live/vmlinuz boot=live iso-scan/filename=/Parrot-full-3.6_amd64.iso noeject noprompt splash --
    initrd (loop)/live/initrd.img



    menuentry "kali3-amd64 Live system"
    loopback loop /kali-linux-2017.1-amd64.iso
    linux (loop)/live/vmlinuz boot=live iso-scan/filename=/kali-linux-2017.1-amd64.iso splash username=root hostname=kali
    initrd (loop)/live/initrd.img



    I have tried these ISOs in virtual machines and the work. I also tried as on my PC by putting them on USB using RUFUS and booting directly. They work. The problem with RUFUS is that it works when I use single ISO. But I don't want to make one USB per ISO. I want to make ONLY ONE USB that holds all the ISOs and I should be able to boots which ever I want into LIVE mode. So I switched on to GRUB. But I must say that while GRUB is okay but its documentation is severely limited and fragmented. I am guessing if I need this, then lot of other people need this too.










    share|improve this question














    bumped to the homepage by Community♦ 4 mins ago


    This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.
















      up vote
      1
      down vote

      favorite









      up vote
      1
      down vote

      favorite











      Here where I am trying to do.



      USB Stick Boots to -> GRUB Loader -> GRUB boots one of many ISO files on the USB into LIVE mode.


      Here is my directory structure which is really simple



      MULTIBOOT(USB stick) ->
      - ubuntu-14.04.1-desktop-i386.iso (ISO File)
      - Parrot-full-3.6_amd64.iso (ISO File)
      - kali-linux-2017.1-amd64.iso (ISO File)
      - boot (FOLDER)
      - boot/grub (FOLDER)


      unbutu iso boots fine in my computer and in my VM parrot and kali iso load kernel but stop at initramfs and complain "install media not found"



      Here is my grub.cfg file



      menuentry "ubuntu-14.04.1-desktop-i386 Desktop ISO" 
      loopback loop /ubuntu-14.04.1-desktop-i386.iso
      linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-14.04.1-desktop-i386.iso noeject noprompt splash --
      initrd (loop)/casper/initrd.lz


      menuentry "Parrot-full-3.6_amd64 ISO"
      loopback loop /Parrot-full-3.6_amd64.iso
      linux (loop)/live/vmlinuz boot=live iso-scan/filename=/Parrot-full-3.6_amd64.iso noeject noprompt splash --
      initrd (loop)/live/initrd.img



      menuentry "kali3-amd64 Live system"
      loopback loop /kali-linux-2017.1-amd64.iso
      linux (loop)/live/vmlinuz boot=live iso-scan/filename=/kali-linux-2017.1-amd64.iso splash username=root hostname=kali
      initrd (loop)/live/initrd.img



      I have tried these ISOs in virtual machines and the work. I also tried as on my PC by putting them on USB using RUFUS and booting directly. They work. The problem with RUFUS is that it works when I use single ISO. But I don't want to make one USB per ISO. I want to make ONLY ONE USB that holds all the ISOs and I should be able to boots which ever I want into LIVE mode. So I switched on to GRUB. But I must say that while GRUB is okay but its documentation is severely limited and fragmented. I am guessing if I need this, then lot of other people need this too.










      share|improve this question













      Here where I am trying to do.



      USB Stick Boots to -> GRUB Loader -> GRUB boots one of many ISO files on the USB into LIVE mode.


      Here is my directory structure which is really simple



      MULTIBOOT(USB stick) ->
      - ubuntu-14.04.1-desktop-i386.iso (ISO File)
      - Parrot-full-3.6_amd64.iso (ISO File)
      - kali-linux-2017.1-amd64.iso (ISO File)
      - boot (FOLDER)
      - boot/grub (FOLDER)


      unbutu iso boots fine in my computer and in my VM parrot and kali iso load kernel but stop at initramfs and complain "install media not found"



      Here is my grub.cfg file



      menuentry "ubuntu-14.04.1-desktop-i386 Desktop ISO" 
      loopback loop /ubuntu-14.04.1-desktop-i386.iso
      linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-14.04.1-desktop-i386.iso noeject noprompt splash --
      initrd (loop)/casper/initrd.lz


      menuentry "Parrot-full-3.6_amd64 ISO"
      loopback loop /Parrot-full-3.6_amd64.iso
      linux (loop)/live/vmlinuz boot=live iso-scan/filename=/Parrot-full-3.6_amd64.iso noeject noprompt splash --
      initrd (loop)/live/initrd.img



      menuentry "kali3-amd64 Live system"
      loopback loop /kali-linux-2017.1-amd64.iso
      linux (loop)/live/vmlinuz boot=live iso-scan/filename=/kali-linux-2017.1-amd64.iso splash username=root hostname=kali
      initrd (loop)/live/initrd.img



      I have tried these ISOs in virtual machines and the work. I also tried as on my PC by putting them on USB using RUFUS and booting directly. They work. The problem with RUFUS is that it works when I use single ISO. But I don't want to make one USB per ISO. I want to make ONLY ONE USB that holds all the ISOs and I should be able to boots which ever I want into LIVE mode. So I switched on to GRUB. But I must say that while GRUB is okay but its documentation is severely limited and fragmented. I am guessing if I need this, then lot of other people need this too.







      boot kali-linux grub2 dual-boot grub






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Jul 24 '17 at 17:13









      Coder

      62




      62





      bumped to the homepage by Community♦ 4 mins ago


      This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.







      bumped to the homepage by Community♦ 4 mins ago


      This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.






















          2 Answers
          2






          active

          oldest

          votes

















          up vote
          0
          down vote













          I have spent lot of time on this. Tested with various methods to boot from loopback both command line and using grub.cfg parameters. Did not get it to boot kali or parrot. Ubuntu boots fine every time. I was able to book other linux distros. I tested with SuperGrub, same results. I believe this issue is with kali-linux-2017.1-amd64.iso and Parrot-full-3.6_amd64.iso. The boot process in these two is broken as it expects to load the root file system from a mounted cd/dvd drive. Tools like RUFUS are getting around this by expanding the contents of ISO into a /cd file which is probably loaded and mounted as a seperate ramdisk /mnt/cd. KALI and PARROT should fix this.






          share|improve this answer



























            up vote
            0
            down vote













            SOLVED THE ISSUE!!!!
            SOLUTION:



            You must use findiso kernel parameter for the boot process to locate the iso file midway to load the root file system. See my latest and working grub.config entries below:



            NOTE: I had MOVED MY ISO FILES to /boot-isos/ folder just to test superGrub. But they can be anywhere. Just make sure:



            1. to give correct path name to the iso file
            2. MUST USE findiso kernel parameter to let boot process find the iso file. Else it will NOT work.


            my current directory structure in USB now is as follows:



            USB STICK ->
            /boot (folder that holds GRUB)
            /boot-isos (folder that holds isos below)
            - KALI iso file
            - Parrot iso file
            - Ubuntu iso file

            menuentry "[loopback]Parrot-full-3.6_amd64"
            set isofile='/boot-isos/Parrot-full-3.6_amd64.iso'
            loopback loop $isofile
            linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=parrot
            initrd (loop)/live/initrd.img



            menuentry "[loopback]kali-linux-2017.1-amd64"
            set isofile='/boot-isos/kali-linux-2017.1-amd64.iso'
            loopback loop $isofile
            linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=kali
            initrd (loop)/live/initrd.img






            share|improve this answer




















              Your Answer







              StackExchange.ready(function()
              var channelOptions =
              tags: "".split(" "),
              id: "106"
              ;
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function()
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled)
              StackExchange.using("snippets", function()
              createEditor();
              );

              else
              createEditor();

              );

              function createEditor()
              StackExchange.prepareEditor(
              heartbeatType: 'answer',
              convertImagesToLinks: false,
              noModals: false,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: null,
              bindNavPrevention: true,
              postfix: "",
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              );



              );













               

              draft saved


              draft discarded


















              StackExchange.ready(
              function ()
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f381477%2fgrub-stops-at-initramfs-while-booting-kali-from-iso-image-in-usb%23new-answer', 'question_page');

              );

              Post as a guest






























              2 Answers
              2






              active

              oldest

              votes








              2 Answers
              2






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes








              up vote
              0
              down vote













              I have spent lot of time on this. Tested with various methods to boot from loopback both command line and using grub.cfg parameters. Did not get it to boot kali or parrot. Ubuntu boots fine every time. I was able to book other linux distros. I tested with SuperGrub, same results. I believe this issue is with kali-linux-2017.1-amd64.iso and Parrot-full-3.6_amd64.iso. The boot process in these two is broken as it expects to load the root file system from a mounted cd/dvd drive. Tools like RUFUS are getting around this by expanding the contents of ISO into a /cd file which is probably loaded and mounted as a seperate ramdisk /mnt/cd. KALI and PARROT should fix this.






              share|improve this answer
























                up vote
                0
                down vote













                I have spent lot of time on this. Tested with various methods to boot from loopback both command line and using grub.cfg parameters. Did not get it to boot kali or parrot. Ubuntu boots fine every time. I was able to book other linux distros. I tested with SuperGrub, same results. I believe this issue is with kali-linux-2017.1-amd64.iso and Parrot-full-3.6_amd64.iso. The boot process in these two is broken as it expects to load the root file system from a mounted cd/dvd drive. Tools like RUFUS are getting around this by expanding the contents of ISO into a /cd file which is probably loaded and mounted as a seperate ramdisk /mnt/cd. KALI and PARROT should fix this.






                share|improve this answer






















                  up vote
                  0
                  down vote










                  up vote
                  0
                  down vote









                  I have spent lot of time on this. Tested with various methods to boot from loopback both command line and using grub.cfg parameters. Did not get it to boot kali or parrot. Ubuntu boots fine every time. I was able to book other linux distros. I tested with SuperGrub, same results. I believe this issue is with kali-linux-2017.1-amd64.iso and Parrot-full-3.6_amd64.iso. The boot process in these two is broken as it expects to load the root file system from a mounted cd/dvd drive. Tools like RUFUS are getting around this by expanding the contents of ISO into a /cd file which is probably loaded and mounted as a seperate ramdisk /mnt/cd. KALI and PARROT should fix this.






                  share|improve this answer












                  I have spent lot of time on this. Tested with various methods to boot from loopback both command line and using grub.cfg parameters. Did not get it to boot kali or parrot. Ubuntu boots fine every time. I was able to book other linux distros. I tested with SuperGrub, same results. I believe this issue is with kali-linux-2017.1-amd64.iso and Parrot-full-3.6_amd64.iso. The boot process in these two is broken as it expects to load the root file system from a mounted cd/dvd drive. Tools like RUFUS are getting around this by expanding the contents of ISO into a /cd file which is probably loaded and mounted as a seperate ramdisk /mnt/cd. KALI and PARROT should fix this.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Jul 25 '17 at 7:25









                  user1570144

                  101




                  101






















                      up vote
                      0
                      down vote













                      SOLVED THE ISSUE!!!!
                      SOLUTION:



                      You must use findiso kernel parameter for the boot process to locate the iso file midway to load the root file system. See my latest and working grub.config entries below:



                      NOTE: I had MOVED MY ISO FILES to /boot-isos/ folder just to test superGrub. But they can be anywhere. Just make sure:



                      1. to give correct path name to the iso file
                      2. MUST USE findiso kernel parameter to let boot process find the iso file. Else it will NOT work.


                      my current directory structure in USB now is as follows:



                      USB STICK ->
                      /boot (folder that holds GRUB)
                      /boot-isos (folder that holds isos below)
                      - KALI iso file
                      - Parrot iso file
                      - Ubuntu iso file

                      menuentry "[loopback]Parrot-full-3.6_amd64"
                      set isofile='/boot-isos/Parrot-full-3.6_amd64.iso'
                      loopback loop $isofile
                      linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=parrot
                      initrd (loop)/live/initrd.img



                      menuentry "[loopback]kali-linux-2017.1-amd64"
                      set isofile='/boot-isos/kali-linux-2017.1-amd64.iso'
                      loopback loop $isofile
                      linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=kali
                      initrd (loop)/live/initrd.img






                      share|improve this answer
























                        up vote
                        0
                        down vote













                        SOLVED THE ISSUE!!!!
                        SOLUTION:



                        You must use findiso kernel parameter for the boot process to locate the iso file midway to load the root file system. See my latest and working grub.config entries below:



                        NOTE: I had MOVED MY ISO FILES to /boot-isos/ folder just to test superGrub. But they can be anywhere. Just make sure:



                        1. to give correct path name to the iso file
                        2. MUST USE findiso kernel parameter to let boot process find the iso file. Else it will NOT work.


                        my current directory structure in USB now is as follows:



                        USB STICK ->
                        /boot (folder that holds GRUB)
                        /boot-isos (folder that holds isos below)
                        - KALI iso file
                        - Parrot iso file
                        - Ubuntu iso file

                        menuentry "[loopback]Parrot-full-3.6_amd64"
                        set isofile='/boot-isos/Parrot-full-3.6_amd64.iso'
                        loopback loop $isofile
                        linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=parrot
                        initrd (loop)/live/initrd.img



                        menuentry "[loopback]kali-linux-2017.1-amd64"
                        set isofile='/boot-isos/kali-linux-2017.1-amd64.iso'
                        loopback loop $isofile
                        linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=kali
                        initrd (loop)/live/initrd.img






                        share|improve this answer






















                          up vote
                          0
                          down vote










                          up vote
                          0
                          down vote









                          SOLVED THE ISSUE!!!!
                          SOLUTION:



                          You must use findiso kernel parameter for the boot process to locate the iso file midway to load the root file system. See my latest and working grub.config entries below:



                          NOTE: I had MOVED MY ISO FILES to /boot-isos/ folder just to test superGrub. But they can be anywhere. Just make sure:



                          1. to give correct path name to the iso file
                          2. MUST USE findiso kernel parameter to let boot process find the iso file. Else it will NOT work.


                          my current directory structure in USB now is as follows:



                          USB STICK ->
                          /boot (folder that holds GRUB)
                          /boot-isos (folder that holds isos below)
                          - KALI iso file
                          - Parrot iso file
                          - Ubuntu iso file

                          menuentry "[loopback]Parrot-full-3.6_amd64"
                          set isofile='/boot-isos/Parrot-full-3.6_amd64.iso'
                          loopback loop $isofile
                          linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=parrot
                          initrd (loop)/live/initrd.img



                          menuentry "[loopback]kali-linux-2017.1-amd64"
                          set isofile='/boot-isos/kali-linux-2017.1-amd64.iso'
                          loopback loop $isofile
                          linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=kali
                          initrd (loop)/live/initrd.img






                          share|improve this answer












                          SOLVED THE ISSUE!!!!
                          SOLUTION:



                          You must use findiso kernel parameter for the boot process to locate the iso file midway to load the root file system. See my latest and working grub.config entries below:



                          NOTE: I had MOVED MY ISO FILES to /boot-isos/ folder just to test superGrub. But they can be anywhere. Just make sure:



                          1. to give correct path name to the iso file
                          2. MUST USE findiso kernel parameter to let boot process find the iso file. Else it will NOT work.


                          my current directory structure in USB now is as follows:



                          USB STICK ->
                          /boot (folder that holds GRUB)
                          /boot-isos (folder that holds isos below)
                          - KALI iso file
                          - Parrot iso file
                          - Ubuntu iso file

                          menuentry "[loopback]Parrot-full-3.6_amd64"
                          set isofile='/boot-isos/Parrot-full-3.6_amd64.iso'
                          loopback loop $isofile
                          linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=parrot
                          initrd (loop)/live/initrd.img



                          menuentry "[loopback]kali-linux-2017.1-amd64"
                          set isofile='/boot-isos/kali-linux-2017.1-amd64.iso'
                          loopback loop $isofile
                          linux (loop)/live/vmlinuz boot=live findiso=$isofile noconfig=sudo username=root hostname=kali
                          initrd (loop)/live/initrd.img







                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered Jul 25 '17 at 7:53









                          user1570144

                          101




                          101



























                               

                              draft saved


                              draft discarded















































                               


                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function ()
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f381477%2fgrub-stops-at-initramfs-while-booting-kali-from-iso-image-in-usb%23new-answer', 'question_page');

                              );

                              Post as a guest













































































                              Popular posts from this blog

                              How to check contact read email or not when send email to Individual?

                              Bahrain

                              Postfix configuration issue with fips on centos 7; mailgun relay