web-dev-qa-db-ja.com

「無効なハンドル」を生成するSambaシェア

昨日から突然samba share(Arch Linux)が出てきた奇妙な振る舞いがあります。私が考えることができる唯一のトリガーは、システムの更新です(pacman -Syu)。それ以来、ルートシェア(/)にアクセスでき、すべてのディレクトリが表示されますが、いずれかのディレクトリにアクセスしようとすると、「invalid handle "Windowsでの応答。ただし、ディレクトリのいずれかを共有している場合(例:/data)個別の共有として、問題なく完全にアクセスできます。これが共有の定義です。

それまでの間、問題を(Windowsホストではなく)Sambaサーバーに限定しました。 2番目のArchLinuxインストールは、[data]共有を正しくマウントしますが、ルート[/ data/root_ssd]共有へのアクセスを拒否します。逆に、この新しい未使用のArch LinuxインストールでSambaを起動すると、ルートパスが共有されなくなります。

何か案は?この動作は、最近のSambaアップグレードでは新しいように思われます。

    [antergos1-festplatte]
    comment = 20 GB Festplatte
    path = /
    writeable = yes
    create mask = 0766
    directory mask = 0777
    guest ok = yes
    force user = aag
    browseable = yes

    [data]
    comment = webserver directories
    path = /data
    writeable = yes
    create mask = 0777
    directory mask = 0777
    guest ok = yes
    force user = aag
    browseable = yes
    force group = admins
1
aag

この動作には、最新のSambaセキュリティアップデートが付属しています。 DebianWheezyで遭遇しました。 CVE-2015-5252 を修正すると、意図的または不注意でルートレベルの共有(/)がブロックされるようです。

回避策として、smb.confで設定できます
[グローバル]
unix拡張機能=いいえ
[シェア]
ワイドリンク=はい

注:デフォルトであるunix extension = yesは、ワイドリンクを無効にします。

4
Peter Rindfuss

Sambaのbugzillaのbug #11647 も参照してください。修正されます。

そこから別の回避策があります:

mkdir /mnt/root
mount -o rbind / /mnt/root

Replace path = / with path = /mnt/root in smb.conf
1
Peter Rindfuss