#!/bin/bash
# Programa: recGrub.sh
# Descrição: Recupera o gerenciador de inicialização Grub na MBR
# Autor: Lúcio M.V. Silva <lunix3411@hotmail.com> Fev/2011
Reiniciar() {
echo "Deseja reiniciar a máquina agora?[s/n]"
read resp
if [ $resp = s ]; then
sudo init 6
else
echo "Você optou por não reiniciar neste momento"
exit
fi
}
zenity --warning --text "Este Shell Script RecGrub.sh tem a finalidade de recuperar o Grub na MBR do seu disco. No entanto, vale salientar que não me responsabilizo por qualquer eventual perda de dados, exclusão de partição e etc. Caso não tenha familiaridade com este procedimento ou com os termos básicos e comuns ao sistema
Linux, aconselho a estudá-los antes de tentar usar este script. O mesmo foi testado em situações controladas e funcionou adequadamente. Quando o gparted (editor de partições do Gnome) abrir procure não editar absolutamente nada, apenas faça se souber o que está fazendo. Atenha-se apenas a verificar o sistema de arquivo da partição Linux que você deseja recuperar com o grub. Isto posto, obrigado por utilizar esse script, apesar de simples funciona e no final é isso que importa! Seja Livre, use Linux!:)"
echo "RecGrub----------------------------------------------------"
echo "Verifique se o seu disco é /dev/sda ou /dev/hda"
sudo fdisk -l | grep Disco* | cut -c6-24
echo "------------------------------------------------------------"
echo "1. /dev/sda"
echo "2. /dev/hda"
echo "------------------------------------------------------------"
echo -e "Qual é o modelo?[número]: "
read mod
case $mod in
1)
DEV=(sda1 sda2 sda3 sda4 sda5 sda6 sda7 sda8)
echo "Verifique apenas o sistema de arquivo com gparted:(Seja cuidadoso!)"
sudo gparted
echo -n "Informe o sistema de arquivo da partição[ext3/ext4/reiserfs]: "
read tip
echo
if [ $tip = ext3 ];then
echo "sda1, sda2, sda3, sda4, sda5, sda6 ..."
echo "Modo referêncial: o item 1 é o 0, o item 2 é o 1, o item 3 é o 2, ..."
echo -n "Qual partição dará a partida na MBR?: "
read opc
echo ${DEV[$opc]}
sudo mkdir /media/${DEV[$opc]}
sudo mount -t ext3 /dev/${DEV[$opc]} /media/${DEV[$opc]}
sudo grub-install --root-directory=/media/${DEV[$opc]} /dev/sda
echo "Reinicie o Sistema para que as mudanças sejam aplicadas."
Reiniciar
elif [ $tip = ext4 ];then
echo "sda1, sda2, sda3, sda4, sda5, sda6 ..."
echo "Modo referêncial: o item 1 é o 0, o item 2 é o 1, o item 3 é o 2, ..."
echo -n "Qual partição dará a partida na MBR?: "
read opc
echo ${DEV[$opc]}
sudo mkdir /media/${DEV[$opc]}
sudo mount -t ext4 /dev/${DEV[$opc]} /media/${DEV[$opc]}
sudo grub-install --root-directory=/media/${DEV[$opc]} /dev/sda
echo "Reinicie o sistema para que as mudanças sejam aplicadas."
Reiniciar
elif [ $tip = reiserfs ];then
echo "sda1, sda2, sda3, sda4, sda5, sda6 ..."
echo "Modo referêncial: o item 1 é o 0, o item 2 é o 1, o item 3 é o 2, ..."
echo -n "Qual partição dará a partida na MBR?: "
read opc
echo ${DEV[$opc]}
sudo mkdir /media/${DEV[$opc]}
sudo mount -t reiserfs /dev/${DEV[$opc]} /media/${DEV[$opc]}
sudo grub-install --root-directory=/media/${DEV[$opc]} /dev/sda
echo "Reinicie o sistema para que as mudanças sejam aplicadas."
Reiniciar
else
echo "Error:Sistema de Arquivo Inválido!"
fi
exit
;;
2)
DEV=(hda1 hda2 hda3 hda4 hda5 hda6 hda7 hda8)
echo "Verifique apenas o sistema de arquivo com gparted:(Seja cuidadoso!)"
sudo gparted
echo -n "Informe o sistema de arquivo da partição[ext3/ext4/reiserfs]: "
read tip
echo
if [ $tip = ext3 ];then
echo "hda1, hda2, hda3, hda4, hda5, hda6, ..."
echo "Modo referêncial: o item 1 é o 0, o item 2 é o 1, o item 3 é o 2, ..."
echo -n "Qual partição dará a partida na MBR?: "
read opc
echo ${DEV[$opc]}
sudo mkdir /media/${DEV[$opc]}
sudo mount -t ext3 /dev/${DEV[$opc]} /media/${DEV[$opc]}
sudo grub-install --root-directory=/media/${DEV[$opc]} /dev/hda
echo "Reinicie o sistema para que as mudanças sejam aplicadas."
Reiniciar
elif [ $tip = ext4 ];then
echo "hda1, hda2, hda3, hda4, hda5, hda6, ..."
echo "Modo referêncial: o item 1 é o 0, o item 2 é o 1, o item 3 é o 2, ..."
echo -n "Qual partição dará a partida na MBR?: "
read opc
echo ${DEV[$opc]}
sudo mkdir /media/${DEV[$opc]}
sudo mount -t ext4 /dev/${DEV[$opc]} /media/${DEV[$opc]}
sudo grub-install --root-directory=/media/${DEV[$opc]} /dev/hda
echo "Reinicie o sistema para que as mudanças sejam aplicadas."
Reiniciar
elif [ $tip = reiserfs ];then
echo "hda1, hda2, hda3, hda4, hda5, hda6, ..."
echo "Modo referêncial: o item 1 é o 0, o item 2 é o 1, o item 3 é o 2, ..."
echo -n "Qual partição dará a partida na MBR?: "
read opc
echo ${DEV[$opc]}
sudo mkdir /media/${DEV[$opc]}
sudo mount -t reiserfs /dev/${DEV[$opc]} /media/${DEV[$opc]}
sudo grub-install --root-directory=/media/${DEV[$opc]} /dev/hda
echo "Reinicie o sistema para que as mudanças sejam aplicadas."
Reiniciar
else
echo "Error:Sistema de Arquivo Inválido!"
fi
exit
;;
*)
echo "Error:Opção Inválida."
;;
esac