Primeiro, qual entrada do Windows você está tentando usar? Existem três no arquivo grub.cfg que você postou. Os dois primeiros ( Windows 7 (loader) (on /dev/sda3) e Windows Recovery Environment (loader) (on /dev/sda5) ) não funcionam. O terceiro ( Windows 7 UEFI ) está mais perto de funcionar, mas define a opção errada --root ; ele deve ler --root CF46-460C , não --root 0EEC3E6EEC3E5067 . Para corrigir isso, você precisará editar /etc/grub.d/40_custom e, em seguida, executar sudo update-grub .
Se isso não funcionar, você pode tentar outro gerenciador de inicialização, como rEFInd, que tende a ser menos exigente sobre o lançamento do Windows. Inicializar para o Ubuntu e instalar o pacote Debian rEFInd deve configurar tudo para funcionar, embora você possa querer ajustar algumas configurações, especialmente se você ver entradas duplicadas no menu. (Verifique as opções dont_scan_volumes , dont_scan_dirs e dont_scan_files em refind.conf .)
EDIT: Se a seleção da entrada do Windows em rEFInd o trouxer para o GRUB, então algo (provavelmente a ferramenta de Reparo de Inicialização do Ubuntu) copiou o GRUB sobre o carregador de inicialização do Windows. Com alguma sorte, você deve ser capaz de encontrar o arquivo original em um nome de arquivo de backup e copiá-lo de volta. Do Ubuntu, o gerenciador de partida do Windows (que foi substituído pelo GRUB) é /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi . Procure esse arquivo e procure um arquivo com um nome semelhante, como bkpbootmgfw.efi ou bootmgfw.efi.grb . Copie o arquivo de backup sobre o arquivo bootmgfw.efi (criando seu próprio backup primeiro, apenas para estar no lado seguro).