NVRAM/OpenBoot Config Parameters

Here is a list of all the OpenBoot configuration variables available on a Sun SPARC server with their default values:

Parameter Default Value
test-args  
diag-passes 1
asr-policy normal
local-mac-address? TRUE
fcode-debug? FALSE
silent-mode? FALSE
scsi-initiator-id 7
oem-logo default
oem-logo? FALSE
oem-banner default
oem-banner? FALSE
ansi-terminal? TRUE
screen-#columns 80
screen-#rows 34
ttyb-rts-dtr-off FALSE
ttyb-ignore-cd TRUE
ttya-rts-dtr-off FALSE
ttya-ignore-cd TRUE
ttyb-mode 9600,8,n,1,-
ttya-mode 9600,8,n,1,-
output-device ttya
input-device ttya
auto-boot-on-error? FALSE
load-base 16384
auto-boot? TRUE
boot-command boot
diag-file  
diag-device net
boot-file  
boot-device disk net
use-nvramrc? FALSE
nvramrc  
security-mode No default
security-password default
security-#badlogins No default
post-trigger power-on-reset
diag-script none
diag-level max
diag-switch? FALSE
obdiag-trigger power-on-reset
error-reset-recovery boot

OpenBoot PROM Commands

Sun SPARC based servers instead of a CMOS chip use a different eeprom chip called the OpenBoot PROM (or just PROM for short). Instead of the graphical BIOS utility found on most x86 systems, SPARC systems utilize a command line interface to control various aspects of the boot process. The command prompt is simply the word “ok”, so it can also be called the ok prompt. Through the command line you can specify default boot devices, security passwords, etc. There is also more functionality like ejecting media (tape, CD, etc). Let’s see you eject a CD from your BIOS screen! :)  Another nice feature of the Solaris OS is that it allows you to modify these settings from the OS command prompt.  Simply use the eeprom command (/usr/sbin/eeprom) to display or set the configuration values.

Here are some of the more common commands you would run from the ok prompt:

boot <device> – boot the system, allows you to specify an alternative device
reset-all – power cycle the server
printenv – display the value of all boot configuration variables (or NVRAM parameters)
setenv <varname> <value> – set new value to a specific configuration variable
devalias – list and set physical device aliases

Sample devalias output:

ok devalias

xnet2                    /pci@1d,700000/pci@1/SUNW,hme@0,1:dhcp,
xnet1                    /pci@1e,600000/pci@3/SUNW,hme@0,1:dhcp,
xnet                     /pci@1e,600000/pci@2/SUNW,hme@0,1:dhcp,
net3                     /pci@1d,700000/network@2,1
net2                     /pci@1d,700000/network@2
net1                     /pci@1f,700000/network@2,1
net                      /pci@1f,700000/network@2
cdrom                    /pci@1e,600000/ide@d/cdrom@0,0:f
ide                      /pci@1e,600000/ide@d
disk3                    /pci@1c,600000/scsi@2/disk@3,0
disk2                    /pci@1c,600000/scsi@2/disk@2,0
disk1                    /pci@1c,600000/scsi@2/disk@1,0
disk0                    /pci@1c,600000/scsi@2/disk@0,0
disk                     /pci@1c,600000/scsi@2/disk@0,0
scsi                     /pci@1c,600000/scsi@2
sc-control               /pci@1e,600000/isa@7/rmc-comm@0,3e8
ttyb                     /pci@1e,600000/isa@7/serial@0,2e8
ttya                     /pci@1e,600000/isa@7/serial@0,3f8
name                     aliases

Solaris Package Management

Here are the most common commands you would use to manage your application packages in Solaris (the UNIX SVR 4 equivalent of rpms in the Red Hat world):

pkgadd – installs a package
pkgrm – removes a package
pkgchk – checks (verifies) a package (pkgchk -v or -l are more useful)
pkginfo – lists package information (pkginfo -l is more useful)

Less used commands:

pkgask – saves an answer file for multiple installs (using pkgadd -r)
pkgparam – displays package parameter values
pkgtrans – translates a package to different formats

And in a related area, patch management, use the following commands:

patchadd – install a patch
patchrm – back out (remove) a patch

Upgrading VMware ESX Server

I just upgraded a VMware cluster from version 3.0.2 to 3.5 (2 nodes connected to a SAN).  It was very easy, well documented and a very pleasant experience.  Of course, in reality the ESX service console is really just a customized Red Hat Linux installation, so the upgrade for that section is really just an upgrade of all the RPMs.  The VirtualCenter Management Server (a Windows application) was also well designed and tested multiple issues with the database before attempting to upgrade it.  The tests actually found several issues with the database settings from the original 3.0.2 install.  The ESX server upgrade was done by booting off of the upgrade CD, however, next time I would like to try the esxupdate utility which appears to be something similar to the yum or up2date utility.

POP3, POPS, IMAP4, IMAPS on Exchange 2007

I know this is a little unusual for me to post on Windows stuff, but might as well pass on the information. Exchange 2007, has a Power or Management Shell (which is surprising similar to Linux/UNIX). Here’s how you enable POP, POPS, IMAP, and/or IMAPS on Exchange 2007 (with Service Pack 1 you can now do this through the GUI):

POPS (POP3 with SSL):

Set-PopSettings -SSLBindings: IPaddress:Port

POP3 (POP3 without SSL):

Set-PopSettings -UnencryptedOrTLS Bindings IPaddress:Port

IMAPS (IMAP4 with SSL):

Set-ImapSettings -SSLBindings: IPaddress:Port

IMAP4 (IMAP4 without SSL):

Set-ImapSettings -UnencryptedOrTLSBindings IPaddress:Port