web-dev-qa-db-ja.com

マウント方法SMB Mac OS X El Capitanの誰でもアクセスできる共有

どうすれば、誰でもアクセスできるSMBネットワーク共有をマウントできますか?これが私が試したものです:

Mountコマンドの使用

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マウントされた共有にアクセスできるのはrootだけです

自動マウントの使用

/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自動マウントを引き起こしたユーザーとrootだけが共有にアクセスできます

10
Rytis I

SMB共有をゲストとしてマウント可能にすると、適切な権限でマウントされます。

私はまったく同じ問題を抱えていましたが、これはハイシエラで私にとってうまくいきます:

/ etc/auto_nfs:

Public -fstype=smbfs,soft,noowners,noatime,nosuid smb://[email protected]/Public

マウント後はdrwxrwxrwx権限が付与され、さまざまなユーザーから閲覧できます。

2
Tommi Uimonen

MacOSは、ユーザーがマウントすることを許可していないようですSMBカスタムuid/gidビットを使用したネットワークドライブ。ドライブをマウントするユーザーにのみ、ドライブへのアクセスを許可します。 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-mountknown-user:known-groupとして扱います(ここでknown-groupknow-userのデフォルトグループです)

Fuse for macOS を使用することをお勧めします。 -oフラグ付きのカスタムuid/gidおよび許可ビットオプションを提供します。チェックアウト bindfs Fuseドライブをマウントし、権限を変更します。 bindfsを使用すると、前述の方法でsmbドライブをマウントした後で、権限が取得されたsmbドライブをマウントできます。

しかし、私が思うに、各ユーザーが共有ドライブを持っているのが最善です。

1
Daehyun You

答えになりそうな質問があります...
システム設定で「共有」を使用しないのはなぜですか?
次に、[ファイル共有]を選択し、フォルダとユーザーを設定します。[オプション]ボタンの下にSMBがあります。
これは、CLIを使用するよりもはるかに簡単にトリックを実行します。

0
Marc Augier