Estou tentando configurar um cron job em meu Ubiquity Edge Router que modificará o arquivo de hosts uma vez pela manhã e uma vez durante a noite durante a semana, para bloquear vários sites das 8h às 19h M-F.
Eu criei dois scripts de shell:
/config/scripts/set-blocking-hosts.sh
/config/scripts/set-default-hosts.sh
Cada um deles tem 2 linhas:
cp /etc/hosts.blocking /etc/hosts
/etc/init.d/dnsmasq restart
Observe que a primeira linha com o comando cp é diferente em cada script, para copiar o arquivo apropriado (hosts.default ou hosts.blocking)
Se eu fizer ssh no roteador e executar esses scripts diretamente, eles farão exatamente o que eu quero e funcionarão perfeitamente.
Estou tendo problemas para conseguir que eles sejam executados conforme o cron.
Aqui estão as minhas entradas do cron:
0 8 * * 1-5 /config/scripts/set-blocking-hosts.sh
0 19 * * 1-5 /config/scripts/set-default-hosts.sh
Até agora, tentei adicionar essas entradas usando crontab -e
e sudo crontab -e
e nenhuma delas parece estar funcionando.
Procurei um arquivo de log em /var/log
, mas não consegui encontrar nada relevante.
Se eu executar este comando, ps -ef | grep cron | grep -v grep
obtenho o seguinte resultado, sugerindo que o cron está sendo executado.
root 490 1 0 Oct24 ? 00:00:09 /usr/sbin/cron
Não tenho certeza de onde devo colocar as entradas do cron para que as tarefas sejam executadas ou se eu precisar reinicializar o roteador ou se algo estiver desativado em algum lugar ou se esse tipo de coisa não for compatível com o roteador.
Disclaimer, eu não sou um cara de sistemas ou linux, então a maior parte disso eu descobri através de pesquisa e tentativa e erro.
Qualquer ajuda é muito apreciada!