Maurice J. Bach: The Design of the UNIX Operating System,
Prentice-Hall, 1986.
Note: Only 2nd edition or later contain IRIX specific
information.
Brian W. Kernighan and Rob Pike: The UNIX Programming Environment,
Prentice Hall, 1984.
Berny Goodheart and James Cox: The Magic Garden Explained - The
Internals of UNIX System V Release 4, Prentice Hall, 1994.
Curt Schimmel: UNIX Systems for Modern Architectures - Symmetric
Multiprocessing and Caching for Kernel Programmers, Addison-Wesley,
1994.
Hal Stern: Managing NFS and NIS, A Nutshell Handbook, O'Reilly
& Associates, Inc., 1991.
www-europe.sgi.com is
the European mirror site for www.sgi.com.
i.e., all references to www.sgi.com can be replaced by www-europe.sgi.com.
Below, only the references to the main site (www.sgi.com) are
listed.
Some useful hints, caveats, not necessarily found in the course
handouts. These notes are meant to be accompanying the course handouts
and may or may not be useful without them.
-
set the time zone for Central Europe to (in /etc/TIMEZONE):
TZ=MET-1MEST,M3.5.0/2,M10.5.0/3
-
to specify a year >= 2000, the century (cc) needs to be specified. To
establish a date of 12 Oct 2004, 11:04 a.m.:
date 101211042004
-
The netmask is a bit pattern that defines the directly
addressable hosts in a local subnet, e.g., 0xffffff00
(equivalent to 255.255.255.0). All hosts with the same
first 3 numbers of the IP-address can be addressed directly and must,
therefore, be in the local subnet. The netmask is set in the file /etc/config/ifconfig-1.options:
netmask 0xffffff00 or netmask 255.255.255.0
-
The IP address, netmask, and broadcast address of a network interface
can be verified by the following commands:
netstat -i to
get a list of network interfaces names (e.g. ec0)
ifconfig ec0
-
To enforce a specific host resolution order, e.g., local host file
first, change the following line in /etc/nsswitch.conf:
hosts: nis dns files
to
hosts: files dns
and execute the following command to activate the change:
nsadmin restart
-
side-by-side view option of insight gives a much
easier to use layout.
-
dynaweb on Irix 6.3 requires the following product versions
(or later) to be operational:
dynaweb 3.1
insight 3.0.4
insight_base 3.0.4
-
Beware when recursively changing ownership of an existing user home
directory (or any other directory). If it contains symbolic links, the
file the link points to will get the new ownership, NOT the link. Thus,
it's safer to use the -h option. This will change the ownership of the
link itself:
chown -Rh <newid> ~username
-
.auxchestrc: sample menu file in /usr/lib/X11/system.chestrc
-
cpeople is not supported in releases after Irix
6.2.
-
use the rwall(1) command to reach users logged on
remote hosts:
rwall host1 host2 ...
showmount(1m) lists all the clients that have remotely
mounted a filesystem from the current host.
-
To find disk files larger than 10000 blocks and list them in long
format:
find / -size +10000 -exec ls -ld '{}' \;
-
Process table sorted by PID makes it easy to find parent processes:
ps -ef | sort +1n
setenv EDITOR vi
crontab -e
If you prefer a mouse based editor, setenv EDITOR nedit.
(jot doesn't work properly)
-
xhost default settings:
-
6.2 and earlier: access control disabled, clients can
connect from any host (equivalent to xhost +)
-
6.3 and later: access control enabled, only authorized
clients can connect (equivalent to xhost -)
-
one line commands for dvhtool to list contents of volume
header (for system disk and optional disk)
dvhtool -v list
dvhtool -v list /dev/rdsk/dks0d2vh
-
xdkm, a graphical tool for creating and managing
disk partitions, requires following subsystems (from IRIX CD) that are
not installed by default:
-
eoe.sw.xfsmcli XFSM
Client Software
-
eoe.sw.xfsmserv XFSM
Server Software
-
when new disk device files are created with mknod, don't forget to
change the permissions appropriately (to read - write - execute
protected for all other users):
mknod /dev/dsk/dks0d2s3 b 128 35
ls -l /dev/dsk/dks0d2s3
brw-r--r-- 1 root sys 128, 35 Mar 9 02:21 dks0d2s3
chmod go-rwx /dev/dsk/dks0d2s3
ls -l /dev/dsk/dks0d2s3
brw------- 1 root sys 128, 35 Mar 9 02:21 dks0d2s3
repeat the same for the raw device /dev/rdsk/dks0d2s3.
-
To simplify adding new entries to /etc/fstab, first
mount thew new partitions manually, then use the command mount -p to get a list of all mounted
file systems. This will be in the same format as /etc/fstab.
Use copy/paste to add the new entries to /etc/fstab. To
automatically add the last mounted filesystem to fstab:
mount -p | tail -1 >> /etc/fstab
-
xfsm,a graphical tool for managing XFS filesystems,
requires following subsystems that are not installed by default:
-
eoe.sw.xfsmcli XFSM
Client Software
-
eoe.sw.xfsmserv XFSM
Server Software
-
manually mount CD-ROMs (in case mediad didn't react):
-
mount an SGI software distribution disk (contains an EFS filesystem on
partition 7):
mount -r /dev/dsk/dks0d4s7 /CDROM
-
mount an ISO 9660 type CD-ROM:
mount -t iso9660 -r /dev/scsi/sc0d4l0 /CDROM
-
xfs_growfs can also be used on a regular disk
partition, for example if a partition has been enlarged while retaining
the same starting block. See also xfs_growfs(1m).
-
xlvm, a graphical tool for creating and managing
logical volumes, requires installation of eoe.sw.xfsmcli
and eoe.sw.xfsmserv.
-
Example xlv_make scripts:
vol mirrored
data
plex
ve /dev/dsk/dks1d1s7
plex
ve /dev/dsk/dks1d2s7
end
vol striped
data
plex
ve -stripe /dev/dsk/dks1d1s7 /dev/dsk/dks1d2s7
end
vol striped_and_mirrored_with_mirrored_log
data
plex
ve -stripe dks3d1s7 dks4d1s7 dks3d2s7 dks4d2s7
plex
ve -stripe dks4d3s7 dks3d3s7 dks4d4s7 dks3d4s7
log
plex
ve dks1d1s15
plex
ve dks1d3s15
end
Note: if several controllers are available for striped volumes, rotate
first the controller numbers and then the disk id's for optimal
performance:
GOOD: dks3d1s7 dks4d1s7 dks3d2s7 dks4d2s7
NOT GOOD: dks3d1s7 dks3d2s7 dks4d1s7 dks4d2s7
-
there is a man page for the PROM monitor: prom(1M)
-
to boot from an alternative system disk, change the following variables
in the PROM command monitor:
setenv SystemPartition
ctrl(0)disk(3)rdisk(0)partition(8)
setenv OSLoadPartition
ctrl(0)disk(3)rdisk(0)partition(0)
setenv root dks0d3s0
-
to exit sash, type CTRL-D or click teh "Done"
button
-
boot fx from CDROM (assuming controller 0, scsi id 4):
boot -f dksc(0,4,8)sashARCS
dksc(0,4,7)/stand/fx.ARCS --x
or
boot dksc(0,4,7)/stand/fx.ARCS --x
if the sash from the volume header of the system disk is used.
(use sash64 and fx.64 if system is running a 64-bit
kernel: all R8000 and R10000 systems except O2 R10k)
killall -HUP inetd
-
boot fx from a remote CD-ROM (server name is happy):
boot -f bootp()happy:/CDROM/stand/fx.ARCS
--x
-
the shutdown command has a bug (feature?). If -g<graceperiod>
is specified (default: 60), shutdown waits the specified number of
seconds and issues a message that the system is going down. Then, it
will wait again for the same number of seconds before starting the
shutdown procedure due to a sleep command in the shutdown script. Use
killall sleep
to get rid of it and initiate the shutdown immediately.
-
if the graphics console of a system seems frozen, you can try to restart
the X window server before rebooting by pressing the following
keys all-together:
Left-CTRL Left-SHIFT F12 / (on Numeric Keypad)
-
to create your own run-level scripts, e.g., local networking setups:
-
create a file /etc/init.d/network.local using
the following skeleton (or a copy of /etc/init.d/lp which
is quite a simple one):
#! /sbin/sh
IS_ON=/etc/chkconfig
if $IS_ON verbose; then
ECHO=echo
else
# For a quiet startup and shutdown
ECHO=:
fi
case "$1" in
'start')
if $IS_ON network; then
<put your commands to start programs here>
;;
'stop')
<put your commands to stop programs here>
;;
*)
echo "usage: $0 {start|stop}"
;;
esac
-
create links in /etc/rc2.d and (if necessary) in /etc/rc0.d:
ln -s /etc/init.d/network.local /etc/rc2.d/S31network
ln -s /etc/init.d/network.local /etc/rc0.d/K39network
-
if using your own chkconfig flag, force initialization:
chkconfig -f <yourflag> on
-
use of remote tapes: need to allow remote logins without
passwords. Create the file ~/.rhosts and add all hosts
that are allowed to login. See also rhosts(4).
-
copy system disks:
-
partition the new disk such that all filesystems will fit
-
create new root filesystem and mount it (assuming new disk is on
controller 0 with scsi id 2):
-
mkfs /dev/dsk/dks0d2s0
-
mkdir /newroot
-
mount /dev/dsk/dks0d2s0
/newroot
-
copy the root filesystem
-
for XFS: xfsdump -J -v
silent - / | xfsrestore - /newroot
-
for EFS: dump 0f - / |
(cd /newroot; restore xf -)
-
copy all the other filesystems accordingly.
-
copy the the standalone shell (sash) that is located in the volume
header:
-
cd /tmp
-
dvhtool -v get sash sash
-
dvhtool -v add sash sash
/dev/rdsk/dks0d2vh
-
keep all and remove all
-
keep all removes all markers
-
remove all removes all markers plus all
installed software that appears also on the distribution
-
further useful keywords: all, default
-
to install all installable software (i.e., select all subsystems marked
A): install A
-
to install only the upgrades for a specific product: install eoe U
-
default user for remote distribution is guest
-
the command "versions changed"
is equivalent to "showfiles -cCH"
-
copy a CDROM to a distribution directory:
mkdir /dist
cd /dist
(cd /CDROM/dist; tar cfvB - .) | tar xfB -
-
useful commands to verify installed software:
-
list all installed software including subsystems not installed by
default:
versions -a showprods
-a
-
brief listing of installed products:
versions -b showprods
-D 1
-
list products on a CDROM distribution:
showprods -f /CDROM/dist
-
list files belonging to a specific product (or subsystem):
showfiles eoe.sw.uucp
-
find out to what subsystem a file belongs:
showfiles -- libdmedia.so.1
f 50334 540288 dmedia_eoe.sw.lib usr/lib/libdmedia.so.1
l 0 0 dmedia_eoe.sw.lib m usr/lib32/libdmedia.so.1
f 59525 570684 dmedia_eoe.sw.lib
usr/lib32/mips3/libdmedia.so.1
f 41529 557060 dmedia_eoe.sw.lib
usr/lib32/mips4/libdmedia.so.1
Printers
-
the Berkeley lpd software is not installed by default.
Install the following subsystems fron the newest IRIX 6.X Applications
CD:
-
print.man.bsdlpr
-
print.man.bsdlpr
-
further debugging hints for lp:
-
to restart the lp scheduler, you can also cycle the lp script:
/etc/init.d/lp stop
/etc/init.d/lp start
-
on the server (and client) use the command ps -fu lp, to check what processes
are currently executing and possibly blocking the printing. You might
want to kill them with kill -9
<PID>.
-
some hints for using snapshot:
-
to move the snapshot icon, use ALT + RIGHT MOUSE
and select Move or type ALT + F7
to get into move mode.
-
to select regions outside the snapshot icon, you need to
move the camera cursor outside the icon. Press the SHIFT
key and keep it pressed while moving the cursor and defining the
region.
-
to convert RGB files to PostScript, it's more convenient to
use showcase. Use the Import->Image
menu to load RGB images. You can print directly from showcase
or save the page as PostScript.
-
the Printer Manager offers more printer models and makes it
easy to configure a printer with a network card. Make sure you have the
latest Impressario software installed:
-
5.3: Printers with network card not supported.
-
6.2: Impressario 2.1+ (on Irix 6.2 Applications August
1996 CD or later)
-
6.3: Impressario 2.1.2+ (on Irix 6.3 Applications CD,
November 1996 or later)
-
6.4: Impressario 2.1.2+ (on Irix 6.4 Applications CD,
February 1997 or later)
Note: some printer models require an Impressario license. Check the
following WWW page http://www.sgi.com/Technology/Impressario/devices.html#Printers
for more information.
Terminals
-
connector types and pin-outs are documented in the serial(7)
man page.
-
a system can be used as a terminal to monitor a server system
-
install eoe.sw.uucp
-
configure port 2 as a modem port using the System
Manager (continue with: 5.3/6.2: Port Setup,
6.3+: Hardware and Devices, then Serial Device Manager)
or
edit the file /etc/uucp/Devices and uncomment
(remove the # character) the following line:
-
# Direct ttyd2 - 9600 direct
-
connect serial port 2 of your system to port 1 of the server
-
open a unix shell and issue the following command:
cu -l ttyd2
-
to exit the cu program, type ~.<RETURN>
http://reality.sgi.com/urs/sysadm/addendum.html
March 2001, Urs Meyer, Silicon Graphics, Zurich
From older versions of the system administration course
-
Swap space can also be configured/added using the System Manager:
-
6.2: choose Swap Manager
-
6.3+: choose System Performance -> Swap Manager
-
"Add Real Swap Space" uses a local file as swap space
-
Virtual swap space is well explained in the swap(1m)
man page
-
mount options are in fstab(4)
-
On a mounted filesystem, each NFS request waits timeo=n
tenths of a second (default = 11) for a response. If no response
arrives, the time-out is multiplied by 2, up to a maximum of MAXTIMO
(900), and the request is retransmitted. When retrans=n
retransmissions (default = 5) have been sent with no reply a soft
mounted filesystem returns an error on the request. Default wait time
is, therefore, 1.1 + 2.2 + 4.4 + 8.8 + 17.6 = 34.1 seconds.