13

I've been tearing my hair out the last couple days trying to get Windows installed. I have a MacBook Pro Retina 15 inch mid 2014. Yosemite version 10.10.1. Win 7 64 bit iso (sha1 - 0bcfc54019ea175b1ee51f6d2b207a3d14dd2b58).

I have tried two usb 2.0 flash drives with 'Create a Windows 7 or later install disk' option in BCA. This proceeds smoothly and so does creating the partition using Install Windows 7 option. However, when it restarts, it says something along the lines of 'no bootable device' If I hold down 'alt', the only options are to boot back into OS X & the recovery disk.

I realise this question has been asked countless times - I have read a lot of them but few seem applicable to my situation and those that are have not helped yet. I have not tried another USB yet since I am bandwidth limited (both in download speed and data limit) and BCA wants to redownload Windows support files every time and at this point it feels like a shot in the dark.

Any help with this will be greatly appreciated. Some further questions:

  • Is there a way to determine whether the usb drives are at fault?
  • Does BCA create the bootable drive in any special way? I.e. is it possible to create it by another method that will still play well with the bootcamp process?
1
  • The ReFind Boot Manager needs a special mention here - it saves a lot of complications by using it to manage the boot process on a Mac: rodsbooks.com/refind Commented May 27, 2021 at 9:08

3 Answers 3

25

Installing Windows 7 or 10 Pro 64 bit without DVD or Flash Drive

If you are trying to install Windows 7 on a 2012 through 2014 Mac, then you should read my answer to this question.

Special thanks to user Rafa, who was able to correct this procedure so it now works with Windows 10.

Here I assume your computer is configured as required by the Boot Camp Assistant. (In other words, you will be installing Windows to the 4th partition on disk 0.) Also, your firmware is up to date and you have downloaded the correct "Boot Camp Support Software" for your model Mac computer. Before starting, remove all DVD's and external devices from your Mac.

Note: Some of the steps, that do not involve VirtualBox, have images captured from a VirtualBox window. This was done when this was the easiest way to create an illustration. I suppose I could have cropped the images, but I chose not to.

(Hint: For a better view, click on an image or open an image in a new window.)

  1. Create a MS-DOS (FAT) formatted partition on your Macs internal drive. This is where Windows 7 will be installed. You can use the Bootcamp Assistant, the Disk Utility, or commands (distutil, gpt and/or fdisk) entered in a Terminal window. Other third party tools, such as gdisk, can also be used. Give the label for this partition the name "BOOTCAMP". When finished, quit all applications.

    This procedure requires the "BOOTCAMP" partition be the 4th partition on your Macs internal drive (disk0). If you are using the Disk Utility from OS X 10.7 or newer and your Mac has the default drive configuration, then the new "BOOTCAMP" partition should be created as the 4th partition automatically. However, if you are using APFS and the default drive configuration, then the new "BOOTCAMP" partition should be created as the 3th partition automatically.

  2. Make sure the drive is using the GPT/MBR hybrid partitioning scheme. See my answer to the question "How to convert a drive from the GPT format to the hybrid GPT/MBR format when using High Sierra (macOS 10.13.2)" for a procedure that accomplishes this task.

    User Semi has noted that the Boot Camp Assistant (BCA) will correctly GPT/MBR hybrid partition the drive. So, you may be able to the the BCA to partition the drive, then use the flash drive to install Windows.

  3. Download and install a free copy of VirtualBox. I used VirtualBox 5.0.14 r105127, Copyright © 2016.

  4. Do the following to transfer the "Boot Camp Support Software" to a partition compatible with VirtualBox. Create folder named "VirtualBox" in your Documents folder. Open the Disk Utility and from the menu bar select File->New->Blank Disk Image. Create this image in the "VirtualBox" folder using the following parameters.

    1

    Using the Finder application, copy the "Boot Camp Support Software" to this new partition. When finish, this new partition should appear in the Finder as shown below. (For readers with older Macs, you may only have the "BootCamp" folder.)

    2

  5. This step will create the file needed by VirtualBox to access the partition containing the "Boot Camp Support Software". In a Terminal application window, enter the following commands.

    Note: I assume you are using the default Bourne-Again Shell (bash).

    cd  ~/documents/virtualbox
    open  bcss.dmg
    DISK1=$(mount|awk  -F  s1  '/BCSS/{print$1}')
    diskutil  unmountDisk  $DISK1
    vboxmanage  internalcommands  createrawvmdk  -filename  "$PWD/bcss.vmdk"  -rawdisk  $DISK1
    

    The result should be the creation of the file bcss.vmdk in your "VirtualBox" folder. Later, you will select this file to give a virtual machine access to this partition.

    Note: At this point, one should realize it would be easier to copy the commands from this document and paste them into the Terminal application window.

  6. This step will create the files needed by VirtualBox to access the physical partition where you will install Windows. In a Terminal application window, enter the following commands.

    cd  ~/documents/virtualbox
    DISK0=/dev/disk0
    PARTITION=4
    PARTID="$DISK0"s"$PARTITION"
    diskutil  unmount  $PARTID 
    sudo  chmod  go+rw  $PARTID
    sudo  vboxmanage  internalcommands  createrawvmdk  -filename  "$PWD/bootcamp.vmdk"  -rawdisk  $DISK0  -partitions  $PARTITION
    sudo  chown  $USER  bootcamp*.vmdk
    

    Note: This access granted by the chmod command will only last until OS X is rebooted.

    The result should be the creation of the files bootcamp.vmdk and bootcamp-pt.vmdk in your "VirtualBox" folder. Later, you will select the file bootcamp.vmdk to give a virtual machine access to the physical partition.

    Note: OS X prefers to automount file systems. This can be disabled for a particular partition by creating or modifying the /etc/fstab file. Instead of employing the /etc/fstab file, the user is asked to repeatedly enter the following commands.

    diskutil  unmount  $PARTID;diskutil  unmountDisk  $DISK1
    

    These commands unmount the physical "BOOTCAMP" partition and the disk image file bcss.dmg containing the "BCSS" partition.

  7. Configure the virtual machine. Open the VirtualBox application and click on icon above the New label. Enter or select the values shown below, then click the "Continue" button.

    2000

    Use the default settings except for the hard drive. Choose the "Use an existing virtual hard drive file" button. Navigate to your "VirtualBox" folder. Highlight the bootcamp.vmdk file. Before clicking the "Open" button, enter the following commands in the same Terminal application window.

    diskutil  unmount  $PARTID;diskutil  unmountDisk  $DISK1
    

    Open the bootcamp.vmdk file. Your window should appear similar to what is shown below.

    2001

    Click the "Create" button.

    After returning to the VirtualBox application's "Oracle VM VirtualBox Manager" window, click on the icon above the "Settings" label. Next, click on the icon above the "Storage" label. In the "Storage Tree", "Controller: SATA" should be highlighted. Right click on this highlighted area and select "Add Hard Disk". Choose the "Use an existing virtual hard drive file" button. Navigate to your "VirtualBox" folder. Highlight the bcss.vmdk file. Before clicking the "Open" button, enter the following commands in the same Terminal application window.

    diskutil  unmount  $PARTID;diskutil  unmountDisk  $DISK1
    

    Open the bcss.vmdk file. Next, select the "Use Host I/O Cache" option. Your window should appear similar to what is shown below.

    2002

    Highlight the Empty CD/DVD and select "Choose Virtual Optical Disk File..." to attach your Windows 7 iso file. (Hint: Look for the CD/DVD icons)

    2003

    Click OK to close the window. Your "Oracle VM VirtualBox Manager" window should appear similar to what is shown below.

    2004

  8. In this step, you will copy the necessary files to the physical partition, so later you can restart your Mac and install Windows. Enter the following commands in the same Terminal application window.

    diskutil  unmount  $PARTID;diskutil  unmountDisk  $DISK1
    

    Next, click on the icon above the "Start" label to boot from the Windows 7 iso file. Press the space bar, if prompted to "Press any key to boot from CD or DVD."

    Note: The mouse pointer must be over the virtual machine screen window before you press the space bar.

    When the display below appears, click the "Next" button.

    100

    When the display below appears, click the "Install now" button.

    101

    The message "Setup is Starting…" should appear, followed by the display shown below.

    Reaching this point causes any necessary drivers to be loaded. Next, click on the red box with the white "X". If prompted, click on "Yes". When the display below appears, select "Repair your computer".

    101

    With the button "Use recovery tools that can help fix problems starting Windows." selected, click the Next button.

    102

    Select the "Command Prompt" option.

    103

    Insure the drive letters C through F are not assigned by default to a volume by entering the following commands.

    mountvol  c:  /d  >nul
    mountvol  d:  /d  >nul
    mountvol  e:  /d  >nul
    mountvol  f:  /d  >nul
    

    Enter the following to determine a list of the current volumes.

    diskpart
    list  volume
    

    The image below displays the volumes found on my Mac. You may get different results.

    9000

    Enter the following commands, to assign the drive letters D, C and E to the CD-ROM volume and the volumes labeled "BOOTCAMP" and "BCSS", respectively. In the image shown above, these are volumes 0, 3 and 4. If your volume indices are different, make the appropriate substitutions. Also, NTFS format the "BOOTCAMP" volume.

    select  volume  3
    assign  letter=c
    format  quick  fs=ntfs  label=BOOTCAMP
    select  volume  0
    assign  letter=d
    select  volume  4
    assign  letter=e
    list  volume
    exit
    

    When finished, the volume letters should appear similar to what is shown below.

    9001

    Next, enter the commands givens below. The bootsect command writes boot code to a Volume Boot Record (VBR) of a partition and Master Boot Record (MBR) of the corresponding drive.

    bootsect  /nt60  c:  /mbr
    bootsect  /nt60  e:  /mbr
    

    The next sequence of commands creates a Virtual Hard Disk (VHD) file. The VHD represents a virtual flash drive from which Windows will be installed on to the physical "BOOTCAMP" partition.

    Note: If you are installing Windows 10, then the parameter fs=fat32, in the format command shown below, should be replaced with fs=ntfs.

    diskpart
    create  vdisk  file=c:\flashdrive.vhd  maximum=8000  type=fixed 
    attach  vdisk
    create  partition  primary
    format  quick  fs=fat32  label=FLASHDRIVE
    assign  letter=f
    exit
    

    Finally, copy the Windows installer iso and "Boot Camp Support Software" files first to VHD, then directly to the physical partition where Windows is to be installed. Exit the Command Prompt window when finished.

    xcopy  d:*  f:  /s  /h
    xcopy  e:*  f:  /s  /y
    xcopy  f:*  c:  /s  /h
    exit
    

    Note: The files \sources\boot.wim and \sources\install.wim take a long time to copy. The file sizes are 168 MB and 2.95 GB, respectively.

    Select the "Shut Down" button to shutdown the virtual machine. Quit the VirtualBox application.

  9. This step will involve configuring Master Boot Record (MBR) of your physical internal drive. The MBR is stored on the first 512 bytes of this drive. This space is shared by boot code and the MBR partition table.

    This step can not be preformed under OS X 10.11 (El Capitan) with System Integrity Protection (SIP) turn on. (This is the default setting.) If you are using OS X 10.11, you must disable SIP, complete this step, then restore SIP. See the link: How do I disable System Integrity Protection (SIP) AKA “rootless” on OS X 10.11, El Capitan?.

    In a Terminal application window, enter the following commands. The first fdisk command flags the "BOOTCAMP" partition as the active partition. The second fdisk command changes the "BOOTCAMP" partition id to 7. The final fdisk command copies the boot code from the MBR of the disk containing the "Boot Camp Support Software" partition to the MBR of the physical disk containing the "BOOTCAMP" partition.

    cd  ~/documents/virtualbox
    DISK0=/dev/disk0
    PARTITION=4
    PARTID="$DISK0"s"$PARTITION"
    open  bcss.dmg
    DISK1=$(mount|awk  -F  s1  '/BCSS/{print$1}')
    INPUT=$(printf  "f  $PARTITION\nq\ny")
    sudo  fdisk  -e  $DISK0  <<<"$INPUT"  &>/dev/null
    INPUT=$(printf  "s  $PARTITION\n7\nq\ny")
    sudo  fdisk  -e  $DISK0  <<<"$INPUT"  &>/dev/null
    sudo  fdisk  -u  -y  -f  $DISK1  $DISK0
    diskutil  mount  $PARTID
    

    Note: To display the value for the variable INPUT, use the command echo "$INPUT".

  10. This is the step where you install Windows to your "BOOTCAMP" partition. Restart your Mac and hold down the option/alt key. Select the Windows icon to boot from the "BOOTCAMP" partition. Open a Command Prompt window, by navigating through the displays as you did in step 8. Enter the commands below to attach the "FLASHDRIVE" partition stored in the Virtual Hard Disk (VHD) file.

    diskpart
    select  vdisk  file=c:\flashdrive.vhd
    attach  vdisk  readonly
    list  volume
    exit
    

    On my Mac, the output from the list volume command shows E to be the drive letter assigned to the "FLASHDRIVE" partition. If your drive letter is different, make the correct substitution when entering the e:\setup command given at the end of this step. Next, remove all the files, but one, from the "BOOTCAMP" partition.

    rmdir  /s  /q  c:\
    

    If the above command executes correctly, you should get the error message: "c:\flashdrive.vhd - The process cannot access the file because it is being used by another process."

    Start installing Windows 7 by entering the command given below. Select "BOOTCAMP" as your installation partition.

    e:\setup
    

    The installation files are stored in the "FLASHDRIVE" partition. Since this partition is stored as a VHD file in the "BOOTCAMP" partition, do not try to reformat the "BOOTCAMP" partition. You will remove these installation files in a later step. When your Mac restarts, it will boot to OS X. This is to be expected. From the "System Preferences" select Windows as your startup disk and restart the Mac. Your Windows installation will continue.

  11. Once Windows finishes installing, the "Boot Camp Support Software" can be applied. To access this software, the c:\flashdrive.vhd file, containing the "FLASHDRIVE" partition, needs to be attached. Click on the "Start" button, type in diskmgmt.msc and hit the return key. Once in Disk Management, click on Action in the menu bar and select Attach VHD. Select the file location and check "Read-only" to prevent writes to the VHD file. After you hit "OK", the drive will show up in Disk Management with a blue icon. Close Disk Management.

    In the AutoPlay popup window, select "Open folder to view files." (If no popup appears, use the Windows Explorer to open the drive labeled "FLASHDRIVE".) The setup.exe file can be found in the folder labeled "BootCamp". Execute this application to install the "Boot Camp Support Software". The VHD file will detach when the computer restarts.

  12. Finally, remove DVD and "Boot Camp Support Software" folders and files. This can be accomplished by dragging the c:\flashdrive.vhd file to the Recycle Bin. If you get an error message about the file being open, restart the computer and try again.

Clean Up

The "Virtual Box" folder can be deleted. You will probably need to eject the "BCSS" partition first.

You can delete the "BootCamp" virtual machine. This can be done from the VirtualBox application. If VirtualBox does not remove all the files, you can remove them manually. Look in the ~/"VirtualBox VMs" folder.

You can delete the Windows 7 iso file.

You can remove the VirtualBox application, but since it takes such little space, I would not bother.

30
  • 1
    @Max: The genesis of this answer is Boot camp install of Windows 7 issue, no bootable devices, where the use of environment variable made more sense. This reincarnation assumes a Mac has only one internal drive. Based on user Hugo's success, the next generation of this procedure should work for Windows 7, 8, 8.1 and 10 with Macs containing 1 or 2 internal drives. Commented Feb 12, 2016 at 13:21
  • 1
    @Max: Originally, I set variable DISK1 to /dev/disk1, but user klanomoath pointed out this would be wrong if Core Storage is being used. User Hugo needed to change DISK0 to /dev/disk1 and PARTITION to 3. So the use of variables makes substitutions easier.. Also, once the variables are set, one can cut and paste the commands rather than typing them in. Commented Feb 12, 2016 at 15:05
  • 1
    Just to let others know that I followed this procedure and successfully installed Windows 10 alongside OS X 10.11 in my late 2011 MBP 17'. The copy errors that @hugo mentioned are due to the fact that on Windows 10 some setup files are larger than 4G and the Virtual Hard Disk is FAT32, which cannot accommodate them, so the first xcopy instruction fails. If you format the VHD with NTFS everything works. Commented Jun 16, 2016 at 19:29
  • 1
    @Rafa: Your correction has been entered in the procedure. Commented Jun 16, 2016 at 21:09
  • 1
    @ Razgriz: Yes, you can use the Boot Camp Assistant application. Commented Jun 27, 2016 at 10:14
0

I do not have a new enough Mac to install using a USB flash drive and I have not created one recently enough to remember what is stored on it. You can mount the iso file and I believe you should be able to compare with the content on the flash drive. But again I am not sure.

Your external USB ports are both USB 3 and that might just be the problem. The Windows 7 installer may not work with USB 3 ports. Do you suppose Apple expects you to use an external optical (DVD) drive?

It is possible to install Windows 7 without the use of a USB flash drive or a optical DVD drive. The process is tedious and I will not go into the steps unless you are interested. You will need to download free third party software to do so.

Did you download the "Boot Camp Support Software" and follow the steps outlined at the site given below?

Install Windows 7 and earlier on your Mac using Boot Camp

8
  • I hope they dont expect me to use an external optical drive. The method you refer to, is that making use of eg virtual box? I've so far stuck with bootcamp as I really want to avoid messing up my drive (this has happened to me so many times on windows).
    – unohoo
    Commented Jan 28, 2016 at 20:13
  • I did not download the software separately no, it happens as part of the process in BCA to make a bootable usb. I followed all of the other steps though
    – unohoo
    Commented Jan 28, 2016 at 20:14
  • I purpose of downloading the Boot Camp Support Software 5.1.5640 was to save on your limited bandwidth. The files use 1.36 GB of space and once this step in completed you should not have to repeat it. You are correct, the third party software is VirtualBox. The installer for VirtualBox is a 91 MB file, so it should download fairly quickly. One advantage to having VirtualBox installed, is you could then boot from the Window 7 iso using a virtual machine to see if the iso is any good. You could then copy these files to your Boot Camp partition and install windows on your physical Mac. Commented Jan 29, 2016 at 8:08
  • Unfortunately if I test a new usb I have no choice regarding the download of the windows support software - the box cannot be unchecked. Have you used the virtualbox method before? Are you aware of any dangers in using that method? I do already have virtualbox installed.
    – unohoo
    Commented Jan 29, 2016 at 9:12
  • Yes, I have used VirtualBox to install Windows to physical partition on my 2007 iMac. If you wish, I could post a tutorial where you would employ the procedure to install Windows on a virtual machine. You could then try the procedure for yourself. This should be fairly safe, since you would be only working in a virtual environment. Later, I could post how to do the same, using the physical BOOTCAMP partition on your Mac. Here, VirtualBox would only be used to copy the files to the physical partition. You would not use VirtualBox to do the physical install of Windows to the BOOTCAMP partition. Commented Jan 29, 2016 at 10:49
0

It so happened that I did a win10 install on my MacBook Air just yesterday, and I ran into exactly the same problem of seeing "no bootable partition", followed by having only two choices at the boot selection screen after power cycle. However, I didn't do anything special to get it working. I just restarted it again, while holding down the Option key from the beginning, and the USB (windows) showed up as one of the boot choices. I'll just list everything I can think of so that you might spot something:

  • MacBook Air (mid 2012). Latest El Capitan 10.11.3. USB 2 flash drive (not USB 3).

    1. Download win10 64 bit installation ISO file from MS.
    2. Use BCA to create bootable installation drive on the flash drive, and download the boot camp files to the same drive. Create bootcamp partition (70GB)
    3. Remove a JetDrive that I had in the SD card slot. No other external drive except the USB flash drive
    4. Restart. Shows the "no bootable partition" message.
    5. Power down. Power back up, with Option key pressed. Only see "Macintosh HD" and "Recovery 10.11.3". Select "Macintosh HD".
    6. On desktop, check to make sure the USB drive has the right stuff (e.g. autorun.inf, setup.exe, boot directory, BootCamp directory, etc.)
    7. Restart. Hold the Option key when it starts to power up.
    8. Now it shows 4 choices on the boot screen: Macintosh HD, Recovery, USB (Windows), USB (EFI boot).
    9. Choose USB (Windows). Installation starts.
3
  • I am very interested in your success installing Windows 10. Your model is one of the officially supported models for Windows 10. In step 9 you chose a BIOS/MBR (i.e. Window) install over the EFI/GPT (i.e. EFI boot) install. I assume had no problems installing and were able to run "setup.exe" to install the "Boot Camp Support Software" afterwards? If you succeeded, this would confirm Windows 10 is still being installed using the legacy BIOS/MBR method on Macs that officially support Windows 10. Commented Feb 11, 2016 at 15:49
  • Yes, I selected the "Windows" option instead of the "EFI boot" option. So far, win10 is working fine in BootCamp. I was able to reinstall some of my old windows programs and run them without problems.
    – ylnj
    Commented Feb 11, 2016 at 19:12
  • Remembered a couple more things. First is that I needed to disconnect/remove all external drives including what's in the SD card slot (step 3 above), or the windows installation refuses to use the bootcamp partition. The second is that after windows finished installing, the BCA support software started to install on its own, and eventually got stuck installing Realtek audio (?). Following some advice I found on the web, I just killed the realteksetup.exe task, and BCA can finish installing the rest. So far, everything seems to work fine (track pad, USB, SD card, wifi).
    – ylnj
    Commented Feb 11, 2016 at 19:25

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .