Sie sind auf Seite 1von 113

AIX

LD_LIBRARY_PATH is LIBPATH for AIX


Print a stanza
# Here we look in /etc/security/user file and print root's stanza
# finds line starting with root: and ends on first blank line
awk '/^root:/,/^$/' /etc/security/user
Make a filesystem:
mkvg -f -B -y new-vg hdiskx hdisky ...
mklv -y mylv -t jfs2 rootvg 30M
crfs -v jfs2 -d(lv) -m(mount point) -A yes
chlv -x 1024 lv05
To determine the AIX version and maintenance level
uname -a
more /usr/lpp/bos/README
oslevel
oslevel
oslevel
oslevel
oslevel

-r
-q
-g
-l 5.2.0.0 #list filesets needing updates
-rl 5200-05 #what is "wrong" with this release version

lslpp -L bos.mp
#determine level of fileset X
lslpp -a -h bos.mp #determine history and level of fileset X
#determine what fileset a binary is part of
lslpp -w /usr/sbin/lsvpcfg
lslpp -w /usr/bin/java
lppchk -v

#any probs w/ s/w?

To check the microcode level of the HBAs


lsdev -Cc adapter -spci
Loop on FC Adapters
lsmcode -cd <device name>
lsmcode -cd fcs0 ... fcs1
lscfg -vpl fcs0 ... fcs1
lscfg -vp | grep alterable
firmware
lsdev -C -Ftype,name | grep -i fcs
System Firmware
lscfg -vp | grep -p Plat
lscfg -vp | grep -p "System VPD" | grep "System Info Specific.(YL)"
No activity on HBA?

Run advanced diags on HBA to "intialize it" in the OS.

model/uname/serial num
prtconf
prtconf | grep "Serial Number"
prtconf | grep "System Model"
uname -M

prtconf | grep "Model Architecture" || bootinfo -p


bootinfo -z 0=uniproc, 1=multiproc
lscfg
lsattr
lsdev
To check the versions of the device drivers
lslpp -l | grep -i powerpath
lslpp -l | grep -i hba
lslpp -l | grep "FC Software"
lslpp -L EMC.Symm* #should get two outputs - aix and fcp
lslpp -L devices.pci.df1000f*
To determine the device names for the HBA cards
lsdev -Cc adapter|grep fcs
To determine the part numbers for the HBAs
lscfg -vpl fcs0 | grep "Part Number"
List device module (like modinfo in solaris)
scls -l
List EMC Power devices
lsdev -C -t power
HSC/HMC/WSM/webSmit GUI
http://wsmnode/remote_client.html
http://wsmnode/remoteclient.html
http://wsmnode/wsm.html
/usr/websm/bin/wsm
/usr/bin/websm
websmit (hacmp) - http[s]://HOSTNAME:42267
mkvterm -m cec1 -p lpar1
lssyscfg -r --all
lssyscfg -r lpar -F name,default_profile
lshsc -a
lshwres -r io
lparstat [-[l,H,i]]
lsrsrc IBM.ManagementServer| grep Hostname| grep -v Local
lsrsrc IBM.ManagementServer
uname -L
monitoring tools
topas -L
nmon
svmon
default password: admin/admin
baud (if no HMC, but local console on P5) use 19200 (not 9600)
solaris mkfile in aix is /usr/sbin/lmktemp file 100m example.
To switch from 32-bit mode to 64-bit mode run the following commands, in the giv

en
order:
1.ln -sf /usr/lib/boot/unix_64 /unix
2.ln -sf /usr/lib/boot/unix_64 /usr/lib/boot/unix
3.bosboot -a
4.shutdown -Fr
5.bootinfo -K (should now show 64)
Documentation
no web
file:///usr/share/man/info/en_US/a_doc_lib/aixgen/topnav.htm
web
http://$SERVERNAME/doc_link/en_US/a_doc_lib/aixgen/topnav/topnav.htm
infoexplorer: info -h $TOPIC
size of disk
lscfg -v | grep disk
bootinfo -s (disk device)

reports size of disk drive

List volumes on hdisks by vg


lsvg -o | lsvg -i -l
List free space in vg
lsvg -pl $VG
oslevel [-r]
instfix -viq
instfix -viq | grep AIX | grep Update
swapon -a
isps -a
df -v
/etc/filesystem
/etc/vfs
mount
for VG $(lsvg)
do
lsvg -lv $VG
lsvg -p $VG
lsvg $VG
done
lsdev -Cc disk
lsdev -C -c adapter -F 'name class location physloc'
lsdev -C -c tty -F 'name class location physloc'
#SSA disk
ssaxlate -l hdisk3
pdisk2
#give h/w model and part number of a disk
lscfg -vl pdisk2
lscfg -pl pdisk2
lspv -l
lspv HDISK
lspv -p HDISK
lsvpcfg #list all disks and the vpaths
lsdev -Cc disk -s dpo -t vpath -F name
ls -l /etc/vg

ttyconf -l pcsim
lsdev -C -c tty -H
hostid exists, but use 'uname -m' - cpu-id
BOS: Basic OS
TMOUT=0
errpt == dmesg
setclock
oslevel == uname -v -r (swap x with y: 1 3 is 3.1)
tctl == mt ~= tapeutil
tapeutil -f /dev/rmt0 mount 49 #slot 49 to rmt0
tapeutil -f /dev/rmt0 umount 34 #from rmt0 to slot 34
tapeutil -f /dev/rmt0 inventory
/usr/sbin/sbdevice -vr rmt0 #rewind
/usr/sbin/sbdevice -ver rmt0 #rewind and eject
sbdevice -e /dev/rmt0
*OR* tcl -f /dev/rmt0 offline
*OR* tapeutil -f /dev/rmt0 unload
tcopy #does a tapedir and/or copy tape to tape
mkdev -c disk -s scsi -t osdisk -p scsi2 -a pv=yes
mkboot -c -d /dev/<diskname> # installboot on alternate disk
which_fileset CMD #needs bos.rte.install
istat #does inode status/info
/etc/filesystem == /etc/fstab
/etc/qconfig == /etc/printcap
mkps #add paging
chps #chg paging
rmps #rm paging
shutdown -m #maint or single user mode
enq == lpc
startsrc/stopsrc PRODUCT #rc scripts
bootinfo -K #32 or 64 bit kernel
bootinfo -r
OR
lsattr -E -l sys0 -F 'description value' -a 'realmem'
OR
lsattr -E -l sys0 -a realmem -F value
OR
lsattr -El mem0
#memory
lscfg -pv

#list memory by slots (close to solaris prtdiag)

lsattr -l sys0 -E
odmget -q "name = sys0 and attribute = autorestart" CuAt
diag -a #add or remove devices from system kernel and prom
cfgmgr
cfgmgr -i /dev/cd0 #load drivers for any new devices found, from the CD
lscfg
lscfg -l mem\*
lscfg -l mem\* -v
lscfg -vpl ent0
#get MAC
lsattr -Cc [disk | tape]
lslv -m hd5
#see who is the primary mirror for a lv
NEW_DISK=hdisk1
lspv
#see if it has a hex dev id

# if not, do a
chdev -l $NEW_DISK -a pv=yes
extendvg -f rootvg $NEW_DISK
#use mklvcopy if you don't want all LVs to be mirrored
mirrorvg -S rootvg $NEW_DISK
# done by mirrorvg "syncvg -v rootvg"
bosboot -a -d /dev/$NEW_DISK
bootlist -m normal hdisk0 $NEW_DISK
#make a VG
# big vg -B so you can more than 32 disks in a VG
mkvg -f -B -y new-vg hdiskx hdisky ...
#list install software
lslpp -h all | grep -i vrts
#determine level of fileset X
lslpp -L bos.mp
#determine history and level of fileset X
lslpp -a -h bos.mp
#determine what fileset a binary is part of
lslpp -w /usr/sbin/lsvpcfg
lslpp -w /usr/bin/java
#Commit all installed s/w
installp -c -g -X all
#Install
installp
installp
installp
installp

and commit all installed s/w


-acXd /tmp/Atape.x.x.x.bin Atape.driver
-acXd /tmp/atldd.x.x.x.bin atldd.driver
-a -Q -d . -c -N -g -X all
-a -Q -d /tmp/install -c -N -g -X all

#install a package
installp -qa -d . printers.msg.en_US
#install a specific package version
installp -qa -d . printers.msg.en_US 5.2.0.0
#install a package and automatically load any prerequisite packages
installp -qag -d . printers.msg.en_US
#install "latest" ML (maintenance level) in curent dir
/usr/lib/instl/sm_inst installp_cmd -a -Q -d /tmp/ml -f _all_latest -c \
-N -g -X -G
#install "ALL" ML (maintenance level) in curent dir
/usr/lib/instl/sm_inst installp_cmd -a -d /tmp/ml -f _update_all -c \
-N -g -X
#missing packages? (ML level doesn't show what you expect)
# instfix -i | grep ML | grep not
# instfix -ivk 4330-11_AIX_ML | grep : | grep not
installp -a -Q -d /tmp/ml-XX -c -N -g -X all
#compare two systems
lslpp -Lc > /tmp/server1.out
lslpp -Lc > /tmp/server2.out

compare_report -b /tmp/server1.out -o /tmp/server2.out -l -h -m -n \


> compare_report.out
diag - run "Task Selection"
=> "Automatic Error Log Analysis and Notification"
=> "Add to the error notification mailing list"
to add email addresses for h/w failure notification
Patches
1. Issue lslpp -i
This outputs the Product ID information of the software installed
using the installp command on AIX.
2.Check with your AIX support personnel for the most up-to-date
list of fixes for each product.
3.Issue insfix -ik FIX_ID to verify that the FIX_ID fix has been
applied to your system.
#find something within a specific filesystem - dont't cross filesystem mounts
find /usr -xdev myfile #like -mount in solaris
# install s/w from file
#
# See if it is installed: instfix -ik IX79484
#
# Do a 'inutoc .' in directory first to build a .toc
#
#
cd /var/adm/patches/somedir
inutoc .
installp -a -d . -f .toc -c -g -X -v -V2
# EMC package
cd /mnt/EMC/ECC/Control_Center_5.2
./install_master.sh `pwd`
cd /mnt/EMC/PowerPath/PowerPath4.4/aix
installp -qa -d ./EMCpower_install EMCpower
cd /mnt/EMC/Drivers/AIX
installp -qa -d ./EMC.AIX.5.2.0.0 EMC.Symmetrix.aix.rte EMC.Symmetrix.fcp.rte
# ** UN-install software**
installp -u EMCpower
ALL
fuser `tty`
ps -t tty0p1 -f
ps -t console,ttyp1 -f
#get kernel threads too
ps -efk
dbm
*.dir - index file
*.pag - data file
useradd -c "Last, First" -d /home/usename -g 1 -m -u 12345 -s /usr/bin/ksh usern
ame
------------------------------------------------SMS Menu

when power on get 'keyboard' word on screen


press 1 to get
RS/6000 Firmware
Version WIL99308
(c) Copyright IBM Corp. 1997 All rights reserved.
------------------------------------------------------------------System Management Services
1
2
3
4

Display Configuration
Multiboot
Utilities
Select Language

press 5 to get
RS/6000 Firmware
Version WIL99308
(c) Copyright IBM Corp. 1997 All rights reserved.
------------------------------------------------------------------Multiboot
1
2
3
4
5
6

Select Software
Software Default
Install From
Select Boot Devices
OK Prompt
Multiboot Startup <OFF>

------------------------------------------------NIM - lsnim -l CLIENT || lsnim -l | grep CLIENT


bootinfo -z

0=uniproc, 1=multiproc

lsnim -l CLIENT #status of install


nim -o reset -a force=yes 'myserv'
lsnim -c resources myserv
nim -F -o deallocate myserv
nim -F -o remove myserv
#If client has control:
#Change to master:
/usr/lpp/bos.sysmgt/nim/methods/m_chattr -a control=master myserv
lsnim -l myserv
nim -F -o reset 'myserv'
nim -o deallocate -a lpp_source=520-ml05-lpp myserv
#add it back in as a client
================================================================================
0514-061 Cannot find a child device after running cfgmgr?
This error is a common connectivity error. It occurs when no child device is cab

led to the adapter, or when there is a problem with the connectivity to the chil
d device. The appearance of this message means that the problem is external to t
he adapter. So, cables and ports on switches and end devices should be checked,
re-seated, or replaced. To determine that the adapter is not at fault, follow th
ese steps:
1.
2.
3.
4.

Remove any cables.


Add a wrap plug to the card.
rmdev -Rdl fcs0 (where 0 is the number of the adapter)
Run the cfgmgr command.

If the "0514-061 Cannot find a child device" message appears,


rap plug is not plugged in securely or the adapter is faulty.
s not appear, then most likely the problem is external to the
case, proceed to run diagnostics on the adapter by following

then perhaps the w


If the message doe
adapter. In either
the next steps:

1. Log in as root.
2. run "diag"
3. Press Enter on the first screen.
4. At the function Selection screen, highlight Advanced Diagnostics Routines
and press Enter.
5. At the Diagnostic Mode selection screen, highlight System Verification and
press Enter.
6. At the Advanced Diagnostic Selection screen, highlight the fcs#, press Ent
er and then press F7.
7. Follow the on-screen prompts to re-cable the adapter.
If a problem was found, then place a call with your local IBM Hardware represent
ative.
If no problem was found, then the problem is most likely external to the adapter
.
================================================================================
AIX Command Crib Sheet
OS LEVEL : AIX
DATE
: 29/01/2001
VERSION : 1.8
Latest version can be found at http://www.mort.level5.net/johnr/howto/aix.txt
---------------------------------------------------------------------------MISCELLANEOUS
---------------------------------------------------------------------------http://www.rs6000.ibm.com/cgi-bin/ds_form

Web based man pages

oslevel

Returns operating system level

whence (program)
whereis (program)

Returns full path of program


Returms full path of program

what (program)

Displays identifying info from the executable


like version number, when compiled.

lslpp
lslpp
lslpp
lslpp

list all installed software


Check if software installed
Lists filesets vs packages
Lists installation history of filesets

-L all
-L (program set name)
-f
-ha

instfix -ik (fix number eg IX66617)


instfix -ik 4330-02_AIX_ML

Checks id fix is installed

uuencode (infile) (extract-file-name) > (output file)


Converts a binary file to an ASCII file for transfer by modem or email
uudecode (encoded file)
Extracts a binary file from encoded file and calls it the extract-file-name
examples :uuencode maymap maymap > maymap.enc
uuencode maymap.enc
od -c /tmp
ls -i
echo *

Displays contents of the /tmp directory file


Lists files with their inode numbers
Lists files, can be used if ls is corrupt/missing

alog -o -t boot

View the boot log

chtz (timezone eg GMT0BST)


chlang (language eg En_GB)

Changes the timezone in /etc/environment file


Changes the language in /etc/environment file

ar -v -t (archive file)
ar -v -x (archive file)
ar -v -t /usr/lib/libC-r.a

List contents of an archive


Extracts the archive
Lists contents of the libC_r.a library

find /source -print | cpio -pdm /target


Copying directories using cpio, creates /target/source directory.
dump -nTv (binary executable)
dump
dump
dump
dump

-c
-o
-l
-s

Displays
Displays
Displays
Displays

Displays the contents of an executable file

string information
object file headers
line numbers
the text section

snap -L /*
snap -ao /dev/rmt0
snap -ad (directory)

Get a system config


Create a snapshot onto tape
Create a snapshot into a named directory other
than the default (/tmp/ibmsupt)

/usr/dt/bin/dtconfig -d
/usr/dt/bin/dtconfig -e
/var/dt/Xpid

Disables desktop logins


Enables desktop logins
PID of the dtlogin process

-------------------------------------------------------------------------------TERMINALS
-------------------------------------------------------------------------------tty

Displays what the tty/pty number of the terminal is.

termdef

reports the termtype setup in smit for the tty port


that termdef is run on.

chdev -l (device eg tty1) -a term=vt100


penable tty0
pdisable tty0

Sets tty to a vt100 terminal type

adds getty line into /etc/inittab for tty0 and starts getty
disables the getty line and disables getty

penable / pdisable -a option is for all


stty erase ^?
stty erase ^H

Set backspace key for vt100 terminals


Set backspace key for wyse50 terminals

lscons
chcons -a login=enable (device eg /dev/tty1)

Displays the console device


Changes the console device

Create ttys on ports 0 to 7 on adapter sa3 :


lsdev -C -c tty -H
for i in 0 1 2 3 4 5 6 7
do
mkdev -c tty -t tty -s rs232 -p sa3 -w ${i} -a speed=38400 -a term=vt100 \
-a login=enable
done
portmir -t /dev/tty0
portmir -o

Mirror current terminal onto /dev/tty0


Turns off port mirroring

-------------------------------------------------------------------------------NETWORK
-------------------------------------------------------------------------------tcpdump -ni en3 icmp
tcpdump -nei en3 icmp
tcpdump -nvvei en3 icmp
host (ip or hostname)

Resolves a hostname / ip address

hostname
hostname (hostname)

Displays hostname
Sets the hostname until next reboot

chdev -l (device name) -a hostname=(hostname)


chdev -l inet0 -a hostname=thomas
lsdev -C
ifconfig
ifconfig
ifconfig
ifconfig

-c if
(device
(device
(device
(device

name)
name) up
name) down
name) detach

Changes hostname permanently

Display network interfaces


Displays network card settings
Turns on network card
Turns off network card
Removes the network card from the
network interface list

ifconfig en0 inet 194.35.52.1 netmask 255.255.255.0 up


ifconfig lo0 X.X.X.X netmask X.X.X.X broadcast X.X.X.X alias
Create alias ip
address for loopback
ifconfig en0 X.X.X.X delete
Delete a VIP on an existing interface
#ifconfig en0 X.X.X.X unalias
Delete a VIP on an existing interface
#ifconfig en0 X.X.X.X -alias
Delete a VIP on an existing interface
lsattr -H -El en0 -F"attribute value"
lsattr -El en0
lsattr -El ent0

Detailed (terse) config on interface


Detailed config on interface
Detailed config on interface

route (add/delete) (-net/-host) (destination) (gateway)


Adds or deletes routes to other networks or hosts, does not update
the ODM database and will be lost at reboot.

route add -net 194.60.89.0 194.60.90.4


Configure network example hostname is: setupbox
example ip is: 12.2.12.113 -n is DNS -g is gateway
/usr/sbin/mktcpip -h setupbox -i en0 -a 1.2.1.90 -m 255.255.255.0 \
-d mydomain.com -n 12.2.1.30 -g 12.2.1.1 -t N/A -s
lsattr -EHl inet0
odmget -q "name=inet0" CuAt
refresh -s inetd
kill -1 (inetd PID)

Displays routes set in ODM and hostname


Displays routes set in ODM and hostname
Refresh inetd after changes to inetd.conf
Refresh inetd after changes to inted.conf

netstat -i
netstat -ia
entstat -d (ethernet adapter eg en0)

Displays interface statistics


Displays MAC address
Displays ethernet statistics

arp -a

Displays ip to mac address table from arp cache

no -a

Displays network options use -o to set individual options or


-d to set individual options to default.
no -o option=value (this value is reset at reboot)
no -o "ipforwarding=1"

traceroute (name or ipaddress)

Displays all the hops from source to


destination supplied.

ping -R (name or ipaddress)

Same as traceroute except repeats.

-------------------------------------------------------------------------------N.F.S.
-------------------------------------------------------------------------------exportfs

Lists all exported filesystems

exportfs -a

Exports all fs's in /etc/exports file

exportfs -u (filesystem)

Un-exports a filesystem

mknfs

Configures and starts NFS services

rmnfs

Stops and un-configures NFS services

mknfsexp -d /directory

Creates an NFS export directory

mknfsmnt

Creates an NFS mount directory

mount hostname:/filesystem /mount-point

Mount an NFS filesystem

nfso -a
nfso -o option=value
nfso -o nfs_use_reserved_port=1

Display NFS Options


Set an NFS Option

-------------------------------------------------------------------------------BACKUPS
-------------------------------------------------------------------------------MKSYSB

-----mkszfile -f
mkszfile -X

Creates /image.data file (4.x onwards)


Creates /fs.size file
(3.x)

mksysb (device eg /dev/rmt0)


CPIO ARCHIVE
-----------find (filesystem) -print | cpio -ocv > (filename or device)
eg find ./usr/ -print | cpio -ocv > /dev/rmt0
CPIO RESTORE
-----------cpio -ict < (filename or device) | more
Lists archive
cpio -icdv < (filename or device)
cpio -icdv < (filename or device) ("files or directories to restore")
eg cpio -icdv < /dev/rmt0 "tcpip/*"
cpio -icdv < /dev/rmt0 "*resolve.conf"

Restore directory and contents


Restore a named file

TAR ARCHIVE
----------tar -cvf (filename or device) ("files or directories to archive")
eg tar -cvf /dev/rmt0 "/usr/*"
TAR RESTORE
----------tar -tvf (filename or device)

Lists archive

tar -xvf (filename or device)


Restore all
tar -xvf (filename or device) ("files or directories to restore")
use -p option for restoring with orginal permissions
eg tar -xvf /dev/rmt0 "tcpip"
tar -xvf /dev/rmt0 "tcpip/resolve.conf"

Restore directory and contents


Restore a named file

AIX ARCHIVE
----------find (filesystem) -print | backup -iqvf (filename or device)
Backup by filename.
eg find /usr/ -print | backup -iqvf /dev/rmt0
backup -(backup level 0 to 9) -f (filename or device) ("filesystem")
Backup by inode.
eg backup -0 -f /dev/rmt0 "/usr"

-u option updates /etc/dumpdates file

AIX RESTORE
----------restore -qTvf (filename or device)

Lists archive

restore -qvxf (filename or device)


Restores all
restore -qvxf (filename or device) ("files or directories to restore")
(use -d for restore directories)
restore -qvxf /dev/rmt0.1 "./etc/passwd"

Restore /etc/passwd file

restore -s4 -qTvf /dev/rmt0.1

Lists contents of a mksysb tape

backup -0 -f - /mnt/home | restore -Brvf BACKUPS ACROSS A NETWORK


-----------------------To run the backup on a local machine (cpio) and backup on the remote
machine's (remhost) tape drive (/dev/rmt0)
find /data -print | cpio -ocv | dd obs=32k | rsh remhost \
"dd ibs=32k obs=64k of=/dev/rmt0"
To restore/read the backup (cpio) on the remote machine
dd ibs=64k if=/dev/rmt0 | cpio -icvt
To restore/read the backup (cpio) on the local machine from the remote
machine's (remhost) tape drive (/dev/rmt0)
rsh remhost "dd ibs=64k obs=32k if=/dev/rmt0" | dd ibs=32k \
| cpio -icvt
To run the backup (cpio) on a remote machine (remhost) and backup to
the local machines tape drive (/dev/rmt0)
rsh remhost "find /data -print | cpio -icv | dd ibs=32k" \
| dd ibs=32k obs=64k of=/dev/rmt0
-------------------------------------------------------------------------------Copying diskettes and tape
-------------------------------------------------------------------------------COPYING DISKETTES
----------------dd if=/dev/fd0 of=(filename) bs=36b
dd if=(filename) of=/dev/fd0 bs=36b conv=sync

or flcopy

COPYING TAPES
------------dd if=/dev/rmt0 of=(filename)
dd if=(filename) of=/dev/rmt0

or tcopy

-------------------------------------------------------------------------------DEVICES
--------------------------------------------------------------------------------

lscfg
lscfg -v
lscfg -vl (device name)

lists all installed devices


lists all installed devices in detail
lists device details

bootinfo -b
bootinfo -k

reports last device the system booted from


reports keyswitch position
1=secure, 2=service, 3=normal

bootinfo
bootinfo
bootinfo
bootinfo
bootinfo

reports amount of memory (in Kbytes)


reports size of disk drive
reports type of machine ie rspc
check IPL ROM of device
of 1 = machine can boot from a tape drive
of 0 = machine CANNOT boot from tape drive

-r
-s (disk device)
-T
-q disk-device
-e
answer
answer

diag -c -d (tape device)

Hardware reset a tape drive.

tapechk (No of files)

Checks Number of files on tape.

< /dev/rmt0

Rewinds the tape !!!

-------------------------------------------------------------------------------PRINTERS / PRINT QUEUES


-------------------------------------------------------------------------------splp (device)
splp /dev/lp0

Displays/changes printer driver settings

export $LPDEST="pqname"

Set default printer queue for login session

lsvirprt

Lists/changes virtual printer attributes.

rmvirprt -q queuename -d queuedevice


lsattr -El sys0 -a realmem
mknod
mknod
mknod
chmod

Removes a virtual printer

reports amount of useable memory

(device) c (major no) (minor no)


/dev/null1 c 2 3
/dev/null c 2 2
666 /dev/null

Creates a /dev/ device file.

lsdev -C
lists all customised devices ie installed
lsdev -P
lists all pre-defined devices ie supported
lsdev -(C or P) -c (class) -t (type) -s (subtype)
chdev -l (device) -a (attribute)=(new value)
chdev -l sys0 -a maxuproc=80
lsattr -EH -l (device) -D
lsattr -EH -l sys0 -a modelname
rmdev -l (device)
rmdev -dl (device)
rmdev -SRl (device)

Change a device attribute

Lists the defaults in the pre-defined db

Change device state from available to defined


Delete the device
S stops device, R unconfigures child devices

lsresource -l (device) Displays bus resource attributes of a device.


#set umask for ftp jobs
ftp stream tcp6 nowait root /usr/sbin/ftpd ftpd -l -u 011 -t 300 -k

Power Management (PCI machines)


------------------------------pmctrl -a

Displays the Power Management state

rmdev -l pmc0
mkdev -l pmc0

Unconfigure Power Management


Configure Power Management

-------------------------------------------------------------------------------TAPE DRIVES
-------------------------------------------------------------------------------rmt0.x where x = A + B + C
A = density
B = retension
C = rewind
tctl
tctl
tctl
tctl
tctl

-f
-f
-f
-f
-f

(tape
(tape
(tape
(tape
(tape

0 = high
0 = no
0 = no
device)
device)
device)
device)
device)

4 = low
2 = yes
1 = yes

fsf (No)
bsf (No)
rewind
offline
status

Skips forward (No) tape markers


Skips back (No) tape markers
Rewind the tape
Eject the tape
Show status of tape drive

chdev -l rmt0 -a block_size=512

changes block size to 512 bytes


(4mm = 1024, 8mm = variable but
1024 recommended)

qpri -#(job No) -a(new priority)

Change a queue job priority.

qhld -#(job No)


qhld -r #(job No)

Put a hold on hold


Release a held job

qchk -A
lpstat
lpstat -p(queue)

Status of jobs in queues

qcan -x (job No)


cancel (job No)

Cancel a job from a queue

enq -U -P(queue)
enable (queue)

Enable a queue

enq -D -P(queue)
disable (queue)

Disable a queue

Status of jobs in a named queue

qmov -m(new queue) -#(job No) Move a job to another queue


startsrc -s qdaemon
lssrc -s qdaemon
stopsrc -s qdaemon

Start qdaemon sub-system


List status of qdaemon sub-system
Stop qdaemon sub-system

stopsrc -s sendmail
startsrc -s sendmail -a'-bd -q30m'
lssrc -s sendmail
refresh -s sendmail
printers
/usr/lib/lpd/pio/etc/piolsvp p

/usr/bin/lsallq
enq -a
-------------------------------------------------------------------------------FILE SYSTEMS
-------------------------------------------------------------------------------Physical Volumes (PV's)
----------------------lspv
lspv (pv)
lspv -l (pv)
lspv -p (pv)

Lists
Lists
Lists
Lists

chdev -l (pv) -a pv=yes

Makes a new hdisk a pysical volume.

chpv
chpv
chpv
chpv

Removes a disk from the system.


Adds the removed disk back into the system.
Changes pv allocatable state to YES
Changes pv allocatable state to NO

-v
-v
-a
-a

r
a
y
n

(pv)
(pv)
(pv)
(pv)

migratepv (old pv) (new pv)

all
the
the
the

physical volumes (hard disks)


physical volume details
logical volumes on the physical volume
physical partition usage for that PV

Moves all LV's from one PV to another PV, both


PV's must be in the same volume group.

List the WWN/LUN to the frame:


lscfg -vl hdiskX
The last field (dashed) gives the lun number
Volume Groups (VG's)
-------------------lsvg
lsvg
lsvg
lsvg
lsvg

(vg)
-l (vg)
-p (vg)
-o

Lists
Lists
Lists
Lists
Lists

varyonvg (vg)
varyonvg -f (vg)
varyonvg -s (vg)

all
the
all
all
all

volume groups
volume group details
logical volumes in the volume group
physical volumes in the volume group
varied on volume groups

varyoffvg (vg)

Vary On a volume group


Forces the varyon process
Vary on a VG in maintenance mode. LV commands can be
used on VG, but LV,s cannot be opened for I/O.
Vary Off a volume group

synclvodm (vg)

Tries to resync VGDA, LV control blocks and ODM.

mkvg [-B] -y(vg) -s(PP size) (pv)


Create a volume group
mkvg -B -y datavg -s 128 hdiskpower0
reducevg -d (vg) (pv)
then VG is deleted
reducevg (vg) (PVID)

Removes a PV from a VG (removes LV on PV) - IF LAST PV,

reducevg vg pv

Remove the "mirror disk"

Removes the PVID disk reference from the VGDA when a


disk has vanished without the reducevg (vg) (pv)
command being run first.

extendvg (vg) (new pv)

Adds another PV into a VG.

lquerypr -ph /dev/vpath3

To clear the scsi reservation if disk was from ano

ther system
exportvg (vg)

Exports the volume group.

Note : Cannot export a VG if it has active paging space, so, turn off paging,
and reboot before exporting VG.
Exporting removes entries from filesystems file but does not remove
the mount points.
chvg -a y (vg)

Auto Vary On a volume group at system start.

lqueryvg -Atp (pv)


Details volume group info for the hard disk.
lqueryvg -Atp hdisk0
lquerypv -h /dev/hdisk0
Lists the first 128 bytes of hard platter, can b
e used to "unlock" a disk in a different vg
lsvg -o

List VGs active on system

importvg -y (vg name) (pv)


Import a volume group from a disk.
importvg -y NEWNAME (pv)
Import a volume group from a disk with a new nam
e.
importvg -y datavg hdiskpower0
importvg (pv)

Same as above but VG will be called vg00 etc.

importvg -c -V XXX -y myvg


r of XXX

Import a concurrent clusterd VG w/ a Major numbe

chvg -Q (y/n) (vg name)

Turns on/off Quorum checking on a vg.

Logical Volumes (LV's)


---------------------lslv (lv)
lslv -l (lv)
mklv
mklv
mklv
mklv

(-y lv) (vg) (No of


(-y lv) (vg) (size)
-y mylv
-t jfs2
-y fnswlv -t jfs2

Lists the logical volume details


Lists the physical volume which the LV is on
PP's) (pv Name optional)
[pv name(s)]
rootvg 30M
fnvg 64

mklv -y inhstylv -t jfs2 -c 2 phistvg 2160


rored) in a specific VG and 2160 PP
mklv -y d06lv -t jfs2 -S 128K -u 4 oravg 268

Create a logical volume


Create a logical volume

Create LV w/ JFS2, two copies (mir


Striped: 4disks, 128K width

mklv -y (lv) (vg) (PP's) (pv name optional)


Creates a named logical vol
ume
mklv -y (lv) -t jfslog (vg) (No of PP's) (pv Name optional) Creates a JFSlog log
ical volume.
chlv -n (new lv) (old lv)
Rename a logical volume
########
# chfs will automatically extend the LV as needed
########
extendlv (lv) (extra No of PP's)
Increase the size of an LV

extendlv lv05 10
# change the max num of PP a vol can have
chlv -x 1024 lv05
########
# chfs will automatically extend the LV as needed
########
chfs -a size=+200M /MTPT
Extend FS by 200 MB
chfs -a size=1000M /MTPT
Extend FS to be 1000MB
########
rmlv (lv)

Remove a logical volume

mklv/extendlv -a = PP alocation policy


-am = middle -ac = center -ae = edge
-aie = inner edge
-aim = inner middle
migratepv -l (lv) (old pv) (new pv)
Move a logical volume between physical volumes. Both physical volumes must be in
the same volume group !
logform (/dev/lv)

Initialises an LV for use as an JFSlog

getlvcb -AT (lv)


getlvcb -AP (lv)

Displays Logical Volume Control Block information


Displays Logical Volume Control Block information

File Systems (FS's)


------------------lsfs
lsfs -q (fs)
mount
mount (fs or lv)
mount -a
mount all

Lists all filesystems


Lists the file system details
Lists all the mounted filesystems
Mounts a named filesystem
Mounts all filesystems

mount -r -v cdrfs /dev/cd0 /cdrom

mounts cd0 drive over /cdrom

crfs -v jfs2 [-d(lv) | -m(mount point)] -A yes


Will create a file system on the whole of the logical volume, adds entry into
/etc/filesystems and will create mount point directory if it does not exist.
crfs -v jfs2 [-d(lv) | -g(vg)] -m(mount point) -a size=(size of fs) -A yes
Will create a logical volume on the volume group and create the file system on
the logical volume. All at the size stated. Will add entry into
/etc/filesystems and will create the mount point directory if it does not exist.
/usr/sbin/crfs -v jfs2 -d d03lv -m /d03 -A y -p rw -t no -a agblksize=4096
chfs -A yes (fs)
stems

Change file system to Auto mount in /etc/filesy

chfs -a size=(new fs size)(fs)


lv

Change file system size - will auto extend the

chfs -a size=400M /tmp

rmfs (fs)

Removes the file system and will also remove the


LV if there are no onther file systems on it.

defrag -q (fs)
defragfs -r (fs)
defragfs (fs)

Reports the fragment status of the file system.


Runs in report only defrag mode (no action).
Defragments a file system.

fsck (fs)
Verify a file system, the file system must be unmounted!
fsck (-y or -n) (fs) Pre-answer questions either yes or no !
fsck -p (fs)
Will restore primary superblock from backup copy if the
superblock is corrupt.
fsck -Dv (fs)
Verbose and Debug
Mirroring
--------mklv -y (lv) -c(copies 2 or 3) (vg) (No of PP's) (PV Name optional)
Creates a mirrored named logical volume.
mklvcopy -s n (lv) (copies 2 or 3) (pv)
Creates a copy of a logical volume onto another physical volume. The physical
volume MUST be in the same volume group as the orginal logical volume !
rmlvcopy (lv) (copies 1 or 2)
rmlvcopy (lv) (copies 1 or 2) (pv)

Removes logical volume copies.


From this pv only!

syncvg -p (pv)
syncvg -l (lv)
syncvg -v (vg)

Synchronize logical partion copies

mirrorvg (vg) (pv)


Mirrors the all the logical volumes in a volume group onto a new physical
volume. New physical volume must already be part of the volume group.
-------------------------------------------------------------------------------BOOT LOGICAL VOLUME (BLV)
-------------------------------------------------------------------------------bootlist -m (normal or service) -o
bootlist -m (normal or service) (list of devices)

displays bootlist
change bootlist

bootinfo -b
bootinfo -t

Identifies the current booted OS disk


Specifies type of boot

bootinfo -B hdiskX

Is the disk bootable or not? 0-false, 1-true

bosboot -a -d (/dev/pv)

Creates a complete boot image on a physical volume.

bootlist -m normal -o
Shows boot list
bootlist -m normal hdisk0 hdisk1
Sets the boot list
mkboot -c -d (/dev/pv)

Zero's out the boot records on the physical volume.

savebase -d (/dev/pv)

Saves customised ODM info onto the boot device.

-------------------------------------------------------------------------------SYSTEM DUMP
--------------------------------------------------------------------------------

sysdumpdev -l
sysdumpdev -e
sysdumpdev -L

Lists current dump destination.


Estimates dumpsize of the current system in bytes.
Displays information about the previous dump.

sysdumpstart -p
sysdumpstart -s

Starts a dump and writes to the primary dump device.


Starts a dump and writes to the secondary dump device.

(MCA machine can also dump if key is in service position and the reset
button is pressed)
sysdumpdev -p (dump device) -P

Sets the default dump device, permanently

mklv -y'hd7' -a'ie' -t sysdump rootvg 11 hdisk0


mklv -y'hd7s' -a'ie' -t sysdump rootvg 11 hdisk1
sysdumpdev -P -p /dev/hd7
sysdumpdev -P -s /dev/hd7s
#chlv -t'sysdump' hd7
#chlv -t'sysdump' hd7s
Analyse dump file :echo "stat\n status\n t -m" | crash /var/adm/ras/vmcore.0
-------------------------------------------------------------------------------PAGING SPACE (PS's)
-------------------------------------------------------------------------------lsps -a
lsps -s
lsps (ps)

Lists out all paging space


Displays total paging and total useage

mkps -s(No of 4M blocks) -n -a (vg)


#add paging space, use swapon too
mkps -s(No of 4M blocks) -n -a (vg) (pv)
-n = activate/swapon now
-a = activate/swapon at reboot
mkps -s96 -n -a phistvg
swapon /dev/paging00
rmps paging00
chps -a y paging00
chps -a n (ps)
chps -s(No of 4M blocks) (ps)

Turns off paging space.


Increases paging space.

chlv -n (new name) (old name)

Change paging space name

rmps (ps)

Remove paging space. PS must have been turned off


and then the system rebooted before it can be removed.

Note : Need to change the swapon entry in /sbin/rc.boot script if you are
changing the default paging space from /dev/hd6. You also need to
do a "bosboot -a -d /dev/hdiskx" before the reboot.
/etc/swapspaces

File that lists all paging space devices that are


activated/swapon during reboot.

-------------------------------------------------------------------------------SCHEDULING
-------------------------------------------------------------------------------crontab -l

List out crontab entrys

crontab
crontab
crontab
crontab
crontab

-e
-l > (filename)
(filename)
-r
-v

Edit crontab entrys


Output crontab entrys to a file
Enter a crontab from a file
Removes all crontab entrys
Displays crontab submission time.

/var/adm/cron/cron.allow
/var/adm/cron/cron.deny
/var/adm/cron/crontab

File containing users allowed crontab use.


File containing users denied crontab use.
Directory containing users crontab entries.

at (now + 2 minutes, 13:05, etc) {return}


Command or schell script {return}
{CTRL D}

Schedule a job using at

at -l
atq

Lists out jobs scheduled to run via at command

at -r (at job No)


atrm (at job No)

Removes an at job scheduled to run.

/var/adm/cron/at.allow
/var/adm/cron/at.deny
/var/adm/cron/atjobs

File containing users allowed at use.


File containing users denied at use.
Directory containing users at entries.

-------------------------------------------------------------------------------SECURITY
-------------------------------------------------------------------------------aixpert

Like Solaris JASS, allows security settings based on rule set

groups
setgroups

Lists out the groups that the user is a member of


Shows user and process groups

chmod abcd (filename)


Where a
b
c
d

is
is
is
is

-rwxrwxrwx
|||
|
Owner

(4
(4
(4
(4

SUID)
read)
read)
read)

Changes files/directory permissions


+
+
+
+

(2
(2
(2
(2

-rwxrwxrwx
|||
|
Group

-rwSrwxrwx = SUID

SGID)
write)
write)
write)

+
+
+
+

(1
(1
(1
(1

SVTX)
execute) permissions for owner
execute) permissions for group
execute) permissions for others

-rwxrwxrwx
|||
|
Others

-rwxrwSrwx = SGID

chown (new owner) (filename)


chgrp (new group) (filename)

drwxrwxrwt = SVTX

Changes file/directory owners


Changes file/directory groups

chown (new owner).(new group) (filename)


umask
umask abc

Do both !!!

Displays umask settings


Changes users umask settings

where ( 7 - a = new file read permissions)


( 7 - b = new file write permissions)

( 7 - c = new file execute permissions)


eg umask 022 = new file permissions of 755 = read write and execute for owner
read ----- and execute for group
read ----- and execute for other
mrgpwd > file.txt

Creates a standard password file in file.txt

passwd

Change current user password

pwdadm (username)

Change a users password

pwdck -t ALL
pwdck -p ALL

Verifies the correctness of local auth


FIXES issues

usrck -t ALL
grpck -t ALL
chsec -f /etc/security/lastlog -a unsuccessful_login_count=0 -s oracle #reset f
ailed logins
chuser account_locked=false oracle #unlock account
chuser (attributes) (user)
Change a user
chuser login=false (user)
Lock a user account
lsgroup
mkgroup
chgroup
rmgroup

ALL
(new group)
(attribute) (group)
(group)

Lists all groups on the system


Creates a group
Change a group attribute
Removes a group

-------------------------------------------------------------------------------USERS
-------------------------------------------------------------------------------passwd -f
passwd -s

Change current users gecos (user description)


Change current users shell

chfn (username)
chsh (username) (shell)

Changes users gecos


Changes users shell

env
printenv

Displays values of environment variables

id
id (user)

Displays current user's uid and gid details


Displays user uid and gid details

whoami
who am i

Displays current user details


(or who -m)

who
w
who -b

Displays details of all users currently logged in.

uptime

Displays number of users logged in, time since last


reboot, and the machine load averages.

Displays system reboot time

lslicense
chlicense -u (number)
lsuser ALL

Displays number of current user licensese


Changes the number of user licenses
Lists all users details

lsuser (username)
Lists details for user
lsuser -a(attribute) (username or ALL) Lists user attributes
lsuser -a home ALL
mkuser -a(attributes) (newuser)

Add a new user

chuser (attributes) (user)


chuser login=false (user)
chuser account_locked=false oracle

Change a user
Lock a user account
Unlock account

rmuser -p (user)

Removes a user and all entries in security files

usrck -t ALL

Checks all the user entires are okay.

fuser -u (logical volume)

Displays processes using the files in that LV

lsattr -D -l sys0 -a maxuproc


chdev -l sys0 -a maxuproc=(number)

Displays max number of processes per user


Changes max number of processes per user

-------------------------------------------------------------------------------REMOTE USERS
-------------------------------------------------------------------------------ruser -a -f (user)
ruser -a -p (host)
ruser -a -r (host)

Adds entry into /etc/ftpusers file


Adds entry into /etc/host.lpd file
Adds entry into /etc/hosts.equiv file

ruser -d -f (user)
ruser -d -p (host)
ruser -d -r (host)

Deletes entry in /etc/ftpusers file


Deletes entry in /etc/host.lpd file
Deletes entry in /etc/hosts.equiv file

ruser -s -F
ruser -s -P
ruser -s -R

Shows all entries in /etc/ftpusers file


Shows all entries in /etc/host.lpd file
Shows all entries in /etc/hosts.equiv file

ruser -X -F
ruser -X -P
ruser -X -R

Deletes all entries in /etc/ftpusers file


Deletes all entries in /etc/host.lpd file
Deletes all entries in /etc/hosts.equiv file

-------------------------------------------------------------------------------INITTAB
-------------------------------------------------------------------------------telinit S
telinit 2
telinit q

Switches to single user mode.


Switches to multi user mode.
Re-examines /etc/inittab

lsitab -a
lsitab (ident eg tty1)

Lists all entries in inittab


Lists the tty1 entry in inittab

mkitab ("details")
chitab ("details")

Creates a new inittab entry


Ammends an existing inittab entry

rmitab (ident eg tty1)

Removes an inittab entry.

lsitab tty1
chitab "tty1:2:respawn:/usr/bin/getty /dev/tty1"
-------------------------------------------------------------------------------ODM

-------------------------------------------------------------------------------odmget CuDv |more

Gets all entries from pre-defined database.

odmget -q "name=lp1" CuDv |more

Gets lp1 info from pre-defined database.

odmget -q "name-lp1" CuAt |more

Gets lp1 info from customised database.

odmdelete -o CuAt -q "name=lp1"

Deletes lp1 info from customised db.

odmget -q "name=lp1" CuAt > lp1.CuAt


odmadd < lp1.CuAt

Export ODM info to text file.


Import ODM info from text file.

-------------------------------------------------------------------------------ERROR LOGGING
-------------------------------------------------------------------------------/usr/lib/errdemon -l
/usr/lib/errdemon
/usr/lib/errstop

Displays errorlog attributes.


Starts error logging.
Stops error logging.

errpt
errpt -a
errpt -j (identifier)

Displays summary errorlog report.


Displays detailed errorlog report.
Displays singe errorlog report.

Note : errorlog classes are H=Hardware S=Software O=Information V=Undetermined


errclear (days)
errclear -d (class) (days)

Deletes all error classes in the errorlog.


Deletes all error class entries in errlog.

Note : The errclear command will delete all entries older than the numbers of
days specified in the days paramenter. To delete ALL entries used 0.
errlogger "message up to 230 chrs"
Enters an operator notifaction message into the errorlog.
-------------------------------------------------------------------------------PERFORMANCE MONITORING
-------------------------------------------------------------------------------topas (jtopas)
topas -P
vmstat
svmon
svmon -C command
svmon -P PID
nmon
-> m
vmo
vmo -a
vmo -h minfree
vmo -L minfree
vmo -r -o memory_affinity=0

Overall system stats w/ top


List only processes (just like top)
Will report LPAR stats on an LPAR
Virtual memory stats

Tune VM

lsattr -El sys0


List kernel values (like prtconf and sysdef)
/usr/sbin/tunsave -a -F '/tmp/mykernelsettings'
lsattr -El mem0
Memory size
entstat -r en2
Ethernet stats
Change mbufs
chdev -l sys0 -a maxmbuf=1000000

#1GB of Mbufs (each page is 1K)

procmon
GUI for processes
/usr/sbin/lparstat
LPAR stats, in bos.acct
/usr/bin/lparstat -i
/usr/bin/lparstat -H 100 600
perfpmr
ftp://ftp.software.ibm.com/aix/tools/perftools/perfpmr
perfpmr.sh 600
/usr/sbin/perf/diag_tool/pdt_config (set for 3)
/usr/sbin/perf/diag_tool/Driver_ daily
/usr/sbin/perf/diag_tool/pdt_report 3
trace
trcrpt
curt
splat

Trace object
Trace report
Trace file parser
Lock tracer (lockstat)

vmstat (drive) (interval) (count)


vmstat hdisk0 5 20
vmstat -s
vmstat -f
vmstat -i

Reports virtual memory statistics.

Diplays number of paging events since system start.


Diplays number of forks since system start.
Diplays number of interupts by device since system start.

iostat (drive) (interval) (count)


iostat hdisk0 5 20

Reports i/o and cpu statistics.

iostat -d (drive) (interval) (count)


iostat -t (interval) (count)
iostat -m

Limits report to drive statistics.


Limits report to tty statistics.
Lists I/O per multipath device

sar -u -P ALL 10 10

Displays %usr %sys %wio %idle for all processors

-------------------------------------------------------------------------------DOS DISKETTES
-------------------------------------------------------------------------------dosdir
dosdir (directory)

Reads directory listing of a diskette


Reads directory listing of a named directory

dosread -D/dev/fd0 C41.TXT c41.txt

Gets C41.TXT from diskette drive fd0

dosread -D/dev/fd0 DIRECTORY/C41.TXT c41.txt


(-D option can be dropped if using fd0)
doswrite -D/dev/fd0 (unixfile) (dosfile)

Writes a file to diskette

dosdel (dosfile)

Deletes a dos file on diskette

dosformat

Formats the diskette

-------------------------------------------------------------------------------SENDMAIL
-------------------------------------------------------------------------------sendmail -bi
newaliases

Creates new alias db from /etc/aliase file.

sendmail -bp
mailq

Displays the contents of the mail queue

sendmail -q

Processe the sendmail queue NOW

sendmail -bt -d0.4 < /dev/null


Prints out sendmail version, compile defines and system information
refresh -s sendmail
kill -l (sendmail PID)

Restart sendmail

-------------------------------------------------------------------------------SP / PSSP
-------------------------------------------------------------------------------dsh (command)

Runs the command on all the nodes

Efence
Efence (node number)

Diplays which node are currently fenced


Fences the node

Eunfence (node number)

Unfences the node

Estart

Starts the switch

spmon -q
spmon -d -G
spmon -L frame1/node3

Starts SP monitor in gui


Diag info, lists LED and switch info for all nodes
Displays LED for node 3 in frame 1

spmon -p off frame1/node3


spmon -p on frame1/node3

Powers off the node


Powers on the node

spled

Diplays all the nodes LED's in a updating gui

s1term -w (frame number) (node number) Opens serial terminal (read and write)
s1term (frame number) (node number)
Opens serial terminal (read only)
Example :s1term 1 1

Opens a serial terminal to console port on frame 1 node 1


which is read only. When rebooting a node use read only.

splstdata -e
-d
-n
-h
-s
-b
-a
-i

Lists site environment database information


Displays df command from each node
Lists node configuration
Diplays lscfg command from each node
Lists switch node information
Lists boot/installation information
Lists LAN database information
Displays netstat -in command from each node

================================================================================
#
#
# you can do, instead of this whole script:
#
#
mirrorvg rootvg $NEW_DISK
#
# in either case, if the NEW_DISK has no PVID
#
#
lspv #see if it has a hex dev id
#
# otherwise do a

#
#
chdev -l NEW_DISK -a pv=yes
#
# then add to rootdg
#
#
extendvg -f rootvg NEW_DISK
#
#
ORIG_DISK=hdisk0
NEW_DISK=hdisk1
# mirror to new disk
mklvcopy
mklvcopy
mklvcopy
mklvcopy
mklvcopy
mklvcopy
mklvcopy
mklvcopy
mklvcopy
mklvcopy
mklvcopy

hd5 2 $NEW_DISK
hd6 2 $NEW_DISK
hd8 2 $NEW_DISK
hd4 2 $NEW_DISK
hd2 2 $NEW_DISK
hd9var 2 $NEW_DISK
hd3 2 $NEW_DISK
hd1 2 $NEW_DISK
hd10opt 2 $NEW_DISK
locallv 2 $NEW_DISK
hd7 2 $NEW_DISK

syncvg -v rootvg
bosboot -ad $NEW_DISK
bosboot -ad $ORIG_DISK
bootlist -m normal $ORIG_DISK $NEW_DISK
================================================================================
#Using cplv to move a logical volume from one volume group to another
#For this example, we will move logical volume /dev/infprdlv (filesystem
/infoprod) to volume group newvg
#If needed, use smit to create the new volume group using the new disk
#If this is a new volume group, create jfslog
#get log list: lsvg -o | lsvg -l -i | grep log
mklv -t jfslog -y loglv02 -a'c' newvg 1 hdiskpower0
/usr/sbin/logform /dev/loglv02
# don't move logs (make new one - above)
# don't move paging (make new paging)
LOOP FOR EACH LV
umount /infoprod
# XX comes from PP field in "lsvg -l oldvg"
mklv -t copy -y'tinfprdlv' newvg XX hdiskpowerX
cplv -e tinfprdlv -f infprdlv
chlv -n oinfprdlv infprdlv
chlv -n infprdlv tinfprdlv
chfs -a dev=/dev/infprdlv /infoprod
chfs -a log=/dev/loglv02 /infoprod
mount /infoprod
lsvg -l newvg |grep infoprod
================================================================================

lsdev -Cc disk


BCV
hdisk10
hdisk11
hdiskpower0
hdiskpower1

Available
Available
Available
Available

10-68-02
10-68-02
10-68-02
10-68-02

SRDF
hdisk21
hdisk22
hdiskpower0
hdiskpower1
hdiskpower2

Available
Available
Available
Available
Available

10-70-01
10-70-01
10-70-01
10-70-01
10-70-01

EMC Symmetrix FCP Disk TimeFinder


EMC Symmetrix FCP Disk TimeFinder
PowerPath Device
PowerPath Device

EMC Symmetrix FCP RDF1 RaidS


EMC Symmetrix FCP RDF1 RaidS
PowerPath Device
PowerPath Device
PowerPath Device

================================================================================
0516-1281 synclvodm: WARNING, lv control block of fn_trans_rl1
has been over written.
0516-622 synclvodm: Warning, cannot write lv control block data.
If you are using raw - this is OK as the LVs have their LVCB (logical volume con
trol block) in the first 512 bytes of the LV.
If not raw, then run "synclvodm".
If raw, *** DO NOT *** run "synclvodm".
================================================================================
Customer attempts to remove hdisk power devices and gets the following error mes
sage:
rmdev -dl hdiskpower0
#Method error (/etc/methods/ucfgpowerdisk):
lsdev -Cc disk | more
#all hdiskpower devices still here
powermt remove dev=hdiskpower0
#error ucfgpowerdisk
powermt remove dev=all
#prompt comes back right away
rmdev -dl fcs0 -R
rmdev -dl fcs1 -R
#error
rmdev -dl fsc2 -R
lsdev -Cc disk
#everything gone except powerpath disks
At this point, it appears that we will need to remove the disks from the ODM
for DISK in $(lsdev -Cc disk -Fname | grep power )
do
odmdelete -q name=${DISK} -o CuAt
odmdelete -q value=${DISK} -o CuAt
odmdelete -q name=${DISK} -o CuDv
odmdelete -q value3=${DISK} -o CuDvDr
odmdelete -q name=${DISK} -o CuDep

odmdelete -q name=${DISK} -o CuVPD


rm /dev/*${DISK}
done
lsdev -CtSYMM* -Fname | xargs -n1 rmdev -dl
odmdelete -q name=powerpath0 -o CuDv
odmdelete -q name=powerpath0 -o CuAt
rm /dev/powerpath0
savebase -v
We then need to remove these entries in the /dev directory.
We can then run a
rmdev -dl hdiskpower0
and we did so but the disk is already gone which is good.
We ran the
lsdev -Cc disk
and no hdiskpower0.
The customer will do this for all of her other 30 disks and then remove powerpat
h
installp -u EMCpower
then re-install powerpath.
installp -qa -d /usr/sys/inst.images/PP44 EMCpower
================================================================================
ODM Database becomes corrupt
#Shutdown the application(s), unmount the file system(s), and varyoff all volume
groups except for rootvg
#Do not export the volume groups
varyoffvg <vg_name>
#Check with.....
lsvg -o #(confirm that only rootvg is varied on)
#IfNo PowerPath, Skip all steps with empower names
# Delete all hdiskpower devices:
lsdev -Cc disk -Fname | grep power | xargs -n1 rmdev -dl
# Remove the PowerPath driver instance
rmdev -dl powerpath0
# Delete all hdisk devices
lsdev -CtSYMM* -Fname | xargs -n1 rmdev -dl
# Confirm with lsdev -Cc disk that there are no EMC hdisks or hdiskpowers
# Remove all Fiber adapter instances
rmdev -Rdl fcsx #---> x being all instances of the cards i.e. 0,1,2, etc.
# Verify through lsdev -Cc adapter that there are no more fiber adapter instance
s (fcs)
# Rebuild the adapter instances
cfgmgr
# Create the hdisk entries for all EMC devices
emc_cfgmgr #or cfgmgr -vl fcsx ---> x being each adapter instance which was rebu
ilt
#Skip this part if no PowerPath.
# Configure all EMC devices into PowerPath

powermt config
# Check the system to see if it now displays correctly
powermt display
powermt display dev=all
lsdev -Cc disk
================================================================================
for DISK in $( lsdev -Cc disk -Fname | grep power)
do
echo $DISK
chdev -l $DISK -a pv=yes
done
================================================================================
MODEMS
either ttys
tty0, tty1,...
or port X in Devices -> Asynchronous Adapters
sa0,sa1,...
Create ttys on ports 0 to 7 on adapter sa3 :
lsdev -Cc adapter | grep sa
#get list of SA adapters
lsdev -Cc tty
#get list of all tty devices
lsattr -D -l tty4
#DEFAULT values
lsattr -E -l tty4
#EFFECTIVE values
lsattr -E -O -l tty4 #OUTPUT colon delimited EFFECTIVE values
for i in 0 1 2 3 4 5 6 7
do
mkdev -c tty -t tty -s rs232 -p sa3 -w ${i} -a speed=38400 \
-a term=vt100 -a login=enable
done
pdisable tty1
chdev -l tty1 -a speed=38400
/usr/lbin/tty/mon-cxma #test modem
/etc/inittab
tty3:2:respawn:/usr/sbin/getty
tty4:2:respawn:/usr/sbin/getty
tty5:2:respawn:/usr/sbin/getty
tty6:2:respawn:/usr/sbin/getty

/dev/tty3
/dev/tty4
/dev/tty5
/dev/tty6

ps -ef | grep getty


ps auxww | grep getty
stty-cxma /dev/tty3
#test dialout
vi /usr/lib/uucp/Devices
add line
Direct tty3 - Any direct
pdisable tty3
cu -ml tty3
atv1e1q0

#setup for terminal output

at1234567890 #dial number


ath #hangup
atz #reset
To program modems
vi /etc/uucp/Devices #added the following
#
#
#
#

If you don't want to specify BAUD


bcause you don't know the speed,
the put "Any" in place of 38400
See the comments in the file.
Direct
Direct
Direct
Direct

pdisable
pdisable
pdisable
pdisable

tty3
tty4
tty5
tty6

38400
38400
38400
38400

direct
direct
direct
direct

tty3
tty4
tty5
tty6

Repeated the following sequence of commands for each tty:


cu -ml tty3 (you should see Connected)
atv1e1q0
#setup for terminal output
at <enter>
ate1 <enter> (Turn echo on)
ati4 <enter> (displays current settings)
atq2 <enter> (Verbose/Quiet on answer)
#at&f2 <enter> (Software flow control)
#at&h2 <enter> (Xon/Xoff)
ats0=1 <enter> (Auto Answer on)
ate0 <enter> (Turn echo off)
at&w <enter> (Store configuration)
~. <enter> (exit modem connection)
After all the modems have been programmed, enable tty
penable tty3
penable tty4
penable tty5
penable tty6
vi /etc/uucp/Devices
Comment out or remove
# Direct tty3 - 38400
# Direct tty4 - 38400
# Direct tty5 - 38400
# Direct tty6 - 38400

the entries you added.


direct
direct
direct
direct

================================================================================
rpm -ihv --ignoreos pci.df1080f9-1-91x4.aix.rpm
rpm -ihv --ignoreos lsls.rpm
rpm -q lsls.rpm
================================================================================
Part1 - Part2 - Part3 - Part4 - Part5 - MultiPage
comp.unix.aix Frequently Asked Questions (Part 1 of 5)

There are reader questions on this topic!


Help others by sharing your knowledge
From: bofh@mail.teleweb.pt
Newsgroups: comp.unix.aix
Subject: comp.unix.aix Frequently Asked Questions (Part 1 of 5)
Date: 2 Nov 2000 15:25:22 +0100
Message-ID: <aix-faq-1-973175121@mail.teleweb.pt>
Reply-To: bofh@mail.teleweb.pt (Jose Pina Coelho)
Summary: This posting contains AIX Frequently Asked Questions
and their answers. AIX is IBM's version of Unix.
Keywords: AIX RS/6000 questions answers
Posted-By: auto-faq 3.3 (Perl 5.005)
Archive-name: aix-faq/part1
Revision: 1.28 2000/10/10 21:01:28
Posting-Frequency: monthly
Frequently Asked Questions about AIX and the IBM RS/6000
__________________________________________________________________
This posting contains frequently asked questions and answers about the
IBM RS/6000 series workstations and AIX versions 3 and 4. All input is
very welcome, I can be reached at <mailto:bofh@mail.teleweb.pt>.
The list is split into five articles to pass thru most mailers. I'll
usually try to post them once a month to comp.unix.aix, news.answers,
and comp.answers. Please let your input continue as I am most thankful
for all of it.
This FAQ is available from (see section 6.08 for more sites):
<http://www.emerson.emory.edu/services/aix-faq/>
<http://www.faqs.org/faqs/aix-faq/>
<ftp://rtfm.mit.edu:/pub/usenet/news.answers/aix-faq/>
<ftp://mirrors.aol.com:/pub/rtfm/usenet-by-hierarchy/comp/unix/>
The Adobe Acrobat PDF version of the FAQ is available at:
<http://www.han.de/~jum/aix/aixfaq.pdf>
Thanks to Jonathan S. Stibal for converting it to PDF.
Please make a note of the fact that these sites contain more than just
the AIX FAQ and would probably be worth consulting before you post
questions to any of the usenet groups.
If you see a From: line it means that whatever follows is either an
unabridged or slightly edited version of the input I have received, and
that I may not have verified its contents. If there is no From: line, I
probably know what I am talking about, and the entry is edited from
various sources.
All entries are numbered with major and minor subject number, e.g.
2.11. If the subject is preceded by an asterisk, that entry has been
changed or added since the last posting.
The comp.unix.aix group is for AIX on all platforms -- RT, PS/2,
370, RS/6000, Bull, Apple, Motorola, etc., and mainframes
(ESA based on OSF/1), but the traffic has

evolved to discuss predominantly AIX 3.x, 4.x, and the RS/6000. The
newsgroups comp.sys.ibm.pc.rt and comp.sys.ibm.ps2.hardware cover the
RT, mostly hardware and AOS 4.3, and on PS/2 hardware respectively.
Mark Whetzel posts FAQ lists about RTs in the rt and *.answers groups.
There are few to non-existent discussions on AIX/370 and AIX/ESA.
If you post questions to comp.unix.aix, please be sure to indicate:
- the machine type and brief configuration, e.g. Model 540, 64 MB RAM,
48 MB swap space (this is actually bad), 1.2 GB XYZ hard drive, etc.
Note: There are now five classes of RS/6000s - the original, RS or
POWER, RSC (POWER-Single Chip), RS/2 or POWER2, PowerPC and Power3.
- the exact AIX version number, i.e. AIX 3.1 is NOT sufficient, whereas
AIX 3.1.5 or AIX 3.1 with the 3005 update is. With 3.2 you should
mention any significant ptfs using the U4xxxxx numbers. With 4.r.m,
please mention version (4), release (r), modification (m) and
maintenance level, also if aplicable, any significant APAR numbers.
I am doing this on my own time. PLEASE DO NOT ASK ME QUESTIONS THAT
THAT SHOULD BE ASKED OF IBM. If you suspect you have software defect problems
call (800) 237-5511. If you have hardware problems call (800) IBM-SERV.
If you are outside the United States, contact your local IBM representative.
PLEASE DO NOT ASK ME QUESTIONS THAT SHOULD BE POSTED TO comp.unix.aix.
I don't have the time to diagnose individual AIX problems, and I
probably don't know the answer either. ;-) Many experienced and
knowlegable people read the newsgroup. Post your question there.
-----------------------------Table of contents:
1.0
1.000
1.001
1.002
1.003
1.004
1.005
1.006
1.007
1.008
1.009

General concepts
The AIX operating system - what is it?
I know neither Unix nor AIX - where do I find more information?
What is the Object Database?
How do I get rid of the verbose error messages?
Which release of AIX do I have?
What hardware do I have? What is availible? WITS?
Is IBM "dropping" AIX? AIX 3 discontinued.
Is IBM "dropping" AIX? AIX 4.1/4.2 discontinued.
e-Server pSeries (Is IBM "dropping" RS/6000 ?)
Monterey / AIX 5L

1.1
1.100
1.101
1.102
1.103
1.104
1.105
1.108
1.109
1.110
1.111
1.112
1.113
1.114
1.115

SMIT, system administration


I am used to Unix systems programming, why should I learn SMIT?
How do I turn off the "running man" in smit?
How do I import an /etc/passwd or /etc/group file from another box?
Cleaning up utmp, who, and accounting problems
How to fsck the root filesystem
How can I unmount /usr to run fsck on it?
How do I see/change parameters like number of processes per user?
How do I shrink the default paging space on hd6?
The swapper seems to use enormous amounts of paging space, why?
How much paging space do I need?
How do I mount a floppy disk as a filesystem?
How do I remove a committed lpp?
How can I recover space after installing updates?
Where are the AIX log files kept?

1.116
1.117
1.118
1.119
1.120
1.121
1.122
1.123
1.124
1.125
1.126
1.127
1.128
1.129
1.130
1.131
1.132
1.133
1.134
1.135
1.136
1.137
1.138
1.139
1.140
1.141
1.142
1.143
1.144
1.145
1.146
1.147
1.148
1.149
1.150
1.151
1.152
1.153
1.154
1.155
1.2
1.200
1.201
1.202
1.203
1.204
1.205
1.206
1.207
1.208
1.209
1.210
1.211
1.212

How can I log information about ftp accesses to a file?


How do I find a file name from the inode number?
How do I set up postscript accounting?
How do I create boot diskettes?
Where can I find tools for performance monitoring?
How can I tell what virtual printer a print queue is using?
Two srcmstr's are less useful than one?
How do I set the tty name associated with a physical port?
How do I use mksysb to clone a system?
How do I retain timestamps with mksysb?
How can I find out the machine type?
Updating to 3.2.5
AIX fix strategy
Are passwords limited to 8 char?
How do I increase the number of ptys > 64?
Where can I find patches for CERT Advisories?
How do I remove a non-existant physical volume?
How do I kill a process that ignores kill -QUIT -KILL -STOP?
How can I see "console" messages?
Where can I find TOP for AIX?
How can I restrict root logins to specific terminals?
How do I merge my /etc/password and /etc/security/password for Crack
I lost the root password, what should I do?
How can I resolve DEV_WAIT status for a local print queue?
SMIT problems forcing/overwriting install?
Which distribution tape do I have?
How can I get PTF (fixes) via ftp? What is fixdist?
Is there an easy way to determine if AIX has a PTF applied or not?
How do I recreate a deleted /dev/null?
What is a checkstop error?
How do I recover deleted files?
What questions are on the AIX Certified User/SystemAminstrator/etc.,
exam?
How can I run a command or commands automatically at system
shutdown?
How to install LPPs on a shared disk?
How can I reduce the size of /var/adm/wtmp ?
How do I start local daemons at system startup?
How do I set the TZ variable to automatically change to daylight
savings time?
Why does init not reap its zombie child processes?
I'm looking for a missing command or header file.
Which fileset do I need to install?
Why doesn't the df -k output reflect the space I added
to an LV?
Backups, tape
Some info about tape backups
How do I do remote backup?
How do I backup a multi-disk volume group?
How do I put multiple backups on a single 8mm tape?
How can I make an exact duplicate of a tape over the network?
What is tape block size of 0?
Resetting a hung tape drive...
How do I restore specific files from a mksysb tape?
How do I read a 5Gbyte tape on a 2Gbyte drive?
What can Sysback do for me?
How can I get my HP 4mm DAT to work?
How do I copy DAT tapes?
How do I speed up backups to DLT tapes?

1.3
1.300
1.301
1.302
1.303
1.304
1.305
1.306

Memory and process management


Some info about the memory management system
How much should I trust the ps memory reports?
Which simms do RS6000's use?
What is kproc?
How do I create a RAM disk in AIX?
How much RAM (real memory) does my machine have?
Why do PIDs run non-sequentially?

1.4
1.400
1.401
1.402
1.403
1.404
1.405
1.406
1.407
1.408
1.409
1.410
1.411
1.412

Shells, commands, man pages, InfoExplorer


How do I make an informative prompt in the shell?
How do I set up ksh for emacs mode command line editing?
Listing files with ls causes a core dump
How do I put my own text into InfoExplorer?
InfoExplorer ASCII key bindings
How can I add new man pages to the system?
Why can't I read man pages? Where is nroff?
Why is my environment only loaded once?
Where is the 'nawk' command on my AIX system?
How do I copy InfoExplorer (manpages and more) to my hard drive?
Why can't I set my default shell to one we've just installed?
Why do I get the "Unable to connect socket: 3" starting Info-Explorer?
Why can't I write a setuid shell script?

1.5
Video, Graphics, X11
1.500 Which release of X11 do I have?
1.501 How to prevent ctrl-alt-backspace from killing the X session
1.502 Who has a termcap/terminfo source for aixterm or the HFT console?
1.503 How can I look at PostScript files? Why is "dpsexec" so lousy?
1.504 unix:0 vs `hostname`:0
1.505 VT100 key bindings for aixterm
1.506 Is there a screen saver that does not use excessive CPU?
1.507 Where are the colors, availible for an X session, listed.
1.508 Why does my app hang the X server but not an X station?
1.509 How do I switch the control and caps lock key bindings?
1.510 Missing fonts?
1.511 What's the termcap entry for an IBM 3151 look like?
1.512 Errors starting X11 application binaries from aixpdslib.
1.513 .XShm*, .sm* (Shared memory) Link errors building Xwindows
applications.
1.514 How do I set my DISPLAY when I login to another machine?
1.515 Why doesn't Netscape work?
1.6
1.600
1.601
1.602
1.603
1.604
1.605
1.606
1.607
1.608
1.609
1.610
1.611
1.612
1.613
1.614

Networks and communications


My named dies frequently, why?
How do I trace ethernet packets on an AIX system?
What is the authorized way of starting automount at boot time?
How do I set a tty port for both dial-in and dial-out?
How to move or copy whole directory trees across a network
How can I send mail to hosts that cannot be pinged?
How to configure dialup SLIP
Where is DCE discussed?
How do I make /var/spool/mail mountable?
getty spawning too rapidly
Does AIX support Compressed SLIP (CSLIP)?
How do I setup anonymous ftp on my AIX system?
Talk, getting notification.
Disabling software flow control; using RTS/CTS.
NIS security

1.615
1.616
1.617
1.618
1.619
1.620
1.621
1.622
1.623
1.624
1.625
1.626
1.627

Why can't non-anonymous users login using WU-FTP?


NIS users can't login, do I need '*' in /etc/passwd?
HP JetDirect cards and virtual printers? mkvirprt problems?
How can I hack libc.a to alter how hostnames are resolved?
What modem settings do I need?
NIS slave server config with master on different subnet?
Why does my 64 port concentrator loose data and drop the queue?
Netscape FastTrack server won't install on AIX 3.2.5 or 4.1.
How can I share files/printers with Windows 95?
Printing from AIX to WinNT/95/3.1
How do I get NFS mounting with Linux to work?
Telnet takes a 45 seconds to produce a prompt.
Ethernet frame type - en0 vs. et0

1.7
1.700
1.701
1.702
1.703
1.704
1.705
1.706
1.707
1.708
1.709
1.710

LVM
Free LVM lecture slides
How do I shrink /usr? (formerly 1.106)
How do I make a filesystem larger than 2Gb? (formerly 1.107)
Chlv warning, is the first 4k of a LV safe? (formerly 1.139)
What's the limit on Physical Partitions Per Volume Group?
Why am I having trouble adding another disk to my VG?
What are the limits on a file, filesystem?
Hints for Segate 9 GB and other disks larger than 4 GB? (see 1.704)
How do I fix Volume Group Locked?
How do I remove a volume group with no disks?
What are the theoretical limits within the LVM?

1.8
1.800
1.801
1.802
1.803

AIX 4.X
How do I control how hostnames are resolved?
dtlogin ignores /etc/profile?
Where's the C compiler?
Why doesn't Netscape work?

1.9
1.900
1.901
1.902
1.903
1.904
1.905
1.906
1.907
1.908
1.909
1.910
1.911
1.912
1.913

Miscellaneous
SCSI-1 and SCSI-2 "interoperability" got you confused?
How to get your keyboard back after unplugging it from the 6000
How do I set up pcsim, the DOS emulator?
How do I transfer files between AIX and DOS disks?
Where is the crypt program?
How do I play audio CDs?
How can I get the mouse back after unplugging it?
Where can I get source code to the operating system binary xxxxx?
What's the difference between the POWER and POWERPC architectures?
Will there be date rollover problems in the year 2000?
How can I build an "installp format" file?
Is there a generic SCSI driver for AIX?
Viruses or virus scanning on AIX?
How do I determine the clock frequency of a RS/6000 by
software ?
1.914 How do I create a ramdisk ?
1.915 Can I run Linux on an RS/6000 ?
2.00
2.01
2.02
2.03
2.04
2.05
2.06

C/C++
I cannot make alloca work
How do I compile my BSD programs?
Isn't the linker different from what I am used to?
How do I statically link my program?
How do I make my own shared library?
Linking my program fails with strange errors. Why?

2.07
2.08
2.09
2.10
2.11
2.12
2.13
2.14
2.15
2.16
2.17
2.19
2.20
2.21
2.22
2.23
2.24
2.25
2.26
2.27
2.28
2.29
2.30
2.31
2.32

Why does it take so long to compile "hello world" with xlc?


What's with malloc()?
Why does xlc complain about 'extern char *strcpy()'
Why do I get 'Parameter list cannot contain fewer ....'
Why does xlc complain about '(sometype *)somepointer = something'
Some more common errors
Can the compiler generate assembler code?
Curses
How do I speed up linking?
What is deadbeef?
[moved to 8.10]
imake, makedepend
How can tell what shared libraries a binary is linked with?
Can I get a PTF for my C/C++ compiler from the net?
Why does "install"ing software I got from the net fail?
What is Linker TOC overflow error 12?
What is the limit on number of shared memory segments I can attach?
I deleted libc.a by accident --- how do I recover?
Where can I find dlopen, dlclose, and dlsym for AIX?
Where can I find ldd for AIX?
How do I make my program binary executable on the POWER, POWER2,
and POWERPC architecures?
How do I access more than 256 Megabytes of memory?
How do I use POSIX threads with gcc 2.7.x?
Why does pthread_create return the error code 22?
How do I build programs under a later AIX release that run
under earlier releases as well?

3.00 Fortran and other compilers


3.01 I have problems mixing Fortran and C code, why?
3.02 How do I statically bind Fortran libraries and dynamically bind
C libraries?
3.03 How do I check if a number is NaN?
3.04 Some info sources on IEEE floating point
3.05 Why does it take so long to compile "hello world" with xlf? (see 2.07).
4.00
4.01
4.02
4.03
4.04
4.05
4.06
4.07
4.08
4.09
4.10
4.11
4.12
4.13
4.14
4.15
4.16
4.17
4.18
4.19
4.20
4.21
4.22

GNU and Public Domain software


How do I find PD software?
Are there any ftp sites?
General hints
GNU Emacs
gcc/gdb
GNU Ghostscript
TeX - Document processing
Perl - Scripting language
X-Windows
Bash - /bin/ksh alternative from FSF
Elm - Mail reader
Oberon 2.2
Kermit - Communications
Gnu dbm
tcsh - an alternative shell
Kyoto Common Lisp
Tcl/Tk - X-Windows scripting
Expect
Public domain software on CD
Andrew Toolkit
sudo
Flexfax/HylaFax and other fax software

4.23
4.24
4.26
4.27
4.28
4.29
4.30
4.31
4.32
4.33
4.34

lsof - LiSt Open Files


popper - POP3 mail daemon
mpeg link errors version 2.0
NNTP, INN - news (usenet) news transport protocol, news server software
Zmodem - File transfer
Patch - automated file updates
XNTP - network time protocol, synchronizes clocks
GNU Screen 3.6.2 and AIX 4.1.x
SCSI scanner software
Pager/Paging software
Java Development Kit

5.00
5.01
5.02
5.03
5.04
5.05
5.06
5.07
5.08
5.09
5.10
5.11

Third party products


Non-IBM AIX Hosts
Disk/Tape/SCSI
Memory
Others
C++ compilers
Memory leak detectors
PPP
Graphics adapters.
Training Courses
Hardware Vendors
Debugging aides

6.00
6.01
6.02
6.03
6.04
6.05
6.06
6.07
6.08
6.09
6.10
6.11

Miscellaneous other stuff


Can I get support by e-mail?
List of useful faxes
IBM's ftp, gopher and WWW presence
Some RS232 hints
What publications are available for AIX and RS/6000?
Some acronyms
How do I get this by mailserver or ftp?
Hypertext version of the FAQ
IBM documentation on the WWW.
comp.unix.aix archive availible on the WWW
How can I access the comp.unix.aix newsgroup via email (or Web)

8.00
8.03
8.04
8.05
8.06
8.06
8.07
8.08
8.09
8.10

Program listings
How do I set up postscript accounting?
How can I find out the machine type?
Updating to 3.2.5
How do I do remote backup?
How do I do remote backup? (cont.)
How to configure dialup SLIP
Disabling software flow control; using RTS/CTS.
How can I hack libc.a to alter how hostnames are resolved?
How do I make an export list from a library archive?

9.00 Contributors

Subject: 1.000: The AIX operating system - what is it?


This is best answered by reading the text files in /usr/lpp/bos. The
README file there contains general information and the bsd file contain
useful information if you know BSD and/or System V.
The last release for the RT PC is 2.2.1. The latest release for PS/2s

and Intel architecture machines is AIX 1.3; for PS/2s only, 1.2.1. For
the RS/6000, there are five major levels, 3.1, 3.2, 4.1, 4.2, 4.3, and
various intermediate levels. IBM has dropped support for 3.1, 3.2, 4.1
and 4.2
Y2K compliancy issues have been addressed by PTF's on 3.2, and 4.*.
For those who don't have a copy of /usr/lpp/bos/README or bsd, I'll
sumarize: IBM tried to follow IEEE, POSIX 1003.1, ANSI C, FIPS and
then X/Open Issue 3. Beyond that, AIX is a combination of System V
and BSD.

Subject: 1.001: I know neither Unix nor AIX


- where do I find more information?
If you are new to Unix, you should look at the other newsgroups in the
comp.unix hierarchy, in particular comp.unix.questions. There are
FAQs more most of these groups as well.
If you need information about C programming, try comp.lang.c or
comp.std.c, the latter for Standard ANSI C issues. comp.lang.c has a
FAQ posting.

Subject: 1.002: What is the Object Database?


From: Uwe Geuder <Uwe.Geuder@informatik.uni-stuttgart.de>
AIX stores most of the system management information in /etc/objrepos,
/usr/lib/objrepos, and /usr/share/lib/objrepos. Files (also referred to
as system object classes) in these directories are adminstered by the
Object Database Manager, ODM, which is a set of library routines and
programs providing basic object oriented database facilities.
Under most circumstances, only SMIT or the commands SMIT call (see
1.100) should be used to change the contents of the system object
classes. A harmless way to look at the object database is to use odmget
<Class> where <Class> is one of the files in /etc/objrepos.
Experienced users can use the ODM editor, odme, to navigate the database
in detail. Modifying the database should only be attempted if you know
exactly what you are doing.

Subject: 1.003: How do I get rid of the verbose error messages?


From: Bjorn P. Brox <brox@corena.n>
Many of the messages from the Unix commands are available in different
languages. This is controlled by the LANG environment variable, the
default being En_US meaning English in the US. All the default messages
have a message number associated with them, e.g.:
$ cat no-such-file
cat: 0652-050 Cannot open no-such-file.
If you prefer the terser Unix-looking error message, set your
environment variable LC_MESSAGES to C, and you will get:

$ cat no-such-file
cat: Cannot open no-such-file.
By default LC_MESSAGES is the same as your environment LANG. Setting
LANG does also work, but should be avoided since it changes
app-defaults lookup etc. See locale(): LC_ALL

Subject: 1.004: Which release of AIX or other products do I have?


New with 3.2.5: The oslevel command shows OS and component levels.
Run oslevel -help to see options
The command 'lslpp -h bos.obj' will show all lines referring to the BOS,
Basic Operating System. E.g.:
Fix Id Release
Status
Action
------- --------------- --------- ---------Path: /usr/lib/objrepos
bos.obj
03.02.0000.0000 COMPLETE COMMIT
U401864 03.02.0000.0000 COMPLETE COMMIT
U401968 03.02.0000.0000 COMPLETE COMMIT
U401969 03.02.0000.0000 COMPLETE COMMIT
..........................
U418349 03.02.0000.0000 COMPLETE COMMIT
U419950 03.02.0000.0000 COMPLETE COMMIT

Date
Time
User Name
---------- -------- --------12/31/69
11/12/92
11/12/92
11/12/92

18:00:00
20:09:35
23:18:21
23:18:20

root
root
root
root

08/28/93
08/28/93

15:34:13 root
15:34:11 root

For AIX 3.2, you may come across discussions on 3.2.0, 3.2.1, 3.2.2,
3.2.3 extended, 3.2.4 and 3.2.5. There is no absolute way to tell which
of these you are running since the newer releases are simply 3.2.0 with
some sets of PTFs added. See above example listing. These selective
fixes could mean there are literally thousands of slightly different
variations of 3.2 in use. Please see section 6 to request some useful
faxes to help with this number game.
AIX 3.2.4 and later attempts to resolve this confusion. The OS is
broken down into subsystems so that updates can be applied to an entire
subsystem. lslpp also sports a new option; use 'lslpp -m bos.obj' to
show what level and update the system is running. You can also use the
new oslevel command. Unless you have a pressing need (such as
applications unsupported on > 3.2.3), it is recommended that you update
to this level. Also see 1.128.

Subject: 1.005: What hardware do I have? What is availible? WITS?


From: C.Deignan@frec.bull.fr (C.DEIGNAN)
The wits script is unfortunately no longer maintained. I just don't have
the time, and I'm not sure it is a realistic proposition anymore. There are
so
many different models that have the same model-ID that it's impossible to be
"definitive."
[Editor's note: I've deleted the source to the wits program from the
FAQ,but it is listed as being part of the aix.tools.1.3.0.0.exe archive at
Bull's freeware download site <http://www-frec.bull.com/>. Press the

"Download" button once the top page loads, then look for "The Large
AIX Freeware and Shareware Archive" link.]

Subject: 1.006: Is IBM "dropping" AIX? AIX 3 discontinued.


No. IBM sells and supports AIX 4 (4.3). However, on January 31, 1997
IBM will "withraw AIX 3.2.5 from marketing." That is, you won't be able
to purchase AIX 3.2.5 anymore. On December 31, 1997, IBM will
"discontinue Program Services" for AIX 3.2.5. Translation: they will
no longer respond to (most) defect reports for AIX 3.2.5.
The US announcement letter can be read via <http://www1.ibmlink.ibm.com/>.
Pick the US as region, look for "Announcement Letters," then search
for document number 996-245.

Subject: 1.007: Is IBM "dropping" AIX? AIX 4.1/4.2 discontinued.


No. IBM sells and supports AIX 4 (4.3). However, AIX 4.1 and 4.2
were withrawn from marketing and support.
Translation: they will no longer respond to (most) defect reports
for AIX 4.1 and 4.2.

Subject: 1.008: e-Server pSeries (Is IBM "dropping" RS/6000 ?)


Will you get real ? After 10 years of success why would IBM drop it ?
Relax ! Drink a few vodkas.
The pSeries is just the new name of some RS/6000's.
Other than that, "A Rose by any other name would smell as sweet"

Subject: 1.009: Monterey / AIX 5L


IBM has announced "AIX5L". It's essentialy AIX Version 5. The 'L' stands
for "Linux Affinity". A statement that AIX is going to support some of the
Linux API's and interfaces (for instance: the /proc filesystem)
Some changes to the filesystem limits, virtual IP's, dynamic dealocation
of swapspaces.
You can read all about it in http://www.ibm.com/servers/aix

Subject: 1.100: I am used to Unix systems programming,


why should I learn SMIT?
Using SMIT is probably very different from your normal way of doing
system administration, but could prove very useful in the long run. In
some areas, in particular TCP/IP, NFS, etc., you can also do things the
normal way, but it is unfortunately difficult to know exactly when the
normal way works. Again, always using SMIT is probably your best way
to go, even when you have to learn a new tool.

What SMIT actually does is build up commands with all required options
to perform the functions requested and execute them. The commands
called and the output they produce are stored in the files smit.script
and smit.log in your home directory. Looking in smit.script may teach
you more about system administration.

Subject: 1.101: How do I turn off the "running man" in smit?


Use smitty, the standard curses version or add this line to your .kshrc file:
alias smit="smit -C"

Subject: 1.102: How do I import an /etc/passwd or /etc/group file


from another box?
If the other box is non-AIX, copy the password and group entries for
the non-system users into AIX's /etc/passwd and /etc/group files.
Then run /bin/pwdck -t ALL. This will create the proper entries in
the shadow password file (/etc/security/users). You should also run
usrck and grpck.
To duplicate the password and group entries from another AIX box,
copy /etc/passwd, /etc/group, /etc/security/passwd, /etc/security/group,
/etc/security/user, /etc/security/limits, /etc/security/environ. The
last three are optional unless you modified them. If you modified
/etc/security/login.cfg, you should also copy that file.

Subject: 1.103: Cleaning up utmp, who, and accounting problems


The best way to fix this problem is to fix the programs which are
causing the behavior in the first place. The short answer is to call
software support and ask for the "UTMPFIX" collection of PTFs.
Virtually all of these problems should be fixed in the 3251 PMP and
the only one I've been able to prove is still broken is using ALT-F4
to close an aixterm.
This applies if you are running an X11R5 xterm on 3.2.
Add this to the top of X11R5 mit/clients/xterm/main.c:
#ifdef AIXV3
#define USE_SYSV_UTMP
#define HAS_UTMP_UT_HOST
#define WTMP_FILENAME "/var/adm/wtmp"
#endif
And your utmp problems should go away. If you want xterminal sessions
to go into the wtmp file you need to define -DWTMP in the Imakefile and
be sure the WTMP_FILENAME is set to the right place.
Section 8.02 contains a small C program that you can use until the
PTFs arrive. The program must be run as root and will periodically
clean up old entries.

Another utmp program was posted to comp.sources.unix, volume 25, issue


96 by David W. Sanderson (dws@cs.wisc.edu) that also works on AIX 3.1.

Subject: 1.104: How to fsck the root filesystem


You can run fsck either in maintenance mode or on mounted filesystems.
Try this:
1. boot from diskette (AIX 3 only --- AIX 4 boot from CD or tape)
2. select maintenance mode
3. type /etc/continue hdisk0 exit (replace hdisk0 with boot disk if
not hdisk0)
4. fsck /dev/hd4

Subject: 1.105: How can I unmount /usr to run fsck on it?


From: accapadi@mathew.austin.ibm.com (Matt Accapadi)
[ This is for 3.2. ]
In order to fsck /usr, it has to be unmounted. But /usr cannot be
unmounted because /bin is symbolically linked to /usr/bin. Also
/etc/fsck is symbolically linked to /usr/sbin/fsck.
To work around this, when you boot from the boot/maintenance diskettes
and enter maintenance mode, enter "getrootfs hdisk0 sh" instead of
"getrootfs hdisk0" where hdisk0 is the name of the boot disk. Then run
"fsck /dev/hd2".

Subject: 1.108: How do I see/change parameters like number of


processes per user?
You can use SMIT as described below or simply use lsattr/chdev.
The former will list the current setting as in:
# lsattr -E -l sys0 -a maxuproc
maxuproc 40 Maximum # of processes allowed per user True
and you can then increase the maxuproc parameter:
# chdev -l sys0 -a maxuproc=200
sys0 changed
If you just type 'lsattr -E -l sys0' you will get a list of all
parameters, some of which can be changed but not others.
If you want to use smit, do as follows:
smit
System Environments and Processes
Change / Show Operating System Parameters
- on this screen you can change by overtyping the following fields:
- Maximum number of PROCESSES allowed per user
- Maximum number of pages in block I/O BUFFER CACHE
- Maximum Kbytes of real memory allowed for MBUFS

- toggle fields exist for:


- Automatically REBOOT system after a crash (false/true)
- Continuously maintain DISK I/O history (true/false)
Info 1.30 erroneously suggests that in AIX 3.2.5 you can set different
limits for different users.

Subject: 1.109: How do I shrink the default paging space on hd6?


X-With-Changes-From: Ray Reynolds <reynolds@valisys.com>
1) create a paging space to use temporarily
mkps -s 20 -a rootvg
2) change default paging space hd6 so it is not used at next reboot
chps -a n hd6
3) For AIX 3.1, edit /etc/rc.boot4 and change swapon /dev/hd6;
for AIX 3.2 and 4.x, edit /sbin/rc.boot and change swapon /dev/hd6
swapon /dev/paging00
3a)Since the default system dump device is /dev/hd6 in 4.1.x, it has to
be changed to the temporary swap device before you remove the old
swap device.
sysdumpdev -p /dev/paging00
4) Update information in boot logical volume
bosboot -a
(3.1)
bosboot -a -d hdisk0 (3.2 & 4)
5) shutdown and reboot
6) remove current hd6 and create a new one of smaller size
rmps hd6
mklv -y hd6 -t paging rootvg <size of PS in 4 Meg blocks>
7) Re-edit /etc/rc.boot4 (3.1), /sbin/rc.boot (3.2/4) to swap to /dev/hd6
swapon /dev/hd6
7a)On AIX 4, change the dump device back to hd6:
sysdumpdev -p /dev/hd6
8) Update information in boot logical volume
bosboot -a
(3.1)
bosboot -a -d hdisk0 (3.2 & 4)
9) change current paging device (paging00) so it is inactive at next boot
chps -a n /dev/paging00
10) shutdown, reboot, remove paging00 using the command:
rmps paging00
You can check your paging space with `lsps -a`

Subject: 1.110: The swapper seems to use enormous amounts

of paging space, why?


When you run ps, you may see a line like:
USER
root

PID %CPU %MEM


SZ RSS
0 0.0% 14% 386528 8688

TT STAT TIME CMD


S 17:06 swapper

This is normal behavior, the swapper looks to ps like it has the entire
paging space plus real memory allocated.

Subject: 1.111: How much paging space do I need?


See answer 2 in question 1.300.

Subject: 1.112: How do I mount a floppy disk as a filesystem?


From: op@holmes.acc.Virginia.EDU (Olaf Pors)
You can build a filesystem on a floppy and mount it, however the
filesystem will be read only. The reason that the filesystem will be
read only is because AIX Version 3.1.5 cannot create a journal log on a
diskette. The intended use is for temporary access to read only data.
The diskette file system must be unmounted after use and during system
backup procedures or errors could occur.
To make the read only filesystem on a floppy:
1. Make a subdirectory on an existing filesystem and place all of the
files that the diskette will contain into this subdirectory.
2. Enter the following command to create a prototype file containing
information about the new filesystem, in the example /dir_struct
is the pathname of the subdirectory created in step 1, and
proto_filename is the name of the prototype file to be created.
proto /dir_struct > proto_filename
3. Place a formatted floppy into the drive.
4. Edit the prototype file and replace the first line with the following:
<noboot> 0 0
5. Enter the following command to make the filesystem on your floppy:
mkfs -p proto_filename -V jfs /dev/fd0
6. Create the directory upon which you will mount the floppy based
filesystem, or you can use /mnt. Mount the filesystem:
mount -r -V jfs /dev/fd0 /your_mount_point
7. To unmount the filesystem:
umount /dev/fd0
Since the filesystem is read-only it may be of limited use but if you

are going to use it for utility programs and other data that does not
change much, it may still be useful. If you need to change the data,
you can copy the directory from the floppy into another directory, make
your modifications, and remake the filesystem using this procedure.

Subject: 1.113: How do I remove a committed lpp?


AIX 3.2.5: you can get rid of COMMITTED lpps/ptfs by installing with the
force
option and then rejecting the package.
AIX 4 users: installp has a new option, uninstall (-u) which can be
used to remove lpps. BEWARE of pre-requisite chains.

Subject: 1.114: How can I recover space after installing updates?


From: Milt Cloud <cloud@ux1.cso.uiuc.edu>
Note: If you are a /usr server, do not use this because the files
mentioned below are needed by /usr clients and cannot be deleted.
Installp creates numerous files in /usr to clean up after
failed/rejected installs and also for de-installing uncommitted lpps.
Once you have COMMITted packages you can remove these files safely.
Depending on your installation activity the numbers can be significant:
hundreds-to-thousands of files, megabytes of data.
Files eligible for removal are associated with each "product" you have
installed; the largest collection being due to bos. After
COMMITting bos lpps, you may safely remove all files of the form:

and

/usr/lpp/bos/deinstl*
/usr/lpp/bos/inst_U4*
/usr/lpp/bosadt/deinstl*
/usr/lpp/bosadt/inst_U4*

You may repeat this for all additional COMMITted products (e.g.,
bostext1, bosnet, xlc) you have on your system.
This problem of lingering install
If you have installed PTF U411711
U413366, U413425) the deadwood in
No single PTF currently available

files is a known defect in installp.


(or any superseder of it: U412397,
/usr will not be quite as prevalent.
completely corrects this problem.

On my own 320, the following freed up 12.4M in /usr:


# rm -R /usr/lpp/bos/deinstl*
# rm -R /usr/lpp/bos/inst_U4*

Subject: 1.115: Where are the AIX log files kept?


From: dirk@kimosabi.ucsc.edu (Dirk Coldewey)
AIX logs messages as specified in /etc/syslog.conf. Here's an
example

#
*.err;kern.debug;auth.notice;user.none
/dev/console
*.err;kern.debug;daemon,auth.notice;mail.crit;user.none /var/adm/messages
lpr.debug
/var/adm/lpd-errs
*.alert;kern.err;daemon.err;user.none
*.alert;user.none
*.emerg;user.none

operator
root
*

# for loghost machines, to have authentication messages (su, login, etc.)


# logged to a file, un-comment out the following line and adjust the
# file name as appropriate.
#
# if a non-loghost machine chooses to have such messages
# sent to the loghost machine, un-comment out the following line.
#
auth.notice
/var/log/authlog
mail.debug
/var/log/syslog
# following line for compatibility with old sendmails. they will send
# messages with no facility code, which will be turned into "user" messages
# by the local syslog daemon. only the "loghost" machine needs the following
# line, to cause these old sendmail log messages to be logged in the
# mail syslog file.
#
user.alert
/var/log/syslog
#
# non-loghost machines will use the following lines to cause "user"
# log messages to be logged locally.
#
user.err
/dev/console
user.err
/var/adm/messages
user.alert
`root, operator'
user.emerg
*
*.debug

@siempoc

refresh -s syslogd
Subject: 1.116: How can I log information about ftp accesses to a file?
From: elr@trintex.uucp (Ed Ravin)
From: map@hal.maths.monash.edu.au (Michael Page)
1) In /etc/syslog.conf, add the line:
daemon.debug
/tmp/daemon.log
2) # touch /tmp/daemon.log
# refresh -s syslogd
3) Modify your inetd.conf so that ftpd is called with the "-l" flag.
You may also want the "-d" flag. This can be done with 'smit inetdconf'.
All the syslog messages from various system daemons should now appear in
the file "/tmp/daemon.log".

Subject: 1.117: How do I find a file name from the inode number?
From:

/G=Bill/S=Mansfield/O=P00S38E/OU1=notes/DD.HPNOTES=Bill_Mansfield/mcd/us#a#MCD@m
hs-mcdusa.attmail.com
(Bill Mansfield)
ncheck -i nnnn /mntpoint

Subject: 1.118: How do I set up postscript accounting?


From: taluskie@utpapa.ph.utexas.edu (Vince Taluskie)
Ephraim Vider originally wrote this program to configure postscript page
accounting. It acts as a backend wrapper which logs accounting
information in /etc/qconfig and can be ftp'd from utpapa.ph.utexas.edu
in /pub/aix/psacct.tar.Z.
Compile with:
cc pswrap.c -o pswrap -lqb
and then make this program suid root:
chown root pswrap
chmod u+s pswrap
If this step is not done, the printer will hang.
Then start up SMIT and go to :
Spooler
Manage Local Printer Subsystem
Local Printer Queue Devices
Change / Show Characteristics of a Queue Device
<Select Queue>
<Select Device>
and change "BACKEND PROGRAM pathname" to the full pathname of pswrap
since pswrap will now handle the backend interface with the queue.
A stream of info will be written to a logfile in /tmp (prob lp0.log) but
this file is mainly used for status info and raw pagecounts. If the
accounting data is going to the qconfig-specified acctfile, then use the
'pac' command to read it. I prefer to have readable ascii data files
instead, so I just comment out the '#define WANT_PAC' line and it will
only go to the ACCTFILE specfied in pswrap.c.
[pswrap.c source has been moved to section 8.03]

Subject: 1.119: How do I create boot diskettes?


In AIX 4.x you cannot, the kernel and ram drive don't fit on a diskette.
You should get "0301-174 bosboot: Invalid device /dev/fd0 specified!"
if you try.
For AIX 3.2.x you will need to have four formatted diskettes.
boot disk:
display disk:

bosboot -d /dev/fd0 -a
mkdispdskt

display extension disk: mkextdskt


Install/Maintenance disk: mkinstdskt
AIX 3.2.5 may require a fifth boot diskette if you have a FDDI adapter
in the machine. It is the "communications extension" diskette.

Subject: 1.120: Where can I find tools for performance monitoring?


Free X based performance watcher: xsysstats - <ftp://ftp.x.org/contrib/>
For 3.2 a few tools are available in /usr/lpp/bosperf. There are tools
to monitor traces, I/O events, CPU, virtual memory, disk block usage,
kernel extensions, etc. It even has a simulator, rmss, that allows one
to try out different memory size configurations to see how it impacts
performance. See 6.05 for the AIX Performance and Tuning Guide.
The Monitor program is an AIX/6000 System performance monitor program.
Monitor can be used to display system statistics of various short time
performance values. Monitor program is available for anonymous ftp from
<ftp://ftp.funet.fi/pub/unix/AIX/rs6000/monitor-2.1.1.tar.Z> -file.
New to version 2 (released as version 2.1.1)
* Allow logging of information on interval basis in ascii format.
The logfile can be specified as a strftime string and can be
compressed.
* Synchronize sample/interval time on wall clock (from 00:00).
* Sample/interval time is now accurate to around 10 milliseconds
(depending on system load).
* User counts for remote and inactive users, and average inactive
* time.
* System uptime is printed.
* Highlighted headers
* In logmode, filesystem usage is logged
* support for Symmetric multiprocessing cpuinfo (-smp option
or 's' character command).
* help page in interactive mode 'h' or '?' character commands

Subject: 1.121: How can I tell what virtual printer a print queue is using?
From: yoder@austin.ibm.com (Stuart R. Yoder)
Use the command 'lsvirprt'. Don't use any parameters and it will
run in an interactive mode that will give you a menu of all virtual
printers on the system with the queue and device for each one.

Subject: 1.122: Two srcmstr's are less useful than one?


From: hubert@rs530.ncs.mainz.ibm.com (Bernhard Zeller)
This can happen on systems that have no console, or systems with an
async terminal as the console but not attached or turned off. One of the
symptoms is a second srcmstr got run. But the second srcmstr is worthless
as we can't use the stop/startsrc commands, refresh inetd, qdaemon won't
start, etc.
To resolve this, type:

smit chgtty
and add the keyword 'clocal' in following lines:
STTY attributes for RUN TIME
STTY attributes for LOGIN

Subject: 1.123: How do I set the tty name associated with a physical port?
From: accapadi@mathew.austin.ibm.com (Matt Accapadi)
Let's say you wanted to make a tty on the s1 port and call it rs0000
and a tty on the s2 port and call it rs0001.
You could run:
mkdev -c tty -s rs232 -t tty -l rs0000 -p sa0 -w s1
and
mkdev -c tty -s rs232 -t tty -l rs0001 -p sa1 -w s2

# creates rs0000
# creates rs0001

Subject: 1.124: How do I use mksysb to clone a system?


From: joann@ariadne.SLAC.Stanford.EDU (Jo Ann Malina)
I use the following steps on the master machine to clone an AIX system:
1) Remove the password from root.
2) Remove the NIS line from the end of the /etc/group file (the last
line with the +: )
3) Change most of the level '2' designations in /etc/inittab to level
'3' to prevent them from being started up when the new system is
booted (the minimum ones to change are rc.nfs and rc.tcpip)
4) Boot in service mode and change the name and ip address to a "spare"
set to avoid address collision.
5) Clear /tmp, /usr/tmp and /usr/spool/lpd/stat.
6) Run mkszfile and edit it to be sure /usr is as small as possible;
then mksysb from the command line.
The above changes allow me to boot in normal mode the first time, get in
as root, change the above files back and do the other things necessary
to configure the new system.
Then, of course, I go back and clean up and reboot my master machine.
Note: 1 and 2 lets you log in even if you can't get on the network.
It prevents the login process from trying to reach an NIS server.
Step 2 needed only if you use NIS.

Subject: 1.125: How do I retain timestamps with mksysb?


Originally From: graeme@ccu1.aukuni.ac.nz ( Graeme Moffat)
As of AIX 3.2.5 bosrest preserves timestamps and permissions as does pax.
In AIX 3.2.2 /usr/lpp/bosinst/bosnet (for net installs), and bosrest

(tape), the 'pax' commands all have '-pmop' options. m = "DON'T


retain modification times". So, simply change all the '-pmop' to
'-pop' and remake inst/maint diskettes or mksysb tapes.

Subject: 1.126: How can I find out the machine type?


[Due to it's length this script was moved to section 8.04]

Subject: 1.127: Updating to 3.2.5


From: kraemerf@franvm3.VNET.IBM.COM (Frank Kraemer)
(Ed. The following is useful if you have to update a large number of
systems, large being > 3.)
*** WARNING : Modify the scripts if you need dataless, diskless
***
or remote /usr support.

***
***

1) Receive the PMP3250 tape from your AIX support center the PTF number
is U493250.
2) Create a filesystem with 240 MB of space (60 PP's) and mount it as
/dev/pmp3250 - /pub/pmp3250
3) Insert the tape (blocksize is 512) and install PTF U422467
# installp -BXacgq -d /dev/rmt0 bos.obj 3.2.0.0.U422467
4) Use the following script to load the tape in the new filesystem
# cd /pub/pmp3250
# mktape2disk.sh 0 447

<<-- read 447 files from rmt0

[ The mktape2disk.sh script has been moved to section 8.05 ]

Subject: 1.128: AIX fix strategy


From: leedp@austin.ibm.com (Dennis Lee, PMP Release Manager)
First, a little history...
The maintenance strategy for AIX 3.1 was cumulative updates. Every few
months, we'd put all available fixes in one large package and ship it.
There was no real strategy for providing a single fix. Although we'd
occasionally produce an emergency patch, there was no method for
tracking them; if you got a second one, it might overwrite the first.
So, after a few of these patches, it's hard to track.
In AIX 3.2 we introduced a "selective fix" strategy to support
individual fixes. The package contained information about other fixes
that were required for that fix to work correctly. For example, a Korn
shell fix might require a change in libc.a, which might in turn require
a fix in the kernel. This strategy allowed us to keep track of which
fixes were installed to make sure we didn't overwrite one with another,

and make sure they all worked together. But the initial selective fix
design still had a few problems.
o None of the fixes were cumulative. If you got a fix for Korn shell,
you may not receive all of the fixes for Korn shell. This left the
possibility of rediscovering other problems that were already fixed.
o Since we chose to fix everything possible that was reported as a
problem, instead of deferring them to the next release, the number
of available fixes became quite large.
o The number of additional fixes required by any given fix could also
be quite large. Since the installation program ran once for each
fix, the size and complexity of the fix packages grew, and
installation time lengthens greatly.
While developing the AIX 3.2.4 upgrade, we undertook a large effort to
resolve the selective fix concerns, and dramatically increase the
quality of AIX 3.2. The base operating system and most of the optional
program products were split into subsystems. A subsystem is a group of
logically related files. The division was made such that changes to a
given subsystem were less likely to affect other subsystems. In total
there are approximately 500 subsystems, but in practice, files have been
modified in only about half of them. The advantages of the new
packaging strategy are:
o Each subsystem package is cumulative, containing all of the fixes
and enhancements to date for that subsystem.
o The cumulative subsystem package is tested as an entity.
o The number of fix packages is greatly reduced because the number of
subsystems is far fewer than the number of fixes and enhancements.
o The number of other fixes required by any given fix is also greatly
reduced because a subsystem package has requisites only on other
subsystem packages.
o The reduced number of fix packages greatly reduced installation time.
Some customers also told us that they liked the maintenance level
strategy that we used in AIX 3.1. They liked being able to install all
of the known fixes, and they liked knowing what "level" of AIX they had.
To meet these requirements, we produced a Preventive Maintenance Package
(PMP). The PMP is simply a collection of the latest cumulative
subsystem packages tied together in such a way that it can be installed
by selecting a single fix. We also added flags to the lslpp command and
added a new command, oslevel, to show which PMP is installed. Now we
had both! The good attributes of selective fix along with the good
attributes of maintenance levels.
A few Q&As:
Q. Why is the fix I just received 130 megabytes!@#? I already have the
AIX 3.2.4 update installed!
A. Your fix may be part of the AIX 3.2.5 update. AIX 3.2.5 is another
PMP that contains all of the fixes to date, as well as enhancements
to support the PowerPC model 250, and the new high-end RS/2 models
590 and 990, as well as support for new disk and tape drives, graphics
adapters and more.

Q. Why can't you just build my fix on 3.2.4?


A. There really isn't such a thing as 3.2.1 or 3.2.2 or even 3.2.4.
They're just collections of fixes and enhancements built on a 3.2 base.
If the fix for your problem was built prior to 3.2.5, you can get the
older version. But if your fix was built for the first time in a 3.2.5
subsystem, that's the only version of the fix that exists.
See also 6.02.

Subject: 1.129: Are passwords limited to 8 char?


AIX passwords are only significant to 8 characters. You can set a
passwd to more than 8 characters but anything over eight are ignored.
No messages or warnings are given.
Be careful if you're running NIS. You probably want to limit passwords
to 8 char on all machines (6000 and others) to be compatible.
Someone mentioned that DCE supports kerberos which supports passwords
greater than 8 characters.

Subject: 1.130: How do I increase the number of ptys > 64?


From: mick@oahu.cern.ch (Mickey Coggins)
SMIT only allows 64. Try this:
odmget -q"attribute=num and uniquetype=pty/pty/pty" PdAt |
sed "s/0-64/0-512/" |
odmchange -q"attribute=num and uniquetype=pty/pty/pty" -o PdAt
chdev -l pty0 -anum=256 -P
reboot

Subject: 1.131: Where can I find patches for CERT advisories?


Patches (APARs in IBMspeak) for CERT advisories (system security
problems) can be found at <http://service.software.ibm.com/>. You
should have a copy of Fixdist
<ftp://service.software.ibm.com/aix/tools/fixdist/fd.tar.Z> handy to
deal with translating APAR and PTF numbers into downloadable files.
See question 1.142 for more information about fixdist.

Subject: 1.132: How do I remove a non-existant physical volume?


Thanks to Johnny Shieh (shieh@austin.ibm.com)
To delete a phantom disk from the ODM use reducevg with the pvid
instead of the disk name. You are running some command such as lsvg
or varyonvg and it is griping about a disk that is no longer findable
right? In that warning message, it should give you a pvid. Try one
of the following, (note: reducevg updates the VGDA but not the ODM).

reducevg -f <vgname> <pvid>


ldeletepv -g VGid -p PVid
-g Required, specify the VGid of the volume group you are
removing the physical volume from
-p Required, specify the PVid of the PV to be removed

Subject: 1.133 How do I kill a process that ignores


kill -QUIT -KILL -STOP
If there is i/o pending in a device driver, and the driver does not
catch the signal, you can't kill it - a reboot is the only way to
clear it.
Furthermore, if the process stays hung for more than a few minutes,
you can find out what device is wedged by doing this -% echo trace -k $(expr <pid> / 256) | crash | tee stack
If you can't figure out what is wrong, print that trace out and call
1-800-237-5511 and tell them that something is broken. Tell them you
want to fax in the nice stack trace that you have as your testcase.

Subject: 1.134: How can I see "console" messages?


From: crow@tivoli.com (David L. Crow)
Use the swcons command to redirect the console to a file. Or use
chcons to do it permanently.

Subject: 1.135: Where can I find TOP for AIX?


TOP functionality is included in an AIX package called Monitor. See
question 1.120 for more information.

Subject: 1.136: How can I restrict root logins to specific terminals?


From: jfh@austin.ibm.com (Julianne F. Haugh)
Read FAX 2737 availible from the 800-IBM-4FAX number discussed in
section 6.02. Refer to APAR IX45701 for fixes related to the rsh style
commands.

Subject: 1.137: How do I merge my /etc/password and


/etc/security/password for Crack?
/usr/sbin/mrgpwd. You must have permissions to read /etc/security/password.
-----------------------------1.138: I lost the root password, what should I do?
From: dramm@csusm.edu (Donald E. Ramm)

Boot from boot diskettes, bootable tape, or bootable CD.


At the Installation/Maint menu select item 4, "Start a limited function
maintenance shell.
At the subsequent "#" prompt enter the command:
getrootfs hdiskN
(where "N" is replaced by the number of a disk on your system
that is in rootvg.)
That will run for about a minute or so and you get a # prompt back. At this
point you are logged in as root in single user mode.
Change to /etc/security and edit the passwd file. Delete the three lines
under root: password, update time (or whatever it's called), and
flags. Save the file.
Then at the prompt, give root a new password.
Shutdown/reboot in normal mode. Log in with new password.

Subject: 1.139: How can I resolve DEV_WAIT status for a local print queue?
From: chuah@sam.po.my (Chuah Teik Chye)
Try "qadm -k && qadm -U"

Subject: 1.140: SMIT problems forcing/overwriting install?


Installp does not support overwriting and installing prerequisite
software at the same time.

Subject: 1.141: Which distribution tape do I have?


From: fuzzy@obelix.ncs.mainz.ibm.com (Thomas Braunbeck)
AIX 3.2.5 (3250-04-09)
|
|
| |
|
|
| |
|
|
| Revision level
|
|
Enhancement level
|
Preventive Maintenance Package (PMP) level
AIX Version, Release, Modification level

Subject: 1.142: How can I get PTF (fixes) via ftp? What is fixdist?
Get a copy of IBM's fixdist package. This X-windows (and curses) program
can help you find and transfer PTFs from IBM to your machine. It is
availible
from <ftp://aix.boulder.ibm.com/aix/tools/fixdist/> and further instructions
are displayed after you login. It is worth noting here that the files
fixdist retrieves are often quite large and therefore not recommended
for those with slow connections.
Ciaran Deignan <C.Deignan@frec.bull.com> says that Bull offers AIX
PTFs at <http://www-opensup.bull.com/>. The basic download facility
requires that you have the right PTF number. The "Consult" facility
allows you to search for PTFs that apply to a given fileset (bos.rte.tty, for
example). The "search" facility allows a PTF to be selected on a wide

range of criteria.
Apple has their own fixdist site with all the fixes that has been
approved on the Apple Network Servers. Apple users should NOT use
the fixes available from IBM and their mirrors, but only from:
<ftp://fixdist.support.apple.com/> (130.43.6.8).

Subject: 1.143: Is there an easy way to determine if AIX


has a PTF applied or not?
lslpp -Bl Uxxxxxxx
Where Uxxxxxxx is the PTF id.

Subject: 1.144: How do I recreate a deleted /dev/null?


From: tvweaver@austin.ibm.com (Tom Weaver)
/bin/mknod /dev/null c 2 2

Subject: 1.145: What is a checkstop error?


From: tvweaver@austin.ibm.com (Tom Weaver)
While this may not be the official definition, what it means is that the
hardware has detected a condition that it cannot resolve, and which prevents
normal operation. So, it stops executing instructions, responding to
interrupts, etc. Usually it means that some component of the hardware is
broken.

Subject: 1.146: How do I recover deleted files?


Preferably from a backup. If you don't have a backup, at least one
company, Compunix, claims to have a product that will recover deleted
files. More information is available at <http://www.compunix.com/>.
From: Bernard.Kozyra@bull.net
[Editor's note: this one appears to be for the really desperate ones,
but it might be helpful if you really need it the most.]
RECOVERING REMOVED FILES AND DIRECTORIES IN A FILESYSTEM
If a file is Deleted from the system, the filesytem blocks composing
that file still exist, but are no longer allocated. As long as no new
files are created or existing files extended within the same filesystem,
the blocks will remain untouched. It is possible to reallocate the
blocks to the previous file using the "fsdb" command (filesystem debugger).
MAKE A BACKUP OF THE ENTIRE FILESYSTEM BEFORE PERFORMING THESE STEPS!!!
ELSE ( BANG !!!!! ).

It is possible to send a mail for have some informations ...


Bernard.Kozyra@bull.net
Steps to recover a deleted file
------------------------------1) "ls -id {dir}"
(where dir is directory where file resided)
Record INODE number for next step.
2) Unmount the filesystem.
3) "fsdb /{Mountpoint}" or "fsdb /dev/{LVname}"
(where Mountpoint is the filesystem mount point, and LVname is
the logical volume name of the filesystem)
4) "{INODE}i"
(where INODE is the inode number recorded in step 1)
This will display the inode information for the directory. The
field a0 contains the block number of the directory.
The following steps assume only field a0 is used. If a value
appears in a1, etc, it may be necessary to repeat steps #5 and
#6 for each block until the file to be recovered is found.
5) "a0b"
(moves to block pointed to by field "a0" of this inode)
6) "p128c"
(prints 128 bytes of directory in character format)
Look for missing filename. If not seen, repeat this step until
filename is found. Record address where filename begins. Also
record address where PRIOR filename begins. If filename does
not appear, return to step #5, and selecting a1b, a2b, etc.
Note that the address of the first field is shown to the far left.
Increment the address by one for each position to the right,
counting in octal.
7) "a0b"
(moves to block pointed to by field "a0" of this inode)
If the filename was found in block 1, use a1b instead, etc.
8) "p128e"
(prints first 128 bytes in decimal word format)
Find the address of the file to recover (as recorded in step 6)
in the far left column. If address is not shown, repeat until found.
9) Record the address of the file which appeared immediately PRIOR to
the file you want to recover.
10) Find the ADDRESS of the record LENGTH field for the file in step
#9 assuming the following format:
{ADDRESS}: x
x
|
|
inode # --+----+

x
|
|
|
record LENGTH --+

x
x
x
x
x
x
x ...
|
|-------- filename ------|
|
+-- filename length

Note that the inode number may begin at any position on the line.
Note also that each number represents two bytes, so the address
of the LENGTH field will be `{ADDRESS} + (#hops * 2) + 1'
11) Starting with the first word of the inode number, count in OCTAL
until you reach the inode number of the file to be restored,
assuming each word is 2 bytes.
12) "0{ADDRESS}B={BYTES}"
(where ADDRESS is the address of the record LENGTH field found
in step #10, and BYTES is the number of bytes [octal] counted
in step #11)
13) If the value found in the LENGTH field in step #10 is greater than
255, also type the following:
"0{ADDRESS-1}B=0"
(where ADDRESS-1 is one less than the ADDRESS recorded in step #10)
This is necessary to clear out the first byte of the word.
14) "q"
(quit fsdb)
15) "fsck {Mountpoint}" or "fsck /dev/{LVname}"
This command will return errors for each recovered file asking if
you wish to REMOVE the file. Answer "n" to all questions.
For each file that is listed, record the associated INODE number.
16) "fsdb /{Mountpoint}" or "fsdb /dev/{LVname}"
17) {BLOCK}i.ln=1
(where BLOCK is the block number recoded in step #15)
This will change the link count for the inode associated with
the recovered file. Repeat this step for each file listed in
step #15.
18) "q"
(quit fsdb)
19) "fsck {Mountpoint}" or "fsck /dev/{LVname}"
The REMOVE prompts should no longer appear. Answer "y" to
all questions pertaining to fixing the block map, inode map,
and/or superblock.
20) If the desired directory or file returns, send money to the author
of this document.

Subject: 1.147: What questions are on the AIX Certified


User/SystemAministrator/etc., exam?
If you want more information, look at
<http://www.rs6000.ibm.com/support/aixcert/>.
There's also a self assessment exam available at
<http://www.rs6000.ibm.com/cgi-bin/TC2/tc2_reg.cgi>. The questions
are supposedly *derived from the same sources* as the AIX
Certification exams. I assume that this means the actual exams cover

much of the same information.


I assume that the actual questions (and especially the answers) are
protected by copyright and possibly other laws, so disclosing them
without IBM's permission would not be wise or legal.

Subject: 1.148: How can I run a command or commands at system


shutdown?
"Stock" AIX 4.1.x doesn't have any obvious place to add commands to
the shutdown sequence. You can 1) modify /etc/shutdown (it's a shell
script); 2) add your commands to /etc/netware.clean (shutdown invokes
this program if it exists) or 3) install APAR IX65326 ("ADD
/ETC/RC.SHUTDOWN TO SHUTDOWN SCRIPT IN AIX4.1.5) which adds a
user-defined /etc/rc.shutdown script to the shutdown sequence. AIX
4.2 and above already has a similar feature.

Subject: 1.149 How to install LPPs on a shared disk?


From: Ciaran Deignan <C.Deignan@frec.bull.fr>
I have an LPP that I want to install on all my AIX machines (for
example the "perl" freeware), but I want to minimize the disk-space
used on the network of machines. Can I selectively mount part of /usr
on another machine?
In general it is not possible to share an LPP with several machines.
Sometimes it is possible to use a dedicated filesystem to install
freeware which can then be shared.
However for anything packaged as an LPP it is possible to use
a script that replaces /usr/sbin/inurest, and that redirects files
delivered by the LPP to the shared disk.
One script that does this is called Ninstallp, and it is available
(with instructions) from
http://www.geocities.com/ResearchTriangle/5428/ninstallp.html

Subject: 1.150 How can I reduce the size of /var/adm/wtmp ?


The file /var/adm/wtmp grows with each login, but is never reduced.
The contents of wtmp is used (only?) by the command "last",
which shows, in reverse order, all the logins and reboots that
happened since the start of the wtmp file.
The file should not be deleted, but the contents can be discarded using
the following command:
# > /var/adm/wtmp
Alternatively the freeware utility "tidysys" can remove all the entries
from wtmp that are older than (say) 15 days. Tidysys was written by
Terry Murray <terry@weavel.demon.co.uk> for AIX 3.2 and is available
from ftp://ftp.frontiernet.net/pub/aix/.
Tidysys was ported to AIX 4.1 by C. Deignan and is available from

<http://www-frec.bull.com/>.

Subject: 1.151: How do I start local daemons at system startup?


AIX does neither use the BSD style rc.local file nor the System V style
/etc/rc*.d startup files directories. To add local daemons to the system
startup sequence in a BSD rc.local style use the following command to
create an /etc/inittab entry:
# mkitab -i rcnfs "rclocal:2:wait:/etc/rc.local >/dev/console 2>&1"
# touch /etc/rc.local
# chmod 700 /etc/rc.local
Then put the command lines to start the daemons in /etc/rc.local.

Subject: 1.152 How do I set the TZ variable to automatically change to


daylight savings time?
The TZ variable can be set in /etc/environment file so the time
automatically switches to daylight savings time in spring and back to
normal in autumn. The actual rules when to switch vary by country, the
following should work in middle europe:
TZ=MET-1MET DST,M3.5.0/02:00:00,M10.5.0/03:00:00
The exact definition for the rules can be found with infoexplorer under
the environment page.

Subject: 1.153 Why does init not reap its zombie child processes?
If you have lots of zombie (defunct) processes with parent process id 1,
the init process is probably waiting for some bad /etc/inittab
configuration line to finish. Check the inittab file for entries that
specify the wait keyword for processes that do not terminate. These
lines should probably specify "once" or "respawn" instead.

Subject: 1.154 I'm looking for a missing command or header file.


Which fileset do I need to install?
If you are at AIX Version 4.2.1 or later you could install
bos.content_list and then use the command "which_fileset [ File ]"
The which_fileset command searches the /usr/lpp/bos/AIX_file_list
file for a specified file name or command name, and prints out the
name of the fileset that the file or command is shipped in.

Subject: 1.155 Why doesn't the df -k output reflect the space I added
to an LV?
You need to use the chfs command or the smit chfs menu to tell the file
system to use the new space. By the way, in most cases it is better to

just increase the size of the file system, it will increase the
underlying LV automatically.
Send corrections/additions to the FAQ Maintainer:
bofh@mail.teleweb.pt (Jose Pina Coelho)
Last Update April 20 2007 @ 02:42 AM
================================================================================
Document options
Set printer orientation to landscape mode
Print this page
Email this page
E-mail this page
Congratulations!
developerWorks wins Jolt Hall of Fame award
Rate this page
Help us improve this content
Level: Intermediate
Shiv Dutta, Technical Consultant, IBM
Brad Cobb (bcobb@us.ibm.com), AIX Collaboration Center, IBM
30 Oct 2003
Updated 11 Apr 2006
Perhaps no other aspect of AIX generates as much confusion as AIX
updates. AIX users constantly struggle with questions, such as: What's a
program temporary fix (PTF)? What's an authorized program analysis report
(APAR)? Am I running the latest Maintenance Level (ML) or Technology Level
(TL)? What is the latest ML or TL? By understanding the answers to these
questions, you learn how to discover, install, and use AIX updates.

More dW content related to: aix compare software lists between systems lslpp
Introduction
When this article was first published in July 2003, it generated a tremendous
response. AIX users from all over the world were pleased to have many of
their questions answered regarding AIX updates. Based upon feedback from
readers, we learned that there are many more unanswered questions that
weren't covered in the original article. Version 2 of this article, first
published in 2003 and updated in 2005, addressed more of these unanswered
questions. It also included all of the original questions so you would have a
single reference document.

This article is an update to the Version 2 of this document and incorporates


the changes resulting from the new AIX 5L Service Strategy recently announced
by IBM.
Understanding the baffling arena of AIX updates is like doing a jigsaw
puzzle. First you need to know what the pieces and terms mean, then learn how
they all fit together. In this article, we'll explain the many terms and
abbreviations, help you organize the pieces of the puzzle, then show how the
pieces come together to complete the picture. Before we start, let's review a
few IBM terms.
Program Temporary Fix
A Program Temporary Fix (PTF) provides a fix to a reported defect. The
fix is temporary; the fix disappears when it is incorporated into the next
release of the product. PTFs might contain a single fix, but generally
contain multiple fixes and are associated with a single fileset.
For example, the PTF U476294 is for the fileset
PEX_PHIGS.graPHIGS.rte.base. Specifically, U476294 updates the fileset to
5.1.0.10. The 5.1.0.10 is known as the
Version.Release.Maintenance/Modification.Fix (V.R.M.F). The PTF contains 11
fixes (known as APARs, defined below).
Problem Management Record
A Problem Management Record (PMR) is a tracking record for
customer-reported problems.
Authorized Program Analysis Report
An Authorized Program Analysis Report (APAR) associates a fix to a PMR.
You can then use the APAR number to obtain the required fix. When documenting
software requirements, it's best to list the APAR number rather than the PTF
or PMR number. You will always be able to determine if an APAR is installed
on your system using the command instfix -ivk APAR_NUMBER , whereas installed
PTFs are not trackable.
Continuing with our U476294 example, the PTF contains the following
APARs: IY18782, IY18936, IY18950, IY19534, IY19690 (2 defects), IY19765,
IY20521, IY20877, IY20919, and IY20921.
An APAR can drag into it other APARs for fileset dependencies.
APARs and PTFs are tightly coupled in that PTFs contain multiple APAR
fixes. An APAR is a single fix that is delivered using a PTF packaging.
Maintenance Level
A Maintenance Level (ML) is the service updates that are necessary to
upgrade the base operating system (BOS) or an optional software product to
the current release level.
Starting in 2006, as part of the new AIX 5L Service Strategy, MLs are
replaced by Technology Levels (TLs). They are defined below.
Technology Level
A Technology Level (TL) is the new term for the twice yearly AIX 5L
releases, which contain new hardware and software features and service
updates. The first TL will be restricted to hardware features and enablement,
as well as software service. The second TL will include hardware features and
enablement, software service, and new software features.
Installing a TL should be viewed as an "all or nothing" operation,
meaning that requisites will be added so that the whole TL is installed, and

not allow a TL to be partially installed. You should back up your system


prior to installing a TL.
Service Pack
A Service Pack (SP) consists of service-only updates (also known as
PTF's) that are released between Technology Levels to be grouped together for
easier identification. These fixes address highly pervasive, critical, or
security-related issues. Service Packs are provided for the N and N-1
releases (for example, V5.3 and V5.2) on the latest Technology Level for each
release (for example, 5300-04 and 5200-08).
Concluding Service Pack
Concluding Service Pack (CSP) is the last Service Pack for a Technology
Level. The CSP contains fixes for highly pervasive, critical, or
security-related issues just like a Service Pack, but it might also contain
fixes from the newly released Technology Level that fall into these
categories. Therefore, a CSP contains a very small subset of service that was
just released as a part of a new Technology Level.
CSPs allow for extended service on a Technology Level through the
utilization of Interim Fixes.
Interim Fix
The term Interim Fix is used as a replacement for "emergency fix" or
"efix". While the term emergency fix is still applicable in some situations
(a fix given in the middle of the night with minimal testing), the term
Interim Fix is more descriptive in that it implies a temporary state until an
update can be applied that has been through more extensive testing.
Interim Fixes that address non-security related issues are provided for
the two most recent supported releases (for example, V5.3 and V5.2) on the
last two Technology Levels for each release.
alt_disk_install
The alt_disk_install command allows users a way to update the operating
system to the next release or Technology Level without taking the machine
down for an extended period of time. This can be done in two ways: by
installing a mksysb image on a separate disk, or by cloning the current
system and then applying updates to get to the next Technology Level on a
separate disk. If a problem is encountered with the new level, the bootlist
command can be run after the new disk has been booted, and the bootlist can
be changed to boot back to the original disk in order to get the system back
to the original level.
multibos
Beginning with AIX 5L 5300-03, the multibos utility allows the root level
administrator to create and maintain two bootable instances of the AIX 5L
Base Operating System (BOS) within the same root volume group (rootvg). This
utility is provided primarily as an upgrade vehicle.
The multibos utility allows the administrator to access, install
maintenance, update, and customize the standby instance of BOS (during setup
or in subsequent customization operations) without affecting production on
the running instance. Migration to later releases of AIX 5L will be supported
when they are available, so that will be a future option to keep in mind.
The file systems /, /usr, /var, /opt, and /home, along with the boot
logical volume, must exist privately in each instance of BOS. The
administrator has the ability to share or keep private all other data in the
rootvg. As a general rule, shared data should be limited to file systems and

logical volumes containing data not affected by an upgrade or modification of


private data.
When updating the non-running BOS instance, it is best to first update
the running BOS instance with the latest available version of multibos (which
is in the bos.rte.bosinst fileset).
In the following discussions, we use the terms ML for AIX 5L released before
2006 (for example, 5300-03 and 5200-07) and TL for AIX 5L released after 2006
(for example, 5300-04 and 5200-08).
You've got a problem...
Now let's assume you've encountered a problem while compiling or executing
your application, and you call your IBM technical contact for help. He or she
will ask several questions, including if you are running the latest ML or TL.
The following set of questions and answers will help you provide what the
technical contact needs:
What ML or TL of AIX am I running on my system?
The output from oslevel -r command tells you what ML or TL you are
running.
Is this the latest ML or TL?
Let's assume the output from oslevel -r in the previous question was
5300-03. To determine if this is the latest ML or TL, go to Quick links for
AIX fixes Web site and click on the AIX 5L version you are running. This
takes you to the Fix Bundles Web page, which gives a complete list of all MLs
and TLs released for that version.
If there is a higher ML or TL available, where do I get it and how do I
install it?
Click on the link for the Fix Central Web site where, from the picklist,
you select your AIX 5L level you want to go to (such as 5300-04). Clicking on
the Continue button will take you to the Fix Bundles Web page where you
select the packages or updates needed. You will then be taken to a page where
you are given a number of choices (package information, downloads, complete
list of updates, installation instructions, and so forth). Navigating through
these choices provides you with important information about the updates you
want to install.
To install the fix, select Installation instructions and then Download.
After the fix is installed, run the oslevel -r command. If:
*
*
*
*
*
*

the fix was installed completely, the output should be 5300-04.


Reboot your system. The system is now at 5300-04 TL 04.
the output was still 5300-03, that means there are missing
filesets. For TL4 (the example we are discussing here), the missing
fix has to be re-installed. From TL5 onward, in a situation like
this, the entire TL has to be re-installed.

You can determine which fileset updates are missing by using the command:
oslevel -rl 5300-04

How would I know which fileset(s) and which APARs (fixes) are included in the
above maintenance package?
Clicking on the Package information tab on the Web page discussed in the
previous answer will show this information.
How do I download a particular APAR and how do I know which filesets are

effected by it?
Go to Quick links for AIX fixes Web page. Under the Specific fixes
category:
*
*
*
*
*
*
*
*
*
*
*
*
*

Pick your OS level.


In the Search by box pick APAR number or abstract from the
picklist.
In the Search string box, specify the APAR you are interested in,
such as IY18782.
Click on Go.
Highlight the fix(es) you are interested in and click on Add to my
download list.
Click on Proceed to packaging.
Pick your current maintenance level.
Specify File location if you're building a custom fix package.
Click on Proceed to download page.
The page will also show which filesets are effected by this APAR.

How do I determine if all filesets of an ML or TL are installed?


The output from the command instfix -i|grep ML and/or instfix -i|grep TL
shows whether all filesets are installed. The following is a typical output
when all filesets are installed:
All
All
All
All

filesets
filesets
filesets
filesets

for
for
for
for

5300-01_AIX_ML
5300-02_AIX_ML
5300-03_AIX_ML
5300-04_AIX_ML

were
were
were
were

found.
found.
found.
found.

If the filesets for any ML or TL were not completely installed, there


will be a message similar to "Not all filesets for xxxx_AIX_ML were found" or
"Not all filesets for xxxx_AIX_TL were found."
What SP is installed on my system?
To see which SP is currently installed on the system, run the oslevel -s
command. Sample output for an AIX 5L Version 5.3 system, with TL4, and SP2
installed would be:
oslevel s
5300-04-02
Are the SPs cumulative?
Yes. For example, if SP3 is applied, all of the previous critical fixes
from SP1 and SP2 will also be applied.
Can you still apply PTFs?
Yes. Applying and rejecting an individual service update (PTF) is still a
supported and recommended method of removing an update, if there is a problem
or a regression after it is installed. Since SPs can also be rejected, it is
recommended that before applying an SP or a PTF update that all other updates
on the system are committed (put in the "commit" state) to allow for easy
identification of the SP updates.
Applying the latest level of available updates moves the system to the
latest SP.
Is a CSP installed on my system?
To see if a CSP is currently installed on the system, run the oslevel -s
command. Sample output for an AIX 5L Version 5.3 system, with TL3, and CSP
installed would be:

oslevel s
5300-03-CSP
How can I determine which fileset updates are missing from a particular AIX
level?
Run the following command to determine which fileset updates are missing
from a level:
oslevel -rl 5300-04
How do I determine if a particular fix is installed on my system?
The following command checks to see if the fix IY24043 is installed.
instfix -ik IY24043
All filesets for IY24043 were found.
If all filesets were not installed, the system displays a message to that
effect.
How do I verify that the filesets have the required prerequisites and are
completely installed?
The output from the command lppchk -v shows if the filesets have the
required prerequisites and are completely installed. If there is no output
from this command, the filesets are completely installed. Otherwise, the
filesets that need to be installed or corrected are displayed.
What does AIX 5300-03 consist of?
The AIX 5300-03 Recommended Maintenance package is a set of hardware and
AIX 5L enhancements and AIX 5L fixes for AIX 5.3.0. This maintenance package
is intended for customers that already have AIX 5.3.0 installed and want a
later set of preventive maintenance.
What does AIX 5300-04 consist of?
AIX 5300-04 refers to AIX 5L Version 5.3 TL4. It has a set of hardware
enhancements and AIX 5L fixes. It does not have any AIX 5L enhancements. This
package is intended for customers that already have AIX 5.3.0 installed and
want to move to 5300-04.
Other than the Download option, are there other ways to get a maintenance
package?
Yes, there are two other ways:
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*

AIX Update CD -- An Update CD is shipped with all new orders of AIX


5L. Existing pSeries customers who are licensees of AIX 5L can
obtain the February 2006 Update CD at no charge, except for media
charges as they apply in their geography, by contacting their point
of sale and requesting feature code 0967B. U.S. customers can call
1-800-879-2755.
Maintenance package on physical media -- The Download option
addressed in one of the previous questions (How do I download a
particular APAR and how do I know which filesets are effected by
it?) leads you to the option of downloading the package on a
physical media. You need an IBM ID. If you do not have one, you can
get it when prompted for it by registering online. Customers with a
Support Line offering might also contact Support Line
(1-800-CALL-AIX in the U.S.) to get the AIX 5300-04 TL package on
media.

How do I know which problems have been fixed in this ML or TL?


AIX Update CD contains a list of all APARs fixed in the 5300-04 TL
package. You can get a list of these APARs by using the command:

smit list_media_fixes

How do I install the latest filesets (by APAR, PTF, or fileset)?


To install selected updates, use the command:
smit update_by_fix
To install all updates, use the command:
smit update_all
Or you can use the geninstall command.
How can I search all existing APARs to see if my problem has already been
fixed?
Check the APAR database: APAR database.
For instance, if you are looking for a fix for a memory related problem,
do a search on memory in the APAR database and check to see what APAR(s) have
been issued on this topic.
By going through the preceding steps, not only will you be able to provide
your IBM technical contact all the information they need, you'll also be
keeping your system at the latest ML.
================================================================================
Commands
Kernel
How would I know if I am running a 32-bit kernel or 64-bit kernel?
To display if the kernel is 32-bit enabled or 64-bit enabled, type:
bootinfo -K
How do I know if I am running a uniprocessor kernel or a multiprocessor
kernel?
/unix is a symbolic link to the booted kernel. To find out what kernel mode
is running, enter ls -l /unix and see what file /unix it links to. The
following are the three possible outputs from the ls -l /unix command and
their corresponding kernels:
/unix -> /usr/lib/boot/unix_up
/unix -> /usr/lib/boot/unix_mp
/unix -> /usr/lib/boot/unix_64

# 32 bit uniprocessor kernel


# 32 bit multiprocessor kernel
# 64 bit multiprocessor kernel

Note:
AIX 5L Version 5.3 does not support a uniprocessor kernel.
How can I change from one kernel mode to another?
During the installation process, one of the kernels, appropriate for the AIX
version and the hardware in operation, is enabled by default. Let us use the

method from the previous question and assume the 32-bit kernel is enabled.
Let us also assume that you want to boot it up in the 64-bit kernel mode.
This can be done by executing the following commands in sequence:
ln -sf /usr/lib/boot/unix_64
ln -sf /usr/lib/boot/unix_64

/unix
/usr/lib/boot/unix

bosboot -ad /dev/hdiskxx


shutdown -r
The /dev/hdiskxx directory is where the boot logical volume /dev/hd5 is
located. To find out what xx is in hdiskxx, run the following command:
lslv -m hd5

Note:
In AIX 5.2, the 32-bit kernel is installed by default. In AIX 5.3, the 64-bit
kernel is installed on 64-bit hardware and the 32-bit kernel is installed on
32-bit hardware by default.
Hardware
How would I know if my machine is capable of running AIX 5L Version 5.3?
AIX 5L Version 5.3 runs on all currently supported CHRP (Common Hardware
Reference Platform)-based POWER hardware.
How would I know if my machine is CHRP-based?
Run the prtconf command. If it's a CHRP machine, the string chrp appears on
the Model Architecture line.
How would I know if my System p machine (hardware) is 32-bit or 64-bit?
To display if the hardware is 32-bit or 64-bit, type:
bootinfo -y
How much real memory does my machine have?
To display real memory in kilobytes (KB), type one of the following:
bootinfo -r
lsattr -El sys0 -a realmem
Can my machine run the 64-bit kernel?
64-bit hardware is required to run the 64-bit kernel.
What are the values of attributes for devices in my system?
To list the current values of the attributes for the tape device, rmt0, type:

lsattr -l rmt0 -E
To list the default values of the attributes for the tape device, rmt0, type:
lsattr -l rmt0 -D
To list the possible values of the login attribute for the TTY device, tty0,
type:
lsattr -l tty0 -a login -R
To display system level attributes, type:
lsattr -E -l sys0
How many processors does my system have?
To display the number of processors on your system, type:
lscfg | grep proc
How many hard disks does my system have and which ones are in use?
To display the number of hard disks on your system, type:
lspv
How do I list information about a specific physical volume?
To find details about hdisk1, for example, run the following command:
lspv hdisk1

How do I get a detailed configuration of my system?


Type the following:
lscfg
The following options provide specific information:
-p
Displays platform-specific device information. The flag is applicable to
AIX 4.2.1 or later.
-v
Displays the VPD (Vital Product Database) found in the customized VPD
object class.
For example, to display details about the tape drive, rmt0, type:
lscfg -vl rmt0
You can obtain very similar information by running the prtconf command.

How do I find out the chip type, system name, node name, model number, and so
forth?
The uname command provides details about your system.
uname -p
Displays the chip type of the system. For example, PowerPC.
uname -r
Displays the release number of the operating system.
uname -s
Displays the system name. For example, AIX.
uname -n
Displays the name of the node.
uname -a
Displays the system name, nodename, version, machine ID.
uname -M
Displays the system model name. For example, IBM, 9114-275.
uname -v
Displays the operating system version.
uname -m
Displays the machine ID number of the hardware running the
system.
uname -u
Displays the system ID number.
AIX
What version, release, and maintenance level of AIX is running on my system?
Type one of the following:
oslevel -r
lslpp -h bos.rte
How can I determine which fileset updates are missing from a particular AIX
level?
To determine which fileset updates are missing from 5300-04, for example, run
the following command:
oslevel -rl 5300-04
What SP (Service Pack) is installed on my system?
To see which SP is currently installed on the system, run the oslevel -s
command. Sample output for an AIX 5L Version 5.3 system, with TL4, and SP2
installed would be:
oslevel s
5300-04-02

Is a CSP (Concluding Service Pack) installed on my system?


To see if a CSP is currently installed on the system, run the oslevel -s
command. Sample output for an AIX 5L Version 5.3 system, with TL3, and CSP
installed would be:
oslevel s
5300-03-CSP

How do I create a file system?

The following command will create, within volume group testvg, a jfs file
system of 10MB with mounting point /fs1:
crfs -v jfs [-d(lv) | -g testvg] -a size=10M -m /fs1

The following command will create, within volume group testvg, a jfs2 file
system of 10MB with mounting point /fs2 and having read only permissions:
crfs -v jfs2 [-d(lv) | -g testvg] -a size=10M -p ro -m /fs2

How do I change the size of a file system?


To increase the /usr file system size by 1000000 512-byte blocks, type:
chfs -a size=+1000000 /usr
Note:
In AIX 5.3, the size of a JFS2 file system can be shrunk as well.
How do I mount a CD?
Type the following:
mount -V cdrfs -o ro /dev/cd0 /cdrom
How do I mount a file system?
The following command will mount file system /dev/fslv02 on the /test
directory:
mount /dev/fslv02 /test
How do I mount all default file systems (all standard file systems in the
/etc/filesystems file marked by the mount=true attribute)?
The following command will mount all such file systems:
mount {-a|all}
How do I unmount a file system?
Type the following command to unmount /test file system:
umount /test
How do I display mounted file systems?
Type the following command to display information about all currently mounted
file systems:

mount
How do I remove a file system?
Type the following command to remove the /test file system:
rmfs /test
How can I defragment a file system?
The defragfs command can be used to improve or report the status of
contiguous space within a file system. For example, to defragment the file
system /home, use the following command:
defragfs /home
Which fileset contains a particular binary?
To show bos.acct contains /usr/bin/vmstat, type:
lslpp -w /usr/bin/vmstat
Or to show bos.perf.tools contains /usr/bin/svmon, type:
which_fileset svmon
How do I display information about installed filesets on my system?
Type the following:
lslpp -l

How do I determine if all filesets of maintenance levels are installed on my


system?
Type the following:
instfix -i | grep ML
How do I determine if a fix is installed on my system?
To determine if IY24043 is installed, type:
instfix -ik IY24043
How do I install an individual fix by APAR?
To install APAR IY73748 from /dev/cd0, for example, enter the command:
instfix -k IY73748 -d /dev/cd0

How do I verify if filesets have required prerequisites and are completely


installed?
To show which filesets need to be installed or corrected, type:
lppchk -v
How do I get a dump of the header of the loader section and the symbol
entries in symbolic representation?
Type the following:
dump -Htv
How do I determine the amount of paging space allocated and in use?
Type the following:
lsps -a
How do I increase a paging space?
You can use the chps -s command to dynamically increase the size of a paging
space. For example, if you want to increase the size of hd6 with 3 logical
partitions, you issue the following command:
chps -s 3 hd6

How do I reduce a paging space?


You can use the chps -d command to dynamically reduce the size of a paging
space. For example, if you want to decrease the size of hd6 with four logical
partitions, you issue the following command:
chps -d 4 hd6

How would I know if my system is capable of using Simultaneous


Multi-threading (SMT)?
Your system is capable of SMT if it's a POWER5-based system running AIX 5L
Version 5.3.
How would I know if SMT is enabled for my system?
If you run the smtctl command without any options, it tells you if it's
enabled or not.
Is SMT supported for the 32-bit kernel?
Yes, SMT is supported for both 32-bit and 64-bit kernel.

How do I enable or disable SMT?


You can enable or disable SMT by running the smtctl command. The following is
the syntax:
smtctl [ -m off | on [ -w boot | now]]
The following options are available:
-m off Sets SMT mode to disabled.
-m on Sets SMT mode to enabled.
-w boot
Makes the SMT mode change effective on next and subsequent
reboots if you run the bosboot command before the next system reboot.
-w now Makes the SMT mode change immediately but will not persist across
reboot.
If neither the -w boot or the -w now options are specified, then the mode
change is made immediately. It persists across subsequent reboots if you run
the bosboot command before the next system reboot.
How do I get partition-specific information and statistics?
The lparstat command provides a report of partition information and
utilization statistics. This command also provides a display of Hypervisor
information.
Volume groups and logical volumes
How do I know if my volume group is normal, big, or scalable?
Run the lsvg command on the volume group and look at the value for MAX PVs.
The value is 32 for normal, 128 for big, and 1024 for scalable volume group.
How to create a volume group?
Use the following command, where s partition_size sets the number of
megabytes (MB) in each physical partition where the partition_size is
expressed in units of MB from 1 through 1024. (It's 1 through 131072 for AIX
5.3.) The partition_size variable must be equal to a power of 2 (for example:
1, 2, 4, 8). The default value for standard and big volume groups is the
lowest value to remain within the limitation of 1016 physical partitions per
physical volume. The default value for scalable volume groups is the lowest
value to accommodate 2040 physical partitions per physical volume.
mkvg -y name_of_volume_group -s partition_size list_of_hard_disks

How can I change the characteristics of a volume group?


You use the following command to change the characteristics of a volume
group:
chvg
How do I create a logical volume?
Type the following:

mklv -y name_of_logical_volume name_of_volume_group number_of_partition

How do I increase the size of a logical volume?


To increase the size of the logical volume represented by the lv05 directory
by three logical partitions, for example, type:
extendlv lv05 3

How do I display all logical volumes that are part of a volume group (for
example, rootvg)?
You can display all logical volumes that are part of rootvg by typing the
following command:
lsvg -l rootvg
How do I list information about logical volumes?
Run the following command to display information about the logical volume
lv1:
lslv lv1
How do I remove a logical volume?
You can remove the logical volume lv7 by running the following command:
rmlv lv7
The rmlv command removes only the logical volume, but does not remove other
entities, such as file systems or paging spaces that were using the logical
volume.
How do I mirror a logical volume?
1. mklvcopy LogicalVolumeName Numberofcopies
2. syncvg VolumeGroupName
How do I remove a copy of a logical volume?
You can use the rmlvcopy command to remove copies of logical partitions of a
logical volume. To reduce the number of copies of each logical partition
belonging to logical volume testlv, enter:
rmlvcopy testlv 2
Each logical partition in the logical volume now has at most two physical
partitions.
Queries about volume groups

To show volume groups in the system, type:


lsvg
To show all the characteristics of rootvg, type:
lsvg rootvg
To show disks used by rootvg, type:
lsvg -p rootvg
How to add a disk to a volume group?
Type the following:
extendvg

VolumeGroupName

hdisk0 hdisk1 ... hdiskn

How do I find out what the maximum supported logical track group (LTG) size
of my hard disk?
You can use the lquerypv command with the -M flag. The output gives the LTG
size in KB. For instance, the LTG size for hdisk0 in the following example is
256 KB.
/usr/sbin/lquerypv -M hdisk0
256
You can also run the lspv command on the hard disk and look at the value for
MAX REQUEST.
What does syncvg command do?
The syncvg command is used to synchronize stale physical partitions. It
accepts names of logical volumes, physical volumes, or volume groups as
parameters.
For example, to synchronize the physical partitions located on physical
volumes hdisk6 and hdisk7, use:
syncvg -p hdisk4 hdisk5

To synchronize all physical partitions from volume group testvg, use:


syncvg -v testvg

How do I replace a disk?


1. extendvg VolumeGroupName hdisk_new
2. migratepv hdisk_bad hdisk_new
3. reducevg -d VolumeGroupName hdisk_bad

How can I clone (make a copy of ) the rootvg?


You can run the alt_disk_copy command to copy the current rootvg to an
alternate disk. The following example shows how to clone the rootvg to
hdisk1.
alt_disk_copy -d hdisk1
Network
How can I display or set values for network parameters?
The no command sets or displays current or next boot values for network
tuning parameters.
How do I get the IP address of my machine?
Type one of the following:
ifconfig -a
host Fully_Qualified_Host_Name
For example, type host cyclop.austin.ibm.com.
How do I identify the network interfaces on my server?
Either of the following two commands will display the network interfaces:
lsdev -Cc if
ifconfig -a
To get information about one specific network interface, for example, tr0,
run the command:
ifconfig tr0
How do I activate a network interface?
To activate the network interface tr0, run the command:
ifconfig tr0 up
How do I deactivate a network interface?
For example, to deactivate the network interface tr0, run the command:
ifconfig tr0 down
================================================================================
[root@MYSYS] > lsvg -l v717lg01

v717lg01:
LV NAME
TYPE
LPs PPs PVs LV STATE
l717lg01
???
260 260 1
open/syncd
loglv00
???
1
1
1
open/syncd
[root@MYSYS] > lslv l717lg01
0516-306 lslv: Unable to find l717lg01 in the Device
Configuration Database.
[root@MYSYS] > synclvodm -Pv v717lg01
synclvodm: Physical volume data updated.
synclvodm: Logical volume l717lg01 updated.
synclvodm: Logical volume loglv00 updated.
[root@MYSYS] > lslv l717lg01
LOGICAL VOLUME:
l717lg01
VOLUME GROUP:
LV IDENTIFIER:
000933561562957c.1
PERMISSION:
VG STATE:
active/complete
LV STATE:
TYPE:
jfs
WRITE VERIFY:
MAX LPs:
512
PP SIZE:
COPIES:
1
SCHED POLICY:
LPs:
260
PPs:
STALE PPs:
0
BB POLICY:
INTER-POLICY:
maximum
RELOCATABLE:
INTRA-POLICY:
center
UPPER BOUND:
MOUNT POINT:
/mdorlg001
LABEL:
MIRROR WRITE CONSISTENCY: on
EACH LP COPY ON A SEPARATE PV ?: yes
[root@MYSYS ] > lsvg -l v717lg01
v717lg01:
LV NAME
TYPE
LPs PPs PVs LV STATE
l717lg01
jfs
260 260 1
open/syncd
loglv00
jfslog
1
1
1
open/syncd

MOUNT POINT
/mdorlg001
N/A

v717lg01
read/write
opened/syncd
off
16 megabyte(s)
parallel
260
relocatable
yes
16
/mdorlg001

MOUNT POINT
/mdorlg001
N/A

================================================================================
svmon
svmon -P <pid>
Further:
use can user svmon command to monitor memory usage as follows;
(A) #svmon -P -v -t 10 | more
(B) #svmon -U -v -t 10 | more

(will give top ten processes)


( will give top ten user)

smit install requires "inutoc ." first. It'll autogenerate a .toc for you
I believe, but if you later add more .bff's to the same directory, then
the inutoc . becomes important. It is of course, a table of contents.
dump -ov /dir/xcoff-file
topas, -P is useful # similar to top
When creating really big filesystems, this is very helpful:
chlv -x 6552 lv08
Word on the net is that this is required for filesystems over 512M.
esmf04m-root> crfs -v jfs -gptmpvg -a size=884998144 -m/ptmp2
-A `locale yesstr | awk -F: '{print $1}'` -prw -t'' `locale yesstr |
awk -F: '{print $1}'`'' -a frag= 4096 -a nbpi= 131072 -a ag= 64
Based on the parameters chosen, the new /ptmp2 JFS file system
is limited to a maximum size of 2147483648 (512 byte blocks)
New File System size is 884998144

esmf04m-root>
If you give a bad combination of parameters, the command will list
possibilities. I got something like this from smit, then seasoned
to taste.
If you need files larger than 2 gigabytes in size, this is better.
It should allow files up to 64 gigabytes:
crfs -v jfs -a bf=true -g'ptmpvg' -a size='884998144' -m'/ptmp2' -A''` |
| locale yesstr | awk -F: '{print $1}'`'' -p'rw' -t''`locale yesstr | aw
|
| k -F: '{print $1}'`'' -a nbpi='131072' -a ag='64'
Show version of SSP (IBM SP switch) software:
lslpp -al ssp.basic
llctl -g reconfig - make loadleveler reread its config files
oslevel (sometimes lies)
oslevel -r (seems to do better)
lsdev -Cc adapter
pstat -a looks useful
vmo is for VM tuning
On 1000BaseT, you really want this:
chdev -P -l ent2 -a media_speed=Auto_Negotiation
Setting jumbo frames on en2 looks like:
ifconfig en2 down detach
chdev -l ent2 -a jumbo_frames=yes
chdev -l en2 -a mtu=9000
chdev -l en2 -a state=up
Search for the meaning of AIX errors:
http://publib16.boulder.ibm.com/pseries/en_US/infocenter/base/eisearch.htm
nfso -a shows AIX NFS tuning parameters; good to check on if you're
getting badcalls in nfsstat. Most people don't bother to tweaks these
though.
nfsstat -m shows great info about full set of NFS mount options
Turn on path mtu discovery
no -o tcp_pmtu_discover=1
no -o udp_pmtu_discover=1
TCP support is handled by the OS. UDP support requires cooperation
between OS and application.
nfsstat -c shows rpc stats
To check for software problems:
lppchk -v
lppchk -c
lppchk -l
List subsystem (my word) status:
lssrc -a

mkssys
rmssys
chssys
auditpr
refresh
startsrc
stopsrc
traceson
tracesoff
This starts sendmail:
startsrc -s sendmail -a "-bd -q30m"
This makes inetd reread its config file. Not sure if it kills and
restarts or just HUP's or what:
refresh -s inetd
lsps is used to list the characteristics of paging space.
Turning off ip forwarding:
/usr/sbin/no -o ipforwarding=0
Detailed info about a specific error:
errpt -a -jE85C5C4C
BTW, Rajiv Bendale tells me that errors are stored in NVRAM on AIX,
so you don't have to put time into replicating an error as often.
Some or all of these will list more than one number. Trust the first,
not the second.
lslpp -l ppe.poe
...should list the version of poe installed on the system
Check on compiler versions:
lslpp -l vac.C
lslpp -l vacpp.cmp.core
Check on loadleveler version:
lslpp -l LoadL.full
If you want to check the bootlist do bootlist -o -m normal if you want to
update bootlist do bootlist -m normal hdisk* hdisk* cd* rmt*
prtconf
Run the ssadiag against the drive and the adapter and it will tell you if it
fails or not. Then if its a hot plugable it can be replaced online.
You can get patches from:
http://www-912.ibm.com/eserver/support/fixes
You'll need to click through a bit of red tape before getting to where
you actually can list corequisites and start a download.
BTW, "Add to my download list" does not work in konqueror, but it does
work in mozilla.
Backup to tape:
env - /usr/bin/mksysb '-m' '-i' '-X' /dev/rmt0
The "env -" is because some sort of environment variable can confuse

mksysb, making it error out instead of doing your backup


There's also "smitty mksysb"
You can create an image using the savevg command i.e.
savevg -v -n -9 / _rootvg.img rootvg
This can be used to build a NIM installable image to recover your systems
alternatively, the command line call for a mksysb to tape (to include map
and exclude files) is /usr/bin/mksysb '-m' '-e' '-i' /dev/rmt0
Finding which lpp contains a file:
lslpp -w /usr/sbin/umount
There exists a "diag CD" for AIX.
/usr/samples/kernel/vmtune
lsattr -El sys0 | grep realmem
lsattr -El mem0
See if you AIX system's hardware is CHRP (some sort of PowerPC reference
platform spec, I believe) :
bootinfo -p
chrp
Some really funky hardware-looking problems can be fixed by draining
the NVRAM battery for 5 minutes, and then reinstalling the microcode.
We used to do this on some IBM RT's in Cincinnati, and a recent poster
to AIX-L indicates that it's still useful in some situations.
From AIX-L:
AIX 4.3.2 -> AIX 4.3.3 is the most easiest Upgrade of ALL. Place the
AIX 4.3.3 Vol 1 of CD on the CDROM drive and run smitty update_all ,
this will upgrade the OS
On the subject of running out of paging space, from AIX-L:
Look into npswarn, npskill stuff in Performance Management Guide
Changing the boot device order:
Boot the server, and hit 1 or F1 (depending if you have an ascii console
or a graphics console) when the logos come up to get to sms mode. In
the menus select multiboot, select boot devices, select boot order.
You should start tracing for inetd subsystem with
traceson -s inetd
and then issue:
trpt -j
you will see the protocols control blocks (PID) you're tracing, and then
with:
trpt -p <PID>
you should see output for telnet communications. But this is not working.

Why don't you try using iptrace and ipreport to see the behavior of your
telnet sessions ??
Purportedly orks with JFS 1 and 2:
To split off a mirrored copy of the /home/xyz file system to a new mount
point named /jfsstaticcopy, type the following:
chfs -a splitcopy=/jfsstaticcopy /home/xyz
You can control which mirrored copy is used as the backup by using the
copy attribute. The second mirrored copy is the default if a copy is
not specified by the user. For example:
chfs -a splitcopy=/jfsstaticcopy -a copy=1 /home/xyz
At this point, a read-only copy of the file system is available in
/jfsstaticcopy. Any changes made to the original file system after the
copy is split off are not reflected in the backup copy.
To reintegrate the JFS split image as a mirrored copy at the /testcopy
mount point, use the following command:
rmfs /testcopy
The rmfs command removes the file system copy from its split-off state
and allows it to be reintegrated as a mirrored copy.
Working around a loader domain problem:
esmf04m-strombrg> /usr/local/bin/gribmap
exec(): 0509-036 Cannot load program /usr/local/bin/gribmap because of
the following errors:
0509-030 Insufficient permission to create loader domain
/usr/lib/libiconv.a
0509-026 System error: The file access permissions do not allow
the specified action.
esmf04m-strombrg> LIBPATH=$TMPDIR/gribmap-ld /usr/local/bin/gribmap
gribmap v1.4 for GrADS Version 1.8SL11
Apparently you can also link your application with -L$TMPDIR/loaderdomain
or so, but you'd need a unique one for each set of shared libraries.
This one apparently must be the first -L in the link line.
Please see also:
http://dcs.nac.uci.edu/~strombrg/AIX-shared-libs.html
/usr/bin/uname -M
Anyway, set the timezone variable TZ in /etc/environment like this:
TZ=MST7
...takes effect after everyone logs out and back in. This is just an
example, not something for California.
"svmon" will give u this output which give u the information regarding
ur memory.
size

inuse

free

pin

virtual

memory
pg space
pin
in use

1310711
2097152
work
103782
438570

1298235
585219
pers
0
10130

12476

103782

clnt
0
849535

lpage
0
0

711466

acledit
Scott (of IBM, onsite hardware tech) stuff:
lsdev -Cc adapter
"defined" means at one time the piece of hardware was on system - as
opposed to "available". A card which is being newly added should not
temporarily pass through "defined" state. Hardware should be in the
"available" state.
/////
lsslot -c pci
p1-i1 is the first slot on the back left
/////
diag
diadiagnostic routines
problem determination
sfp: phones home (to IBM) over modem
previously reported problem
/////
task selection
hot plug task
pci or scsi
identify function will blink light, so you can make sure the hardware
and software are on the same page.
u1.1 drawer address, bottom left
/////
EIA numbers on right and left of rack, goes to lowest of the numbers
adjacent to the equipment in question. EG, something in the rack might
be 3 EIA numbers high - the software should identify the hardware by
the lowest number of the 3.
/////
hotplug in os removes voltage from slot, slot light should blink yellow,
same as for identify.
/////
we have older "hotswap cassettes" - which means lots of screws.
Newer ones snap together. It also can take a bit of wrestling to get
the card in and out of the old cassettes (shades of Sun's IPX's :)
/////
yellow llight continues blinking after card inserted, until software is
told to let the slot have voltage again.
/////
advanced diagnostics, search for thing to test visually
/////
cfgmgr
takes awhile to run, checks all devices on machine
no output, but then lsdev -Cc adapter again should change afterward
/////
ps -ef | grep Worm
splstdata -a
should not say not_configured
use rc.switch to make it configured
ps -ef pipe | Worm again, should show up now
Eunfence 49 - 49 is 04m
/////

spmon -d
"d" for diagnostic
like front panel leds
"host responds" and "switch responds" should say yes for all css adapters
/////
errpt (no args)
/////
Scott says that sometimes an SP2 system will refuse to acknowledge the
new adapter, in which case you have to lie to the ODM to make the system
see the card. He suggested that maybe we did not need to do that this
time, because we have the latest pssp (ssp.*) software on the system.
/////
We also had to Eunfence the node whose card was replaced.
Rajiv tells me that it does not matter which host is Eprimary, as long as
one of the nodes is, and there aren't things fenced off that shouldn't be.
mount -v cdrfs -o ro /dev/cd0 /mnt
Mount iso9660 filesystem
More on cfgmgr, from aix-l:
you can execute cfgmgr on line without trouble
normally cfgmgr have 3 steps named phases :
phase 1 during boot
phase 2 during normal boot (after phase1)
phase 3 durinf service boot (after phase1)
if you run cfgmgr without flags (-p or -f) cfgmgr executes phase 2 only by
default
in fact cfgmgr and cfgmgr -p2 are the sames commands
flag -v for verbose
AIX 5.2 has builtin CIFS client?
mount -v cifs -n winserver/myuser/mypassword /home /mnt
Can also "smitty cifs_fs"
This is supposed to be included in lpp bos.cifs_fs
Apparently this was added in AIX 5.2
please check if your cd device is being used by some process by running:
fuser -c /dev/cd0
you can also check if cdromd is up and running by:
lssrc -a | grep cd
if cdromd is running, then try with the following commands:
cdumount
cdeject
here is some commands to manipulate the ODM directly (I don't suggest you
do so, at least you know exactly what you are doing).

odmget, odmshow, odmchange, odmadd, odmdelete, odmdrop


lsps -a
nmon - free, unsupported download from IBM
What's this about chmod'ing kmem to be world readable though?!
esmf04m-dcsew> instfix -i | grep ML
All filesets for 5.1.0.0_AIX_ML
All filesets for 5100-01_AIX_ML
All filesets for 5100-02_AIX_ML
All filesets for 5100-03_AIX_ML
All filesets for 5100-04_AIX_ML
esmf04m-dcsew>

were
were
were
were
were

found.
found.
found.
found.
found.

The specifix fixes can be checked using instfix command:


#instfix -ivk <APAR no.>
e.g #instfix -ivk IY56076
instfix -ciqk 4330-08_AIX_ML | grep ":-:"
Lists what filesets need to be installed for instfix to show "All filesets
for 4330-08 were found".
instfix -k "IX#####" -d /dev/rmt0.1
Installs the APAR and its prerequisites on the system.
installp -Xagqd /dev/rmt0.1 X11.base.rte
Installs Xwindows on the system.
installp -u
deletes an AIX lpp
Copious network statistics:
entstat -d ent0
Making AIX 5.1 see a change to /etc/inetd.conf and/or /etc/services
and/or /etc/rpc is different from most other systems (only verified
using one rpc/udp service so far)
You can't just kill -HUP inetd's pid
What you can do, is "smitty inetd", stop inetd, start inetd, and exit smitty.
Alternatively, it -should- work to:
stopsrc -s inetd
startsrc -s inetd
Or better:
Edit /etc/inetd.conf and comment out ftp and refresh inetd by issuing
"refresh -s inetd"
startsrc -t ftpd -u 022 -l
To truly change the kernel to 64-bit, you need to be at the 5.1 oslevel. The
means to change to a 64-bit kernel are:
From 32-bit to 64-bit:
ln -sf /usr/lib/boot/unix_64 /unix
ln -sf /usr/lib/boot/unix_64 /usr/lib/boot/unix

lslv -m hd5
bosboot -ad /dev/ipldevice
shutdown -Fr
bootinfo -K (should now be 64)
To change the kernel back to 32-bit:
From 64-bit to 32-bit:
ln -sf /usr/lib/boot/unix_mp /unix
ln -sf /usr/lib/boot/unix_mp /usr/lib/boot/unix
lslv -m hd5
bosboot -ad /dev/ipldevice
shutdown -Fr
bootinfo -K (should now be 32)If you are running AIX 5.1
Switching From 32 to 64 Bit Mode
To switch from 32-bit mode to 64-bit mode run the following commands,
in the given order:
1.ln -sf /usr/lib/boot/unix_64 /unix
2.ln -sf /usr/lib/boot/unix_64 /usr/lib/boot/unix
3.bosboot -ad /dev/ipldevice
4.shutdown -Fr
5.bootinfo -K (should now show 64)
Switching From 64 To 32-Bit Mode
To switch from 64-bit mode to 32-bit mode run the following commands,
in the given order:
1.ln -sf /usr/lib/boot/unix_mp /unix
2.ln -sf /usr/lib/boot/unix_mp /usr/lib/boot/unix
3.bosboot -ad /dev/ipldevice
4.shutdown -Fr
5.bootinfo -K (should now show 32)
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_Moulay Rachid BOUSSETA
To see if you're running with a 32 bit or 64 bit kernel, run:
bootinfo -K
...or...
prtconf -k
EG:
esmf04m-root> PATH=/usr/bin:/usr/sbin prtconf -k
Kernel Type: 64-bit
esmf04m-root> bootinfo -K
64
bootinfo -s hdiskxxx
lspv hdiskXX

as well is defined on a Volume Group

lsattr -El hdiskXX


lscfg -vp -l hdiskXX

These should give you the raw disk capacity


Go to: http://www-912.ibm.com/eserver/support/fixes/fcgui.jsp
Choose: 1)pSeries family
2)AIX OS,Java, compilers
3)Specifi fix
4)Your OS
Press continue....
type in your requisites in the text box. thats it!
LPP history:
lslpp -h
sar 1 10
bootinfo
bootinfo
=normal
bootinfo
bootinfo
bootinfo
hrp
bootinfo
bits)
bootinfo
bits

-b
-k

reports last device the system booted from


reports keyswitch position 1=secure, 2=service, 3

-r
-s (disk device)
-T

reports amount of memory (/ by 1024)


reports size of disk drive
reports type of machine ie rspc,rs6ksmp,rspc or c

-y

reports your hardware arquitecture (32 bits or 64

-K

reports if the kernel in memory is 32 bits or 64

You can submit/check a pSeries PMR via the web at:


https://techsupport.services.ibm.com/ssr/ssr.slprob
Force a user to change their password on their next login:
pwdadm -f ADMCHG username
Note that this works with some sshd's and not others
Identifying hard disk issues:
svmon -G
vmstat 1 20
iostat -d hdisk0 1 20
ps avg | sort +3r -n | head -25
Maximum number of processes a user can have:
lsattr -E -l sys0 -a maxuproc
smitty chgsys
Also allows one to change the max number of processes per user, among
other things
AIX and SNMP:
by Host Resource you mean the AIX SNMP component that monitors system
resources ??
if so, then there's a conf file for the daemon aixmibd named
/etc/aixmibd.conf where you can configure the thresholds for many

monitors. Once you have configure this then you should activate the daemon
by issuing:
startsrc -s aixmibd
Please remember to uncomment the line that starts aixmibd in /etc/rc.tcpip
file.
On AIX patches:
1) An APAR (Authorized Program Analysis Report) is a bunch of software
patches that solves many problems while a PTF (is the same as Fix and
means Program Temporary Fix) is a patch that solves one specific problem.
You will download Maintenance Levels (ML) as APARs from IBM Software Web
Site.
2) You should install the latest Maintenance Level for the AIX version you
have installed (usually a big bunch of software up to 650 MB that needs
almost 1GB space to be decompressed and installed). As AIX 5L is new
technology from IBM they're patching many problems and generating ML very
often. You can download from
http://www-1.ibm.com/servers/eserver/support/pseries/aixfixes.html
3) First, you have to know which Fix or PTF to install, then download it
from the above web link, then copy to a location in the server (usually
PTF's are copied to /usr/sys/inst.images directory as well as there's
enough space (what i do is to create a new FS of some 2 GB dize and mount
it over /usr/sys/inst.images, after installing the APAR or PTF i just
delete the FS without deleting the mount point). Then uncompress or unzip,
untar, whatever, and using the fastpath
smitty update_all in AIX you
can install or preview the installation of any patches. I recommend using
preview option before real installation and also recommend installing
patches in APPLIED status, that is, both either original or old version
and newest version of the software are installed, so you can REJECT the
installation of any patch.
4) You can remove any single fileset with the fastpath

smitty remove

5) A COMMITed software is installed and the only way to reject it is by


uninstalling the software fileset while a APPLIED software is installed
and the preview versions of filesets are installed too so if you REJECT
the APPLIED software then those older versions will be active again.
Checking on known maintenance levels:
esmf04m-strombrg> oslevel -qr
Known Recommended Maintenance Levels
5100-04
5100-03
5100-02
5100-01
esmf04m-strombrg> lppchk -v
Dual booting AIX:
>Okay you install AIX 5.1 on hdisk0 as example and boot your maschine. th=
>an
>you clone your rootvg to hdisk1 :
>alt_disk_install -C hdisk1

>so you have hdisk0 with old_rootvg


>and hdisk1 with alt_*rootvg
>
>bootlist -m hdisk0 hdisk1 (means you boot from hdisk0 first and hdisk1
>second)
>
>boot with AIX5.2 CD and install with Migartion Option from prompt on
>hdisk0.
>
>now you have Aix5.2 on hdisk0 and aix5.1 on hdisk1
>
>if you want to remove the alternate disk install:
>alt_disk_install -X
Installing an IBM maintenance release upgrade:
Go to the IBM Support Fix Central site:
http://www-912.ibm.com/eserver/support/fixes/fcgui.jsp
* Server
Select "Pseries family" or the series that your server is.
* Product or fix type
Select "AIX OS, java, compilers"
* Ordering option
Select "Mainteneance packages"
* OS level
Select "AIX 5.1"
Select "continue" for next screen
Current level
Select "5100-04"
Desired Level
Select "5100-05"
Select "go"
Download "510405.tar.gz " at the bottom of the page
Follow the instructions
Locking an account:
The following procedure can be used to lock a user's account;
(1) smitty user
(2) select, change the characteristics of a user
(3) Expiration Date: input the effective date, when this account will be
expiring / closing
(4) Is this user account locked: false, use tab key to choose true
(5) User can login:true, use tab key to change true to false
(6) user can login remotely:true, use tab key to change true to false
(7) Press enter key and account will be locked
(8) for further security also change the password
to permit the user to login after 30 days / specfied time revert the above
fields to original values.

If an ESMF node mostly falls off the net (strobe shows only about 5
ports open), then:
1) Go down to the ESMF HMC
2) Log in
3) Locate the right window to use
4) Log in to the trouble machine
5) kill and restart srcmstr
6) startsrc -s inetd
7) startsrc -s sshd
8) startsrc -s automountd
9) /etc/nfs.clean
10) /etc/rc.nfs
There may be other things that need to be started up as well, but this
has been sufficient so far.
Following the documentation if you issue the following command you will
activate HMT or Hardware MultiThreading
# bosdebug -H on
Memory debugger
Memory sizes
Network memory sizes
Kernel debugger
Real Time Kernel
HMT

off
0
0
off
off
on

...but only if your hardware -supports- HMT!


#Virtual IP (VIP)
ifconfig en# alias INTERFACE X.X.X.X netmask 255.255.255.0 broadcast X.X.X.X ali
as #Definiing a virtual network interface.
#Virtual IP (VIP) make it permanent (in ODM)
smit inetalias || smitty inetalias
Checking if NFS is active:
lssrc -a | egrep nfs
biod
nfs
nfsd
nfs
rpc.mountd
nfs
rpc.statd
nfs
rpc.lockd
nfs

20752
21426
27888
22730
24280

active
active
active
active
active

nfso -a -c
#list all tunable values
nfso -o nfs_use_reserved_ports=1
chnfs -b 1024 #ps -ef | grep biod
#chnfs -n 1024 #ps -ef | grep nfsd
chnfs -n 3891 #ps -ef | grep nfsd
Find where gzip lives, package-wise:
which_fileset gzip
Get the machine model:
esmf04m-strombrg> /usr/bin/uname -M
IBM,7039-651

esmf04m-strombrg>
lsconf
Looks a lot like prtconf?
You can check microcode version by issuing the following command
lsmcode
if this does not work, then
lscfg -vp | grep -i alterable
You can download Fixes and microcodes not only for your Server nut for any
peripheral devices from
techsupport.services.ibm.com
1. Type no -o tcp_keepinit=3750 The initial timeout for TCP/IP will change
from 75 seconds to 31.25 minutes. The time (3750) is in 1/2 seconds.
2. Type no -o tcp_keepidle=86400 The connection will be kept alive
for 12 hours.
The above two items will not be active once a reboot is done. If this
solves your problem you can add the statements to your /etc/rc.tcpip file.
filemon Command
Monitors the performance of the file system, and reports the I/O activity on
behalf of logical files, virtual memory segments, logical volumes, and
physical
volumes.
lsfs
...can be used to check what kind of filesystem a filesystem is
portmir
Apparently can be used to snoop on a tty/pty on AIX? A bit like screen
or VNC, but without the forethought requirement.
Restoring from a mksysb tape:
You can either boot from your mksysb Medium (band Streamer or cdrom) and
restore.
change your bootlist:
if you have a Band Streamer, so you can boot from AIX Installation Medium
and choose point 3 (Maintenance mode) and restore from media.
Determing what needs to be upgraded to advance to a higher os level:
you can do an "instfix -i | grep ML" to list which maintenance level is
incomplete and then show what filesets are required i.e. if AIX 5.2 ML02 is
incomplete do "instfix -ivk 5200-01_AIX_ML | grep ":" | grep not"
Nice page with AIX OpenSSH bff's, a script for creating bff's, a script
for setting up LBX for use with ssh, and more.

http://www.zip.com.au/~dtucker/openssh/
An example mksysb backup:
# mksysb /dev/rmt0
Creating tape boot image ...
Creating list of files to back up .
Backing up 68614 files..............................
17379 of 68614 files backed up (25%)..............................
25331 of 68614 files backed up (36%)..............................
25341 of 68614 files backed up (36%)..............................
55359 of 68614 files backed up (80%).................
68614 of 68614 files backed up (100%)
0512-038 mksysb: Backup Completed Successfully.
# echo $PATH
/usr/ucb:/bin:/usr/bin:/etc:/usr/lpp/ssp/bin:/usr/lib/instl:/usr/sbin:/usr/local
/bin
#
Note the PATH! The backup failed when I had a larger PATH.
IBM's document describing AIX to Solaris admins:
http://www.redbooks.ibm.com/abstracts/sg246584.html?Open
Changing the boot device:
Boot from aix cd's into maint shell and run the bosboot -ad /dev/hdisk0
command.
Or if the hd5 boot device is mirrored on hdisk0 and hdisk1 all you need
to do is boot into sms menu and ensure both disks are selected in the
boot order.
To access sms hit 1 before it does a speaker test.
/////
You can boot it up into what used to be called SMS mode .. i.e. hit F1 at
the 'keyboard' prompt ... You can change the boot device from there and
then make sure that you rerun your bosboot once you have booted up.
Couldn't be simpler
manctsr/ >lsvg rootvg -p
rootvg:
PV=5FNAME
PV STATE
TOTAL PPs FREE PPs
FREE DISTRIBUTION
hdisk0
active
542
245
28..00..00..108..109
hdisk1
active
542
245
28..00..00..108..109
manctsr/ >lsvg rootvg -l
rootvg:
LV NAME
TYPE
LPs PPs PVs LV STATE
MOUNT POINT
hd5
boot
1
2
2
closed/syncd N/A
hd6
paging
64
128 2
open/syncd
N/A
hd8
jfslog
1
2
2
open/syncd
N/A
hd4
jfs
1
2
2
open/syncd
/
hd2
jfs
27
54
2
open/syncd
/usr
hd9var
jfs
3
6
2
open/syncd
/var
hd3
jfs
5
10
2
open/syncd
/tmp
hd1
jfs
1
2
2
open/syncd
/home
apachelv
jfs
5
10
2
open/syncd
/apache
cv4=5Fhome
jfs
172 344 2
open/syncd
/export/cv4=5Fhome
cv4=5Fdec
jfs
15
30
2
open/syncd /export/cv4=5Fd=

ec
lv00

jfs

open/syncd

/mn/script

# lsvg rootvg -l
rootvg:
LV NAME
hd5
hd6
hd8
hd4
hd2
hd9var
hd3
hd1
hd10opt
log1
paging01
hd14

TYPE
boot
paging
jfslog
jfs
jfs
jfs
jfs
jfs
jfs
jfslog
paging
jfs

LPs
1
40
1
1
71
1
2
4
2
1
9
4

PPs
2
80
2
2
142
2
4
8
4
2
18
8

PVs
2
2
2
2
2
2
2
2
2
2
2
2

LV STATE
closed/syncd
open/syncd
open/syncd
open/syncd
open/syncd
open/syncd
open/syncd
open/syncd
open/syncd
closed/syncd
open/syncd
closed/syncd

MOUNT POINT
N/A
N/A
N/A
/
/usr
/var
/tmp
/home
/opt
N/A
N/A
N/A

PSSP has it's own 5 CD set (PSSP-3.5) and has to be ordered. Thanks
Don't panic! DISK_ERR4 (in errpt) is just a bad block relocation and
is a somewhat
"normal" occurrence. You only need to be concerned about these errors
if you notice them increasing in number on the same disk. So - you need
to track it but not necessarily replace it.
What kernel level (lslpp -l 'bos.[um]p*')
The hardware must be CHRP (Common Hardware Reference Platform) in order for
5.2 or greater to be supported.
You can determine that by issuing "bootinfo -p".
Nice article on AIX backups:
http://www.ahinc.com/aix/backup.htm
A fix for some kinds of tape backup problems:
please post the output of the following command
lsattr -El rmt0
we are looking for the value "ret error", if this is set to true then i'd
recommend changing it to false by issuing a smitty devices->Tape
devices->Change Tape Devices
How to create mksysb to a remote tape drive.
.
**** Note mksysb will not be bootable ***
.
Lets say tape drive is on systemA and you need to create
mksysb of system
You should be able to do rsh from systemB to systemA
Create the script remote_mksysb on systemB with following lines.
.
#!/usr/bin/ksh
rm -f /tmp/pipe

mknod /tmp/pipe p
mksysb /tmp/pipe &
dd if=/tmp/pipe | rsh systemA "dd of=/dev/rmt0 bs=1024 conv=sync"
rm /tmp/pipe
Generating a list of system calls known to the kernel:
dd if=/proc/$$/sysent of=/tmp/out
(check the end)
Reading a tape
mksysb
tctl rewind
tctl fsf 3
restore -Tqvf /dev/rmt0.1|pg
Savevg
tctl rewind
tctl fsf 5
restore -Tqvf /dev/rmt0.1|pg
I think that all these following commands mean the same thing :
# bootinfo -y
32
# prtconf -c
CPU Type: 32-bit
# bootinfo -K
32
On alt_disk_install:
We use it mainly to reduce downtime while upgrading the systems and also
to have a quick back out path. You can have the new built image install
on the alt disks. Switch boot device to the new partition and your newly
upgraded system up and running. If your system has any problems you
cannot fix with adjustments, you can switch back to the old partition
and bring out the old software.
Outage time is little over a reboot worth of time.
First, try to start the switch adapter daemon (worm) with rc.switch.
Good luck - these SP switch problems are notoriously hard to fix.
Enabling quotas on a JFS filesystem (and perhaps others) :
Edit /etc/filesystems and edit in quota=userquota on the relevant filesystem.
esmf04m-root> chfs -a "quota = userquota" /home
esmf04m-root> quotaon /home
esmf04m-root> quotacheck /home
If a program proves too large to compile with the default options due

to a toc overflow, please try adding:


-Wl,-b -Wl,bigtoc
...to your $CC or $LDFLAGS
bash-2.05b$ lsattr -El ent0
alt_addr
0x000000000000
True
busintr
553
False
busmem
0xf8080000
False
chksum_offload yes
receive checksum True
compat_mode
no
True
copy_bytes
2048
bytes
True
flow_ctrl
yes
Flow Control
True
intr_priority 3
False
intr_rate
10000
interrupt
True
jumbo_frames no
True
large_send
yes
resegmentation
True
media_speed
Auto_Negotiation
True
rom_mem
0xf8040000
False
rx_hog
1000
interrupt
True
rxbuf_pool_sz 2048
True
rxdesc_que_sz 1024
True
slih_hog
10
per interrupt True
tx_que_sz
8192
True
txdesc_que_sz 1024
True
use_alt_addr no
True
# lsslot -c
# Slot
U0.1-P1-I1
U0.1-P1-I2
U0.1-P1-I3
U0.1-P1-I4
U0.1-P1-I5
U0.1-P1-I6

pci
Description
PCI-X capable,
PCI-X capable,
PCI-X capable,
PCI-X capable,
PCI-X capable,
PCI-X capable,

64
32
32
64
64
64

Alternate ethernet address


Bus interrupt level
Bus memory address
Enable hardware transmit and
Gigabit Backward compatability
Copy packet if this many or less
Enable Transmit and Receive
Interrupt priority
Interrupt events processed per
Transmit jumbo frames
Enable hardware TX TCP
Media speed
ROM memory address
RX buffers processed per RX
Rcv buffer pool, make 2X rxdesc_que_sz
RX descriptor queue size
Max Interrupt events processed
Software transmit queue size
TX descriptor queue size

bit,
bit,
bit,
bit,
bit,
bit,

Enable alternate ethernet address

133MHz slot
66MHz slot
66MHz slot
133MHz slot
133MHz slot
133MHz slot

Operating System and Devices


Split a Mirrored Disk from a Volume Group

Device(s)
Empty
Empty
pci9 lai0
Empty
Empty
Empty

Beginning with AIX 5.2, snapshot support helps you protect the
consistency of your mirrored volume groups from potential disk failure.
Using the snapshot feature, you can split off a mirrored disk or disks
to use as a reliable (from the standpoint of the LVM metadata)
point-in-time backup of a volume group, and, when needed, reliably
reintegrate the split disks into the volume group. In the following
procedure, you first split off a mirrored disk from a volume group and
then you merge the split-off disk into the original volume group. To
further ensure the reliability of your snapshot, file systems must be
unmounted and applications that use raw logical volumes must be in a
known state (a state from which the application can recover if you need
to use the backup).
A volume group cannot be split if any one of the following is true:
A disk is already missing.
The last non-stale partition would be on the split-off volume group.
Any stale partitions exist in the volume group, unless you use the force
flag (-f) with the splitvg command.
Furthermore, the snapshot feature (specifically, the splitvg command)
cannot be used in enhanced or classic concurrent mode. The split-off
volume group cannot be made concurrent or enhanced concurrent and there
are limitations to the changes allowed for both the split-off and the
original volume group. For details, read the chvg command description in
AIX 5L Version 5.2 Commands Reference.
Ensure that the volume group is fully mirrored and that the mirror
exists on a disk or set of disks that contains only this set of mirrors.
To enable snapshot support, split off the original volume group (origVG)
to another disk or set of disks, using the following command:
splitvg origVG
At this point, you now have a reliable point-in-time backup of the
original volume group. Be aware, however, that you cannot change the
allocation on the split-off volume group.
Reactivate the split-off disk and merge it into the original volume
group using the following command:
joinvg origVG
At this point, the split-off volume group is now reintegrated with the
original volume group.
Configuring ntp
1) Stop the xntpd daemon
The xntpd daemon is managed by the System Resource Controller (SRC).
To verify that the xntpd daemon is active : lssrc -s xntpd : status
should be "active"
To stop the xntpd subsystem : stopsrc -s xntpd
Note : xntpd is automatically started in /etc/rc.tcpip. To verify this :
cat /etc/rc.tcpip | grep xntpd.
2) Modify the /etc/ntp.conf file
Put the following lines in the /etc/ntp.conf file :
server <IP address or FQDN of timeserver> prefer
driftfile /etc/ntp.drift
tracefile /etc/ntp.trace

3) Restart the xntp daemon


To restart the xntpd daemon :
startsrc -s xntpd
4) Check status of time synchronization
To check the status of the time synchronisation, use the ntpq utility.
ntpq -i : start ntpq interactively
ntpq> peer
remote
refid
st t when poll reach
delay offset
disp
========================================================================
======
* .PPS.
1 u 863 1024 377
0.92
0.160
0.47
The "offset" field displays the difference (in milliseconds) between the
system time and the reference time.
Type "quit" to exit the ntpq utility.
Kind of like ldd:
dump -X32 -Tv /bin/ls
Getting security notices from IBM:
https://techsupport.services.ibm.com/server/pseries.subscriptionSvcs?mode=2
Changing prngd to listen on a socket, using chsys:
esmfcws-root> chssys -s prngd -a '-f /dev/egd-pool -m 666 tcp/localhost:708'
0513-077 Subsystem has been changed.
esmfcws-root> ps -ef | grep prng
root 303186 1015878 0 19:19:43 pts/2 0:00 grep prng
root 1007836 262212 0 19:04:42
- 0:01
/opt/freeware/sbin/prngd -f /dev/egd-pool -m 666
esmfcws-root> stopsrc -s prngd
0513-044 The prngd Subsystem was requested to stop.
esmfcws-root> startsrc -s prngd
0513-059 The prngd Subsystem has been started. Subsystem PID is 852062.
esmfcws-root> ps -ef | grep prng
root 852062 262212 0 19:20:42
- 0:01
/opt/freeware/sbin/prngd -f /dev/egd-pool -m 666 tcp/localhost:708
root 1007846 1015878 0 19:20:54 pts/2 0:00 grep prng
esmfcws-root> /usr/lo
local
lost+found
esmfcws-root> /usr/local/sbin/gen-pas
Not bad, using prngd for entropy
cf4b01142c33d9bd06f1e50d6968f4da
esmfcws-root>
Or if prngd isn't already partially set up:
esmf04m-root> mkssys -s prngd -p /opt/freeware/sbin/prngd -u root -a
'-f /dev/egd-pool -m 666 tcp/localhost:708'
0513-071 The prngd Subsystem has been added.
esmf04m-root> lssrc -s prngd
Subsystem
Group
PID
Status
prngd
inoperative
esmf04m-root>

esmf04m-root> for i in 1 2 3 4 5 6 7 8; do ssh esmf0${i}m "mkssys -s


prngd -p /opt/freeware/sbin/prngd -u root -a '-f /dev/egd-pool -m 666
tcp/localhost:708'"; done
0513-071 The prngd Subsystem has been added.
0513-071 The prngd Subsystem has been added.
0513-071 The prngd Subsystem has been added.
0513-075 The new subsystem name is already on file.
0513-071 The prngd Subsystem has been added.
0513-071 The prngd Subsystem has been added.
0513-071 The prngd Subsystem has been added.
0513-071 The prngd Subsystem has been added.
esmf04m-root> for i in 1 2 3 4 5 6 7 8;
do ssh esmf0${i}m "stopsrc -s prngd"; done
0513-004 The Subsystem or Group, prngd, is currently inoperative.
0513-004 The Subsystem or Group, prngd, is currently inoperative.
0513-004 The Subsystem or Group, prngd, is currently inoperative.
0513-044 The prngd Subsystem was requested to stop.
0513-004 The Subsystem or Group, prngd, is currently inoperative.
0513-004 The Subsystem or Group, prngd, is currently inoperative.
0513-004 The Subsystem or Group, prngd, is currently inoperative.
0513-004 The Subsystem or Group, prngd, is currently inoperative.
esmf04m-root> for i in 1 2 3 4 5 6 7 8; do ssh esmf0${i}m "startsrc
-s prngd"; done
0513-059 The prngd Subsystem has been started. Subsystem PID is 25880.
0513-059 The prngd Subsystem has been started. Subsystem PID is 34508.
0513-059 The prngd Subsystem has been started. Subsystem PID is 30670.
0513-029 The prngd Subsystem is already active.
Multiple instances are not supported.
0513-059 The prngd Subsystem has been started. Subsystem PID is 37450.
0513-059 The prngd Subsystem has been started. Subsystem PID is 21266.
0513-059 The prngd Subsystem has been started. Subsystem PID is 27662.
0513-059 The prngd Subsystem has been started. Subsystem PID is 42666.
esmf04m-root>
Don't forget /etc/prngd.conf
Only JFS file systems can be large-file-enabled. If you use JFS2, they
handle files greater than 2GB out of the box.
Mike Badar
Checking on whether the "Trusted Computing Base" is configured:
tcbck
please issue the following commands:
fuser -c /mnt
and check for any PID that maybe locking your CD device. If you have any,
you can kill them all bye issuing
fuser -ck /mnt
and try to eject the CDROM. If this doesn't work at all, then check for
the cdromd daemon (new feature ported for Solaris into AIX) with the
following command:
lssrc -a | grep cdrom

if cdromd is running, then you should umount the cdrom device:


cdmount
cdumount /cdrom/cdXX
cdeject
Linux, by default, requires any NFS mount to use a reserved port below 1024.
AIX, by default, uses ports above 1024. Use the following command to
restrict AIX to the reserved port range:
# /usr/sbin/nfso -o nfs_use_reserved_ports=1
Creating a subsystem:
mkssys -s smbd -p /opt/freeware/sbin/smbd -u 0 -a "-D" -d -q -S -n 15
-f 9 -G tcpip
But it's useless since smbd make fork.
Sincerely,
Lev
AIX system firmware upgrade (pSeries?) :
Sysplanar is something like motherboard in Intel domain, i.e. it is hardware.
It is possible to upgrade firmware when in maintenance mode - when there
is E1F1 on the LCD display right on the machine press key 1 (not on the
numeric keyboard) if you have ASCII terminal.
If you have graphical console press functional key 'F1'
you will be directed to standalone diagnostics menu
the firmware you can find here together with description:
http://techsupport.services.ibm.com/server/mdownload2/download.html
if you cannot boot and have the shell prompt you can do it according
the paragraph 'Updating with the Diagnostic Service Aid Method' - see
the description from the link mentioned above.
in the diagnostics menu you can find 'current firmware as well (there
is something like 'Display config' there')
Diagnostics can be ran against a single device while online
use the
diag -d devicename
bindprocessor -q ( will give you the number of proc. )
lscfg -v ( will give your system info. )
lsmcode -A ( will give you the proc. firmware + others )
chuser maxage=0 username
Some good stuff on OpenMP and AIX (among other things):
http://www.rz.rwth-aachen.de/ewomp03/OMPtools.html
Someone on AIX-L indicated that this was a good vmtune for a database system:
/usr/samples/kernel/vmtune -p 5 -P 20
( to set the max perm and min
perm values)
Getting an AIX machine's serial number:
esmf04m-root> uname -m
0020D3FA4C00

LoadLeveler upgrade PMR# 70374-227 - website only showing linux downloads


of loadleveler, no AIX downloads
From a post on AIX-L:
IBM recommends the following formula to calculate the amount of paging
space you need...
For memories larger than 256 MB, the following is recommended:
total paging space = 512 MB + (memory size - 256 MB) * 1.25
For 1024MB RAM = 1600MB Paging Space
1 LP = 64 MB = add 17 LP's to = 1600MB
This is what we use while running AIX 5L.
Changing a forgotten root password on AIX:
1.
Insert the product media for the same version and level as the
current installation into the appropriate drive.
2.
Power on the machine.
3.
When the screen of icons appears, or when you hear a double
beep, press the F1 key repeatedly until the System Management Services
menu appears.
4.
Select Multiboot.
5.
Select Install From.
6.
Select the device that holds the product media and then select
Install.
7.
Select the AIX version icon.
8.
Define your current system as the system console by pressing the
F1 key and then press Enter.
9.
Select the number of your preferred language and press Enter.
10.
Choose Start Maintenance Mode for System Recovery by typing 3
and press Enter.
11.
Select Access a Root Volume Group. A message displays explaining
that you will not be able to return to the Installation menus without
rebooting if you change the root volume group at this point.
12.
Type 0 and press Enter.
13.
Type the number of the appropriate volume group from the list
and press Enter.
14.
Select Access this Volume Group and start a shell by typing 1
and press Enter.
15.
At the # (number sign) prompt, type the passwd command at the
command line prompt to reset the root password. For example:
16.
17.
18.
Enter the

# passwd
Changing password for "root"
root's New password:
new password again:

19.
To write everything from the buffer to the hard disk and reboot
the system, type the following:
sync;sync;sync;reboot
turning off diagnostic lights:
/usr/lpp/diagnostics/bin/usysfault -s normal

AIX filesystems and quotas:


http://unix.derkeiler.com/Newsgroups/comp.unix.aix/2003-11/0744.html
/////
bluesky's /home is JFS, not JFS2, according to the mount command on
/home's NFS server.
I also called IBM support to verify what we've been seeing on the web.
The tech I reached indicated that:
1)
2)
3)
4)

JFS2 does not support quotas in AIX 5.1 or AIX 5.2


Many customers have been requesting quotas for JFS2
He has not heard of any plans to add quota support to JFS2 for AIX 5.3
He would not be surprised if quotas for JFS2 are added to the IBM AIX
roadmap sometime soon, given the high demand
/////
We now have reason to want to move from 5.1 to 5.3 (we want quotas on
/ptmp, and we want /ptmp to be a bit under 2 terrabytes; JFS in AIX 5.1
does quotas, but not 1T+ filesystems, and JFS 2 on AIX 5.1 does 1T+
filesystems, but not quotas; I understand that 5.3's JFS2 does large
filesystems as well as quotas).
/////
The new piece of news is, that if we were to gateway lustre to AIX over
SMB/CIFS, we -wouldn't- have to resort to "sharity", which was a product
that IBM was unlikely to be able to support. It turns out that AIX 5.2
and up, include an SMB/CIFS client. So we could upgrade to AIX 5.3 (and
we want to anyway, to get quotas in JFS2), and use IBM's implementation
of an SMB/CIFS client, with samba on esmft2.
/////
I'm shy to even try IBM's JFS, because it comes from OS/2 and not AIX.
JFS really lacked a _lot_ of traditional UNIX capabilities in its first
releases on Linux, unlike XFS.
/////
The consensus on comp.unix.aix appears to be that JFS (1) will not allow
one-large /ptmp like Charlie wants.
Recall that we recently moved /ptmp from JFS2 to JFS to get quotas.
It turns out that in AIX 5.3, JFS2 can do quotas.
2005-06-23
IBM informs me that PSSP is never going to be ported to AIX 5.3. There is
a followon product like PSSP called "CSM", and it runs on recent AIX and
Linux, but it is not going to support an SP2 switch, like the ESMF has.
Redirect console messages to a specific file of your choosing:
swcons /tmp/console.messages
Checking if an AIX machine is still marketed and/or supported by IBM:
http://www-306.ibm.com/common/ssi/OIX.wss
Like tcpdump/ethereal?
iptrace -e -i lo0 /tmp/iptrace.out, ( let it run for 5 minutes, kill it)
ipreport /tmp/iptrace.out
# lscfg -vp | grep -e "Memory DIMM" -e "Size"
Memory DIMM:
Size........................256

Memory DIMM:
Size........................256
Memory DIMM:
Size........................256
Memory DIMM:
Size........................256
Clipped from a message on AIX-L - outlines the procedure for replacing
a bad disk in a logical volume:
u must procee in tyhos order:
1- unmirror the rootvg (unmirror rootvg hdisk1)
2- extrcat hdisk1 from rootvg (reducevg rootvg hdisk1) hidsk1 should not
have any other data, if yes, move them first
3- rmdev -dl hdisk1
4- put the new pv
5- cvrmgrl
6- extendvg rootvg "the new pv"
7-mirrorvg rootvg hdsikxxx
/////
And another:
Use this redbook, page 182, section 6.5.1.
http://www.redbooks.ibm.com/abstracts/SG245496.html?Open
On -some- IBM (PowerPC) machines, you boot to singleuser by hitting F5
during the boot
Where to get firmware for pSeries machines:
http://techsupport.services.ibm.com/server/mdownload
"I believe the p in p-Series stands for Performance.
While the i in i-Series stands for Integrated."
"I believe the p in pSeries stands for Power as in the power 5 chip
architecture the hardware uses."
OK, from the (0)> prompt enter either ? or h - these subcommands list
all the available subcommands you can key into the kdb at the (0)>
prompt. Unfortunately, unless you know what you are looking for its
hard to understand the output.
The common commands to use are stat and staus - which will show the
status of the system and dump, vmlog and vmstat will show any memory
errors that may have caused the dump.
You really need an indepth knowledge of how the system works to
decipher most of the output and Im afraid theres no easy way to do it.
This link has a list of all the kdb subcommands
http://www16.boulder.ibm.com/pseries/en_US/aixprggd/kdb/kdb_cmd.htm#kdb_cmd
Regards,
Paul (on AIX-L)
bindprocessor is for binding a process to a specific CPU
esmf04m-root> sysdumpdev -l

primary
secondary
copy directory
forced copy flag
always allow dump
dump compression
Wed Oct 26 13:43:31

/dev/lv00
/dev/sysdumpnull
/var/adm/ras
TRUE
TRUE
OFF

From a IBM AIX partner:


GIL is a kernel process, which does TCP/IP timing. It handles
transmission errors, ACKs, etc. Normally it shouldn't consume too much
CPU, but it can take quite a lot of CPU when the system is using the
network a lot (like with NFS filesystems which are heavily used).
.
The kproc gil runs the TCP/IP timer driven operations. Every 200ms, and
every 500ms the GIL thread is kicked to go run protocol timers. With TCP
up (which is ALWAYS the case), TCP timers are called which end up
looking at every connection on the system (to do retransmission, delayed
acks,etc). In version 4 this work is all done on a multi-threaded kproc
to promote concurrency and SMP scalability.gil.
GIL is one of the kprocs (kernel processes) in AIX 4.3.3, 5.1 and 5.2.
Since the advent of topas in AIX 4.3.3 and changes made to the ps
command in AIX 5.1, system administrators have become aware of this
class of processes, which are not new to AIX. These kprocs have no
user interfaces and have been largely undocumented in base
documentation. Once a kproc is started, typically it stays in the
process table until the next reboot. The system resources used by any
one kproc are accounted as kernel resources, so no separate account is
kept of resources used by an individual kproc.
.
Most of these kprocs are NOT described in base AIX documentation and
the descriptions below may be the most complete that can be found.
.
GIL term is an acronym for "Generalized Interrupt Level" and was
created by the Open Software Foundation (OSF), This is the networking
daemon responsible for processing all the network interrupts, including
incoming packets, tcp timers, etc.
.
Exactly how these kprocs function and much of their expected behavior
is considered IBM proprietary information.
In the event of a power failure, from "jessie" on the AIX-L mailing list:
check you error report for an entry that states
EPOW_SUS_CHRP
if there is an entry post it in detail to have a look at the Power status
registers, and the sense data.
If it is not a true failure such as a fan, or power supply then you would
notice in the logs that the problem started after a shutdown, or power
failure...
"pstat -S will associate processor to process but not
process to processor. It is a matter of opinion if
this is what you want. "
Superb page on AIX:

http://www.douzhe.com/docs/jh/9/97757.html
...but I think there may be a bit of a mistake on how to do backups to
a remote tape drive... dd -should- work for that, but IME, it doesn't.
AIX supports large pages with 32-bit and 64-bit kernels. Applications,
either 32-bit or 64-bit,
can take advantage of large pages. The extended common object file format
(XCOFF or
XCOFF64), the object file format for AIX, provides a flag to identify
binaries if they are set (or
cleared) to use large pages (or turn the large pages flag) through ldedit10.
The flag can also
be turned on at load time (ld)10 with the following commands:
ld command: ld -blpdata -o a.out
ldedit command: ldedit -blpdata a.out (or -bnolpdata a.out)
An AIX upgrade procedure:
I just went through this with my company, and wrote some directions as
to what we should do; I will share this document with you.
******NOTE******
Some of this is specific to my company, but you may find it useful
anyhow
****************
You should do a complete configuration management scheme/snapshot of
your system:
1) execute df -Ik
2) execute lsvg, lsvg -p for each vg, and lsvg -l for each vg
3) execute lspv
4) execute bootlist -m normal -o and bootlist -m service -o
5) execute bootinfo -y and bootinfo -k
6) execute lspv -a
7) execute lsvg -M rootvg
8) execute lsconf
You want to document everything from above so that you can have this to
re-create your system should there be any mistakes or unfortunate
events.
This just helps you to know exactly what your system looks like, before
you make any changes.
Go to this site and you will get exactly what you need:
http://www-03.ibm.com/servers/eserver/support/unixservers/aixfixes.html
Choose the -> AIX 5.3 link and choose follow the prompts to get you the
correct maintenance level(s).
Please let me know if this is of any help.
Thanks.
LeRoy S. Phillips 'Phil'
UNIX System Administrator (AIX/SAP)
From a message on IBM-AIX-L:
I get these stupid messages all the time and I just filter them and send

them to junk.
I've tried making the sysdumpdev bigger, but it comes back and wants it
to be just a little bigger than I made it.
IBM does recommend that you use a second sysdumpdev.
////////////////////////////////////
SYSTEM DUMP
////////////////////////////////////
IBM recommends:
Don't mirror the system dump device
Don't use compression on the dump device
Don't use a secondary dump device unless it is on a separate device,
separate cable and separate i/o card.
sysdumpdev -l
sysdumpdev -e
sysdumpdev -L
sysdumpdev -c
when the next
sysdumpdev -p
permanently
sysdumpdev -P
dump device a

Lists current dump destination.


Estimates dumpsize of the current system in bytes.
Displays information about the previous dump.
<-- the system dump device will not be compressed
dump is taken
(dump device) -P
Sets the default dump device,
-s /dev/sysdumpnull
<-bit bucket (recommended)

sysdumpstart -p
sysdumpstart -s

makes the secondary

Starts a dump and writes to the primary dump device.


Starts a dump and writes to the secondary dump device.

(MCA machine can also dump if key is in service position and the reset
button is pressed)
Analyze dump file :echo "stat status t -m" | crash /var/adm/ras/vmcore.0
$ errpt
IDENTIFIER TIMESTAMP T C RESOURCE_NAME DESCRIPTION
F89FB899 0822150005 P O dumpcheck
The copy directory is too small
This message is the result of a dump device check. You can fix this by
increasing the size of your dump device. If you are using the default
dump device (/dev/hd6) then increase your paging size or go to smit dump
and "select System Dump Compression". Myself, I don't like to use the
default dump device so I create a sysdumplv and make sure I have enough
space. To check space needed go to smit dump and select "Show Estimated
Dump Size" this will give you an idea about the size needed.
The copy directory is whatever sysdumpdev says it is.
Run sysdumpdev and you will get something like
#sysdumpdev
primary
/dev/hd6
secondary
/dev/sysdumpnull
copy directory
/var/adm/ras
forced copy flag
TRUE
always allow dump
FALSE
dump compression
ON
# sysdumpdev -e
0453-041 Estimated dump size in bytes: 57881395
Divide this number by 1024. This is the free space that is needed in
your copy directory. Compare it to a df -k or divide this number by
512. This is the free space that is needed in your copy directory.

Compare it to a df.
================================================================================
scraidmgr -A -cyes -l'scraid0' -r '5' -b '16' -n '350033' -e '1A 1B 1C 1D 1E 1F'
-q '16' -f 'no' -g 'yes'
================================================================================
HMC Commands
lshmc n (lists dynamic IP addresses served by HMC)
lssyscfg r sys F name,ipaddr (lists managed system attributes)
lssysconn r sys (lists attributes of managed systems)
lssysconn r all (lists all known managed systems with attributes)
rmsysconn o remove ip <ipaddr from lssysconn list> (removes a managed system fro
m the HMC)
mkvterm m {msys} p {lpar} (opens a command line vterm from an ssh session)
rmvterm m {msys} p {lpar} (closes an open vterm for a partition)
Activate a partition
chsysstate m managedsysname r lpar o on n partitionname f profilename b normal
chsysstate m managedsysname r lpar o on n partitionname f profilename b sms
Shutdown a partition
chsysstate m managedsysname r lpar o {shutdown/ossshutdown} n partitionname [-im
med][-restart]
VIO Server Commands
lsdev virtual (list all virtual devices on VIO server partitions)
lsmap all (lists mapping between physical and logical devices)
oem_setup_env (change to OEM [AIX] environment on VIO server)
Create Shared Ethernet Adapter (SEA) on VIO Server
mkvdev sea{physical adapt} vadapter {virtual eth adapt} default {dflt virtual ad
apt} defaultid {dflt vlan ID}
SEA Failover
ent0 GigE adapter
ent1 Virt Eth VLAN1 (Defined with a priority in the partition profile)
ent2 Virt Eth VLAN 99 (Control)
mkvdev sea ent0 vadapter ent1 default ent1 defaultid 1 attr ha_mode=auto ctl_cha
n=ent2 (Creates ent3 as the Shared Ethernet Adapter)
Create Virtual Storage Device Mapping
mkvdev vdev {LV or hdisk} vadapter {vhost adapt} dev {virt dev name}
Sharing a Single SAN LUN from Two VIO Servers to a Single VIO Client LPAR
hdisk = SAN LUN (on vioa server)
hdisk4 = SAN LUN (on viob, same LUN as vioa)
chdev dev hdisk3 attr reserve_policy=no_reserve (from vioa to prevent a
reserve on the disk)
chdev dev hdisk4 attr reserve_policy=no_reserve (from viob to prevent a
reserve on the disk)
mkvdev vdev hdisk3 vadapter vhost0 dev hdisk3_v (from vioa)
mkvdev vdev hdisk4 vadapter vhost0 dev hdisk4_v (from viob)
VIO Client would see a single LUN with two paths.
spath l hdiskx (where hdiskx is the newly discovered disk)
This will show two paths, one down vscsi0 and the other down vscsi1.
AIX Performance TidBits and Starter Set of Tuneables
Current starter set of recommended AIX 5.3 Performance Parameters. Please

ensure you test these first before implementing in production as your mileage
may vary.
Network
no p o rfc1323=1
no p o sb_max=1310720
no p o tcp_sendspace=262144
no p o tcp_recvspace=262144
no p o udp_sendspace=65536
no p o udp_recvspace=655360
nfso p o rfc_1323=1
NB Network settings also need to be applied to the adapters
nfso p o nfs_socketsize=600000
nfso p o nfs_tcp_socketsize=600000
Memory Settings
vmo p o minperm%=5
vmo p o maxperm%=80
vmo p o maxclient%=80
Let
vmo
vmo
vmo
vmo

strict_maxperm and strict_maxclient default


p o minfree=960
p o maxfree=1088
p o lru_file_repage=0
p o lru_poll_interval=10

IO Settings
Let minpgahead and J2_minPageReadAhead default
ioo p o j2_maxPageReadAhead=128
ioo p o maxpgahead=16
ioo p o j2_maxRandomWrite=32
ioo p o maxrandwrt=32
ioo p o j2_nBufferPerPagerDevice=1024
ioo p o pv_min_pbug=1024
ioo p o numfsbufs=2048
If doing lots of raw I/O you may want to change lvm_bufcnt
Default is 9
ioo p o lvm_bufcnt=12
Others left to default that you may want to tweak include:
ioo p o numclust=1
ioo p o j2_nRandomCluster=0
ioo p o j2_nPagesPerWriteBehindCluster=32
Useful Commands
vmstat v or l or s lvmo
vmo o iostat (many new flags)
ioo o svmon
schedo o filemon
lvmstat fileplace
Useful Links
1. Lparmon www.alphaworks.ibm.com/tech/lparmon
2. Nmon www.ibm.com/collaboration/wiki/display/WikiPtype/nmon
3. Nmon Analyser
www-941.ibm.com/collaboration/wiki/display/WikiPtype/nmonanalyser
4. vmo, ioo, vmstat, lvmo and other AIX commands
http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.doc/doc/

base/commandsreference.htm
================================================================================
/usr/sbin/tunrestore
Contains the tunrestore command.
/tunables
Contains tunable files.
/etc/tunables/nextboot
Contains the values to be applied during the next boot.
/etc/tunables/lastboot
Contains the values of all tunables after the last boot.
/etc/tunables/lastboot.log
Contains messages, warnings and errors emitted by tunrestore
during the last boot.
================================================================================
What speed is my CPU? ( for OS < 5.x)
This document applies to AIX Versions 4.x.
Procedure
While there is not a direct command to determine processor speed in AIX, the
best place to start is with the uname command. Executing uname -m produces
output of the following form:
xxyyyyyymmss
The meanings of the placeholders are as follows:
xx = 00
yyyyyy = Unique CPU ID
mm = Model ID <- these are the numbers to use to determine CPU
speed
ss = 00 (Submodel)
By cross-referencing the mm values from the uname -m output with the table
below, you can easily determine the processor speed.
Model ID
Machine Type
Processor Speed
Architecture
02
7015-930
25
Power
10
7013-530
25
Power
10
7016-730
25
Power
11
7013-540
30
Power
14
7013-540
30
Power
18
7013-53H
33
Power
1C
7013-550
41.6
Power
20
7015-930
25
Power
2E
7015-950
41
Power
30
7013-520
20
Power
31
7012-320
20
Power
34
7013-52H
25
Power
35
7012-32H
25
Power
37
7012-340
33
Power
38
7012-350
41
Power
41
7011-220
33
RSC
43
7008-M20
33
Power
43
7008-M2A
33
Power
46
7011-250
66
PowerPC
47
7011-230
45
RSC
48
7009-C10
80
PowerPC
4C
See Note 1.

57
7012-390
67
Power2
57
7030-3BT
67
Power2
57
9076-SP2 Thin
67
Power2
58
7012-380
59
Power2
58
7030-3AT
59
Power2
59
7012-39H
67
Power2
59
9076-SP2 Thin w/L2
67
Power2
5C
7013-560
50
Power
63
7015-970
50
Power
63
7015-97B
50
Power
64
7015-980
62.5
Power
64
7015-98B
62.5
Power
66
7013-580
62.5
Power
67
7013-570
50
Power
67
7015-R10
50
Power
70
7013-590
66
Power2
70
9076-SP2 Wide
66
Power2
71
7013-58H
55
Power2
72
7013-59H
66
Power2
72
7015-R20
66
Power2
72
9076-SP2 Wide
66
Power2
75
7012-370
62
Power
75
7012-375
62
Power
75
9076-SP1 Thin
62
Power
76
7012-360
50
Power
76
7012-365
50
Power
77
7012-350
41
Power
77
7012-355
41
Power
77
7013-55L
41.6
Power
79
7013-591
77
Power2
79
9076-SP2 Wide
77
Power2
80
7015-990
71.5
Power2
81
7015-R24
71.5
Power2
89
7013-595
135
P2SC
89
9076-SP2 Wide
135
P2SC
94
7012-397
160
P2SC
94
9076-SP2 Thin
160
P2SC
A0
7013-J30
75
PowerPC
A1
7013-J40
112
PowerPC
A3
7015-R30
See Note 2.
PowerPC
A4
7015-R40
See Note 2.
PowerPC
A4
7015-R50
See Note 2.
PowerPC
A4
9076-SP2 High
See Note 2.
PowerPC
A6
7012-G30
See Note 2.
PowerPC
A7
7012-G40
See Note 2.
PowerPC
C0
7024-E20
See Note 3.
PowerPC
C0
7024-E30
See Note 3.
PowerPC
C4
7025-F30
See Note 3.
PowerPC
F0
7007-N40
50
ThinkPad
NOTES:
Systems where uname -m outputs a model ID of 4C:
In general, the only way to determine the processor speed of a machine with a
model ID of 4C is to reboot into System Management Services and choose the
system configuration options. However, in some cases the information gained
from the uname -M command can be helpful.
uname -M
Machine Type
Processor Speed
Processor Architecture
IBM,7017-S70
7017-S70
125
RS64
IBM,7017-S7A
7017-S7A
262
RD64-II
IBM,7017-S80
7017-S80
450
RS-III
IBM,7025-F40
7025-F40
166/233
PowerPC

IBM,7025-F50
7025-F50
See Note 4.
PowerPC
IBM,7026-H10
7026-H10
166/233
PowerPC
IBM,7026-H50
7026-H50
See Note 4.
PowerPC
IBM,7026-H70
7026-H70
340
RS64-II
IBM,Model 7042/7043
(ED)
7043-140
166/200/233/332
PowerPC
IBM,Model 7042/7043
(ED)
7043-150
375
PowerPC
IBM,Model 7042/7043
(ED)
7043-240
166/233
PowerPC
IBM,7043-260
7043-260
200
Power3
IBM,7248
7248-100
100
PowerPersonal
IBM,7248
7248-120
120
PowerPersonal
IBM,7248
7248-132
132
PowerPersonal
IBM,9076-270
9076-SP Silver Node See Note 4.
PowerPC
J-Series, R-Series, and G-Series systems:
You can determine the processor speed in an MCA SMP system from the FRU
number of the CPU card by using the following command:
lscfg -vl cpucard0 | grep FRU
This will produce the following output:
FRU Number..................C1D
FRU Number
Processor Type
Processor Speed
E1D
PowerPC 601
75
C1D
PowerPC 601
75
C4D
PowerPC 604
112
E4D
PowerPC 604
112
X4D
PowerPC 604e
200
E-Series and F-30 systems:
For the E-series and F-30 systems, use the following process to determine CPU
speed. Execute:
lscfg -vp | more
Look for the following stanza:
procF0
CPU Card
Part Number.................093H5280
EC Level....................00E76527
Serial Number...............17700008
FRU Number..................093H2431
Displayable Message.........CPU Card
Device Specific.(PL)........
Device Specific.(ZA)........PS=166,PB=066,PCI=033,NP=001,CL=02,PBH
Z=64467000,PM=2.5,L2=1024
Device Specific.(RM)........10031997 140951 VIC97276
ROS Level and ID............03071997 135048
In the section Device Specific.(ZA), the section PS= (boldface here) is the
processor speed in MHz.
F-50 and H-50 systems and SP Silver Node:
The following commands can be used to determine the processor speed of an
F-50 system. Execute:
lscfg -vp | more
Look for the following stanza:
Orca M5 CPU:
Part Number.................08L1010
EC Level....................E78405
Serial Number...............L209034579
FRU Number..................93H8945
Manufacture ID..............IBM980
Version.....................RS6K
Displayable Message.........OrcaM5 CPU DD1.3
Product Specific.(ZC).......PS=0013c9eb00,PB=0009e4f580,SB=0004f27
ac0,NP=02,PF=461,PV=05,KV=01,CL=1

In the line containing Product Specific.(ZC) , the entry PS= (boldface here)
is the processor speed in hexadecimal notation. To convert this to an actual
speed, use the following conversions:
h 0009E4F580 = 166 MHz
h 0013C9EB00 = 332 MHz
The value PF= (also boldface here) indicates the processor configuration.
h 251 = 1 way 166 MHz
h 261 = 2 way 166 MHz
h 451 = 1 way 332 MHz
h 461 = 2 way 332 MHz
================================================================================
AIX 5.1 and above:
This sets the number of 256MB segments used for data by rsserver to 8
segments or 2GB. For machines with less memory, you can set this value lower
as appropriate (e.g. change the 8 to 4 for a maximum of 1GB data). It can be
set higher but this can have system-wide side effects that are tricky to
diagnose, it's better to reduce the size of data you're bringing into your
cubes.
ldedit -bmaxdata:0x80000000 rsserver
To confirm the MAXDATA setting:
dump -o rsserver
Look on the last line for the number below MAXDATA. The setting of 0x00000000
implies the default 256MB limit.
You can confirm the *exact* amount of data being used by rsserver by using
svmon:
svmon -P <rsserver pid> -i 10
================================================================================
Revert a VXVM disk back to LVM control: chpv -C powerpath6
================================================================================
Multi-pathing data collection
SDD (all versions of AIX)
Issue the following commands and capture the output. This data is not found in a
snap.
Preferably provide the output of these commands during the failure.
datapath query adapter
datapath query device
lsvpcfg
MPIO (available on AIX 5.2 and above)
Issue the following commands and capture the output. This data is not included i
n a
snap.
pcmpath query adapter
pcmpath query device
pcmpath query essmap
================================================================================
How do you tell if a route is in the ODM or not (besides rebooting to
see if it comes back)?

lsattr -El inet0


How do you clear a routing table? route -f (flush)
To establish a default gateway, enter:
route add 0 192.100.13.7
Add static routes with smitty smit mkroute or :
chdev -l inet0 -a addroute=XXXXXXXXXXXXXXXXXX
Remove static routes with smitty smit rmroute :
chdev -l inet0 -a delroute=XXXXXXXXXXXXXXXXXX
chdev -l inet0 -a delroute=net,destination_address,gateway,subnet_mask chdev calls a routine that will delete the route from the ODM.
/usr/lib/methods/definet
/usr/lib/methods/cfginet
odmget -q "attribute = route" CuAt
odmget -q name=inet0 CuAt
================================================================================
ptree in aix: proctree PID; ps -T PID; pstree (open source)
Solaris 2.9
pflags [-r] [pid | core ]
pcred [pid | core ]
pmap [-rxIF] [pid | core ]
pldd [-F] [pid | core ]
pstack [-F] [pid | core ]
pfiles [-F] [pid]
ptime command [argument]

-vs-

AIX 5.2
procflags [-r] [pid]
proccred [pid]
procmap [-F] [pid]
procldd [-F] [pid]
procstack [-F] [pid]
procfiles [- n F] [pid]
Not available

================================================================================
slibclean - remove inactive memory libraries
================================================================================
VIO
as padmin (or setup root w/ a password on VIO server, do a "oem_setup_env, passw
d")
/usr/ios/cli/ioscli lspv -size
/usr/ios/cli/ioscli lsmap -all
/usr/ios/cli/ioscli lsmap -all -net
/usr/ios/cli/ioscli lsdev -type disk
/usr/ios/cli/ioscli lspv -field name pvid vg -fmt :
/usr/ios/cli/ioscli lspv -field name pvid -fmt :
/usr/ios/cli/ioscli license

oem_setup_env
root> backupios -file /mnt_mksysb/LVIO_jan_16 -mksysb
================================================================================
If scp/ssh doesnt work on other node, put the path for them in /etc/envionrment
Make a src for ssh
usr/bin/mkssys -s sshd -p /usr/local/sbin/sshd -a '-D' -u 0 -S -n 15 -f 9 -R G
local
================================================================================
================================================================================

Das könnte Ihnen auch gefallen