Samba 공유 폴더 이름이 Linux 컴퓨터에서 잘못 표시됨

Samba 공유 폴더 이름이 Linux 컴퓨터에서 잘못 표시됨

개인 데이터(문서, 사진, 비디오 등)를 저장하는 데 사용하는 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"입니다)

관련 정보