Linux 시스템에 Samba 공유 폴더 이름이 잘못 표시됨

Linux 시스템에 Samba 공유 폴더 이름이 잘못 표시됨

개인 데이터(문서, 사진, 비디오 등)를 저장하는 데 사용하는 OMV 5를 실행하는 NAS 서버가 있습니다. 저는 Samba를 사용하여 NAS의 데이터를 공유하고 공유 데이터에 액세스하는 데 사용하는 클라이언트에서 Fedora 33을 실행하고 있습니다.

제가 가진 문제는 auxNAS에 이름이 지정된 폴더가 AHY9U3~9Fedora 클라이언트에 나타나는 것입니다. 아래 예를 참조하세요. 여기에 이미지 설명을 입력하세요 왼쪽 tmux 패널의 작업 디렉터리는 클라이언트에 있는 반면 오른쪽 패널의 작업 디렉터리는 NAS에 있습니다. 이상한 이름이나 NAS에 있는 폴더의 올바른 이름을 사용하여 클라이언트의 폴더에 액세스할 수 있다는 것이 이상합니다.

클라이언트에서 실행되는 소프트웨어를 사용하여 클라이언트와 NAS 간에 데이터를 동기화하려고 할 때 이 "오류"를 우연히 발견했습니다. 폴더 계층 구조 전체에 aux라는 폴더가 흩어져 있고 문제가 실제로 클라이언트에 이름이 매핑되는 방식일 때 동기화 소프트웨어가 차이점을 표시했습니다.

문제의 원인이 무엇인지, 가장 중요하게는 문제를 해결하는 방법을 모르겠습니다. 또한 클라이언트 측에서 잘못 매핑된 다른 폴더 이름이 있는지 궁금합니다.

클라이언트와 서버 모두에 대한 소프트웨어 버전 정보는 아래에서 확인하십시오. 서버 삼바 버전: Samba 버전 4.9.5-Debian 클라이언트 삼바 버전: 버전 4.13.12 클라이언트 정보:

  • 커널 버전 - 5.14.13-100.fc33.x86_64
  • 계피 버전 - 4.8.6

관련 게시물을 찾았습니다. 아래를 참조하세요. 그러나 삼바 규칙에 따라 유효한 파일 이름이라고 생각합니다 aux. 그렇지 않습니까?

  1. samba 이름에 콜론이 포함된 파일을 표시하는 방법은 무엇입니까?
  2. 이름을 변경하지 않으면 Windows 10 Samba에서 음악을 재생할 수 없게 됩니다.

편집: 아래는 smb.conf의 전역 섹션과 해당 공유 섹션입니다.

[global]
workgroup = WORKGROUP
server string = %h server
dns proxy = no
log level = 0
log file = /var/log/samba/log.%m
max log size = 1000
logging = syslog
panic action = /usr/share/samba/panic-action %d
encrypt passwords = true
passdb backend = tdbsam
obey pam restrictions = no
unix password sync = no
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
socket options = TCP_NODELAY IPTOS_LOWDELAY
guest account = nobody
load printers = no
disable spoolss = yes
printing = bsd
printcap name = /dev/null
unix extensions = yes
wide links = no
create mask = 0777
directory mask = 0777
use sendfile = yes
aio read size = 16384
aio write size = 16384
time server = no
wins support = no
multicast dns register = no
# Special configuration for Apple's Time Machine
fruit:aapl = yes
[test]
path = hidden-path/test/
guest ok = no
guest only = no
read only = no
browseable = yes
inherit acls = yes
inherit permissions = no
ea support = no
store dos attributes = no
vfs objects = 
printable = no
create mask = 0664
force create mode = 0664
directory mask = 0775
force directory mode = 0775
hide special files = yes
follow symlinks = yes
hide dot files = yes
valid users = 
invalid users = 
read list = 
write list =

EDIT2: 예약어라고는 생각하지 못했지만 aux그렇습니다.https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file. 지적해 주신 @Ricky에게 감사드립니다. 이제 폴더 이름만 변경하면 됩니다.

답변1

auxDOS/Windows의 예약어입니다. "일반적인" 방법을 통해 파일에 액세스하려는 시도는 실패합니다.

T:\>dir \\.\t:\aux
10/31/2021  08:50 AM                 0 aux
           1 File(s)              0 bytes

T:\>dir t:\aux
File Not Found

내 버전의 삼바(3.0.10)는 꽤 오래되었기 때문에 이름이 전혀 손상되지 않습니다. (짧은 이름과 긴 이름은 "aux"입니다)

관련 정보