Схемы как это зависят в большой степени от реализации сервера. Некоторые серверы поддерживают намного больше функций, чем другие.
Я исследовал бы некоторый способ разделить файл или рассмотрел бы пользовательское заявление, которое отправит диапазон, который Вы просите.
Попытайтесь отладить использование техники, описанной в моем ответе на суперпользователе, использовании
debug_msg "running ~/.bashrc ($0), PATH = '$PATH'"
и подобный для/etc/bashrc,/etc/profile, и т.д.
Проверьте поля ENV_SUPATH и ENV_PATH в/etc/login.def
Для хорошей практики сценариев не полагайтесь на переменную ПУТИ для выполнения команды, поскольку это неоднозначно.
Различные сценарии (выполнение другого управления на ПУТИ) получены в этих двух случаях.
Так как Вы используете -
опция, su
должен получить Ваш сценарий входа в систему, в то время как ssh
не должен.
Я не знаю, какое поведение Вы хотите точно, но возможно Вы могли проверить если некоторые su опции (например,-m, - сохранять-среда: не сбрасывайте переменные среды), мог помочь?
Это goees как этот:-
В/etc/passwd, где идентификатор пользователя определяется корневой каталог и оболочка по умолчанию:
auser:!:97:51::/home/user:/usr/bin/ksh
Когда auser входит в систему 'ksh' или удар или независимо от того, что будет работать, это поднимет 'ПУТЬ' по умолчанию с '/etc/environment' файл (и некоторые оболочки выполнят файл инициализации в масштабе всей системы), но, он также выполнит команды из первоначального сценария в корневом каталоге в вышеупомянутом случае '.kshrc' файл.
Таким образом, ПУТЬ может быть установлен начальной командой, настройками в масштабе всей системы для той начальной команды и 'скрытых' .rc файлов в пользовательском корневом каталоге.
'su -' не выполняет тот же набор начальных команд, как вход в систему только поднимает настройки по умолчанию с '/etc/environment' файл.
из su страницы справочника
su is used to become another user during a login session. Invoked with-
out a username, su defaults to becoming the super user. The optional
argument - may be used to provide an environment similiar to what the
user would expect had the user logged in directly.
поэтому Вы будете всегда получать различные огибающие настройки на "su" и "su -"