I thought I'd share my thoughts - this way preserves Windows as the default without having to change much else (and will hopefully remain that way after performing various kernel upgrades)
Grub2 relies on a sequence of shell scripts to generate the grub.cfg file, the shell scripts are run in alphabetical order and are found in /etc/grub.d
Code:
majic@hephaestus:~$ cd /etc/grub.d
majic@hephaestus:/etc/grub.d$ ls
00_header 10_linux 30_os-prober 41_custom
05_debian_theme 20_linux_xen 40_custom README
majic@hephaestus:/etc/grub.d$
By shuffling these around, you can make it generate the grub.cfg file in the order that you want. For me, I tend to use linux less commonly than windows, but I play a fair few games on windows that means it makes sense for me to use windows as my primary boot
Open a root terminal and cd /etc/grub.d
Code:
hephaestus:/etc/grub.d# mv 10_linux 20_linux
hephaestus:/etc/grub.d# mv 20_linux_xen 30_linux_xen
hephaestus:/etc/grub.d# mv 30_os-prober 10_os-prober
hephaestus:/etc/grub.d# ls
00_header 10_os-prober 30_linux_xen 41_custom
05_debian_theme 20_linux 40_custom README
finally execute the update-grub command
Code:
hephaestus:/etc/grub.d# update-grub
Generating grub.cfg ...
Found background image: moreblue-orbit-grub.png
Found Windows 7 (loader) on /dev/sda1
Found linux image: /boot/vmlinuz-2.6.35.4-majic
Found initrd image: /boot/initrd.img-2.6.35.4-majic
Found linux image: /boot/vmlinuz-2.6.26-2-amd64
Found initrd image: /boot/initrd.img-2.6.26-2-amd64
done
You should find that windows 7 now appears at the top of the list - hope this helps