Unit for tg bot
Перейти к навигации
Перейти к поиску
Создаем Unit для tg bot
Способ №1:
Создаем исполняемый фаил noProdaction.sh и в нем вписываем что то типо:
#!/bin/bash
/usr/bin/python3.11 /opt/Python/Telegram/noProdaction/noprodaction-1/main.py
Далее создаем с помощью нашего любимого редактора nano по пути /etc/systemd/system/ фаил noprodaction.service
nano /etc/systemd/system/noprodaction.service
И вписываем что то типо такого:
[Unit] Description=telegam bot OmArtVal After=network.target
[Service] User=root Nice=1 KillMode=process SuccessExitStatus=0 1 ProtectHome=true ProtectSystem=full PrivateDevices=true NoNewPrivileges=true WorkingDirectory=/opt/Python/Telegram/noProdaction ExecStart=/opt/Python/Telegram/start/noProdaction.sh Restart=always
[Install] WantedBy=multi-user.target
Закрываем редактор с сохранением изменений CTRL+O и CTRL+X
Перезагружаем демона:
systemctl daemon-reload
И стартуем его:
systemctl start noprodaction.service
И все! Наш сервис должен работать! Проверить это можно командой
systemctl status noprodaction.service
Вывод должен быть таким:
root@python:~# systemctl status noprodaction.service
* noprodaction.service - telegam bot noProdaction
Loaded: loaded (/etc/systemd/system/noprodaction.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-11-14 11:44:32 MSK; 3h 14min ago
Main PID: 173 (python3.11)
Tasks: 2 (limit: 96529)
Memory: 34.1M
CPU: 1.766s
CGroup: /system.slice/noprodaction.service
`-173 /usr/bin/python3.11 /opt/Python/Telegram/noProdaction/noprodaction-1/main.py
Nov 14 11:44:32 python systemd[1]: Started telegam bot noProdaction.
и у нас при старте сервера вудет работать скрипт.
Способ №2:
не создавать ни каких вспомогательных файлов, а сразу писать всё в файле юнита
[Unit] Description=telegam bot noProdaction After=network.target
[Service] User=root Nice=1 KillMode=process SuccessExitStatus=0 1 ProtectHome=true ProtectSystem=full PrivateDevices=true NoNewPrivileges=true WorkingDirectory=/opt/Python/Telegram/noProdaction/noprodaction-1/ ExecStart=/usr/bin/python3.11 /opt/Python/Telegram/noProdaction/noprodaction-1/main.py Restart=always
[Install] WantedBy=multi-user.target
Более подробно о написании UNIT есть в статье по этой ссылке