Linux – Dual Boot Windows 7 + Linux on 2 separate SSD + Data HDD

hard drivelinuxmulti-bootssdwindows 7

I'm about to build myself a new machine (to replace my old Celeron, yes you can laugh :P) and I want to be able to dual boot on Windows 7 (mostly for games) and Linux (development/programing). I'm a complete newbie in Linux installations – I have used Unix/Linux in the past but never installed it myself on my own machine.

I've found all the guides and warnings about partition alignment and think I have that covered correctly on how to calculate the sizes, offsets and offset of the first partition.

Important notes:

RAM = 16GB

Motherboard = ASUS Sabertooth 990FX (UEFI BIOS)

I plan the following SATA3 disks:

  • 128GB SSD for Windows 7
  • 64GB SSD for Linux (Mint Linux)
  • 1TB HDD for Data/Media/Recovery OS Partition

I've seen guides that say that when you install an OS on an SSD that you should unplug everything else so that there are no problems.

1) After installing Windows 7 on the first SSD, is it safe to have it "online" when installing Linux on the second SSD?

I've seen some people post that you need to leave an empty space partition at the beginning of the Windows 7 SSD for the dual boot and install Windows 7 on the second partition.

2) Is this "space" first partition on the Windows 7 SSD required for dual boot?

I've seen some solutions on dual booting from separate disks that say boot from the Linux drive first and add a menu item in GRUB to boot Windows from that disk. And others saying edit the Windows boot loader to add a Linux entry? I think I prefer the first option since it doesn't mess with Windows which seems prone to messing up in updates and what not.

3) How does the dual boot from 2 separate disks work and what is the disk boot order I should setup in the BIOS? Is the above solution the best to dual boot from separate disks?

I find mixed advice on the Linux partitions and where to put them (SSD or HDD). Some recommend only having /, swap and /home, while others suggest splitting further /usr and /usr/local (I don't plan on splitting /var as this won't be a server but a development workstation). Others even suggest putting /home on the HDD instead but some recommend leaving /home on the SSD but creating symlinks in /home to partitions/folders on the HDD for the media/data for example.

I've seen some suggest a /boot partition, but I don't intend to use other flavors of Linux so I'm not sure I need this.

I will at least have a few partitions on the HDD for media/documents/other (NTFS to share with Windows) and some spare space to install a rescue OS in case of disaster.

The /swap partition, if any required, will not be huge since I don't intend to hibernate/suspend.

4) Do I need a /swap partition and should I leave it on the SSD or shift it to the HDD? Or have 2, one on the SSD and one on the HDD but possibly setup so that the HDD swap is used first and the SSD one is only used as fallback in case the HDD is not there?

The /tmp partition will be a RAM disk on Linux (same ramdisk on Windows to map temp and other temporary locations) – shutting down will clear anything in memory.

5) What's recommended for a Linux development workstation in terms of partitions and sizes?

6) Do I need to enable AHCI in the BIOS for all drives before installing anything?

Finally, I have found all the other posts about optimizations in each OS for SSDs, so we don't need to cover this here.

Best Answer

Not in order, and not covering everything you need.

  1. Do you want the boot partition for windows? this is primarily for disaster recovery - and needs about 200 mb. In any case, its probably simpler to install windows first and linux second, especially if you want a single bootloader to select between OSes

  2. does your bios let you select between boot drives?

If so, you can have independent boot loaders - you can choose where to install the bootloader while installing linux, and unplugging the windows drive while installing linux is not a bad idea

Otherwise, install windows first, install linux, telling it to install grub to the windows drive. If you want to use the windows boot manager as the primary boot manager, you can set this up with easybcd

Unplugging shouldn't be necessary except to avoid user error when installing boot-related things,

  1. swap partition Well, depends on your usage patterns. Swap has two purposes on linux - for hibernation (in which case, you'll want one at least as but as your ram. Chances are you won't be using swap much with 16 gigs of ram, so setting it up on the data drive isn't a bad idea.

  2. AHCI - with a windows 7/linux combo you shouldn't need any emulation to install anything

  3. Partition sizes - modern thinking seems to be one big partition for everything.

  4. for the drive sizes and oses your using, partition alignment shouldn't be an issue. Its mainly an issue with XP or older and AF drives.