ufsrestore - みる会図書館


検索対象: UNIX MAGAZINE 2003年5月号
7件見つかりました。

1. UNIX MAGAZINE 2003年5月号

特集 SoIaris 9 の管理と運用 ufsrestore の実行 ( 文囎舌モード ) 図 6 1 root@blade$ ufsrestore if fire : /export/home/backup/blade-home . dmp 2 ufsrestore > IS 3 TT_DB/ guest/ 4 backup/ lost + found/ 5 6 ufsrestore > cd op 7 ufsrestore > IS 8 9_Recommended/ . TTauthority 9 . Xauthority 9—Recommended. zip 10 . Xdefau1ts AdobeFnt . lst 11 ffjuser40ce/ . kshrc 12 13 . mozilla/ netscape7/ 14 . profile sendmail . 8.12.6. tar ・ gz 15 starsuite6.0 / . sh-history 16 17 ufsrestore > add . kshrc . profile 18 ufsrestore > add netscape7 19 ufsrestore > marked 20 21 * . kshrc *. profile 22 ufsrestore > delete . kshrc 23 ufsrestore > extract 24 You have not read any volumes yet . 25 UnIess you know which volume your file (s) are on you should start 26 with the last volume and work towards the first . 27 Specify next volume # : 1 28 set owner/mode for 29 ufsrestore > quit 30 root@blade$ 1s —1aR 31 32 合計 6 33 drwxr—xr 3 root 34 26 OP 35 drwxr ー xr 3 OP 36 37 38 計 10 39 drwxr—xr 3 OP 40 drwxr—xr 3 て 00t 1 OP 41 42 9 OP 43 . /op/netscape7 : 44 45 ・十 56 46 drwxr ー 9 OP xr—X 47 drwxr— 3 OP xr—X 1 OP 48 1 OP 49 50 30 行目以降 : リストアの結果を石忍する。カレントワー ァープデバイス キング・ディレクトリかアーカイプのルート・ディレク トリになり、相対パスで必要なディレクトリとファイ UNIX でテープデバイスを使用する場合には、キャラ ルか復元されている。 クタ型のテンヾイスノードを経由してアクセスする。すなわ この作業カ鮗ったら、ファイルを適当な位置に移動 ( も ち、テーフテンヾイスはシーケンシャル・アクセスだけか可 しくは上書きコピー ) してリストアは完了する。 能な 1 つの大きなファイルとしてみえることになる。テー op/ *netscape7/ 0 5 5 4 0 0 2 0 0 2 日日日 月月月 3 3 3 2 4 2 イ亠つんイ亠 5 0 ロ ) other operator operator 7 ・ 1 0 tn 8 4 9 9 4 5 0 5 2 0 っ ~ 0 っ 4 0 0 0 日日日日 3 4 5 9 っ】 月月月月 3 3 1 1 っ 2 0 っ】 イイ亠 ( 0 イよ LO LO イ亠 operator other operator operator 512 1 月 29 日 00 : 59 512 3 月 3 日 22 : 48 operator 10 月 6180 17 日 00 : 49 README operator 12 月 12132 12 日 14 : 49 README. ja operator 38 UNIX MAGAZINE 2003.5

2. UNIX MAGAZINE 2003年5月号

特集 Solaris 9 の管理と運用 表 2 ufsrestore のサプコマンド サプコマンド ls [ ディレクトリ ] cd ディレクトリ pwd add [ ファイル ] delete [ ファイル ] marked [ ディレクトリ ] extract hel p quit 機能 ディレクトリにあるファイルを一覧表示 現在のディレクトリを変更 現在のディレクトリ名を表示 ファイル : コーしマークを付ける ファイルに付けた取出しマークを削除 ディレクトリにある取出しマークが付けられたファイルを -- - 「覧表示 取出しマークが付けられたファイルをアーカイプからディスクに取り出す ufsrestore コマンドの終了 ヘルプメッセージを表示 ufsdump でファイルシステム全体をダンプした場合、 ファイル名はファイルシステムのルート・ディレクトリ からの相対パスて保存される ( ディレクトリを絶対パスで 指定した場合も、そのディレクトリ名の前に ( ピリオ ド ) が付けられて、相対パス名て保存される ) 。一方、 ufs- restore では、アーカイプからファイルを取り出す際に コマンドを起動したカレントワーキング・ディレクトリか らの相対パスを使用する。したがって、ファイルをリスト アする前にカレントワーキング・ディレクトリをファイル システムのルート (/opt や /export/home など ) に変更 し、その後に ufsrestore コマンドを起動する必要がある。 見方を変えると、 tar コマンドのようにファイル名カ寸 パスで保存されることがないので、ダンプの際にカレント ワーキング・ディレクトリを意識せすにすむ。 文舌モードによるリストア バックアップ・アーカイプから一部のファイルやディ レクトリを復元する場合は、 ufsrestore の対話モードを利 用するとイ甦リである。対話モードて起重丿けると、インデッ クスを読み込んでからコマンドの入力を促すプロンプトを 表示する。このプロンプトに対して表 2 のサプコマンドを 入力し、バックアップ・アーカイプの内容を石忍しながら 彳第己対象のファイルを絞り込んでいくことができる。 対話モードでの彳第この例を図 6 に示す。この例では、リ モートマシン fire に置いた /export/home ファイルシス テムのバックアップ・アーカイプから一部のファイルや ディレクトリを選んでリストアしている。 1 行目 : ufsrestore を対話モードて起動ける。読み込むア ーカイプ・ファイルは、 fire というマシン上の / exp 。 rt / home/backup/blade-home. dmp である。 2 ~ 5 行目 :ls コマンドでアーカイプ・ファイルの内容を UNIX MAGAZINE 2003.5 石忍している。とくに問題はなさそうである。 6 行目 : このアーカイプ・ファイルは、 /export/home ディレクトリをバックアップしたものである。求める ファイルを取り出すためにユーサー op のホーム・ディ レクトリに移重丿ける。 7 ~ 16 行目 : ls コマンドで、このディレクトリにあるファ イルを石忍する。 17 行目 : 2 つのファイル (ksh のスタートアップ・スク リプト ) を取り出すためにマークを付けている。ファイ ルをマークした時点で、そのファイルのリストアに必要 なディレクトリカイ乍成される (extract を実行した時点 ではない ) 。 18 行目 : 1 つのディレクトリにマークを付ける。 19 ~ 21 行目 : マークを付けたファイルとディレクトリを 確認する。 * は、そのファイルないしディレクトリ にマークが付いていることを示している。 22 行目 : 選んだファイルのうち、 1 つはやはり不要と判 断したのてマークを外す。 23 行目 :extract コマンドを実行し、マークを付けたファ イルを取り出す。 24 ~ 27 行目 : アーカイプ・ファイルカ数のテープにま たがっている場合は、最後のものから読み込ませるため に、何巻目のポリュームをドライプにセットしたかを指 定する。テープが 1 本のときや、この例のようにディス クファイルの場合には 1 を指定する。 28 行目 : カレントワーキング・ディレクトリの所有者と アクセスモードを、アーカイプのルート・ディレクトリ のそれに合わせて変更するかと訊かれる。アーカイプ全 体をオリジナルの位置にリストアするのなら y 、そ の他の場合には n と入力する。 29 行目 : quit コマンドで、 ufsrestore を終了する。 37

3. UNIX MAGAZINE 2003年5月号

特集 SoIaris 9 の管理と運用 図 4 ufsdump の実彳デ列 root@blade$ ufsdump Of /export/home/backup/root-dump—20030201. dmp / DUMP : Writing 32 Ki10byte records Date of this level 0 dump: 2003 年 02 月 06 日 ( 木 ) 16 時 32 分 40 秒 DUMP : DUMP : Date of last level 0 dump: the epoch Dumping /dev/rdsk/cOtOdOsO (blade : / ) t0 /export/home/backup/root_dump-20030201. dmp. DUMP : Mapping (Pass I) [regular files] DUMP : DUMP : Mapping (Pass (l) [directories] DUMP : Estimated 4884574 blocks ( 2385.05MB ) . Dumping (Pass III) [directories] DUMP : Dumping (Pass (V) [regular files] DUMP : 4884542 blocks ( 2385.03MB) on 1 volume at 4324 KB/sec DUMP : DUMP DUMP IS DONE root@blade$ ls ー 1 /export/home/backup/r00t-dump-20030201. dmp 2500886528 2 月 6 日 16 : 42 /export/home/backup/root_dump— 1 て 00t other 20030201. dmp 図 5 ufsdump で作成したダンプファイルの形式 ディレクトリ ーインデックス リスト ダ ッ ファイル ファイル ファイル ファイル ファイル ファイル ファイル EOF にファイルの削除などの変更がおこなわれると、 ファイノレ の実体がダンプファイルに含まれないといった不整合が生 じることがある。インデックスと個々のファイルだけでな く、オリジナル・ファイルをダンプファイルにコピーして いる最中にそのファイルの大きさか変更されたり、ファイ ルの前半と後半の内容か喰い違うといった矛盾か発生する 場合もある。ただし、このような矛盾が生したときも、ダ ンプファイル本が使用不能になるわけではなく、たまた まタイミング的に不整合が生じたファイルか復元できなく なるだけである。 ufsrestore によるリストア ufsdump で作成したバックアッフ・アーカイプを読み 取るには、 ufsrestore コマンドを使う。 ufsrestore の実 行形式は ufsdump や tar と同しで、機能指定を含むオプ ションをまとめて指定し、その後ろにオプションと同し順 序で対応する引数を指定する。とくに、知寬こ指定する必 須オプションは ufsrestore の重川乍を指定するものであり、 おもに次の 4 つを使用する。 i : 対話モード アーカイプからインデックスだけを読み込み、対言乱勺に ファイルお尺しながら復道作をおこなう。 t : 覧表示 アーカイプに含まれているファイルの一覧を表示する。 r : 本のリストア アーカイプに含まれているファイル本を、カレント ワーキング・ディレクトリからの相対的なパスにリスト アする。 x : 取出し 指定されたファイルを、カレントワーキング・ディレ クトリからの相対的なパスにリストアする。 続くオプション文字は、指定された重川乍を補助するもの である。おもなものを以下に示す。 b れ : プロッキング・ファクタを指定する。 f : バックアッファーカイプ・ファイルのパス名を指定す る。ー ( ハイフン ) を指定すると、標準入力を指定したも のとみなされる ( 必頭オプションとして x または r を 指定した場合 ) 。 h : 空のディレクトリを復元する。 s れ : テーブドライプからアーカイプを読み込む際、れ個 の EOF マークを読み飛は。してからリストア動作を開 始する。 mt コマンドの fsf サプコマンドと同しである ()t コマンドについては彳あ ) v : 言田な情報を表示する。リストアしているファイルの 名称を出力する。 y : 言ムみ工ラーを無視する。工ラーとなったプロックを 読み飛ばし、彳麸をのプロックの処理を続行する。 36 UNIX MAGAZINE 2003.5

4. UNIX MAGAZINE 2003年5月号

特集 SoIaris 9 の管理と運用 図 10 スナップショット アプ丿ケーション アプリケーション アプリケーション アプリケーション ナップショット ON # ufsdump Obf 126 /dev/rmt/Ocn / # ufsdump Obf 126 /dev/rmt/Ocn /opt 例 2 : / export / home ファイルシステムを、リモートマシ ン tapesrv の 8mm ドライプにレベノレ 4 でノヾックアッ プする ( 誌面の都合上、 = = 〉で折り返しています。以下 # ufsdump 4ubf 126 tapesrv:/dev/rmt/()hn /export/home 例 3 : /export/home ファイルシステムを、リモートマ シン tapesrv の DSS ドライプから対話モードでリス トアする。 # ufsrestore ibf 126 tapesrv : /dev/rmt/Oc ufsdump と ufsrestore は、複数ポリュームのテーフ に対応している。 ufsdump で書き込んでいる最中にテー プメディアの終了を検出すると、それを巻き戻して ( 可能 であれイジェクトし、次のメディアをセットするよう に求めてくる。 ufsrestore で読み出す場合、 r オプション を指定してバックアップ・アーカイプ全体をリストアする ときは 1 本目のメディアから順にドライプにセットする。 一方、 i オプションを指定して対言乱勺に一部のファイルを リストアするときは、これとは逆に最後のメディアから順 にセットする。画面に ( 英文の ) メッセージか表示される ので、それを見て適切なメディアをドライプにセットすれ ばよい。ただし、なかにはメディアの終了を検出できない ドライプもあるので、デバイスのマニュアルをかならす参 照してはしい。歯切れの悪い説明で申し訳ないが、テープ ドライプは世代交代が早いうえにさまざまなモデルカ甘是供 されており、ドライプごとに特徴が異なるため、一ヨ勺な 角見は難しい。 同様 ) 。 UNIX MAGAZINE 2003.5 バックアップ プログラム バッキングストア スナップショット Solaris 9 ( より正確には、 Solaris 8 01 / 01 リリース ) からは、、、スナップショット " と呼はれる、バックアッフ にきわめて便利な仕組みカ材票準で組み込まれている。これ は、ファイルシステムを利用し続けながらも、あるコマン ドを実行した時点でファイルシステムの更新が停止され、 その時点のファイルシステムの内容か第売み出せるという機 能である。したがって、ファイルシステムをアンマウント しなくても、整合生がとれた状態でバックアップをおこな うことかできる。 ます、スナップショットの仕組みについて説明しておこ う。スナップショットは、ファイルシステムを単位とし て機能する。あるファイルシステムに対してスナッフショ ットを ON にすると、そのファイルシステムへの書込み は、すべて別のファイルシステムに置かれた、、バッキング ストア (backing-store)" と呼はれるファイルに対してお こなわれるようになる ( 図 10 ) 。ファイルシステムの変更 が停止されるため、そのあいだにバックアップ・プログ ラムでファイルシステム全体を読み出すと、すべてのファ イルが、、スナップショットを ON にした時点 " の状態で 取り出されることになる。バックアッフ。カ鮗了してスナッ プショットを OFF にすると、バッキングストアに書き 込まれたデータが所定のファイルに順次書き戻される。ス ナップショットを使用すると、アプリケーションの動作 を停止させなくても、、ある点での " ファイルシステムの バックアッフ。がとれるというわけである。 スナップショットを利用すれば、ファイルシステムと 41

5. UNIX MAGAZINE 2003年5月号

2003 年 5 月 1 日発行 ( 毎月 1 回 1 日発行 ) 第 18 巻第 5 号通巻 199 号昭和 63 年 9 月 5 日第三種郵便物認可 Y 200 ユニックス・マガジン So ねⅱ s 9 の管理と運用 ・バックアップとリストアの . , ufsdump と ufsrestore テープデバイスの扱い方 スナップショットの利用 ・バッチの適用 推奨バッチの適用とバックアウト SOIaris Live Upgrad 第プログラミノグ入門 ・文字列探索 ・プログラミングとアルゴリズムの選択 字多田ヒカルのライプイペシトを いオ規模ストリーム配信の要素技術 UNIX Communication Notes 光 509 による WWW サーバーでのク制御 し inux のプートプロセスを ユーサープロセス / sbin / init の起動 JavaServer Pages カスタムタグでの変数の生成と属性の値の検査 インターフェイスの街角 ー MAP と Web メールを組み合わせる VMware Workstation 32 プリンタからの印刷 Xserve 試用レポート 定価 1100 円 ・議・←こな 3 23

6. UNIX MAGAZINE 2003年5月号

特集 SoIaris 9 の管理と運用 図 8 1 本のテープに複数のファイルを格納 プロック ヘッダ レコード レコード レコード レコード ヘッダ レコード レコード レコード レコード EOF EOF ファイル ファイ丿レ 図 9 mt のコマンドの動作 EOF EOF ファイル ファイル retension マンドがまったく未をなさなくなるからだ。デフォルト がある。このようなドライプでは、 fsf コマンドの実行直後 値は /dev/rmt/()n である。ー搬によく使用するサプコマ にファイルを読み込もうとすると、すぐに残りの EOF マ ンドと、その未を次に示す。 ークを検出してファイルか終了したとみなされてしまう。 このとき、テーフ。がはんのすこし進むので、再度ファイ fsf れ : テープを順方向に送る。れ個の EOF マークを売 ルの言ムみを試みると、次のファイルが無事に読み出せる み飛ばして、その直後でテーフ。か停止する。 といった挙動をみせる。 bsf コマンドでは、 EOF マーク bsf れ : テープを逆方向に送る。れ個の EOF マークを の前にテープを位置付けて停止する点にも注意が必要であ 読み飛ばして、その直前でテープかイ亭止する。 る。 bsf コマンドの実行直後にファイルを読み込もうとす rewind : テープを頁まて巻き戻す。 ると、すぐに EOF を検出して言ムみに失敗する。 offine : テーフを頁まて巻き戻し、ハードウェアが対 テーフ。の頭出しには、多少の経験と慣れか必要である。 応していれはテープをアンロードする。 連続して読み込むことか决まっているような場合を除き、 status : テーフテンヾイスの大態を表小する。 1 本のテーフ。メディアには 1 つのファイルだけをオタする retension : テープを末尾まで頂方向に送り、その後に ことを原則としたほうがよい。また、そのテーブドライプ 知頁まて巻き戻す。テープの巻き乱れを鮹肖する際に使 を初めて使うときは、事前に頭出しについて実験して癖を つ。このコマンドカリ用できないテンヾイスもある。 擱んでおくとよいだろう。 おもなコマンドの動作を図 9 に示す。 ufsdump と ufsrestore での利用 fsf (Forward Skip File) コマンドや bsf (Back Skip コマンドについてはすでに説明したので、以下では例を File) コマンドでは、テープに書き込まれた EOF マーク 示すだけにとどめておく。ポイントは、 b オプションを付 を検出して頭出し乍亭」 E する。ただし、この動作には けてプロッキング・ファクタを指定することである。 ドライプのモデルごとに癖があるのて注意が必である。 たとえば、 fsf コマンドを実行すると、 EOF の検出か敏 例 1 : ルート・ファイルシステムと / opt ファイルシステ 感なために EOF マークの途中で止まってしまうドライプ ムを、 DDS ドライプに続けてフノレヾックアップする。 ニ = ロ 40 UNIX MAGAZINE 2003.5

7. UNIX MAGAZINE 2003年5月号

特集 SoIaris 9 の管理と運用 の 2 つがある点も重要である。前者はファイルシステムを 経由してデバイスを操作するときに利用され、 mount コ マンドなどて使う。後者はディスク・パーティション全 体を ( 通常のファイルのように ) バイト列として操作する ときに利用される。ファイルシステムを経由しないことか ら、ロー (raw: 生の ) デバイスと呼はれる場合もある。 Solaris では、プロックテンヾイス・ノードが /dev/dsk ディ レクトリに、キャラクタデバイス・ノードが /dev/rdsk ディレクトリにまとめて作成される。いすれも、図 2 に 示したファイル名からハードウェアの物理的なアドレスを 含む実際のデバイスノード 2 へのシンポリック・リンクと なっている。 mount および umount コマンド以外では、 キャラクタテンヾイス・ノード (/dev/rdsk ディレクトリ の一ド ) の名前を使ってディスク・パーティションを指定 すると憶えておくとよい。 ファイルシステムがマウントされている場合は、ディス クファイルへの書込みを高速化するために、、ファイルシス テム・キャッシュ " という仕組みカイ吏われる。これは、ア プリケーションからのファイル書込み要求をいったんメモ リ上にキャッシュし、時間のかかるディスクアクセスの 完了を待たすにアプリケーションの実行を続けるものであ る。メモリ上にキャッシュされたデータは、システムが 上如勺ひまになったときなどに実行時間か山数豆になるよう にスケジュールさオ L 、まとめてディスクへ書き込まれる。 これは、ファイルシステムをマウントした状態では、ディ スクドライプの内容か最新とはかぎらないということを意 味する。ファイルシステムの整合生を完全に保った状態で バックアップしなけれはならない場合は、そのファイルシ ステムをアンマウントしておく必要がある。 、バックアップにはかなりの時間がかかる。そ のため、ファイルシステムをマウントした状態では、ある ファイルをバックアップしている最中に、そのファイル が更新されてしまうことも考えられる。したがって、 ファイルシステムをマウントした状態でバックアッフ 作業をおこなうと、その結果は不完全なものになる可能 性がある ことを頭に入れておこう。このような事態を防ぐ根本的な 刈策はファイルシステムのアンマウント ( または読出し専 34 2 /devices ディレクトリにある。 用でマウント ) だが、システムの下応力中にはルート・ファ イルシステムなどをアンマウントすることはできない。 バックアッフ。の際に発生する、、矛盾 " は、あくまでもフ ァイノレシステム・キャッシュの大態や、プロセスの不家重川大 態によって惹き起こされる確率問題である。したがって、 複数世代のバックアップをイ尉寺しておけば、 、、リストアで きないファイルか有在する " 確率ば成らせる。ファイルシ ステムをマウントしたままバックアッフする場合は、 ( 後 述のスナッフショット機能を使う場合であっても ) 複数の バックアップのイ尉寺を心掛けたほうがよい。そうすれは、 、バックアップしておいたのに かなり減らせるはすである。 ' という最悪の事態は UfSdUmp と ufsrestore ufsdump によるバックアップ マウントされていないファイルシステムをバックアッ フするときは、 ufsdump コマンドを利用する。 ufsdump は、それ自体がファイルシステムの構造を知っているた め、ファイルシステムを経由せすにパーティション内部の ファイルにアクセスしてバックアップできる。また、 So- laris 独自の機能である、ファイルごとの ACL (Access Control List) や特殊ファイルのバックアップもとれる。 ただし、 ufsdump で作成したバックアッフ・ファイル はプラットホーム依存なので、 Solaris のダンプファイル を Linux て第売み込んだり、その逆の操作はおこなえない。 例外として、 SPARC アーキテクチャのダンプファイル を lntel アーキテクチャの Solaris で読み込んだり、その 逆の操作はできる ( もちろん、ノヾイナリファイルの互換性 が保証されているわけではない ) 。 本来、 ufsdump はファイルシステム全体をバックアッ フするためのコマンドであり、ファイルシステムの一部だ けを抜き出すことはできない。ただし、 SoIaris 9 のもの は一部のディレクトリの下だけをダンプできるように長 されている。原則として、 ufsdump ではマウントされて いないファイルシステムをダンプするが、ファイルシス テムをマウントしたまま実行することも可能である。ただ し、この場合は前述のようにダンプ結果の完全生はイ正さ れない。 ufsdump では、、、ダンプレベル " という概念を用いて UNIX MAGAZINE 2003.5