Não fique confuso pelo fato de que o GRUB tem duas partes, uma no registro mestre de inicialização (MBR) para o disco inteiro, e outra (s) parte (s) na partição do sistema que tem o menu para o GRUB . O código MBR se conecta à partição com o menu. Então, você não apenas instala o grub em uma partição, mas também em um disco.
Agora, não estou na parte da EFI, pois não uso o Windows, e isso não foi um problema para mim. Além disso, estou confiando em como fiz as coisas há algum tempo, mas espero estar lembrando corretamente. Espero que isso ajude a explicar as coisas o suficiente para, pelo menos, permitir que você faça perguntas mais específicas.
Acho que o que você precisa fazer é instalar o bootloader GRUB no MBR de ambas as unidades e escolher qual unidade inicializar a partir do seu BIOS. Um trará o menu para escolher entre o Ubuntu e o Windows, e o outro inicializará no Kali. Se você remover uma unidade, a outra ainda será inicializada.
A maneira que eu usei para configurar é inicializar a partir de um liveCD, como o CD de instalação do Ubuntu. Os discos que você deseja modificar precisarão ser montados, automaticamente ou por você. Se você usar a montagem automática, ela provavelmente será montada em /media/UUID of disk
. Então, você emite um comando como este (assume que o disco de destino é sda, mas você terá que determinar qual é.
sudo grub-install --root-directory=/media/(UUID or directory name) /dev/sda
Você está especificando o diretório raiz onde o menu grub está, ( /boot/grub
). Deve ter o menu já da instalação anterior. Depois de inicializar, você pode executar update-grub
para gerar novamente o menu e permitir que todos os sistemas operacionais disponíveis sejam acessados, se ambos os discos estiverem presentes.
Eu não entrei em muitos detalhes por dois motivos: 1, eu não sei se você precisa, e 2, não tenho certeza de que minha memória está 100% correta, então se é isso que você quero fazer, ou eu ou outra pessoa pode confirmar que vai funcionar.