MacOS에서 Linux 서버에서 실행 중인 Samba 공유에 연결할 수 없습니다.

MacOS에서 Linux 서버에서 실행 중인 Samba 공유에 연결할 수 없습니다.

신사숙녀 여러분,

여기 누군가가 내가 직면하고 있는 문제를 해결할 수 있는 올바른 방향을 알려줄 수 있기를 바랍니다. 인터넷 포럼에서 가능한 모든 옵션을 시도했지만 운이 없었습니다.

Fedora Server를 실행하는 헤드리스 서버에서 실행되는 삼바 공유에 연결하려고 합니다. Time Machine 백업을 수행하기 위해 Mac mini에서 연결을 시도했는데 로그에 다음 오류가 표시되었습니다.

make_connection_snum: 서비스 타임머신의 canonicalize_connect_path 실패, 경로 /home/timemachineuser/timemachinebackup

Fedora Server는 Proxmox 하이퍼바이저에서 가상 머신으로 실행됩니다. Time Machine 백업에만 사용하기 위해 Proxmox를 통해 750GB의 스토리지를 할당했습니다.

아래는 내 설정입니다/etc/samba/smb.conf

[timemachine]
    comment = Time Machine
    create mask = 0770
    directory mask = 0770
    path = /home/timemachineuser/timemachinebackup
    read only = No
    spotlight = Yes
    vfs objects = catia fruit streams_xattr
    fruit:time machine = yes
    fruit:aapl = yes

의 경로는 smb.confProxmox에서 할당한 저장소의 마운트 지점입니다.

/dev/sdc1    738G   73M  700G   1% /home/timemachineuser/timemachinebackup

smb.conf의 경로를 /home/timemachineuser폴더 내의 일반 폴더로 변경한 다음 Mac에서 연결을 시도하면 완전히 작동합니다. 하지만 경로가 마운트 지점인 경우 위의 오류가 발생합니다. 많은 사람들이 사용하는 것처럼 chmod -R a+x /home...하지만 행운은 없습니다.

/dev/sdc1동일한 결과로 XFS 및 ext4 파일 형식으로 포맷을 시도했습니다 .

이 문제를 해결하는 데 도움을 주시면 감사하겠습니다. 미리 감사드립니다.

계층적 파일 권한:

~ ⌚ 21:05:09 $ ls -ld / /home /home/timemachineuser /home/timemachineuser/timemachinebackup

dr-xr-xr-x. 22root4096 1월 9일 23:26/drwxr-xr-x. 4 루트 루트 67 1월 6일 08:11 /home drwxrwx--x. 5 timemachineuser timemachineuser 221 1월 11일 18:11 /home/timemachineuser drwxrwxrwx. 3 timemachineuser timemachine 4096 1월 11일 17:45 /home/timemachineuser/timemachinebackup

~ ⌚ 21:05:12 $

답변1

나는 어젯밤에도 비슷한 일을 하고 있었습니다. 내 설정은 홈 디렉터리를 사용하지 않고 각 LVM이 자체 루트 수준 디렉터리에 설치된다는 점에서 약간 다르지만 몇 가지 사항이 도움이 될 수 있습니다.

[Global] 섹션에서는 다음을 사용하여 최소 SMB 수준을 적용합니다.

[Global]
min protocol = SMB2

SMB 4를 실행하는 경우 엔드포인트 클라이언트가 지원하는 경우 SMB3을 최소값으로 설정할 수도 있습니다(내 클라이언트 중 일부는 아직 지원하지 않으므로 v2를 최소값으로 잠급니다).

연결하는 사용자에 대해 smb 인증을 설정하기 위해 smbpasswd를 실행했습니까?

이전에 언급했듯이 나는 홈 레벨 대신 루트 레벨 디렉토리를 사용하고 있습니다(일반 삼바 공유 및 홈 기반 공유라고 부르는 옵션 측면에서 selinux의 모호함을 피하기 위해).

이를 위해 다음 명령을 사용하여 관련 selinux 보안을 설정합니다.

setsebool -P samba_export_all_ro=1 samba_export_all_rw=1
getsebool –a | grep samba_export   ##Just to check it set properly
semanage fcontext –at samba_share_t "/timemachine1(/.*)?"
restorecon /timemachine1

나는 또한 timemachine 디렉토리를 chown하여 소유자가 삼바 공유에 로그인한 사용자가 되도록 했습니다.

또한 방화벽 포트가 열려 있는지 다시 확인하세요.

firewall-cmd --permanent --add-service=samba
firewall-cmd --reload

Mac에서는 파인더를 열고 command-K를 실행하면 수동으로 삼바 연결을 만들어 테스트할 수 있습니다.

그 외에도 smb.conf의 전역 섹션에 이상한 내용이 있을 수 있으며 여전히 문제가 있는 경우 해당 섹션을 게시할 수 있습니다.

답변2

이 디렉토리가 Samba에 액세스 가능하다는 것을 서버의 SELinux에 알려 주셨습니까?

이는 공유 홈 디렉토리를 허용하도록 SELinux에 지시하는 것만큼 간단할 수 있습니다. setsebool -P samba_enable_home_dirs 1

관련 정보