
Windows 2019ホストのSMB共有があります。
\\server\share
mount.cifs
私のLinuxサーバーにインストールできます。/mnt/
その後、いくつかのレベルの下のディレクトリにアクセスしようとします。
\\server\share\dir1\dir2\dir3\dir4
/mnt/dir1/dir2/dir3/dir4
共有のマウントに使用したWindowsユーザーアカウントには読み取り権限がありますが、読み取り権限dir1
はありません。このアカウントにはすべての権限があります。dir2
dir3
dir4
dir4
他のWindowsシステムではdir2
アクセスできませんが、まだアクセスできます。または、dir3
アクセスするにはフルパスを入力する必要があり、dir4
移動できません(大丈夫です)。
dir4
LinuxではCDに直接アクセスすることはできません。
UNIXシステムでは、サブディレクトリにアクセスするには各親ディレクトリにアクセスする必要があるため、これが少し奇妙であることを知っていますが、私の例がうまくいかない理由はわかりません。
答え1
Linuxベースのクライアントのオプションでこれを指定する必要がありますnoperm
。mount
文書(man mount.cifs
)には次のように指定されています。
noperm
クライアントは権限確認を行いません。 [...]通常、クライアントとサーバーシステムのUID / GID一致が、マウントを実行しているユーザーにアクセスを許可するのに十分近い場合にのみ必要です。これは、サーバーソフトウェアによるターゲットシステムの一般的なACLチェックには影響しません。 [...]
これはnoperm
、CIFS 合成 POSIX 権限を解釈しようとするローカルファイルシステム階層のすべての試みをオフにし、代わりにサーバーが自分が何をしているのかを知っていることを信頼することを意味します。