Atualização do FreeBSD
Publicado por Perfil removido (última atualização em 24/04/2010)
[ Hits: 7.690 ]
Este script foi desenvolvido para facilitar a atualização do FreeBSD, mesmo quem não tem muito conhecimento consegue atualizar o sistema de uma forma simples e completa, ainda mostra os programas que precisam ser atualizados e é possível atualizar determinado programa ou todos sem complicação.
Também é possível usar alguns parâmetros "não obrigatórios":
-i - para você interagir com o script;
-v - para visualizar o a execução do script com mais detalhes;
numero - o número seria o tempo para começar a fazer a atualização, pode ser usada na inicialização do FreeBSD e colocar para inicializar a atualização depois de 30 segundos.
Modo de uso:
./dgfupdate.sh -i -v 10
#!/usr/local/bin/bash
# -----------------------------------------------------------------------
# - Feito por: Douglas Giorgio Fim -
# - E-mail: douglasfim@yahoo.com.br -
# - MSN: dgf_skt@hotmail.com -
# - Programa: dgfupdate -
# - Versao: 1.0 -
# - -
# - Este script pode ser alterado e distribuido por qualquer pessoa, -
# - desde que este quadro se mantenha inalterado! -
# - -
# - Obs.: Este script foi desenvolvido para facilitar a atualização do FreeBSD -
# -----------------------------------------------------------------------
numero=
numero2="$numero"
verbose=
FIM() {
echo "Fim da atualização."
echo -n 'Aperte <Enter> para sair: '; read nada
exit 1
}
if [ -n "$1" ]; then
if [ "$1" = '-v' ]; then
verbose=1
elif [ "$1" = '-i' ]; then
atualizacao=
else
sleep $1
fi
fi
if [ -n "$2" ]; then
if [ "$2" = '-v' ]; then
verbose=1
elif [ "$2" = '-i' ]; then
atualizacao=
else
sleep $2
fi
fi
if [ -n "$3" ]; then
if [ "$3" = '-v' ]; then
verbose=1
elif [ "$3" = '-i' ]; then
atualizacao=
else
sleep $3
fi
fi
echo "Atualizando as ports: "
if [ "$verbose" = '1' ]; then
portsnap fetch update
echo ''
else
portsnap fetch update > /dev/null
fi
echo "Verificando as versões: "
verificacao=`portversion -v | grep -w '<' | awk '{print $1}' | sed -e 's/\(.*\)-\(.*\)/\1/;s/[ ]//g' | awk 'NF>0' | nl`
while [ "$resultado" != 'c' ]; do
if [ "$verificacao" != '' ]; then
echo "$verificacao"
while [ "$numero" = '' ]; do
echo -n 'Digite o(s) numero(s) do(s) programa(s) que deseja atualizar, 0 para todos ou "c" para cancelar: ' ; if [ -z "$numero" ]; then read numero; fi
done
verificacao2=`echo "$verificacao" | grep -w "$numero" | awk '{print $2}'`
escolha=`echo "$numero" | grep -w '0' | sed 's/[ ]//g'`
escolha2=`echo "$numero" | grep -w [cC] | sed 's/[ ]//g' | tr '[:upper:]' '[:lower:]'`
if [ "$escolha" = '0' ]; then
if [ "$escolha2" = 'c' ]; then
echo "Parametro invalido."
exit 1
else
resultado='0'
fi
elif [ "$escolha2" = 'c' ]; then
resultado='c'
fi
case $resultado in
0)
echo -n "0 para atualização simples, 1 para atualização avançada: "; if [ -z "$nivel" ]; then read nivel; fi
if [ -z "$nivel" ]; then
nivel=0
fi
if [ "$nivel" = '0' ]; then
for i in `echo "$verificacao" | awk '{print $2}'`; do
echo "atualizando $i"
portupgrade -PRDuk $i
done
elif [ "$nivel" = '1' ]; then
echo "Atualizando..."
portupgrade -PRDuka
fi
echo "Atualização completada"
FIM ;;
c)
echo "Atualização cancelada."
exit 1 ;;
*)
for i in `echo "$verificacao2"`; do
echo "atualizando $i"
portupgrade -PRDuk $i
done
verificacao=`portversion -v | grep -w '<' | awk '{print $1}' | sed -e 's/\(.*\)-\(.*\)/\1/;s/[ ]//g' | awk 'NF>0' | nl`
;;
esac
else
echo "Seu sistema ja está atualizado."
resultado='c'
fi
numero=
done
FIM
Gerenciador Simples de Empresa
Jftp Script - Script para automação de um processo FTP
slackpigs - veja os pacotes que mais ocupam espaço no Slackware
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (10)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









