Softpanorama
(slightly skeptical) Open Source Software Educational Society

May the source be with you, but remember the KISS principle ;-)

Google   


The nvedit Line Editor

On systems with a PROM version of 1.x or 2.x, the nvalias command might not be available. On these systems, you need to use nvedit to create custom device aliases. nvedit is a line editor that edits the NVRAMRC directly, has a set of editing commands, and operates in a temporary buffer. The following is a sample nvedit session:

ok setenv use-nvramrc? true

TIP

Learning nvedit This section is included for information purposes, to show an additional method for modifying the NVRAM. The nvedit line editor will not be on the certification exam.

The system responds with the following:

use-nvramrc? =   true
ok nvedit

 0: devalias disk0 /pci@1f,0/pci@1,1/ide@3/disk@0,0\
1: <Control-C>
ok nvstore
ok reset
  Resetting ......
ok boot disk0

The preceding example uses nvedit to create a permanent device alias named disk0. The example uses Ctrl+C to exit the editor. It also uses the nvstore command to make the change permanent in the NVRAMRC. Then, it issues the reset command to reset the system and then boots the system from disk0 by using the boot disk0 command.

Table 3.10 lists some of the basic commands you can use while in the nvedit line editor.

Table 3.10 - nvedit Commands

Command Meaning
Ctrl+A Moves backward to beginning of the line.
Ctrl+B Moves backward one character.
Esc+B Moves backward one word.
Ctrl+C Exits the script editor, returning to the OpenBoot command interpreter. The temporary buffer is preserved but is not written back to the script. You use nvstore afterward to write it back.
Ctrl+D Erases the next character.
Esc+D Erases from the cursor to the end of the word, storing the erased characters in a save buffer.
Ctrl+E Moves forward to the end of the line.
Ctrl+F Moves forward one character.
Esc+F Moves forward one word.
Ctrl+H Erases the previous character.
Esc+H Erases from the beginning of the word to just before the cursor, storing erased characters in a save buffer.
Ctrl+K Erases from the cursor position to the end of the line, storing the erased characters in a save buffer. If at the end of a line, it joins the next line to the current line (that is, deletes the new line).
Ctrl+L Displays the entire contents of the editing buffer.
Ctrl+N Moves to the next line of the script-editing buffer.
Ctrl+O Inserts a new line at the cursor position and stays on the current line.
Ctrl+P Moves to the previous line of the script-editing buffer.
Ctrl+Q Quotes the next character (that is, allows you to insert control characters).
Ctrl+R Retypes the line.
Ctrl+U Erases the entire line, storing the erased characters in a save buffer.
Ctrl+W Erases from the beginning of the word to just before the cursor, storing erased characters in a save buffer.
Ctrl+Y Inserts the contents of the save buffer before the cursor.
Return (Enter) Inserts a new line at the cursor position and advances to the next line.
Delete Erases the previous character.
Backspace Erases the previous character.

OpenBoot Security

Anyone who has access to a computer keyboard can access OpenBoot and modify parameters unless you set up the security variables:

Variable Description
security-mode Restricts the set of operations that users are allowed to perform at the OpenBoot prompt.
security-password Specifies the firmware security password. (It is never displayed.) You should not set this variable directly; you set it by using password.
security-#badlogins Specifies the number of incorrect security password attempts.

To set the security password, you type the password at the ok prompt, as shown in the following:
New password (only first 8 chars are used): <enter password>
Retype new password: <enter password>

WARNING

Setting the OpenBoot Security Mode It is important to remember your security password and to set it before setting the security mode. If you later forget this password, you cannot use your system; you must call your vendor's customer support service to make your machine bootable again.

If you are able to get to a Unix prompt as root, you can use the eeprom command to either change the security-mode parameter to none or reset the security password.

Earlier in this chapter you learned how to change the OpenBoot parameter security-password from the command line.

After you assign a password, you can set the security variables that best fit your environment.

You use security-mode to restrict the use of OpenBoot commands.  The syntax for setting security-mode is as follows:

setenv security-mode <value>
Value Description
full Specifies that all OpenBoot commands except go require a password. This security mode is the most restrictive.
command Specifies that all OpenBoot commands except boot and go require a password.
none Specifies that no password is required. This is the default.

 

The following example sets the OpenBoot environment so that all commands except boot and go require a password:

setenv security-mode command

With security-mode set to command, a password is not required if you enter the boot command by itself or if you enter the go command. Any other command requires a password, including the boot command with an argument.

The following are examples of when a password might be required when security-mode is set to command:

Example Description
ok boot No password is required.
ok go No password is required.
ok boot vmunix A password is required.

 

The system displays a password prompt as follows:

Prompt Description
Password The password is not echoed as it is typed.
ok reset-all A password is required.

The system displays a password prompt as follows:
Prompt Description
Password Type the password.

Note that with Password, the password is not echoed as it is typed.

If you enter an incorrect security password, there is a delay of about 10 seconds before the next startup prompt appears. The number of times that an incorrect security password can be typed is stored in the security-#badlogins variable, but you should not change this variable.



Copyright © 1996-2008 by Dr. Nikolai Bezroukov. www.softpanorama.org was created as a service to the UN Sustainable Development Networking Programme (SDNP) in the author free time. Submit comments This document is an industrial compilation designed and created exclusively for educational use and is placed under the copyright of the Open Content License(OPL). Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.

Standard disclaimer: The statements, views and opinions presented on this web page are those of the author and are not endorsed by, nor do they necessarily reflect, the opinions of the author present and former employers, SDNP or any other organization the author may be associated with. We do not warrant the correctness of the information provided or its fitness for any purpose.

Last modified: February 28, 2008