dumpとrestore

はじめに

ふるくさいイメージがあるけど、まあいいですw

参考 http://www.atmarkit.co.jp/flinux/rensai/root05/root05c.html もはやこれでおなかいっぱいだったりします

dumpとrestoreはふつうは1つのパッケージにセットで入ってます http://sourceforge.net/projects/dump/ 2011年でもバージョン0.4b。まあlinux版なんで

オライリー本ではこれが聖書(Unixバックアップ&リカバリ) http://www.oreilly.co.jp/books/4873110491/

dumpについて

ext2(ext3)のファイルシステムをがっつりとるのが目標なのです。restoreはファイル単位でもいちおうできますけど。 差分・増分も9世代(ここではダンプレベル)までいちおうとれる1)。ダンプレベル0でがっつり。ふつうは、ようはそれはすなわちひながたとるにちかいので(ddとは違うけど)、シングルモードとかでとるほうが吉。

増分や差分バックアップの場合は、 /etc/dumpdates を更新するように指定しないと記録されない。

dumpのstdout

ほんとにこのとおりSTDOUTされるか定かではない…が たとえばテープが複数本になるとかのときは、Volume XX と出るはず。 そのへんのサイズやらは大文字の -B オプション で決める(はず)。テープ以外のメディアにとるときなんかは気にしないといけないと思う。

下記はローカルのHDDにdumpレベル0で取得した場合のログの参考。Volumeは1のみ(1つ)となっている。

DUMP: Date of this level 0 dump: //日付と時刻//
DUMP: Dumping /dev/sda3 (/) to //ローカルHDD上のファイル名//
DUMP: Label: /
DUMP: Writing 10 Kilobyte records
DUMP: mapping (Pass I) [regular files]
DUMP: mapping (Pass II) [directories]
DUMP: estimated XXXXXXXXX blocks.
DUMP: Volume 1 started with block 1 at: //日付と時刻//
DUMP: dumping (Pass III) [directories]
DUMP: dumping (Pass IV) [regular files]
DUMP: XX.XX% done at XXXX kB/s, finished in XX:XX
DUMP: XX.XX% done at XXXX kB/s, finished in XX:XX
DUMP: XX.XX% done at XXXX kB/s, finished in XX:XX
(進捗が記載)
DUMP: Closing //ローカルHDD上のファイル名//
DUMP: Volume 1 completed at: //日付と時刻//
DUMP: Volume 1 XXXXXXXX blocks (XXXXXMB)
DUMP: Volume 1 took //おそらく所要時間//
DUMP: Volume 1 transfer rate: XXXX kB/s
DUMP: XXXXXXXX blocks (XXXXXMB) on 1 volume(s)
DUMP: finished in XXXX seconds, throughput XXXX kBytes/sec
DUMP: Date of this level 0 dump:  //日付と時刻//
DUMP: Date this dump completed:   //日付と時刻//
DUMP: Average transfer rate: XXXX kB/s
DUMP: DUMP IS DONE

restoreについて

原則としてがっつり展開するが、ファイルを個別に指定することもできる。また、対話モードが存在する。ファイルを一発指定するのがしんどいときは便利だと思う。 雰囲気としてはftpをコマンドでたたいてるみたい。(もちろん)?で簡易ヘルプも出る。

増分バックアップをリストアする場合

当然だが増分バックアップは、元のフルバックアップから先しかないので、ダンプレベル0から順番にリストアしないとならない。

対話restoreをためしてみる

ちょっと諸般の事情で試すことがあったので

アーカイブされているファイルの場合は伸長しておく2)

テープが対象であればデバイス指定はテープとなる restore オプション ターゲットデバイス 今回はローカル上に保管したファイルなので

# restore -if ./testdumpfile
restore >

↑restoreモードになる。終了はquit。?を押すと

Available commands are:
    ls [arg] - list directory
    cd arg - change directory
    pwd - print current directory
    add [arg] - add `arg' to list of files to be extracted
    delete [arg] - delete `arg' from list of files to be extracted
    extract - extract requested files
    setmodes - set modes of requested directories
    quit - immediately exit program
    what - list dump header information
    verbose - toggle verbose flag (useful with ``ls'')
    prompt - toggle the prompt display
    help or `?' - print this list
If no `arg' is supplied, the current directory is used

目的のファイルは「add」でリストに入れるという感じで、最後にextractを入力

restore > add //リストアしたいファイル//
restore > add //リストアしたいファイル2//
restore > extract
You have not read any volumes yet.
Unless you know which volume your file(s) are on you should start
with the last volume and work towards the first.
Specify next volume # (none if no more volumes):
Specify next volume # (none if no more volumes): 1 //←ボリューム指定//
set owner/mode for '.'? [yn] y

ボリュームは明示的に数字を入力しないとならない。今回はローカルのHDD上だったので、「1」。テープ複数本とかの場合は2とかになるはず。どのボリュームかどうか調べる方法は今回手をつけてないですごめんなさい。

展開後は作業ディレクトリ「以下」に/xxx が作成される。 たとえばtestuserさんがrestoretestで作業していた場合、/etc以下のほげほげをrestoreすると

/home/testuser/restoretest/etc/。。。。

となる。なお、ディレクトリの作成日時はdumpした時点(のはず) 取り出すファイルが深い階層にあればそれだけディレクトリも自動的に作成される。

その他

USBメモリにdumpをとるのは、ええのかどうか

https://forums.ubuntulinux.jp/viewtopic.php?id=10505 結論からいくと(extで)フォーマットしなおさんとあかんかったりするのであんまり適してないぽい。古き良きコマンドだからテープ前提だったりするし

勉強のためなら/etc以下とかだけ(コピって)保管すればなんとか(ぇー

dumpファイルをアーカイブする

理論上できなくないけど、相手のテープ等によゆうがあるなら、やらないほうがいい気がする。なぜなら、圧縮伸長するにもtar tvf するにも時間がかかりすぎるから。CPUパワーも使う。そしておそらく、圧縮してもそんなに圧縮率はみこめない。

1) ただしその世代管理は /etc/dumpdates に記載されているものによる
2) もしかしたらオプションでどうにかなるかもしれないが……調べてないです
linux/dump_restore.txt · 最終更新: 2011/08/24 13:11 by miyako
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0