The Solaris group is a forum where peers share technical expertise, solve problems, and discuss issues related to the Solaris operating system, including OS-related malfunctions, security issues, and network performance.

For troubleshooting, boot from CD-ROM (the same Solaris [TM] version
that the system is running,
if possible) into single user mode, and mount the core Solaris
filesystems under /a.

Example:

ok boot cdrom -sw

# /usr/sbin/fsck /dev/rdsk/c0t0d0s0
# mount /dev/dsk/c0t0d0s0 /a

If they are on separate disk slices, repeat the /usr/sbin/fsck and mount
steps for the /usr, /var,
and /opt filesystems. Mount them to /a/usr, /a/var, and /a/opt,
respectively. Example:

# /usr/sbin/fsck /dev/rdsk/c0t0d0s4
# mount /dev/dsk/c0t0d0s4 /a/var

1. If the core Solaris OE filesystems are mounted from physical disk
slices, not
Veritas Volume Manager or Solstice DiskSuite volumes, then make sure the
devices in
/a/etc/vfstab point to valid entries in /a/dev and that the entries in
/a/dev are
symbolic links to valid devices in the /a/device directory, especially
/var if it
is a separate slice.

If /usr/bin/ls -al output does not match, /usr/sbin/fsck and mounted the
wrong device,
or your vfstab file may have bad entries in it. Verify the mounted
filesystem is really
the root filesystem and fix the /etc/vfstab file if necessary.

If /a or /a/var has 100% in the capacity column, clean out files on the
full filesystem.

3. Make sure the startup scripts under /a/etc/rc[S,2,3].d and the files
/a/sbin/rc[S,2,3]
are not corrupted. Run the scripts in shell debug mode by adding "set
-x" in these scripts.
This will enable verbose output from the script as it runs, which may
help pinpoint
the problem or its source.

Example:

#!/sbin/sh

set -x

4. Verify that there are not files in /a/etc with filenames in the
format:

hostname.<network interface name><some number not relating to the
interface instance>.

The startup script /etc/init.d/network will fail to parse these file
names correctly.
See bugs 4943782 and 4865207.

Example of problem filename: /etc/hostname.hme0.9mar2005

5. Check the ownership and permissions of /a/var/adm/utmpx and
/a/var/adm/wtmpx.
Since the files may be corrupted, clear their contents and again check
permissions
and ownership. Do the following:

6. Make sure the major number for the sysmsg device matches the major
number used by
the device file in /devices. The minor numbers for the entry in the
/devices entry
should follow the convention in the example, 0 for the sysmsg
device, and 1 for the msglog device. Example:

7. Check the /a/etc/inittab file for corruption by comparing to another
system running
the same Solaris OE. The /etc/inittab file should not be used for
comparison while booted
from CD-ROM, as its configuration is geared toward the installation
process not system
recovery. If /etcd/inittab is corrupt, copy one the one from
/cdrom/<insert Solaris OE
version here>/Product/SUNWcsr/reloc/etc to /a/etc.

8. Make sure /dev/console exists. It should be a symbolic link to
.../devices/pseudo/cn@0:console The major and minor number of the device
file
in /devices should be zero. The /etc/name_to_major file should also have
a cn
device listed with major number zero.

If /a/sbin/sh is not the statically linked version, copy the the one in
/sbin to /a/sbin.

11. Corruption and/or incorrect entries in /a/etc/mnttab. Make a backup
of /a/etc/mnttab
and cat /dev/null to the original.

12. Kernel corruption causing init to fail. This is a common one if the
error started
after a patch installation (possibly in multi-user mode). Often, a
restore from backup
is required, but the kernel patch can possibly be backed out:

Example:

# /usr/sbin/patchrm -R /a kernel_patch-revision

13. The /var partition did not mount on booting. If the /var directory
is a symbolic link
to a filesystem that is not either / or /usr, then the above errors will
appear on boot up.
Note: Making /var a separate partition (in /etc/vfstab) is okay. After
making a backup
copy, edit /etc/init.d/standardmounts, modify the file so that the file
system which
contains /var is mounted. The following is an example where /var resides
in
/export/home/var:

14. Kernel corruption. You may be able to upgrade Solaris to the same
version and hardware revision
to replace damaged binaries.
Note: Patch the system afterwards since all patches will be removed by
this procedure.

Copyright 1998-2015 Ziff Davis, LLC (Toolbox.com). All rights reserved. All product names are trademarks of their respective companies. Toolbox.com is not
affiliated with or endorsed by any company listed at this site.