Verifica quais ports necessitam de atualização
Publicado por Eduardo Mendes 01/09/2006
[ Hits: 12.482 ]
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
rc.mailMyIp - Informa seu IP externo para o Gmail
Disponibilidade de impressoras de rede
Descompactar vários arquivos ao mesmo tempo de um diretório específico
Manutenção básica em partições Windows
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Aplicativo simples para gravar tela
Quebra de linha na data e hora no Linux Mint
Como fazer boot em img do debian 12.img da web? (11)
ME GERAL! ADD...! BORA CONVERSAR (0)
Manjaro 25.0 no permite usar crontab (1)