Sunday 24 April 2011

AIX QuickSheet

Filesystems
Default rootvg lesystems
hd1 - /home
hd2 - /usr
hd3 - /tmp
hd4 - /
hd5 - Boot logical volume
hd6 - paging space
hd8 - log device
hd9var - /var
hd10opt - /opt
Remove mount point entry
rmfs /mymount
Grow the
and the LV for /mymount(Add -r to remove mount point)/var lesystem by 1 Gig
chfs -a size=+1G /var
Grow the
/var lesystem to 1 Gig
chfs -a size=1G /var
Find the le usage on a lesystem
du -smx /
List lesystems in a
grep-able format
lsfs
Create a log device on
datavg VG
mklv -t jfs2log -y datalog1 datavg 1
Format the log device just created
logform /dev/datalog1
Format the log device associated with the fs on LV datalv1
logform /dev/datalv1


Kernel Tuning
no
is used in the following examples. vmo, no, nfso, ioo, raso, and
schedo
Reset all networking tunables to the default values
all use similar syntax.
no -D
List all networking tunables
(Changed values will be listed)
no -a
Set a tunable temporarily (until reboot)
no -o use isno=1
Set a tunable at next reboot
no -r -o use isno=1
Set current value of tunable as well as reboot
no -p -o use isno=1
List all settings, defaults, min, max, and next boot values
no -L
List all sys0 tunables
lsattr -El sys0
Change the maximum number of user processes to 2048
chdev -l sys0 -a maxuproc=2048
Check to see if SMT is enabled
smtctl

ODM
PdDv, PdAt, PdCn - Prede ned Databases
CuDv, CuAt, CuDep, CuDvDr, CuVPD - Customized Databases
Query CuDv for a speci c item
odmget -q name=hdisk0 CuDv
Query CuDv using the \like" syntax
odmget -q "name like hdisk?" CuDv
Query CuDv using a complex query
odmget -q "name like hdisk? and parent like vscsi?" CuDv

Devices
List all devices on a system
lsdev
Device states are: Unde ned; Supported Device, De ned; Not usable
(once seen), Available; Usable
List all disk devices on a system (Some other devices are: adapter,
driver, logical volume, processor)
lsdev -Cc disk
List all customized (existing) device classes (-P for complete list)
lsdev -C -r class
Remove hdisk5
rmdev -dl hdisk5
Get device address of hdisk1
getconf DISK DEVNAME hdisk1
or bootinfo -o hdisk1
Get the size (in MB) of hdisk1
getconf DISK SIZE hdisk1
or bootinfo -s hdisk1
Find the slot of a PCI Ethernet adapter
lsslot -c pci -l ent0
Find the (virtual) location of an Ethernet adapter
lscfg -l ent1
Find the location codes of all devices in the system
lscfg
List all MPIO paths for hdisk0
lspath -l hdisk0
Find the WWN of the fcs0 HBA adapter
lscfg -vl fcs0 | grep Network
Temporarily change console output to
swcons /console.out
/console.out(Use swcons to change back.)


Tasks
Change port type of (a 2Gb) HBA
(4Gb may use di
erent setting)
rmdev -d -l fcnet0
rmdev -d -l fscsi0
chdev -l fcs0 -a link type=pt2pt
cfgmgr
Mirroring rootvg to hdisk1
extendvg rootvg hdisk1
mirrorvg rootvg
bosboot -ad hdisk0
bosboot -ad hdisk1
bootlist -m normal hdisk0 hdisk1
Mount a CD ROM to /mnt
mount -rv cdrfs /dev/cd0 /mnt
Create a VG, LV, and FS, mirror, and create mirrored LV
mkvg -s 256 -y datavg hdisk1
(PP size is 1/4 Gig)
mklv -t jfs2log -y dataloglv datavg 1
logform /dev/dataloglv
mklv -t jfs2 -y data01lv datavg 8
(2 Gig LV)
crfs -v jfs2 -d data01lv -m /data01 -A yes
extendvg datavg hdisk2
mklvcopy dataloglv 2
(Note use of mirrorvg in next example)
mklvcopy data01lv 2
syncvg -v datavg
lsvg -l datavg
will now list 2 PPs for every LP
mklv -c 2 -t jfs2 -y data02lv datavg 8
(2 Gig LV)
crfs -v jfs2 -d data02lv -m /data02 -A yes
mount -a
Move a VG from hdisk1 to hdisk2
extendvg datavg hdisk2
mirrorvg datavg hdisk2
unmirrorvg datavg hdisk1
reducevg datavg hdisk1
Find the free space on PV hdisk1
lspv hdisk1
(Look for \FREE PPs")

Users and Groups
List all settings for root user in
grepable format
lsuser -f root
List
just the user names
lsuser -a id ALL | sed 's/ id.*$//'
Find the fsize value for user wfavorit
lsuser -a fsize wfavorit
Change the fsize value for user wfavorit
chuser fsize=-1 wfavorit

Networking
(
The examples here assume that the default TCP/IP con gurationrc.net) method is used. If the alternate method of using rc.bsdnet
is used then some of these examples may not apply.
Determine if
lsattr -El inet0 -a bootup option
rc.bsdnet is used over rc.net
TCP/IP related daemon startup script
/etc/rc.tcpip
To view the route table
netstat -r
To view the route table from the ODM DB
lsattr -EHl inet0 -a route
Temporarily add a default route
route add default 192.168.1.1
Temporarily add an address to an interface
ifconfig en0 192.168.1.2 netmask 255.255.255.0
Temporarily add an alias to an interface
ifconfig en0 192.168.1.3 netmask 255.255.255.0 alias
To permanently add an IP address to the en1 interface
chdev -l en1 -a netaddr=192.168.1.1 -a netmask=0xffffff00
Permanently add an alias to an interface
chdev -l en0 -a alias4=192.168.1.3,255.255.255.0
Remove a permanently added alias from an interface
chdev -l en0 -a delalias4=192.168.1.3,255.255.255.0
List ODM (next boot) IP con guration for interface
lsattr -El en0
Permanently set the hostname
chdev -l inet0 -a hostname=www.tablesace.net
Turn on routing by putting this in
no -o ipforwarding=1
rc.net
List networking devices
lsdev -Cc tcpip
List Network Interfaces
lsdev -Cc if
List attributes of inet0
lsattr -Ehl inet0
List (physical layer) attributes of ent0
lsattr -El ent0
List (networking layer) attributes of en0
lsattr -El en0
Speed is found through the ent
X device
lsattr -El ent0 -a media speed
Set the ent0 link to Gig full duplex
(
Auto Negotiation is another option)
chdev -l ent0 -a media speed=1000 Full Duplex -P
Turn o
Interface Speci c Network Options
no -p -o use isno=0
Get (long) statistics for the ent0 device (no -d is shorter)
entstat -d ent0
List all open, and in use TCP and UDP ports
netstat -anf inet
List all LISTENing TCP ports
netstat -na | grep LISTEN
Remove all TCP/IP con guration from a host
rmtcpip
IP packets can be captured using

Error Logging
Error logging is provided through:
Display the contents of the boot log
alog, errlog and syslog.
alog -o -t boot
Display the contents of the console log
alog -o -t console
List all log types that
alog knows
alog -L
Send a message to errlog
errlogger "Your message here"
Display the contents of the system error log
errpt
(Add -a or -A for varying levels of verbosity)
tions. S is software and H is hardware. Error types are (P)ermanent,
(T)emporary, (I)nformational, or (U)nknown. Error classes are
(H)ardware, (S)oftware, (O)perator, or (U)ndetermined.
Clear all errors up until
Errors listed from errpt can be limited by the -d S or -d H op-x days ago.
errclear
x
List info on error ID
FE2DEE00 (IDENTIFIER column in errpt output)
errpt -aDj FE2DEE00
Put a \tail" on the error log
errpt -c
List all errors that happened today
errpt -s `date +%m%d0000%y`
To list all errors on hdisk0
errpt -N hdisk0
To list details about the error log
/usr/lib/errdemon -l
To change the size of the error log to 2 MB
/usr/lib/errdemon -s 2097152
syslog.conf
line to send all messages to log le
*.debug /var/log/messages
syslog.conf
line to send all messages to error log
*.debug errlog
Error log messages can be redirected to the syslog using the errnotify
ODM class.


smitty FastPaths
Find a smitty FastPath by walking through the smitty screens to get
to the screen you wish. Then Hit F8. The dialog will tell you what
FastPath will get you to that screen. (F3 closes the dialog.)
lvm - LVM Menu
mkvg - Screen to create a VG
con gtcp - TCP/IP Con guration
eadap - Ethernet adapter section
fcsdd - Fibre Channel adapter section
chgsys - Change / Show characteristics of OS
users - Manage users (including ulimits)
devdrpci - PCI Hot Plug manger
etherchannel - EtherChannel / Port Aggregation

System Resource Controller
Start the xntpd service
startsrc -s xntpd
Stop the NFS related services
stopsrc -g nfs
Refresh the named service
refresh -s named
List all registered services on the system
lssrc -a
Show status of ctrmc subsystem
lssrc -l -s ctrmc

Working with Packages
List all les in bos.games leset.
lslpp -f bos.games
Find out what leset \fortune" belongs to.
lslpp -w /usr/games/fortune
List packages that are above the current OS level
oslevel -g
Find packages below a speci ed ML
oslevel -rl 5300-05
List recommended MLs
oslevel -rq
List installed MLs
instfix -i | grep AIX ML
List all lesets
lslpp -L
List all lesets in a
grepable or awkable format
lslpp -Lc
Find the package that contains the lemon utility
which fileset filemon
Install the database (from CD) for
installp -ac -d /dev/cd0 bos.content list
which fileset
Create a mksysb backup of the rootvg volume group
mksysb -i /mnt/server1.mksysb.`date +%m%d%y`
Cleanup after a failed install
installp -C


LVM
Put a PVID on a disk
chdev -l hdisk1 -a pv=yes
Remove a PVID from a disk
chdev -l hdisk1 -a pv=clear
List all PVs in a system (along) with VG membership
lspv
Create a VG called datavg using hdisk1 using 64 Meg PPs
mkvg -y datavg -s 64 hdisk1
Create a LV on (previous) datavg that is 1 Gig in size
mklv -t jfs2 -y datalv datavg 16
List all LVs on the datavg VG
lsvg -l datavg
List all PVs in the datavg VG
lsvg -p datavg
Take the datavg VG o ine
varyoffvg datavg
Remove the datavg VG from the ODM
exportvg datavg
Import the VG on hdisk5 as datavg
importvg -y datavg hdisk5
Vary-on the new datavg VG (can use
importvg -n)
varyonvg datavg
List all VGs (known to the ODM)
lsvg
List all VGs that are on line
lsvg -o
Check to see if underlying disk in datavg has grown in size
chvg -g datavg
Move a LV from one PV to another
migratepv -l datalv01 hdisk4 hdisk5
Delete a VG by removing all PVs with the
reducevg command.
reducevg hdisk3
(-d removes any LVs that may be on that PV)

Memory / Swap le
List size, summary, and paging activity by paging space
lsps -a
List summary of all paging space
lsps -s
List the total amount of physical RAM in system
lsattr -El sys0 -a realmem
Create a new paging device on rootvg of 64 PPs
mkps -a -s 64 -n rootvg

topas
Options
Make topas look like
topas -P
top
View statistics from other partitions
topas -C
View statistics for disk I/O
topas -D
Show statistics related to micro-partitions in Power5 environment
topas -L
All of the above commands are availible from within
topas

Performance Monitoring
Use
s0 entries for the best a nity and lesser a nity in the higher elds.
Get verbose disk stats for hdisk0 every 2 sec
mpstat -d to determine processor a nity on a system. Look for
iostat -D hdisk0 2
Get extended vmstat info every 2 seconds
while [ 1 ]; do vmstat -vs; sleep 2; clear; done
Get running CPU stats for system
mpstat 1
Get time based summary totals of network usage by process
netpmon
to start statistics gathering, trcstop to nish and summarize.

Getting info about the system
Find the version of AIX that is running
oslevel
List all attributes of system
getconf -a
Find the type of kernel loaded (use -a to get all options)
getconf KERNEL BITMODE
bootinfo and getconf can return much of the same information, getconf
returns more and has the
Find the level of rmware on a system
grepable -a option.
invscout
List all attributes for the kernel \device"
lsattr -El sys0
Print a \dump" of system information
prtconf

Display Error Codes
214,2C5,2C6,2C7,302,303,305 - Memory errors
152,287,289 - Power supply failure
447 - An error has occurred on an adapter
521 - init process has failed
551,552,554,555,556,557 - Corrupt LVM, rootvg, or JFS log
553 - inittab or /etc/environment corrupt
552,554,556 - Corrupt lesystem superblock
521 through 539 -
532,558 - Out of memory during boot process
518 - Failed to mount
cfgmgr (and ODM) related errors/var or /usr
615 - Failed to con g paging device
More information is availible in the \Diagnostic Information for Multiple
Bus Systems" manual

iptrace / ipreport or tcpdump