Knoppixのpartimageで、ext4フォーマットのパーティションはイメージバックアップを取ることができない。partimageの公式ページにも、『 ext4 unsupported 』と書かれている。
コマンドラインではなく、ミスの起こりにくい擬似GUIのバックアップソフトを探したところ、Clonezillaの利用例が多いということで、試してみた。
partimageでext4をバックアップした場合
バックアップが開始されずに、Can't read bitmap block 0 from image
と表示される。
Clonezilla 起動メディアの作成
Clonezilla公式サイトのDownloadsから、
・ stable releases - 2.2.4-12 (Debian-based) … 145.8 MBytes
・ alternative stable releases - 20140915-trusty (Ubuntu-based) … 160.4 MBytes
のどちらかをダウンロードし、CD-ROMに書き込むか、あるいはunetbootinを用いてブータブルUSBメモリーを作成する。
今回は、Debian-basedの方をUSBメモリーに書き込んだものを用いた。
パーティションをバックアップする流れ
※ 画面キャプチャの都合上 VMWare上で仮想的に実行した画面。
まず、言語の選択画面が表示されるが、「日本語訳が変で余計に戸惑う」ため、英語を選択するのが無難。
Clonezillaを起動するか、コマンドラインを起動するかの選択肢が与えられる。 どのパーティションをバックアップするのか、どのパーティションにファイルを保存するのか、パーティション一覧を念の為に確認するには、「コマンドラインの起動(Enter command line prompt)」を選択する。
コマンドラインで「exit」を入力することで、いつでもこの画面に戻ってくることができる。
fdisk -l
や blkid
コマンドでパーティション名やラベルを確認することができる。なお、ルート権限で実行する必要があるため、sudo fdisk -l
のようにsudoを付けて実行する。
コマンドラインは exit
コマンドで抜けることができる。
バックアップ先をファイルにするか、別パーティションにするかの選択。 ファイルにバックアップする場合は、device - image を選択する。
イメージ保存先ドライブの選択。ネットワーク・ストレージも選択できるが、今回はローカル・ドライブ(local_dev)を選択。
保存先ドライブにローカル・ドライブを選択(Enterキーを押す)した場合、画面の支持に従い外付けディスクを使うときはここで接続を行う。 外付けディスクを接続すると、認識時のdmesgが画面に吐出されるので、その後にEnterキーを押す。
内蔵ディスクを含め、ここで全てのパーティションが検出され、保存先選択画面に遷移する。
保存先パーティションを選択する。 パックアップするパーティションではないので注意する。
保存先のディレクトリを選択。 ここで選択したディレクトリ内に、次の画面で指定するサブディレクトリが自動作成される。
内部処理では、『 保存先パーティション + 保存先ディレクトリ 』 が /home/partimag にマウントされる。
初心者・玄人モードの選択。 NTFSやext3/4 など、一般的なパーティションを単純にバックアップする場合は、初心者モードで構わない。
パーティションの保存(saveparts)を選択する。
『 Input a name for the saved image to use 』 と書かれているが、実際は/home/partimag内に作られるサブディレクトリ名の指定だ。
ここでやっと、保存元パーティションの指定。 SPACE キーで複数のパーティションを選択可能。
バックアップ後にチェックするかの指定。 処理時間が2倍に増えるが、安全のため有効にしたほうが無難。
バックアップ処理が最終確認されるので、画面に表示された内容で良ければ ENTER, Yes を入力する。
バックアップが開始されるので、棒グラフが100%まで到達するのを待つ。
バックアップ完了画面。 『 Checked successfully 』 等と表示されていればOK。
次画面で、かならず 『 Power off 』 を選択し、ディスクキャッシュをフラッシュ(書き出す)してから外付けディスクを抜く。
実際のイメージ保存ディレクトリの状況
30GBytes(利用率 約50%)のUbuntu 14.04 パーティションをバックアップした、保存先ディレクトリの内容は次のようになっていた。 (バックアップ所要時間は約4分、イメージチエックの時間も約4分)
$ ls -la 合計 7778231 drwx------ 1 ** ** 4096 9月 17 2014 . drwx------ 1 ** ** 0 9月 17 19:54 .. -rw------- 1 ** ** 9342 9月 17 2014 Info-dmi.txt -rw------- 1 ** ** 22798 9月 17 2014 Info-lshw.txt -rw------- 1 ** ** 1718 9月 17 2014 Info-lspci.txt -rw------- 1 ** ** 171 9月 17 2014 Info-packages.txt -rw------- 1 ** ** 100 9月 17 2014 Info-saved-by-cmd.txt -rw------- 1 ** ** 1965 9月 17 20:57 blkdev.list -rw------- 1 ** ** 1259 9月 17 20:57 blkid.list -rw------- 1 ** ** 5770 9月 17 2014 clonezilla-img -rw------- 1 ** ** 10 9月 17 2014 parts -rw------- 1 ** ** 38 9月 17 20:57 sda-chs.sf -rw------- 1 ** ** 1048064 9月 17 20:57 sda-hidden-data-after-mbr -rw------- 1 ** ** 512 9月 17 20:57 sda-mbr -rw------- 1 ** ** 1159 9月 17 20:57 sda-pt.parted -rw------- 1 ** ** 914 9月 17 20:57 sda-pt.parted.compact -rw------- 1 ** ** 823 9月 17 20:57 sda-pt.sf -rw------- 1 ** ** 18102078 9月 17 20:57 sda1.ntfs-ptcl-img.gz.aa -rw------- 1 ** ** 2097152000 9月 17 2014 sda9.ext4-ptcl-img.gz.aa -rw------- 1 ** ** 2097152000 9月 17 2014 sda9.ext4-ptcl-img.gz.ab -rw------- 1 ** ** 2097152000 9月 17 2014 sda9.ext4-ptcl-img.gz.ac -rw------- 1 ** ** 1654219644 9月 17 2014 sda9.ext4-ptcl-img.gz.ad
パーティションをリストアする流れ
バックアップの流れの説明で、「保存先ディレクトリの次の初心者・玄人選択」 を行った後、バックアップ/リストアの選択肢が示されるので
パーティションのリストア(restoreparts)を選択する。
リストア元のファイルが格納されたサブディレクトリを選択する。
リストア先のパーティションを選択
リストア条件の最終確認画面が表示される。yes - yes と、2回再確認が行われる。
リストアの状況表示。 バックアップの時と同じく、棒グラフが表示される。
リストア先のパーティションを間違えた場合、このように失敗した旨の画面表示が行われる。
なお、このエラー表示をよく観察すると、別パーティションへの復元方法もあるようだ。
玄人メニューは…
初心者/玄人メニューの選択があるが、玄人を選択すると何が表示されるのか…
バックアップに用いるプログラムの優先度が選択できる。
・partclone
・partimage
・dd
・ntfsclone
と、選択できるようだ。
バックアップ時にMD5などのハッシュを生成させたりすることができるようだ。
バックアップ ファイルの圧縮レベル設定
バックアップ ファイルが大きい場合の分割単位
リストアの玄人メニューは、このような感じだ
違うパーティションにリストアする方法
Clonezilla 公式ページのFAQに、『 How can I restore an image of a partition to different partition, e.g. restore the image of /dev/sda5 to /dev/sda6? 』 という項目がある。
それによれば、たとえば /dev/sda5 を保存したイメージを /dev/sda6 にリストアしたい場合は、バックアップされたイメージファイルのファイル名を変更しなければならないようだ。
mv /home/partimag/dir/sda5.ext4-ptcl-img.gz.aa /home/partimag/dir/sda6.ext4-ptcl-img.gz.aa mv /home/partimag/dir/sda5.ext4-ptcl-img.gz.ab /home/partimag/dir/sda6.ext4-ptcl-img.gz.ab ...