テープバックアップ不具合
〜テープデバイスの死〜
0.改訂履歴
- 1998.03.27 初版
- 2000.09.16 会社名を消した
1.現象
X1板テープメディアをセットしているにも関わらず,テープ挿入チェックにて“テープ未挿入エラー”が発生し,テープバックアップが行われなかった.
2.時系列
2.1.バックアップが行われていない.
XXNTサーバでは,テープ未挿入のため,バックアップを行えなかった場合,e-mailで通知する仕組みを組み込んでいる.
1997.3.18〜1998.03.25の間(土日含まず),テープ未挿入によりバックアップ出来なかったことを通知するメールが来ていた.
当初イベントログを調査する上で,デバイスおよびバックアップ関連のエラーは全く記述されていなかった. よって,監視プログラムの報告とおり,テープが未挿入であると考えていた.
2.2.デバイスエラー発見
毎日の監視を行う上で,1998.03.25夕方,イベントログをチェックすると,次のようなエラーが出ていた.
Event 15 source aic78xx 98.03.25 12:54:09 デバイス \Device\ScsiPort0 はまだアクセスできる状態ではありません。 0000: 0014150f 00680001 00000000 c004000f 0010: 00000103 c00000a3 006dd91c 00000000 0020: 00000000 00000000 00000000 00000004 0030: 00000000 00000008 00000007 |
Event 11 source 4mmdat 98.03.25 12:54:09 ドライバは \Device\Tape0 でコントローラ エラーを検出しました。 0000: 0018000f 006a0001 00000000 c004000b 0010: 00000103 c0000185 00000000 00000000 0020: 00000000 00000000 00000000 00000004 0030: 00000000 00000000 00004508 00005011 |
サーバのコンソールまで行った所,誰かが?テープからファイルのリストアでも行おうとした?形跡があり,NTbackupが起動してそれがエラーをおこしていた.
前歴から,テープメディアとDAT装置のハード故障が考えられ,壊れたドライブにテープメディアを入れるとメディアが壊れる可能性があるので,バックアップを停止(テープを回収)した.
2.3.他のマシンを利用したテープのメディアチェック
前歴から,テープのメディアが壊れている可能性が高いので,10本のテープを他のサーバマシンの内蔵DAT装置で調べた. すると,1つのエラーも無い変わりに,バックアップも取られていなかった.
テープ番号 | 日付 |
---|---|
1 | 2.3 |
2 | 3.17 |
3 | 2.5 |
4 | 2.6 |
5 | 2.7 |
6 | 1.13 |
7 | 1.14 |
8 | 1.15 |
9 | ブランク |
10 | 2.5(データ無し) |
ちなみに,テープエラーが出たのは,テープ8番であった.
2.4.メディアの違い?
粉塵&温度対策のために設置場所移動とテープの相性による正常動作を確認するため,XXX製テープメディアからXX製テープメディアに交換していた.
1998年2月9日から,1カ月ほど,これで運用し,エラーは起きなかった.
XXのテープにて正常動作を確認できたので,1998年3月16日から,XXXのテープメディアに変更した.
テープの内容を見ると,1998年3月17日分のみバックアップに成功している.
2.5.薄板NTサーバでテープを読み込ませてみる
他のサーバでテープは全く異常が無かったので,X1NTサーバにてNTBackupを起動し,内容を見てみた. 今度はデバイスもメディアもエラーも出なかった.
2.6.デバイスのチェック
またNT の期限が悪いのか? とおもい,テープデバイスのチェックを行ってみた. いかがその結果である.
C:\mainte\cmd>datutil -IsWritableTape -ErrMessage テープデバイスがオープンできません。 C:\mainte\cmd>datutil -Eject テープデバイスがオープンできません。 C:\mainte\cmd> |
テープメディアの状態を調べるコマンドdatutilを使って検査したが,「デバイスがオープンできない」というエラーになってる. 当然,テープメディアはセットしているので,テープイジェクトを行おうとしたところ,再度エラーが出ている.
2.7.テープデバイスの再起動?
テープデバイスの状態を調べるために,コントロールパネルの「デバイス」を開いて確認した.
この画像では,“停止”ボタンが押せない状態になっているが,開いた時点では押せるようになっていた. よって,この“停止”ボタンを押してみた.
「このデバイスは停止できません」というようなエラーダイアログが出た.
再度datutilを使ってチェックすると,正しく動作した.
C:\mainte\cmd>datutil -Eject C:\mainte\cmd>datutil -IsWritableTape -ErrMessage テープのメディアが挿入されていません C:\mainte\cmd> |
テープイジェクトを実行すると動作し,ドライブのステータスを表示させると正しく表示された.
画面のハードコピーで判るように,正常稼働している場合,テープデバイスの開始・停止ボタンを押すことは出来ないようになっている. これが何故か押せるようになっていた部分がこんかいの障害のキーだとおもわれる.
3.原因と対処
なんらかの原因でテープデバイスの常駐ドライバ(カーネルに近い部分のプロセス?)がダウンしており,それを停止・再起動させたことによって再度使えるようになった.
今回と同様の障害の場合,対処方法は2つある.
- 今回同様,デバイスの再起動を行う
- OSの再起動を行う
デバイスの再起動が必要であるという部分まで管理者がたどり着くには時間がかかると思われるので,業務上問題がなければOSの再起動を行えばよいと思われる.
このデバイスがダウンした“原因”については不明である.
4.所感
テープデバイスがエラーをおこしている場合でも,何故かNTBackupはテープドライブを読み取ることが出来た. これは何故だか不明である. NTBackupはハードウェアに直接アクセス(低レベルドライバの呼出し)にいってるのだろうか.(NTのカーネルはそれが出来ないハズなのだが)
もしかすると,このようなNTBackupが感知しないテープデバイスのエラーがあり,それが積み重なって?いくと「テープが出てこなくて,再起動すると取り出すことが出来る障害」などになるのではなかろうか.