Просто возник вопрос об использовании ClusterSSH (cssh) с помощью собственного ssh-подобного / ssh-clone приложения, которое мы используем внутри компании для подключения к удаленным машинам.
Я пробовал использовать ssh = /path/to/ssh_clone
переопределить в $HOME/.csshrc
или /etc/csshrc
(или даже передать его через -C
). К сожалению, работает cssh
с отладкой показывает, что он все еще пытается подключиться к удаленным машинам как ssh -l user machine_ip
вместо того ssh_clone -l user machine_ip
.
Мы будем очень благодарны за любые мысли / предложения о том, как обойти это. TIA.
Изменить: информация о версии
$ cssh -v
Version: 4.01_02
Дважды проверьте, что вы изменяете правильный файл.
Когда ты бежишь cssh
он автоматически выпишет ~/.csshrc
файл. В моей версии в этом файле 48 строк. Вместо редактирования нового файла вам нужно изменить строку, которая начинается с ssh=
.
Убедитесь, что конфигурация установлена правильно с помощью cssh -u | grep ^ssh=
.
Если вы пытаетесь изменить /etc/csshrc
, Я почти уверен, что .csshrc
в домашнем каталоге пользователя (который уже существует и имеет ssh=
line) переопределяет глобальную конфигурацию.
Если ничего из этого не помогает, удалите все эти файлы конфигурации, запустите cssh
один раз (аргументы не нужны), а затем изменить сгенерированный .csshrc
в вашем домашнем каталоге.
Обновить: И поскольку кажется, что это все еще не работает, попробуйте проверить, не исправлена ли ваша версия или что-то в этом роде. Пытаться grep parse_config_file $(type -p cssh)
за подсказку.
Если ваш ssh_clone имеет ту же базовую семантику вызова, что и ssh (и похоже, что это так), простым альтернативным подходом было бы поместить ssh_clone в свой собственный каталог, переименовать его в ssh и запустить cssh с этим новым каталогом в начале твой путь. Пока cssh ищет ssh в вашем PATH, он сначала найдет вашу клонированную версию и будет ее использовать.
Если вы часто запускаете cssh из командной строки, можно использовать простой сценарий-оболочку, чтобы обычные вызовы ssh по-прежнему получали правильную программу:
#!/bin/sh
# cssh_wrapper.sh
PATH="/path/to/ssh_clone_dir:${PATH}"
export PATH
cssh "$@"