LINUX.ORG.RU

ssh и разные кодировки


0

0

есть моя машина. у меня utf8. есть сферический сервер в вакууме. там соответственно koi8r. а может cp1251. как бы так сделать, что-бы у меня все красиво было и без знаков вопроса, когда я хожу туда по ssh?

anonymous

1) использовать терминал, поддерживающий смену кодировки на лету (например, Konsole);

2) на сервере сделать:

echo 'export LANG=ru_RU.UTF-8' >>~/.profile

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

В дополнение к сказанному выше:

1) в качестве терминала, поддерживающего смену кодировки, можно использовать screen.

2) Если у тебя UTF-8, а на сервере что-то другое и версия ncurses составляет по меньшей мере 5.5, то помогает luit: LANG=ru_RU.KOI8-R luit ssh example.ru.

3) Установка $LANG на сервере не поможет читать текстовые файлы, там находящиеся. При ее установке кодировкой на сервере сановится UTF-8.

4) Этому вопросу пора в FAQ.

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

Аж страшно стало :-)

> 1) в качестве терминала, поддерживающего смену кодировки, можно использовать screen.

Зачем терминал со сменой кодировки?


>3)Установка $LANG на сервере не поможет читать текстовые файлы, там находящиеся.

Понятное дело, но это не связано с ssh. iconv ему в руки.

sdio ★★★★★
()

Еще есть вариант, Konsole & gnome-terminal умеют на лету менять :)

Terminal -> Set Character Encoding (жаль, на hotkey нельзя повесить :()

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

Еще вариант кстати - в /etc/ssh/sshd_config на сервере прописать AcceptEnv LANG, тогда локаль будет такая же, как и на клиенте.

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

> с cp1251 luit уже не поможет

Вызывающе неверная информация, по крайней мере для Debian. Достаточно сгенерировать локаль ru_RU.CP1251 вручную с помощью команды localedef.

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