表 10-1 に、この章で説明するブート方法の要約を示します。
表 10-1 SPARC: ブート方法の説明
システムのブート方法 |
このブート方法が必要な場合 |
参照先 |
---|---|---|
実行レベル 3 (NFS 資源を共有するマルチユーザー状態) |
システムを停止するか、またなんらかのシステムハードウェアの保守作業を行なった後。これはデフォルトのブートレベルで、すべての資源が利用でき、そしてユーザーがシステムにログインできる。 | |
実行レベル S (シングルユーザー状態) |
ファイルシステムのバックアップなどのなんらかのシステム保守作業を行なった後。このレベルでは、一部のファイルシステムだけがマウントされ、ユーザーはシステムにログインできない。 | |
対話式でブート |
テストのために、システムファイルまたはカーネルを一時的に変更した後。このブート方法を使えば、システムファイルまたはカーネルに問題がある場合、プロンプトが表示されたときに、これらのファイルに対して別のパス名を指定すれば簡単に復元できる。他のシステムプロンプトにデフォルトの設定を使う。 | |
ネットワーク経由でブート |
システムをネットワーク経由でブートする。この手順は、ブートサーバー上で必要な設定が完了していることを前提とする。 | |
ローカル CD-ROM またはネットワークからブートして復元する |
システムの正常なブートを妨げている重要なシステムファイルを修復する。また、この形式のブートはオペレーティングシステムの新しいリリースをインストール (あるいは、アップグレード) するのにも使用する。 | |
kadb を使ってブート |
オペレーティングシステムのコアダンプを保存して、システムの障害を追跡する場合。 |
システムの電源を切ってから入れ直すと、マルチユーザーのブートシーケンスが開始されます。この後に示す手順では、ok PROM プロンプトからさまざまな状態でブートする方法を説明します。
who -r コマンドを使って、システムが指定した実行レベルになっていることを確認します。
実行レベルについての説明は、第 8 章「実行レベルとブートファイル (手順)」を参照してください。
ok boot |
自動ブート処理では、一連のスタートアップメッセージ表示して、システムを実行レベル 3 にします。
システムが実行レベル 3 になっていることを確認します。
ブートプロセスが正常に終了すると、ログイン画面か、ログインプロンプトが表示されます。
hostname console login: |
次に、システムを実行レベル 3 にするメッセージの例を示します。
ok boot SPARCstation 10 (1 X 390Z50) ROM Rev. 2.14, 32 MB memory installed, Serial #number. Ethernet address number, Host ID: number. Rebooting with command: Boot device: /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,8... SunOS Release 5.8 Version Generic 32-bit Copyright (c) 1983-2000 by Sun Microsystems, Inc. configuring IPv4 interfaces: le0. Hostname: earth The system is coming up. Please wait. checking ufs filesystems /dev/rdsk/c0t3d0s7: is clean. NIS domainname is Solar.COM starting rpc services: rpcbind keyserv ypbind done. Setting netmask of le0 to 255.255.255.0 Setting default IPv4 interface for multicast: add net 224.0/4: gateway earth syslog service starting. Print services started. volume management starting. The system is ready. earth console login: |
boot -s コマンドを使って、システムを実行レベル S にします。
ok boot -s |
次のメッセージが表示されたら、スーパーユーザーのパスワードを入力します。
INIT: SINGLE USER MODE Type Ctrl-d to proceed with normal startup, (or give root password for system maintenance): xxx |
who -r コマンドを使って、システムが実行レベル S になっていることを確認します。
# who -r . run-level S May 2 07:39 3 0 S |
システム保守作業の後に、システムをマルチユーザー状態にするには、Control-d を押します。
次に、実行レベル S になるシステムの表示例を示します。
ok boot -s . . . SunOS Release 5.8 Version Generic 32-bit Copyright (c) 1983-2000 by Sun Microsystems, Inc. configuring IPv4 interfaces: le0. Hostname: earth INIT: SINGLE USER MODE Type control-d to proceed with normal startup, (or give root password for system maintenance): xxx Sun Microsystems Inc. SunOS 5.8 generic August 1999 # who -r . run-level S Jul 14 11:37 S 0 ? (システム保守作業を行う) # <Control-d> を押す |
boot -a コマンドを使って、システムを対話式でブートします。
ok boot -a |
下の表に示すように、システムプロンプトに答えてください。
システムの表示 |
操作 |
---|---|
Enter filename [kernel/unix]: |
ブートに使用する別のカーネルの名前を入力する。 あるいは、そのまま Return キーを押してデフォルトカーネルを使う (/platform/`uname -m`/kernel/unix)。 |
Name of default directory for modules [/platform/`uname -m`/kernel /kernel /usr/kernel]: |
ブートに使用する別のカーネルの名前を入力する。 あるいは、そのまま Return キーを押してデフォルトカーネルを使う (/platform/`uname -m`/kernel/unix)。 |
Name of system file [/etc/system]: |
代わりのシステムのファイルの名前を入力して Return キーを押す。 /etc/system ファイルが破損している場合、/dev/null を入力する。 あるいは、そのまま Return キーを押してデフォルトの /etc/system ファイルを使う。 |
root filesystem type [ufs]: |
そのまま Return キーを押してデフォルトのルートファイルシステム形式を使う。つまり、ローカルディスクからのブートの場合は UFS、ネットワークブートの場合は NFS を使う。 |
Enter physical name of root device [physical_device_name]: |
代わりのデバイス名を入力して、Return キーを押す。 あるいは、そのまま Return キーを押してルートデバイスのデフォルトの物理名を使う。 |
上の表の質問に応答するためのプロンプトが表示されない場合、boot -a コマンドを正しく入力していることを確認してください。
次の例では、利用できるデフォルトの選択例 ([]で囲まれています) を示します。
ok boot -a . . . Rebooting with command: boot -a Boot device: /pci@1f,0/pci@1,1/ide@3/disk@0,0:a File and args: -a Enter filename [kernel/sparcv9/unix]: Return キーを押す Enter default directory for modules [/platform/SUNW,Ultra-5_10/kernel /platform/sun4u/kernel /kernel /usr/kernel]: Return キーを押す Name of system file [etc/system]: Return キーを押す SunOS Release 5.8 Version Generic 64-bit Copyright (c) 1983-2000 by Sun Microsystems, Inc. root filesystem type [ufs]: Return キーを押す Enter physical name of root device [/pci@1f,0/pci@1,1/ide@3/disk@0,0:a]: Return キーを押す configuring IPv4 interfaces: hme0. Hostname: starbug The system is coming up. Please wait. checking ufs filesystems . . . The system is ready. earth console login: |
ブートサーバーが利用できれば、どのようなシステムもネットワーク経由でブートできます。たとえば、スタンドアロンシステムがローカルディスクからブートできない場合、スタンドアロンシステムを一時的にネットワーク経由でブートできます。デフォルトのブートデバイスを変更または再設定する方法については、「SPARC: デフォルトのブートデバイスを変更する方法」を参照してください。
sun4u システムでは、2 つのネットワーク構成ブートの方法、RARP (Reverse Address Resolution Protocol and ONC+ RPC Bootparams Protocol) または DHCP (Dynamic Host Configuration Protocol) を選択できます。デフォルトのネットワークブート方法は RARP に設定されています。ネットワークで利用できるブートサーバーによって、RARP または DHCP を選択できます。
DHCP ネットワークブートを使用するには、Sun Ultra システムの PROM のバージョンが 3.25 以降でなければなりません。
RARP とDHCP の両方のネットワークブート方法を利用できる場合、どちらを使用するかは、boot コマンドに一時的に指定できます。あるいは、NVRAM 別名を設定すれば、PROM レベルで永久に保存できます。つまり、この設定はシステムをリブートしても変更されません。次の nvalias コマンドの例は、Sun Ultra 10 システムにおいてデフォルトで DHCP でブートするように、ネットワークデバイスの別名を設定します。
ok nvalias net /pci@1f,4000/network@1,1:dhcp |
この別名を設定している場合、boot net と入力するだけで、システムは DCHP を使用してブートします。
nvunalias コマンドと nvalias コマンドの構文を十分理解するまで、nvunalias コマンドで NVRAMRC ファイルを変更しないでください。これらのコマンドを使用する方法については、『OpenBoot 3.x コマンド・リファレンスマニュアル』を参照してください。
ネットワーク経由でブートする方法を決定し、次の中から 1 つを選択します。
どちらの方法でブートする場合でも、RARP または DHCP のブートサーバーがすでにネットワークに設定されていなければなりません。
DHCP を使用してシステムをネットワーク経由でブートするには、次のように入力します。
ok boot net[:dhcp] |
上記 nvalias の例のように、デフォルトで DHCP でブートするように PROM 設定を変更している場合、boot net と入力するだけで、システムは DHCP でブートします。
RARP を使用してシステムをネットワーク経由でブートするには、次のように入力します。
ok boot net[:rarp] |
RARP はデフォルトのネットワークブート方法です。デフォルトで DHCP でブートするように PROM 設定を変更している場合だけ、boot net:rarp と指定しなければなりません。
この手順は、/etc/passwd などの重要なファイルに、無効なエントリがあり正常にブートできない場合に必要です。
システムのデバイス名を調べたい場合は、第 26 章「デバイスへのアクセス (概要)」を参照してください。
Solaris インストール CD またはネットワークからブートしているかどうかによって、次のそれぞれの手順に従ってください。
ファイル内に無効なエントリがあるファイルシステムをマウントします。
# mount /dev/dsk/device-name /a |
新しくマウントしたディレクトリに移動します。
# cd /a/directory |
端末タイプを設定します。
# TERM=sun # export TERM |
エディタを使って、ファイルから無効なエントリを削除します。
# vi filename |
ルート (/) ディレクトリに移動します。
# cd / |
/a ディレクトリのマウントを解除します。
# umount /a |
システムをリブートします。
# init 6 |
システムが実行レベル 3 になっていることを確認します。
ブートプロセスが正常に終了すると、ログイン画面かログインプロンプトが表示されます。
hostname console login: |
次に、ローカル CD-ROM からブートした後、重要なシステムファイルを修復する例として、/etc/passwd を使用した場合を示します。
ok boot cdrom -s # mount /dev/dsk/c0t3d0s0 /a # cd /a/etc # TERM=sun # export TERM # vi passwd (無効なエントリを削除する) # cd / # umount /a # init 6 |
システムのアボートキーシーケンスを入力します。
モニターに ok PROM プロンプトが表示されます。
ok |
アボートキーシーケンスは、キーボードのタイプによって異なります。たとえば、Stop-a または L1-a を押します。端末では、Break キーを押します。
sync コマンドを使って、ディスクを同期させます。
ok sync |
syncing file systems. . . というメッセージが表示されたら、システムのアボートキーシーケンスをもう一度押します。
該当する boot コマンドを入力して、ブートプロセスを起動します。
システムが指定した実行レベルになっていることを確認します。
# who -r . run-level 3 May 2 07:39 3 0 S |
<Stop-a を押す> ok sync syncing file systems... <Stop-a を押す> ok boot |
問題を対処するために、オペレーティングシステムのクラッシュダンプを保存しておく必要があります。savecore 機能とその設定方法については、『Solaris のシステム管理 (第 2 巻)』の「システムクラッシュ情報の生成と保存」で説明しています。この節では、savecore 機能が有効な場合に、システムをリブートする方法だけを説明します。
システムのアボートキーシーケンスを入力します。アボートキーシーケンスは、キーボードのタイプによって異なります。たとえば、Stop-a または L1-a を押します。端末では、Break キーを押します。
モニターに ok PROM プロンプトが表示されます。
ok プロンプトで、sync コマンドを使ってディスクを同期させ、クラッシュダンプを書き出します。
> n ok sync |
クラッシュダンプがディスクに書き出されると、システムはそのままリブートします。
システムが実行レベル 3 になっていることを確認します。
ブートプロセスが正常に終了すると、ログイン画面かログインプロンプトが表示されます。
hostname console login: |
<Stop-a を押す> ok sync |
システムのアボートキーシーケンスを入力します。アボートキーシーケンスは、キーボードのタイプによって異なります。たとえば、Stop-a または L1-a を押します。端末では、Break キーを押します。
モニターに、ok PROM プロンプトが表示されます。
ok プロンプトで 、sync コマンドを使ってディスクを同期させ、クラッシュダンプを書き出します。
> n ok sync |
syncing file systems. . .メッセージが表示されたら、もう一度システムのアボートキーシーケンスを入力します。
カーネルデバッガを使ってシステムをブートします。
ok boot kadb |
ブートメッセージで、システムがカーネルデバッガ (kadb) を使用してブートしていることを確認します。
Rebooting with command: kadb Boot device: /iommu/sbus/espdma@4,800000/esp@4,8800000/sd@3,0 . . . |
<Stop-a を押す> ok sync syncing file systems... <Stop-a を押す> ok boot kadb |