ラウンドトリップなしでNFSにリモートファイルをコピーする


10

nfsを介して透過的にマウントされているリモートドライブに大量のデータ(数GB)があります。これらのファイルを、すでに存在するサブディレクトリにコピーして、すべてが同じ物理ディスクに残るようにしたいと思います。そのため、ネットワーク上での不必要な往復を防止したいと思います。

それcp files* subdirは素朴なことをして、すべてのデータをメモリに読み込んでから、それを書き戻しているようです。本当?ディスクが物理的に接続されているサーバー上で実際に完全にコピーする特別なコマンドはありますか?


(のようにcp)コピーするのか、(のようにmv)移動するのですか?ファイルを移動した場合、ラウンドトリップが発生する理由がわかりません。
Kusalananda、2011

適切なコピー(cp)を意味します。
jdm

回答:


13

cp files * subdirは単純なことをし、すべてのデータをメモリに読み込んでから書き戻すようです。本当?

はい。

ディスクが物理的に接続されているサーバー上で実際に完全にコピーする特別なコマンドはありますか?

いいえ、sshを使用してリモートマシンにログインし、そこでコピーを実行できる場合を除きます。

編集 NFSプロトコルバージョン4.2(現在は4.1)に「サーバー側コピー」を追加する作業が行われています。たとえば、http : //www.usenix.org/events/fast11/posters_files/Lentini.pdfを参照してください。この機能を使用するには、a)NFSクライアントとそれをサポートするサーバーが必要であることに注意してください。b)クライアントOSの新しいsyscall(おそらくreflinkまたはcopyfile()?)など)。これが日の目を見る前に、少なくとも数年はかかると思います。


残念な。私はAFSがこれをサポートしていると思います。これは、誰かがNFSにパッチを実装してそれを含めるように見えます。lsub.org
who

1
@jdm:この領域にはいくつかの作業があります。私の編集を参照してください。たぶん将来..
janneb '09
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.