March 27

Настройка автозапуска скрипта

Создайте новый systemd-сервис для запуска скрипта:

sudo nano /etc/systemd/system/automation.service
  1. Изменение прав доступа: Чтобы убедиться, что файлы имеют права на выполнение (особенно важно для скриптов), измените права доступа следующим образом:

Для файла :

sudo chmod +x /etc/systemd/system/automation.service

Это даст файлу keitaro_script.py права на выполнение.

  1. Проверка наличия файлов: Чтобы проверить, что файлы успешно созданы и находятся в нужной директории, используйте команду ls:
ls -l /etc/systemd/system/automation.service

Добавьте следующее содержимое в файл:

[Unit]
Description=Automation Script
After=network.target

[Service]
ExecStart=/usr/bin/python3 /путь/к/automation_script.py
Restart=always
User=ваш-пользователь

[Install]
WantedBy=multi-user.target

Замените /путь/к/automation_script.py на фактический путь к вашему скрипту автоматизации. Замените ваш-пользователь на имя пользователя, от которого должен запускаться скрипт. Сохраните файл и закройте редактор. Включите и запустите сервис:

sudo systemctl enable automation.service
sudo systemctl start automation.service

Теперь ваш скрипт автоматизации будет запускаться автоматически при загрузке системы и продолжит работу даже после перезагрузки сервера или закрытия терминала. В дальнейшем вы можете расширить скрипт, добавив код для выполнения необходимых действий в панели управления Кейтаро, таких как отбор списков в фильтрах, добавление и сохранение данных в другое окно.

Проверить статус сервиса

Вы можете проверить статус сервиса, используя команду systemctl status:

sudo systemctl status automation.service

Эта команда покажет текущий статус сервиса, включая то, активен ли он (запущен) в данный момент, и выведет последние строки из журнала сервиса. Если скрипт успешно сработал, вы увидите соответствующие сообщения в этом журнале.

Просмотреть журналы системы

Вы можете также просмотреть журналы системы для вашего сервиса, используя

sudo journalctl -u automation.service

Проверка журналов ошибок

Чтобы получить более подробную информацию об ошибке, вызвавшей сбой сервиса, используйте команду journalctl. Это позволит вам увидеть полный вывод вашего скрипта и сообщения об ошибках.

sudo journalctl -u automation.service

2. Проверка скрипта на наличие ошибок

Ошибка с кодом выхода status=2 обычно указывает на проблемы в самом скрипте. Возможно, в скрипте есть синтаксическая ошибка или он пытается использовать ресурсы, которые недоступны или не существуют. Попробуйте запустить скрипт вручную, чтобы увидеть, выводятся ли какие-либо ошибки:

/usr/bin/python3 /etc/systemd/system/automation_script.py

3. Проверка прав доступа к скрипту

Убедитесь, что скрипт доступен и имеет права на выполнение. Вы можете установить права на выполнение, используя команду chmod:

sudo chmod +x /etc/systemd/system/automation_script.py