web-dev-qa-db-ja.com

sambaに接続されたファイルの移動NAS

これはばかげた質問かもしれませんが、NASボックス(freeNAS)でファイルを移動すると、データはWindows PCを経由しますか?

コピーするときはどうですか?

ファイルの移動に何時間もかかるかどうかわからなかったので、NASボックスのクリーンアップをいつも恐れていました...

これは、ソースとターゲットによって異なります。

同じ送信元と宛先の共有:
ソースとターゲットが同じSMB共有上にある場合、クライアントはそれを移動するコマンドを送信するだけです。データ自体がクライアントに転送されたり、サーバーに再度アップロードされたりすることはありません。これにより、VPN接続が遅い場合でも、ミリ秒以内にギガバイトのファイルを移動できます。

異なる送信元と宛先の共有:
ソースフォルダーと宛先フォルダーが同じSMB共有上にない場合は、データを移動しても、ローカルマシンを介して転送されます。したがって、ネットワーク転送はデータサイズの約2倍になります(データの読み取り、データの書き込み、古い場所でのデータの削除)。

コピー:
データをコピーする場合、データは常にクライアントを介してコピーされます。したがって、トラフィックは常にデータサイズの約2倍になります。

そうです、移動は同じシェアで行われた場合にのみ高速です。ローカルシェルアクセスでNASを使用する場合、シェルにログインし、フォルダをNAS側に直接移動することで、いくつかの移動操作をより高速に実行できる場合があります。たとえば、ファイルを\\nas\incoming\から\\nas\archived\に移動したい場合、Samba/SMBを介してファイルを移動すると、ネットワークを介してデータを1つの共有から別の共有にコピーすることになります。 NASで、ディレクトリ構造が次のようになっていると仮定します(例)。

/data/
/data/incoming
/data/archived
...

また、/data/が同じボリューム上にあると仮定すると(mountコマンドを使用して確認)、以下を実行するとはるかに高速になります。

mv "/data/incoming/some-folder" "/data/archived"

ファイルシステムでの移動操作は、archivedsome-folderディレクトリへの参照を追加し、incomingから参照を削除するだけなので、これによりすべてのデータがほぼ即座に移動されます。

注意:シェルでデータを移動する場合は、すべての権限を含めてデータも移動します。そのため、archivedフォルダー内の他のファイルのアクセス許可と一致させるために、移動後にsome-folderのアクセス許可を調整する必要がある場合があります。

6
SkyBeam