Atualização Multilib no Slackware
Publicado por wellington (última atualização em 18/03/2019)
[ Hits: 1.651 ]
Sou pouco hábil com scripts, mas a necessidade faz coisas. Gosto de manter meu sistema atualizado, mas não gosto de perder tempo. Venho maquinando e procurando alguma coisa há algum tempo, de como poderia verificar se existe alguma mudança no multilib do Slackware para daí atualizá-lo, até que cheguei neste script.
Aqui faço um download da página html e comparo com um download anterior e se houver qualquer mudança nos pacotes, ele faz o processo de instalação novamente. Ainda não consegui que seja comparado pacote por pacote sendo que qualquer alteração em um deles, todos serão atualizados.
Se alguém puder melhorar este ponto agradeço!
#!/bin/bash #Arquivos para comparação: #Dados da página do multilib CMP1=/home/$USER/14.2/.index.0.html CMP2=/home/$USER/14.2/.index.html #Arquivo de comparação entre o download anterior e o atual UP=/home/$USER/14.2/.up #Diretório de download dos pacotes DIR=/home/$USER/14.2 #Apagando o arquivo de comparação e criando um novo limpo if [ -e "$UP" ] ; then rm $UP fi > $UP #Testando se os arquivos de dados da página do multilib existem if [ -e "$CMP1" ] && [ -e "$CMP2" ] ; then rm $CMP1 mv $CMP2 $CMP1 #Download da página do multilib wget -c http://slackware.com/~alien/multilib/14.2 -O $CMP2 else echo " Falta arquivo de comparação, proceder manualmente a partir de agora " exit 1 fi #Comparando se o arquivo atual é igual ao anterior e guardando o resultado na variável $UP diff -q $CMP1 $CMP2 | cut -d" " -f6,7 > $UP #Resultado do teste acima, caso contenha o texto "são diferentes" o sistema será atualizado. UPD=`cat $UP` #Teste para atualização ou saida do script. if [ "$UPD" = 'são diferentes' ] ; then #Verifica se a pasta para download existe e cria se for necessário. if [ ! -e $DIR ] ; then mkdir $DIR ; #Processo de atualização segundo a página: http://www.slackware.com/~alien/multilib/ lftp -c 'open http://slackware.com/~alien/multilib/ ; mirror -c -e 14.2'; cd $DIR upgradepkg --reinstall --install-new *.t?z upgradepkg --install-new slackware64-compat32/*-compat32/*.t?z else lftp -c 'open http://slackware.com/~alien/multilib/ ; mirror -c -e 14.2' ; cd $DIR upgradepkg --reinstall --install-new *.t?z upgradepkg --install-new slackware64-compat32/*-compat32/*.t?z fi else echo " Sistema multilib atualizado " fi exit 0
Obtém fotos de uma Câmera Digital organizando em Subdiretórios e Renomeando
Instalação do Telegram Desktop via shell script
Script de instalação do Mplayer, com todas as fontes e codecs
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
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
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)
Pendrive não formata de jeito nenhum (4)
Problemas ao instalar o PHP (10)
Descompactar arquivos winrar no linux (9)
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (12)