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


10

誰でもアクセスできる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ルートのみがマウントされた共有にアクセスできます

自動マウントの使用

/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だけが共有にアクセスできます


最初の方法を確認し、問題は見つかりませんでした。root、私、および他のユーザーと共有をマウントしてアクセスできました。noowners またはnosuidフラグに関係なくマウントした後、現在のユーザーを常に所有者およびstaffグループとしてマウントポイントに取得しました。(ところで、タイプミスnownessがあります/etc/auto_master
techraf

1
@techrafグッドキャッチ!確認していただきありがとうございます。別の結果が得られたのは非常に悲惨です。共有自体の許可はそれと関係があるのでしょうか?私は今夜​​それを台無しにしようとします
Rytis I

1
こんにちは@Rytis l、同じ問題があります-これで解決しましたか?
HankCa、2016年

@HankCaいいえ、まだこの問題があります:(
Rytis I

この問題を解決する方法を見つけたのでしょうか。
Lazy Log

回答:


2

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

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

/ 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

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

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


-1

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


これが私のユースケースをカバーしているかどうかはわかりません。共有は、すべてのユーザーのOS起動時にマウントする必要があるという考え方です。しかし、私はそれを試して報告する
つもりです

「共有」はMacから他のユーザーとフォルダを共有します。私がやろうとしているのはその逆です。Macに既存のネットワーク共有をマウントしようとしています。
Rytis I 2017

では、Linuxのフォルダを共有しますか?申し訳ありませんが、私は間違った方向を調べていました^ _ ^ Debianシステムでも同じことをしました。私は怠惰すぎるかもしれませんが、CLIではなく、Gnome設定パネルを使用して、フォルダーの共有をアクティブにしました。
Marc Augier 2017年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.