( egmont | 2011. 05. 17., k – 17:28 )

$ env LANG=hu_HU-UTF8 ssh gépnév

Ebben biztos vagy? Mérget vennék rá, hogy _így_ nem működik. Máshogy persze igen.

Az ssh programot ugyanis csöppet sem érdekli a saját LANG-ja. Sőt, a karakterkészlet úgy egyáltalán. Az ssh csak byte-okat pakol változatlan formában balról jobbra és jobbról balra.

Ha helyi latin2-es gép előtt ülsz, és távoli utf8-asra jelentkezel be, akkor valakinek valahol el kell végeznie az oda-vissza konvertálást, és az nem az ssh lesz, mert tudtommal az nem tud ilyet.

A konvertálást végezheti például a luit, vagy a screen, mindkettő tud alakítgatni, mindkettőt lehet elvileg a helyi és a távoli gépen is indítani, bár a helyin szerintem egyszerűbb. Vagy még jobb: a helyileg futó terminál program viselkedését át lehet állítani. Ehhez termináltól függően _lehet_ hogy elég a _terminált_ (és nem az ssh-t) módosított LANG-gal indítani, avagy escape szekvenciát kiírni rá ami átkapcsol (*), avagy kézzel menüben átállítani, stb.

(*) UHU-ban megcsináltuk, hogy ha szerveren fut UTF-8-as UHU, és akármilyen kliensről belépsz ssh-val, akkor kiírja azt az escape szekvenciát, amelyik UTF-8-ba billenti a terminált. A dolog hátránya csak annyi, hogy kilépéskor nem tudjuk megbízhatóan visszabillenteni.