Is it advisable to create a raid array with only part of a drive and actively use the other part of that drive or should you always use the full disk?
The advice is always to use as much similar devices as you can. I'm not sure how much of that advice is superstition though, but lets look at this first:
Is it advisable to create a raid 1 array with a SSD and HDD or will that blow the whole speed advantage of the SSD?
No. Don't do that, you will blow the speed. Apart from the fact that they are different devices etc, the one thing I am quite sure of is that your speeds will drop, as you are going to be working at the speed of the slowest disk -> your ssd-hdd combo will be way slower then your SSD :
You should NOT do that to your SSD. Your first option is the best one. Just give yourself safe userspace, and speedy system disk. Backup that disk. (remember, RAID is not a backup strategy)
I actually did this for myself a few months ago. The process is a bit long, and read through the entire thing before you make any decisions as to whether you want to do it or not. You will need to change your registry, and although I have not experienced any problems so far, you may if you don't do everything as I did.
First, set up your partitions in a Ubuntu live disk. Copy all your information to a safe volume in case something happens. Then, wipe all your drives.
Install Windows first. When you create your account during installation, choose a spare account name. It doesn't matter what this name is, except for the fact that it cannot be the name you want to use in the future. I would call it something like "spare."
After installing Windows, create an account with your real account name, but do not log into it yet. Go into regedit, and change all instances of C:/Users to D:/Users (or whatever drive you have your storage on, be it D:, E:, F:, G:, etc. Don't change anything like C:/Users/Administrator, though, only the ones with C:/Users and the ones that would pertain to you.
After doing this load of registry edits, go and restart your computer and log into your new account. If you've done everything right, your new account's profile should be in the drive you had set it to be.
If it is, great. Delete the spare whose account is still on C:/. Do whatever you want on Windows, and after that, install Ubuntu.
I can expect that you can install Ubuntu without any instruction. During installation, I installed my user folder in the normal directory in the same partition as my main installation. I then created symlinks on my user folders by using the commands:
rm -r ./Documents
ln -s /media/Storage/Users/Tyler/Documents ./Documents
rm -r ./Downloads
ln -s /media/Storage/Users/Tyler/Downloads ./Downloads
rm -r ./Music
ln -s /media/Storage/Users/Tyler/Music ./Music
rm -r ./Pictures
ln -s /media/Storage/Users/Tyler/Pictures ./Pictures
rm -r ./Videos
ln -s /media/Storage/Users/Tyler/Videos ./Videos
Tyler is my username on Windows, and Storage is the name of my storage partition.
These commands don't include the templates and the Desktop folder, although I expect that they would be easy to implement.
These symlinks do not have the pretty images, and I have not found a permanent fix for that at this moment. I can set the icon image, but it is reset. I suspect that this is because it needs to mount every time I start up, and that resets the images. I'll post a fix if I find one.
If you want to automount your storage partition upon startup in Ubuntu, you'll need find which partition to mount. In a terminal, use
sudo fdisk -l
You should receive a list of partitions. Mine looks like this.
tyler@Tyler-PC:/$ sudo fdisk -l
[sudo] password for tyler:
Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xf64a0fce
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 125831167 62914560 7 HPFS/NTFS/exFAT
/dev/sda2 125831168 188745727 31457280 83 Linux
/dev/sda3 188745728 608364543 209809408 7 HPFS/NTFS/exFAT
/dev/sda4 608364544 625141759 8388608 82 Linux swap / Solaris
tyler@Tyler-PC:/$
Search "Startup Applications" and add the command
udisks --mount /dev/sda3
sda3 should be replaced with the one for the disk you have. I had remembered that I had set mine to sda3 when I made my partitions. Also, it is my largest.
After that command, upon startup, you shouldn't need to navigate to your storage partition via nautilus to mount it. I'd only discovered that fix yesterday; as I use Eclipse to develop in Java, needing to mount it via nautilus every time was extremely obnoxious.
Good luck!
Best Answer
I have a setup similar to yours (Dual boot SSD, storage HDD, but no backup HDD). In order to migrate your partitions to the SSD it would be ideal to simply clone the drive using CloneZilla as detailed in this post. This should enable you to also keep the existing data on your current HDD until you're sure the migration went well. I would also probably clone the drive onto the 2nd HDD first for redundancy.
Once you have the SSD booting correctly, you'll want to format the storage disk as NTFS. This is the windows native filesystem and modern linux can handle read/write with no trouble at all. I tend to keep a partition on the storage drive formatted as ext4 just in case the NTFS partition gets corrupted, but that isn't strictly necessary.
Redirecting Music/Pictures/Documents/Downloads is easy. Once your storage drives are properly configured, you setup Ubuntu to mount those partitions at boot. Then you can remove the default directory structure in your /home directory and replace everything with a symbolic link to the storage device.
In order to get the storage device mounted at boot, you might want to have a mountpoint in /media off the root filesystem, which you could make with:
You'll need to know the UUID of your storage partition which you can obtain using the 'blkid' command. For me, the output looks like this:
Next you need to add the proper line to /etc/fstab in order to mount on boot. For me, it would be this:
Then you can manually mount the storage partition and comfortably redirect all your important directories:
This will create symbolic links pointing from /home//Desktop to /media/storage/Desktop, etc.
Now, if you want to pull your files back in as though nothing ever happened, you may want to consider a different backup option than what I described before. I use deja-dup (Ubuntu's built in backup tool) to backup my home directory, and it has some decent restoration options. I'm not entirely sure what the best tool is for windows, but you may want to go the old route of compressing and just transferring over to the 2nd HDD before you shrink/wipe the first one.
At the end of the day, only you know whether your windows user folders can be successfully merged with your 'nix ones.
Now, you still need to setup the 2 HDD's to be redundant. If you were only using 'nix, I'd say you could do software raid 0/1 for mirroring or striping. You can still do this, but I have no idea how Windows 7 handles software raid. The alternative is that you can just use the additional HDD to practice good backup hygiene on a regular basis (which can be tricky and requires diligence and good tools).
I did a bit of research, however, and I did find some suggestion that you could make a software raid array play nice across both disks (this post is useful, you'd just install both OS's on the same SSD).
My opinion is that your chances of success at getting software raid to play nice across Windows/Ubuntu are pretty slim, and raid isn't really a good backup strategy anyway. You should install Windows with a sizable chunk of the SSD, then you can put /boot, /, /home and swap on the SSD for Ubuntu (since you don't really plan on doing the bulk of your storage in /home, this shouldn't be a problem).
For backups, I would probably then plan to do those with linux since you can access all of your filesystems that way, and I would have a dedicated backup partition on the 2nd HDD (for more on how to pick a filesystem, see this discussion).
In all, there are really a billion ways to do this, and with 'nix you can always move stuff around without much danger. Really, just make sure you give windows enough room and you should be fine.
Hope this helps