tl; доктор
Выполнение ssh 127.0.0.1 ydisplay
источники ~/.bashrc
вместо /etc/profile
. Измените свой путь в ~/.bashrc
вместо этого.
подробнее
Единственное время /etc/profile
читается, когда Ваша оболочка является "оболочкой входа в систему".
Из справочника Bash:
Когда удар вызывается как оболочка входа в систему... он сначала читает и выполняет команды из файла/etc/profile
Но когда Вы работаете ssh 127.0.0.1 ydisplay
, bash
не запускается как оболочка входа в систему. Все же это действительно читает другой файл запуска. В Справочнике Bash говорится:
когда... выполняется... sshd.... это читает и выполняет команды от
~/.bashrc
Таким образом, необходимо поместить Ваш PATH
настройки в ~/.bashrc
.
В большинстве систем, ~/.bash_profile
источники ~/.bashrc
, таким образом, можно поместить настройки только в ~/.bashrc
вместо того, чтобы помещать их в оба файла.
Нет никакого стандартного способа изменить настройки для всех пользователей, но большинство систем имеет a /etc/bashrc
, /etc/bash.bashrc
, или подобный.
Сбой этого, настроенного pam_env
и помещенный PATH
начинание /etc/environment
.
См. также:
У Вас, вероятно, есть проблемы с SELinux. Принятие Вас имеет акцент на безопасность (Вы работаете над обратной петлей ssh, в конце концов), и не хотят отключать его, делать следующее как корень:
restorecon -R -v /home/git/.ssh
Если Вы действительно хотите отключить его, в конце концов, то отредактируйте/etc/selinux/config и установите SELINUX=permissive в нем.
Вы не сказали ssh использовать git_dsa ключ:
ssh -i /root/.ssh/git_dsa git@localhost
Или редактирование /root/.ssh/config
и добавьте соответствующее IdentityFile
директива.