Mac OS X El Capitan에서 누구나 액세스 할 수있는 SMB 공유를 마운트하는 방법


10

누구나 액세스 할 수있는 SMB 네트워크 공유를 어떻게 마운트 할 수 있습니까? 내가 시도한 것은 다음과 같습니다.

마운트 명령 사용

me$ sudo mkdir /Multimedia
me$ sudo chmod 777 /Multimedia
me$ sudo mount -t smbfs -o nosuid,-d=777 //user:password@qnap/Multimedia /Multimedia/

그때

me$ cd /Multimedia      
-bash: cd: /Multimedia: Permission denied

마운트 후 / Multimedia에 대한 권한

drwxrwxrwx   1 root  wheel  16384 Nov  8 11:04 Multimedia

그러나 이것은 작동합니다

root# cd /Multimedia

tl; dr 루트 만 마운트 된 공유에 액세스 할 수 있습니다

자동 마운트 사용

/etc/auto_master

#
# Automounter master map
#
+auto_master            # Use directory service
/net                    -hosts          -nobrowse,hidefromfinder,nosuid
/home                   auto_home       -nobrowse,hidefromfinder
/Network/Servers        -fstab
/-                      -static
### SMB shares
/-                      /etc/automounts/smb -nosuid,noowners

/etc/automounts/smb

/Multimedia        -fstype=smbfs,soft,noowners,noatime,nosuid ://user:password@qnap/Multimedia

그때

me$ sudo automount -vc
automount: /net updated
automount: /home updated
automount: /Multimedia mounted
automount: no unmount

그 후

me$ cd /Multimedia
me$ ls -ld /Multimedia/
drwx------  1 me  staff  16384 Nov  8 11:04 /Multimedia/

공장! 그러나 불행히도 다른 사용자는 액세스 할 수 없습니다

otheruser$ cd /Multimedia 
-bash: cd: /Multimedia: Permission denied

그러나 만약 내가

me$ umount /Multimedia

그리고

otheruser$ cd /Multimedia
otheruser$ ls -ld /Multimedia 
drwx------  2 otheruser  staff  1 Nov  8 15:17 /Multimedia

공장! 그러나

me$ cd /Multimedia
-bash: cd: /Multimedia: Permission denied

그리고 아직

root# cd /Multimedia

공장!

tl; dr 자동 마운트 및 루트를 유발 한 사용자 만 공유에 액세스 할 수 있습니다.


첫 번째 방법을 확인했지만 문제가 없습니다. 루트, 나와 다른 사용자와 공유를 마운트하고 액세스 할 수 있습니다. noowners 또는 nosuid플래그에 관계없이 마운트 한 후에 는 항상 현재 사용자를 소유자 및 staff마운트 지점의 그룹으로 설정했습니다. (btw에 오타 nowness가 있음 /etc/auto_master)
techraf

1
@techraf 잘 잡아! 확인해 주셔서 감사합니다. 다른 결과를 얻었을 가능성이 매우 높습니다. 공유 자체의 허가 자체와 관련이있을 수 있습니까? 오늘 밤 엉망으로 만들려고합니다
Rytis I

1
안녕하세요 @ Rytis l, 나는 같은 문제가 있습니다-당신은 이것을 해결 했습니까?
HankCa

@HankCa nope, 여전히이 문제가 있습니다 :(
Rytis I

이 문제를 해결할 방법을 찾았는지 궁금합니다.
게으른 로그

답변:


2

SMB 공유를 게스트로 마운트 할 수있게하면 올바른 권한으로 마운트됩니다.

나는 똑같은 문제가 있었고 이것은 High Sierra에서 나에게 효과적입니다.

/ etc / auto_nfs :

Public -fstype=smbfs,soft,noowners,noatime,nosuid smb://guest@192.168.1.1/Public

그리고 마운트 후에는 drwxrwxrwx 권한이 있으며 다른 사용자로부터 검색 할 수 있습니다.


1

macOS에서는 사용자가 사용자 정의 uid / gid 비트로 SMB 네트워크 드라이브를 마운트 할 수없는 것 같습니다. 또한 드라이브를 마운트 한 사용자 만 드라이브에 액세스 할 수 있습니다. Apple이 보안에 관심이 있는지 아니면 버그인지는 잘 모르겠습니다. 그러나 불행히도 수년간입니다. macOS-to-MacOS 공유 드라이브에서 여러 사례를 테스트했습니다.

    known-user@a-server:~% sudo ls -l
    -rw-r-----  1 known-user    known-group    0 Jun 13 10:50 a-file
    -rw-r-----  1 known-user    unknown-group  0 Jun 13 10:50 b-file
    -rw-r-----  1 unknown-user  known-group    0 Jun 13 10:50 c-file
    -rw-r-----  1 unknown-user  unknown-group  0 Jun 13 10:50 b-file

    who-mount@my-desktop:~% sudo ls -l
    -rw-r-----  1 who-mount     whose-group  0 Jun 13 10:50 a-file
    -rw-r-----  1 who-mount     whose-group  0 Jun 13 10:50 b-file
    -rw-r-----  1 who-mount     whose-group  0 Jun 13 10:50 c-file
    -rw-r-----  1 who-mount     whose-group  0 Jun 13 10:50 d-file

    who-mount@my-desktop:~% cat a-file
    who-mount@my-desktop:~% echo hello > a-file

    who-mount@my-desktop:~% cat b-file
    who-mount@my-desktop:~% echo hello > b-file

    who-mount@my-desktop:~% cat c-file
    who-mount@my-desktop:~% echo hello > c-file
    zsh: permission denied: c-file

    who-mount@my-desktop:~% cat d-file
    cat: d-file: Permission denied
    who-mount@my-desktop:~% echo hello > d-file
    zsh: permission denied: d-file
  1. 공유 파일 / 폴더의 uid / gid는 항상 who-mount:whose-group
  2. 공유 서버에서 권한 비트가 동일 a-server
  3. 서버는 다음 who-mount과 같이 취급 합니다 known-user:known-group ( known-group기본 그룹은 know-user).

macOS 용 Fuse 를 사용하는 것이 좋습니다 . -o플래그 와 함께 사용자 정의 uid / gid 및 권한 비트 옵션을 제공합니다 . FUSE 드라이브를 마운트하고 권한을 변경 하는 bindfs 를 확인하십시오 . bindfs를 사용하면 언급 한 방식으로 smb 드라이브를 마운트 한 후 권한 페치 smb 드라이브를 마운트 할 수 있습니다.

그러나 각 사용자마다 공유 드라이브가있는 것이 가장 좋습니다.


-1

답변이 될 수있는 질문이 있습니다 ...
시스템 환경 설정에서 "공유"를 사용하지 않는 이유는 무엇입니까?
그런 다음 파일 공유를 선택하고 폴더와 사용자를 설정하면 "옵션"버튼 아래에 SMB가 있습니다.
CLI보다 트릭을 훨씬 쉽게 수행해야합니다.


이것이 내 유스 케이스에 해당되는지 확실하지 않습니다. 아이디어는 모든 사용자에 대해 OS 시작시 공유를 마운트해야한다는 것입니다. 그러나 나는 그것을 시도하고 다시보고
Rytis I

"공유"는 Mac에서 다른 사람과 폴더를 공유합니다. 내가 시도하는 것은 그 반대입니다. 기존 네트워크 공유를 Mac에 마운트하려고합니다.
Rytis I

좋아, 그럼 리눅스에서 폴더를 공유하고 싶니? Qorry, 나는 잘못된 방향을보고 있었다 ^ _ ^ 데비안 시스템에서도 그렇게했다. 너무 게으르지 만 CLI 대신 폴더에서 공유를 활성화하기 위해 Gnome 환경 설정 패널을 사용했습니다.
Marc Augier
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.