Verifica quais ports necessitam de atualização
Publicado por Eduardo Mendes 01/09/2006
[ Hits: 12.349 ]
Homepage: http://www.bsdmail.com
Script desenvolvido pelo Garga lá da FUG, muito prático mesmo, para aqueles que trabalham com FreeBSD ou dão manutenção em algum, ele atualiza toda a árvore do Ports automaticamente.
#!/bin/sh ########################################################################## # check_updates.sh # # # # Funcoes: # # # # - Verifica quais ports necessitam de atualizacao, enviando um email # # para o responsavel # # - Usando o parametro '--cvsup' o script ira atualizar a arvore do # # ports do FreeBSD (4.x ou 5.x) e atualiza o INDEX de modo incremental # # usando o software FreeBSD::Portindex # # # # Versao: 0.2 # # # # Autor: Renato Botelho <garga at FreeBSD.org> # # # # Licenca: Este script pode ser livremente alterado ou redistribuido # # sem previa autorizacao do autor, desde que este cabecalho # # seja mantido. # ########################################################################## # Checa se os programas necessarios estao instalados if [ ! -x /usr/local/bin/cvsup ]; then echo "cvsup NAO esta instalado," echo "instale-o usando 'pkg_add -r cvsup-without-gui' antes de continuar" exit 1 fi if [ ! -x /usr/local/bin/cache-update ]; then echo "cache-update NAO esta instalado," echo "instale-o usando o ports 'sysutils/p5-FreeBSD-Portindex'" echo "Leia atentamente a documentacao, rode o cache-init antes de continuar" exit 1 fi if [ ! -x /usr/local/sbin/portsdb ]; then echo "portsdb NAO esta instalado," echo "instale-o usando o ports 'sysutils/portupgrade'" exit 1 fi # Mail que ira receber os avisos de atualizacao MAIL_TO=renato@`/bin/hostname` # Diretorio temporario TMPDIR=/var/tmp/ports # arquivo de configuracao do cvsup para atualizar a arvore do ports PORTS_SUPFILE=/usr/local/etc/cvsup/ports-supfile # Verifica a versão do Free para calcular o nome do arquivo INDEX do ports VERSAO=`/usr/bin/uname -v | /usr/bin/sed 's/^[^ ]* \([0-9]\).*$/\1/'` if [ $VERSAO -le 4 ]; then INDEXFILE=INDEX else INDEXFILE=INDEX-$VERSAO fi # Atualiza a arvore e gera o INDEX atualizado if [ "$1" = "--cvsup" ]; then [ ! -d $TMPDIR ] && mkdir $TMPDIR if [ ! -e $PORTS_SUPFILE ]; then echo "Arquivo $PORTS_SUPFILE nao existe, impossivel executar o cvsup" exit 1 fi if [ -x /usr/local/bin/fastest_cvsup ]; then CVSUP_SERVER=`/usr/local/bin/fastest_cvsup -Q -c tld` else CVSUP_SERVER="cvsup17.freebsd.org" fi if /usr/local/bin/cvsup -g -L2 -r 3 -h $CVSUP_SERVER $PORTS_SUPFILE >$TMPDIR/cvsup.out 2>&1; then /usr/local/bin/cache-update -i $TMPDIR/cvsup.out && \ /usr/local/bin/portindex -o $TMPDIR/$INDEXFILE && \ cp -vf $TMPDIR/$INDEXFILE /usr/ports/$INDEXFILE && \ /usr/local/sbin/portsdb -u fi fi # Verifica os pacotes que necessitam de atualizacao if [ -e /usr/local/sbin/portversion ]; then UPDATES=`/usr/local/sbin/portversion -v -L '=>'` else UPDATES=`/usr/sbin/pkg_version -v -L '=>'` fi # Envia um mail para avisar quais os pacotes necessitam de atualizacao, se existir algum if [ "$UPDATES" != "" ]; then echo "$UPDATES" | /usr/bin/mail -s "[PORTS] atualizacoes `/bin/hostname`" $MAIL_TO fi
Bloquear Facebook no Linux Educacional 3
configurar do samba e pureftpd
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Melhorando a precisão de valores flutuantes em python[AJUDA] (6)
Vou voltar moderar conteúdos de Dicas e Artigos (1)
SysAdmin ou DevOps: Qual curso inicial pra essa área? (3)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta