What do you do if your system fails to boot properly? This appendix discusses some common failures and ways to alleviate them.
Familiarize yourself with the system power-on initialization messages. You can then identify problems more accurately because these messages show you the types of functions the system performs at various stages of system start-up. They also show the transfer of control from POST to the OpenBoot firmware to the Booter to the kernel.
The example that follows shows the OpenBoot initialization sequence in a SPARCstation 10 system. The messages before the banner appear on TTYA only if the diag-switch? parameter is true.
The displayed kernel messages may vary depending on the version of the operating system you are using
ttya initialized (At this point, POST has finished execution and transferred control to the OpenBoot firmware)
Cpu #0 TI,TMS390Z50 (Probe CPU module) Cpu #1 Nothing there Cpu #2 Nothing there Cpu #3 Nothing there Probing Memory Bank #0 16 Megabytes of DRAM (Probe memory) Probing Memory Bank #1 Nothing there Probing Memory Bank #2 Nothing there Probing Memory Bank #3 Nothing there Probing Memory Bank #4 Nothing there Probing Memory Bank #5 Nothing there Probing Memory Bank #6 Nothing there Probing Memory Bank #7 Nothing there
Before probing the devices, the firmware executes NVRAMRC commands - if use-nvramrc? is true - and checks for Stop-x commands Keyboard LEDs flash
Probing /iommu@f,e0000000/sbus@f,e0001000 at f,0 (Probe devices) espdma esp sd st ledma le SUNW,bpp SUNW,DBRIa Probing /iommu@f,e0000000/sbus@f,e0001000 at 0,0 Nothing there Probing /iommu@f,e0000000/sbus@f,e0001000 at 1,0 Nothing there Probing /iommu@f,e0000000/sbus@f,e0001000 at 2,0 Nothing there Probing /iommu@f,e0000000/sbus@f,e0001000 at 3,0 Nothing there SPARCstation 10 (1 X 390Z50), Keyboard Present (Display banner) ROM Rev. 2.10, 16 MB memory installed, Serial #4194577. Ethernet address 8:0:20:10:61:b5, Host ID: 72400111. Boot device: /iommu/sbus/espdma@f,400000/esp@f,800000/ (The firmware is TFTP-ing in the boot program) sd@3,0 File and args: (Control is transferred to Booter after this message is displayed) root on /iommu@f,e0000000/sbus@f,e0001000/espdma@ (Booter starts executing) f,400000/esp@f,800000/sd@3,0:a fstype 4.2 Boot: vmunix Size: 1425408+436752+176288 bytes (Control is passed to the Kernel after this message is displayed) Viking/NE: PAC ENABLED (Kernel starts to execute) ... (More kernel messages)
Table D-1 describes commands that are useful in some failure situations. When issuing any of these commands, hold down the keys immediately after turning on the power to your system, until the keyboard LEDs flash.
Table D-1 Emergency Keyboard Commands
Command |
Description |
---|---|
Stop |
Bypass POST. This command does not depend on security-mode. (Note: some systems bypass POST as a default; in such cases, use Stop-D to start POST.) |
Stop-A |
Abort. |
Stop-D |
Enter diagnostic mode (set diag-switch? to true). |
Stop-F |
Enter FORTH on TTYA instead of probing. Use fexit to continue with the initialization sequence. Useful if hardware is broken. |
Stop-N |
Reset NVRAM contents to default values. |
These commands are disabled if the PROM security is on. Also, if your system has full security enabled, you cannot apply any of the suggested commands unless you have the password to get to the ok prompt.
The sync command forces any information on its way to the hard disk to be written out immediately. This is useful if the operating system has crashed, or has been interrupted without preserving all data first.
sync actually returns control to the operating system, which then performs the data saving operations. After the disk data has been synchronized, the operating system begins to save a core image of itself. If you do not need this core dump, you can interrupt the operation with the Stop-A key sequence.
This section describes some common failures and how you can fix them.
Problem: Your system screen is blank and does not show any output.
Here are possible causes for this problem:
Hardware has failed.
Refer to your system documentation.
Keyboard is not attached.
If the keyboard is not plugged in, the output goes to TTYA instead. To fix this problem, power the system down, plug the keyboard in, and power on again.
Monitor is not turned on or plugged in.
Check the power cable on the monitor. Make sure the monitor cable is plugged into the system frame buffer; then turn the monitor on.
output-device is set to TTYA or TTYB.
This means the NVRAM parameter output-device is set to ttya or ttyb instead of being set to screen. You can do one of the following:
Power the system down. Then turn it on, and immediately press Stop-N. This sets all NVRAM parameters to their default values. As a result, the output-device parameter is set to screen. Be warned that all previous non-default settings are reset to their default values as well. You must restore them as needed.
Connect a terminal to TTYA and reset the system. After getting to the ok prompt on the terminal, type: screen output to send output to the frame buffer. Use setenv to change the default display device, if needed.
System has multiple frame buffers.
If your system has several plugged-in frame buffers, or it has one built-in frame buffer and one or more plugged in, then it is possible that the wrong frame buffer is being used as the console device. See "Setting the Console to a Specific Monitor".
Problem: Your system is supposed to boot from the disk; instead, it boots from the net.
There are two possible causes for this:
The diag-switch? NVRAM parameter is inadvertently set to true.
Interrupt the booting process with Stop-A. Type the following commands at the ok prompt:
ok setenv diag-switch? false ok boot
The system should now start booting from the disk.
The boot-device NVRAM parameter is set to net instead of disk.
Interrupt the booting process with Stop-A. Type the following commands at the ok prompt:
ok setenv boot-device disk ok boot
Note that the preceding commands cause the system to boot from the disk defined as disk (target 3) in the device aliases list. If you want to boot from disk1 (target 1), disk2 (target 2), or disk3 (target 3), set boot-device accordingly.
Problem: Your system is booting from a disk instead of from the net.
boot-device is not set to net.
Interrupt the booting process with Stop-A. Type the following commands at the ok prompt:
ok setenv boot-device net ok boot
Problem: Your system is booting from the wrong disk. (For example, you have more than one disk in your system. You want the system to boot from disk2, but the system is booting from disk1 instead.)
boot-device is not set to the correct disk.
Interrupt the booting process with Stop-A. Type the following commands at the ok prompt:
ok setenv boot-device disk2 ok boot
Problem: Your system fails to boot from the net.
The problem could be one of the following:
NIS maps are out of date.
Report the problem to your system administrator.
Ethernet cable is not plugged in.
Plug in the ethernet cable. The system should continue with the booting process.
Server is not responding: no carrier messages.
Report the problem to your system administrator.
tpe-link-test is disabled.
Refer to the troubleshooting information in your system documentation. (Note: systems that do not have Twisted Pair Ethernet will not have the tpe-link-test parameter.)
Problem: You are booting from a disk and the system fails with the message: The file just loaded does not appear to be executable.
The boot block is missing or corrupted.
Install a new boot block.
Problem: You are booting from a disk and the system fails with the message: Can't open boot device.
The disk may be powered down (especially if it is an external disk).
Turn on power to the disk, and make sure the SCSI cable is connected to the disk and the system.
Problem: Your system has more than one disk installed, and you get SCSI-related errors.
Your system might have duplicate SCSI target number settings.
Try the following procedure:
Unplug all but one of the disks.
ok probe-scsi-all
Note the target number and its corresponding unit number.
Plug in another disk and perform step b again.
If you get an error, change the target number of this disk to be one of the unused target numbers.
Repeat steps b, c, and d until all the disks are plugged back in.
Problem: You have more than one monitor attached to the system, and the console is not set to an intended monitor.
If you have more than one monitor attached to the system, the OpenBoot firmware always assigns the console to the frame buffer specified by the output-device NVRAM parameter. The default value of output-device is screen, which is an alias for the first frame buffer that the firmware finds in the system.
A common way to change this default is to change output-device to the appropriate frame buffer:
ok nvalias myscreen /obio/cgfourteen ok setenv output-device myscreen ok reset
Another way of setting the console to a specific monitor is to change the sbus-probe-list NVRAM parameter.
ok show sbus-probe-list ( Display the current and default values) sbus-probe-list f0123 f0123 (Your system may have a different number of SBus slots) ok
If the frame buffer that you are choosing as the console is in slot 2, change sbus-probe-list to probe slot 2 first:
ok setenv sbus-probe-list 23f01 ok reset