Solaris のシステム管理 (第 2 巻)

初期化フェーズでの fsck メッセージ

初期化フェーズでは、コマンド行構文がチェックされます。ファイルシステムのチェックを実行する前に、fsck はテーブルを設定してファイルを開きます。

この節のメッセージは、コマンド行オプション、メモリー要求、ファイルのオープン、ファイルの状態、ファイルシステムのサイズチェック、およびスクラッチファイルの作成によるエラー条件に関するものです。ファイルシステムを修復する間に、どんな初期化エラーが発生した場合も、fsck は終了します。

bad inode number inode-number to ginode
エラーの発生原因

inode-number が存在しないため、内部エラーが発生した。fsck は終了する。

解決方法

ご購入先に問い合わせる。


cannot alloc size-of-block map bytes for blockmap
cannot alloc size-of-free map bytes for freemap
cannot alloc size-of-state map bytes for statemap
cannot alloc size-of-lncntp bytes for lncntp
エラーの発生原因

内部テーブル用のメモリー要求に失敗した。fsck は終了する。このメッセージは、即座に処理しなければならない重大なシステム障害を示す。他のプロセスが大量のシステム資源を使用していると、このエラー条件が発生することがある。

解決方法

他のプロセスを終了すると問題を解決できることがある。解決できない場合は、ご購入先に問い合わせる。

cannot alloc size-of-block map bytes for blockmap

cannot alloc size-of-free map bytes for freemap

cannot alloc size-of-state map bytes for statemap
cannot alloc size-of-lncntp bytes for lncntp
エラーの発生原因

内部テーブル用のメモリー要求に失敗した。fsck は終了する。このメッセージは、即座に処理しなければならない重大なシステム障害を示す。他のプロセスが大量のシステム資源を使用していると、このエラー条件が発生することがある。

解決方法

他のプロセスを終了すると問題を解決できることがある。解決できない場合は、ご購入先に問い合わせる。

Can't open checklist file: filename
エラーの発生原因

ファイルシステムのチェックリストファイル filename (通常は /etc/vfstab) を開いて読み込めない。fsck は終了する。

解決方法

ファイルの有無と、そのアクセスモードで読み取りが可能かどうかをチェックする。

Can't open filename
エラーの発生原因

fsck はファイルシステム filename を開けなかった。対話形式で実行している場合、fsck はこのファイルシステムを無視し、次に指定されたファイルシステムのチェックを続ける。

解決方法

そのファイルシステムの row デバイスファイルに読み取り、または書き込みができるかどうかをチェックする。


Can't stat root
エラーの発生原因

fsck はルートディレクトリに関する統計情報要求に失敗した。fsck は終了する。

解決方法

このメッセージは、重大なシステム障害を示す。ご購入先に問い合わせる。


Can't stat filename
Can't make sense out of name filename
エラーの発生原因

fsck はファイルシステム filename に関する統計情報要求に失敗した。対話形式で実行している場合、fsck はこのファイルシステムを無視し、次に指定されたファイルシステムのチェックを続ける。

解決方法

ファイルシステムの有無とそのアクセスモードをチェックする。


filename: (NO WRITE)
エラーの発生原因

-n オプションが指定されているか、fsck はファイルシステム filename を書き込み用に開けなかった。fsck を非書き込みモードで実行中であれば、すべての診断メッセージが表示されるが、fsck は何も修正しようとしない。

解決方法

-n を指定しなかった場合は、指定したファイルのタイプをチェックする。通常ファイル名の可能性がある。


IMPOSSIBLE MINFREE=percent IN SUPERBLOCK (SET TO DEFAULT)
エラーの発生原因

スーパーブロックの最小容量が 99 パーセントを超えているか、0 パーセント未満である。

解決方法

minfree パラメタをデフォルトの 10 パーセントに設定し、デフォルトプロンプトから y と入力する。エラー条件を無視するには、デフォルトプロンプトから n と入力する。


filename: BAD SUPER BLOCK: message
USE AN ALTERNATE SUPER-BLOCK TO SUPPLY NEEDED INFORMATION;
e.g., fsck[-f ufs] -o b=# [special ...]
where # is the alternate superblock.  See fsck_ufs(1M)
エラーの発生原因

スーパーブロックが破損している

解決方法

次のいずれかのメッセージが表示される場合は、ご購入先に問い合わせる。


CPG OUT OF RANGE
FRAGS PER BLOCK OR FRAGSIZE WRONG
INODES PER GROUP OUT OF RANGE
INOPB NONSENSICAL RELATIVE TO BSIZE 
MAGIC NUMBER WRONG 
NCG OUT OF RANGE 
NCYL IS INCONSISTENT WITH NCG*CPG 
NUMBER OF DATA BLOCKS OUT OF RANGE
NUMBER OF DIRECTORIES OUT OF RANGE
ROTATIONAL POSITION TABLE SIZE OUT OF RANGE
SIZE OF CYLINDER GROUP SUMMARY AREA WRONG
SIZE TOO LARGE 
BAD VALUES IN SUPERBLOCK

代替スーパーブロックを使用して fsck を再実行してみる。手始めにブロック 32 を指定するとよい。スライス上で newfs -N コマンドを実行すると、スーパーブロックの代替コピーの位置を調べることができる。-N を指定しないと、newfs は既存のファイルシステムを上書きするので注意する。


UNDEFINED OPTIMIZATION IN SUPERBLOCK (SET TO DEFAULT)
エラーの発生原因

スーパーブロックの最適化パラメタが OPT_TIME でも OPT_SPACE でもない。

解決方法

ファイルシステム上で処理の実行時間を最小限度まで短縮するには、SET TO DEFAULT プロンプトから y を入力する。このエラー条件を無視するには、n を入力する。