Avaliar este artigo :
5/5 | 2 opinião
Este artigo foi útil para si ?
Sim
Não
Vous avez noté 0 étoile(s)
Sommaire
Procédure
Grande parte da administração do sistema pode ser automatizada através de scripts Perl, ou scripts shell executados em intervalos regulares. Por exemplo, pode ter um script para verificar se o seu disco não está cheio que corre uma vez por hora para o avisar se houver algum problema. O mecanismo mais comum para agendar comandos em sistemas Linux é através do pacote cron.
Em Debian, o pacote cron é parte do sistema base e está a correr por omissão.
O cron é fornecido com a Debian para dois propósitos:
Para correr tarefas do sistema numa base diária/semanal/mensal.
Para permitir aos utilizadores configurarem as suas próprias tarefas agendadas.
O pacote Cron cria automaticamente os seguintes directórios:
/etc/cron.d /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly
À exceção do primeiro, que é especial, estes directórios permitem-lhe agendar tarefas para todo o sistema de uma forma simples. Qualquer script colocado dentro deles será executado com a frequência que o seu nome sugere.
Por exemplo, se colocar um script dentro de /etc/cron.daily ele será executado uma vez por dia, todos os dias.
Estes directórios são úteis em alguns casos, mas se precisar de ajustar mais os tempos de execução, isso pode ser feito editando o ficheiro /etc/crontab, que explicaremos a seguir:
A maneira normal que as pessoas usam o cron é através do comando crontab. Isto permite-lhe ver ou editar o seu ficheiro crontab, que é um ficheiro por utilizador que contém entradas que descrevem os comandos a executar e a hora a que devem ser executados.
Para mostrar o seu ficheiro, execute o seguinte comando:
crontab -l
O utilizador root pode ver o ficheiro crontab de qualquer utilizador adicionando -u nome de utilizador, por exemplo :
crontab -u nome de utilizador -l
O formato destes ficheiros é bastante simples de compreender. Cada linha é uma coleção de seis campos separados por espaços.
Os campos são :
O número de minutos após a hora (0 a 59)
A hora no formato de hora militar (24 horas) (0 a 23)
O dia do mês (1 a 31).
Mês (1 a 12).
Dia da semana (0 ou 7).
O comando a executar.
O seu aspeto seria o seguinte:
* * * * * * Comando a ser executado - - - - - - | | | | | | | | +-----> Dia da semana (0-7) | | | +-----------> O mês (1 - 12) | +-----------------> O dia do mês (1 - 31) | +-----------------------> A hora (0 - 23) +-----------------------------> Minutos (0 - 59)
(Cada um dos primeiros cinco campos contém apenas números, mas podem ser deixados como * para indicar que qualquer valor é aceitável).
Agora que já vimos a estrutura, devemos tentar executar alguns exemplos:
Edite o seu ficheiro crontab:
crontab -e
Isto irá executar o seu editor predefinido no seu ficheiro crontab (criando-o se necessário). Quando salvar o arquivo e sair do seu editor, seu crontab será instalado no sistema, a menos que tenha erros.
O editor padrão é o nano
Introduza o seguinte texto:
0 * * * * * /bin/ls > /var/log/ls.log
Quando tiver guardado o ficheiro e saído do seu editor, verá uma mensagem como :
crontab: installing new crontab
Pode verificar se o ficheiro contém o que espera com:
crontab -l
Aqui dissemos ao Cron para executar o comando /bin/ls e redirecionar a saída do comando para o ficheiro /var/log/ls.log sempre que o minuto for igual a 0, ou seja, executará o comando à hora, todas as horas.
Outros exemplos:
Executar o comando "night" dez minutos após a meia-noite, todos os dias
10 0 * * * * /bin/night
Executar o comando "Monday" todas as segundas-feiras às 2h
0 2 * * * 1 /usr/local/bin/lundi
Se quiser executar algo com muita regularidade, pode utilizar uma sintaxe diferente: em vez de utilizar apenas números, pode utilizar intervalos ou conjuntos.
Uma série de números indica que cada ponto desse intervalo estará disponível, por isso, se usar a seguinte linha, estará a executar um comando às 1 horas, 2 horas, 3 horas e 4 horas:
* 1-4 * * * * /bin/command
Um conjunto é semelhante, consistindo num conjunto de números separados por vírgulas, cada item da lista será correspondido. O exemplo anterior tem o seguinte aspeto utilizando sets:
1,2,3,4 * * * * /bin/command
Avaliar este artigo :
5/5 | 2 opinião
Este artigo foi útil para si ?
Sim
Não
2mn leitura
Como configurar a firewall num servidor VPS dedicado?
1mn leitura
Como faço para me conectar como root em um servidor VPS dedicado com Putty?
0mn leitura
Comandos SSH Linux / Debian
0mn leitura
SSH - Comando Apt-get: Instalando e desinstalando pacotes