Essa experiência foi executada em um sistema 
Debian. Editando e acrescentando no menu do 
GRUB 2, os sistemas:
-  Debian 7
-  Mageia 4
-  Sabayon 14.03
-  Windows 7
    
Com o GRUB Legacy, era bem mais fácil fazer as edições (na época, nem tanto. rs!)
Lembrando:
    
Para começar, com o sistema Debian iniciado e com a certeza do GRUB 2 (pacotes 
grub-common, 
grub-pc, 
grub-pc-bin, 
grub2-common e 
os-prober) instalado, vamos obter informações para acrescentarmos na edição do menu.
Listaremos a tabela de partições, para sabermos os devices das partições do HDD. Poderemos executar o comando 
fdisk -l, caso já saiba o que pertence a cada partição. 
Caso não saiba, e que nem eu você tem a mania de rotular as partições, poderemos, no caso do Debian, usar o comando 
blkid, que inclusive lista as UUID de cada partição:
     
     
Bom, já sabemos o que há em cada partição. Agora, vamos pegar as informações de kernel das distribuições em cada partição 
/boot, para podermos editar nosso arquivo do menu do GRUB 2.
Nas imagens abaixo, vemos o 
/boot do Debian, o 
/boot do Sabayon e o 
/boot do Mageia:
       
     
Com as informações das partições em mãos, sabendo cada kernel instalado em cada distribuição  
GNU/Linux, poderemos fazer a edição almejada.
Para executarmos o menu, vamos editar o arquivo 
40_custom - um "template" (modelo de documento vazio para adicionar entradas personalizadas ao menu para outros S.Os.) - que fica no diretório 
/etc/grub.d.
O conteúdo do arquivo 
40_custom antes da edição, sem nenhum conteúdo para subir o boot!
    
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
     
Vemos também, no diretório 
/etc/grub.d/, que temos outros arquivos (scripts) de execução para a leitura do GRUB 2 e, assim, subir o menu com as informações de cada script. Mas, não teremos todos eles com o poder de execução, assim, não sendo lidos pelo GRUB 2 e não carregados na tela do mesmo.
Então, tiraremos o poder de execução dos arquivos 
10_linux, 
20_memtest86+ e 
os-prober, com o comando 
chmod -x ....
    
    
Com a permissão de execução alterada dos arquivos referidos acima, agora, no arquivo 
40_custom aberto, faremos a edição do menu para os sistemas instalados.
Como já sabemos, os devices (
sda[x]), as UUIDs das partições e o caminho dos diretórios para o kernel instalado de cada distribuição, acrescentaremos essas informações no arquivo 
40_custom e faremos nosso menu personalizado.
* Uma observação a ser analisada, caso tenha outros sistemas que queira inseridos no menu, é em relação aos devices. Se temos um único HDD conectado, ele é reconhecido pelo GRUB como "hd0" (
sda). Caso tenha dois ou mais HDs conectados, o GRUB vai reconhecer como "hd1" (
sdb), "hd2" (
sdc), etc. 
Os números das partições não são alterados, ficando o mesmo reconhecido no sda/sdb/sdc, como por exemplo: 
-  hd0,1 = sda1 
-  hd1,3 = sdb3 
-  hd2,2 = sdc2
    
Tabela:
    
  Linux       (GRUB 2)
  /dev/sda1   (hd0,1)
  /dev/sda2   (hd0,2)
  /dev/sdb1   (hd1,1)
  /dev/sdb2   (hd1,2)
  /dev/sdb3   (hd1,3)
  /dev/sdc1   (hd2,1)
  /dev/sdc2   (hd2,2)