Isso é melhor automatizado pela conta raiz / admin e não deixado nos arquivos de um usuário padrão.
A prática recomendada referente ao que você deseja realizar é tornar-se root sudo su -
e, em seguida, trabalhar no diretório / root user. Algo como isto é geralmente melhor guardado em ~/bin
ou ~/scripts
, por isso, se não existir, pode ser necessário criá-lo e verificar se a nova página é parte do seu PATH
. É sempre uma boa idéia manter um diretório de scripts de algum tipo para abrigar os pequenos scripts que você usa para gerenciar o (s) seu (s) sistema (s) com o passar do tempo, e cada administrador possui sua "caixa de ferramentas". eles guardam essas coisas. O truque é tentar escrever código que seja reutilizável e, assim, facilitar sua vida.
Se você for utilizar vários desses arquivos, eu criaria um diretório especial para eles como ~/scripts/sysupdates
e tentaria manter cada arquivo fazendo apenas uma coisa. Isso espelha a função de outros sistemas * nix como init.d e tornará a manutenção do sistema mais fácil e intuitiva. Isso também tem o propósito de limitar nossas entradas em outros lugares, como você verá em breve.
Se você criar os arquivos para o que você deseja atualizar, como mencionado acima (por exemplo, postfix, qmail, update), então você pode percorrê-los com um script em ~ / scripts que pode ser algo como:
#/usr/bin/bash
#
# Script: updater.sh
# Author: My Name
# Date: yyyymmdd - ee (ee = times edited)
#
# Purpose: run update scripts from ~/scripts/sysupdates
#
# Notes:
#
for SCRIPT in 'ls ~/scripts/sysupdates'; do ${SCRIPT}; done
Faça um favor a si mesmo e adquira o hábito de criar um cabeçalho adequado para cada arquivo criado. Leva apenas um minuto e vai poupar dores de cabeça na estrada, lembre-se que você pode não lembrar por que você o criou mais tarde ou o que ele fez, ou pode não ser você quem deve mantê-lo um dia.
A última parte disto para editar o crontab raiz. Cron é um programa que executa um determinado script em um intervalo especificado. Então, se adicionarmos nosso script updater.sh ao crontab, tudo o que precisamos fazer é adicionar arquivos a ~/scripts/sysupdates
e eles serão executados automaticamente.
Você acessa o crontab com crontab -e
, que edita o crontab com o editor de sistema definido (geralmente vim no linux). Existe um gerador crontab para ajudá-lo em:
link para criar o seu próprio.
Adicione a linha:
5 0 1 * * /root/scripts/updater.sh
Você deve ser bom para ir.
Divirta-se com estas ferramentas, pois elas podem tornar a vida de um SysAdmin muito mais fácil.
Uma palavra de cautela; Eu não adicionaria o apt-get -y dist-upgrade para seus scripts, execute aquele quando você estiver preparado para lidar com ele, caso seja executado incorretamente.