Key Terms
Exercises
Caution
Don't Do This on a Production System! Because some of the steps involved in the following exercises could render a system unbootable if they're not performed properly, you should not perform these exercises on a production system.
3.1. Using OpenBoot Commands
In this exercise, you will halt the system and use the OpenBoot commands to set parameters and gather basic information about your system.
Estimated time: 30 minutes
1. | Issue the OpenBoot command to display the banner, as follows:
| 2. | Set parameters to their default values, as follows:
| 3. | Set the auto-boot? parameter to false to prevent the system from booting automatically after a reset. From the OpenBoot ok prompt, type the following:
Verify that the parameter has been set by typing the following:
| 4. | Display the list of OpenBoot help topics, as follows:
| 5. | Use the banner command to get the following information from your system:
ROM revision Amount of installed memory System type System serial number Ethernet address Host ID
| 6. | Display the following list of OBP parameters by using the printenv command:
output-device
input-device
auto-boot?
boot-device
| 7. | Use the following commands to display the list of disk devices attached to your system :
probe-scsi
probe-scsi-all
probe-ide
Explain the main differences between these commands.
Caution
Preventing a System Hang If any of these commands returns a message warning that your system will hang if you proceed, enter n to avoid running the command. Run reset-all before running probe- again and then respond y to this message.
| 8. | List the target number and the device type of each SCSI device attached to your system by using the OpenBoot commands in step 7.
| 9. | From the OpenBoot prompt, identify your default boot device as follows:
| 10. | Use the show-disks OpenBoot command to get a listing of the disk drives on your system, as follows:
| 11. | Create a permanent device alias named bootdisk that points to the IDE master disk, as follows:
nvalias bootdisk /pci@1f,0/pci@1,1/ide@3/disk@0,0
You'll need to select a SCSI disk if your system does not have IDE disks attached to it.
| 12. | Reset the system and verify that the device alias is set properly by typing the following:
After the system resets, type the following:
| 13. | Now, set the system up so that it boots into single-user mode without any user intervention:
setenv boot-command 'boot -s'
| 14. | I suggest changing the auto-boot? parameter back to true and resetting the system to validate that your boot-command parameter is set properly as follows :
setenv auto-boot? true
reset-all
| 15. | Boot the system, log on as root, and use the eeprom command to list all NVRAM parameters.
| 16. | Use the eeprom command to list only the setting of the boot-device parameter, as follows:
| 17. | Reset boot-device to its default parameter from the OpenBoot prompt, as follows:
| 18. | From the OpenBoot prompt, remove the alias bootdisk, as follows:
| 19. | Reset the system and verify that bootdisk is no longer set, as follows:
| 20. | Set all the OpenBoot parameters back to their default values, as follows :
|
3.2. Booting the System
This exercise takes you through the steps of powering on and booting the system.
Estimated time: 5 minutes
1. | Turn on power to all the peripheral devices, if any exist.
| 2. | If the OpenBoot parameter auto-boot is set to false, you should see the ok prompt shortly after you power on the system. If the system is set to auto-boot, you should see a message similar to the following displayed onscreen:
SunOS Release 5.10 Version Generic 64-bit
Copyright 1983-2005 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.
You should see the system begin the boot process. Interrupt the boot process by pressing Stop+A. The ok prompt appears.
| 3. | At the ok prompt, type boot to boot the system.
|
3.3. Booting an Alternate Kernel
In this exercise, you'll practice booting from a backup copy of the /etc/system file. You should use this process if your /etc/system file ever becomes corrupt or unbootable.
Estimated time: 15 minutes
1. | Log in as root.
| 2. | Create a backup copy of the /etc/system file by typing this:
cp /etc/system /etc/system.orig
| 3. | Now remove the /etc/system file by typing this:
| 4. | Halt the system by typing this:
/usr/sbin/shutdown -y -g0 -i0
| 5. | At the ok prompt, boot the system by using the interactive option to supply the backup name of the /etc/system file. You do that by typing this:
| 6. | You are prompted to enter a filename for the kernel and a default directory for modules. Press Return to answer each of these questions. When you are prompted with this message to use the default /etc/system file
Name of system file [etc/system]:
enter the following:
| 7. | Later you'll be asked to enter the root file system type and the physical name of the root device. At that point, press Return to answer both questions.
| 8. | When the system is ready, log in as root and put the original /etc/system file back in place :
cp /etc/system.orig /etc/system
|
Review Questions
1. | The hardware-level user interface that you see before the operating system has been started is called what?
| 2. | Which of the following is where the system identification information, such as the hostid, is stored?
| 3. | What tasks are performed by OpenBoot? (Select the two best answers.)
| | | | | | | Loading the operating system kernel
|
| 4. | Which of the following is not a task of the OpenBoot firmware?
| Testing and initializing the system hardware
| | | | Starting up the operating system from either a mass storage device or from a network
| | Allowing modification and management of system startup configuration, such as NVRAM parameters
|
| 5. | Which of the following is attached to a host computer through a hierarchy of interconnected buses on the device tree?
| 6. | What is /pci@1f,0/pci@1,1/ide@3/disk@0,0?
| 7. | Which of the following is used to obtain information about devices and to display device pathnames in OpenBoot?
| 8. | Which of the following commands creates a temporary device alias named bootdisk?
| setenv bootdisk /pci@1f,0/pci@1,1/ide@3/disk@0,0
| | set bootdisk /pci@1f,0/pci@1,1/ide@3/disk@0,0
| | nvalias bootdisk /pci@1f,0/pci@1,1/ide@3/disk@0,0
| | devalias bootdisk /pci@1f,0/pci@1,1/ide@3/disk@0,0
|
| 9. | If you want to create permanent aliases in NVRAM (that show up after a reboot), which of the following commands should you use?
| 10. | Which NVRAM variable specifies the device from which to start up?
| 11. | If a system will not start due to a bad NVRAM variable, which of the following, performed before you see the OpenBoot prompt, resets the NVRAM variables to their default settings?
| 12. | Which of the following can restrict the set of operations that users are allowed to perform at the OpenBoot prompt?
| 13. | Which of the following is used in OpenBoot to test all devices that have built-in self-test methods below the specified device tree node?
| 14. | Which option do you use with the OpenBoot boot command so that you are prompted for the name of the standalone program to load?
| 15. | What resides in blocks 115 of the startup device?
| 16. | Which of the following loads the operating system kernel?
| 17. | Which of the following commands lists all hardware devices, system devices, loadable modules, and the values of selected kernel tunable parameters?
| 18. | What key combination would you enter to interrupt a system that is not responding?
| 19. | What is the function of the auto-boot parameter that is set in the OpenBoot PROM?
| Boots automatically after power-on or reset
| | Sets the default boot device
| | Reboots after a watchdog reset
| | Automatically performs a system reboot when a system core file has been generated
|
| 20. | Which of the following commands is used to set the auto-boot parameter?
| 21. | To display all OpenBoot parameter settings, such as boot-device and ttya-mode, what should you type?
| 22. | To check the target IDs on all the SCSI devices connected to all the SCSI controllers, what should you type?
| 23. | The kernel reads which of the following files when loading? (This is where system configuration information is stored.)
| 24. | Select the sequence of events that best describes the boot process.
| Boot PROM phase, boot program phase, kernel initialization phase, init phase, and svc.startd phase
| | Boot program phase, boot PROM phase, kernel initialization phase, svc.startd phase, and init phase
| | Boot program phase, boot PROM phase, init phase, kernel initialization phase, svc.startd phase
| | Boot PROM phase, boot program phase, svc.startd phase, kernel initialization phase
|
| 25. | What consists of a small static core and many dynamically loadable modules?
| 26. | After reading the /etc/inittab file, which daemon does the init process startup?
| 27. | How can system messages displayed at bootup be viewed later?
| By issuing the dmesg command
| | By viewing the /var/adm/messages file
| | By issuing the sysdef command
| | By viewing logs in the /var/svc/log directory
|
| 28. | To boot a system into a single-user state, which commands are entered at the ok prompt?
| | | | | | | boot -m milestone=single-user
|
| 29. | Which command, typed at the ok prompt, stops and asks for boot information during the boot process?
| 30. | Which of the following programs is responsible for executing ufsboot?
| 31. | What command do you use to change run levels?
| 32. | This XML-based file contains a complete set of properties that are associated with a SMF service or a service instance. Where are these files stored?
| 33. | Which command is used to transition your system into the single-user milestone from the multi-user milestone?
| svcadm milestone single-user
| | svcadm milestone/single-user
| | | | |
| 34. | Which of the following is NOT the valid FMRI name of a service instance?
| svc://localhost/network/inetd:default
| | | | | | |
| 35. | Which command is used to obtain a detailed view of the service state of all service instances in the configuration repository?
| 36. | Which of the following service states indicates that the service is configured to run, but is not yet running or available to run?
| 37. | Which SMF command displays the services that must be running before the multi-user milestone is reached?
| svcs -d milestone/multi-user
| | svcs -D milestone/multi-user
| | svcs -p milestone/multi-user
| | svcs -l milestone/multi-user
|
|
Answers to Review Questions
1. | A. The hardware-level user interface that you see before the operating system starts is called the OpenBoot PROM (OBP). For more information, see the section "The OpenBoot Environment."
| 2. | C. Non-Volatile RAM (NVRAM) is where the system identification informationsuch as the host ID, Ethernet address, and TOD clockis stored. For more information, see the section "The OpenBoot Environment."
| 3. | A, B. The two primary tasks of the OpenBoot firmware are to run the POST and to load the bootblock. For more information, see the section "The OpenBoot Environment."
| 4. | B. OpenBoot runs POSTs to initialize the system hardware. It also loads the primary startup program, bootblk, from the default startup device. The bootblk program finds and executes the secondary startup program, ufsboot, and loads it into memory. From that point, the ufsboot program loads the operating system kernel. For more information, see the section "The OpenBoot Environment."
| 5. | D. Devices called nodes are attached to a host computer through a hierarchy of interconnected buses on the device tree. A node that represents the host computer's main physical address bus forms the tree's root node. For more information, see the section "The OpenBoot Architecture."
| 6. | A. A full device pathname is a series of node names separated by slashes (/). The root of the tree is the machine node, which is not named explicitly but is indicated by a leading slash. Each device pathname has this form:
driver-name@unit-address:device-arguments
For more information, see the section "PROM Device Tree (Full Device Pathnames)."
| 7. | A. The OpenBoot command show-devs is used to obtain information about devices and to display device pathnames. For more information, see the section "PROM Device Tree (Full Device Pathnames)."
| 8. | D. You use the devalias command as follows to create a temporary device alias named bootdisk:
devalias bootdisk /pci@1f,0/pci@1,1/ide@3/disk@0,0
For more information, see the section "OpenBoot Device Aliases."
| 9. | B. or D. You use the nvalias command from the OpenBoot PROM or the eeprom command from the Unix prompt to create a permanent alias in NVRAM that remains in effect even after a reboot. For more information, see the section "OpenBoot Device Aliases."
| 10. | A. The NVRAM variable named boot-device contains the name of the default startup device. For more information, see the section "Booting a System."
| 11. | B. To reset the NVRAM variables to their default settings, you hold down the Stop+N keys simultaneously while the machine is powering up. For more information, see the section "OpenBoot NVRAM."
| 12. | B. The OpenBoot command security-mode restricts the set of operations that users are allowed to perform at the OpenBoot prompt. For more information, see the section "OpenBoot Security."
| 13. | C. The OpenBoot command test-all tests all devices that have built-in self-test methods below the specified device tree node. For more information, see the section "OpenBoot Diagnostics."
| 14. | D. You issue the OpenBoot boot command with the -a option to be prompted for the name of the standalone program to load. For more information, see the section "The boot Command."
| 15. | A. The bootblock resides in blocks 115 of the startup device. For more information, see the section "The boot Command."
| 16. | A. The secondary startup program, ufsboot, loads the two-part operating system kernel. For more information, see the section "Booting a System."
| 17. | D. You use the sysdef command to list all hardware devices, system devices, and loadable modules, as well as the values of selected kernel tunable parameters. For more information, see the section "The Kernel."
| 18. | C. You interrupt a system that is not responding by pressing Stop+A. For more information, see the section "Stopping the System for Recovery Purposes."
| 19. | A. auto-boot? controls whether the system automatically starts up after a system reset or when the power is turned on. The default for this variable is true. When the system is powered on, the system automatically starts up to the default run level. For more information, see the section "OpenBoot NVRAM."
| 20. | C. eeprom auto-boot?=false is used to set the auto-boot? parameter from the Unix shell. Option A is wrong because the "=" sign should not be used with the setenv command. Option B is wrong because there is not a set command at the OpenBoot prompt, and using set from the Unix shell will not set an OpenBoot parameter. Option D is wrong because there is not an nvset command. For more information, see the section "OpenBoot NVRAM."
| 21. | C. At the OpenBoot prompt, you use the printenv command to display all OpenBoot parameter settings. For more information, see the section "OpenBoot NVRAM."
| 22. | C. You use the probe-scsi-all command to check the target IDs on all the SCSI devices that are connected to all the SCSI controllers. For more information, see the section "OpenBoot Diagnostics."
| 23. | A. When the kernel is loading, it reads the /etc/system file, where system configuration information is stored. This file modifies the kernel's parameters and treatment of loadable modules. For more information, see the section "The Kernel."
| 24. | A. The boot process goes through the following five phases: boot PROM phase, boot programs phase, kernel initialization phase, init phase, and svc.startd phase. For more information, see the section "Booting a System."
| 25. | A. The kernel consists of a two-piece static core that is made up of genunix and unix. genunix is the platform-independent generic kernel file, and unix is the platform-specific kernel file. When the system boots, ufsboot combines these two files and many dynamically loadable modules into memory to form the running kernel. For more information, see the section "The Kernel."
| 26. | D. The init process reads the /etc/inittab file and executes any process entries that have sysinit in the action field, so that any special initializations can take place before users log in. After reading the /etc/inittab file, init starts the svc.startd daemon, which is responsible for starting and stopping other system services such as mounting file systems and configuring network devices. In addition, svc.startd will execute legacy run control (rc) scripts. For more information, see the section "The init Phase."
| 27. | B. The boot process creates fewer messages. All of the information that was provided by the boot messages in previous versions of Solaris is now located in the /var/svc/log directory. For more information, see the section "The Solaris Management Facility (SMF) Service."
| 28. | B, D. You issue the boot -s command or the boot -m milestone=single-user at the OpenBoot ok prompt to boot the system into single-user mode. For more information, see the section "Booting a System." You can also boot to a specific milestone using the boot -m command.
| 29. | B. The boot -a command performs an interactive boot. With this option, you are prompted to enter the name of the kernel, the default modules directory, the name of the system file, the root file system type, and the device name for the root device. For more information, see the section "Booting a System."
| 30. | A. The bootblk program finds and executes the secondary boot program, called ufsboot, from the UFS and loads it into memory. For more information, see the section "Booting a System."
| 31. | B. You use the init command to change run levels. For more information, see the section "System Run States."
| 32. | C. An SMF manifest is an XML (Extensible Markup Language) file that contains a complete set of properties that are associated with a service or a service instance. The properties are stored in files and subdirectories located in /var/svc/manifest. For more information, see the section "The Solaris Management Facility (SMF) Service."
| 33. | A. Use the svcadm milestone single-user command to switch into the single-user milestone. For more information, see the section "Starting Services During Boot."
| 34. | D. A valid FMRI instance names take the form of:
svc://localhost/network/inetd:default
svc:/network/inetd:default
network/inetd:default
svc:/inetd:default does not contain the service category name.
lrc:/etc/rc3_d/S90samba is an FMRI for a legacy run control script not managed by SMF.
For more information, see the section "The Solaris Management Facility (SMF) Service."
| 35. | B. Running the svcs command without options will display the status of all enabled services. Use the -a option to list all services, including disabled services. For more information, see the section "SMF Command-line Administration Utilities."
| 36. | A. The offline status indicates that a service instance is enabled (configured to run), but the service is not yet running or available to run. A disabled service is configured not to start. For more information, see the section "SMF Command-line Administration Utilities."
| 37. | A. The -d option for the svcs command lists the services or service instances upon which the multi-user service instance is dependent on. For more information, see the section "SMF Command-line Administration Utilities."
|
|