私は数週間前からRaspberry Pi(Raspbianを搭載)のためにプログラムを書いていますが、自分が作った作品を確実に保護したいと思っています。
作成したファイルをバックアップするにはどうしたらいいですか?
SDカードをWindows(XPまたは7)のPCに接続して、ハードドライブか別のSDカードにコピーするだけでいいのでしょうか?
すべてのデータを保存したい場合は、ディスクイメージを作成する必要があるでしょう。さらに、Windowsは一般的なLinuxのファイルシステムを認識できないため、SDカードを差し込んでもファイルを見ることができないでしょう。
ディスクイメージを作成すれば、ファイルだけでなく、ファイルシステムの構造も保存されるので、新しいSDカードをフラッシュしようと思ったときに、差し込むだけで動作するようになります。
Linuxの場合はどうでしょうか。
Linuxでは、標準のdd
ツールを使うことができます。
dd if=/dev/sdx of=/path/to/image bs=1M
ここで、/dev/sdx
はあなたのSDカードです。
となります。
Macでは、標準のdd
ツールを少し異なる構文で使用することもできます。
dd if=/dev/rdiskx of=/path/to/image bs=1m
ここで、/dev/rdiskx
はあなたのSDカードです。
dev/rdiskx`はSDカードです。(rdiskを使用するとRAWデバイスであるため、より速く処理できます。)
デバイスのディスクを調べるには、コマンドプロンプトで diskutil list
と入力してください。また、root になる必要があるかもしれません。
コマンドプロンプトで diskutil list
と入力します。
**オプション1
Windowsの場合は、SDカードをフラッシュするときと逆の手順で行います。
ファンデーションのSDカードをフラッシュするのに適したツールであるWin32 Disk Imagerを使用することができます。ファイル名(保存するバックアップイメージファイルの場所と名前)を入力し、デバイス(SDカード)を選択して、読み込みを押すだけです。
.
もちろん、RawWriteやdd
for Windowsなどのツールを使っても、プロセスはよく似ています。
**オプション2
システム全体をバックアップするのではなく、特定のファイルだけをバックアップしたい場合は、SFTPでRaspberry Piに接続し、ファイルをローカルコンピュータにコピーすることをお勧めします(WinScpクライアントを使用できます)。SSHを有効にしていれば、通常、SFTPはRaspberry Pi側で特別な設定を必要としません。
また、rsyncを使ってファイルをリモートシステムにコピーするという方法もあります。
また、ext2fsd
のように、Windowsがext
ファイルシステムを読めるように(つまり、SDカード全体を読めるように)特別なドライバをインストールすることもできますが、おそらく労力に見合うものではありません。
画像はSDカードと同じ大きさになるので、圧縮したいと思うかもしれません。これは、gzip
, 7zip, WinZip, WinRar ...などのお気に入りの圧縮ツールを使用するだけで実現できます。
Linuxをお使いの場合は、dd
コマンドを使ってイメージのフルバックアップを行うことができます。
dd if=/dev/sdx of=/path/to/image
または圧縮のために
dd if=/dev/sdx | gzip > /path/to/image.gz
ここで、sdx
はあなたのSDカードです。
バックアップを復元するには、コマンドを逆にします。
dd if=/path/to/image of=/dev/sdx
または圧縮されている場合
gzip -dc /path/to/image.gz | dd of=/dev/sdx
**Windowsをお使いの場合:***。
1.Win32 Disk Imagerをダウンロードする。
2.2. イメージを保存するためのファイルパスを作成する。(私はC:RasPi_Bkp\を使用しています。)
3.Win32 Disk Imagerを起動します。
4.バックアップファイルのパススポットを参照して、ファイル名を入力する。
5.保存をクリック
6.ファイルパスの右側のドロップダウンに表示されているデバイスが、バックアップしたいデバイスであることを確認します。
.
7.Read" "をクリックします。
8.Wait.