This chapter provides information on the settings and files that need to be set and edited to customize your system for use. It is not necessary to change all listed settings and names on all systems. You are free to customize your systems as much or as little as necessary to suit your purposes. The following topics are covered in this chapter.
“Checking System Configuration” provides information on determining what hardware and software is installed and active and reporting the current system software settings.
“Altering the System Configuration” provides information on making changes to basic system settings and options.
IRIX provides two commands that allow you to check your system hardware and software configurations. The hinv(1M) and versions(1M) commands display the hardware and software inventories, respectively. Other commands are presented that report on graphics hardware, the system name, configured printers, and basic system settings.
The hinv command displays the workstation or server's hardware inventory. This command can be run from the Command (PROM) Monitor or from your system shell prompt. Pertinent information such as the processor type, amount of main memory, and all disks, tape drives, or other devices is included. A sample hinv output for a typical workstation is:
1 100 MHZ IP22 Processor FPU: MIPS R4010 Floating Point Chip Revision: 0.0 CPU: MIPS R4000 Processor Chip Revision: 3.0 On-board serial ports: 2 On-board bi-directional parallel port Data cache size: 8 Kbytes Instruction cache size: 8 Kbytes Secondary unified instruction/data cache size: 1 Mbyte Main memory size: 64 Mbytes Vino video: unit 1, revision 1 Iris Audio Processor: version A2 revision 4.1.0 Integral Ethernet: ec0, version 1 CDROM: unit 4 on SCSI controller 0 Disk drive: unit 1 on SCSI controller 0 Integral SCSI controller 0: Version WD33C93B, revision D Graphics board: Indy 24-bit |
A sample hinv output for a major server is:
12 200 MHZ IP19 Processors CPU: MIPS R4400 Processor Chip Revision: 6.0 FPU: MIPS R4010 Floating Point Chip Revision: 0.0 Data cache size: 16 Kbytes Instruction cache size: 16 Kbytes Secondary unified instruction/data cache size: 4 Mbytes Main memory size: 512 Mbytes, 4-way interleaved I/O board, Ebus slot 11: IO4 revision 1 I/O board, Ebus slot 13: IO4 revision 1 I/O board, Ebus slot 15: IO4 revision 1 Integral EPC serial ports: 4 Integral Ethernet controller: et2, Ebus slot 11 Integral Ethernet controller: et1, Ebus slot 13 Integral Ethernet controller: et0, Ebus slot 15 XPI FDDI controller: xpi0, slot 15, adapter 6, firmware version 9506010800, DAS XPI FDDI controller: xpi1, slot 15, adapter 6, firmware version 9506010800, DAS EPC external interrupts Integral SCSI controller 131: Version WD33C95A, single ended, revision 0 Integral SCSI controller 130: Version WD33C95A, single ended, revision 0 Integral SCSI controller 111: Version WD33C95A, single ended, revision 0 Integral SCSI controller 110: Version WD33C95A, single ended, revision 0 Integral SCSI controller 1: Version WD33C95A, differential, revision 0 Disk drive: unit 1 on SCSI controller 1 Integral SCSI controller 0: Version WD33C95A, differential, revision 0 Disk drive: unit 5 on SCSI controller 0 Disk drive: unit 4 on SCSI controller 0 Disk drive: unit 3 on SCSI controller 0 Disk drive: unit 2 on SCSI controller 0 Integral SCSI controller 4: Version SCIP/WD33C95A Integral SCSI controller 3: Version SCIP/WD33C95A Disk drive: unit 5 on SCSI controller 3 Disk drive: unit 4 on SCSI controller 3 Disk drive: unit 3 on SCSI controller 3 Disk drive: unit 2 on SCSI controller 3 Integral SCSI controller 2: Version SCIP/WD33C95A Disk drive: unit 5 on SCSI controller 2 Disk drive: unit 4 on SCSI controller 2 Disk drive: unit 3 on SCSI controller 2 Disk drive: unit 2 on SCSI controller 2 CC synchronization join counter Integral EPC parallel port: Ebus slot 11 Integral EPC parallel port: Ebus slot 13 Integral EPC parallel port: Ebus slot 15 VME bus: adapter 0 mapped to adapter 61 VME bus: adapter 61 |
If a piece of peripheral hardware installed on your system does not appear in the hinv output, it may or may not be an indication of trouble with your hardware. Some peripherals connected to the system by a board on a VME bus will not be identified when running hinv from the Command Monitor. First, you should invoke hinv from a system shell prompt; If your peripheral is still not recognized, attempt to reseat the board or device in its socket and check that it is using the correct SCSI address. If this does not relieve the problem, the hardware itself may be defective. Note also that most devices are not recognized by hinv until the MAKEDEV(1M) command has been run after their installation.
The versions command gives you an inventory of software packages that have been installed using inst(1M). This command can only be run at the system shell prompt, not from the Command Monitor. Software installed by other means is not included in the versions output. Along with the names of the software products, the release revision level numbers are displayed. By default, the output of versions includes all the products and their subsystems and is typically several hundred lines long, so it is often convenient to redirect the output to a file that you can view at your convenience. For a more general look at the products you have installed, without the list of specific subsystems, use the -b (brief) flag.
A sample versions -b output reads as follows (an actual listing will be much longer):
I = Installed, R = Removed Name Date Description I 4Dwm 04/29/93 4Dwm -- Default Window Manager, 5.3 I demos 04/29/93 Graphics Demonstration Program, 5.3 I desktop_eoe 04/29/93 Desktop Environment, 5.3 I dps_eoe 04/29/93 Display PostScript, 2.0 I eoe1 04/29/93 Execution Only Environment 1, 5.3 I eoe2 04/29/93 Execution Only Environment 2, 5.3 I insight 04/29/93 IRIS InSight Viewer, 2.1 I motif_eoe 04/29/93 Motif Execution Only Environment I nfs 04/29/93 Network File System, 5.2 |
The gfxinfo command is useful for determining the graphics hardware installed in the system. It is in the /usr/gfx directory, which is not on any of the standard search paths. Thus gfxinfo typically needs the full path name to be specified for successful execution. The command requires no arguments to run.
An sample gfxinfo output for an Indy workstation:
% /usr/gfx/gfxinfo |
Graphics board 0 is "NG1" graphics.
Managed (":0.0") 1280x1024
24 bitplanes, NG1 revision 3, REX3 revision B,
VC2 revision A
MC revision C, xmap9 revision A, cmap revision C,
bt445 revision A
Display 1280x1024 @ 60Hz, monitor id 12
|
This command provides much more information about the graphics system than the hinv command (hinv would simply return Indy 24-bit). From the output of gfxinfo you can determine the number of screens and their pixel resolutions, bitplane configurations, component revision levels, and monitor types. There is no reference page for gfxinfo. Servers without graphics capability will not have this command installed.
The uname command returns information such as the OS version and hostname. The -a options gives a complete list of the uname output. See the reference page for a description of all the uname options and fields.
lpstat with the -a option will show all the printers configured for the lp spooling system and also give their status. For more information on the lpstat command, see the IRIX documentation on print services or the lpstat reference page.
You can quickly check the configuration of a workstation or server with chkconfig(1). The /sbin/chkconfig command reports the state of various process daemons (that is, whether or not they are supposed to be active).
For example, enter the chkconfig command:
chkconfig |
You see a display similar to this:
Flag State ==== ===== acct off audit off automount on fmlicserv off gated off lockd on mrouted off named off network on nfs on noiconlogin off nsr on quotacheck off quotas off routed on rtnetd off rwhod off sar on snmpd on timed on timeslave off verbose off visuallogin on windowsystem off yp on ypmaster off ypserv off |
This example is typical for a networked workstation with the Network File System (NFS) option installed. The left column of the output describes a system feature, and the right column indicates whether it is on or off. The following list provides more specific information about each system feature:
Note that if a daemon is enabled using chkconfig, it does not necessarily mean that the daemon starts up immediately, or that it is running successfully. To verify that a daemon is running, use the ps(1) command to identify what processes are running on the system. For example, the command:
ps -ef |
produces output similar to this:
UID | PID | PPID | C | STIME | TTY | TIME | COMMAND |
|---|---|---|---|---|---|---|---|
root | 0 | 0 | 0 | Aug 3 | ? | 0:00 | sched |
root | 1 | 0 | 0 | Aug 3 | ? | 0:45 | /etc/init |
root | 2 | 0 | 0 | Aug 3 | ? | 0:08 | vhand |
root | 3 | 0 | 0 | Aug 3 | ? | 0:09 | bdflush |
This example is edited for simplicity. An actual, full ps listing shows many more active processes.
To view information about specific processes, and avoid searching through a large ps listing, you can filter the listing with the grep(1) or egrep(1) commands. For example, to look at process information for only the NFS daemons, use this command:
ps -ef | egrep 'nfsd|biod' |
The output of this command is similar to this (assuming you have NFS installed and running):
root 120 1 0 09:40:05 ? 0:02 /usr/etc/nfsd 4 root 122 12 0 0 09:40:05 ? 0:02 /usr/etc/nfsd 4 root 123 12 0 0 09:40:05 ? 0:02 /usr/etc/nfsd 4 root 124 12 0 0 09:40:05 ? 0:02 /usr/etc/nfsd 4 root 126 1 0 09:40:05 ? 0:00 /usr/etc/biod 4 root 127 1 0 09:40:05 ? 0:00 /usr/etc/biod 4 root 128 1 0 09:40:05 ? 0:00 /usr/etc/biod 4 root 129 1 0 09:40:05 ? 0:00 /usr/etc/biod 4 root 131 1 0 09:40:11 ? 0:00 /etc/mount -at nfs ralph 589 55 0 11 15:25:30 ttyq1 0:00 egrep nfsd|biod |
Note that the final entry in the ps listing is the process that produced the listing and that it is the only non-root process to have nfsd or biod in its name.
The following sections describe how to set the various options available to customize your IRIX operating system.
You can use the chkconfig command to change some aspects of system configuration. To determine which aspects of a system you can alter with
chkconfig, enter the chkconfig command:
chkconfig |
You see a list of configuration options, which are described in “Checking Options With chkconfig”. If you use the -s option, you see a list that is sorted by whether the configuration item is on or off.
To change a configuration option, use the chkconfig command with two arguments: the name of the option you wish to change and the new status of the configuration (on or off). You must have root privilege to change a system configuration.
For example, to turn on detailed process accounting, log in either as root or as the system administrator, and enter:
chkconfig acct on |
To turn off process accounting, enter:
chkconfig acct off |
Some aspects of system configuration do not take effect until the system is shut down and rebooted because startup scripts, which are in the directory /etc/init.d, are run when the system is booted up and brought to multiuser mode. These scripts read the files that chkconfig sets to determine which daemons to start.
Some configuration items that can be controlled by chkconfig may not be displayed by chkconfig. These include:
| nostickytmp | Sets ``sticky'' behavior for the directory /tmp. When the directory is sticky, (with nostickytmp set to off), users may not remove files from the directory unless they own the files, have explicit permission to remove the files (write permission), or have superuser privileges. The opposite behavior allows users to remove or replace files in /tmp, which is a publicly writable directory, even if they do not own the files. This is handy behavior if you have users who need to create large temporary files and you are short on disk space. But it is better to increase disk space to avoid important files being removed. | |
| nocleantmp | Controls whether or not the directory /tmp is cleaned out each time the system is booted. If nocleantmp is on, /tmp is not cleaned. If nocleantmp is off, all files in /tmp are removed each time the system is started. |
If you want to see these flags in the chkconfig menu, you can use the -f option to force chkconfig to create a configuration file for the options:
chkconfig -f nocleantmp on |
In this example, chkconfig creates a configuration file called nocleantmp in the directory /etc/config.
These system-wide defaults affect programs and system functions:
the system display
the time zone
the name of the system
the network address
the default system printer
Some of these defaults are described more thoroughly in specific sections of this guide, but they are all presented here to provide a more thorough overview of the IRIX system.
You can make the output of programs and utilities running on one system appear on the screen of another system on the same network by changing the DISPLAY environment variable. This is useful if your network includes graphical systems and non-graphical servers. In order to view information from the server graphically, you reset the display to a graphics workstation.
For example, if your server has only a character-based terminal as its console and you wish to run gr_osview(1M) to visually inspect your CPU usage, you would issue commands similar to these on the server:
setenv DISPLAY graphics_machine:0 gr_osview |
When you invoke gr_osview, the window with the output will appear on the machine name you specify. In this example, graphics_machine was used in place of the system name. The :0 used after the machine name indicates that display monitor 0 (the graphics console) should be used to display the output. When you have finished using the graphics console, be sure to reset the display by issuing this command on the server:
setenv DISPLAY local_server:0 |
where local_server is the name of your server.
If you have a multi-processor system, the mpadmin(1M) and pset(1M) commands allow you to change the way programs are assigned to the various processors on your system. To determine if your system is multi-processor, use the hinv(1M) command. A multi-processor system returns information similar to the following in its hinv output:
Processor 0: 40 MHZ IP7 Processor 1: 36 MHZ IP7 Processor 2: 40 MHZ IP7 Processor 3: 40 MHZ IP7 Processor 4: 40 MHZ IP7 Processor 5: 40 MHZ IP7 Processor 6: 40 MHZ IP7 Processor 7: 40 MHZ IP7 |
Or, alternately, output similar to the following:
8 40 MHZ IP7 Processors |
A single-processor system returns information similar to the following for the hinv command:
1 100 MHZ IP22 Processor |
If you have only one processor on your system (and the vast majority of systems have only one processor) these commands still operate, though they have no useful purpose.
The mpadmin command allows you to ''turn off'' processors, report various states of the processors, and move system functions such as the system clock to specific processors. The pset command is used both to display and modify information concerning the use of processor sets and programs running in the current system. The pset command provides a much more detailed level of control of processes and processors.
For complete information on mpadmin(1M) and pset(1M), see the respective reference pages.
The name of the system is stored in several places. If you wish to change the name of your system, you must change all these files together or your system will not function correctly:
in the file /etc/sys_id
in the file /etc/hosts (for networking purposes)
in a kernel data structure, which you read and set with either hostname(1) or uname(1)
in an NIS map on the NIS master server, if you are running NIS
Note that you should not arbitrarily change the name of a running workstation. Many programs that are started at boot time depend on the name of the workstation.
To display the name of the system, use the hostname command with no arguments:
hostname |
This displays the name of the system. The uname command also displays the name of the system, along with other information.
To change the name of the workstation, follow these steps:
Log in as root.
Edit the file /etc/sys_id. Change the name of the host to newname. Write and exit the editor.
You must also change the name of the host in any network files, such as /etc/hosts, and possibly in the NIS map on the master NIS server.
Reboot your system.
The name of the workstation is now changed. When the workstation is booted, all programs that are started at boot time, and read the host name when they start, now use the correct host name.
For information about the Internet address of a workstation, see the IRIX networking documentation. For more information about the name of the system, see the hostname(1) and uname(1) reference pages.
The system's network address (IP address) is covered more thoroughly in the IRIX networking documentation.
To set the network address, follow these steps:
Place the network address in /etc/hosts on the same line as the system name.
If you use the network information service (NIS), place the name of your domain in the file /var/yp/ypdomain, if it is installed.
Use the nvram(1M) command to set the variable netaddr to the IP number of the machine. For example:
nvram netaddr 192.13.52.4 |
The lpadmin(1M) command sets the default printer. This command sets the default printer to laser:
lpadmin -dlaser |
Note that the printer laser must already exist and be configured. For complete information on setting up printers, see the IRIX print services documentation.
To set the time zone of the system, edit the file /etc/TIMEZONE. For a site on the east coast of the United States, the file might look something like this:
# Time Zone TZ=EST5EDT |
The line TZ=EST5EDT means:
The current time zone is Eastern Standard Time.
It is 5 hours to the west of Greenwich mean time.
Daylight saving time applies here (EDT).
The TZ environment variable is read by init(1) when the system boots, and the value of TZ is passed to all subsequent processes. The time zone designation (such as EST) is simply passed through for your convenience. The important parts of the designation are the specification of the deviation from Greenwich Mean Time and the presence of the Daylight Savings Time indicator. The following tables provide convenient time zone information for the majority of North America, Europe, Asia, the Middle East, South America, and Australia and New Zealand.
Table 4-2. North America Time Zones
Region | GMT Differential | Abbreviation |
|---|---|---|
Newfoundland | -3:30 | NST |
Atlantic | -4:00 | AST |
Eastern | -5:00 | EST |
Central | -6:00 | CST |
Saskatchewan | -6:00 | CST |
Mountain | -7:00 | MST |
Pacific | -8:00 | PST |
Yukon | -9:00 | YST |
Alaska | -10:00 | AST |
Hawaii | -10:00 | HST |
Bering | -11:00 | BST |
BajaNorte | -8:00 | PST |
BajaSur | -7:00 | MST |
Mexico General | -6:00 | CST |
Region | GMT Differential | Abbreviation |
|---|---|---|
Ireland | 0:00 | BST |
The United Kingdom | 0:00 | BST |
Western Europe | 0:00 | WET |
Iceland | 0:00 | WET |
Middle Europe | 1:00 | MET |
Poland | 1:00 | MET |
Eastern Europe | 2:00 | EET |
Turkey | 3:00 | EET |
Western Russia | 3:00 | WSU |
Region | GMT Differential | Abbreviation |
|---|---|---|
Rep. Of China | 8:00 | CST |
Hongkong | 8:00 | HKT |
Japan | 9:00 | JST |
Rep. Of Korea | 9:00 | ROK |
Singapore | 8:00 | SST |
Table 4-5. Middle East Time Zones
Region | GMT Differential | Abbreviation |
|---|---|---|
Israel | 2:00 | IST |
Egypt | 2:00 | EET |
Table 4-6. South America Time Zones
Region | GMT Differentia | Abbreviation |
|---|---|---|
Brazil/East | -3:00 | EST |
Brazil/West | -4:00 | WST |
Brazil/Acre | -5:00 | AST |
Brazil/DeNoronha | -2:00 | FST |
Chile/Continental | -4:00 | CST |
Chile/EasterIsland | -6:00 | EST |
Table 4-7. Australia and New Zealand Time Zones
Region | GMT Differential | Abbreviation |
|---|---|---|
Australia/Tasmania | 10:00 | EST |
Australia/Queensland | 10:00 | EST |
Australia/North | 9:30 | CST |
Australia/West | 8:00 | WST |
Australia/South | 9:30 | CST |
Australia/Victoria | 10:00 | EST |
Australia/NSW | 10:00 | EST |
New Zealand | 12:00 | NZT |
For complete information about setting your time zone, see the timezone(4) reference page.
Use the date(1) command to set the date and time. For example, to set the date to April 1st, 1999, and the time to 09:00, log in as root and enter:
date 0401090099 |
Changing the date and time on a running system can have unexpected consequences. Users and administrators use system scheduling utilities (at(1), cron(1), and batch(1)) to perform commands at specified times. If you change the effective date or time on the system, these commands may not execute at the desired times. Similarly, if your users use the make(1) utility provided with the system, the commands specified in Makefiles can incorrectly compile or process your users' work. Always try to keep your system date and time accurate within reason. Random changes of the date and time can be extremely inconvenient and possibly destructive to users' work.
If timed(1M) is running on the system, and it is a slave system, the time is reset by timed and not the above command. For more information, see the timed(1M) reference page.