Script apt-get para atualizar upgrade dist-upgrade clean e autoremove

Script apt-get para atualizar upgrade dist-upgrade clean e autoremove

Eu escrevi esse roteiro,

#!/bin/bash
#if not root, run as root
if (( $EUID != 0 )); then
    sudo $0
    exit
fi
apt update
echo
echo ">> Upgrading Packages"
apt -y upgrade
echo
echo ">> Upgrading Distro Packages"
apt -y dist-upgrade
echo
apt clean
echo ">> Performing Autoremove"
apt -y autoremove
dpkg --list |grep "^rc"
if [[ $? -eq 0 ]]
then echo
    echo ">> Purging Old Configuration Files"
    dpkg --list |grep "^rc" | cut -d " " -f 3 | xargs sudo dpkg --purge
fi
if [[ `du -m /var/log/syslog | cut -f1` -gt 99 ]]
then echo ">> syslog is over 100MB"
    echo ">> logs can be rotated  using the following command:"
    echo
    echo sudo logrotate -f /etc/logrotate.conf
    echo
    echo ">> let me go ahead and do that for you"
    logrotate -f /etc/logrotate.conf
fi
echo ">> Done."

o objetivo é ter um balcão único para atualizar tudo e remover pacotes desnecessários.

O que foi dito acima é suficiente? Há algo redundante ou desnecessário nisso? Algum perigo/precaução que precisa ser considerado? Outro (preencha o espaço em branco)?

Editar: Se eu usar apenas o Ubuntu 12.04 Update Manager integrado, as coisas serão limpas e removidas automaticamente?

Responder1

Basicamente, sim. No entanto, como AsheeshR apontou em seu comentário, ele será abortado se fizer coisas consideradas “indesejáveis”. Uma maneira de garantir que funcione sempre é adicionar a opção --force-yes, mas LEIA A MAN PAGE. É MUITO perigoso implementar esta opção, então você provavelmente deveria continuar com o que tem agora. Na verdade, a página de manual do apt-get diz que esta opção "pode ​​quebrar seu sistema", então você só a usaria manualmente se o procedimento acima não funcionasse e apenas em situações muito especiais (e raras).

Responder2

Este é um script que uso para realizar atualizações no Debian (Teste) e no Ubuntu:

#!/bin/bash
apt update
apt -y dist-upgrade
apt -y autoremove
apt clean
apt purge -y $(dpkg -l | awk '/^rc/ { print $2 }')

Basicamente inclui adicionalmente ao seu script:

apt purge -y $(dpkg -l | awk '/^rc/ { print $2 }')

qualexclui arquivos de configuração do pacotee ajuda a economizar espaço.

Eu gosto da sua seção # se não for root, execute como root e acho que vou roubá-la :-)

Nos últimos anos, nunca tive incidentes executando esse script diariamente. Eles aconteceram, mas são muito raros e facilmente reparáveis.

Eu descobri isso recentemente:

apt -y dist-upgrade --auto-remove --purge

o que sugere que alguns comandos podem ser mesclados em uma linha, mas não tenho certeza.

Gerenciador de atualização do Ubuntu émais envolvidoparece.

informação relacionada