ブート PROM はシステムのブートに使用します。必要に応じて、システムのブート方法を変更します。たとえば、システムをマルチユーザーレベルにする前に、どのデバイスからブートするかを設定し直したり、ハードウェア診断プログラムを実行したりする場合です。
システム管理者は、通常 PROM レベルを使ってシステムをブートします。PROM レベルでデフォルトのブートファイルやブートデバイスを変更することもできます。
次のいずれかの作業を行う必要がある場合は、デフォルトのブートデバイスを変更する必要があります。
新しいドライブを永久または一時的にシステムに追加します
ネットワークブート方法を変更します
スタンドアロンシステムを一時的にネットワークからブートします
すべての PROM コマンドについては、monitor(1M) および eeprom(1M) のマニュアルページを参照してください。
システムの PROM リビジョン番号を表示するには、banner コマンドを使用します。
ok banner Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 333MHz), No Keyboard OpenBoot 3.15, 128 MB memory installed, Serial #number. Ethernet address number, Host ID: number. |
ハードウェア構成情報が表示され、その中に PROM のリビジョン番号があります。この例では、PROM のリビジョン番号は 3.15 です。
システム上のデバイスを確認して、ブートに適したデバイスを見極めることが必要な場合があります。
probe コマンドを使用してシステムに接続されているデバイスを安全に確認するためには、次のことを行なっておく必要があります。
PROM の auto-boot? パラメータの値を false に変更します。
ok setenv auto-boot? false |
reset-all コマンドを発行して、システムのレジスタをクリアします。
ok reset-all |
sifting probe コマンドを使用すると、システム上で利用可能な probe コマンドを表示できます。
ok sifting probe |
システムのレジスタをクリアしないで probe コマンドを実行すると、次のメッセージが表示されます。
ok probe-scsi This command may hang the system if a Stop-A or halt command has been executed. Please type reset-all to reset the system before executing this command. Do you wish to continue? (y/n) n |
システム上のデバイスを確認します。
ok probe-device |
(省略可能) 電源障害後や reset コマンドの使用後にシステムをリブートするようにするには、auto-boot? パラメータを true にリセットします。
ok setenv auto-boot? true auto-boot? = true |
システムをマルチユーザーモードでブートします。
ok reset-all |
次の例は、Ultra 10 システムに接続されているデバイスの確認方法を示しています。
ok setenv auto-boot? false auto-boot? = false ok reset-all Resetting ... Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 333MHz), No Keyboard OpenBoot 3.15, 128 MB memory installed, Serial #10933339. Ethernet address 8:0:20:a6:d4:5b, Host ID: 80a6d45b. ok probe-ide Device 0 ( Primary Master ) ATA Model: ST34321A Device 1 ( Primary Slave ) Not Present Device 2 ( Secondary Master ) Removable ATAPI Model: CRD-8322B Device 3 ( Secondary Slave ) Not Present ok setenv auto-boot? true auto-boot? = true |
別の方法として、devalias コマンドを使うと、システムに接続されている「可能性のある」デバイスの別名と関連パスを確認できます。次に例を示します。
ok devalias screen /pci@1f,0/pci@1,1/SUNW,m64B@2 net /pci@1f,0/pci@1,1/network@1,1 cdrom /pci@1f,0/pci@1,1/ide@3/cdrom@2,0:f disk /pci@1f,0/pci@1,1/ide@3/disk@0,0 disk3 /pci@1f,0/pci@1,1/ide@3/disk@3,0 disk2 /pci@1f,0/pci@1,1/ide@3/disk@2,0 disk1 /pci@1f,0/pci@1,1/ide@3/disk@1,0 disk0 /pci@1f,0/pci@1,1/ide@3/disk@0,0 ide /pci@1f,0/pci@1,1/ide@3 floppy /pci@1f,0/pci@1,1/ebus@1/fdthree ttyb /pci@1f,0/pci@1,1/ebus@1/se:b ttya /pci@1f,0/pci@1,1/ebus@1/se:a keyboard! /pci@1f,0/pci@1,1/ebus@1/su@14,3083f8:forcemode keyboard /pci@1f,0/pci@1,1/ebus@1/su@14,3083f8 mouse /pci@1f,0/pci@1,1/ebus@1/su@14,3062f8 name aliases |
システムを ok PROM プロンプトにします。
詳細は、「スタンドアロンシステムをシャットダウンする方法」を参照してください。
printenv コマンドを使用して、デフォルトのブートデバイスを調べます。
ok printenv boot-device |
ブートするデバイスを設定するパラメータを示します。
boot-device の値 (disk または net) を設定します。n はディスク番号です。
次のような形式で、デフォルトのブートデバイス (boot-device) が表示されます。
boot-device = /pci@1f,4000/scsi@3/disk@1,0:a
デフォルトのブートデバイスがネットワークブートデバイスの場合は、次のような出力が表示されます。
boot-device = /sbus@1f,0/SUNW,fas@e,8800000/sd@a,0:a \ /sbus@1f,0/SUNW,fas@e,8800000/sd@0,0:a disk net
デフォルトのブートデバイスをほかのデバイスに変更するには、まずシステム上のデバイスを確認しておく必要があります。システム上のデバイスを確認する方法については、「SPARC: システム上のデバイスを確認する方法」を参照してください。
実行レベル 0 に変更します。
# init 0 |
ok PROM プロンプトが表示されます。詳細は、init(1M) のマニュアルページを参照してください。
boot-device パラメータの値を変更します。
ok setenv boot-device device[n] |
ディスク番号を確認する必要がある場合は、probe コマンドのいずれかを使用します。
デフォルトのブートデバイスが変更されていることを確認します。
ok printenv boot-device |
新しい boot-device 値を保存します。
ok reset-all |
新しい boot-device 値が PROM に書き込まれます。
この例では、デフォルトのブートデバイスをディスクに設定しています。
# init 0 # INIT: New run level: 0 . . . The system is down. syncing file systems... done Program terminated ok setenv boot-device /pci@1f,4000/scsi@3/disk@1,0 boot-device = /pci@1f,4000/scsi@3/disk@1,0 ok printenv boot-device boot-device /pci@1f,4000/scsi@3/disk@1,0 ok boot Resetting ... screen not found. Can't open input device. Keyboard not present. Using ttya for input and output. Sun Enterprise 220R (2 X UltraSPARC-II 450MHz), No Keyboard OpenBoot 3.23, 1024 MB memory installed, Serial #13116682. Ethernet address 8:0:20:c8:25:a, Host ID: 80c8250a. Rebooting with command: boot disk1 Boot device: /pci@1f,4000/scsi@3/disk@1,0 File and args: |
この例では、デフォルトのブートデバイスをネットワークに設定しています。
# init 0 # INIT: New run level: 0 . . . The system is down. syncing file systems... done Program terminated ok setenv boot-device net boot-device = net ok printenv boot-device boot-device net disk ok reset Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 333MHz), No Keyboard OpenBoot 3.15, 128 MB memory installed, Serial #number. Ethernet address number, Host ID: number. Boot device: net File and args: . . . pluto console login: |
スーパーユーザーになるか、同等の役割を引き受けます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
ブートする代替カーネルを指定します。
# eeprom boot-device new-boot-device |
新しいパラメータが設定されていることを確認します。
# eeprom boot-device |
この出力には、boot-device パラメータの新しい eeprom 値が表示されるはずです。
ok reset-all |
自己診断プログラムが実行され、ハードウェアの診断テストが行われたあと、auto-boot? パラメータが true に設定されていれば、システムがリブートします。
実行レベル 0 に変更します。
# init 0 |
ok PROM プロンプトが表示されます。詳細は、init(1M) のマニュアルページを参照してください。
boot-file プロパティーを代替カーネルに設定します。
ok setenv boot-file boot-file |
デフォルトのブートデバイスが変更されていることを確認します。
ok printenv boot-file |
新しい boot-file 値を保存します。
ok reset-all |
新しい boot-file 値が PROM に書き込まれます。
スーパーユーザーになるか、同等の役割を引き受けます。
役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』の「RBAC の構成 (作業マップ)」を参照してください。
ブートする代替カーネルを指定します。
# eeprom boot-file new boot-file |
次に例を示します。
# eeprom boot-file=kernel.name/sparcv9/unix |
新しいパラメータが設定されていることを確認します。
# eeprom boot-file |
この出力には、指定したパラメータの新しい eeprom 値が表示されるはずです。
ITU ユーティリティーを使用して、ソフトウェアパッケージとパッチのドライバ更新 (DU) 形式への変換、および Oracle Solaris インストールメディアへのパッチ適用を行います。これにより、これらの新規パッケージとパッチを使用してシステムをブートできるようになります。Oracle Solaris 10 9/10 以降、itu コマンドが変更され、SPARC システム上に ITU を作成して格納し、新規作成した ITU を使ってシステムをブートできるようになりました。
ITU ユーティリティーを使用すると、インストール時にドライバをすぐにインストールして、バグ修正を適用できます。次の手順は、SPARC システムで ITU を作成および格納し、新規作成した ITU を使ってシステムをブートするプロセスを示します。
ITU を使ってブートするシステムで、ユーパーユーザーになります。
itu コマンドに次のオプションを指定して、ITU を作成します。
# itu makedu -r solaris-release -o iso-file package1-name package2-name... |
1 つ以上のドライバパッケージを入力として取り、パッケージを DU 形式に変換します。
ドライバを更新する Oracle Solaris リリースの番号を指定します。使用されるリリース番号の形式は、5.10 です
作成する ISO イメージファイルのパスを指定します。
itu コマンドおよびそのオプションすべての詳細は、itu(1M) のマニュアルページを参照してください。
システムを ok PROM プロンプトにします。
auto-boot プロパティーを無効にします。
ok setenv auto-boot?=false |
システムをリセットします。
ok reset-all |
前の手順により、システムのブート時に itu-device 文字列が消去されないことが保証されます。このため、この手順は重要です。
cdrom 別名を見つけます。
ok devalias cdrom |
この別名は、システムに接続されている CD または DVD ドライブのデバイスパスです。この出力は、システムによって変化することに留意してください。たとえばこの手順では、cdrom 別名の場所は次のようになります。
/pci@8,700000/scsi@1/disk@6,0:f |
ITU のインストールに使用される itu-device のパスを設定します。
次の例に示すように、config-string の最初の部分で手順 6 の出力が使用されます。
ok> " /pci@8,700000/scsi@1/disk@6,0:f" d# 80 config-string itu-device |
80 は文字列の最大長を表します。cdrom 別名を変更して 80 文字より長くする場合は、この数値を必要に応じて大きくします。
ITU を使ってシステムをブートします。
ok boot |
システムをブートし、Solaris インストールプロセスが始まると、itu-device に格納されている ITU がシステムにより検出されます。次に、itu-device で使用可能なシステムコンポーネントがシステムで識別および構成されます。これらのドライバ用のデバイスも識別および構成されます。インストールが完了すると、デバイスがインストール先として使用可能になります。
インストールの完了後に、auto-boot プロパティーのデフォルト値が復元されて、システムがブートします。
ok setenv auto-boot?=true |
前述の例では、auto-boot プロパティーのデフォルト値が true であることを前提としています。
システムをブートします。
ok boot |