samba come visualizzare i file con i due punti nei loro nomi?


13

Samba non visualizza i file correttamente quando contengono due punti.

Nome file originale: test:file.txt

Visualizza nome in Windows: T8S6CH~R.TXT

Come posso ripararlo?

Informazioni:

Linux: SLES 11 SP 3

Samba: Version 3.6.3-0.33.39.1-3128-SUSE-CODE11-x86_64

Risposte:


13

Il problema con l' mangled namesopzione di Samba è che nessuna impostazione è l'ideale. Puoi avere nomi che non sono alterati, ma non è possibile accedervi in ​​alcun modo perché contengono caratteri illegali o nomi alterati nel formato DOS 8.3 e quindi vicini a illeggibili.

Fortunatamente esiste (ora) un modulo VFS chiamatocatia che fornirà mappature di caratteri personalizzate. In particolare è possibile mappare i caratteri considerati illegali nei nomi di file di Windows.

Nella [global]sezione posizionare queste righe:

    # 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

In ogni [share_name]sezione aggiungi questa riga successiva (se hai già una vfs objectsriga, aggiungi semplicemente catiaall'elenco):

    vfs objects = catia

Sul mio sistema basato su Debian questo modulo oggetto VFS è stato installato come parte del pacchetto standard.

Un esempio di un nome file che è mappato da questa impostazione è 2017-12-24 12:23.txt. Utilizzando mangled names = yesquesto file è visualizzato come 2BB0Y9~4.TXT. Utilizzando vfs objects = catiainvece questo nome file viene visualizzato come 2017-12-24 12÷23.txt. Non è perfetto ma è abbastanza buono. E, soprattutto, posso accedervi dalle applicazioni Windows.


1
Vedi ⁚ ∶ ׃ ꞉ per altri personaggi che sembrano due punti ASCII.
Stéphane Chazelas,

@ StéphaneChazelas non esitare a inviarlo come suggerimento al team di sviluppo di Samba. Ho appena preso la loro lista di suggerimenti.
roaima,

Quando condivido una cartella con Nautilus, la cartella non viene, ovviamente, visualizzata in /etc/samba/smb.conf. Come posso applicare la soluzione in questo scenario?
Hans Deragon,

Questo è perfetto, grazie.
Sarà il

5

Per qualche motivo Samba ha iniziato a manipolare i nomi dei file contenenti due punti. Finora non sono riuscito a trovare nulla riguardo a questo comportamento in Internet.

La soluzione è molto semplice. L'aggiunta mangled names = nonella [global]sezione /etc/samba/smb.confe il riavvio di Samba hanno risolto il problema.


Fantastico saperlo! +1
Luciano Andress Martini,

4
Questa soluzione è incompleta. I file con caratteri Windows illegali come ':' non vengono visualizzati. Vedi la soluzione di roaima.
Hans Deragon,

1

Punto interrogativo per personaggi speciali? \ <> * etc sono illegali nei nomi di file di Windows e evito sempre di usarli.

Tuttavia, non ho alcun problema con questi personaggi che usano macOS Catalina accedendo al mio setup di FreeNAS-11.3-U1 e SMB / Samba. Non sono sicuro del motivo per cui questa impostazione non è predefinita, ma dovrai seguire questi passaggi per farlo funzionare perfettamente con MacOS.

Nell'interfaccia utente web di FreeNAS, vai a Condivisione> SMB> Modifica

  1. Scegli "modalità avanzata" e seleziona " catia e fruit " in "Oggetti VFS"
  2. Impostare il parametro ausiliario su fruit:encoding = native

Quindi vai a Servizi e riavvia SMB

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.