Provided by: gfarm-client_2.7.20+dfsg-1.1ubuntu1_amd64
NAME
gfpcopy - ファイルを並列にコピーする
SYNOPSIS
gfpcopy [-nqvdpPU] [-X regexp] [-S source-domainname] [-h source-hostfile] [-D destination-domainname] [-H destination-hostfile] [-j num-of-processes] [-J num-of-processes] [-M total-byte] [-z minimum-byte] [-Z maximum-byte] [-w way-of-scheduling] [-W kilobytes-for-threshold] [-s KB/s-to-simulate] [-F num-for-readahead] [-f] [-b bufsize] [-e] [-k] source-path destination-path
DESCRIPTION
gfpcopy は、複数のファイルを並列にコピーします。 source-path がディレクトリの場合は、その下にあるすべてのファイルとディ レクトリをコピーし ます。 destination-path が存在しない場合は、 ディレクトリを作成します。 destination-path が存在す る場合は、 そのディレクトリの下にsource-path と同名のディレクトリを作成します。 作成先のホスト群を指定することにより、コピーしたファイルを格納するホス トを指定することが できます。ホスト群は、ドメイン名か、ホスト名を行ごと に記述したホストファイルで指定しま す。ドメイン名とホストファイルを両方 指定した場合は、両方の条件に合うホスト群が選ばれま す。また、作成元のホ スト群も指定可能です。その場合、そのホスト群に存在するファイルのみコ ピー されます。 gfpcopy は、ディレクトリを辿る際に、ディレクトリエントリ情報も並列に 取得します。
SOURCE PATH
source-path には以下を指定できます。 なお、HPSS上のファイルはコピーでき ません。 パス名 ローカルファイルシステム上のパスを絶対パスまたは相対パスで指定しま す。そのパスが gfarm2fs のマウントポイントの場合は、gfarm2fsを経由 せずに Gfarm からコピーします。 gfarm:... Gfarm URL で指定します。 file:... ローカルファイルシステム上のパスを URL で指定します。
DESTINATION PATH
destination-path には以下を指定できます。 パス名 ローカルファイルシステム上のディレクトリを絶対パスまたは相対パスで 指定します。そのパ スが gfarm2fs のマウントポイントの場合は、 gfarm2fs を経由せずに Gfarm へコピーしま す。 gfarm:... ディレクトリを Gfarm URL で指定します。 file:... ローカルファイルシステム上のディレクトリを URL で指定します。 hpss:... HPSS 上に存在するディレクトリを URL で指定します。 その下に source-path と同名のディレ クトリが存在する場合はエラーになります。 HPSS に対して差分コピーはできません。 hpss:. や hpss:dir のように 相対パスで指定することもできます。
GFPCOPY OPTIONS
以下は gfpcopy 専用のオプションです。 -b bufsize コピー時に使用するバッファサイズを指定します。 デフォルトは 64 KiByte (64 * 1024) で す。 -f -f オプションを指定する場合、コピー先のファイルとコピー元のファイル が、サイズまたは mtime が異なる場合に上書きします。 -f オプションを指定しない場合、コピー先のほうが mtime が古い場合 に、上書きします。 -e gfpcopy を複数同時に実行するために、コピー先にファイルが存在すれば 無視します。 -k シンボリックリンクをコピーしません。
COMMON OPTIONS
gfprep と gfpcopy には、 共通で利用できるオプションがあります。 -X regexp regexpで指定した正規表現による パターンと一致するパス名を無視しま す。 複数個のパター ンを指定する場合は、-X オプションを複数回指定し ます。 -S source-domainname 指定されたドメイン名に格納されているファイルだけを複製作成、コピー の対象にします。 -h source-hostfile 指定されたホストファイルのホストに格納されているファイルだけを複 製作成、コピーの対象 にします。ホストファイルには、ホストを一行ず つ記述します。 ``-'' を指定すると、ホスト名のリストを標準入力から読み込みます。 -L -S または -h で指定したホストから複製、コピーを作成します。 -D destination-domainname 指定されたドメイン名のホストに複製、コピーを作成します。 このオプションも -H オプションも指定しない場合、利用可能な全ホスト を対象に複製、コ ピーを作成します。 -H destination-hostfile 指定されたホストファイルのホストに複製、コピーを作成します。ホスト ファイルには、ホス トを一行ずつ記述します。 ``-'' を指定すると、ホスト名のリストを標準入力から読み込みます。 -j num-of-processes 同時に複製作成やコピーをする際の最大並列数を指定します。 デフォルト値は gfarm2.conf の client_parallel_copy パラメータです。 最大値は gfarm2.conf の client_parallel_max パラメータです。 詳細 は gfarm2.conf のマニュアルを 参照してください。 作成元または作成先のホストごとの最大並列数は、CPU 数です。 CPU 数 については、gfhost のマニュアルを 参照してください。 -J num-of-processes 並列にディレクトリを辿るための並列数を指定します。 デフォルト値は 8 です。 -M total-byte ファイル複製、またはコピーするファイルの合計のバイト数を指定します。 あるホストに格納 されているファイルの容量を、指定バイト数移動して減 らしたいときなどに便利です。 デフォルトでは制限しません。 -z minimum-byte ファイル複製、またはコピーするファイルの最低サイズをバイト単位 で指定します。小さい ファイルはファイル複製やコピーの対象外とし たいときに便利です。 デフォルトでは制限しません。 -Z maximum-byte ファイル複製、またはコピーするファイルの最大サイズをバイト単位 で指定します。大きい ファイルはファイル複製やコピーの対象外とし たいときに便利です。 デフォルトでは制限しません。 -w way-of-scheduling スケジューリング方法を指定します。 noplan にすると、ファイルを 見つけながら、複製作成 またはコピーします。 greedy にすると、複 製作成やコピーする前に、貪欲法によってスケ ジューリングします。 デフォルトは noplan です。 greedy にすると、-N や -m オプションを使用することができません。 -W kibibytes 各 Connection のコスト(合計ファイルサイズ)を平均とみなすまでの 閾値をキビバイトで指定 します。Connection とは、子プロセスごとに ファイルを割り当てるための、計画情報です。 -w greedy オプションを使用した場合のみ効果があります。 デフォルトは 50 * 1024 キビバイト (50 メビバイト) です。 -I sec-to-update 各ホストのロードアベレージやディスクの空き容量を定期的に取得する 間隔を秒単位で指定し ます。 デフォルトは 300 秒です。 -B 高負荷なホストも作成先の対象にします。 デフォルトでは高負荷なホストを作成先の対象にしません。そのため、 すべてのホストが高負 荷の場合はファイル複製、コピーは行われません。 高負荷なホストとは、(ロードアベレージ / CPU 数) が gfarm2.conf の schedule_busy_load_thresh よりも高いホストです。 schedule_busy_load_thresh のデフォル ト値は gfarm2.conf のマニュ アルを参照してください。 CPU 数については gfhost のマニュ アルを 参照してください。 -U ホストのディスクの空き容量を毎回チェックしなくなります。 -F num-of-dirents ディレクトリエントリの情報を先読みする数を指定します。 デフォルトは 10000 です。 -s kilobytes-per-second シミュレーションする際の転送速度を KB/s で指定します。 実際にはコピーせず、ファイル情 報を取得するのみになります。 -n 何もしません。 ディレクトリを辿るだけです。 -p 性能の総合結果を報告します。 -P 性能に関してファイルごとの結果と総合結果を報告します。 -q 警告を表示しません。 -v 冗長な情報を出力します。 -d デバッグ情報を出力します。 -? コマンドオプションを出力します。
EXAMPLES
ディレクトリ以下すべてをコピーします。 $ gfpcopy gfarm:///dir file:///tmp/dir $ gfpcopy file:///tmp/dir gfarm:///dir $ gfpcopy gfarm:///dir1 gfarm:///dir2 $ gfpcopy gfarm:///dir hpss:///tmp/dir $ cd /mnt/gfarm2fs $ gfpcopy dir /tmp/dir 一つのファイルをコピーします。 $ gfpcopy gfarm:///dir/file file:///dir $ cd /mnt/gfarm2fs $ gfpcopy file /tmp/dir
NOTES
gfmdとgfpcopy が距離的に離れている場合には、 gfpcopy の動作が遅くなりま す。そのような場合 には、-j または -J オプションに大きな値を指定すると、 性能が改善するかもしれません。
SEE ALSO
gfprep(1), gfreg(1), gfexport(1), gfarm2.conf(5)