Page 2 of 2 FirstFirst 12
Results 11 to 12 of 12

Thread: [Hardware List] Apple/OSX EFI & Kali Linux

  1. #11
    Junior Member
    Join Date
    Apr 2016
    Posts
    8
    MacBook Pro 12,1
    Model: Retina 13" early 2015 12
    Booting: Live on USB with Mac Linux Usb Loader - Yes, all working
    Booting: MacOsx Boot loader : No
    Booting: Refind : Not directly, need to configure files before install but after it's working
    *Known issue : files have to be configured manually to install, sound not work great with earing for me.

    Should be added to the top post of this discussion.
    Last edited by mach; 2016-05-04 at 04:05 PM.

  2. #12
    Junior Member
    Join Date
    Oct 2016
    Posts
    1
    Am installing the latest, (2016.2) as of today, version on a macmini 2,1, trying to have a triple boot on it. Lion and Win 7 are installed, via Bootcamp. Had the dreaded EFI32 related problem, kept getting the "Select CD-ROM Boot Type" dialog, with no possibility to type anything. Did a lot of trial and research, burned a nice pile of unusable dvd's from both the 32 and 64bit official versions, until I found a pretty straightforward method in this post. The resulting iso was recognised at startup while holding the "alt" key, (as a windows disk), and is running the installer as I type. In short:

    Download "kali-linux-2016.2-amd64.iso"
    create a folder on your desktop (e.g. "Kali_bootable")
    copy the above ISO in the newly created folder

    Convert the ISO
    This is done via a very simple C program.

    First, start TextEdit, copy / paste the below code and save it in "Kali_bootable", as isomacprog.c (it will end with a .txt extension, erase it once it has been saved).

    Code:
    #include <sys/types.h>
    #include <sys/stat.h>
    #include <fcntl.h>
    #include <unistd.h>
    #include <string.h>
    #include <stdio.h>
    #include <stdlib.h>
    
    //static char *iso_name = {"mac.iso"};
    //cc -g -Wall isomacprog.c -o isomacprog
    
    int main(int argc, char **argv)
    {
      int fd, ret;
      unsigned char buf[2048 - 64];
      off_t lba;
      size_t buf_size = 2048 - 64;
    
      if (argc < 2) {
        fprintf(stderr, "No iso name assigned\n");
        exit(1);
      }
    
      char *iso_name = argv[1];
    
      fd = open(iso_name, O_RDWR);
      if (fd == -1)
        goto err_ex;
      if (lseek(fd, (off_t) 32768 + 2048 + 71, SEEK_SET) == -1)
        goto err_ex;
      ret = read(fd, buf, 4);
      if (ret == -1)
        goto err_ex;
      if (ret < 4) {
        fprintf(stderr, "Cannot read 4 bytes from %s\n", iso_name);
        exit(1);
      }
      lba = buf[0] | (buf[1] << 8) | (buf[2] << 16) | (buf[3] << 24);
      if (lseek(fd, lba * 2048 + 64, SEEK_SET) == -1)
        goto err_ex;
      memset(buf, 0, buf_size);
      ret = write(fd, buf, buf_size);
      if (ret == -1)
        goto err_ex;
      if (ret < buf_size) {
        fprintf(stderr, "Cannot write %d bytes to %s\n", (int) buf_size, iso_name);
        exit(1);
      }
      close(fd);
      printf("done\n");
      exit(0);
    err_ex:;
      perror(iso_name);
      exit(1);
    }
    Now we'll have to compile it in order to create an executable. Open the Terminal (HD -> Applications -> Utilities) and type

    Code:
    cc -g -Wall /Users/yourusername/Desktop/Kali_bootable/isomacprog.c -o /Users/yourusername/Desktop/Kali_bootable/isomacprog
    do not forget to correct the pathes to your real user folder (replace "yourusername" by the real one, e.g. "steve"
    you can drag and drop the "isomacprog.c" file in the Terminal from the "Kali_bootable" folder previously created on your Desktop
    the executable output file to be created "isomacprog" can be named the same way, just remove the .c ending

    You should end with a new executable file named "isomacprog" in the "Kali_bootable" folder.

    After that, make a COPY of the original ISO

    Code:
    cp /Users/yourusername/Desktop/Kali_bootable/kali-linux-2016.2-amd64.iso /Users/yourusername/Desktop/Kali_bootable/kali-linux-2016.2-amd64_oldmacversion.iso
    you can drag and drop the "kali-linux-2016.2-amd64.iso" file in the Terminal from the "Kali_bootable" folder previously created on your Desktop
    you can drag and drop the "kali-linux-2016.2-amd64.iso" file in the Terminal from the "Kali_bootable" folder previously created on your Desktop and just modify it's name (add for ex. "_oldmacversion") for the output file

    A new .ISO named "kali-linux-2016.2-amd64_oldmacversion.iso" should then appear in the "Kali_bootable" folder on your destop

    Then modify it into a bootable under EFI32 version

    Code:
    /Users/yourusername/Desktop/Kali_bootable/isomacprog /Users/yourusername/Desktop/Kali_bootable/kali-linux-2016.2-amd64_oldmacversion.iso
    You now can proceed with burning the new and modified .ISO named "kali-linux-2016.2-amd64_oldmacversion.iso"

    It should appear as a windows disk after holding the "alt" key at startup on a mac with 32bit EFI and run normally, allowing you to use it as a live cd or proceed with the installation.

    In the hope it helps :-)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •