JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris 11.1 システムのブートおよびシャットダウン     Oracle Solaris 11.1 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  システムのブートとシャットダウン (概要)

2.  x86: GRand Unified Bootloader の管理 (タスク)

3.  システムのシャットダウン (タスク)

4.  システムのブート (タスク)

ブート属性の表示と設定

SPARC: OpenBoot PROM を使用したブート属性の表示と設定

SPARC: システムの PROM リビジョン番号を確認する方法

SPARC: システム上のデバイスを確認する方法

SPARC: デフォルトのブートデバイスを調べる方法

SPARC: ブート PROM を使用してデフォルトのブートデバイスを変更する方法

EEPROM パラメータの設定

SPARC: eeprom ユーティリティーを使用してデフォルトのブートデバイスを設定する方法

x86: SMF によるシャットダウンアニメーションの管理

システムのブート

実行レベルの動作

システムがマルチユーザー状態 (実行レベル 3) にブートされたときの処理

実行レベルとマイルストーンの使い分け

システムの現在の実行レベルの確認

システムをマルチユーザー状態 (実行レベル 3) にブートする方法

システムをシングルユーザー状態 (実行レベル S) にブートする方法

システムを対話式でブートする方法

代替のオペレーティングシステムまたはブート環境からのブート

SPARC: 代替のオペレーティングシステムまたはブート環境からブートする方法

x86: 代替のオペレーティングシステムまたはブート環境からブートする方法

システムのリブート

init コマンドを使用してシステムをリブートする方法

reboot コマンドを使用してシステムをリブートする方法

リブートプロセスの高速化

x86: quiesce 関数について

システムの高速リブートを開始する方法

x86: 新しくアクティブにしたブート環境へのシステムの高速リブートを開始する

デフォルトの高速リブートの動作を変更する

高速リブートが有効化済みのシステムの標準リブートの開始

5.  システムのネットワークからのブート (タスク)

6.  システムのブートのトラブルシューティング (タスク)

索引

システムのリブート

このセクションでは次の手順について説明します。

通常、システムは電源投入時またはシステムクラッシュのあとにリブートします。システムをリブートするには、init コマンドまたは reboot コマンドを使用できます。init 6 コマンドは停止方法 (SMF または rc.d) を必要とします。一方、reboot コマンドでは必要としないため、reboot コマンドはシステムをリブートするためのより信頼できる方法になります。詳細は、init(1M) および reboot(1M) を参照してください。

reboot は次の操作を実行します。

root ユーザーはいつでも reboot コマンドを使用できますが、サーバーのリブートなどの特定の状況では、システムにログインしているすべてのユーザーにすぐにサービスが失われることを警告するために、最初に shutdown コマンドを使用します。詳細は、第 3 章システムのシャットダウン (タスク)を参照してください。

init コマンドを使用してシステムをリブートする方法

システムは常に定義済み実行レベルの 1 つで動作します。実行レベルは init プロセスによって維持されるため、実行レベルは「init 状態」と呼ばれることもあります。init コマンドを使用すると、実行レベルの移行を開始できます。init コマンドを使用してシステムをリブートする場合は、マルチユーザーのシステム状態として実行レベル 2、3、および 4 を使用できます。「実行レベルの動作」を参照してください。

init コマンドは、システム上のすべてのアクティブなプロセスを終了し、ディスクを同期させてから実行レベルを変更する実行可能シェルスクリプトです。init 6 コマンドは、オペレーティングシステムを停止し、/etc/inittab ファイルの initdefault エントリに定義されている状態にリブートします。


注 - Oracle Solaris 11 リリースから、SMF サービス svc:/system/boot-config:default はデフォルトで有効になっています。 config/fastreboot_default プロパティーが true に設定されている場合 (すべての x86 ベースのシステムの場合) に init 6 コマンドは、システムの特定の機能に応じて、特定のファームウェア初期化手順およびテスト手順を省略します。SPARC ベースのシステムでは、このプロパティーはデフォルトで false に設定されますが、プロパティーを手動で有効にできます。「リブートプロセスの高速化」を参照してください。


  1. root 役割になります。

    『Oracle Solaris 11.1 の管理: セキュリティーサービス』の「割り当てられている管理権限を使用する方法」を参照してください。

  2. システムをリブートします。
    • /etc/inittab ファイルの initdefault エントリによって定義された状態にシステムをリブートするには、次のコマンドを入力します。
      # init 6
    • システムをマルチユーザー状態にリブートするには、次のコマンドを入力します。
      # init 2

例 4-12 init コマンドを使用してシステムをシングルユーザー状態 (実行レベル S) にリブートする

この例では、init コマンドを使用して、システムをシングルユーザー状態 (実行レベル S) にリブートします。

~# init s
~# svc.startd: The system is coming down for administration.  Please wait.
Jul 20 16:59:37 system-04 syslogd: going down on signal 15
svc.startd: Killing user processes.
Requesting System Maintenance Mode
(See /lib/svc/share/README for more information.)
SINGLE USER MODE

Enter user name for system maintenance (control-d to bypass): root
Enter root password (control-d to bypass): xxxxxx
single-user privilege assigned to root on /dev/console.
Entering System Maintenance Mode

Jul 20 17:11:24 su: 'su root' succeeded for root on /dev/console
Oracle Corporation      SunOS 5.11      11.1    June 2012
You have new mail.
~# who -r
   .       run-level S  Jul 20 17:11     S      1  3

reboot コマンドを使用してシステムをリブートする方法

この手順を使用して、実行中のシステムをマルチユーザー状態 (実行レベル 3) にリブートします。


注 - x86 プラットフォームで、reboot コマンドを使用して、システムの高速リブートを開始し、BIOS または UEFI ファームウェアと特定のブートプロセスをバイパスします。高速リブート機能が有効になっている x86 ベースシステムの標準リブートを実行するには、reboot コマンドで -p オプションを使用します。「高速リブートが有効化済みのシステムの標準リブートの開始」を参照してください。


  1. root 役割になります。

    『Oracle Solaris 11.1 の管理: セキュリティーサービス』の「割り当てられている管理権限を使用する方法」を参照してください。

  2. システムをリブートします。
    # reboot

リブートプロセスの高速化

Oracle Solaris の高速リブート機能は、SPARC プラットフォームと x86 プラットフォームの両方でサポートされています。高速リブート機能では、カーネルをメモリーにロードしてからそのカーネルに切り替えるインカーネルブートローダーを実装することにより、リブート処理を数秒で実行できます。

高速リブート機能のサポートは、新しい boot-config サービス svc:/system/boot-config:default によって強化されています。このサービスによって、システムのデフォルトのブート構成プロパティーを必要に応じて設定または変更するための手段が提供されます。config/fastreboot_default プロパティーが true に設定されている場合は、システムが自動的に高速リブートを実行します。デフォルトでこのプロパティーは、x86 ベースのシステムでは true に設定され、SPARC ベースのシステムでは false に設定されています。

x86 ベースのシステムで、システムの高速リブートは、システムファームウェア (BIOS または UEFI) とブートローダープロセスをバイパスします。高速リブートとパニック高速リブート (システムパニックのあとのシステムの高速リブート) が x86 プラットフォームではデフォルトで有効になっているため、x86 ベースシステムの高速リブートを開始するために reboot コマンドで -f オプションを使用する必要はありません。

SPARC ベースシステムの高速リブート機能は、x86 ベースシステムとは異なる方法で動作します。SPARC プラットフォームでの高速リブートのサポートに関する次の追加情報に注目してください。

x86: quiesce 関数について

新しい OS イメージのブート時にファームウェアをバイパスするシステムの機能は、デバイス動作の新しいエントリポイントである quiesce のデバイスドライバの実装に依存しています。サポートされているドライバでは、この実装によってデバイスが休止されるため、関数の完了時にそのドライバによって割り込みが生成されなくなります。この実装ではまた、デバイスがハードウェア状態にリセットされます。この状態からは、システムの電源を切ってすぐに入れ直したり、ファームウェアで構成したりしなくても、ドライバの attach ルーチンによってそのデバイスを正しく構成できます。この機能についての詳細は、quiesce(9E) および dev_ops(9S) のマニュアルページを参照してください。


注 - すべてのデバイスドライバで quiesce 関数が実装されているわけではありません。トラブルシューティング手順については、「x86: 高速リブートが機能しない可能性のある状況」および「x86: 高速リブートをサポートしないシステムのブートアーカイブの自動更新障害を解決する方法」を参照してください。


システムの高速リブートを開始する方法

  1. root 役割になります。

    『Oracle Solaris 11.1 の管理: セキュリティーサービス』の「割り当てられている管理権限を使用する方法」を参照してください。

  2. システムのプラットフォームに応じて、次のいずれかを実行します。
    • SPARCベースのシステムでは、次のコマンドを入力します。
      # reboot -f
    • x86 ベースのシステムでは、次のいずれかのコマンドを入力します。
      # reboot
      # init 6

      これらのいずれかのコマンドを実行すると、システムが grub.cfg ファイルのデフォルトのエントリにリブートします。

x86: 新しくアクティブにしたブート環境へのシステムの高速リブートを開始する

代替ブート環境への x86 ベースシステムの高速リブートを実行するには、複数の方法を使用できます。次の例は、これらの方法のいくつかを示しています。

例 4-13 x86: 新しくアクティブにしたブート環境へのシステムの高速リブートを開始する

次の例は、新しくアクティブになったブート環境 2012-06-10-be にシステムの高速リブートを開始する方法を示しています。

# beadm activate 2012-06-10-be
# reboot

例 4-14 x86: 代替ブート環境の指定によるシステムの高速リブートの開始

代替ブート環境 (たとえば、zfsbe2) にシステムを高速リブートするには、次のコマンドを入力します。

# reboot -- 'rpool/zfsbe2'

rpool/zfsbe1 という名前のデータセットへのシステムの高速リブートを開始するには、次のコマンドを入力します。

# reboot -- 'rpool/zfsbe1'

たとえば、次のように、代替 ZFS ルートデータセットへのシステムの高速リブートを開始します。

# reboot -- 'rpool/ROOT/zfsroot2'

例 4-15 x86: カーネルデバッガを有効にした状態での代替ブート環境へのシステムの高速リブートの開始

次のように、zfsbe3 ブート環境へのシステムの高速リブートを開始します。

# reboot -- 'rpool/zfsbe3 /platform/i86pc/kernel/amd64/unix -k'

例 4-16 x86: 新しいカーネルへのシステムの高速リブートの開始

次のように、my-kernel という名前の新しいカーネルへのシステムの高速リブートを開始します。

# reboot -- '/platform/i86pc/my-kernel/amd64/unix -k'

例 4-17 x86: マウントされたディスクまたはマウントされたデータセットの高速リブートの開始

次のように、マウントされたディスクまたはマウントされたデータセットの高速リブートを開始します。

# reboot -- '/mnt/platform/i86pc/my-kernel/amd64/unix -k'

例 4-18 x86: カーネルデバッガを有効にした状態での、シングルユーザー状態へのシステムの高速リブートの開始

次のように、カーネルデバッガを有効にした状態での、シングルユーザー状態へのシステムの高速リブートを開始します。

# reboot -- '-ks'

デフォルトの高速リブートの動作を変更する

高速リブート機能は SMF によって制御され、ブート構成サービス svc:/system/boot-config を通して実装されます。boot-config サービスは、デフォルトのブートパラメータを設定または変更するための手段を提供します。

boot-config サービスの fastreboot_default プロパティーを使用すると、reboot コマンドまたは init 6 コマンドのいずれかが使用されている場合のシステムの自動高速リブートが有効になります。config/fastreboot_default プロパティーを true に設定すると、システムは高速リブートを自動的に実行するため、reboot -f コマンドを使用する必要はありません。デフォルトでこのプロパティーの値は、x86 ベースのシステムでは true に設定され、SPARC ベースのシステムでは false に設定されています。

例 4-19 x86: boot-config サービスのプロパティーの構成

svc:/system/boot-config:default サービスは、次のプロパティーで構成されています。

これらのプロパティーは、svccfg および svcadm コマンドを使用して、構成できます。

たとえば、x86 ベースシステム上の fastreboot_onpanic プロパティーのデフォルト動作を無効にするには、次に示すように、このプロパティーの値を false に設定します。

# svccfg -s "system/boot-config:default" setprop config/fastreboot_onpanic=false
# svcadm refresh svc:/system/boot-config:default

あるプロパティーの値を変更しても、ほかのプロパティーのデフォルト動作には影響を与えません。

SMF を介したブート構成サービスの管理については、svcadm(1M) および svccfg(1M) のマニュアルページを参照してください。

例 4-20 SPARC: boot-config サービスのプロパティーの構成

次の例に、boot-config SMF サービスプロパティーを true に設定して、SPARC ベースのシステムで高速リブートをデフォルトの動作にする方法を示します。

# svccfg -s "system/boot-config:default" setprop config/fastreboot_default=true
# svcadm refresh svc:/system/boot-config:default

プロパティーの値を true に設定すると、リブートプロセスが高速化するため、高速リブート機能をサポートするシステムで特定の POST テストをバイパスできます。プロパティーが true に設定されている場合、reboot コマンドで -f オプションを使用しなくてもシステムの高速リブートを実行できます。

高速リブートが有効化済みのシステムの標準リブートの開始

高速リブート機能が有効になっているシステムをリブートするには、この機能を無効にするように boot-config サービスを再構成するのではなく、次に示すように reboot コマンドで -p オプションを使用します。

# reboot -p