Для того, чтобы все компоненты Samba правильно работали с русскими именами файловых объектов и ресурсов, в /etc/samba/smb.conf необходимо добавить следующие директивы:
[global] client code page = character set =
Далее приводятся наборы значений этих директив и системных кодировок, наиболее часто используемых в России, Белоруссии и на Украине:
$LANG = ru_RU.KOI8-R client code page = 866 characte set = koi8-r $LANG = ru_RU.CP1251 client code page = 866 characte set = 1251 $LANG = be_BY.CP1251 client code page = 866 character set = 1251 $LANG = uk_UA.KOI8-U client code page = 1125 character set = koi8-u $LANG = uk_UA.CP1251 client code page = 1125 character set = 1251U $LANG = ru_UA.CP1251 client code page = 1125 character set = 1251U
В двух последних случаях 1251U — специальное обозначение внутри Samba для комбинации локально “1251 — удалённо 1125”. В Samba определение удалённой кодировки делается по имени локальной [12].
Также необходимо проследить, чтобы на тех компьютерах Windows, с которыми предполагается взаимодействие через Samba, были установлены соответствующие системные настройки локализации. В противном случае велика вероятность, что вместо кириллических символов будут отображены знаки “?” либо другие непрошеные символы.
Указанные директивы /etc/samba/smb.conf воздействуют на работу всех компонентов Samba — и серверных, и клиентских. На данный момент поддерживаются кириллические написания имён — файлов, каталогов и ресурсов.