リモート同期とも呼ばれるrsyncコマンドは、マシン、ホスト、リモートシェルなどの間でファイルやディレクトリを転送および同期するために使用されます。これは、Linuxを使用する場合に知っておくべき強力なユーティリティです。
ここLinuxAPTでは、他のLinuxディストリビューションにも適用できるUbuntuLinuxシステムにrsyncコマンドをインストールする方法を検討します。
scpコマンドを使用してファイルを同期する場合は、https://linuxapt.com/blog/408-top-15-scp-command-examples-in-linux
にアクセスしてください。
rsyncがユニークなのはなぜですか?
rsyncコマンドは、ファイルの送受信時に圧縮と解凍を使用します。これは、消費する帯域幅が非常に少ないことを意味します。
Rsyncはリモート更新プロトコルを使用するため、ソースと宛先の違いのみを更新します。
また、所有者、グループ、リンク、権限、およびデバイスもサポートします。
rsyncで利用可能なオプションの詳細を確認するには、次を使用してください:
$ rsync –help
Ubuntu Linuxシステムにrsyncをインストールする方法は?
rsyncをインストールするには、システムで次のコマンドを実行する必要があります。
$ sudo apt-get install rsync
Rsyncの構文は何ですか?
rsyncの構文を以下に示します。
1.ローカルからローカルへの転送または同期:
$ rsync {option} {source} {destination}
2.ローカルからリモートへの転送または同期:
$ rsync {option} {source} {user@host:destination}
3.リモートからローカルへの転送または同期:
$ rsync {option} {user@host:destination} {destination}
ここ、
- ソースはソースディレクトリです。
- 宛先は宛先ディレクトリです。
- オプションはrsyncコマンドオプションです。
- ユーザーはリモートユーザー名です。
- ホストはIPまたはリモートホスト名です。
rsyncの使用方法?
1.ファイルをローカルにコピーする
ファイルをローカルにコピーするには、次を使用します:
$ rsync –a {filename} {destination}
ここでは、「source.zip」を現在のディレクトリからドキュメントにコピーしています。
次のコマンドを使用して、ドキュメント内のすべてのファイルとディレクトリを一覧表示することで、ファイルがコピーされたかどうかを確認できます。
$ ls
「source.zip」がDocumentsディレクトリにあることがわかります。
宛先にファイルの名前を追加しない場合、ソースファイルと同じ名前がコピーされます。宛先ファイルの名前を変更するには、次を使用します:
$ rsync –a {filename} {destination/filename}
この場合、「source.zip」を再度コピーしますが、今回は「destination.zip」に名前を変更します。
「destination.zip」がDocumentsディレクトリにコピーされました。
2.ディレクトリの内容を宛先にコピーします
以下のコマンドを使用して、ソースディレクトリの内容を宛先にコピーできます。
$ rsync –av {source}/ {destination}
これで、コンテンツの「ソース」ディレクトリが「宛先」ディレクトリにコピーされていることがわかります。
3.ディレクトリ全体を宛先にコピーします
ディレクトリの内容のみをコピー先にコピーする場合は、次を使用します。
$ rsync –av {source} {destination}
これで、「Source」ディレクトリとその内容が「Destination」ディレクトリにコピーされていることがわかります。
4.進捗状況を表示する
進行状況を表示するには、次を使用します:
$ rsync –rv –progress {source} {destination}
5.ファイルを無視する
特定のファイルを無視する場合は、次を使用します:
$ rsync -vr --exclude '{condition}' {source} {destination}
「ls」コマンドを実行すると、「Source」ディレクトリにいくつかのファイルが含まれます。
「s」で始まるファイルは無視してかまいません。
6.ファイルとディレクトリを一覧表示します
rsyncを使用して、ソースのコンテンツを一覧表示できます:
$ rsync {filename}
このコマンドは、Documentsディレクトリの内容を一覧表示します。
7.ローカルマシンからリモートマシンにファイルをコピーします
ファイルをリモートマシンに移動するには、openssh-serverをインストールする必要があります。そのためのコマンドは次のとおりです。
$ sudo apt update
$ sudo apt install openssh-server
これがインストールされたら、以下のコマンドを使用してファイルまたはディレクトリを移動できます。
$ rsync –a {source} {remote username@remote IP:/destination}
リモートマシンのパスワードの入力を求められます。
8.リモートからローカルマシンにファイルをコピーします
上記の例で使用したような以下のコマンドを使用できます。
$ rsync –a {remote source} {local username@local IP:/destination}
9.現在の日付を宛先ファイルに追加します
次のコマンドを使用して、宛先ファイルまたはディレクトリの名前に日付を追加できます。
$ rsync -av /home/test/Desktop/Linux /home/test/Desktop/rsync$(date +\\%Y-\\%m)
ソースファイルと宛先ファイルの違いを表示する
以下のコマンドを使用して、ソースファイルと宛先ファイルの違いを確認できます。
$ rsync –avzi {source}/ {destination}/
ここで
パラメータ「f」はファイルを意味します。その他のパラメータは次のとおりです。
- t:タイムスタンプの変更
- d:目的地の変更
- s:ファイルサイズの変更
10.ファイルを転送するときに帯域幅を制限する
ファイル転送中に帯域幅を制限するには、次を使用します:
$ rsync -vr --bwlimit=1000 {source}/* {destination}
Ubuntu 21.04からrsyncをアンインストールする方法は?
rsyncパッケージのみをアンインストールするには、次のコマンドを使用できます:
$ sudo apt-get remove rsync
次のコマンドを使用して、rsync構成、データ、およびそのすべての依存関係を削除できます。次のコマンドを使用できます。
$ sudo apt-get -y autoremove --purge rsync