Запуск сценария после перезагрузки, но до входа в систему

Я пытаюсь уведомлять себя всякий раз, когда мой компьютер перезагружается, с помощью скрипта python. Я использую Ubuntu 20.04 LTS. Я пробовал запускать приложения, и хотя он работает, он запускает мой скрипт python только после входа в систему, что противоречит цели. Я попытался установить следующую строку в моем crontab

@reboot /bin/reboot_script.sh

, где reboot_script.sh содержит строку / usr / bin / python3 /bin/reboot_script.py. Я пробовал добавить root после @reboot , но, похоже, ничего не работает. В моем файле python используется модуль requests для проверки связи с сервером, который уведомляет меня о перезагрузке. Когда я запускаю программу с терминала после входа в систему, я получаю уведомление и код успешно выполняется.

Что мне не хватает? Где должны быть файлы, чтобы он запускался при перезагрузке? Любая помощь приветствуется.

РЕДАКТИРОВАТЬ: Я устанавливаю crontab путем выполнения следующих команд на терминале:

sudo crontab > my-crontab

Добавьте вышеупомянутую строку в конец файла. А затем выполните

crontab my-crontab

EDIT2: В соответствии с комментариями ниже, я добавил следующие строки в файл с именем reboot_notify.service и поместил его в / usr / lib / systemd / system / . ​​

[Unit]
Description=Notify on reboot

[Install]
WantedBy=multi-user.target

[Service]
ExecStart=/usr/bin/python /bin/reboot_notify.py

После этого я запустил systemctl daemon-reload , systemctl start reboot_notify.service и systemctl enable reboot_notify.service согласно ответу здесь .

Но даже сейчас уведомление было получено только после того, как я вошел в систему. Что нужно изменить?

1
задан 10 December 2020 в 13:58

0 ответов

Другие вопросы по тегам:

Похожие вопросы: