ここでは、Solaris 10 OS のシステム管理に関するバグ情報について説明します。
システムが Solaris Trusted Extensions 用に構成されている場合、SMC を使用して役割を作成すると、役割のホームディレクトリの所有者が正しく設定されないことがあります。さまざまなエラーメッセージが表示されます。
回避方法: root ユーザーとしてログインします。役割を作成した後、この新しい役割のホームディレクトリに正しい所有者とグループが設定されていることを確認します。
# ls -ld /export/home/myrole drwxr-xr-x 15 myrole sysadmin 1024 Jul 26 15:29 /export/home/myrole |
グループは、すべての役割に対して sysadmin(14) になるはずです。そうでない場合は、次の chown コマンドを使用して、グループを sysadmin(14) に変更します。
# chown myrole:sysadmin /export/home/myrole |
Storade の rasagent を Emulex HBA ドライバのバージョン 2.20K 以降とともに実行しているとき、次のエラーメッセージが /var/adm/messages ファイルに記録されます。
NOTICE: fp_rnid_intr: FP_IS_PKT_ERROR failed |
回避方法: これらのメッセージは無視してかまいません。これらのメッセージが /var/adm/messages ファイルに記録されないようにするには、Storade の rasagent デーモンを停止します。
iSCSI プロセスデーモン内で、iscsitadm create target コマンドに省略可能なパラメータ --alias または -a を使用すると、プロセスコードダンプの作成によってデーモンプロセスにパニックが発生することがあります。
iSCSI ターゲットデーモンプロセスは Solaris SMF 機能によって制御されているため、プロセスがコアファイルを作成している間に、SMF 機能が一時停止のあとで自動的に再起動します。
回避方法: iscsitadm create target CLI コマンドには、省略可能なパラメータ --alias または -a を指定しないでください。これらの省略可能なパラメータは、iscsitadm modify target CLI コマンドに使用します。
実際に iSCSI を使用する前に、JIST (Java technology-based Interoperability Standards Test Suite) の読み取り、書き込み、または比較の負荷テストを 10 スレッドで実行すると、iSCSI ターゲットでコアダンプが生成されます。このコアダンプが原因で、JIST テストでデータ比較エラーが発生することがあります。場合によっては、JIST が正常に実行されることもあります。ただし、新しいコアファイルが生成されます。
回避方法: ありません。
元のホストと新しいホストに同じパッチレベルのパッケージがインストールされていても、中間のパッチ履歴が異なっている場合は、ゾーンの接続に失敗することがあります。さまざまなエラーメッセージが表示されます。表示されるエラーメッセージは、2 つのホストのパッチ履歴によって異なります。
回避方法: 元のホストマシンと新しいホストマシンとで、各パッチが同じバージョン順序で適用されるようにします。
AHCI 準拠の SATA コントローラを備えたシステムの場合、通常は BIOS 設定でコントローラを AHCI、レガシー、または RAID モードに設定できます。Solaris は AHCI モードとレガシーモードをサポートしています。
Solaris の初期インストール後は、BIOS の SATA モードの設定を変更してはいけません。Solaris のアップグレードの前後にも、SATA モードの設定を変更してはいけません。Solaris のインストール後に BIOS の SATA モード設定を変更すると、システムがリセットされ、ブートに失敗しますが、その原因は示されません。
回避方法: BIOS 設定を変更した結果ブートに失敗した場合、Solaris をブートするには、元の設定に戻してください。
パッチ 119254-42 および 119255-42 以降、パッチインストールユーティリティー patchadd および patchrm が変更されて、機能を提供する一部のパッチの処理方法が変更されました。このユーティリティーの変更は、これらのパッチを任意の Solaris 10 リリースにインストールする場合に影響します。これらの「遅延起動」パッチは、機能パッチで提供される広範な変更をより適切に処理します。
このような大規模なカーネルパッチでは常にリブートが必要ですが、ループバックファイルシステム lofs によって加えられた変更がこの必須のリブートでアクティブになるようになりました。lofs は稼働中のシステムの安定性を保証します。パッチの README には、どのパッチでリブートが必要になるかが説明されています。
パッチの操作は、パッチの README で推奨されている場合は特に、シングルユーザーモードで実行することを強くお勧めします。
非大域ゾーンを実行している場合や lofs が無効になっている場合は、遅延起動パッチをインストールまたは削除する際に、次の点を考慮してください。
このパッチ操作を行うには、すべての非大域ゾーンが停止状態になっている必要があります。パッチを適用する前に非大域ゾーンを停止してください。
遅延起動パッチの適用を正常に完了するには、ループバックファイルシステム lofs が必要です。Sun Cluster 3.1 または Sun Cluster 3.2 を実行しているシステムでは、lofs が有効になっていると HA-NFS 機能が制限されるため、lofs がオフになっている可能性があります。したがって、遅延起動パッチをインストールする前に、次の手順に従ってループバックファイルシステムを再度有効にする必要があります。
/etc/system ファイル内の次の行を削除するか、コメントにします。
exclude:lofs |
システムをリブートします。
パッチをインストールします。
パッチのインストール操作を完了した後、/etc/system ファイルから同じ行を復元するか、コメントを解除します。
システムをリブートして、通常の運用を再開します。
エラーメッセージは表示されません。
回避方法: パッチの適用を管理するには Solaris Live Upgrade をお勧めします。Solaris Live Upgrade を使用すると、稼働中のシステムにパッチを適用する場合の問題を防ぐことができます。Solaris Live Upgrade は、パッチの適用に伴う停止時間を短縮し、問題発生時のフォールバック機能を提供してリスクを低減します。詳細は、『Solaris 10 8/07 インストールガイド (Solaris Live Upgrade とアップグレードの計画)』を参照してください。
ZFS などの大規模なファイルシステムで実行されるアプリケーションでは、statvfs(2) または statfs(2) を使用してファイルシステムの状態に関する情報を取得すると、エラーが発生します。次のエラーメッセージが表示されます。
Value too large for defined data type |
回避方法: アプリケーションでは、代わりに statvfs64() を使用するようにしてください。
x86 システムで Solaris Trusted Extensions のアンインストールが失敗します。システムのリブート時に、次のエラーメッセージが表示されます。
NOTICE: template type for bge0 incorrectly configured Change to CIPSO type for 129.146.108.249 ifconfig: setifflags: SIOCSLIFFLAGS: bge0: Invalid argument NOTICE: bge0 failed: Cannot insert CIPSO template for local addr 129.146.108.249 ip_arp_done: init failed |
その後、システムがハングアップします。
回避方法: 次の手順を実行します。
Solaris Trusted Extensions をアンインストールします。ただし、システムはリブートしないでください。
次のコマンドを実行します。
# touch /etc/system # bootadm update-archive |
システムをリブートします。
ゾーンに対応していない Solaris リリースを実行しているシステムでは、非大域ゾーンがインストールされている大域ゾーンの代替ルートパスを指定するために、patchadd -R などの -R オプションを受け入れるコマンドを使用しても正常に機能しません。
luupgrade [-t、-T、-p、-P] コマンドを使用した場合に表示されるエラーメッセージとは異なり、この場合は、コマンドレベルでの適切な制限の使用に関するエラーメッセージは表示されません。
-R オプションが機能しなかったことを示すものは何もありません。このコマンドが失敗した結果として、インストールされているどの非大域ゾーンにも Solaris 10 のパッケージやパッチはインストールされません。
この問題は、パッケージやパッチをインストールまたはアンインストールするときに発生します。
代替ブート環境に非大域ゾーンが構成されていても、非大域ゾーンがインストール済みでない場合には、-R オプションが機能します。ただし、潜在的な問題を回避するには、あるいは、代替ルートパスとして使用される非大域ゾーンがインストールされているかどうかわからない場合は、常に -R オプションの使用を制限してください。
詳細は、次のマニュアルページを参照してください。
patchadd(1M)
patchrm(1M)
pkgadd(1M)
pkgrm(1M)
回避方法 1: OS を Solaris 10 1/06 リリース以上にアップグレードします。
Solaris 10 3/05 リリースを実行している場合は、次のパッチをインストールして、代替ルートパスを作成するための -R オプションを受け入れるコマンドを使用可能にします。
SPARC ベースのシステムの場合は、パッチ ID 119254-19。
x86 ベースのシステムの場合は、パッチ ID 119255-19。
回避方法 2: patchadd -R コマンドなど、代替ルートパスを作成するための -R オプションを受け入れるすべてのコマンドの使用を制限します。
代わりに、代替ルート (Solaris 10 リリースなど) をアクティブ OS としてブートします。その後、-R オプションは使用せずに、Solaris 10 のパッケージとパッチのインストールやアンインストールを行います。
Sun Patch Manager Tool 2.0 が動作するシステムでは、Sun Patch Manager Tool 1.0 などのパッチマネージャーツールが動作するリモートシステムを管理できます。
ただし、旧バージョンのパッチマネージャーツールが動作するシステムで、Patch Manager Tool 2.0 が動作するリモートシステムを管理することはできません。旧バージョンは次のとおりです。
Sun Patch Manager Base Software 1.x
Sun Patch Manager Tool 1.0
Solaris 8 OS にはパッチマネージャーツール用の CIM/WBEM (Common Information Model/Web Based Enterprise Management) サポートがありません。したがって、Solaris 8 システムではパッチマネージャーによるリモート管理が行えません。
動的再構成 (DR) の実行中に、エラーメッセージが表示されることがあります。DR パスに含まれるデバイスで入出力処理がアクティブな状態のときに、DR を実行すると、メッセージが表示されます。メッセージが表示されたあとに、入出力処理が再試行され、最終的には成功します。表示されるメッセージの例を次に示します。
Jul 28 12:23:19 qame10-a scsi: [ID 107833 kern.warning] WARNING: /ssm@0,0/pci@19,700000/SUNW,qlc@2,1/fp@0,0/ssd@w2100000c5056fa13,0 (ssd6): Jul 28 12:23:19 qame10-a transport rejected fatal error Jul 28 12:22:08 qame10-a scsi: [ID 107833 kern.warning] WARNING: /ssm@0,0/pci@19,700000/SUNW,qlc@2,1/fp@0,0/ssd@w2100000c5056f9a7,0 (ssd36): Jul 28 12:22:08 qame10-a SCSI transport failed: reason 'timeout': retrying command |
回避方法: ありません。このエラーメッセージは無視してください。
patchadd コマンドと patchrm コマンドは、ファイルシステムを継承した非大域ゾーンでは適切に動作しません。この結果、次の状況のときにこれらのゾーンで pkgchk コマンドを実行すると、パッケージに関するエラーメッセージが生成されることがあります。
大域ゾーンで patchadd コマンドを使用して、Solaris 10 ゾーンシステムにパッチを適用します。
patchrm コマンドを使用して、適用したパッチを削除します。
ファイルシステムを継承した非大域ゾーンで、削除したパッチに含まれるパッケージに関する情報について pkgchk コマンドを使って確認します。
上記の状況のときに、SUNWcsu に対して pkgchk コマンドを使用すると、次のようなメッセージが表示されます。
# pkgchk SUNWcsu ERROR: /usr/lib/inet/certdb modtime <04/26/05 10:55:26 PM> expected <01/23/05 01:48:24 AM> actual file size <36012> expected <42152> actual file cksum <37098> expected <19747> actual ERROR: /usr/lib/inet/certlocal modtime <04/26/05 10:55:26 PM> expected <01/23/05 01:48:24 AM> actual file size <44348> expected <84636> actual |
回避方法: ありません。このエラーが発生しても問題はありません。このエラーメッセージは無視してください。
Solaris 10 8/07 リリースを使用するシステムは IPsec に関する問題を引き起こす可能性があります。この問題は、新規にインストールしたシステム、つまりブート時に新しい SMF (Service Management Facility) マニフェストを多数インポートするシステムで発生することがあります。このようなブートを実行したあとに、svc:/system/cryptosvc:default に含まれる暗号化フレームワークが初期化される前に、svc:/network/initial:default に含まれる IPsec が初期化されることがあります。認証アルゴリズムまたは暗号化アルゴリズムが使用できないため、IPsec セキュリティーアソシエーションの作成に失敗して、次のようなエラーメッセージが表示されることがあります。
PF_KEY error: type=ADD, errno=22: Invalid argument, diagnostic code=40: Unsupported authentication algorithm |
このエラーは、IPsec サービスを必要とする Sun Fire E25K システムで DR を使用する場合などに発生することがあります。
回避方法: IPsec サービスを使用する処理を実行する前に、新しい SMF マニフェストを多数インポートするブートを実行してから次の手順を実行します。
ブート後に、次のコマンドを実行します。
ipsecalgs -s |
システムに /etc/inet/secret/ipseckeys が存在する場合は、次のコマンドも実行します。
ipseckey -f /etc/inet/secret/ipseckeys |
これで、Sun Fire E25K システム上で DR を使用するなど、IPsec セキュリティーアソシエーションを作成する処理を実行できる状態になります。
この手順を実行する必要があるのは、ブート時に新しい SMF マニフェストが多数インポートされる場合だけです。
ゾーン内で Solaris Product Registry の管理ユーティリティーを起動しようとすると、失敗します。ゾーンのインストール時に、Solaris Product Registry のデータベース productregistry がゾーン内に複製されなかったため、管理ユーティリティーをゾーン内で実行できません。
回避方法: スーパーユーザーとして、productregistry データベースをゾーンにコピーしてください。
# cp /var/sadm/install/productregistry zone_path/var/sadm/install/ |
上記のコマンドで、zone_path は作成したゾーンのルートディレクトリへのパスです。
smdiskless コマンドを使用してディスクレスクライアントを削除すると、コマンドは失敗します。ディスクレスクライアントは、システムデータベースから削除されません。次のエラーメッセージが表示されます。
Failing with error EXM_BMS. |
回避方法: クライアントを追加する前に、/export パーティションの共有を解除してください。
smosservice delete コマンドを使用してディスクレスクライアントサービスを削除した場合、すべてのサービスディレクトリが正常に削除されるとは限りません。
回避方法: 次の手順を実行します。
そのサービスを使用するクライアントが存在しないことを確認します。
# unshare /export/exec/Solaris_10_sparc.all # rm -rf /export/exec/Solaris_10_sparc.all # rm -rf /export/exec/.copyofSolaris_10_sparc.all # rm -rf /export/.copyofSolaris_10 # rm -rf /export/Solaris_10 # rm -rf /export/share # rm -rf /export/root/templates/Solaris_10 # rm -rf /export/root/clone/Solaris_10 # rm -rf /tftpboot/inetboot.sun4u.Solaris_10 |
次のエントリを /etc/bootparams ファイルから削除します。
fs1-24 boottype=:os |
このエントリを削除するのは、このファイルサーバーが関数や資源をほかのサービスに提供していない場合に限られます。
次のエントリを /etc/dfs/dfstab ファイルから削除します。
share -F nfs -o ro /export/exec/Solaris_8_sparc.all/usr |
/var/sadm/system/admin/services/Solaris_10 ファイルを変更します。
ファイルサーバーが Solaris_10 でない場合は、そのファイルを削除します。
ファイルサーバーが Solaris_10 である場合は、冒頭の 3 行を残し、あとのエントリをすべて削除します。削除した行は、/export/root/templates/Solaris_10 に含まれるサービス USR_PATH および SPOOLED ROOT のパッケージとサポートされるプラットフォームを示します。
Stop-A キーや L1-A キーなどのキーボードシーケンスを使用してシステムを停止しようとすると、システムがパニックすることがあります。次のようなエラーメッセージが表示されます。
panic[cpu2]/thread=2a100337d40: pcisch2 (pci@9,700000): consistent dma sync timeout |
回避方法: OpenBoot PROM に入るときには、キーボードシーケンスを使用しないでください。
snmpd.conf の内容を変更したあとは、コマンド kill -HUP snmp Process ID を実行できます。このコマンドによって snmp プロセスが停止します。その後、システム管理エージェントのマスターエージェント(snmpd) に信号が送信されて snmpd.conf が再度読み取られ、導入した変更が実装されます。このコマンドによって必ずしもマスターエージェントが構成ファイルを再度読み取るとは限りません。その結果、このコマンドを使用しても、必ずしも構成ファイル内の変更が有効になるとは限りません。
回避方法: kill -HUP を使用する代わりに、変更を snmpd.conf に追加したあとでシステム管理エージェントを再起動してください。次の手順を実行します。
スーパーユーザーになります。
次のコマンドを入力します。
# /etc/init.d/init.sma restart
これは、Solaris 10 OS (x86 版) がインストールされた、サービスパーティションを保持する Sun LX50 のブート時に発生します。F4 ファンクションキーを押すことでサービスパーティションのブートを選択できますが、オプションを選択すると画面が空白になります。その後、システムはサービスパーティションのブートに失敗します。
回避方法: BIOS ブート画面の表示時に、F4 キーを押さないでください。タイムアウト後に「Current Disk Partition Information」画面が表示されます。type=DIAGNOSTIC に対応する「Part#」列の番号を選択します。続いて Return キーを押します。サービスパーティションがブートします。
Solaris WBEM Services 2.5 デーモンは、com.sun.wbem.provider インタフェースまたは com.sun.wbem.provider20 インタフェースに書き込まれたプロバイダを検出できません。これらのインタフェースに書き込まれたプロバイダ用に Solaris_ProviderPath インスタンスを作成した場合でも、Solaris WBEM Services 2.5 デーモンはプロバイダを検出しません。
回避方法: デーモンがこのようなプロバイダを検出できるようにするには、Solaris WBEM Services 2.5 デーモンをいったん停止してから再起動します。
# /etc/init.d/init.wbem stop # /etc/init.d/init.wbem start |
javax
API を使用してプロバイダを作成した場合は、Solaris WBEM Services 2.5 デーモンを停止してから再起動する必要はありません。Solaris WBEM Services 2.5 デーモンが javax
プロバイダを動的に認識します。
javax
アプリケーションプログラミングインタフェースではなく、com.sun アプリケーションプログラミングインタフェースを使用して WBEM ソフトウェアを開発する場合、全面的にサポートされるのは Common Information Model (CIM) リモートメソッド呼び出し (RMI) だけです。XML/HTTP など、ほかのプロトコルについては、com.sun アプリケーションプログラミングインタフェースで完全に機能するという保証はありません。
次の表に、RMI では正常に実行され、XML/HTTP では失敗する呼び出しの例を示します。
メソッド呼び出し |
エラーメッセージ |
---|---|
CIMClient.close() |
NullPointerException |
CIMClient.execQuery() |
CIM_ERR_QUERY_LANGUAGE_NOT_SUPPORTED |
CIMClient.getInstance() |
CIM_ERR_FAILED |
CIMClient.invokeMethod() |
XMLERROR: ClassCastException |
Solaris Management Console のマウントと共有ツールでは、ルート (/)、/usr、/var などのシステムに必須なファイルシステム上のマウントオプションを変更できません。
回避方法: 次のいずれかを選択してください。
mount コマンドとともに remount オプションを使用します。
# mount -F file-system-type -o remount, additional-mount-options \ device-to-mount mount-point |
-remount オプションを指定した mount コマンドで行われるマウント属性の変更は、一時的なものです。また、上記のコマンドの additional-mount-options の部分で指定しなかったマウントオプションのすべてがシステムによって指定されたデフォルト値を継承するわけではありません。詳細は、mount_ufs(1M) のマニュアルページを参照してください。
/etc/vfstab ファイル内の適切なエントリを編集することによって、ファイルシステムのマウント属性を変更し、システムをリブートします。