System Administration Guide

Chapter 70 Troubleshooting Miscellaneous Software Problems

This chapter describes miscellaneous software problems that may occur occasionally and are relatively easy to fix. Troubleshooting miscellaneous software problems includes solving problems that aren't related to a specific software application or topic, such as unsuccessful reboots and full file systems. Resolving these problems are described in the following sections.

This is a list of information in this chapter.

What to Do If Rebooting Fails

If the system does not reboot completely, or if it reboots and then crashes again, there may be a software or hardware problem that is preventing the system from booting successfully.

Problem -- A System Won't Boot Because ... 

How to Fix the Problem 

The system can't find /platform/`uname -m`/kernel/ unix.

You may need to change the boot-device setting in the PROM on a SPARC system. See "SPARC: How to Change the Default Boot Device" on page 14.

There is no default boot device on an x86 system. The message displayed is: 

Not a UFS filesystem.

Boot the system using the Configuration Assistant/Boot diskette and select the disk from which to boot. 

There's an invalid entry in the /etc/passwd file.

See Part III for information on recovering from an invalid passwd file.

There's a hardware problem with a disk or another device. 

Check the hardware connections: 

  • Make sure the equipment is plugged in.

  • Make sure all the switches are set properly.

  • Look at all the connectors and cables, including the Ethernet cables.

  • If all this fails, turn off the power to the system, wait 10 to 20 seconds, and then turn on the power again.

If none of the above suggestions solve the problem, contact your local service provider.

What to Do If a System Hangs

A system may freeze or hang rather than crash completely if some software process is stuck. Follow these steps to recover from a hung system.

  1. Determine whether the system is running a window environment and follow the suggestions listed below. If these suggestions don't solve the problem, go to step 2.

    • Make sure the pointer is in the window where you are typing the commands

    • Press Control-q in case the user accidently pressed Control-s, which freezes the screen. Control-s freezes only the window, not the entire screen. If a window is frozen, try using another window.

    • If possible, log in remotely from another system on the network. Use the ps command to look for the hung process. If it looks like the window system is hung, identify the process and kill it.

  2. Press Control-\ to force a "quit" in the running program and (probably) write out a core file.

  3. Press Control-c to interrupt the program that may be running.

  4. Log in remotely and attempt to identify and kill the process that is hanging the system.

  5. Log in remotely, become superuser and reboot the system.

  6. If the system still does not respond, force a crash dump and reboot. See Chapter 69, Generating and Saving System Crash Information for information on forcing a crash dump and booting.

  7. If the system still does not respond, turn the power off, wait a minute or so, then turn the power back on.

  8. If you cannot get the system to respond at all, contact your local service provider for help.

What to Do If a File System Fills Up

When the root (/) file system or any other file system fills up, you will see the following message in the console window:


.... file system full

There are several reasons why a file system fills up. The following sections describe several scenarios for recovering from a full file system. See Chapter 57, Managing Disk Use (Tasks) for information on routinely cleaning out old and unused files to prevent full file systems.

A File System Fills Up Because a Large File or Directory Was Created

Reason Error Occurred 

How to Fix the Problem 

Someone accidentally copied a file or directory to the wrong location. This also happens when an application crashes and writes a large core file into the file system.

Log in as superuser and use the ls -tl command in the specific file system to identify which large file is newly created and remove it. See "How to Find and Delete core Files" to remove core files.

The tmpfs File System Is Full Because the System Ran Out of Memory

Reason Error Occurred 

How to Fix the Problem 

This can occur if tmpfs is trying to write more than it is allowed or some current processes are using a lot of memory.

See tmpfs(7FS) for information on recovering from tmpfs-related error messages.

What to Do If File ACLs Are Lost After Copy or Restore

Reason Error Occurred 

How to Fix the Problem 

If files or directories with ACLs are copied or restored into the /tmp directory, the ACL attributes are lost. The /tmp directory is usually mounted as a temporary file system, which doesn't support UFS file system attributes such as ACLs.

Copy or restore files into the /var/tmp directory instead.

Troubleshooting Backup Problems

This section describes some basic troubleshooting techniques to use when backing up and restoring data.

The root (/) File System Fills Up After You Back Up a File System

You back up a file system, and the root (/) file system fills up. Nothing is written to the media, and the ufsdump command prompts you to insert the second volume of media.

Reason Error Occurred 

How to Fix the Problem 

If you used an invalid destination device name with the -f option, the ufsdump command wrote to a file in the /dev directory of the root (/) file system, filling it up. For example, if you typed /dev/rmt/st0 instead of /dev/rmt/0, the backup file /dev/rmt/st0 was created on the disk rather than being sent to the tape drive.

Use the ls -tl command in the /dev directory to identify which file is newly created and abnormally large, and remove it.

Make Sure the Backup and Restore Commands Match

You can only use ufsrestore to restore files backed up with ufsdump. If you back up with tar, restore with tar. If you use the ufsrestore command to restore a tape that was written with another command, an error message tells you that the tape is not in ufsdump format.

Check to Make Sure You Have the Right Current Directory

It is easy to restore files to the wrong location. Because the ufsdump command always copies files with full path names relative to the root of the file system, you should usually change to the root directory of the file system before running ufsrestore. If you change to a lower-level directory, after you restore the files you will see a complete file tree created under that directory.

Use the Old restore Command to Restore Multivolume Diskette Backups

You cannot use the ufsrestore command to restore files from a multivolume backup set of diskettes made with the dump command. You must restore the files on a SunOS 4.x system.

Interactive Commands

When you use the interactive command, a ufsrestore> prompt is displayed, as shown in this example:


# ufsrestore ivf /dev/rmt/0
Verify volume and initialize maps
Media block size is 126
Dump date: Wed Nov 06 15:21:10 1996
Dumped from: the epoch
Level 0 dump of /usr on venus:/dev/dsk/c0t1d0s6
Label:none
Extract directories from tape
Initialize symbol table.
ufsrestore>

At the ufsrestore> prompt, you can use the commands listed on "Commands for Interactive Restore" to find files, create a list of files to be restored, and restore them.