LINUX.ORG.RU

ssh и $TERM

 , ,


0

1

Доброго времени суток.

Есть 100+ хостов, среди которых аиксы и солярки, к которым надо подключаться по ssh. При подключении к хосту передается переменная TERM с локальной машины, которая равна 'rxvt-unicode' и про такой терминал хосты ничего не знают.

Нужно сделать чтобы при подключении переменная TERM была равна 'vt100'. Сделал alias ssh=«TERM=vt100 ssh», но тогда не работает автоподстановка имени хоста из .ssh/config. SendEnv тоже не подходит, т.к. надо настраивать sshd на хостах.

Как еще можно это сделать, ну или как заставить работать автоподстановку с алиасом ?

Deleted

Вставить в профайл шелла сервера проверку, если подключение удалённое или с определенного IP-адреса, то выставлять переменную TERM=vt100.
как-то так:

IP=`echo $SSH_CLIENT | awk '{ print $1 }'`
if test "$IP"="192.168.0.2"
then
TERM=vt100
export TERM
fi

lnx
()
Ответ на: комментарий от lnx

Править конфиги на серверах вообще не вариант, по определенным причинам. Нужно настроить это локальной машине.

Deleted
()

Нууу... Логинься c xterm.

Shadow ★★★★★
()
Ответ на: комментарий от Shadow

Вписать в .profile это очевидное решение, но мне оно не подходит. Хотя, видимо, так и предется делать.

Deleted
()
Ответ на: комментарий от Deleted

Ну, можешь написать скрипт, назвать его ssh:
#!/bin/sh
# хз, может скоро RedHat отменит /bin/sh

TERM=xterm
export TERM
/usr/bin/ssh $*

Кинуть в ~ и вызывать ~/ssh ....

Shadow ★★★★★
()
Последнее исправление: Shadow (всего исправлений: 1)
Ответ на: комментарий от Shadow

Хм, сейчас проверил еще раз алиас ssh=«TERM=vt100 ssh», в этот раз автодополнение сработало, видимо в первый раз луна не в той фазе была.

Со скриптом тоже работает.

В общем буду разбираться как автодополнение работает, как раз нужно будет к одному своему скрипту прикрутить.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.