ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
Main Menu
Tweet
Facebook
Line
:-?

2005年2月23日(水曜日)

玄箱のファイルバックアップ

カテゴリー: - Gan @ 02時45分02秒

玄箱のファイルシステムをバックアップとるのに私は古典的なdump/restoreコマンドをインストールして使っています。使用方法が単純な上に意外と高速です。

用意するものは、

Dump/Restore - The ‘dump’ and ‘restore’ functions

のみです。

いつもの様に./configure;make;make installをやります。

これでいつでもファイルシステムの丸ごとバックアップ・リストアの準備ができました。

玄箱のファイルシステムは以下の2つで構成されます。

/ - ルートファイルシステム(玄箱ファームウェアに相当します)
/mnt - データファイルシステム(共有shareフォルダはここに位置します)

ファイルシステムのバックアップアーカイブを作成するにはdumpコマンドを使用します。バックアップにも2種類あってフルバックアップと差分バックアップです。

フルバックアップは比較的長期に渡って更新されないファイルを含めて全てのファイルのバックアップをとります。それに対して差分バックアップは前回のバックアップ以降に作成されたり変更されたファイルのみをバックアップすることをさします。このあたりはバックアップの基本用語ですね。

で、dumpコマンドを使ってルートファイルシステムのフルバックアップを行うには以下の様なコマンドを実行します。

dump -0uvf /mnt/share/root0.dump /

これでルートファイルシステム(/)に対応するディスクパーティション上のファイルシステムのファイルが全て/mnt/share/root0.dumpというファイルにアーカイブされます。これは1度やっておけば十分ですね。

一度フルバックアップをとったら以降は新たにソフトウェアをインストールした時とか設定ファイルを変更した時とかに更新されたファイルだけを差分バックアップすればよいことになります。フルバックアップとの違いはオプションパラメータの0を0以外の値を指定する点です。

dump -1uvf /mnt/share/root1.dump /

オプションで0を指定しない限り全て差分バックアップ扱いとなります。

次に大事なデータファイルシステムのバックアップです。これはルートファイルシステムの場合と違ってファイルシステムのマウントポイントとして/mntを指定する点が異なります。データファイルシステムのフルバックアップは以下の通り。

dump -0uvf /mnt/share/data0.dump /mnt

差分バックアップも同様にパラメータに0以外を指定します。

dump -1uvf /mnt/share/data1.dump /mnt

あとはroot0.dumpとroot1.dumpそれにdata0.dumpとdata1.dumpをどっか別のHDDとかに保存しておけばOKです。

無い方がいいですが、もし玄箱のハードディスクが逝ってしまった場合には、dump/restoreコマンドをインストールした後でrestoreコマンドを使ってファイルをバックアップファイルからリストアします。あらかじめ共有shareディレクトリに以前にバックアップしたファイルdata0.dumpをコピーしておきます。

cd /mnt
restore -rvf /mnt/share/data0.dump
restore -rvf /mnt/share/data1.dump

バックアップしたファイル全てではなく選択的にリストアする方法ももちろんあります。詳しくはrestoreのマニュアルページかUNIXの管理者向け書籍をお読みになることをおすすめします。


コメント

このコメントのRSS

TrackBack URL : https://www.rainbowseeker.jp/xoops/modules/wordpress/wp-trackback.php/110

  1. dumpコマンドのインストールについてですが、これは玄箱の標準のセットアップ(MontaVista)での話でしょうか?
    dumpコマンドのmakeで下記のエラーで止まってしまいます。
    gcc -c -D_BSD_SOURCE -D_USE_BSD_SIGNAL -g -O2 -pipe -I.. -I../compat/include -I../dump -DRDUMP -DRRESTORE -DLINUX_FORK_BUG -DHAVE_LZO -D_PATH_DUMPDATES=\"/usr/local/etc/dumpdates\” -D_DUMP_VERSION=\"0.4b40\” dumprmt.c -o dumprmt.o
    In file included from ../compat/include/bsdcompat.h:14,
    from dumprmt.c:56:
    ../ext2fs/ext2fs.h:695: parse error before `FILE’
    ../ext2fs/ext2fs.h:752: parse error before `FILE’
    ../ext2fs/ext2fs.h:758: parse error before `)’
    ../ext2fs/ext2fs.h:759: parse error before `FILE’
    ../ext2fs/ext2fs.h:762: parse error before `)’
    ../ext2fs/ext2fs.h:792: parse error before `FILE’
    make[1]: *** [dumprmt.o] Error 1

    ちなみにgccのバージョンは2.95.3、glicは2.2.3(両方とも玄箱デフォルト)です。
    貴殿の記録でgccとglibcを最新のものにした記録がありますが詳細が分からず自力ではアップデートできませんでした。

    玄箱のOSをVine化するため標準セットアップのシステムバックアップを使用と思い、dumpコマンドをインストールするところで躓いています。

    上記を解決する以外でもシステムバックアップが出来れば次のステップへ進めるんですが・・

    また、同内容の書き込みを玄箱ハックBBSというサイトへ書き込んでありますので、よろしかったらレスよろしくお願いいたします。

    Comment by ハチビ〜 — 2006年5月6日(土曜日) @ 17時30分56秒

  2. こちらでdumpをbuildできた環境は以下の2つです
    玄箱:
    玄箱ファームウェア Ver 1.02
    GCCは3.4.3にupgrade
    玄箱HG:
    玄箱HGファームウェア Ver 1.01
    GCCは3.4.5にupgrade
    です。

    症状からするとコンパイラの問題ではなく単純に基本的なincludeファイルがインストールされていないような感じがします。こちらはglibcとかも玄箱添付CDのbinraryディレクトリに入っているものをそのままインストールしています。このあたりは以前書いた玄箱メモにある通りです。

    Comment by Gan — 2006年5月7日(日曜日) @ 03時27分25秒

コメントの投稿

改行や段落は自動です
URLとメールアドレスは自動的にリンクされますので、<a>タグは不要です。
以下のHTMLタグが使用可能です。
<a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <br> <code> <em> <i> <strike> <strong>


ご注意 : セッティングにより、コメント投稿から実際に閲覧できるようになるまで暫く時間が掛かる場合があります。 再投稿の必要はありませんので、表示されるまでお待ち下さい。

14 queries. 0.063 sec.
Powered by WordPress Module based on WordPress ME & WordPress

ページ変換(Google Translation)
サイト内検索