Questions and Answers
I've heard my Sun sales representative mention Plaid RAID. What is he talking about?
Plaid (or checkerboard) RAID is a generic term to describe using software striping to stripe across two or more hardware striped RAID volumes (usually RAID 5, RAID 3, or RAID 10). Striping across multiple RAID 10 stores is also called RAID 100 (RAID 10 + RAID 0). Striping across multiple RAID 5 stores is also called RAID 50 (RAID 5 + RAID 0), etc. Figure 1 shows a RAID 100 volume.
I'm responsible for administering multiple UNIX environments (Solaris, AIX, HP, etc.). Do you know of a resource that can help me with the differences between the systems?
A good place to start is:
This site lists many common tasks/commands and how to perform them on many different UNIX systems. It's a pretty handy site to have. See Table 1 for an example.
How do I change my default boot device for my Sparc system?
You need to be at an ok prompt to do this. One way to get there is to hit stop-a. From the ok prompt, you will need to set the boot-device parameter. Do this with the setenv command. (e.g., setenv boot-device disk2). Check your work with the printenv boot-device command. The output will look something like boot-device disk2 disk (the output is in the format of parameter name, current value, default value). Use the printenv command with no parameters to list all of the prom settings.
I'm used to seeing my disks defined like c0t2d0s2 in system tools (sar, etc). When I look on my Solaris system, I see my disks defined like sd0. How do I relate sd0 back to a c0t0d0s2 device?
When you see an sd? name, you are seeing the instance disk device name. The c?t?d?s? name is the physical disk device name. You probably see mostly sd and st devices. The s stands for SCSI, the d stands for disk, and the t stands for tape. There are a couple of ways to relate the sd? device with the c?t?d?s? device. The easiest way is to run the format command. The output of format displays physical (i.e., c0t2d0) and logical (i.e., /<lots of stuff deleted>/sd@2,0) device names for each disk on the system. Another way to see the relationship is to look at the output of dmesg. Do a dmesg | grep sd2 and you will see something like:
sd2 at esp0: target 2 lun 0
sd2 is /<stuff deleted>/sd@2,0
Let's break this down:
esp0 is the interface controller number (c0).
target 2 is the address of the device controller (t2).
lun 0 is the logical unit number (d0).
Put all this together and you get c0t2d0.
I have a file system approaching 100% capacity on my Solaris system. I'd like to move the contents of this file system to a larger file system. What's the safest way to do this?
Probably the safest, easiest way to move the file system is to use ufsdump/ufsrestore. Do a level 0 backup of the file system to tape:
ufsdump 0uf /dev/rmt/0 /test
Unmount the filesystem:
Mount the new file system on the mount point and change directory to it:
mount /dev/dsk/c2t2d0s4 /test; cd /test
Now restore the contents to the new file system:
Ufsrestore rvf /dev/rmt/0
Make sure that you change the mount point in the /etc/vfstab so that the file system is mounted correctly at the next boot. Moving the file system in this manner is really nice because, if something goes wrong, you always have the original data in the original file system and on tape.
I want to be able to toggle between terminal sessions on my x86 Solaris systems. How do I do that?
Add the following into the /etc/inittab file. (This is documented at: http://www.isys.net/susehilf/XFree86/SOLX86-3.html and other places):
-g -h -p "'uname -n' VT01 login: " \
-T AT386 -d /dev/vt01 -l console
-g -h -p "'uname -n' VT02 login: " \
-T AT386 -d /dev/vt02 -l console
You can have up to seven virtual terminals (in Solaris 2.6). Add one line per terminal. If the device files do not exist, create them with the following command (one per virtual terminal):
mknod vt01 c 100 1
mknod vt02 c 100 2
Now restart the init process (ps -ef | grep init kill -HUP <pid of init>, or init q, or just reboot).
To switch between the virtual terminals, use the following:
-- switch to virtual terminal 1 through 7.
-- switch to the next virtual terminal.
<Alt><SysReq> -- switch to \
the previous virtual terminal.
-- switch to the console.
You could also add Screen to your system. You can download Screen from:
According to the GNU Web site:
Screen is a full-screen window manager that multiplexes a physical terminal between several processes, typically interactive shells. Each virtual terminal provides the functions of the DEC VT100 terminal and, in addition, several control functions from the ANSI X3.64 (ISO 6429) and ISO 2022 standards (e.g., insert/delete line and support for multiple character sets). There is a scrollback history buffer for each virtual terminal and a copy-and-paste mechanism that allows the user to move text regions between windows. When screen is called, it creates a single window with a shell in it (or the specified command) and then gets out of your way so that you can use the program as you normally would. Then, at any time, you can create new (full-screen) windows with other programs in them (including more shells), kill the current window, view a list of the active windows, turn output logging on and off, copy text between windows, view the scrollback history, switch between windows, etc. All windows run their programs completely independent of each other. Programs continue to run when their window is currently not visible and even when the whole screen session is detached from the users terminal.
I'm in the process of upgrading my Solaris 2.5.1 box to 2.6. After I upgrade the operating system, none of my networking works anymore. Any ideas as to why this won't work? I have four Ethernet cards installed.
Solaris 2.6 is probably addressing the Ethernet cards differently than Solaris 2.5.1 did. To verify that this is the case, do an ifconfig -a on your Solaris 2.5.1 system. Note the name of each Ethernet card (le0, le1, le2, and le3) and the corresponding MAC address (also called Ethernet address). After you upgrade to Solaris 2.6, do the ifconfig -a again and note the name and MAC address pairings. They are probably different than what was on the Solaris 2.5.1 system. To fix this, do a ls /etc/hostname.*. You should get a list like:
Rename each of these files to what they should be. For example, if the Solaris 2.5.1 le0 interface is now the Solaris 2.6 le2 interface, then rename the hostname.le0 file to hostname.le2. Do this for each interface. When you reboot, your network should be working again.
I'd love to stop using Windows on my home system and use Solaris x86, but I like the convenience of the Microsoft Office suite of tools. What are my options?
Your best bet will be to download StarOffice at:
and try it out. You can run it on your current system and if it all checks out for you, upgrade your operating system to Solaris x86 and keep on using it. StarOffice consists of:
StarOffice Writer: Professional Document Creation and Publishing
StarOffice Calc: Analysis and Calculation
StarOffice Impress: High-Impact Presentations
StarOffice Base: Data at Your Fingertips
StarOffice Draw: Graphics and Illustrations
StarOffice Schedule: Event Planning
StarOffice Mail: Powerful Communication
StarOffice Discussion: Newsgroups
As of the 5.2 release, the following filters are available:
Microsoft Word 5.0, 6.0, 95, 97, 2000
Microsoft Excel 4.0, 5.0, 95, 97, 2000
Microsoft Powerpoint 97, 2000
Word Perfect 4.1, 4.2, 5.0, 5.1, 6.0, 6.1
Word Perfect for Windows 5.0, 5.1, 6.0, 6.1, 7.0
About the Author
Jim McKinstry is a Senior Sales Engineer for MTI Technology Corporation (www.mti.com). MTI is a leading international provider of data storage management products and services. He can be reached at: firstname.lastname@example.org.