man
страница для wget
говорит
NAME
Wget - The non-interactive network downloader.
DESCRIPTION
Wget is non-interactive, meaning that it can work in the background,
while the user is not logged on. This allows you to start a retrieval
and disconnect from the system, letting Wget finish the work. By
contrast, most of the Web browsers require constant user's presence,
which can be a great hindrance when transferring a lot of data.
wget
- пример неинтерактивной программы, которую я знаю. Теперь мой вопрос:
wget
без входа пользователя? Как можно использовать wget без входа пользователя в систему?
blockquote>Включив команду wget в демон / службу или программу, в которой вы, как пользователь, не запускаете загрузку.
Как работают неинтерактивные программы?
blockquote>Когда вы создаете демона и активируете этого демона, он может продолжать проверять сервер и запрашивать загрузку. Если сервер не работает, неинтерактивная программа продолжит работу, когда сервер вернется в исходное состояние, и пользователю не потребуется никаких действий.
Обновление Ubuntu, например, может быть выполнено без каких-либо действий со стороны пользователя и даже без входа в систему.
Для меня самый простой способ запуска вещей, когда вы не вошли в систему, это включить строку в ваш файл crontab:
# m h dom mon dow command
*/30 * * * * test -x /home/koju/bin/yourscript && /home/koju/bin/yourscript
Тест заключается в том, чтобы cron
не жаловаться по электронной почте когда ваш скрипт не может быть найден. Формат первых полей смотрите в man 5 crontab
.
Из yourscript
вы вызываете wget, поскольку он неинтерактивен , он не будет предлагать вам взаимодействовать, запрашивая ввод. Пока параметры командной строки wget
предоставляют вам необходимую информацию, вышеуказанные настройки будут выполняться для вас каждые 30 минут.
Конечно, вы должны проверить yourscript
, запустив его вручную, прежде чем запускать его на регулярной основе. Вы можете обнаружить, что wget недостаточно мощен, чтобы делать то, что вы хотите, особенно на веб-страницах, которые требуют взаимодействия с пользователем выше базового имени входа.