今回はファイルをネットワーク経由でコピーします。今回使用するのはrsyncです。
今回もこれまでと同様にデスクトップ上にあるsampleディレクトリに必要なファイルを用意しておきます。前回と同様に転送元のコンピューターと転送先のコンピューターの2台を使います。2台も用意できない、という場合は仮想環境を利用して同じマシンで異なるIPアドレス間でファイル転送を行うこともできます。sampleディレクトリ内の構成は前回と同じです。
○man rsync
とりあえず最初にman rsyncとしてマニュアルでパラメーター等を確認しておきましょう。特にman rsyncとしなくても今はWeb上に日本語訳のマニュアルや解説がありますので、そちらを参考にしても構いません。なお、rsyncのマニュアルは長いので、ここでは最初のページのみ示しておきます。
man rsync
・macOS
・Linux (Ubuntu 24LTS)
○ファイルをコピー
それではファイルを他のマシンにコピーしてみましょう。コピー先は前回と同様Raspberry Piです。rsyncはファイルの同期ができますが、まずは単純コピーです。
まず、カレントディレクトリを~/Desktop/sampleにします。
cd ~/Desktop/sample
カレントディレクトリ内にある1.txtファイルをrsyncコマンドでRaspberry Piの/home/pi/Desktop/sample/にコピー(転送)します。
以下のようにコマンドを入力します。コピー先のRaspberry Piのパスワードを尋ねてくるので入力します。入力後ファイルがコピーされます。
rsync 1.txt pi@192.168.11.52:/home/pi/Desktop/sample/
scpコマンドと違って何もオプションを指定しないと進捗状況などは表示されません。進捗状況などを表示する場合は-vを指定します。
rsync -v 1.txt pi@192.168.11.52:/home/pi/Desktop/sample/
1つのファイルだけでなく拡張子がtxtのファイルをまとめてコピーすることもできます。以下のようにするとカレントディレクトリにある拡張子がtxtのファイルがコピーされます。
rsync -v *.txt pi@192.168.11.52:/home/pi/Desktop/sample/
○ディレクトリごとコピー
次にsampleディレクトリ内にあるファイルとディレクトリをRaspberry Piにコピーします。この場合、以下のように指定します。scp、cpコマンドだとディレクトリのコピー指定はrですが、rsyncではaなので注意してください。
rsync -av . pi@192.168.11.52:/home/pi/Desktop/sample/
以下のように直接パスを指定してコピーすることもできます。
rsync -av /Users/weed/Desktop/sample/ pi@192.168.11.52:/home/pi/Desktop/sample/
ここで注意しないといけないのはコピー元のパスを指定する際に末尾に/を付けるか付けないかで結果が変わります。以下のように/がないとディレクトリ内でなくディレクトリも含めてコピーされます。
rsync -av /Users/weed/Desktop/sample pi@192.168.11.52:/home/pi/Desktop/sample/
/を付ける、付けないでコピーされる内容が変わると言われても、という場合は以下のようにオプションのnを付けるとコピーされるディレクトリ/ファイル内容を確認できます。表示内容はコピーされたことになっていますが、実際にはコピーされていません。
rsync -avn /Users/weed/Desktop/sample pi@192.168.11.52:/home/pi/Desktop/sample/
○ファイルの同期
次にrsyncでファイルの同期を行ってみます。scpでは単純コピーですが、rsyncでは差分のみ、新しいファイルだけコピー、完全同期などの処理を行うことができます。
まず、差分コピーを試してみます。すでにRaspberry Piのデスクトップのsampleディレクトリ内にディレクトリやファイルがある場合はすべて削除しておいてください。
以下のコマンドでRaspberry Piにディレクトリ/ファイルを転送します。
rsync -av /Users/weed/Desktop/sample/ pi@192.168.11.52:/home/pi/Desktop/sample/
ここで、Raspberry Piのデスクトップのsampleディレクトリ何にある1.txtと3.txtファイルを削除します。
ここで以下のコマンドを入力します。これは、これまでと同じですが、差分のみが転送されます。
rsync -av /Users/weed/Desktop/sample/ pi@192.168.11.52:/home/pi/Desktop/sample/
.
![美酵 ビファ クレンズドリング 栄養機能⾷品 30包約30日分 [ 発酵 と マグネシウム の力で 美容と健康をサポートし 満腹感 のある 置き換えダイエット ]](https://m.media-amazon.com/images/I/51FnYyHl-kL._SL500_.jpg)
![明治薬品 シボラナイト2 150粒(30日分) [シリアルナンバー付] [ ダイエットサプリ ブラックジンジャー ポリメトキシフラボン 腹部の脂肪を減らす ]](https://m.media-amazon.com/images/I/41U8wqxGJVL._SL500_.jpg)



![hiritu(ヒリツ) バランスリペアシャンプー&ヘアトリートメント オーロラ [シリーズ最高峰のツヤ] きらめき髪 ツヤ髪 浮き毛パヤ毛抑制 ダメージ毛を集中補修 PPT系洗浄成分 アミノ酸系洗浄成分 毛髪補修成分 カシス&パチュリの香り 香水シャンプー](https://m.media-amazon.com/images/I/41FoHN-YVXL._SL500_.jpg)





