Comando grub2-update no Fedora

Publicado por Luís Fernando C. Cavalheiro (última atualização em 21/03/2014)

[ Hits: 4.396 ]

Homepage: https://github.com/lcavalheiro/

Download grub2-update




Olá garotada, aqui começa mais um Script do Dino trazendo ferramentas tão idôneas quanto o Paulo Maluf para os senhores. Hoje nós vamos criar o comando grub2-update no Fedora, já que por alguma razão o raio da distro não tem essa ferramenta instalada por padrão. Eu anteriormente já postei aqui uma dica sobre como fazer a mesma coisa usando um alias no /root/.bashrc, mas, sinceramente, não é tão elegante quanto um script que você escreve de cabeça no meio de um ônibus lotado e sem internet para tirar suas dúvidas. ;-)

Para usar o script, simplesmente salve-o em /sbin e conceda-o permissão de execução. Duas observações:

1. Este script só aceita um parâmetro por vez, portanto se você costuma usar opções no comando grub2-install passe-as entre aspas junto com o disco de destino da instalação do GRUB (por exemplo, grub2-update "--opção1 --opção2 /dev/sda").

2. Invocado sem a opção, ele irá realizar o grub2-update direcionando em /dev/sda.

  



Esconder código-fonte

#!/bin/bash
#
# Nome: grub2-update
#
# Versão: 1.0
#
# Descrição: script para simular o comando grub2-update no Fedora
#
# Autor: Luís Fernando C. Cavalheiro ( pessoal at profcavalheiro dot com )
#
# O AUTOR disponibiliza o presente script sob a licença GPLv3, disponível
# para leitura na internet. O AUTOR distribui este script tal como ele é,
# e não se responsabiliza pelo uso indevido, inadequado ou diferente daque-
# le para o qual o script foi desenvolvido. O AUTOR concede autorização
# explícita para toda e qualquer pessoa modificar, alterar ou redistribuir
# este script, observando as regras da licença GPLv3.

# Funções iniciais
texto_ajuda() {
    cat << EOF
    Script para simular o comando grub2-update no Fedora

    Autor: Luís Fernando C. Cavalheiro ( pessoal at profcavalheiro dot com )

    UTILIZAÇÃO:
    grub2-update [opções] [disco de destino]

    OPÇÕES

    --help, -h: exibe este texto de ajuda

    --version, -v: exibe a versão atual do script

    disco de destino: disco rígido (não a partição) na qual será instalado o
                      GRUB. Por padrão, /dev/sda. Executar o comando sem
                      parâmetros fará com que o GRUB seja instalado em 
                      /dev/sda.

    O script analisará apenas o primeiro parâmetro fornecido. Os demais
    serão ignorados.
EOF
}

texto_versao() {
    cat << EOF
    Script para simular o comando grub2-update no Fedora

    Autor: Luís Fernando C. Cavalheiro ( pessoal at profcavalheiro dot com )

    VERSÃO: 1.0

    CHANGELOG:
    -1.0
    Primeiro release público do script em www.vivaolinux.com.br
    -0.2
    Criação da função grub2_update, que realizará o grosso do trabalho.
    -0.1
    Script iniciado. Criação das funções texto_ajuda e texto_versao. Início 
    do corpo principal do script.
EOF
}

grub2_update() {
    echo "Verificando outros sistemas operacionais instalados no computador..."
    /bin/os-prober
    echo "Gerando o arquivo de configuração /boot/grub2/grub.cfg..."
    /sbin/grub2-mkconfig -o /boot/grub2/grub.cfg
    echo "Instalando o GRUB em $opcao_script..."
    /sbin/grub2-install $opcao_script
}

# Define em qual disco o GRUB será instalado
# Fazer assim que é para descartar toda opção passada ao comando que
# não seja a primeira ;-)
destino_instalacao=$1
opcao_script=${destino_instalacao:-/dev/sda}

# Realixa a instalação
# Nota: eu sei que isso aqui está uma gambiarra feia que dói, mas
# eu estava em um ônibus, preso num engarrafamento e sem internet.
# Fiz de cabeça e funcionou, então viva com a gambiarra, doutor!
if [ "$opcao_script" == "--help" ] ; then
    texto_ajuda
    exit 0
elif [ "$opcao_script" == "-h" ] ;  then
    texto_ajuda
    exit 0
elif [ "$opcao_script" == "--version" ] ; then
    texto_versao
    exit 0
elif [ "$opcao_script" == "-v" ] ; then
    texto_versao
    exit 0
else
    grub2_update
fi

Scripts recomendados

Crivo de Eratóstenes Simples em Shell Script (BASH Script)

Slackware Interface Install - Instalação de Interfaces gráficas no Slackware

DefaultApps

Criador de árvore de compilação

Script em Dialog pesquisa nome do banco no mysql


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts