LINUX.ORG.RU
решено ФорумAdmin

Что-то сломали в samba?

 , ,


0

2

manjaro, обновил завалявшийся ПК, поставил samba, простейший конфиг из одного пользователя и шары.

По итогу

smb: \tst\> mkdir 123:
NT_STATUS_OBJECT_NAME_INVALID making remote directory \tst\123:

Не даёт создать файлы с : в имени.

Также не показывал файлы с : в имени пока я не нагуглил, что надо mangled names = no.

Имею на данный момент:

6.3.8-1-MANJARO-ARM
samba 4.18.2-2
# cat smb.conf 
[global]
   workgroup = WORKGROUP
   dns proxy = no
   log file = /var/log/samba/%m.log
   max log size = 1000
   client min protocol = SMB2
   server role = standalone server
   passdb backend = tdbsam
   obey pam restrictions = yes
   unix password sync = yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *New*UNIX*password* %n\n *ReType*new*UNIX*password* %n\n *passwd:*all*authentication*tokens*updated*successfully*
   pam password change = yes
   map to guest = Bad Password
   usershare allow guests = yes
   name resolve order = lmhosts bcast host wins
   security = user
   guest account = nobody
   load printers = no
   disable spoolss = yes
   show add printer wizard = no

[data]
  comment = data
  browseable = no
  path = /mnt
  guest ok = no
  valid users = flotsky
  force user = flotsky
  writable = yes
  create mask = 0755
  directory mask = 0755
  mangled names = no

При этом этот-же конфиг, но на samba 4.17.5-1 прекрасно позволяет создать файлы с : в имени и без всяких mangled names = no прекрасно всё показывает.

Что мне ещё надо включить в конфиге чтобы было как раньше?

★★
Use any character in the current code page for a name, including Unicode characters and characters in the extended character set (128–255), except for the following:

The following reserved characters:

< (less than)
> (greater than)
: (colon)
" (double quote)
/ (forward slash)
\ (backslash)
| (vertical bar or pipe)
? (question mark)
* (asterisk)
Anoxemian ★★★★★
()
Ответ на: комментарий от Anoxemian

Это я нагуглил. На соседнем сервере с samba 4.17.5-1 и аналогичным конфигом я успешно создаю файлы с : в имени.

Что мне надо поправить в конфиге чтобы я и в текущей 4.18.2-2 так мог? Или откатываться?

Flotsky ★★
() автор топика

Скорее починили, а не сломали

В винде «:» в именах файлов запрещено. Samba - реализация виндового smb в linux. То, что раньше она позволяла (если тебе верить) создавать такие имена - явно баг ;)

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

Samba - реализация виндового smb в linux.

Ну исторически нет. :)

То, что раньше она позволяла (если тебе верить) создавать такие имена - явно баг ;)

Нет, сетевой протокол сам по себе, не имеет отношения к реализации ОС которая его обрабатывает.

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

Эх, увы я слишком ленив для этого. Я единственный пользователь, так что наверное просто пересяду на sshfs

Попробую поспрашивать samba@lists.samba.org, почему так сложно просто найти существование этого maillist?

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

Ну что мне сложно что-ли, ок

Подставь свои параметры.

#path = /home/m/samba/wa/user #уже задано
guest ok = Yes
guest only = Yes
#writeable = yes #уже задано
allow hosts = 192.168.148.252 # пусть будет точечно IP клиента

Результат

smb: \> mkdir 123:
NT_STATUS_OBJECT_NAME_INVALID making remote directory \123:

Попробовал, ошибка осталась

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

Тогда процитирую ещё раз шапку поста:

При этом этот-же конфиг, но на samba 4.17.5-1 прекрасно позволяет создать файлы с : в имени и без всяких mangled names = no прекрасно всё показывает.

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

Вчитался, это «Character mapping»

Наскоком попробовал, работает только в одну сторону или я плохо копировал со stackoverflow.

Увы mapping меня не устраивает т.к. тогда его придётся учитывать во всех других местах.

Пересяду на sshfs пока что.

Flotsky ★★
() автор топика