Solaris のシステム管理 (基本編)

SPARC: システムのブート

システムの電源を切ってから入れ直すと、マルチユーザーのブートシーケンスが開始されます。次に示す手順は、ok PROM プロンプトからさまざまな実行レベルでブートする方法です。これらの手順では、特に指示がない限り、システムがクリーンな状態でシャットダウンしていることを前提とします。

who -r コマンドを使って、システムが指定した実行レベルになっていることを確認します。実行レベルについての説明は、第 11 章「実行レベルとブートファイル (手順)」を参照してください。

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

次の手順に従って、現時点で実行レベル 0 になっているシステムを実行レベル 3 でブートします。

  1. システムを実行レベル 3 でブートします。


    ok boot
    

    自動ブート処理では、一連のスタートアップメッセージ表示して、システムを実行レベル 3 にします。

    詳細については、boot(1M) のマニュアルページを参照してください。

  2. システムが実行レベル 3 になっていることを確認します。

    ブートプロセスが正常に終了すると、ログイン画面かログインプロンプトが表示されます。


    hostname console login:

SPARC: 例 — システムを実行レベル 3 (マルチユーザーレベル) でブートする

次の例は、システムを実行レベル 3 でブートしたときに表示されるメッセージを示しています。


ok boot
Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 333MHz)
OpenBoot 3.15, 128 MB memory installed, Serial #number.
Ethernet address number, Host ID: number.

Rebooting with command: boot
Boot device: disk:a  File and args: 
SunOS Release 5.9 Version Generic 64-bit
Copyright (c) 1983-2002 by Sun Microsystems, Inc.
configuring IPv4 interfaces: hme0.
Hostname: starbug
The system is coming up.  Please wait.
checking ufs filesystems
/dev/rdsk/c0t0d0s7: is clean.
/dev/rdsk/c0t0d0s4: is clean.
NIS domainname is Solar.COM
starting rpc services: rpcbind keyserv ypbind done.
Setting netmask of hme0 to 255.255.255.0
Setting default IPv4 interface for multicast: add net 224.0/4: 
gateway starbug
syslog service starting.
Print services started.
volume management starting.
The system is ready.

starbug console login: 

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

次の手順に従って、現時点で実行レベル 0 になっているシステムを実行レベル S でブートします。

  1. システムを実行レベル S でブートします。


    ok boot -s
    
  2. 次のメッセージが表示されたら、スーパーユーザーのパスワードを入力します。


    INIT: SINGLE USER MODE
    Type Ctrl-d to proceed with normal startup,
     
    (or give root password for system maintenance):  xxx
    
  3. システムが実行レベル S になっていることを確認します。


    # who -r
    .       run-level S  Jun 10 15:27     3      0 
  4. システム保守作業の後に、システムをマルチユーザー状態にするには、Control + D を押します。

SPARC: 例 — システムを実行レベル S (シングルユーザーレベル) でブートする

次の例は、システムを実行レベル S でブートしたときに表示されるメッセージを示しています。


ok boot -s
.
.
.
SunOS Release 5.9 Version Generic 64-bit
Copyright (c) 1983-2002 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.9  Generic May 2002
# who -r
   .       run-level S  Jul 14 11:37     3      0  ?
(保守作業を行う)
# <Control - D を押す

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

次の手順に従ってシステムをブートし、代替カーネルまたは /etc/system ファイルを指定する必要があります。

  1. システムを対話式でブートします。


    ok boot -a
    
  2. 次の表に示すように、システムプロンプトに答えてください。

    システムプロンプト 

    操作  

    Enter filename [kernel/[sparcv9]/unix]:

    ブートに使用するカーネルの名前を入力する。あるいは、そのまま Return キーを押してデフォルトのカーネルを使用する 

    Enter default directory for modules [/platform/`uname -i`/kernel /platform/`uname -m/kernel /kernel /usr/kernel]:

    modules ディレクトリの代替パスを入力する。あるいは、そのまま Return キーを押してデフォルトのカーネルモジュールディレクトリを使用する

    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 キーを押してルートデバイスのデフォルトの物理名を使用する 

  3. 前の表の質問に応答するためのプロンプトが表示されない場合は、boot -a コマンドを正しく入力していることを確認してください。

SPARC: 例 — システムを対話式でブートする

次の例では、利用できるデフォルトの選択例 ([]で囲まれた部分) を示します。


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.9 Version Generic 64-bit
Copyright (c) 1983-2002 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.
starbug console login:

SPARC: システムをネットワークからブートする方法

ブートサーバーが利用できれば、どのようなシステムもネットワークからブートできます。たとえば、スタンドアロンのシステムがローカルディスクからブートできない場合、そのシステムを一時的にネットワークからブートできます。デフォルトのブートデバイスを変更または再設定する方法については、SPARC: デフォルトのブートデバイスを変更する方法を参照してください。

sun4u システムでは次の 2 つのネットワーク構成ブート方法を利用できます。

デフォルトのネットワークブート方法は RARP に設定されています。ネットワークで利用できるブートサーバーによって、RARP または DHCP を選択できます。


注 –

Sun Ultra システムで DHCP ネットワークブート方法を使用するには、PROM バージョンが 3.25.nn 以上でなければなりません。PROM のバージョンの確認方法については、SPARC: システムの PROM リビジョンを確認する方法を参照してください。


RARP と DHCP の両方のネットワークブート方法を利用できる場合、どちらのサービスを使用するかを boot コマンドに一時的に指定できます。あるいは、NVRAM 別名を設定すれば、システムをリブートしても有効に PROM レベルでネットワークブート方法を永続的に保存することができます。次の nvalias コマンドの例では、Sun Ultra 10 システムにおいてデフォルトで DHCP でブートするように、ネットワークデバイスの別名を設定します。


ok nvalias net	 /pci@1f,4000/network@1,1:dhcp

この別名を設定している場合、boot net と入力するだけで、システムは DHCP ネットワークブート方法を使用してブートします。


注意 – 注意 –

nvunalias コマンドと nvalias コマンドの構文を十分理解するまで、nvunalias コマンドで NVRAMRC ファイルを変更しないでください。これらのコマンドの使用方法については、『OpenBoot 3.x コマンド・リファレンスマニュアル』を参照してください。


  1. 必要な場合、システムをシャットダウンします。

  2. ネットワークからブートする方法を決定し、次のどちらかを選択します。

    どちらの方法でブートする場合でも、RARP または DHCP のブートサーバーがすでにネットワークに設定されていなければなりません。

    1. DHCP を使用してシステムをネットワークからブートするには、次のように入力します。


      ok boot net[:dhcp]

      上記 nvalias の例のように、デフォルトで DHCP でブートするように PROM 設定を変更してある場合は、boot net と指定するだけで、システムは DHCP でブートします。

    2. RARP を使用してシステムをネットワークからブートするには、次のように入力します。


      ok boot net[:rarp]

      RARP はデフォルトのネットワークブート方法です。このため、デフォルトで DHCP でブートするように PROM 値を変更してある場合にだけ、boot net:rarp と指定しなければなりません。

SPARC: 復元を目的としてシステムを停止する方法

  1. システムのアボートキーシーケンスを入力します。

    モニターに、ok PROM プロンプトが表示されます。


    ok

    アボートキーシーケンスは、キーボードのタイプによって異なります。たとえば、Stop+A または L1+A を押します。端末では、Break キーを押します。

  2. ファイルシステムを同期させます。


    ok sync
    
  3. syncing file systems... というメッセージが表示されたら、システムのアボートキーシーケンスをもう一度入力します。

  4. 該当する boot コマンドを入力して、ブートプロセスを起動します。

    詳細については、boot(1M) のマニュアルページを参照してください。

  5. システムが指定した実行レベルになっていることを確認します。


    # who -r
     .       run-level 3  May  2 07:39     3      0  S 

SPARC: 例 — 復元を目的としてシステムを停止する


<Stop + A を押す>
ok sync
syncing file systems...
<Stop + A を押す>
ok boot

SPARC: 復元を目的としてシステムをブートする方法

次の手順は、/etc/passwd などの重要なファイルに、無効なエントリがあり正常にブートできない場合に使用します。

次の手順で使用されている変数 devicename は、修復するファイルシステムのデバイス名に置き換えてください。システムのデバイス名を調べる場合は、第 30 章「デバイスへのアクセス (概要)」を参照してください。

  1. システムのアボートキーシーケンスを使用して、システムを停止します。

    システムのアボートキーシーケンスは、ルートのパスワードがわからない場合やシステムにログインできない場合に使用します。詳細については、SPARC: 復元を目的としてシステムを停止する方法を参照してください。

  2. Solaris 9 Installation CD または DVD からブートしているか、あるいはネットワークからブートしているかによって、次の表のそれぞれの手順を使い分けてください。

    ブート方法 

    手順 

    Solaris 9 installation CD または DVD 

    1. Solaris 9 Installation CD または DVD をドライブに挿入する 

    2. Solaris 9 Installation CD または DVD から、シングルユーザーモードでブートする 

    ok boot cdrom -s

    ネットワーク (インストールサーバーまたはリモート CD/DVD ドライブが使用できる場合) 

    次のコマンドを使う 

    ok boot net -s

  3. ファイル内に無効なエントリがあるファイルシステムをマウントします。


    # mount /dev/dsk/device-name /a
    
  4. 新しくマウントしたファイルシステムに移動します。


    # cd /a/file-system
    
  5. 端末タイプを設定します。


    # TERM=sun
    # export TERM
    
  6. エディタを使って、ファイルから無効なエントリを削除します。


    # vi filename
    
  7. ルート (/) ディレクトリに変更します。


    # cd /
    
  8. /a ディレクトリのマウントを解除します。


    # umount /a
    
  9. システムをリブートします。


    # init 6
    
  10. システムが実行レベル 3 になっていることを確認します。

    ブートプロセスが正常に終了すると、ログイン画面かログインプロンプトが表示されます。


    hostname console login:

SPARC: 例 — 復元を目的としてシステムをブートする (パスワードファイルが損傷した場合)

次の例は、ローカルの CD-ROM からブートした後、重要なシステムファイル (この場合は /etc/passwd) を修復する方法を示しています。


ok boot cdrom -s
# mount /dev/dsk/c0t3d0s0 /a
# cd /a/etc
# TERM=vt100
# export TERM
# vi passwd
(無効なエントリを削除する)
# cd /
# umount /a
# init 6

SPARC: 例 — ルートのパスワードを忘れた場合にシステムをブートする

次の例は、ルートのパスワードを忘れた場合に、ネットワークからブートしてシステムを復元する方法を示しています。この例では、ネットワークのブートサーバーが利用可能になっていることを前提とします。システムをリブートした後で必ず新しいルートパスワードを適用してください。


ok boot net -s
# mount /dev/dsk/c0t3d0s0 /a
# cd /a/etc
# TERM=vt100
# export TERM
# vi shadow
(ルートの暗号化パスワードを削除する)
# cd /
# umount /a
# init 6

SPARC: カーネルデバッガ (kadb) を使ってシステムをブートする方法

  1. システムを停止する必要がある場合は、システムのアボートキーシーケンスを入力します。

    アボートキーシーケンスは、キーボードのタイプによって異なります。たとえば、Stop+A または L1+A を押します。端末では、Break キーを押します。

    ok PROM プロンプトが表示されます。

  2. ファイルシステムを同期させ、クラッシュダンプを書き出します。


    > n
    ok sync
    
  3. syncing file systems... というメッセージが表示されたら、システムのアボートキーシーケンスをもう一度入力します。

  4. カーネルデバッガを使ってシステムをブートします。


    ok boot kadb
    
  5. ブートメッセージで、システムがカーネルデバッガ (kadb) を使用してブートしているかどうかをチェックします。


    Rebooting with command: kadb
    Boot device: /iommu/sbus/espdma@4,800000/esp@4,8800000/sd@3,0
    .
    .
    .

SPARC: 例 — カーネルデバッガ (kadb) を使ってシステムをブートする


<Stop - A を押す>
ok sync
syncing file systems...
<Stop - A を押す>
ok boot kadb