Use cron .
Diga crontab -e como raiz - ou sudo crontab -e se tiver sudo configurado - e coloque o seguinte no arquivo que aparece no editor de texto:
0 9 * * * cp /etc/hosts_worktime /etc/hosts
0 16 * * * cp /etc/hosts_playtime /etc/hosts
Isso diz que no minuto zero da 9ª e 16ª horas de todos os dias do mês, sobrescreva /etc/hosts usando os comandos de shell fornecidos.
Você pode realmente querer algo um pouco mais complicado:
0 9 * * 1-5 cp /etc/hosts_worktime /etc/hosts
0 16 * * 1-5 cp /etc/hosts_playtime /etc/hosts
Essa mudança - colocando 1-5 na quinta posição - diz que a mudança entre o trabalho e o tempo de jogo acontece apenas de segunda a sexta-feira.
Diga man 5 crontab para obter uma explicação completa de tudo o que você pode fazer em um arquivo crontab .
A propósito, eu mudei os nomes dos seus arquivos hosts acima, porque hosts_allow é muito próximo de hosts.allow , usado por TCP Wrappers .