답변:
삼바 mangled names
옵션 의 문제점 은 두 설정 모두 이상적이지 않다는 것입니다. 맹 글링되지 않은 이름을 가질 수 있지만 잘못된 문자가 포함되어 있거나 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
데비안 기반 시스템에서이 VFS 객체 모듈은 표준 패키지의 일부로 설치되었습니다.
이 설정으로 매핑 된 파일 이름의 한 예는 2017-12-24 12:23.txt
입니다. 를 사용하면 mangled names = yes
이 파일이로 표시됩니다 2BB0Y9~4.TXT
. vfs objects = catia
대신 사용하면 이 파일 이름이로 표시됩니다 2017-12-24 12÷23.txt
. 완벽하지는 않지만 꽤 좋습니다. 그리고 가장 중요한 것은 Windows 응용 프로그램에서 액세스 할 수 있다는 것입니다.
어떤 이유로 삼바는 콜론을 포함하는 파일 이름을 엉망으로 만들기 시작했습니다. 지금까지는 인터넷에서이 동작과 관련된 것을 찾을 수 없었습니다.
해결책은 매우 간단합니다. 추가 mangled names = no
에 [global]
에 절 /etc/samba/smb.conf
하고 다시 시작 삼바이 문제를 해결했습니다.
특수 문자 물음표? \ <> * 등은 Windows 파일 이름에서 유효하지 않으므로 항상 사용하지 마십시오.
그럼에도 불구하고, FreeOSS-11.3-U1 및 SMB / Samba 설정에 액세스하는 macOS Catalina를 사용하여 이러한 문자에 문제 가 없습니다 . 이 설정이 기본적으로 설정되지 않은 이유는 확실하지 않지만 MacOS에서 완벽하게 작동하려면 다음 단계를 따라야합니다.
FreeNAS webUI에서 공유> SMB> 편집으로 이동하십시오.
fruit:encoding = native
그런 다음 서비스로 이동하여 SMB를 다시 시작하십시오.