Re: dual booting (first time advice)
There are many opinions on your questions.
First, know that dual booting is dangerous. The setup forces Ubuntu/Linux to work with Microsoft Windows. Ubuntu tries to play nice, but Microsoft assumes they own the entire HDD and sometimes does not play nice with other, non-MS OSes. Linux, Canonical and others try really hard to handle these cases. Sometimes we fail. That can leave you with a computer that will not boot.
Installing Windows7 AFTER any Linux is likely to cause issues. Linux will not boot. Installing Linux AFTER Windows is probably fine, since Linux is used to working behind MS for booting.
Windows does not understand the linux file systems. We only hope that it ignores them. Usually that is the case.
Linux can understand Windows file systems, to a certain extent. It is not perfect support, but usually good enough to allow access to data on NTFS. NTFS does not support the same permissions that Linux file systems support AND that Linux requires. File permissions are critical to multi-user operating systems like Linux.
There are many opinions about partitioning HDDs. With the relatively new changes to HDDs and new format requirements to support large HDDs, but Microsoft and Linux tools are not perfect. The rule of thumb is to use the OS tools for the partition target user (Windows for Windows AND Linux tools for Linux partitions). The best recommendation that I can make about this is to use either parted or gparted for partitioning on Linux systems. Do not use fdisk sfdisk or cfdisk - they were created for older 512b sector HDDs which are not commonly sold today. To modify a partition, you cannot be running an OS on that partition, so I use a special gparted ISO that I boot from a USB-Flash drive under Yumi (from the unetbootin guys).
When partitioning for Linux and Windows7, here are a few ideas:
* Use GPT partitioning, not MBR, unless you plan to run older OSes like WinXP.
* Linux can boot from and access either primary or logical partitions.
* With GPT, over 100 primary partitions are allowed.
* With MBR, only 4 primary partitions are allowed.
I think Windows need 2 primary partitions - to support 4k sector HDDs with GPT. Let Windows create those.
For Linux, you want 3 partitions, perhaps 4.
* / - where most of the OS and applications go. 10-20G is fine for this.
* swap - like the Windows swap file, a place to have 1-2G only.
* /home - where your personal settings, documents and programs reside. If you place large files elsewhere, then 5-15G is plenty ... unless you are a Java programmer. Then you'll need lots more.
* If you want to share data with Linux and Windows, you probably want an NTFS Data partition. This is where all those big files should be placed too - videos, music, etc... Know that file permissions mean next to nothing on NTFS partitions.
This took me awhile to write. Hopefully others have commented too.
Linux User since 1993. Loving Linux since 1996.
When you find the solution, please come back to this thread, explain the solution, and mark it SOLVED to help the next guy.