Помогите с запуском crontab от root

2768
Community

Я использую Mac OS X и у меня возникают проблемы с запуском задания cron. Я печатаю следующее:

$ sudo -i $ crontab -e 

Затем я ввожу:

* * * * * root ifconfig en0 down > /dev/null 0 19 * * * root ifconfig en0 down > /dev/null 0 7 * * * root ifconfig en0 up > /dev/null 

и безуспешно, первая строка для тестирования. Я хочу, чтобы он отключил мой интернет. Следующие две строки я планирую оставить, как только у меня получится.

Если я ввожу это в терминал, интернет отключается

ifconfig en0 down 

Почему моя работа cron не закрывает интернет?

К вашему сведению: это дополнительный вопрос из Как я могу написать работу cron, которая заблокирует мой интернет с 7 вечера до 7 утра? (Так что я могу немного поспать) В большинстве комментариев есть люди, которые смеются надо мной. И несколько попыток решить эту проблему без выполнения заданий cron.

3

2 ответа на вопрос

4
WinGuru

Когда вы вводите команды в свой crontab, вам не нужно указывать пользователя, так как у каждого пользователя есть свой индивидуальный crontab, хранящийся в / usr / lib / cron / tabs /

Ваш crontab должен выглядеть следующим образом:
* * * * * /sbin/ifconfig en0 down > /dev/null
0 19 * * * /sbin/ifconfig en0 down > /dev/null
0 7 * * * /sbin/ifconfig en0 up > /dev/null

0
Community

У вас есть роутер Wi-Fi, и ваш аэропорт все еще открыт? Если это так, вам нужно отключить это тоже. Либо отключите его навсегда через Системные настройки -> Сеть, либо используйте команды cron, чтобы сделать то же самое. На моей машине Аэропорт en1, но я объяснил, как проверить ответ на свой оригинальный вопрос, если вы не уверены.

Еще одна вещь, которую нужно проверить, - это путь вверху файла crontab. Он должен предоставлять доступ к команде ifconfig.

Запустите 'whereis ifconfig' на терминале, чтобы узнать, где находится команда ifconfig, и добавьте этот путь к команде path в верхней части файла crontab, если его там нет.