• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer navigation

The Geek Diary

  • OS
    • Linux
    • CentOS/RHEL
    • Solaris
    • Oracle Linux
    • VCS
  • Interview Questions
  • Database
    • oracle
    • oracle 12c
    • ASM
    • mysql
    • MariaDB
  • DevOps
    • Docker
    • Shell Scripting
  • Big Data
    • Hadoop
    • Cloudera
    • Hortonworks HDP

Troubleshooting solaris 10 boot issues related to SMF and milestones

by admin

The post describes few troubleshooting tips for resolving the boot issues related to SMF(Service Management Facility). We can boot to early milestones and can go from one level to the next. this way we can identify the milestone causing the issues and eventually the service causing it.

General troubleshooting

Before going into more detailed troubleshooting, we can enable a more verbose debugging while booting the server. Look at results of below booting commands to check for any error messages (options ‘-vV’ and ‘-m verbose’ can be combined).

ok> boot -vV                 ## display verbose debugging information verbose info of OBP boot and kernel
ok> boot -m verbose          ## to show which service was last run and use that to check which service which should be run next. Provides verbose information on SMF.
ok> boot -m debug            ## this shows SMF services in very verbose level. Not recommended in normal cases.

SMF and milestones

1. Try to boot to the various levels from the ok prompt

ok> boot -m milestone=none       ## This  won't load any services so if one of them is causing problems you can fix it before loading it. 
ok> boot -m milestone=single-user
ok> boot -m milestone=multi-user
ok> boot -m milestone=multi-user-server

2. boot to early milestone and go from one level to the next

ok> boot -m milestone=none
# svcadm -v milestone svc:/milestone/single-user:default
# svcadm -v milestone svc:/milestone/multi-user:default
# svcadm -v milestone svc:/milestone/multi-user-server

3. Check the status of the services required for each run level

# svcs -d milestone/single-user:default
# svcs -d milestone/multi-user:default
# svcs -d milestone/multi-user-server:default

If a service is shown as disabled that should be enabled, try to re-enable it with:

#  svcadm -v enable -r [FMRI]

examples:

# svcadm -v enable -r svc:/system/device/local:default 
# svcadm -v enable -r svc:/system/filesystem/local:default

The -r option, for recursive, will start the dependencies

4. Check the status of all failing services

# svcs -xv

5. Refer log files
For problem services refer to the log files located in
A. /etc/svc/volatile/
B. /var/svc/log/
/etc/svc/volatile is an empty mountpoint that a tmpfs is mounted on during boot So it will only have files in the active boot environment

6. Rebuild the repository
We can also rebuild the SMF repository if required. Note that if you select boot, your system will reboot during the rebuild.

# /lib/svc/bin/restore_repository

or if booted failsafe

# /a/lib/svc/bin/restore_repository -r /a

7. Check status of milestones

# svcs | grep milestone
online         Jun_05   svc:/milestone/network:default
online         Jun_05   svc:/milestone/devices:default
online         Jun_05   svc:/milestone/single-user:default
online         Jun_05   svc:/milestone/sysconfig:default
online         Jun_05   svc:/milestone/name-services:default
online         Jun_05   svc:/milestone/multi-user:default
online         Jun_05   svc:/milestone/multi-user-server:default

The troubleshooting steps mentioned in the post are specifically related to SMF issues and may not be applicable in other hardware or software issues.

Filed Under: Solaris

Some more articles you might also be interested in …

  1. Solaris : How to create processor set (pset) and associate it with a pool
  2. Solaris 11 : How to Control Allocated Bandwidth of Network Interface on Per App/User Basis
  3. 17 Examples of using Solaris boot command
  4. Solaris : How to capture failed login attempts from tty logins (telnet, rlogin, and terminal)
  5. Script to reset the iostat errors counters (hard/soft/trn) without reboot
  6. Beginners Guide to Solaris 11 Image Packaging System (IPS)
  7. Understanding “Holding a ZFS Snapshot” Feature
  8. How to find Number of Physical/Logical CPUs, cores and memory in Solaris
  9. Solaris Volume Manager (SVM) : Understanding metadb Flags
  10. How To Determine Approximate Solaris Crash Dump File Size Requirements

You May Also Like

Primary Sidebar

Recent Posts

  • qm Command Examples in Linux
  • qm wait Command Examples in Linux
  • qm start Command Examples in Linux
  • qm snapshot Command Examples in Linux

© 2023 · The Geek Diary

  • Archives
  • Contact Us
  • Copyright