Oracle Solaris は、電子メールとネットワークリソースをいつでも利用できるように、停止することなく動作するように設計されています。この章では、システムのシャットダウンとブートについて概要を説明します。
この章の内容は次のとおりです。
Oracle Solaris リリースで利用できるすべてのブート機能および方法の概要は、第 9 章システムのシャットダウンとブート (概要)を参照してください。
システムのブート手順については、第 12 章Oracle Solaris システムのブート (手順)を参照してください。
この節では、この Oracle Solaris リリースでの新しいブート機能について説明します。Oracle Solaris リリースの新機能の完全な一覧やその説明については、『Oracle Solaris 10 9/10 の新機能』を参照してください。
Oracle Solaris 10 9/10: Oracle Solaris 自動登録機能は、インストールやアップグレード後の初回システムブート時、またシステム構成が変更された場合にはその後のシステムリブート時に、新規インストールされたソフトウェア製品が My Oracle Support に自動的に登録される機構です。自動登録には、ネットワーク上で製品を検出してローカルレジストリに登録することを可能にする、既存のサービスタグ技術が利用されます。
自動登録機能は、SMF サービスにより管理されます。このサービスはデフォルトで有効になっており、ブート時に 1 回実行されて、新規インストールされた製品を確認します。新製品が検出されると、これらの製品に関するサービスタグ情報が、HTTPS (Hypertext Transfer Protocol Secure) 接続を使って Oracle 製品登録システムに自動的に転送されます。
特権を持つシステム管理者は、この機能に含まれるコマンド行インタフェース (CLI) usr/sbin/regadm を使って、インストールやアップグレードプロセスとは関係なく、自動登録 SMF サービスや製品登録を管理できます。
詳細は、第 17 章Oracle Solaris 自動登録コマンド regadm の操作 (手順)を参照してください。
Oracle Solaris 10 9/10: このリリースから、SPARC プラットフォームのブートアーカイブ復旧が自動化されました。
x86 プラットフォームでブートアーカイブの自動復旧をサポートするために、新しい auto-reboot-safe プロパティーがブート構成サービス svc:/system/boot-config:default に追加されています。 デフォルトでは、不明なブートデバイスからシステムが自動的にリブートすることがないよう、このプロパティーの値は false に設定されています。Oracle Solaris 10 がインストールされている BIOS ブートデバイスと GRUB メニューエントリを自動的に指し示すようにシステムが構成されている場合は、プロパティーの値を true に設定できます。 この値を true に設定すると、期限切れのブートデバイスを復旧する目的で、システムを自動的にリブートできるようになります。
このプロパティーの値を設定または変更するには、svccfg および svcadm コマンドを使用します。svccfg(1M) および svcadm(1M) のマニュアルページを参照してください。
この拡張機能の一般的な情報については、boot(1M) のマニュアルページを参照してください。
手順については、「x86: auto-reboot-safe プロパティーを使用して自動ブートアーカイブ更新障害を消去する方法」を参照してください。
Oracle Solaris 10 9/10: このリリースから itu ユーティリティーが変更され、インストール時更新 (ITU) を使用した SPARC システムのブートがサポートされるようになりました。ほかのベンダーは、ドライバの更新をフロッピーディスク、CD、DVD、および USB ストレージで配布できます。また、新しいパッケージやパッチを使って Oracle Solaris インストールメディアを変更可能な新規ツールも導入されました。これらのツールを使って、ハードウェアプラットフォーム用のソフトウェア更新を配布したり、カスタマイズしたインストールメディアを生成したりできます。作業に関する情報は、「SPARC: 新規作成した ITU を使ってシステムをブートする方法」を参照してください。
また、次のマニュアルページも参照してください。
iSCSI ブート機能を使用すると、遠隔地 (ストレージディスクアレイなど) からネットワーク経由でオペレーティングシステムを初期化できます。iSCSI ブートは、SPARC と x86 の両方のシステムからのブートをサポートしています。通常、iSCSI ブートはイニシエータまたはディスクレスクライアントにロードされます。ハードディスクはネットワークに接続された SCSI ターゲット上に存在します。この機能では標準の Ethernet ベースのインフラストラクチャが使用されるため、データ、ストレージ、およびネットワークトラフィックを標準のネットワークに集約できます。
iSCSI ブートを使用した SPARC システムのネットワークブートは、通常の SPARC ネットワークブートと次の点で異なります。
iSCSi ブートプロセスは、ネットワークブートとローカルディスクからのブートを組み合わせたプロセスである。
Oracle Solaris OS は、ネットワーク経由ではなくローカルディスクからブートする。
iSCSI ブートを使用した x86 システムのネットワーク経由でのブートは、通常の x86 ネットワークブートと次の点で異なります。
GRUB ベースのネットワークブートには、PXE クライアント用に構成された DHCP サーバーが必要だが、iSCSI ブートには不要である。ただし、iSCSI ブートで DHCP サーバーを使用することも可能である。
PXE ブートにはミニルートまたは RAM ディスクのイメージを提供するブートサーバーが必要であるが、iSCSI ブートには不要である。詳細は、「x86: GRUB ベースのブートをネットワークから実行する方法」を参照してください。
このリリースで利用可能な iSCSI ブート機能の使用方法については、http://wikis.sun.com/display/OpenSolarisInfo/iSCSI+Boot+for+OpenSolaris+User%27s+Guide を参照してください。
10 10/09: 以前の Solaris リリースでは、1T バイトを超えるディスクに Solaris OS をインストールしてブートすることはできませんでした。この リリースからは、最大 2 T バイトのディスクに Oracle Solaris OS をインストールしてブートできます。以前のリリースでは、1T バイトを超えるディスクには EFI ラベルを使用する必要がありました。このリリースでは、どのサイズのディスクでも VTOC ラベルを使用できます。ただし、VTOC ラベルでアドレス指定可能な領域は 2T バイトに制限されます。
詳細は、『Solaris のシステム管理 (デバイスとファイルシステム)』の「ディスク管理の新機能」を参照してください。
Solaris 10 10/08: このリリースには、Oracle Solaris ZFS インストール、および ZFS ブートサポートが含まれます。ZFS ルートファイルシステムをインストールしてブートできるようになりました。この拡張機能は、SPARC プラットフォームと x86 プラットフォームの両方に適用されます。ブート方法、システム操作、およびインストール手順は、この変更をサポートするように修正されました。
詳細は、「Oracle Solaris ZFS ルートファイルシステムからのブート」を参照してください。
Solaris Live Upgrade など、すべての Oracle Solaris インストール方法では、ブート対象の x86 システム上のディスクスライスを指定する際に findroot コマンドを使用するようになりました。 この実装は、UFS ルートだけでなく Oracle Solaris ZFS ルートを含むシステムのブートもサポートします。以前は、root コマンド、 root (hd0.0.a) を使ってブート対象のディスクスライスを明示的に指定していました。この情報は、GRUB で使用される menu.lst ファイルに格納されています。
GRUB menu.lst エントリのもっとも一般的な書式は次のとおりです。
findroot (rootfs0,0,a) kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS module$ /platform/i86pc/$ISADIR/boot_archive |
一部の Oracle Solaris 10 リリースでは、このエントリは次のようになります。
findroot (pool_rpool,0,a) kernel$ /platform/i86pc/multiboot -B $ZFS-BOOTFS module /platform/i86pc/boot_archive |
詳細は、「x86: findroot コマンドの実装」を参照してください。
bootadm コマンドに -p オプションが新たに追加されました。
このオプションを使用すると、クライアントプラットフォームがサーバープラットフォームと異なる場合 (ディスクレスクライアントを管理している場合など) に、クライアントシステムのプラットフォームまたはマシンのハードウェアクラスを指定できます。
-p オプションは、-R オプションと組み合わせて使用する必要があります。
# bootadm -p platform -R [altroot] |
次のいずれかのプラットフォームを指定します。
i86pc
sun4u
sun4v
詳細は、bootadm(1M) のマニュアルページを参照してください。
Oracle SPARC ブートストラッププロセスは、Solaris x86 ブートアーキテクチャーとの共通性を高めるために再設計されました。
そのほかの機能拡張として、ブートアーキテクチャーの改善があげられます。DVD、NFS、または HTTP からシステムをブートできるだけでなく、追加のファイルシステムタイプ (Oracle Solaris ZFS ファイルシステムなど) やインストール用の単一のミニルートからもブートできるようなりました。これらの機能拡張により、SPARC システムの柔軟性が向上し、保守の必要性が軽減されます。
この再設計の一貫として、以前は x86 プラットフォームでしか使用できなかったブートアーカイブと bootadm コマンドが SPARC ブートアーキテクチャーに不可欠な要素となりました。
SPARC と x86 のブートアーキテクチャーの主な違いは、ブート時のブートデバイスおよびファイルの選択方法です。SPARC プラットフォームでは、引き続き OpenBoot PROM (OBP) を主要な管理インタフェースとして使用し、OBP コマンドを使ってブートオプションを選択します。x86 システムでは、BIOS と GRUB (GRand Unified Bootloader) メニューを介してブートオプションを選択します。
SPARC ブートプロセスは変更されましたが、SPARC システムをブートするための管理手順にはまったく影響はありません。システム管理者が行うブート作業は、ブートアーキテクチャーを設計し直す前と何も変わりません。
詳細は、boot(1M) および bootadm(1M) のマニュアルページを参照してください。
また、このマニュアルの 「新しい SPARC ブートアーキテクチャーについて」も参照してください。
x86 システムで電源ボタンを押して離すと、システムの正常なシャットダウンが開始され、システムの電源が切れます。この機能は、init 5 コマンドを使ってシステムをシャットダウンするのと同等です。一部の x86 システムでは、BIOS の設定によって、電源ボタンを押してもシャットダウンが開始されない可能性があります。電源ボタンを使ってシステムの正常なシャットダウンを実行できるようにするには、BIOS を設定し直します。
1999 年よりも前に製造され、かつ古い リリースが稼働する一部の x86 システム上では、電源ボタンを押すとすぐにシステムの電源が切れてしまい、正しくシャットダウンされません。acpi-user-options によって無効化された ACPI サポートを使用して稼働しているシステム上で電源ボタンを押しても、これと同じ動作が起こります。
acpi-user-options の詳細は、eeprom(1M) のマニュアルページを参照してください。
システムをシャットダウンおよびブートする手順については、次を参照してください。
シャットダウンとブート作業 |
詳細 |
---|---|
SPARC システムまたは x86 システムのシャットダウン | |
ブート動作の変更 | |
SPARC システムまたは x86 システムのブート | |
Solaris ブートアーカイブの管理 | |
SPARC または x86 システムでのブート動作のトラブルシューティング |
この節では、システムのシャットダウン時およびブート時に使用する用語について説明します。
「実行レベル」とは、システムの状態を表す文字または数字のことで、どのシステムサービスを使用できるのかを示します。システムは常に定義済み実行レベルの 1 つで動作します。実行レベルは init プロセスによって維持されるため、実行レベルは「init 状態」と呼ばれることもあります。システム管理者は、init コマンドまたは svcadm コマンドを使用して、実行レベルを変更します。このマニュアルでは、init 状態を実行レベルと呼びます。
「ブートオプション」とは、システムのブート方法を表します。
次のようなブートオプションがあります。
対話式ブート – システムのブート方法に関する情報 (カーネルやデバイスのパス名など) を入力するプロンプトが表示されます。
再構成ブート – システムが再構成され、新しく追加されたハードウェアや新しい擬似デバイスがサポートされるようになります。
回復ブート – システムがハング状態になったとき、無効なエントリがあるためシステムが正常にブートできないとき、またはユーザーがログインできないときに使用します。
GRUB ベースのブート特有の用語については、「x86: GRUB の用語」を参照してください。
システムをシャットダウンするときは、次の点に注意してください。
システムのシャットダウンには、init および shutdown コマンドを使用します。これらのコマンドは、すべてのシステムプロセスとサービスを正常に終了させてからシャットダウンします。
Solaris 10 6/06 以降のリリースが稼働する x86 システムでは、電源ボタンを押して離すことで、システムの正常なシャットダウンを開始できます。この方法で x86 システムをシャットダウンすることは、init 5 コマンドを使ってシステムをシャットダウンするのと同等です。一部の x86 システムでは、BIOS の設定によって、電源ボタンを押してもシステムのシャットダウンが開始されない可能性があります。電源ボタンを使用するには、BIOS を設定し直します。
サーバーをシャットダウンする場合は、shutdown コマンドを使用します。ログインしているユーザーやサーバーのリソースをマウントしているシステムは、サーバーがシャットダウンされる前に通知を受けます。システムのシャットダウンについては、ユーザーが予定を立てられるようあらかじめ電子メールで知らせておくようにします。
shutdown または init コマンドを使用してシステムをシャットダウンするには、スーパーユーザー権限が必要です。
shutdown および init コマンドはどちらも実行レベルを引数に指定します。
もっともよく使用される実行レベルは次の 3 つです。
実行レベル 3 – すべてのシステムリソースを使用でき、ユーザーもログインできます。デフォルトでは、システムをブートすると実行レベル 3 になります。通常の運用で使用されます。この実行レベルは、NFS リソースを共有できるマルチユーザーレベルとも呼ばれます。
実行レベル 6 – オペレーティングシステムを停止して、/etc/inittab ファイルの initdefault エントリに定義されている状態でリブートします。
実行レベル 0 – オペレーティングシステムがシャットダウンされ、安全に電源が切断されます。システムの設置場所を変更したり、ハードウェアを追加または削除する場合は、システムを実行レベル 0 にする必要があります。
実行レベルの詳細は、第 18 章サービスの管理 (概要)を参照してください。
システムをブートするときは、次の点に注意してください。
SPARC システムをシャットダウンしたあとでブートするには、PROM レベルで boot コマンドを使用します。
x86 システムをシャットダウンしたあとでブートするには、GRUB メニューで OS インスタンスを選択します。
Solaris 9 リリースと一部の Oracle Solaris 10 リリースでは、x 86 システムをシャットダウンしたあとでブートするには、一次ブートサブシステムメニューで boot コマンドを使用します。
電源を切断した後に再投入すればシステムをリブートできます。
このシャットダウン方法をサポートしている リリースが稼働する x86 システムを使用するのでないかぎり、この方法は正常なシャットダウンとは言えません。「x86: 電源ボタンによるシステムシャットダウン開始のサポート」を参照してください。このシャットダウン方法は、緊急の場合にだけ使用してください。システムサービスやプロセスが突然終了するため、ファイルシステムに損傷を与えることがあります。この種の損傷の修復作業には手間がかかり、さまざまなユーザーファイルやシステムファイルをバックアップコピーから復元する必要が生じる可能性があります。
SPARC システムと x86 システムとでは、ブート時に使用するハードウェアが異なります。これらの違いについては、第 15 章x86: GRUB ベースのブート (参照情報)を参照してください。
次の表に、システム管理作業とそれに伴って必要となるシャットダウン方法の種類を示します。
表 8–1 システムのシャットダウン
システムシャットダウンの理由 |
適切な実行レベル |
詳細 |
---|---|---|
停電のためシステムの電源を切断します。 |
実行レベル 0。安全に電源を切れる状態 | |
/etc/system ファイル内のカーネルパラメータを変更します。 |
実行レベル 6 (システムのリブート) | |
ファイルシステムを保守します (システムデータのバックアップや復元など)。 |
実行レベル S (シングルユーザーレベル) | |
/etc/system などのシステム構成ファイルを修復します。 |
「システムをブートする場合」を参照してください |
なし |
システムにハードウェアを追加します (または、システムからハードウェアを削除する)。 |
再構成ブート (ハードウェアを追加または削除したら電源を切断する) | |
ブート失敗の原因となっていた重要なシステムファイルを修復します。 |
「システムをブートする場合」を参照してください |
なし |
カーネルデバッガ (kmdb) をブートして、システムの障害を調査します。 |
実行レベル 0 (可能な場合) | |
ハング状態から回復させ、クラッシュダンプを強制します. |
「システムをブートする場合」を参照してください |
なし |
カーネルデバッガ (kmdb) を使用してシステムをリブートします (実行時にデバッガを読み込めない場合) |
実行レベル 6 (システムのリブート) |
サーバーまたはスタンドアロンシステムのシャットダウンの例については、第 10 章システムのシャットダウン (手順)を参照してください。
次の表に、システム管理作業とそれに伴って必要となるブートオプションを示します。
表 8–2 システムのブート
システムリブートの理由 |
適切なブートオプション |
SPARC システムの参照先 |
x86 システムの参照先 |
---|---|---|---|
停電のためシステムの電源を切断します |
システムの電源を再投入します。 | ||
/etc/system ファイル内のカーネルパラメータを変更します |
システムを実行レベル 3 でリブートします (NFS リソースを共有できるマルチユーザーレベル)。 | ||
ファイルシステムを保守します (システムデータのバックアップや復元など) |
実行レベル S で Control + D を押して、システムを実行レベル 3 に戻します。 | ||
/etc/system などのシステム構成ファイルを修復します |
対話式ブート。 | ||
システムにハードウェアを追加します (または、システムからハードウェアを削除する) |
再構成ブート (ハードウェアを追加または削除したら電源を投入する)。 |
『Solaris のシステム管理 (デバイスとファイルシステム)』の「システムディスクまたは二次ディスクの追加 (作業マップ)」 |
『Solaris のシステム管理 (デバイスとファイルシステム)』の「システムディスクまたは二次ディスクの追加 (作業マップ)」 |
カーネルデバッガ (kmdb) を使用してシステムをブートし、システムの障害を調査します |
kmdb オプションを使ってブートします。 | ||
フェイルセーフモードでシステムをブートし、システムのブート失敗の原因となっている重要なシステムファイルを修復します |
フェイルセーフアーカイブをブートします。 | ||
ハング状態から回復させ、クラッシュダンプを強制します. |
回復ブートを実行します |