Atualização Multilib no Slackware
Publicado por wellington (última atualização em 18/03/2019)
[ Hits: 2.038 ]
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
CkDeps - Análise de Dependências e Busca por Pacotes Instalados
Gerador de Pacotes de Instalação
Mudança automatica de papel de parede no fluxbox
Nenhum comentário foi encontrado.
A combinação de WMs com compositores feitos por fora
Audacious, VLC e QMMP - que saudades do XMMS
SUNO OpenSource: Crie um servidor de gerador de música com IA
Instalação Completa e Configuração Básica do Void Linux
A Fundação da Confiança Digital: A Importância Estratégica de uma PKI CA na Segurança de Dados
Tenha opção de emblemas embutido no pcmanfm
Instalar o Microsoft Teams no Ubuntu e Derivados
O WiFi não reconhece minha rede depois que o processo de suspensão é r... (4)
Instalador não reconhece SSD Sata. (12)
Quero configurar cgconfig.conf (0)









