« Chrome OSの使い道?(笑) | トップページ | Ubuntuって難しいんですか? »

ddってコマンドがあるのは知っていたが

近々、ドライブのイメージをまるごとバックアップする必要があり。
さて、どうしたもんか、とネットを探してみた。

何を探していたのかというと、ドライブのイメージをバックアップするツールを探してたんですが。
WindowsだとParagon Drive Backupとかあるので、なんかそういうツールがないもんかな、と思って。
で、探してみると行き着いたのはddコマンド。
ああ、FDの時代に、ディスクコピーなんてことをやるのにつかってましたわ、そういえば。
それが、そのままHDDなんかにも適用できるんですね。
知らなかったというか、忘れていたというか。

コマンドとしては、単純に、以下の感じ。
$sudo dd if=/dev/sda of=/hoge/home.img

起動ドライブのバックアップの意味では、危険らしいので、例えばLiveCDなんかから起動して、上記コマンドを行えばいいみたい。
戻すときは、ifとofが逆になる感じ。
$sudo dd if=/hoge/home.img of=/dev/sda

$man dd
とすると、色々と説明が出てきて解らない。(笑)
ま、今回使いそうなのは、上記の2パターンだけかな。

その他、ddでは、パーティションを指定することで、パーティションの書き出しも可能。
なので、Ubuntuというか、Linuxには、この手のツールが存在しないのね。
ファイル単位とか、フォルダ単位でバックアップするGUIのツールは多数存在するみたいだけど。
ddにも、GUIで実行できるフロントエンドがあるといいと思うんだけど、コマンド的に簡単だから、誰も必要としないのかも。

その他、読み出し結果を標準出力に出して、gzipで圧縮なんて技もあるようだけど、こちらは、使い込んだドライブだと、あんまし圧縮かからないらしい、ってのを何かで見た。
理由としては、ファイルを削除するときに、そのセクタに対して、0クリアとかを行ってるわけではなく、管理情報の方に、そのセクタはもう使用しません、みたなマークをつけるからで、元々書き込まれていたデータは、まるっとセクタ上に残ってることになる。
そのため、ddでセクタダンプしてしまうと、そのゴミデータまで読んでしまうため、結局は圧縮率は上がらないってことになる。
#ゴミデータってのは、ランダムなデータと同じなので、類似データをまとめてしまう圧縮とは非常に相性が悪い。
まあ、あらかじめセクタ情報を0クリアするような処理をいれてしまえば、圧縮も効くとは思うんで、例えばHDDのパーティションの空き領域と同じサイズのファイルを作って、全部0で書き込む、とかね。
#空き容量が莫大だと、どんだけ時間かかるんだか。

まあ、今回はアスワンのSSDの話なので、ドライブまるっと書き出しても64GBしかないので、以前に購入した1TBのHDDにイメージを、圧縮せずに保存の予定です。
しかし。
必要にならんと調べないのは悪いくせかも知れないなぁ。
知ってれば、もう少しお手軽にいろいろと組み合わせを考えることもできるのに。


|

« Chrome OSの使い道?(笑) | トップページ | Ubuntuって難しいんですか? »

Ubuntu」カテゴリの記事

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/500703/45649584

この記事へのトラックバック一覧です: ddってコマンドがあるのは知っていたが:

« Chrome OSの使い道?(笑) | トップページ | Ubuntuって難しいんですか? »