Я предполагаю, что в первом рецепте вы выполняете вход в систему, что означает, что запускаются ваши сценарии .profile и / или .bashrc, которые изменяют переменную среды PATH, чтобы она включала расположение команды, которую вы хотите выполнить (pm2
). Во втором рецепте, где вы указываете --command
, я предполагаю, что исполняемый файл разветвляется / исполняется (запускается напрямую) без выполнения сценариев вашего профиля. Это приводит к тому, что команда не найдена. Может быть, попробуйте запустить скрипт (с помощью команды), который регистрирует переменные среды (например, /bin/env
) и посмотрите, как они отличаются от того, что вы находите, когда вы на самом деле вошли в систему.
Другим решением было бы указать полный путь к pm2
в вашей команде.