Естественным механизмом запуска для устройства ch_p4 в сетях является
rsh. Однако, использование rsh требует установки некоторых прав
доступа на машинах-участниках. В некоторых сетях установка этих прав
нежелательна. Простейшей альтернативой использованию rsh является использование
ssh (secure shell - безопасная shell). Она может быть использована для
безопасных распределенных вычислений. Она требует определенной настройки,
описанной здесь, но очень проста в использовании.
Ниже приведен ряд шагов, которые необходимо осуществить, чтобы ssh
корректно работала с mpich.
Убедитесь, что в Вашей системе установлена ssh (команда which ssh).
Если ее нет, Вы можете взять ее по адресу
http://www.ssh.fi/sshprotocols2/index.html.
Создайте свой ключ авторизации.
ssh-keygen
Это действие приведет к генерации пары личного и
общего ключа. Личный ключ будет сохранен в
/.ssh/identity
а общий ключ будет сохранен в
/.ssh/identity.pub
Авторизация доступа. Поместите Ваш общий
ключ в файл /.ssh/authorized_keys. Все ключи, упомянутые в этом файле,
будут позволять доступ.
cp /.ssh/identity.pub /.ssh/authorized_keys
Если машина, на которой Вы соединяетесь, не разделяет общую файловую систему,
то
/.ssh/identity.pub нужно скопировать поверх /.ssh/authorized_keys той машины, к которой Вы подключаетесь. ssh
необходимо, чтобы authorized_keys не имел разрешения на запись для
группы, так что сделайте
chmod go-rwx
/.ssh/authorized_keys
Этот шаг позволит Вам не вводить пароль
каждый раз при запуске команды безопасного shell.
Чтобы избежать ввода пароля всякий раз, когда вызывается ssh,
необходимо создать ssh-agent и добавить к нему пароль.
ssh-agent $SHELL
ssh-add
Выполните конфигурирование с -rsh=ssh, чтобы устройство ch_p4
использовало ssh вместо rsh:
configure -rsh=ssh
При возникновении проблем:
Убедитесь, что машины, перечисленные в Вашем util/machines/machine.xxxx также присутствуют в файле
/etc/ssh_known_hosts Вашей сети или в /.ssh/known_hosts в
Вашем домашнем каталоге.
Важно, чтобы /tmp имел права доступа 377,
владельца - root и группу 0.
openssh имеет флаг -v, очень полезный для
отслеживания проблем установки связи.