>>>>>Есть Fedora Core 1 + Samba3. Локаль - koi8-r. Клиент - w2k.
>>>>>В конфиге самбы прописано:
>>>>>dos charset = cp866
>>>>>unix charset = koi8-r
>>>>>display charset = koi8-r
>>>>>Все работает OK (русские имена файлов отображаются правильно с обоих сторон -
>>>>>и на клиенте и на сервере), пока в имени файла не
>>>>>встретится символ '№' (номер). В этом случае имя превращается целиком в
>>>>>кашу. В чем может быть косяк?
>>>>
>>>>Косяк в том, что в кодировке koi8-r нет вообще символа номера. Выхода
>>>>два:
>>>>
>>>>1. перейти, например, на юникод.
>>>>2. подправить исходники libiconv на предмет замены символа номера на другой при
>>>>переконвертации, например, на #. Я на freebsd так и сделал и
>>>>все работало.
>>
>>А кто чего знает про кодировку ISO-IR-111?
>>Я поставил unix charset = ISO-IR-111 и всё заработало нормально. Символ НОМЕР
>>в UNIX'е просто отображается какой-то закорючкой, а в остальном всё нормально.
>>
>
>
>А если я уже очень долго сижу на koi8-r и вдруг переду
>на другую кодировку, кто-нибудь скажет какие проблемы меня ожидают....
Вполне конкретные. Такие символы, которые есть в одной кодировке (cp866) и отсутствуют в другой (koi8-r), обычно чем-то заменяются. Например символ НОМЕР в именах файлов в Линухе виделся как КОПИРАЙТ, когда у меня была samba-2.2 с koi8-r. А в samba-3 с ISO-IR-111 он заменяется на какую-то каракулю рамочную. В винде конечно всё отлично, но можно предположить, что если щас вместо samba-2.2 поставить Samba-3, то прощайте номерочки ... С остальными символами проблем пока замечено не было.
|