Solaris 10 6/06 インストールガイド (カスタム JumpStart/ 上級編)

パート IV 付録

このパートでは、問題への対処方法と参考情報を提供します。

付録 A 問題発生時の解決方法 (作業)

この章では、Solaris 10 6/06 ソフトウェアのインストール時に発生する可能性のあるエラーメッセージと一般的な問題の一覧を示します。この章では、それぞれの問題の解決方法も示します。まず、次のリストを使用して、インストールプロセスのどこで問題が発生したか確認してください。


注 –

この付録で「ブート可能なメディア」と記載されている場合、これはインストールプログラムおよび JumpStart インストールを意味します。


ネットワークインストールの設定に関する問題


Unknown client “host_name

原因:

add_install_client コマンドの引数に指定した host_name がネームサービス内のホストではありません。

説明:

ホスト host_name をネームサービスに追加し、add_install_client コマンドを実行し直してください。

システムのブートに関する問題

メディアからのブート時のエラーメッセージ


le0: No carrier - transceiver cable problem

原因:

システムがネットワークに接続されていません。

対処方法:

ネットワークに接続せずに使用しているシステムの場合は、このメッセージは無視してください。ネットワークに接続されているシステムの場合は、Ethernet が正しく接続されているかどうか確認してください。


The file just loaded does not appear to be executable

原因:

ブート用の適切なメディアが見つかりません。

対処方法:

インストールサーバーからネットワークを介して Solaris 10 6/06 をインストールするように正しく設定されているか確認します。次に、確認事項の例を示します。

  • Solaris Operating System DVD または Solaris SOFTWARE CD のイメージをインストールサーバーにコピーした場合、システムの設定時に正しいプラットフォームグループを指定したことを確認します。

  • DVD または CD メディアを使用する場合、Solaris Operating System DVD または Solaris SOFTWARE - 1 CD がインストールサーバーにマウントされ、アクセス可能であることを確認します。


boot: cannot open <filename> (SPARC ベースのシステムのみ)

原因:

このエラーは、boot- file の値を明示的に上書きしたときに発生します。


注 –

filename は、問題のファイルの名前を示す変数です。


対処方法:

次の手順に従ってください。

  • PROM の boot-file の値を (無指定) に設定変更します。

  • diag-switch が off と true に設定されているか確認します。


Can't boot from file/device

原因:

インストールメディアがブート可能なメディアを見つけることができません。

対処方法:

次の条件が満たされているか確認します。

  • DVD-ROM または CD-ROM ドライブがシステムに適切に取り付けられ、電源が入っている。

  • Solaris Operating System DVD または Solaris SOFTWARE - 1 CD がドライブに挿入されている。

  • ディスクに傷や埃が付いていない。


WARNING: clock gained xxx days -- CHECK AND RESET DATE! (SPARC システムのみ)

説明:

これは参考情報です。

対処方法:

メッセージは無視して、インストールを継続してください。


Not a UFS file system (x86 システムのみ)

原因:

Solaris 10 6/06 ソフトウェアをインストールしたとき (Solaris インストールプログラムまたはカスタム JumpStart を使用)、ブートディスクを選択しませんでした。BIOS を編集してシステムをブートする必要があります。

対処方法:

BIOS を選択してブートします。詳細は、BIOS のマニュアルを参照してください。

メディアからのブート時の一般的な問題


システムがブートしない。

説明:

初めてカスタム JumpStart サーバーを設定する場合、エラーメッセージを返さないブート問題が発生することがあります。システムについての情報およびシステムがどのようにブートするかを調べるには、-v オプションを指定してブートコマンドを実行してください。-v オプションを使用すると、ブートコマンドは画面に関する詳しいデバッグ情報を表示します。


注 –

このフラグを指定しなくてもメッセージは出力されますが、システムログファイルが出力先となります。詳細については、syslogd(1M) を参照してください。


対処方法:

SPARC システムの場合、ok プロンプトに続いて次のコマンドを入力します。


ok boot net -v - install

Toshiba SD—M 1401 DVD-ROM が搭載されたシステムで DVD メディアからのブートが失敗する

説明:

使用しているシステムにファームウェアバージョン 1007 の Toshiba SD-M1401 DVD-ROM が搭載されている場合、システムは Solaris Operating System DVD からブートできません。

対処方法:

111649–03 以降のパッチを適用して Toshiba SD-M1401 DVD-ROM ドライブのファームウェアを更新します。パッチ 111649-03 は、sunsolve.sun.com から入手可能です。


メモリー増設用以外の PC カードを挿入すると、システムがハングまたはパニックを起こす。(x86 システムのみ)

原因:

メモリー増設用以外の PC カードは、ほかのデバイスが使用するのと同じメモリーリソースを使用できません。

対処方法:

この問題を解決するには、PC カードのマニュアルを参照してアドレス範囲を確認してください。


システムがプロンプトを出す前にハングする。(x86 システムのみ)

対処方法:

サポートされていないハードウェアです。ハードウェアのマニュアルを参照してください。

ネットワークからのブート時のエラーメッセージ


WARNING: getfile: RPC failed: error 5 (RPC Timed out).

説明:

インストールクライアントのブート要求に対して、ネットワーク上の複数のサーバーが応答したときに発生するエラーです。インストールクライアントの接続先のブートサーバーが間違っているため、インストールは停止します。次の原因が考えられます。

原因:

1 このインストールクライアントが登録された /etc/bootparams ファイルが複数のサーバーに存在する可能性があります。

対処方法:

1 ネットワーク上の複数のサーバーの /etc/bootparams エントリにインストールクライアントが登録されていないか調べます。複数のサーバーに登録されている場合は、インストールに使用するインストールサーバー (またはブートサーバー) 以外のサーバーの /etc/bootparams ファイルから、クライアントの登録を削除します。

原因:

2 複数の /tftpboot または /rplboot ディレクトリにこのインストールクライアントが登録されている可能性があります。

対処方法:

2 ネットワーク上の複数のサーバーの /tftpboot または /rplboot ディレクトリにインストールクライアントが登録されていないか調べます。複数のサーバーに登録されている場合は、インストールに使用するインストールサーバー(またはブートサーバー)以外のサーバーの /tftpboot または /rplboot ディレクトリから、クライアントの登録を削除します。

原因:

3 あるサーバーの /etc/bootparams ファイルにこのインストールクライアントが登録されており、別のサーバーの /etc/bootparams ファイルで、すべてのシステムがプロファイルサーバーにアクセスできるように記述されている可能性があります。次のような記述があります。

* install_config=profile_server:path

このエラーは、NIS または NIS+ の bootparams テーブルにこのような行が存在していても発生します。

対処方法:

3 ワイルドカードエントリがネームサービスの bootparams マップまたはテーブル ( * install_config= など) にある場合は、そのエントリを削除し、ブートサーバーの /etc/bootparams ファイルに追加します。


No network boot server. Unable to install the system. See installation instructions. (SPARC システムのみ)

原因:

このエラーは、ネットワークからインストールしようとしているシステムで発生します。このシステムは、適切に設定されていません。

対処方法:

ネットワークを介してインストールするようにシステムが適切に設定されているか確認します。『Solaris 10 6/06 インストールガイド (ネットワークインストール)』「CD イメージを使用してネットワークからインストールするシステムの追加」を参照してください。


prom_panic: Could not mount file system (SPARC システムのみ)

原因:

このエラーはネットワークから Solaris をインストールしようとしてブートソフトウェアが次のものを見つけられない場合に発生します。

  • Solaris Operating System DVD またはインストールサーバー上の Solaris Operating System DVD イメージコピー

  • Solaris SOFTWARE - 1 CD またはインストールサーバー上の Solaris SOFTWARE - 1 CD イメージコピー

対処方法:

インストール用のソフトウェアがマウントされ共有されるように設定してあることを確認します。

  • インストールサーバーの DVD-ROM または CD-ROM ドライブから Solaris をインストールする場合は、Solaris Operating System DVD または Solaris SOFTWARE - 1 CD が CD-ROM ドライブに挿入されてマウントされていること、および /etc/dfs/dfstab ファイルで共有されていることを確認します。

  • インストールサーバーのディスク上にある Solaris Operating System DVD イメージまたは Solaris SOFTWARE - 1 CD イメージのコピーからインストールする場合は、そのコピーのディレクトリパスが /etc/dfs/dfstab ファイル内で共有されていることを確認します。


Timeout waiting for ARP/RARP packet...(SPARC システムのみ)

原因:

1 クライアントはネットワークを介してブートしようとしていますが、認識してくれるシステムを見つけることができません。

対処方法:

1 システムのホスト名が NIS または NIS+ のネームサービスに登録されていることを確認します。また、ブートサーバーの /etc/nsswitch.conf ファイル内の bootparams の検索順序を確認します。

たとえば、/etc/nsswitch.conf ファイル内にある次の行は、JumpStart または Solaris インストールプログラムが最初に NIS マップから bootparams 情報を探すことを示しています。情報が見つからない場合、インストーラはブートサーバーの /etc/bootparams ファイル内を探します。

bootparams: nis files
原因:

2 クライアントの Ethernet アドレスが不正です。

対処方法:

2 インストールサーバーの /etc/ethers ファイルにあるクライアントの Ethernet アドレスが正しいことを確認します。

原因:

3 カスタム JumpStart インストールでは、特定のサーバーをインストールサーバーとして使用するようにプラットフォームグループを add_install_client コマンドによって指定します。add_install_client を使用する際に不正な構成値を使用すると、この問題が発生します。たとえば、インストールするマシンが sun4u であるのに誤って i86pc と指定した場合などが考えられます。

対処方法:

3 正しいアーキテクチャー値を使用して add_install_client を実行し直します。


ip: joining multicasts failed on tr0 - will use link layer broadcasts for multicast (x86 システムのみ)

原因:

このエラーメッセージは、トークンリングカードを使ってシステムをブートしたときに表示されます。Ethernet のマルチキャストとトークンリングのマルチキャストの動作は異なります。ドライバはこのエラーメッセージを返して、マルチキャストアドレスが無効なことを知らせます。

対処方法:

このエラーメッセージは無視してください。マルチキャストがうまく動作しなければ、IP は代わりにレイヤーブロードキャストを使用し、インストールは失敗しません。


Requesting Internet address for Ethernet_Address (x86 システムのみ)

原因:

クライアントはネットワークを介してブートしようとしていますが、認識してくれるシステムを見つけることができません。

対処方法:

システムのホスト名がネームサービスに登録されていることを確認します。システムのホスト名が NIS または NIS+ のネームサービスに登録されているのに、システムがこのエラーメッセージを表示し続ける場合は、リブートしてください。


RPC: Timed out No bootparams (whoami) server responding; still trying... (x86 システムのみ)

原因:

クライアントはネットワークからブートしようとしていますが、インストールサーバー上の /etc/bootparams ファイルにエントリを持つシステムを見つけることができません。

対処方法:

インストールサーバー上で add_install_client を使用します。これにより /etc/bootparams ファイルに適切なエントリが追加され、クライアントがネットワークからブートできるようになります。


Still trying to find a RPL server... (x86 システムのみ)

原因:

システムはネットワークからブートしようとしていますが、サーバーではこのシステムをブートするように設定されていません。

対処方法:

インストールサーバー上で、インストールするシステム用に add_install_client を実行します。add_install_client コマンドは、必要なネットワークブートプログラムを含む /rplboot ディレクトリを設定します。


CLIENT MAC ADDR: FF FF FF FF FF FF (DHCP によるネットワークインストールのみ)

原因:

DHCP サーバーが正しく構成されていません。このエラーは、DHCP マネージャ内でオプションやマクロが正しく定義されていない場合に発生する可能性があります。

対処方法:

DHCP マネージャで、オプションおよびマクロが正しく定義されていることを確認します。ルーターオプションが定義されており、その値がネットワークインストールで使用するサブネットを正しく表していることを確認します。

ネットワークからのブート時の一般的な問題


システムはネットワークからブートされるが、指定したインストールサーバー以外のシステムからブートされる。

原因:

このクライアントが登録された /etc/bootparams エントリと /etc/ethers エントリが別のシステム上に存在します。

対処方法:

ネームサーバー上で、インストールするシステムの /etc/bootparams エントリを更新します。このエントリは、次の構文に従う必要があります。

install_system root=boot_server:path install=install_server:path

また、サブネット内で複数のサーバーの bootparams ファイルにインストールクライアントが登録されてないか確認します。


システムがネットワークからブートしない (DHCP によるネットワークインストールのみ)。

原因:

DHCP サーバーが正しく構成されていません。このエラーは、システムが DHCP サーバーのインストールクライアントとして構成されていない場合に発生することがあります。

対処方法:

DHCP マネージャーソフトウェアで、クライアントシステムのインストールオプションとマクロが定義されていることを確認します。詳細については、『Solaris 10 6/06 インストールガイド (ネットワークインストール)』「DHCP サービスによるシステム構成情報の事前設定 (作業)」を参照してください。

Solaris OS の初期インストール


初期インストールが失敗する。

対処方法:

Solaris のインストールが失敗する場合、インストールを再実行する必要があります。インストールを再実行するには、Solaris Operating System DVD、Solaris SOFTWARE - 1 CD、またはネットワークを利用してシステムをブートします。

Solaris ソフトウェアが部分的にインストールされたあとでは、このソフトウェアのインストールを解除することはできません。バックアップからシステムを復元するか、Solaris インストールの処理をもう一度行う必要があります。


/cdrom/10_606/SUNW xxxx/reloc.cpio: Broken pipe

説明:

このエラーメッセージは参考情報であり、インストールには影響を及ぼしません。読み取りプロセスを持たないパイプに書き込みを行うと発生します。

対処方法:

メッセージは無視して、インストールを継続してください。


WARNING: CHANGE DEFAULT BOOT DEVICE (x86 システムのみ)

原因:

これは参考情報です。システムの BIOS に設定されているデフォルトブートデバイスが、ブート時に Solaris 10 3/05 Device Configuration Assistant (デバイス構成用補助) フロッピーディスクを必要とするように設定されている可能性があります。

対処方法:

インストールを続行します。Solaris 10 3/05 Device Configuration Assistant (デバイス構成用補助) フロッピーディスクを必要としないデバイスに Solaris ソフトウェアをインストールし終わったら、必要に応じて、BIOS に指定されたシステムのデフォルトのブートデバイスを変更します。


x86 のみ –

locale キーワードを使用して初期インストール用のカスタム JumpStart プロファイルをテストする場合は、pfinstall -D コマンドでプロファイルをテストすると失敗します。回避方法については、「Solaris OS のアップグレード」セクションのエラーメッセージ「could not select locale」を参照してください。


Procedurex86: IDE ディスクの不良ブロックの検査

IDE ディスクドライブは、Solaris ソフトウェアがサポートするほかのドライブのように、不良ブロックを自動的に無効にしません。IDE ディスク上に Solaris をインストールする前に、ディスクの検査を実行してください。IDE ディスクの検査を行うには、次の手順に従います。

  1. インストールメディアに応じた方法でブートします。

  2. インストールタイプの選択を求めるプロンプトが表示されたら、オプション 6「Single user shell」を選択します。

  3. format(1M) プログラムを起動します。


    # format
    
  4. ディスク面の検査をする IDE ディスクドライブを指定します。


    # cxdy
    
    cx

    コントローラ番号

    dy

    デバイス番号

  5. fdisk パーティションが存在するかどうかを確認します。

    • Solaris fdisk パーティションが存在する場合、手順 6 へ進みます。

    • Solaris fdisk パーティションが存在しない場合、fdisk コマンドを使用してディスク上に Solaris パーティションを作成します。


      format> fdisk
      
  6. 次のように入力して、表面解析を開始します。


    format> analyze
    
  7. 次のように入力して、現在の設定を確認します。


    analyze> config
    
  8. (省略可能) 次のように入力して、設定を変更します。


    analyze> setup
    
  9. 次のように入力して、不正ブロックを探します。


    analyze> type_of_surface_analysis
    
    type_of_surface_analysis

    read、write、または compare を指定します。

    format が不良ブロックを発見すると、それらの再マッピングを実行します。

  10. 次のように入力して、解析を終了します。


    analyze> quit
    
  11. 再マッピングするブロックを指定するかどうか決定します。

    • 指定しない場合は、手順 12 へ進みます。

    • 指定する場合は、次のコマンドを入力します。


      format> repair
      
  12. 次のように入力して、format プログラムを終了します。


    quit
    
  13. 次のコマンドを入力して、マルチユーザーモードでメディアを再起動します。


    # exit
    

Solaris OS のアップグレード

アップグレード時のエラーメッセージ


No upgradable disks

原因:

/etc/vfstab ファイルのスワップエントリが原因でアップグレードに失敗しました。

対処方法:

/etc/vfstab ファイルの次の行をコメントにしてください。

  • アップグレードしないディスク上のスワップファイルとスライスを指定している行

  • 存在しないスワップファイルを指定している行

  • 使用していないスワップスライスを指定している行


usr/bin/bzcat not found

原因:

パッチクラスタが必要なために Solaris Live Upgrade が失敗しています。

対処方法:

Solaris Live Upgrade のインストールでパッチを使用する必要が生じました。http://sunsolve.sun.com で最新のパッチリストを確認してください。SunSolve Web サイトで infodoc 72099 を検索してください。


Upgradeable Solaris root devices were found, however, no suitable partitions to hold the Solaris install software were found. Upgrading using the Solaris Installer is not possible. It might be possible to upgrade using the Solaris Software 1 CDROM. (x86 システムのみ)

原因:

十分な容量がないため、Solaris SOFTWARE - 1 CD でアップグレードできません。

対処方法:

アップグレードするには、512M バイト以上のスワップスライスを作成するか、別のアップグレード方法 (Solaris Operating System DVD の Solaris インストールプログラム、ネットインストールイメージ、JumpStart など) を選択します。


ERROR: Could not select locale (x86 システムのみ)

原因:

pfinstall -D コマンドを使用して JumpStart プロファイルをドライランテストするとき、次のような条件下ではテストが失敗します。

  • プロファイルに locale キーワードが含まれている。

  • GRUB ソフトウェアが含まれているリリースをテストしている。Solaris 10 1/06 以降のリリースでは、GRUB ブートローダーにより、システムにインストールされているさまざまなオペレーティングシステムを GRUB メニューで簡単にブートできます。

GRUB ソフトウェアの導入に伴い、ミニルートは圧縮されています。ソフトウェアでは、圧縮されたミニルートからロケールのリストを見つけることができなくなりました。ミニルートは最小の Solaris ルート (/) ファイルシステムであり、Solaris インストールメディアに収録されています。

対処方法:

次の手順を実行します。次の値を使用してください。

  • MEDIA_DIR/cdrom/cdrom0/

  • MINIROOT_DIR$MEDIA_DIR/Solaris_10 6/06/Tools/Boot

  • MINIROOT_ARCHIVE$MEDIA_DIR/boot/x86.miniroot

  • TEMP_FILE_NAME/tmp/test

  1. ミニルートアーカイブを圧縮解除します。


    # /usr/bin/gzcat $MINIROOT_ARCHIVE > $TEMP_FILE_NAME
    
  2. lofiadm コマンドを使用して、ミニルートデバイスを作成します。


    # LOFI_DEVICE=/usr/sbin/lofiadm -a $TEMP_FILE_NAME
    # echo $LOFI_DEVICE
    /dev/lofi/1
  3. lofi コマンドを使用して、ミニルートディレクトリの下にミニルートをマウントします。


    # /usr/sbin/mount -F ufs  $LOFI_DEVICE  $MINIROOT_DIR
    
  4. プロファイルをテストします。


    # /usr/sbin/install.d/pfinstall -D -c $MEDIA_DIR $path-to-jumpstart_profile
    
  5. テストが完了したら、lofi デバイスのマウントを解除します。


    # umount  $LOFI_DEVICE
    
  6. lofi デバイスを削除します。


    # lofiadm -d $TEMP_FILE_NAME
    

アップグレード時の一般的な問題


システム上にアップグレード可能なバージョンの Solaris ソフトウェアが存在するにもかかわらず、アップグレードオプションが提供されない。

原因:

1 /var/sadm ディレクトリがシンボリックリンクであるか、別のファイルシステムからマウントされたディレクトリです。

対処方法:

1 /var/sadm ディレクトリをルート (/) または /var ファイルシステムに移動します。

原因:

2 /var/sadm/softinfo/INST_RELEASE ファイルが存在しません。

対処方法:

2 次の形式で新しく INST_RELEASE ファイルを作成します。

OS=Solaris
VERSION=x 
REV=0
x

システム上の Solaris ソフトウェアのバージョン

原因:

3 /var/sadm/softinfo に SUNWusr が存在しません。

対処方法:

3 初期インストールを行う必要があります。この Solaris ソフトウェアはアップグレードできません。


md ドライバの停止または初期化に失敗する。

対処方法:

次の手順に従ってください。


Solaris インストールプログラムがファイルシステムをマウントできないため、アップグレードに失敗する。

原因:

アップグレード時に、スクリプトは、アップグレード対象のルート (/) ファイルシステム上に、システムの /etc/vfstab ファイルに記載されているすべてのファイルシステムをマウントしようとします。インストールプログラムがファイルシステムをマウントできない場合、失敗して終了します。

対処方法:

システムの /etc/vfstab ファイル内のすべてのファイルシステムがマウントできることを確認します。/etc/vfstab ファイル内のマウントできない、あるいは問題の原因になっている可能性があるファイルシステムは、すべてコメントにします。Solaris インストールプログラムはアップグレード中、コメントにしたファイルシステムをマウントしません。アップグレードされるソフトウェアを含むシステムベースのファイルシステム (たとえば /usr) は、コメントにできません。


アップグレードが失敗する。

説明:

システムにアップグレードに対応できるだけの十分なディスク容量がありません。

原因:

「ディスク容量の再配置を伴うアップグレード」で容量の問題をチェックし、自動配置機能による領域の再配置を行わずに解決できるかどうかを調べます。


RAID-1 ボリュームのルート (/) ファイルシステムのアップグレードに関連する問題

対処方法:

ルート (/) ファイルシステムが Solaris ボリュームマネージャーの RAID-1 ボリュームである場合に、アップグレードの問題が発生するときは、『Solaris ボリュームマネージャの管理』の第 25 章「Solaris ボリュームマネージャのトラブルシューティング (作業)」を参照してください。

Procedure問題発生後にアップグレードを継続する方法

アップグレードに失敗し、システムをブートできない場合があります。このような状況は、電源の故障やネットワーク接続の障害などが発生した場合に起こる可能性があります、制御できない場合に発生します。

  1. Solaris Operating System DVD、Solaris SOFTWARE - 1 CD、またはネットワークからシステムをリブートします。

  2. インストール用のアップグレードオプションを選択します。

    Solaris インストールプログラムは、システムが部分的にアップグレードされているか判断し、アップグレードを継続します。

x86: GRUB を使用する場合の Solaris Live Upgrade に関する問題

x86 システムで Solaris Live Upgrade と GRUB ブートローダーを使用すると次のようなエラーが発生する可能性があります。


ERROR: The media product tools installation directory path-to-installation-directory does not exist.


ERROR: The media dirctory does not contain an operating system upgrade image.

説明:

これらのエラーメッセージは、新しいブート環境をアップグレードするために luupgrade コマンドを使用するときに発生します。

原因:

古いバージョンの Solaris Live Upgrade が使用されています。システムにインストールした Solaris Live Upgrade パッケージは、メディアおよびメディアに記録されているリリースと互換性がありません。

対処方法:

Solaris Live Upgrade パッケージは、常にアップグレードするリリースのものを使用してください。

例:

次の例のエラーメッセージは、システムの Solaris Live Upgrade パッケージのバージョンがメディアのパッケージのバージョンと異なることを示しています。


# luupgrade -u -n s10u1 -s /mnt
	Validating the contents of the media </mnt>.
	The media is a standard Solaris media.
	ERROR: The media product tools installation directory 
</mnt/Solaris_10/Tools/Boot/usr/sbin/install.d/install_config> does 
not exist.
	ERROR: The media </mnt> does not contain an operating system upgrade 
image.

ERROR: Cannot find or is not executable: </sbin/biosdev>.


ERROR: One or more patches required by Solaris Live Upgrade has not been installed.

原因:

Solaris Live Upgrade で必要とされる 1 つ以上のパッチが、システムにインストールされていません。このエラーメッセージでは、欠落しているすべてのパッチを認識しているわけではありません。

対処方法:

Solaris Live Upgrade を使用する前に、必要なパッチすべてを必ずインストールしてください。http://sunsolve.sun.com を参照して、最新のパッチリストを使用しているかどうか確認してください。SunSolve Web サイトで infodoc 72099 を検索してください。


ERROR: Device mapping command </sbin/biosdev> failed. Please reboot and try again.

原因:

1 Solaris Live Upgrade が、以前の管理作業が原因でデバイスをマップできません。

対処方法:

1 システムをリブートして、もう一度 Solaris Live Upgrade を実行します

原因:

2 システムをリブートしても同じエラーメッセージが表示される場合は、2 つ以上の同一ディスクがあります。デバイスのマッピングコマンドがそれらのディスクを区別できません。

対処方法:

2 ディスクの一方に、新しいダミーの fdisk パーティションを作成します。fdisk(1M) のマニュアルページを参照してください。そのあとで、システムをリブートします。


Cannot delete the boot environment that contains the GRUB menu

原因:

Solaris Live Upgrade には、ブート環境に GRUB メニューが含まれる場合はブート環境を削除できないという制限があります。

対処方法:

lumake(1M) コマンドまたは luupgrade(1M) コマンドを使用してブート環境を再使用します。


The file system containing the GRUB menu was accidentally remade. However, the disk has the same slices as before. For example, the disk was not re-sliced.

原因:

GRUB メニューを含むファイルシステムは、システムをブート可能な状態に維持するために不可欠です。Solaris Live Upgrade コマンドは、GRUB メニューを破棄しません。ただし、Solaris Live Upgrade コマンド以外のコマンドを使用して GRUB メニューのあるファイルシステムを誤って再作成または破棄すると、回復ソフトウェアは GRUB メニューの再インストールを試みます。回復ソフトウェアは、次のリブート時に GRUB メニューを同じファイルシステムに戻します。たとえば、ファイルシステムで newfs または mkfs コマンドを使用し、誤って GRUB メニューを破棄してしまったとします。GRUB メニューを正しく復元するには、スライスが次の条件を満たす必要があります。

  • マウント可能なファイルシステムが含まれている

  • スライスが以前に存在していた Solaris Live Upgrade ブート環境の一部である

システムをリブートする前に、必要であればスライスを修正します。

対処方法:

システムをリブートします。GRUB メニューのバックアップコピーが自動的にインストールされます。


The GRUB menu's menu.lst file was accidentally deleted.

対処方法:

システムをリブートします。GRUB メニューのバックアップコピーが自動的にインストールされます。

ProcedureVeritas VxVm の実行中に Solaris Live Upgrade を使用してアップグレードするとシステムパニックが発生する

実行中の Veritas VxVM で Solaris Live Upgrade を用いてアップグレードを行う場合、次の手順でアップグレードを行わないと、リブート時にシステムパニックが発生します。この問題は、パッケージが Solaris の最新のパッケージガイドラインに従っていない場合に発生します。

  1. 非アクティブブート環境を作成します。『Solaris 10 6/06 インストールガイド (Solaris Live Upgrade とアップグレードの計画)』「新しいブート環境の作成」を参照してください。

  2. 非アクティブブート環境をアップグレードする前に、非アクティブブート環境上の既存の Veritas ソフトウェアを無効にする必要があります。

    1. 非アクティブブート環境をマウントします。


      # lumount inactive_boot_environment_name mount_point
      

      次に例を示します。


      # lumount solaris8 /mnt 
      
    2. 次の例のように、vfstab が含まれているディレクトリに移動します。


      # cd /mnt/etc
      
    3. 次の例のように、非アクティブブート環境の vfstab ファイルをコピーします。


      # cp vfstab vfstab.501
      
    4. 次の例のように、コピーされた vfstab 内のすべての Veritas ファイルシステムエントリをコメントにします。


      #  sed  '/vx\/dsk/s/^/#/g'  < vfstab >  vfstab.novxfs
      

      各行の最初の文字が # に変わり、その行がコメント行になります。このコメント行は、システムファイルのコメント行とは異なります。

    5. 次の例のように、変更した vfstab ファイルをコピーします。


      # cp vfstab.novxfs vfstab
      
    6. 次の例のように、非アクティブブート環境のシステムファイルがあるディレクトリに移動します。


      # cd /mnt/etc
      
    7. 次の例のように、非アクティブブート環境のシステムファイルをコピーします。


      # cp system system.501
      
    8. drv/vx を含むすべての forceload: エントリをコメントアウトします。drv/vx を含むものが対象です。


      # sed '/forceload:   drv\/vx/s/^/*/' <system> system.novxfs
      

      各行の最初の文字が * に変わり、その行がコメント行になります。このコメント行は、vfstab ファイルのコメント行とは異なります。

    9. 次の例のように、Veritas install-db ファイルを作成します。


      # touch vx/reconfig.d/state.d/install-db
      
    10. 非アクティブブート環境のマウントを解除します。


      # luumount inactive_boot_environment_name 
      
  3. 非アクティブブート環境をアップグレードします。『Solaris 10 6/06 インストールガイド (Solaris Live Upgrade とアップグレードの計画)』の第 9 章「Solaris Live Upgrade によるアップグレード (作業)」を参照してください。

  4. 非アクティブブート環境をアクティブにします。『Solaris 10 6/06 インストールガイド (Solaris Live Upgrade とアップグレードの計画)』「ブート環境のアクティブ化」を参照してください。

  5. システムをシャットダウンします。


    # init 0
    
  6. 非アクティブブート環境をシングルユーザーモードでブートします。


    OK boot -s
    

    vxvm または VXVM を含むメッセージとエラーメッセージがいくつか表示されますが、これらは無視してかまいません。非アクティブブート環境がアクティブになります。

  7. Veritas をアップグレードします。

    1. 次の例のように、システムから Veritas VRTSvmsa パッケージを削除します。


      # pkgrm VRTSvmsa
      
    2. Veritas パッケージがあるディレクトリに移動します。


      # cd /location_of_Veritas_software
      
    3. システムに最新の Veritas パッケージを追加します。


      #  pkgadd -d `pwd` VRTSvxvm VRTSvmsa VRTSvmdoc VRTSvmman VRTSvmdev
      
  8. 元の vfstab とシステムファイルを復元します。


    # cp /etc/vfstab.original /etc/vfstab
    # cp /etc/system.original /etc/system
    
  9. システムをリブートします。


    # init 6
    

x86: 既存のサービスパーティションが存在しないシステムでは、デフォルトでサービスパーティションが作成されない

診断・サービスパーティションの存在しないシステム上に Solaris 10 6/06 OS をインストールすると、インストールプログラムがデフォルトでサービスパーティションを作成しない場合があります。Solaris パーティションと同じディスクにサービスパーティションを作成する場合、Solaris 10 6/06 OS をインストールする前にサービスパーティションを作り直す必要があります。

サービスパーティションが存在するシステム上に Solaris 8 2/02 OS をインストールすると、インストールプログラムがサービスパーティションを保持しない場合があります。サービスパーティションを保持するように fdisk ブートパーティションレイアウトを手動で編集しなかった場合、インストールプログラムはインストール時にサービスパーティションを削除します。


注 –

Solaris 8 2/02 OS のインストール時にサービスパーティションの保持を明示的に指定しなかった場合、サービスパーティションを作り直して Solaris 10 6/06 OS にアップグレードすることができなくなる可能性があります。


Solaris パーティションを含むディスクにサービスパーティションを含めたい場合、次のいずれかの方法を選択してください。

Procedureネットワークインストールイメージまたは Solaris Operating System DVD からのソフトウェアのインストール

ネットワークインストールイメージからソフトウェアをインストールする場合、またはネットワーク経由で Solaris Operating System DVD からソフトウェアをインストールする場合は、次の手順を実行します。

  1. ディスクの内容を削除します。

  2. インストール前に、システムの診断 CD を使ってサービスパーティションを作成します。

    サービスパーティションの作成方法については、ハードウェアのマニュアルを参照してください。

  3. ネットワークからシステムをブートします。

    fdisk パーティションのカスタマイズ」画面が表示されます。

  4. 「デフォルト」をクリックし、デフォルトのブートディスクパーティションレイアウトを読み込みます。

    インストールプログラムにより、サービスパーティションが保持され、Solaris パーティションが作成されます。

ProcedureSolaris SOFTWARE - 1 CD またはネットワークインストールイメージからのインストール

Solaris インストールプログラムを使用して、Solaris SOFTWARE - 1 CD またはブートサーバー上のネットワークインストールイメージからインストールを実行するには、次の手順を実行します。

  1. ディスクの内容を削除します。

  2. インストール前に、システムの診断 CD を使ってサービスパーティションを作成します。

    サービスパーティションの作成方法については、ハードウェアのマニュアルを参照してください。

  3. インストールプログラムにより、Solaris パーティションの作成方法を選択するよう求められます。

  4. システムをブートします。

  5. 残りのディスクを使用して Solaris パーティションを配置します」を選択します。

    インストールプログラムにより、サービスパーティションが保持され、Solaris パーティションが作成されます。

  6. インストールが完了します。

付録 B その他の SVR4 パッケージ要件 (リファレンス)

この付録は、パッケージ (特に Sun 以外のパッケージ) のインストールや削除を行うシステム管理者を対象としています。これらのパッケージ要件に準拠することによって、次のことが可能になります。

この章の内容は次のとおりです。

現在の OS の変更を回避

この節の要件に従って、現在稼働中の OS の変更を回避します。

絶対パスの使用

オペレーティングシステムを正常にインストールするには、パッケージが代替ルート (/) ファイルシステム (Solaris Live Upgrade の非アクティブブート環境など) を認識し、正常に対話する必要があります。

パッケージの pkgmap ファイル (パッケージマップ) には、絶対パスを指定できます。これらのパスが存在する場合、そのファイルは、pkgadd コマンドの -R オプションとの相対パスに書き込まれます。絶対パスと相対 (再配置可能) パスの両方を含むパッケージは、代替ルート (/) ファイルシステムにもインストールできます。絶対ファイルであれ再配置可能ファイルであれ、その前には $PKG_INSTALL_ROOT が付加されるため、pkgadd によるインストールでは、すべてのパスが正しく解釈されます。

pkgadd -R コマンドの使用

pkgadd -R オプションを使ってパッケージをインストールしたり、pkgrm -R オプションを使ってパッケージを削除する場合には、パッケージが、動作中のシステムを変更してはいけません。この機能は、カスタム JumpStart、Solaris Live Upgrade、非大域ゾーン、およびディスクレスクライアントによって使用されます。

さらに、pkgadd -R オプションを使ってパッケージをインストールしたり、pkgrm -R オプションを使ってパッケージを削除する場合には、パッケージに同梱のスクリプトで、動作中のシステムを変更してはいけません。インストールスクリプトを作成する場合には、参照するディレクトリやファイルの前に $PKG_INSTALL_ROOT 変数を付加する必要があります。パッケージでは、書き込むすべてのディレクトリやファイルの前に $PKG_INSTALL_ROOT を付加する必要があります。さらに、パッケージでは、$PKG_INSTALL_ROOT 接頭辞を付加せずにディレクトリを削除すべきではありません。

表 B–1 に、スクリプト構文の例を示します。

表 B–1 インストールスクリプト構文の例

スクリプトタイプ 

正しい構文 

正しくない構文 

Bourne シェル「if」ステートメントの一部

if [ -f ${PKG_INSTALL_ROOT}\
/etc/myproduct.conf ] ; then
if [ -f /etc/myproduct.conf ] ; \
 then

ファイルの削除 

/bin/rm -f ${PKG_INSTALL_ROOT}\
/etc/myproduct.conf
 /bin/rm -f /etc/myproduct.conf 

ファイルの変更 

echo "test=no" > ${PKG_INSTALL_ROOT}\
/etc/myproduct.conf
echo "test=no" > \
/etc/myproduct.conf

$PKG_INSTALL_ROOT$BASEDIR の相違点の概要

$PKG_INSTALL_ROOT は、パッケージを追加しようとするマシンのルート (/) ファイルシステムの場所です。この値は、pkgadd コマンドの -R 引数の後にセットされます。たとえば、次のコマンドを実行すると、パッケージのインストール時に $PKG_INSTALL_ROOT の値は /a になります。


# pkgadd -R /a SUNWvxvm

$BASEDIR は、再配置可能なパッケージオブジェクトがインストールされる「再配置可能」なベースディレクトリを指しています。ここにインストールされるのは、再配置可能オブジェクトだけです。再配置可能でないオブジェクト (pkgmap ファイルに 「絶対」パスが指定されているオブジェクト) は、必ず、非アクティブブート環境からの相対位置にインストールされます。$BASEDIR からの相対位置ではありません。再配置可能なオブジェクトがないパッケージは、絶対パッケージ (再配置不可) と呼ばれます。その場合、$BASEDIR は未定義であるため、これをパッケージに添付されているスクリプトで使用することはできません。

たとえば、パッケージの pkgmap ファイルに次のエントリがあるとします。


1 f none sbin/ls 0555 root sys 3541 12322 1002918510
1 f none /sbin/ls2 0555 root sys 3541 12322 2342423332

さらに、pkginfo ファイルには、 $BASEDIR が次のように指定されているとします。


BASEDIR=/opt

このパッケージを次のコマンドでインストールすると、 ls は、 /a/opt/sbin/ls としてインストールされますが、ls2 は、 /a/sbin/ls2 としてインストールされます。


# pkgadd -R /a SUNWtest

スクリプト作成のガイドライン

パッケージプロシージャースクリプトは、現在稼働中の OS から独立し、OS を変更しないようにする必要があります。スクリプトには、パッケージのインストールや削除の実行中に行うアクションを定義します。事前に決められたプロシージャー名で作成できるスクリプトが 4 つあります。preinstallpostinstallpreremove、および postremove です。

表 B–2 スクリプトの作成のガイドライン

ガイドライン 

Solaris Live Upgrade への影響 

非大域ゾーンへの影響 

スクリプトは Bourne シェル (/bin/sh) で作成する必要があります。pkgadd コマンドは、スクリプトの実行時にインタープリタとして Bourne シェルを使用します。

○ 

○ 

スクリプトはプロセスの開始や停止を行なったり、pstruss などのコマンドの出力に依存したりしてはいけません。pstruss はオペレーティングシステムに依存し、稼働中のシステムに関する情報を報告します。

○ 

○ 

スクリプトでは、exprcpls などの標準的な UNIX コマンドや、シェルスクリプトの作成を容易にするそのほかのコマンドを自由に使用できます。

○ 

○ 

パッケージはサポートされているすべてのリリースで動作する必要があるため、スクリプトで呼び出すコマンドはこれらすべてのリリースで利用可能なものでなければなりません。したがって、Solaris 8 リリースのあとで追加または削除されたコマンドは使用できません。 

特定のコマンドまたはオプションが Solaris 8、9、または 10 リリースでサポートされているかどうかを調べるには、http://docs.sun.com で該当するバージョンの Solaris Reference Manual Collection を参照してください。

○ 

 

ディスクレスクライアントの互換性維持

パッケージでは、パッケージ自体が提供しているコマンドを実行してはいけません。これは、ディスクレスクライアントの互換性を維持するためであると同時に、まだインストールされていない共有ライブラリを必要とするコマンドの実行を避けるためです。

パッケージの検証

すべてのパッケージは pkgchk の検証にパスしなければなりません。パッケージを作成したらインストールする前に、次のコマンドでパッケージをチェックする必要があります。


# pkgchk -d dir_name pkg_name
dir_name

パッケージがあるディレクトリの名前を指定します。

pkg_name

パッケージの名前を指定します。


例 B–1 パッケージのテスト

パッケージを作成したら、pkgadd コマンドに -R dir_name オプションを指定して、これを代替ルート (/) ファイルシステムにインストールしてテストする必要があります。パッケージをインストールしたら、次のように、パッケージが正しいかどうかを pkgchk コマンドでチェックします。


# pkgadd -d . -R /a SUNWvxvm
# pkgchk -R /a SUNWvxvm

エラーが表示されないことを確認します。



例 B–2 /export/SUNWvxvm 上のパッケージのテスト

パッケージが /export/SUNWvxvm にある場合は、コマンドを次のように指定します。


# pkgchk -d /export SUNWvxvm

エラーが表示されないことを確認します。


ファイルの作成、変更、および削除時に、その他のコマンドでパッケージをチェックすることもできます。次にコマンド例を示します。


# TEMPDIR=/a; export TEMPDIR
# truss -t open /usr/sbin/pkgadd -R ${TEMPDIR} SUNWvxvm \
2>&1 > /dev/null | grep -v O_RDONLY | grep -v \
'open("'${TEMPDIR}

インストール中およびアップグレード中のユーザー操作の回避

次の標準 Solaris ユーティリティーを使用する際、ユーザーの情報入力なしに、パッケージの追加や削除が行われる必要があります。

パッケージをテストして、ユーザー操作なしでインストールされるようにするには、pkgadd -a コマンドで新しい管理ファイルを設定します。-a オプションは、デフォルトの管理ファイルの代わりにユーザー定義の管理ファイルを使用することを意味します。デフォルトのファイルを使用すると、情報の入力が必要になることがあります。管理ファイルを作成すれば、pkgadd でこのようなチェックを省略し、ユーザーの確認なしでパッケージをインストールすることができます。詳細については、admin(4) または pkgadd(1M) のマニュアルページを参照してください。

次に、pkgadd コマンドによる管理ファイルの使用例を示します。


例 B–3 インストール管理ファイル

次に示すのは、pkgadd ユーティリティーでユーザーの入力をほとんど必要としないインストール管理ファイルの例です。パッケージがシステムで利用可能な容量を超えた容量を必要としない限り、pkgadd ユーティリティーはこのファイルを使用して、ユーザーに情報の入力を求めることなくインストールを実行します。

mail=
instance=overwrite
partial=nocheck
runlevel=nocheck
idepend=nocheck
space=ask
setuid=nocheck
confiict=nocheck
action=nocheck
basedir=default

ゾーンのパッケージパラメータの設定

パッケージが保持するパラメータにより、非大域ゾーンのインストールされたシステムで内容を配布および可視にする方法が制御されます。SUNW_PKG_ALLZONESSUNW_PKG_HOLLOW、および SUNW_PKG_THISZONE パッケージパラメータは、ゾーンがインストールされているパッケージの特性を定義します。非大域ゾーンのインストールされたシステムでパッケージを管理できるようにするには、これらのパラメータを設定する必要があります。

次の表に、パッケージパラメータの設定に使用できる 4 つの有効な組み合わせを示します。次の表に示されていない設定の組み合わせは無効であり、そのような設定を選択するとパッケージのインストールは失敗します。


注 –

3 つのパッケージパラメータをすべて設定したことを確認してください。3 つのパッケージパラメータをすべて空のままにしてもかまいません。ゾーンのパッケージパラメータが見つからない場合、パッケージツールでは false の設定として解釈されますが、パラメータの設定を省略しないように強くお勧めします。3 つのパッケージパラメータをすべて設定することにより、パッケージをインストールまたは削除するときのパッケージツールの動作を正確に指定します。


表 B–3 ゾーンのパッケージパラメータの有効な設定

SUNW_PKG_ALLZONES の設定

SUNW_PKG_HOLLOW の設定

SUNW_PKG_THISZONE の設定

パッケージの説明 

false 

false 

false 

ゾーンのパッケージパラメータのいずれにも値を指定しないパッケージの場合、これがデフォルト設定として使用されます。 

この設定を持つパッケージは、大域ゾーンまたは非大域ゾーンにインストールできます。 

  • 大域ゾーン内で pkgadd コマンドを実行すると、パッケージは大域ゾーンおよびすべての非大域ゾーンにインストールされます。

  • 非大域ゾーン内で pkgadd コマンドを実行すると、パッケージはその非大域ゾーンだけにインストールされます。

どちらの場合も、パッケージがインストールされたすべてのゾーンで、パッケージの内容全体が可視になります。 

false 

false 

true 

この設定を持つパッケージは、大域ゾーンまたは非大域ゾーンにインストールできます。インストール後に新しい非大域ゾーンを作成した場合、パッケージはこれらの新しい非大域ゾーンには伝達されません。 

  • 大域ゾーン内で pkgadd コマンドを実行すると、パッケージは大域ゾーンだけにインストールされます。

  • 非大域ゾーン内で pkgadd コマンドを実行すると、パッケージはその非大域ゾーンだけにインストールされます。

どちらの場合も、パッケージがインストールされたゾーンで、パッケージの内容全体が可視になります。 

true 

false 

false 

この設定を持つパッケージは、次の要件に従います。 

  • すべてのゾーンに同じパッケージが存在する

  • すべてのゾーンでパッケージのバージョンが同じである

  • パッケージへのパッチがある場合は、すべてのゾーンに同じパッチが存在する

この設定を持つパッケージは、大域ゾーン内で pkgadd コマンドを実行することによってのみインストールできま す。非大域ゾーン内で、pkgadd コマンドを実行してこのパッケージをインストールしようとすると失敗します。

pkgadd コマンドを大域ゾーン内で実行すると、パッケージはまず大域ゾーンにインストールされ、続いてすべての非大域ゾーンにインストー ルされます。すべてのゾーンでパッケージの内容全体が可視になります。

true 

true 

false 

この設定を持つパッケージは、大域管理者が大域ゾーンだけにインストールできます。pkgadd コマンドを実行すると、パッケージの内容が大域ゾーンに完全にインストールされます。パッケージパラメータの値がこのように設定されている場合、パッケージの内容自体はどの非大域ゾーンにも提供されません。パッケージをインストール済みとして表示するために必要なパッケージインストール情報だけが、すべての非大域ゾーンにインストールされます。これにより、このパッケージに依存するほかのパッケージをインストールできるようになります。「空の」パッケージの詳細については、『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の第 23 章「ゾーンがインストールされている Solaris システムでのパッケージとパッチについて (概要)」を参照してください。

パッケージの依存関係を検査できるように、パッケージはすべてのゾーンでインストール済みとして表示されます。 

  • 大域ゾーンでは、パッケージの内容全体が可視になります。

  • 完全ルート非大域ゾーンでは、パッケージの内容全体が不可視になります。

  • 非大域ゾーンが大域ゾーンからファイルシステムを継承する場合、このファイルシステムにインストールされているパッケージは非大域ゾーンで可視になります。パッケージで提供されるほかのすべてのファイルは、非大域ゾーン内では不可視になります。

    たとえば、疎ルート非大域ゾーンは、特定のディレクトリを大域ゾーンと共有します。これらのディレクトリは読み取り専用です。疎ルート非大域ゾーンは、/platform などのファイルシステムを共有します。もう 1 つの例は、起動するハードウェアだけに関連するファイルがパッケージで提供されている場合です。


注 –

パッケージを非大域ゾーンにインストールしようとすると失敗します。


説明 

参照先 

パッケージとゾーンの詳細 

『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の第 23 章「ゾーンがインストールされている Solaris システムでのパッケージとパッチについて (概要)」

疎ルートゾーンと完全ルートゾーンの概要 

『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の第 16 章「Solaris ゾーンの紹介」

パッケージの特性およびパラメータの詳細 

pkginfo(4)

パッケージパラメータ値の表示の詳細 

pkgparam(1)

背景情報

次の参照先から、パッケージ要件の背景情報と特定のコマンド構文を確認できます。

パッケージ要件の詳細と用語の定義 

『Application Packaging Developer’s Guide』の第 6 章「Advanced Techniques for Creating Packages」

パッケージの追加と削除、ならびにインストール管理ファイルに関する基本情報 

『Solaris のシステム管理 (基本編)』の第 16 章「ソフトウェアの管理 (概要)」

この付録で紹介した特定のコマンドに関する詳細情報は、これらのマニュアルページを参照してください 

dircmp(1)fssnap(1M)ps(1)、または truss(1)pkgadd(1M)pkgchk(1M)、または pkgrm(1M)

Solaris Live Upgrade の概要 

『Solaris 10 6/06 インストールガイド (Solaris Live Upgrade とアップグレードの計画)』の第 6 章「Solaris Live Upgrade (概要)」

カスタム JumpStart の概要 

第 5 章「カスタム JumpStart (概要)」

Solaris ゾーンの概要 

『Solaris のシステム管理 (Solaris コンテナ : 資源管理と Solaris ゾーン)』の第 16 章「Solaris ゾーンの紹介」