В Mountain Lion почему удаленные оболочки через ssh НЕ наследуют среду родительского процесса launchd?

4

При удаленном входе в мой компьютер Mountain Lion Mac sshя не получаю ту же PATHпеременную, что и при локальном открытии оболочки: локальная оболочка наследует свое окружение, как и ожидалось, launchdи, следовательно, имеет значение PATH, которое я установила /etc/launchd.conf.

С удаленной оболочкой меня удивило: когда я открываю оболочку через sshнее, она не наследует установленные переменные среды, /etc/launchd.confхотя все связанные sshпроцессы имеют launchdсвоих родителей. Почему???

Вырез из ps -efвывода показывает:

UID   PID  PPID   C STIME   TTY           TIME CMD
  0     1     0   0 Mon01PM ??         9:07.07 /sbin/launchd
.
.
.
501   150     1   0 Mon01PM ??         0:17.99 /sbin/launchd
.
.
.
501 39994   150   0 Thu11AM ??         0:00.72 /usr/bin/ssh-agent -l
.
.
.
  0 74002     1   0  2:08PM ??         0:00.05 /usr/sbin/sshd -i
501 74005 74002   0  2:08PM ??         0:00.00 /usr/sbin/sshd -i
501 74000  9844   0  2:08PM ttys000    0:00.02 ssh bridge@bridgethegap.local

Я могу исправить эту проблему, установив , PATHнапример , в .bashrc, но я нахожусь в поисках пути , чтобы дать то же самое PATHдля всех приложений , запущенных под Mountain Lion (см В Mountain Lion Как установить переменную PATH среды ... ).

Итак, мой вопрос: почему удаленные оболочки через ssh не наследуют среду launchd?

halloleo
источник

Ответы:

2

Я тоже искал ответ и в конце концов нашел соответствующий ответ на этот вопрос: как установить общесистемные переменные среды в OS X Mavericks .

Это мера безопасности, особенно для обеспечения того, чтобы пользователи защищенной оболочки с отключенной оболочкой, для которой SHELLзадано значение /bin/false, не могли получить незапрошенный доступ.

Один обходной путь устанавливается PermitUserEnvironmentв вашей конфигурации SSH; Пожалуйста, прочтите предостережения безопасности в вышеупомянутом ответе, прежде чем делать это.

rodmanb
источник
Хотя эта ссылка может ответить на вопрос, лучше включить сюда основные части ответа и предоставить ссылку для справки. Ответы, содержащие только ссылки, могут стать недействительными, если связанная страница изменится.
grg
Хорошая идея: я только что попытался добавить эту информацию из другого ответа - но она должна быть рецензирована ...
halloleo
Рецензия пройдена - ответьте, теперь полезнее. :-)
halloleo