Hardware (UNIX server product)
1748202 メンバー
2857 オンライン
108759 解決策
新規ポスト

インスタンス番号重複について

 
N.Hanyu
貴重なコントリビューター

インスタンス番号重複について

DAT装置のインスタンス番号が、"1"になっていたため、

ioinitを用いて、"0"に変更しようとしたところ、

下記、ERRが出力されました。

ioinit:Instance number 0 already exists for class tape

そこで、質問ですが、ioscanで見る限り、

tapeのクラスには、インスタンス番号"1"

のものしかありません。

一応、stmでremapなどをしてみましたが、

結果は変わらずでした。

インスタンス番号"0"は、いったい何で使われて

いるか?もしくは、このような状況で、

インスタンス番号を上書きするなどの

やり方を教えてください。
12件の返信12
テレコム担当者
尊敬されているコントリビューター

インスタンス番号重複について

OS のバージョンはいくつですか?

古いバージョン(HP-UX10.X)などでバグがあったように記憶してます。

そのときは強制的にインスタンスを変更するためのプログラムが提供されました。

パッチが出来たかは知りません。
N.Hanyu
貴重なコントリビューター

インスタンス番号重複について

すいません。

かんじんなこと書いてないですね。

OSは、11.11です。

Ku_O
レギュラーアドバイザー

インスタンス番号重複について

おそらく以前他のインターフェースにつなげていたか、異なる SCSI ID にしていたテープドライブにインスタンス番号"0" が使われています。

そのあたりの情報は /etc/ioconfig と /stand/ioconfig ファイルに書かれていますが、バイナリファイルなので簡単には編集することはできません。

一度つなげたドライブを外す前に rmsf コマンドでそのあたりの情報を消しておくと、次に違うパスにドライブをつなげてもインスタンス番号"0"になるんですけどね。外してしまっているのであれば、rmsf -a <デバイスファイル名> でやってみるという手もありますが、うまく消えてくれるか自信がないです。

ではどうするかというと、ioinit というコマンドを使います。デバイスのリストを infile とかの名前でテキストファイルとして作っておき、2つの ioconfig ファイルを移動させた(消した)後にマシンを single user mode で起動します。起動したら、

# cd /stand

# /sbin/ioinit -c

# /sbin/ioinit -f /stand/infile

で、リブートします。ただ infile の作り方を間違えると正しく ioconfig ファイルが作れませんし、作り方もマシンと構成によっていろいろあるので、大変です。

もし OS インストール後ハードウェアの増設を一切やってないのであれば、ioconfig ファイルを移動後にリブートするだけで OK です。増設してるとその構成によってはディスクなど他のデバイスのインスタンス番号も変わってしまうことがあり、最悪立ち上がらなくなるかもしれません。

どれをやるにしても OS のバックアップを取ることを忘れずにしてください。
rawsq
貴重なコントリビューター

インスタンス番号重複について

インスタンス番号はデバイスを認識した順に相対的に割り当てられます。

つまり絶対的な場所を示すH/Wパスとクラス内で相対的な値であるインスタンスを紐付けしてそれを保持しています。

その後、デバイスを本体からはずしてもこの情報は保存されたままとなります。

今回ioscanで見えたデバイスは2台目のtapeであり、1台目が過去に接続されていたと考えられます。

使われてはいないのですが、「使われるかもしれない」ので割り当てられている状態です。
N.Hanyu
貴重なコントリビューター

インスタンス番号重複について

kuniさん

以下の作業を実行してみましたが、結果は駄目でした

# rm /stand/ioconfig /etc/ioconfig

# shutdown 0

# ioinit -c

# ioinit -f infile

結局、同じERRが出ます。

ちなみにinfileは、

デバイスパス tape 0

の構成で、0じゃないインスタンス番号には出来ます。

でのすで、infileの記述にも問題はないかと・・・。

むぅ困りました。。。
rawsq
貴重なコントリビューター

インスタンス番号重複について

以前使っていたtapeのH/Wパスがわかれば

# rmsf -H H/Wパス -k

# ioinit -f infile -r

infile

H/Wパス tape インスタンス番号

でいけると思います。
N.Hanyu
貴重なコントリビューター

インスタンス番号重複について

 rawsqさん

># rmsf -H H/Wパス -k

># ioinit -f infile -r

やってみましたが、同様のERRが出力されました。

rmsf自体は、何のERRもなくプロンプトが戻ってきたので、

期待したのですが・・・。

 

rawsq
貴重なコントリビューター

インスタンス番号重複について

>やってみましたが、同様のERRが出力されました。

rmsfで利用するH/Wパスは「以前の」H/Wパスとなります。

「現在」ioscanで見えているものではありません。

「以前の」パスを利用しても×だったのでしょうか?
N.Hanyu
貴重なコントリビューター

インスタンス番号重複について

rawsqさん

以前のH/Wパスを使用しましたが、駄目でした。