1. 前提条件
実行するには rsync ローカル システムとリモート サーバーの間では次のものが必要です。
2つのデバイス:1つはローカル(コンピュータ)で、もう1つは Linuxサーバー (VPSまたは専用サーバー)
rsync両方のシステムにインストール2 つのシステム間の SSH アクセス (パスワードを頻繁に入力せずに通信できます)
ファイル内の宛先サーバーのSSH公開鍵
承認されたキー配置される
2. rsyncの概念と機能(初心者と専門家向けの専門的でわかりやすいバージョン)
rsync Linuxの強力なコマンドラインツールであり、 同期(Sync) そして データ転送 これは、2 つのパスが同じシステム上にあるか、2 つの別々のサーバー上にあるかに関係なく、2 つのパス間で使用されます。.
しかし、なぜ rsync はそんなに人気があるのでしょうか?
そのために ファイル全体を転送するのではなく、変更された部分のみを転送します。.
rsync は具体的にどのように動作するのでしょうか?(シンプルかつ正確な理解)
rsync を実行すると、ツールはまず次の処理を実行します。
2つのトラックの構造と内容 (例: 宛先フォルダーとソースフォルダー) を比較します。.
小切手 どのファイルが新しく、どのファイルが変更され、どのファイルが削除または変更されていないのでしょうか?.
ファイル全体を送信する代わりに、 変更されたデータの一部 転送。.
この技術は次のように呼ばれます。
デルタ転送アルゴリズム
このrsyncアルゴリズム 非常に高速かつ効率的 それは、次の理由によります:
消費される帯域幅が削減されます。
転送時間が大幅に短縮されます。
サーバーのCPUリソースの負担は少ない
rsyncの機能をよりよく理解するための簡単な例
1GB のファイルがあり、そのうち 5MB だけが変更されたとします。.
一般的なツールとしては、
アイテム番号: SCP-18111GB 全部を再アップロードします。.しかし rsync は変更された同じ 5MB のみを送信します。.
これはつまり:
より速く
インターネットの使用頻度の低下
サーバーへの負担が軽減
rsync とサーバー: なぜサーバー管理に最適なツールなのでしょうか?
乗っているとき サーバ または VPS 仕事をする場合、通常は次のものが必要です。
2つのサーバー間でバックアップを移動する
現在のサーバーから新しいサーバーにサイトファイルを移動する
重要なフォルダ (/var/www など) は常に同期された状態にしておいてください。
帯域幅を無駄にすることなく大きなファイルを転送
これらすべてのケースでは、次の理由から rsync が最適な選択となります。
SSHによる安全な転送
rsync は転送に SSH プロトコルを使用するため、次のようになります。
データは暗号化されています。
追加のポートを開く必要はありません
通信のセキュリティが保証されます。
保存先にある余分なファイルを削除する
旗付き - 消去 宛先をソースとまったく同じに保つことができます。.
再開機能
転送中にインターネット接続が切断された場合、rsync は最初からではなく、残りのファイルを転送します。.
自動化に適しています
これは cronjobs に簡単に適合し、自動化されたバックアップ プロセスを作成します。.
理解を深めるための実際の例:
次のパスをサーバー A からサーバー B に同期する場合:
このコマンド:
フォルダの変更のみ
/var/www転送送信先で更新します。
SSH による安全な送信を保証します
rsync を初めて使う人のための簡単な要約:
| 特徴 | 説明 |
|---|---|
| 主な用途 | データ転送とフォルダ同期 |
| 主な利点 | ファイル全体ではなく、変更のみが転送されます。 |
| 安全 | 安全な転送のためにSSHを使用する |
| 高速 | デルタ転送アルゴリズムのため |
| プロフェッショナルでサーバーフレンドリー | VPS間のバックアップと移行に最適なツール |
3. 基本的なrsync構文
一般的な構造 rsync 他のファイルツールと同様に アイテム番号: SCP-1811 は:
簡単なローカルの例:
ローカルシステムに2つのテストフォルダを作成します
実装:
この場合、コンテンツのみ
ディレクトリ1にディレクトリ2フォルダ自体ではなく、それが移動されます。.
オプション -あ (アーカイブ) が推奨される理由:
ディレクトリを再帰的に同期します
ファイルの所有権、変更時間、権限を保持します
重要: ソース パスの末尾に「/」を付けると、ディレクトリの内容のみが同期されます。付けない場合は、元のフォルダー自体が転送されます。.
4. セキュアプレビューを実行する --ドライラン
機密性の高い操作を実行する前に(特に、 - 消去 使用するアプリケーションが決まったら、まずはリハーサルをするのがベストです。
オプション
-nまたは--ドライラン変更を加えずに操作をシミュレートします-v(詳細) 同期または削除されるファイルの詳細な出力を提供します。
このプレビューにより、ファイルを削除する前に何が起こるかを正確に把握し、危険な間違いを回避できます。.

5. ローカルシステムとサーバー間でファイルをプッシュおよびプルする
サーバーに送信(プッシュ)
ローカル ディレクトリをサーバーに同期するには:
-あ: ファイル属性を保持する~/ローカルディレクトリ/: ローカルルートユーザー@リモートサーバー: ユーザーとサーバーのアドレス:/リモート/パス/: サーバー上のパス
ソースの末尾に「/」がある場合は、フォルダーの内容のみが送信されます。それ以外の場合は、フォルダー自体も転送されます。.
サーバーから受信(プル)
逆操作: サーバーからローカル システムへの同期:
繰り返しになりますが、ソース パス (ここではサーバー パス) のスラッシュによって同期の動作が決定されるため、この点に注意することが重要です。.
6. 詳細オプション rsync
-z: 送信時にデータを圧縮してネットワーク使用量を削減します-P: の組み合わせ- 進捗そして- 部分的転送の進行状況を表示し、未完了の転送を続行できるようにします
例:
- 消去: 宛先に存在するがソースには存在しないファイルを削除します(ミラーリングに適しています)--除外そして- 含む: より正確な操作のためにファイル/フォルダをフィルタリングします- バックアップそして--バックアップディレクトリ: 削除されたファイルのバックアップを別のパスに作成する
7. Cronで同期をスケジュールする
定期的な同期を実行するには、 rsync で クローン スケジュール:
crontab を編集します:
同期のための毎日の cronjob の例:
このコマンドは毎日午前 3 時に実行され、ローカル ディレクトリをサーバー バージョンと同期します。.
cronジョブに関する重要な推奨事項:
絶対パスから
rsyncディレクトリを使用するパスワードなしのSSHキーログインの設定
cron出力をログファイルに保存するか、エラーを処理する
8. よくある問題のトラブルシューティングとベストプラクティス
使用時によくある問題 rsync そしてその解決策:
ソース/宛先パスのエラー: の使用
--ドライラン詳細なレビューについては不要なファイルの削除: 絶対に確信がある場合にのみ
- 消去使ってみましょう権限エラー: と
-あ所有権と権限を維持します。自動化の問題: フルパスとパスワードレスSSH認証を使用する
結論
rsync ローカルマシンとサーバー間のデータ同期に最適な、非常に強力で最適化されたツールです。デルタ転送アルゴリズムにより、このツールは低消費電力、安全、そして高精度なバックアップ、データ転送、ミラー環境の構築を実現します。高度なオプションを使用して、以下の点を試してみてください。 --ドライラン スケジュール クローン同期プロセスを最適化、保護、自動化できます。.









