Resolved Force Boot Camp installation boot without using Boot Camp Assistant?

Discussion in 'Windows, Linux & Others on the Mac' started by j1104638, May 30, 2016.

  1. j1104638, May 30, 2016
    Last edited: May 30, 2016

    j1104638 Suspended

    Joined:
    Dec 26, 2015
    #1
    Hi all.

    I'm trying to install Windows 7 on rMBP 15" late 2013. I don't want to waste any space on OS X installation as it will not be used at all. The most I might need it for is if Apple releases firmware or SMC updates and I can install them booting from the OS X installed on USB drive.

    Here is the problem.

    When you use Boot Camp Assistant the best it allows is to leave 30 GB in the beginning of the disk for OS X and the rest for Windows. Installing Windows goes OK but reclaiming these 30 GB is pain in the ass - growing NTFS partition is only easily done towards its end and is quite complex towards its start.

    I tried to circumvent this problem the following way: I use Boot Camp Assistant to split the disk as follows - maximum space for OS X in the beginning and minimum allowed 30 GB for Windows in the end. Right in the beginning of Windows installation I fire Shift-F10, diskpart, remove big OS X partition, create NTFS partition on its place, remove small Windows partition in the end, assign letter C to the newly created big NTFS partition and install on it.

    So all in all I get hybrid MBR
    200MB EFI partition
    XGB big NTFS (0x07) partition
    30GB small free space
    and GPT
    200MB EFI partition
    XGB big HFS+ (0xAF00) partition
    30GB small NTFS (0x0700) partition
    Notice that big partition is considered differently NTFS vs HFS in MBR and GPT respectively, and 30GB space is considered free vs NTFS partition in MBR and GPT respectively.

    Windows installation goes OK, Windows is launched and everything. I need to reclaim 30GB space in the end of the disk.

    The best way to reclaim it is to boot with Linux live USB but after Windows installation it just refuses to boot both in legacy and UEFI mode. I tried Ubuntu and Fedora live USBs and they both stuck on initial state of boot (dracut).

    Ok, I boot with OS X El Capitan Installation USB, it works. I fire Terminal, diskutil eraseVolume and convert this 30GB small NTFS partition into HFS+ partition (since diskutil works with GPT it sees 30GB as NTFS partition and not free space as it is in MBR), install OS X in it, everything goes OK. I can boot OS X, I can boot Linux live USBs from now on, but Windows refuses to boot - it shows blue screen in the middle of Starting Windows logo.

    What other ways do I have?

    The first idea is just abandon Boot Camp Assistant and boot from Windows installation USB directly. This way I can partition the disk the way I want in Linux, then boot Windows installation directly and just install Windows. This does not work because standard Windows ISO does not include USB 3.0 drivers (and maybe some others) and keyboard and trackpad just does not work. I've tried blessing the Windows installation USB with -legacy, but it seems it's not enough - keyboard and trackpad still does not work. I suspect Boot Camp Assistant blesses somehow differently and I cannot find exact command it uses anywhere in the internet to reproduce it without using Boot Camp Assistant.

    The second idea is to get some other partition manager which can work both with GPT and hybrid MBR (like Linux gdisk) which diskpart cannot which can be fired right from command prompt in Windows 7 installation. This way I'd be able to repartition the disk the right way before installing Windows 7 and hopefully it will work. At the moment diskpart makes hybrid MBR inconsistent with GPT which might be the problem.

    The third idea is to inject USB 3.0 drivers in Windows installation USB and install it fully without Boot Camp Assistant or blessing. I'm not sure this will not break anything - maybe Boot Camp Assistant does something more than tells the keyboard and trackpad to work in USB 2.0 mode.


    Please share your thoughts. :)
     
  2. Shirasaki macrumors 603

    Shirasaki

    Joined:
    May 16, 2015
    #2
    Regarding keyboard and trackpad thingy, boot camp assistant does load a group of drivers on Windows install disk. Those drivers will help you use your keyboard and trackpad during install.
    You will need to create a Windows install media in order to get them.
     
  3. j1104638, May 30, 2016
    Last edited: May 30, 2016

    j1104638 thread starter Suspended

    Joined:
    Dec 26, 2015
    #3
    @Shirasaki last Boot Camp Assistant in last El Capitan does not load them for Windows 7 any more. It just formats the USB, extracts ISO on it and right after that sends you to Boot Camp support site for you to download and inject them yourself, and it sends you to the main page, not to some particular support article.

    I've followed the info in this article https://support.apple.com/en-us/HT205016#new7 , downloaded this package https://support.apple.com/kb/DL1721?locale=en_US (it matches my rMBP 15" late 2013) and extracted it on my Windows installation USB root (i. e. /Volumes/WININSTALL/$WinPEDriver$, /Volumes/WININSTALL/AutoUnattend.xml, /Volumes/WININSTALL/BootCamp). It did not help, booting from this USB after Boot Camp Assistant - keyboard and mouse works, booting from this USB using Alt upon boot and choosing it - keyboard and mouse does not work.
    --- Post Merged, May 30, 2016 ---
    Booting from this USB after manually blessing the USB with -legacy - keyboard and mouse does not work.
    --- Post Merged, May 30, 2016 ---
    I'm stuck with it for several days already. :)
    --- Post Merged, May 30, 2016 ---
    I bet you have to inject them into boot.wim somehow OR force USB to work in 2.0 mode. I think Boot Camp Assistant does the latter but I don't know how to reproduce it without the Assistant.
     
  4. Freyqq macrumors 68040

    Joined:
    Dec 13, 2004
    #4
    If you want the entire drive to be Windows only:

    Get the drivers you need onto a flash drive. Boot from OSX on an external HD or recovery partition and format the entire SSD to FAT32 (MS DOS format). Then install Windows, formatting the entire drive to NTFS. Then, install all the drivers from the flash drive.
     
  5. j1104638, May 30, 2016
    Last edited: May 30, 2016

    j1104638 thread starter Suspended

    Joined:
    Dec 26, 2015
    #5
    Considered this. Don't want to force disk to be fully MBR, might want to install Linux thereafter shrinking the Windows volume and it can utilize EFI, no need to force it to work in legacy mode. Hybrid MBR is the way to go.
     
  6. j1104638, May 30, 2016
    Last edited: May 30, 2016

    j1104638 thread starter Suspended

    Joined:
    Dec 26, 2015
    #6
    Okay I've managed to overcome this problem. Presumably the problem is that diskpart for some unknown reason creates partition 2 bigger than the one just deleted. So we end up with partition 2 in MBR overlapping partition 3 in GPT. OS X diskutil pays no attention to MBR and just formats partition 3 according to GPT effectively rewriting some of the MBR partition 2 space. Of course Windows cannot boot after that.

    Here is the full guide.

    1. Partition the disk as one HFS+ partition (diskutil partitionDisk diskX 1 GPT hfs+ 'Macintosh HD' R).
    2. Install OS X.
    3. Boot into OS X. Revert coreStorage (diskutil coreStorage revert diskX). Reboot.
    4. Remove recovery (diskutil mergePartitions hfs+ 'Macintosh HD' diskXs2 diskXs3).
    5. Fire Boot Camp Assistant. Check first and second checkbox. Create Windows installation USB.
    6. Boot Camp Assistant tells you to download drivers yourself. Download them (https://support.apple.com/en-us/HT205016#new7) and unpack on Windows installation USB root.
    7. Download gdisk for Windows (http://www.rodsbooks.com/gdisk/download.html -> SourceForge -> Files -> gptfdisk -> current version -> gdisk binaries -> gdisk-windows-X.zip) and unpack it on Windows installation USB root as well.
    8. Fire Boot Camp Assistant again. Check last checkbox. Let it partition the disk whatever you want.
    9. It will automatically reboot to Windows installation USB. Fire Command Prompt as soon as it loads by Shift-F10.
    10. Locate Windows installation USB drive (should be D), go to gdisk directory created in step 7.
    11. Fire "gdisk64 X:" (where X is the drive number starting with 0) and partition GPT whatever you want. Preferably create 15GB partition for new OS X installation right after Windows partition (I'll explain later).
    12. Go to recovery menu (r), make hybrid MBR (h).
    13. Write changes to disk (w).
    14. Exit Command Prompt. Choose and format Windows partition and install Windows.

    Now you have fully working Windows on partition you created wherever you wanted. Unfortunately for unknown reason no Linux distros can boot from Live USB now. To fix it you can do the following.

    15. Install OS X on 15GB partition created in step 11.

    Linux Live USBs will start to work.

    16. If you don't need OS X, expand Windows partition to it. Preferably do it using gdisk, remove OS X partition from GPT, print info about Windows partition (note the unique GUID), remove Windows partition, create Windows partition back starting on the same sector and ending on the last sector of OS X partition, restore its unique GUID, recreate hybrid MBR, expand filesystem.

    Now you have fully working GPT-hybrid MBR partitioning scheme, Linux Live USBs work, there is no OS X, you can shrink and expand whatever you deem necessary.
     
  7. Shirasaki macrumors 603

    Shirasaki

    Joined:
    May 16, 2015
    #7
    These are some superb works. Congratulations! :)
     
  8. Fancuku macrumors 6502a

    Fancuku

    Joined:
    Oct 8, 2015
    Location:
    PA, USA
    #8
    It's been a while since I did a Windows only installation on a Mac but I don't remember doing that many steps.
    I think I used bootcamp assistant to create the bootable usb and dowloaded the necessary bootcamp drivers. Then I did internet recovery, used the disk utility to wipe the os x and recovery partitions and created one partition as hfs+.
    Rebooted, then chose the EFI usb boot option instead of the Windows option. Windows installer started, wiped the whole newly created hfs+ partition and Windows installer took care of the reformatting and installation. After booting into Windows for the first time, ran the Bootcamp setup and got all the drivers installed. That was it.
     
  9. j1104638 thread starter Suspended

    Joined:
    Dec 26, 2015
    #9
    @Fancuku it depends what Mac you are on and what Windows you try with.

    On Air 13" late 2011 and MBP 15" late 2011 you can boot from Windows 7 installation USB in non-EFI mode without Boot Camp Assistant help so obviously you just partition the disk the way you want and boot from the USB.
    On MBP 15" late 2011, Air 13" late 2011, rMBP 15" late 2013 and rMBP 15" late 2015 you can boot from Windows 8, 8.1 and 10 installation USB in EFI mode without BootCamp Asistant help.

    On rMBP 15" late 2013, however, you can't install Windows 7 from installation USB created by Boot Camp or Rufus because when you boot in non-EFI mode without Boot Camp Assistant help no input devices work so you end up with being unable to press Next. This can be solved either by injecting USB 3.0 drivers in boot.wim (not just lay them in $WinPEDriver$ on the USB) or by fully unattended install. Both are new to me so I preferred the vanilla Windows ISO.

    You can't boot Windows 7 installation USB on any Mac in EFI-mode without specific alterations like using rEFInd. Choosing EFI-mode in standard Mac boot menu (Alt key upon boot) will just hang the Mac on black screen.
    --- Post Merged, Jun 5, 2016 ---
    Considering the same USB (I checked all the files on it byte by byte before and after) is booted without input devices without Boot Camp Assistant and with input devices with Boot Camp Assistant, I think Apple somehow hints the system next boot should be in legacy USB 2.0 mode. However I could not find a way to reproduce it without Boot Camp Assistant - bless just does not have such an option.
     
  10. Fancuku macrumors 6502a

    Fancuku

    Joined:
    Oct 8, 2015
    Location:
    PA, USA
    #10
    It was done with W8.1. I don't have experience with W7 on a Mac.
     

Share This Page