web-dev-qa-db-ja.com

WindowsからのSambaアクセスが遅いのはなぜですか?

Ubuntu 12.04 Serverを使用してファイルサーバーをセットアップしました。目的は、これまで多数のNASドライブが提供してきたWindowsユーザーに複数のネットワークドライブを提供することです。

これまでに定義した1つの共有でSambaをセットアップしました。テスト用のWindows 7およびWindows XPマシンから問題なく接続できます。

Windowsから共有のディレクトリ一覧を作成する場合、すべてのファイルを一覧表示するには最大2分かかります。BuffaloNASを使用していた場合、約1.5秒かかりました。応答なしでタイムアウトすることもあります。

デフォルトのsmb.confを使用し、これまでに設定した共有に次を追加しました。

[engineering]
comment = Ubuntu File Server Share
path = /networkdriveshares/engineering
browsable = yes
guest ok = yes
read only = no
create mask = 0755

ワークグループの設定を、Windowsコンピューターが使用するアクティブドメイン名に変更しようとしましたが、違いに気付きませんでした。

デフォルトのsmb.confに対して行った他の唯一の変更は、推奨ソケット設定の追加でした。

     SO_RCVBUF=8192 SO_SNDBUF=8192
     socket options = TCP_NODELAY

遅いSamba共有に関する多くの情報がオンラインで共有されていますが、私が見つけたすべての解決策を試しましたが、どれも違いをなめませんでした。解決策がない場合、Windowsクライアントが使用するファイルサーバーを設定するより良い方法はありますか?

5
swalker2001

SO_RCVBUFおよびSO_SNDBUFを設定せずにサーバーを設定してみてください。すなわち:

socket options = TCP_NODELAY

何もありません。または、socket optionsを完全にコメントアウトして、Sambaのデフォルトを使用します。

Ubuntu 12.04とギガビットイーサネット上のMacクライアントで同様の問題が発生しました。ファイルの読み取りは約100キロバイト/秒、つまり300倍遅くなりました。 Ubuntu 11.10では、両方のバッファを8192に設定しようとしていました。しかし、12.04にアップグレードしたときに、パフォーマンスを本来の状態(ディスク速度である約30メガバイト/秒)に戻すには、その設定を削除する必要がありました。

別の解決策 提案されたのは、max protocol = NT1を設定することです。私は最初にそれを試しましたが、それは私を助けませんでした。

1
Nelson