マウントされた samba 共有を別の共有に共有する

マウントされた samba 共有を別の共有に共有する

Samba 経由で共有されているディレクトリがあります。今、この共有内にあるディレクトリに別のコンピューター上の共有をマウントしています。問題は、このマウントされた共有が、共有にアクセスすると空のディレクトリとして表示されることです。

なぜこのようなことが起こるのか、または別の共有の一部であるかのように別のコンピューターの共有に正しくアクセスするにはどうすればよいのか、誰か知っていますか?

追加された例:

役に立つかどうかはわかりませんが、このようなシナリオを作成する方法は次のとおりです。

# on host assume that we are `user1`
# assume that we use `[homes]` in `smb.conf` so our home directory is shared
mkdir -p d1/d2 && cd d1
# assume that there is a `host2`
# with a share named `share2` and a user `user2`
sudo mount.cifs -o username=user2 '//host2/share2' d2
# we check and see that it works and files from `share2` are visible
ls d2
# now we try to use this share from anywhere, for example locally
echo "ls d1/d2" | smbclient '\\localhost\user1' -U user1
# now we will only see an empty directory

答え1

調査した結果、ここで説明されているバグの影響を受けているようです: https://serverfault.com/questions/491464/directories-shown-as-files-when-sharing-a-mounted-cifs-drive

Samba で「再共有」するときにバグがあるようです。バグのため、ディレクトリがファイルとして表示されます。Samba はこれを判別するために inode カウントを使用し、cifs はこれをゼロに設定します。そのため、すべてのディレクトリはサイズがゼロのファイルとして表示されます。

提案されている解決策は、カーネル モジュールを samba 用に再コンパイルすることですが、これは実行可能な解決策ではないと思います。回答から 3 年が経過しているので、今ではもっと良い解決策を知っている人がいるかもしれません。元のバグは、cifs と samba で WILL_NOT_FIX としてマークされていますが、何も起こっていないようです。

もっと良い解決策をお持ちの方がいらっしゃいましたら、ぜひお聞かせください。

関連情報