Ситуация, которую вы описали, действительно необычная. Вот несколько возможных объяснений, как строка `@reboot /root/bot/run_bot.sh` могла появиться в `crontab` без вашего ведома:
1. **Ошибки в конфигурации или скрипте**: Возможно, в вашем `systemd`-сервисе был какой-то сбой, который привел к тому, что он не работал корректно и пытался перезапустить ваш бот. Если в скрипте есть код, который добавляет задачи в `crontab`, это могло произойти.
2. **Совпадение с другими установками**: Возможно, вы установили какое-то программное обеспечение или пакет, который автоматически добавляет задачи в `crontab` при установке или обновлении. Например, определённые инструменты для автоматизации или резервного копирования могут делать это.
3. **Вредоносные программы**: Если сервер был подвержен какому-либо компромиссу или атаке, злоумышленник мог внедрить задачу в `crontab` для обеспечения перезапуска своего кода.
4. **Редактирование `crontab` через скрипт**: Если вы запустили какой-то сторонний скрипт, который имел права на редактирование `crontab`, он мог добавить эту строку.
5. **Взаимодействие с `systemd`**: Если ваш `systemd`-сервис был настроен некорректно, и система, проверяя его состояние, пыталась восстановить его (например, с помощью `_ExecStartPre`, `_ExecStartPost`), это также может привести к неожиданной ситуации.
Чтобы выяснить конкретную причину, вы могли бы:
- Проверить логи команд `journalctl -u telegrambot.service` для получения информации о том, почему сервис мог завершиться с ошибкой.
- Проверить изменения в `crontab` с помощью команды `grep -i cron /var/log/syslog` или соответствующего файла лога, если у вас включено логирование.
- Перепроверить безопасность вашего сервера, включая наличие вирусов или недействительного доступа.
Важно избегать использования `crontab` и `systemd` одновременно для одного и того же приложения, чтобы избежать конфликтов и двойного запуска.