Comando grub2-update no Fedora

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

[ Hits: 4.405 ]

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

Pingar faixa de IP's

Postfix: Configurando o Gmail como Relay (moleza)

Convertendo man pages em arquivos pdf

Front para o slackpkg em dialog

Papel de parede - Mudança automática no Ubuntu/Debian


  

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