Проблема з mangled names
варіантом Samba полягає в тому, що жодна установка не є ідеальною. Ви можете мати імена, які не піддаються обробці, але не можна отримати доступ до них жодним чином, оскільки вони містять незаконні символи або імена, введені у формат DOS 8.3 і, отже, близькі до нечитабельних.
На щастя, є (зараз) модуль VFS, який називаєтьсяcatia
спеціальним відображенням символів. Зокрема, можна вказати символів, які вважаються незаконними у файлах файлів Windows.
У [global]
розділі розмістіть ці рядки:
# Mapping illegal characters, where enabled with "vfs objects = catia"
mangled names = no
catia:mappings = 0x22:0xa8,0x2a:0xa4,0x2f:0xf8,0x3a:0xf7,0x3c:0xab,0x3e:0xbb,0x3f:0xbf,0x5c:0xff,0x7c:0xa6
У кожному [share_name]
розділі додайте цей наступний рядок (якщо у вас вже є vfs objects
рядок, просто додайте catia
до списку):
vfs objects = catia
У моїй системі на базі Debian цей об'єктний модуль VFS був встановлений як частина стандартного пакету.
Одним із прикладів імені файлу, відображеного за допомогою цього параметра, є 2017-12-24 12:23.txt
. Використання mangled names = yes
має цей файл відображається 2BB0Y9~4.TXT
. Використовуючи vfs objects = catia
натомість, це ім'я файлу відображається як 2017-12-24 12÷23.txt
. Це не ідеально, але це досить добре. І найголовніше, я можу отримати доступ до нього з програм Windows.