Работая на ubuntu18, у вас есть задание bash для сбора данных с маршрутизатора с помощью ansible.
Вот баш-скрипт
#!/бин/баш
компакт-диск ~/сбор данных
ansible-playbook -i /home/user/datacollect/hosts /home/user/datacollect/datacollect.yml
Если я запускаю задание bash из консоли Ubuntu, проблем не возникает.
Поскольку нам нужно собирать данные каждые 5 минут, я создал для этого задание cron.
* * * * * /home/user/datacollect/call.sh
Данные не были сохранены в выходной файл, сначала я думал, что что-то остановило выполнение задания cron, затем я нашел информацию из /var/mail/user
Тема: Cron <user@host> /home/user/datacollect/call.sh
MIME-версия: 1.0
Content-Type: текстовый/обычный; кодировка = UTF-8
Контент-передача-кодирование: 8 бит
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/home/user>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=пользователь>
Идентификатор сообщения: <20211008092301.EB6B8262437@host>
Дата: пятница, 8 октября 2021 г., 20:23:01 +1100 (AEDT)
/home/user/datacollect/call.sh: строка 3: ansible-playbook: команда не найдена
Это может быть связано с настройкой среды пути, как показано ниже, но я не уверен, как проверить и изменить, и не уверен, что это основная причина.
-bash: ansible-playbook: команда не найдена