1. Создание unit-файла для systemd

  1. Откройте терминал и создайте unit-файл:

    sudo nano /etc/systemd/system/vk_bot.service
  2. Добавьте следующее содержимое в файл:

    [Unit]
    Description=VK Bot Service
    After=network.target
    
    [Service]
    ExecStart=/root/rent_bot/myenv/bin/python /root/rent_bot/vk_bot.py
    WorkingDirectory=/root/rent_bot
    Environment=PYTHONPATH=/root/rent_bot/myenv
    Restart=always
    User=root
    Group=root
    
    [Install]
    WantedBy=multi-user.target
  3. Сохраните файл и выйдите:

    • Нажмите Ctrl + O, затем Enter для сохранения.
    • Нажмите Ctrl + X, чтобы выйти из редактора.

2. Перезагрузка конфигурации systemd

После редактирования unit-файла необходимо перезагрузить конфигурацию systemd:

sudo systemctl daemon-reload

3. Запуск и активация службы

  1. Запустите службу:

    sudo systemctl start vk_bot.service
  2. Активация для автозапуска:

    Чтобы служба запускалась при старте системы:

    sudo systemctl enable vk_bot.service

4. Управление и мониторинг

  • Проверка статуса службы:

    sudo systemctl status vk_bot.service
  • Остановка службы:

    sudo systemctl stop vk_bot.service
  • Перезапуск службы:

    sudo systemctl restart vk_bot.service
  • Просмотр журналов:

    Для отслеживания работы и ошибок:

    journalctl -u vk_bot.service -b

Как увидеть все запущенные сервисы (включая боты) с помощью systemctl

Чтобы увидеть все запущенные сервисы, управляемые systemctl, используйте следующую команду:

systemctl list-units --type=service --state=running

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

systemctl list-units --type=service --state=running | grep "bot"

Замените "bot" на конкретную часть имени, которая определяет ваши боты. Например, если ваши боты имеют названия, содержащие "mybot", используйте:

systemctl list-units --type=service --state=running | grep "mybot"

Эти инструкции помогут вам настроить и контролировать вашего бота через systemd, обеспечивая его стабильную работу как часть системных служб. Сохраните эту инструкцию, чтобы она всегда была под рукой для ссылок и управления вашим ботом.