ホットプラグ対応の周辺機器を追加するのではないかぎり、周辺機器を取り付ける前にシステムを停止して電源を切る必要があります。
オペレーティングシステムを停止する前に、システムで実行されているアプリケーションをすべて終了し、開いているファイルを閉じてください。
システムを停止する前に、以下の停止コマンドの中から、システムおよび実施する作業に対して適切なものを選択する必要があります。
/sbin/init
/usr/sbin/shutdown
/usr/sbin/halt
/usr/sbin/reboot
それぞれのシステム停止コマンドの定義については、表 1-2 を参照してください。
これらのコマンドは、システム停止手順を開始し、実行中の処理をすべて終了し、データをディスクに書き込み、システムソフトウェアを適切な実行レベルに停止します。
init と shutdown は、実行中の処理を終了するために rc スクリプトを使用し、データの喪失を最小限に抑えてシステムを停止するため、システムを停止する方法としては最も信頼性のある方法です。halt コマンドと reboot コマンドは、rc スクリプトを適切に実行しないため、システムを停止する方法として望ましくありません。
rc スクリプトについての詳細は、『Solaris のシステム管理 (第 1 巻)』を参照してください。
表 1-2 に、各システム停止コマンドの説明を示します。システムの停止手順については、「init でシングルユーザーシステムを停止する」と 「shutdown でマルチユーザーシステムを停止する」を参照してください。
表 1-2 システムの停止コマンド
コマンド |
機能 |
---|---|
init n |
init コマンドは、警告する必要があるユーザーが存在しないシステムを停止したり、実行レベルを変更したりするために使用します。たとえば、init 6 はシステムを再起動します。詳細は、「実行レベル」を参照してください。 |
shutdown |
shutdown コマンドは、マルチユーザーシステムを停止する場合に使用します。shutdown コマンドは、ログイン中のすべてのユーザーに警告メッセージを送信し、60 秒 (デフォルト) 待ってから、システムを停止してシングルユーザー状態にします。「shutdown でマルチユーザーシステムを停止する」の手順を参照してください。 |
halt |
halt コマンドは、システムをただちに停止する必要があり、使用中のユーザーに対して警告しなくてよいときに使用します。halt コマンドは、遅延なくシステムを停止します。システム上のどのようなユーザーに対しても警告しません。rc ディレクトリから停止スクリプトを実行することもありません。 |
reboot |
reboot コマンドは、シングルユーザーシステムを停止して、マルチユーザー状態にするために使用します。reboot は、システム上の他のユーザーに警告を出しません。reboot は、rc ディレクトリからカスタマイズされた停止スクリプトを実行することもありません。 |
実行レベルは、ユーザーが利用できるサービスと資源を定義します。システムが同時に複数の実行レベルになることはありません。各実行レベルの定義については、後の表を参照してください。
init および shutdown コマンドでは、システムサービスを制御するために実行レベル番号が使用されます。複数のユーザーまたはクライアントを持つシステムを停止するには、init コマンドを使用します。また、実行レベルを変更するためにも init コマンドを使用します。shutdown コマンドで -i オプションを使用し、実行レベルを引数として指定することもできます。
表 1-3 実行レベル
実行レベル |
システムの状態 |
説明 |
---|---|---|
0 |
監視モード |
オペレーティングシステムは停止し、システムは ok プロンプトを表示します。システムの電源を安全に切ることができます。 |
3 |
マルチユーザーモード |
オペレーティングシステムは完全に起動します。すなわち、マルチユーザー、ネットワークアクセス、ファイルシステム、イベントの記録などを実行するために必要なすべてのプロセスが起動されます。このレベルでシステムの電源を切るのは危険です。 |
5 |
自動電源切断 |
オペレーティングシステムは停止し、自動的に電源が切られます (対応システムのみ)。 |
6 |
再起動 |
オペレーティングシステムは実行レベル 0 になり、その後で /etc/inittab ファイルの指定に従ってデフォルトの実行レベル (一般的に実行レベル 3) になります。 |
s、S、1 |
シングルユーザーモード |
オペレーティングシステムは保守モードになります。このモードでは、システムの基本的な機能の実行に必要なわずかな数のプロセスしか起動されません。/、/usr 、/proc ファイルシステムだけマウントされ、共有される nfs ファイルシステムはありません。スーパーユーザーのみログインが許可されます。 このレベルで、システムの電源を切るのは危険です。 |
実行レベルを確認するには、who -r コマンドを使用します。
次の例では、システムが実行レベル 3 のマルチユーザーモードであることが示されています。
# who -r . run-level 3 Apr 24 10:44 S 0 S
who コマンドは、実行レベル 0 のときには有効ではありません。
ここでは、シングルユーザーシステムを停止する方法を説明します。
init はユーザーに警告メッセージを送信しません。
必ず最初にシステムを準備してください。詳細は、「システムを準備する」 を参照してください。
スーパーユーザーになります。
システム上で実行中のすべてのアプリケーションを停止し、開いているファイルを閉じます。
# init 0
このコマンドは、データをディスクに書き込み、すべての実行中のプロセスを終了し、システムを監視モードにして、ok プロンプトを表示します。
ok Do you want to continue? (y or n): y
新たに取り付ける周辺機器が SCSI デバイスの場合は、手順 6 に進みます。新しいボードを取り付ける場合は、第 5 章「カードの設定」に進みます。
reset コマンドを入力してから Stop-A を押して、SCSI バスをリセットします。
ok reset
バナーが表示されたら、すぐに Stop-A を押します。
reset コマンド (システムによっては reset-all) は、SCSI バスとメモリーをリセットして、probe-scsi による検索が確実に行われるようにします。 Stop-A キーシーケンスは、通常 reset コマンドによって起動される再起動処理に割り込みます。この方法によって、probe-scsi コマンドを実行するために実行レベル 0 にとどまることができます。
probe-scsi または probe-scsi-all コマンドを使用する前に、ディスクドライブやテープドライブなどのすべての SCSI デバイスの電源を入れてください。probe-scsi コマンドは、接続されている SCSI デバイスに電源が入っている場合のみ、そのデバイスを検出することができます。
以下のように入力して、SCSI バスで現在使用されている SCSI ターゲット ID を表示します。
ok probe-scsi
システム上に複数の SCSI バスがある場合は、probe-scsi-all コマンドを使用してください。このコマンドは、すべての SCSI バスの SCSI デバイスを調べます。
新しい周辺機器用に、使用されていない SCSI ターゲット ID を選択します。
すでに割り当てられているターゲット ID に注意し、新しいデバイス用に未使用のターゲット ID を選択します。SCSI ターゲット ID の選択については、付録 A 「SCSI アドレスの概念」を参照してください。
ok プロンプトが表示されたら、システムの電源を切り、その後ですべての外部周辺機器の電源を切ります。
これで、周辺機器を取り付ける準備ができました。ハードウェアに付属しているマニュアルと、このマニュアルの以下の節を参照してください。
/usr/sbin/shutdown コマンドは、サーバーを停止する前にユーザーに通知する必要がある場合に使用します。
ここでは、サーバーなどのマルチユーザーシステムを停止する方法を説明します。
スーパーユーザーになります。
以下のように入力し、システムにログインしているユーザーがいるかどうか確認します。
# who
ログインしているすべてのユーザーの一覧が表示されます。電子メールの送信やメッセージのブロードキャストによって、システムを停止することをユーザーに知らせることができます。
システムで実行されているすべてのアプリケーションを終了し、開いているファイルを閉じます。
以下のように入力し、システムの電源を入れるか再起動したときに新しく取り付けた周辺機器をオペレーティングシステムが確実に認識できるようにします。
# touch /reconfigure
touch /reconfigure コマンドを実行することによって、起動時に boot -r コマンドと同じ機能が実行されます。このコマンドを実行すると、再起動時に新しく取り付けたすべての周辺機能が、システムによって認識されます。
# /usr/sbin/shutdown -y -g猶予期間 -i実行レベル
shutdown |
デフォルトでは、システムを実行レベル s (シングルユーザーモード) にします。メッセージがすべてのユーザーにブロードキャスト送信されます。60 秒後 (デフォルト) に、システムを停止してもよいか確認を求めるメッセージが表示されます。 |
-y |
ユーザーの介在なしにシステムの停止処理を継続します。これを指定しないと、停止処理の継続を確認するメッセージが表示されます。 |
-g猶予期間 |
システムが停止するまでの時間を秒単位で指定します。デフォルトは 60 秒です。猶予期間に数値を指定してください。 |
-i実行レベル |
システムの実行レベルを、デフォルトとは異なる値に設定します。 (実行レベルの詳細は 表 1-3 を参照してください。) 数値レベルに数値を指定してください。 |
次の例では、システムは、特別の確認を必要とせずに 3 分後に実行レベル 0 に移行します。
# /usr/sbin/shutdown -y -g180 -i0 Shutdown started. Fri Nov 4 11:07:33 MST 1994 Broadcast Message from root (console) on pluto Fri Nov 4 11:07:34 The system will be shut down in 3 minutes . . . INIT: New run level: 0 The system is coming down. Please wait. . . . The system is down. syncing file systems... [11] [9] [5] done Program terminated Type help for more information ok
ok Do you want to continue? (y or n): y
新しい SCSI 機器を取り付ける場合は、手順 8 に進みます。 新しいカードを取り付ける場合は、第 5 章「カードの設定」の手順に進みます。
ok reset
バナーが表示されたら、すぐに Stop-A を押します。
reset コマンド (システムによっては reset-all) は、 SCSI バストとメモリーをリセットして、probe-scsi による検索が確実に行われるようにします。 Stop-A キーシーケンスは、reset コマンドによって通常起動される 再起動処理を中断します。このようにして、実行レベル 0 にとどまることによって、コマンドを実行できます。
probe-scsi または probe-scsi-all コマンドを使用する前に、ディスクドライブやテープドライブなど、すべての SCSI デバイスの電源を入れてください。オペレーティングシステムは、接続されて電源が入っている SCSI デバイスだけを検出します。
以下のように入力して、現在使用中の SCSI ターゲット ID を一覧表示します。
ok probe-scsi
システムに複数の SCSI バスがある場合は、probe-scsi-all コマンドを使用してください。このコマンドは、ホストバスを含めたすべてのバスの SCSI デバイスを調べます。
新しい周辺機器用に、使用されていない SCSI ターゲット ID を選択します。
すでに割り当て済みのターゲット ID に注意し、周辺機器の SCSI スイッチまたはジャンパーを設定するために未使用のターゲット ID を選択します。ターゲット ID の選択については、付録 A 「SCSI アドレスの概念」を参照してください。
ok プロンプトが表示されたら、システムの電源を切り、続けてすべての外付け周辺機器の電源を切ります。
これで、周辺機器の取り付けを行う準備ができました。ハードウェアに添付されている説明書と、以下に示すこのマニュアルの該当する節を参照してください。