Да, добавление расширения /opt/app1/bin/**/*/
к переменной PATH (при условии, что вы установили соответствующую опцию для своей оболочки, чтобы заставить **
расширяться ), приведет к поиску исполняемых файлов в этих каталогах.
Обратите внимание, что завершающий */
здесь лишний; вы можете просто использовать расширение /opt/app1/bin/**/
, чтобы получить список всех подкаталогов в /opt/app1/bin
.
Я не вижу ограничения по длине в спецификации POSIX для $PATH , приведенной в базовых определениях --переменных среды --других переменных среды.
Сложности, которые я могу вообразить,:
маскирование идентичных команд --при наличии двух одинаковых имен исполняемых файлов, то тот, который найден (и вставлен в PATH)первым , будет вызываться по умолчанию
дополнительная задержка при невозможности найти ошибочную команду (, так как ваша оболочка ищет ее во всех этих каталогах)
Ну, кто бы это ни делал, он делает это как root, поэтому загляните в /var/log/auth.log
, чтобы узнать, не в это время входит в систему как root или admin или использует sudo для получения привилегий root. Возможно, вам придется увеличить уровень ведения журнала в /etc/ssh/ssd_config
, чтобы получить соответствующие сведения.
Другими словами:
/etc/passwd
, какие учетные записи являются root или admin и имеют bash оболочки, определенные для их учетных записей. Если у них есть домашние каталоги, посмотрите, не определено ли что-нибудь странное в их файлах .bashrc. crontab -e
. В вашем примере перезагрузка происходит примерно через 5 минут после начала сеанса. Запускается ли что-нибудь из этого файла crontab примерно с таким интервалом? Все в этой очереди получает root независимо от того, откуда исходный код.