samba isimleri iki nokta üst üste ile nasıl görüntülenir?


13

Samba, iki nokta üst üste içerdiğinde dosyaları düzgün görüntülemez.

Orijinal dosya adı: test:file.txt

Windows altında görünen ad: T8S6CH~R.TXT

Nasıl düzeltebilirim?

Bilgi:

Linux: SLES 11 SP 3

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

Yanıtlar:


13

Samba'nın mangled namesseçeneğiyle ilgili sorun , her iki ayarın da ideal olmamasıdır. Karışık olmayan adlara sahip olabilirsiniz, ancak yasadışı karakterler içerdikleri için herhangi bir şekilde erişilemez veya DOS 8.3 biçimine karıştırılmış ve dolayısıyla okunamaz hale getirilmiş adlar olabilir.

Neyse ki (şimdi) özel karakter eşlemeleri sağlayacak olan bir VFS modülü varcatia . Özellikle Windows dosya adlarında geçersiz sayılan karakterleri eşleştirmek mümkündür.

Bölümde [global]şu satırları yerleştirin:

    # 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

Her [share_name]bölüme bir sonraki satırı ekleyin (zaten bir vfs objectssatırınız varsa catia, listeye ekleyin ):

    vfs objects = catia

Debian tabanlı sistemime bu VFS nesne modülü standart paketin bir parçası olarak kuruldu.

Bu ayar tarafından eşlenen dosya adına bir örnek verilebilir 2017-12-24 12:23.txt. Kullanarak mangled names = yesbu dosya olarak görüntüleniyor 2BB0Y9~4.TXT. vfs objects = catiaBunun yerine kullanıldığında bu dosya adı olarak görüntülenir 2017-12-24 12÷23.txt. Mükemmel değil ama oldukça iyi. Ve en önemlisi, Windows uygulamalarından erişebiliyorum.


1
ASCII iki nokta üst üste işareti gibi görünen diğer karakterler için bkz. ⁚ ∶ ׃ ꞉.
Stéphane Chazelas

@ StéphaneChazelas lütfen bunu Samba geliştirme ekibine öneri olarak göndermekten çekinmeyin. Ben sadece onların önerilen listesini aldım.
roaima

Bir klasörü Nautilus ile paylaştığımda, klasör /etc/samba/smb.conf dosyasında görünmüyor. Çözümünüzü bu senaryoda nasıl uygulayabilirim?
Hans Deragon

Bu mükemmel, teşekkürler.
Will

5

Nedense Samba iki nokta üst üste içeren dosya isimlerini değiştirmeye başladı. Şimdiye kadar internette bu davranışla ilgili hiçbir şey bulamadım.

Çözüm çok basit. Ekleme mangled names = noiçinde [global]için bölüm /etc/samba/smb.confve yeniden başlatmadan Samba sorunu düzeltildi.


Bunu bilmek harika! +1
Luciano Andress Martini

4
Bu çözüm eksik. ':' Gibi geçersiz Windows karakterlerine sahip dosyalar gösterilmez. Roaima'nın çözümüne bakın.
Hans Deragon

1

Özel karakterler soru işareti? \ <> * vb. Windows dosya adlarında yasadışıdır ve her zaman bunları kullanmaktan kaçınırım.

Yine de, macOS Catalina'mı kullanarak FreeNAS-11.3-U1 ve SMB / Samba kurulumuma erişen bu karakterlerle bir sorunum yok . Bu ayarın neden varsayılan olarak olmadığından emin değilim, ancak MacOS ile kusursuz çalışması için bu adımları izlemeniz gerekir.

FreeNAS webUI'de Paylaşım> SMB> Düzenle'ye gidin

  1. "Gelişmiş mod" u seçin ve "VFS nesnelerinde" catia ve meyveyi işaretleyin
  2. Yardımcı parametreyi fruit:encoding = native

Ardından Hizmetler'e gidin ve SMB'yi yeniden başlatın

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.