SMF は、従来の UNIX の起動スクリプト、init 実行レベル、および構成ファイルを補強するインフラストラクチャーを提供します。SMF の導入により、ブートプロセスで作成されるメッセージが少なくなりました。デフォルトでは、サービスの起動時にメッセージは表示されません。ブートメッセージによって提供されていた情報は、/var/svc/log にある各サービス用のログファイルで提供されるようになりました。ブートの問題の診断には svcs コマンドが役立ちます。ブートプロセス中に各サービスが開始されるときにメッセージを生成するには、–v オプションを boot コマンドとともに使用します。
システムがブートされるとき、ブート先のマイルストーンを選択したり、記録されるエラーメッセージのレベルを選択したりできます。次に例を示します。
SPARC ベースのシステムで次のコマンドを使用すると、ブート先の特定のマイルストーンを選択できます。
ok boot -m milestone=milestone
デフォルトのマイルストーンは、有効になっているすべてのサービスを起動する all です。ほかの有用なマイルストーンは none で、これは init、svc.startd、および svc.configd のみを開始します。このマイルストーンは、サービスを手動で開始できる非常に有用なデバッグ環境を提供します。none マイルストーンの使用方法の詳細は、Oracle Solaris 11.2 でのシステムサービスの管理 のシステムブート時のサービスの起動に関する問題を調査する方法を参照してください。
実行レベルと同等な single-user、multi-user、および multi-user-server も使用できますが、一般的には使用されません。特に multi-user-server マイルストーンは、そのマイルストーンに依存しないサービスを開始しないため、重要なサービスを含まないことがあります。
次のコマンドを使用すると、svc.startd のログレベルを選択できます。
ok boot -m logging-level
選択できるロギングレベルは quiet、verbose、および debug です。ロギングレベルの具体的な情報については、Oracle Solaris 11.2 でのシステムサービスの管理 の起動メッセージングの量の指定を参照してください。
x86 ベースのシステムを特定のマイルストーンにブートするか、svc.startd のログのレベルを選択するには、ブート時に GRUB メニューを編集し、–m smf-options カーネル引数を指定したブートエントリの $multiboot 行の末尾に追加します。例:
$multiboot /ROOT/s11u2_18/@/$kern $kern -B $zfs_bootfs -m logging-level