それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

dd_rescueコマンドで、HDDのバックアップ が楽になる

dd の進化版 dd_rescue コマンドを知りました。ddの面倒くさい部分を、自動で処理してくれる優れものです。

ddは進化して dd_rescue になりました。

こんなとき便利でした。

容量が違うディスクにdd したいときどうすればいいか検索した時のメモが出てきた。レッツノート Windows NTFSのハードディスクを80GBから160GBに増量したときに使った資料ですね。

dd_rescueコマンドを使うと安心。

容量が違うディスクでも大丈夫。dd_resucue コマンド使ったバックアップ&ntfsresizeでのサイズ変更が使えます。

インストール

sudo aptitude install ddrescue

ddrescueコマンドでバックアップ

takuya@v1225h:~$ sudo dd_rescue  -v disk-imgs/letsnote-ocu-takuya-80GB.20101010.img /dev/sdb
dd_rescue: (info): about to transfer 0.0 kBytes from disk-imgs/letsnote-ocu-takuya-80GB.20101010.img to /dev/sdb
dd_rescue: (info): blocksizes: soft 65536, hard 512
dd_rescue: (info): starting positions: in 0.0k, out 0.0k
dd_rescue: (info): Logfile: (none), Maxerr: 0
dd_rescue: (info): Reverse: no , Trunc: no , interactive: no
dd_rescue: (info): abort on Write errs: no , spArse write: if err
dd_rescue: (info): ipos:   3111936.0k, opos:   3111936.0k, xferd:   3111936.0k
                   errs:      0, errxfer:         0.0k, succxfer:   3111936.0k
             +curr.rate:    63923kB/s, avg.rate:    18850kB/s, avg.load: 16.9%

ddとdd_rescueの違い

コマンド クルマで言えば?
dd MT車
dd_rescue AT車

それくらいの差があるんです。

dd
殆どがMT動作。ブロックサイズ、エラー時の扱い、途中経過表示は事前に指定。
dd_recue
殆どがAT動作。ブロックサイズ自動調整。本気で放置できる。しかも速い

dd_rescueを使うメリット

  • 経過表示がある
  • dd_rescueはブロックサイズを自動調整してくれる。
  • dd_rescueの場合不良セクタ等があれば読めるまで読み飛ばして、ゼロ埋めしてくれるそうです。*1

NTFSの場合:ntfsresizeと組み合わせる

dd_rescue/dd した後は ntfsresize コマンドでNTFSのパーティションを増減して新しいハードディスクの容量に合わせることが出来た。といってもマウントまでの確認でブートはしてないんですが

使い方
ntfsresize -n -i /dev/sda1         # ntfsのパーティション情報表示
ntfsresize -n -s 22000M  /dev/sda1 # 容量変更。容量はfdisl -lu から計算して最大値を使うとか。
ntfsresize の使い方 - ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き -

*1:この記述の元リンクをメモ忘れてる・・・