RackShareRackShareラックを、シェアしよう

scpとrsyncの使い方|サーバー間ファイル転送の実例と違い

サーバ番長 ・ 公開 2026-08-19 ・ 更新 2026-09-04 ・ 閲覧 43
Tips

サーバ間でファイルを転送したいとき、定番なのが scp と rsync です。どちらもSSH経由で安全に転送できますが、使いどころが違います。実例と違いをまとめます。

scp:シンプルにコピー

scpは、SSHを使ってファイルを そのままコピー します。

# ローカル → リモート
scp file.txt user@server:/var/www/

# リモート → ローカル
scp user@server:/var/log/app.log ./

# ディレクトリごと(-r)
scp -r ./dir user@server:/var/www/

シンプルで分かりやすく、単発のコピーに向きます。

rsync:差分同期で賢く

rsyncは、差分だけを転送して同期します。同じファイルは送り直さないので、2回目以降や大量ファイルで圧倒的に速く、途中で止まっても再開できます。

rsync -av ./dir/ user@server:/var/www/dir/

オプションの意味は、a=アーカイブ(権限・時刻を保持)、v=詳細表示。よく使う定番です。

rsyncの便利オプション

rsync -avz ./dir/ user@server:/dst/     # z=圧縮して転送(回線が細い時)
rsync -av --delete ./dir/ user@server:/dst/  # 送信元に無いファイルを送信先から削除(完全同期)
rsync -av --dry-run ./dir/ user@server:/dst/ # 実際には転送せず結果を確認(安全確認)

--delete は「完全に同じ状態にする」ときに強力ですが、消す方向なので --dry-run で必ず事前確認します。

scpとrsyncの違い(使い分け)

scp rsync
転送 毎回まるごと 差分のみ
速度(再転送) 遅い 速い
再開 不可 可能
向き 単発コピー 定期同期・大量ファイル・バックアップ

まとめ

単発でサッとコピーなら scp、差分同期・大量ファイル・定期バックアップなら rsync。rsyncは -av、圧縮は -z、完全同期は --delete(+--dry-runで確認)が定番です。用途で使い分ければ、サーバ間の転送が安全で速くなります。

♥ 0(いいねはログイン後)

コメント 0 件

コメントするにはログインしてください。