#=============================================================================== # # lunch and learns on linux # #=============================================================================== lsb_release -a cat /etc/*release dmidecode -t 1 df -hP df -hPT VM guest VMDK disks (presented to the VM) datastores (ESX VGs) SAN ESX host - linux kernel, managed by Windows pvscan vgscan lvscan pvs vgs vgs -o +tags vgs --units m vgmondo lvs lvs -o +devices pvdisplay pvdisplay -m vgdisplay lvdiplay cd /dev sd* dm* disk/* #whole or partitioned, we want whole for non-root #we use LVM for all disks except ASM #we multipath on physical #VM - datastores and growth: discuss #don't grow vg00 disks #data areas: either grow disk (if not partitioned), if whole disk #then watch size and performance fdisk -lu #lots of others: kpart, ... lsscsi lsscsi -v lsscsi -l dmsetup ls --tree dmsetup ls --tree -o uuid,vt100 multipath -ll blkid -o full lsblk -t lsblk --nodeps --bytes --noheadings --output SIZE | sort stat -f /dev/sdX stat /var stat /var/adm/messages #=============================================================================== /sbin/scsi_id -g -u /block/sda /sbin/scsi_id -g -u -s /block/sda /lib/udev/scsi_id --page=0x83 --whitelisted --device=/dev/sda blkid -o full #multipath (native linux) /usr/share/doc/device-mapper-multipath*/multipath.conf cat /etc/multipath.conf cat /etc/multipath/bindings multipath -l multipath -ll dmsetup ls --tree multipathd -k'show config' #restart/refresh conf file multipath -v2 ls -l /dev/mapper ls -l /dev/disk/by-id cat /etc/multipath/bindings cat /var/lib/multipath/bindings grep filter /etc/lvm/lvm.conf #flushes paths - use only when troubleshooting a standby/silent system service multipathd stop ## multipath -F service multipathd start chkconfig --list multipathd chkconfig multipathd on chkconfig multipathd #rhel 7 systemctl enable multipathd service multipathd reload service multipathd restart #rhel 7 systemctl restart multipathd #============================================================================== https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6 https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7 https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html-single/DM_Multipath/index.html#dmsetup_queries lsscsi -l #show timeouts #SVC /etc/udev/rules.d cat 99-ibm-2145.rules # Set SCSI command timeout to 120s (default == 30 or 60) for IBM 2145 devices SUBSYSTEM=="block", ACTION=="add", ENV{ID_VENDOR}=="IBM", \ ENV{ID_MODEL}=="2145", RUN+="/bin/sh -c 'echo 120 > \ /sys/block/%k/device/timeout'" udevadm control --reload-rules #if not net file is missing, recreate by: /lib/udev/write_net_rules #runs: persistent-net-generator.rules #raw # /etc/udev/rules.d/60-raw.rules # udevinfo -d # raw -qa lvs --all --segments -o +devices pvs --segments lvdisplay --maps /dev/vg_BDP/lvol2 pvcreate vgcreate lvcreate #FS is ext3 or ext4 (4 if available) #lots of ways to list, here are a few blkid -o full #one way to list what is used grep ext /etc/fstab #one way to list what is used df -hPT /etc/fstab df -hP #make a new VG/LV/FS #VM pvcreate /dev/sdX vgcreate vg01 /dev/sdX #Physical pvcreate /dev/mapper/mpathX vgcreate vg01 /dev/mapper/mpathX lvcreate -n lv_prod_prop_orasoft --size 12G vg01 mkfs -t ext3 /dev/vg01/lv_prod_prop_orasoft #change reserved blocks percentage to 1 tune2fs -m 1 /dev/sdXX #make a new LV using the free space in a VG vgdisplay vg01 | grep "Free PE" lvcreate -n lv_srv --size 19967 vg01 mkfs -t ext3 /dev/vg01/lv_srv #growing an LV to use all the free space in the vg # # If a device was added, OR was grown, do the following to rescan # # Use this in lieu of: /bin/rescan-scsi-bus.sh # as the rescan command has issues w/ EMC and SVC drivers # for HOST in $(cd /sys/class/scsi_host; ls -d host*) do echo $HOST echo "- - -" > /sys/class/scsi_host/$HOST/scan done #reread a new size on a grown disk MYDISK=sdc echo 1 > /sys/block/$MYDISK/device/rescan #maybe - if fdisk shows the new size, but LVM (pvs) doesn't pvresize /dev/sdX #IF ASM, then #create device partitions fdisk DEVICE partprobe udevadm control --reload-rules # # If new, then pvcreate the right device # If grown (non-vg00), then nothing to do - proceed # If vg00 - you should NOT grow the root disks, big issues w/ partitions # MYVG=vg02 MYLV=lvappl ADDSIZE=$(vgs --units m $MYVG | grep -w $MYVG | awk '{print $NF}') echo $ADDSIZE lvresize -L +${ADDSIZE} $MYVG/$MYLV resize2fs -p /dev/$MYVG/$MYLV #grow by a specific addtional value lvresize -L+1G rootvg/lv_home resize2fs -p /dev/mapper/rootvg-lv_home #grow to a specified size (make sure it is larger than the original) lvextend -L 17G /dev/mapper/vg02-lv_ora_orasoft fsadm -r -e -y resize /dev/mapper/vg02-lv_ora_orasoft 17G e4fsck -f /dev/mapper/vg02-lv_ora_orasoft #remove a sd disk device #pvmove | vgreduce; pvremove blockdev –flushbufs device #write flush any I/O #BE VERY SURE echo 1 > /sys/block/sd${LETTER}/device/delete blkid -o list # list all the UUIDs for disks/partitions blkid /dev/sda3 # list all the UUIDs for disk vol_id /dev/sda3 # list all the UUIDs for disk ls -l /dev/disk/by-uuid | grep sda3 pvs -a -v # list UUIDs w/ disk names pvs --segments pvs -o +pv_uuid pvs -a # list free disks (not in LVM) #pvs: Attr fields (3 chars): (a)llocatable, e(x)ported and (m)issing lsscsi #yum install lsscsi 0:0:0:0 host|HBA:channel:??:LUN_sequence lsscsi -tv --list #blocksize and other FS charachteristics dumpe2fs /dev/mapper/rootvg-esplv | grep -i 'Block size' blockdev --getbsz /dev/mapper/rootvg-esplv scsi_id #vpd scsi_id -g -u -s [/dev]/block/sda /lib/udev/scsi_id --page=0x83 --whitelisted --device=/dev/sda /etc/lvm/lvm.conf #what you want for output /etc/udev/rules.d/ /etc/udev/rules.d/50-udev.rules #/dev /etc/udev/rules.d/60-raw.rules #raw devs udevinfo -d raw -qa /etc/udev/rules.d/70-persistent-net.rules #NICs udevadm info udevadm info -q all -n /dev/sdX #disk is associated w/ a UUID findfs UUID=7bc9f29c-67e7-4391-9a6a-23a2d34fc3ca #find what disk is associated w/ a LABEL findfs LABEL=SWAP #============================================================================== #Vsphere/vmware #APP #Load and run installer (exe) #setup player|workstation #alternatives are out there, another FREE most used is VirtualBox vmware.com #vmplayer - create VMs on your system w/o Vsphere infrastructure #vmworkstation - costs, more features than vmplayer #VMware console #when in a VM focused window, Control-Alt gets you out of that focus #and back to your desktop or browser (out of the vmware mgt) #Page up/down on console shift-PageUp shift-PageDown #ESX hosts #their clustering #performance #looking for them, what vmotion will do #Datacenters #they run Linux #VM Guest view #vmtools - must be running and up-to-date #Edit profile #cpu & memory performance numbers #disks: datastores and VMDKs # #changing/adding NICs: instance number, VLANs #VMware outside of Vsphere #You can test (copy) an existing VMDKs to your vmplayer and test #things out, or, create and vm in player/workstation and copy to #vsphere #============================================================================== #setup player|workstation #alternatives are out there, another FREE most used is VirtualBox vmware.com #vmplayer - create VM guests on your local system w/o Vsphere #vmworkstation - costs, more features than vmplayer #creating a vm in vmplayer/workstation #ISO Files http://redhat.com http://fedora.org http://centos.org/ http://suse.com http://opensuse.com #VMware outside of Vsphere #You can test (copy) an existing VMDKs to your vmplayer and test #things out, or, create and vm in player/workstation and copy to #vsphere #======================================= ## to get vmware workstation going, BIOS #settings must be configured for: ## VT* processes/options # #On HP Elitebook 840 # BIOS # Advanced # Device Settings # VTx # (check) # VTd # (check) #managing a vm #vmtools #installing #using #testing #updating #see other file: vmware_cmds #functions/views on console #load a DVD player #============================================================================== #VMWARE workstation/player #Select "Unity mode" (toggle) #puts Linux and Windows commands into the same rootmenu #If linux base, then windows commands show up in Linux #If Windows base, then Linux commands show up in Windows #The commands run in the correct environment (VM), but #look like they are a part of the main system (integrated). # # Get VM info from the OS without logging into Vsphere # # vminfo.pl # yum install openssl098e yum -y install perl-XML-LibXML perl-Crypt-SSLeay perl-Class-MethodMaker gzip -dc VM*gz (cd vmware-viperl-distrib; ./vmware-install.pl) #output for this particular VM. Note: you can see the vmtools status # #Enter your password: #=============================================================== #Using: # vspherehost: host.domain # vmguest: guest # user: jbakerm1@domain # # =============================================================== # runnning vminfo.pl # # # Information of Virtual Machine serverx # # Name: serverx # No. of CPU(s): 2 # Memory Size: 8192 # Virtual Disks: 13 # Template: 0 # vmPathName: [HDC_Prod1_SVC_001_VMAX]serverx/serverx.vmx # Guest OS: Red Hat Enterprise Linux 6 (64-bit) # guestId: rhel6_64Guest # Host name: serverx # IP Address: xxx # VMware Tools: VMware Tools running and the version is current # Cpu usage: 239 MHz # Host memory usage: 8162 MB # Guest memory usage: 491 MB # Overall Status: The entity is OK # # =============================================================== # runnning guestinfo.pl # # # # Guest Info for the Virtual Machine # 'serverx' under host serverx.domain # # serverx guestFamily: linuxGuest # serverx guestFullName: Red Hat Enterprise # Linux 6 (64-bit) # serverx guestId: rhel6_64Guest # serverx guestState: running # serverx hostName: serverx # serverx ipAddress: xxxx # serverx toolsStatus: VMware Tools is # running and the version is current. # serverx toolsVersion: 9350 # serverx Screen - Height: 768 # serverx Screen - Width: 1024 # serverx Disk[0]: Capacity 2113683456 # serverx Disk[0]: Path : / # serverx Disk[0]: freespace : 1529200640 # serverx Disk[1]: Capacity 528408576 # serverx Disk[1]: Path : /boot # serverx Disk[1]: freespace : 425402368 # serverx Disk[2]: Capacity 8455118848 # serverx Disk[2]: Path : /crash_dir # serverx Disk[2]: freespace : 5242236928 # serverx Disk[3]: Capacity 2113748992 # serverx Disk[3]: Path : /home # serverx Disk[3]: freespace : 1891139584 # serverx Disk[4]: Capacity 5284429824 # serverx net[0] - connected : 1 # serverx net[0] - deviceConfigId : 4000 # serverx net[0] - macAddress : # 00:50:56:8d:4a:4b # serverx net[0] - network : d3 6d 0c 50 c2 35 98 a5-f8 c0 8b 7a 33 69 4b d0 # serverx net[0] - ipAddress : xxxx # serverx net[0] - ipAddress : fe80::250:56ff:fe8d:4a4b # #recovery: #single user "s" or "single" in older version on grub boot line "rd.break" or "single" in >= rhel7 or: init=/bin/bash #rescue mode #Boot into BIOS mode # http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1004129 # # Vmware Vsphere: edit settings -> VM options -> BIOS -> # check "force BIOS setup @ next VM boot" # VMware Workstation: Boot into firmware # #When in BIOS mode # Make sure the DVD is the first device in the boot order list # # Mount the boot.iso (faster), or the full-DVD.iso (slower) # Make sure your ISO is the right architecture # #RHEL #vm: select: rescue/recover/troubleshooting # then: Rescue a RHEL system # then: Continue (to take the options to mount disk, # normally what you want) # then: OK # then: OK #physical:kickstart - type "rescue" #SLES #vm: select: rescue system # Rescue login: enter "root" # Run: fdisk -lu # Run (for example): mount /dev/sda2 /mnt # Run (if desired): chroot /mnt #physical: boot off boot.iso, follow menu/prompts #boot up console while installing in gui Ctrl-Alt-F2 Alt-# f1 - main ; GUI interactive f2 - verbose boot ; GUI shell: liveimage login as: liveuser f3 - install-log f4 - storage-log f5 - program-log f6 - login prompt ; GUI shell: liveimage login as: liveuser f7 - ; GUI interactive install lspci lsusb lshal lscpu [--hardware] #if some additional packages are loaded lshw lshw-gui lstopo #repo:pkg is epel:hwloc-gui cat /proc/cpuinfo cat /proc/meminfo dmidecode -t 0 dmidecode -t bios dmidecode -t bios-version dmidecode -t 1 #computer model dmidecode -t 4 #cpu numactl --hardware #WARNING - use only when TESTING - clears all the caches #free pagecache sync;echo 1 > /proc/sys/vm/drop_caches #free slabcache sync;echo 2 > /proc/sys/vm/drop_caches #free both above sync;echo 3 > /proc/sys/vm/drop_caches #============================================================================== ########################################################################### #basic network setup #some network commands ethtool NIC ifconfig ip -s link ip addr netstat ss -s #sockets vi /etc/sysconfig/network #setup #hostname #Optional #default-router/gateway #other items too, but not commonly done cd /etc/sysconfig/network-scripts ifcfg-NIC# ifcfg-eth0 #virtual NIC in VM; drivers: e1000 (base) or VMXNET3 (performance) #physical NIC in non-VM ; drivers - depends on NIC type vi ifcfg-eth0 #static versus dhcp #DHCP BOOTPROTO=dhcp #STATIC BOOTPROTO=none IPADDR=x.x.x.x #plus: gateway, netmask #netmask variables #NETMASK stated NETMASK=255.255.255.0 #NETMASK suffix - saves one line IPADDR=x.x.x.x/24 ############################################################################ #IF YOU NEED to add virtual IPs: # # NOTE: If in the DMZ or CAN, you'll need to add the VIP(s) # to the firewall rules. # #REDHAT #unique file for each virtual #where INST is the number you want (as in "1" or "2") INST=1 NIC=eth0 cd /etc/sysconfig/network-scripts cp ifcfg-$NIC ifcfg-$NIC:$INST #or bond0, #or whatever interface you want the vip on #change the DEVICE to $INST #change the IP to the new VIP vi ifcfg-$NIC:$INST DEVICE=eth0:1 <<< edit this to $NIC:$INST IPADDR=x.x.x.x NETMASK=y.y.y.y #SUSE #same file, add to same INFC file cd /etc/sysconfig/network vi ifcfg-eth0 #or bond0, or whatever interface you want the vip on # # eth0:1 # LABEL1='1' <<< to right $INST IPADDR1='10.10.1.20' NETMASK1='255.255.255.0' # # eth0:2 # LABEL2='2' IPADDR2='10.10.1.21' NETMASK2='255.255.255.0' # #**OR** # # eth0:1 DEVICE=eth0:1 IPADDR=10.10.1.20 # eth0:2 DEVICE=eth0:2 IPADDR=10.10.1.21 #Then, make it active service network restart #**OR** MYNIC=eth0 MYNICV=eth0:0 MYVIP=10.10.42.49 MYNETMASK=255.255.255.0 MYBROADCAST=10.10.42.255 /sbin/ifconfig $MYNICV $MYVIP netmask $MYNETMASK broadcast $MYBROADCAST #gratuitous arp so router gets refreshed w/ new IP/MAC /sbin/arping -q -c 4 -U -I $MYNIC -U $MYIP ########################################################################### #Bonding modes for networking # # You can use the index number, or the name next to it. # That is, the following are equivelent: # mode=0 # mode=balance-rr # 0 blance-rr : Round-robin This mode provides load balancing and fault tolerance. 1 active-backup : active-backup or active/passive This mode provides fault tolerance. 2 balance-xor : exclusive or This mode provides load balancing and fault tolerance. 3 broadcast : broadcast This mode provides fault tolerance. Basically, all transmits go out all slave interfaces. 4 802.3ad : LACP/etherchannel This mode provides load balancing and fault tolerance. The best way to go, but needs good network support. LACP can be setup so it's not just redundant, but aggregated (parallel traffic). 5 balance-tlb : Prerequisite: Ethtool support in the base drivers for retrieving the speed of each slave. Basically, transmits are distributed according to number of sessions, recieves switches only when there is an event. 6 balance-alb Prerequisite: Ethtool support in the base drivers for retrieving the speed of each slave. In Cisco terms, port channeling. Another good option to get buy-in from the networking crew, at least if they are a Cisco shop. ########################################################################### ifenslave -d bond0 eth1 #detach ifenslave bond0 eth1 #reattach cat /proc/net/bonding/bond0 # create bonding /etc/sysconfig/network-scripts/ifcfg-bond0 # modprobe /etc/modprobe.d/bonding.conf # for bonding options - use BONDING_OPTS /etc/sysconfig/network-scripts/ifcfg-bond0 # see bonding mode cat /sys/class/net/bond0/bonding/mode ########################################################################### Bonding or Teaming for redhat Server ethtool eth0 ethtool eth1 modprobe --list | grep bonding /lib/modules/2.6.*/kernel/drivers/net/bonding/bonding.ko modprobe --list | grep mii /lib/modules/2.6.*/kernel/drivers/net/mii.ko vi /etc/modprobe.conf #or cd /etc/modprobe.d cat bonding.conf alias bond0 bonding options bond0 miimon=80 mode=1 modinfo bonding vi /etc/modprobe.conf cd /etc/modprobe.d cat bonding.conf alias bond0 bonding options bond0 mode=1 arp_ip_target=x.x.x.x arp_interval=200 primary=eth0 #This configuration use arp resquest on the primary interface each 200ms #Now the kernel module is configure and we have to load thoses modules : modprobe bonding modprobe mii vi /etc/sysconfig/network-script/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes USERCTL=no vi /etc/sysconfig/network-script/ifcfg-eth1 DEVICE=eth1 BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes USERCTL=no #Configuration of bond0 vi /etc/sysconfig/network-script/ifcfg-bond0 DEVICE=bond0 BOOTPROTO=none ONBOOT=yes NETMASK=255.255.255.0 IPADDR=x.x.x.x USERCTL=no /etc/init.d/network restart service network restart cat /proc/net/bonding/bond0 #============================================================================== review of devices (first few sections) vim (Vi IMproved) :set syntax #turn colors off/on based upon programming language #read in a file :r file #read in output of a command :r !cmd [|cmd [...] dw #delete a word maybe -> p|P 3dw #delete 3 words maybe -> p|P dd #delete a line maybe -> p|P 3dd #delete 3 lines maybe -> p|P 3Y #copy 3 lines maybe -> p|P d/pattern #delete from char to pattern (same line, or many lines later) #maybe -> p|P d0 #delete from current char to BOL d$ #delete from current char to EOL d1G #delete from current line to BOF dG #delete from current line to EOF z #make the current line the "top" line of the screen/view ^e OR ^y #pan up or down (different than ^f,^b,^d,^u) H,M,L #move cursor to 3 screen positions: Home (top), Middle, Lower ~ #change case of letter #move back and forth w/ "marks" (place marks) #marks use here are 'm' and 'n', can use any alpha char #use single quote to "call/jump-to" a mark mm 'm mn 'n #use your marks as a "range"; take action on the range :'m,'n w newfile :'m,'n copy . :'m,'n move . #insert a tab at the BOL for the marked range :'m,'n/.*/s//&/g #like using - :g/pattern/s//newpattern/g :set :set syntax #turn colors off/on based upon programming language :set syntax=on :set syntax=off :set list #or cat -vet; ls -lb :set nolist #turn off :set ignorecase :set noignorecase :set ai :set noai #SO MANY other commands, too many for here #list hidden chars vi filename :set list #"catscan" cat -vet FILE echo "some string or info" | cat -vet #catscan #Bogus chars ls -lib | more find . -mount -inum XXXX -ok mv '{}' dufus \; mv dufus GOODFILENAME rpm (Redhat Package Management) #INSTALL a PKG rpm -ivhf ./MYFILE.rpm [*.rpm] #REMOVE/ERASE a PKG rpm -e PKGNAME #QUERY #list all pkgs rpm -qa #info about a package rpm -qi PKGNAME #the install script that a package uses for install rpm -q --scripts PKGNAME #pkg requires? rpm -q --requires PKGNAME #list files used by a package rpm -q --filesbypkg PKGNAME #find what package a file/binary belongs to rpm -q --whatprovides /bin/ls #yum #use and differences yum [-y -v --color=auto --nogpgcheck --skip-broken] CMD yum help yum list yum list installed yum search KEYWORD yum info PACKAGENAME yum install PACKAGENAME yum install *.rpm yum remove PACKAGENAME yum update PACKAGENAME yum check-update PACKAGENAME yum upgrade PACKAGENAME #like update, but obsoletes old packages yum provides PACKAGENAME yum provides */semanage <= Clint's favorite! yum reinstall PACKAGENAME yum -y localinstall --nogpgcheck PACKAGENAME yum grouplist yum groupinfo yum groupinstall 'group' yum grouperase 'group' yum groupremove 'group' yum clean all #zypper zypper refresh zypper in PACKAGENAME #install zypper rm PACKAGENAME #remove #repo use and files #what are local, configured, and possible repos #where and how are they defined RHEL /etc/yum.conf /etc/yum.repos.d SLES /etc/zypp/zypp.conf /etc/zypp/repos.d vmware player and new versions - dealing with versions performance ktune tuned yum -y install tuned tuned-utils tuned-adm list tuned-adm active tuned-adm profile PROFILENAME tuned-adm off #some possible PROFILENAME default server-powersave throughput-performance enterprise-storage virtual-guest sap #located in: #/etc/tune-profile # for example: #enterprise-storage #These are all viewable files #ktune.sh ktune.sysconfig sysctl.ktune tuned.conf how do we manage additional packages i.e. Firefox and X more or less??? unix2dos;dos2unix gpg grep -c -i -n# -A# -B# -a #like text, i.e. "strings binary" watchdog (for examples) and other normally installed tools watch -nX cmd # where X is an integer of seconds to sleep pinky USERNAME #replacement for finger #record a DVD (mkisofs and DVD recording in once command) growisofs -dvd-compat -Z /dev/dvd=image_file.iso mdadm #disk mirroring - like disksuite #what linux does better, and what it lacks in maturity #how the kernel gets changed #various Linux flavors: why so many, what is good for what use perf top iotop screen securevnc/tigervnc cygwin and X #gpg key files and key sharing ssh/scp/sftp ls, find, grep, vim, etc p* : pgrep, pkill, killall, pidof gnome/KDE (no CDE) gnome-CMD for some X style/similar commands xterm -> gnome-terminal gnome-disks ls /usr/bin/gnome-* date #convert dmesg time to human time date -u -d @1485979.091702 #if no "dmesg -T", then: alias tdmesg='dmesg|perl -ne "BEGIN{\$a= time()- qx!cat /proc/uptime!};s/\[\s*(\d+)\.\d+\]/localtime(\$1 + \$a)/e; print \$_;"' /proc cmdline #bootup cpu* mem* devices ... man proc pstack|gstack ptrace|strace cd /proc/PID cat mount cmdline;echo "" maps stack stat ...lots more... readlink /sys/block/sdX capabilities sudo pipes STDERR ############################### #output to pipe ############################### ONLY stderr to pipe (each line accomplishes the same) vgs -o +tags 2>&1 > /dev/null | grep tags vgs -o +tags 3>&1 1>&2 2>&3 | grep tags BOTH stderr and stdout to pipe vgs -o +tags 3>&1 2>&3 | grep tags ############################### #output to file ############################### stderr and stdout to same file cmd > /dev/null 2>&1 #============================================================================== Diskmap script (my script that maps all devices with great detail) Follow a disk from “adding” up through Filesystem. Then from a filesystem down through a device. ASM – why? ASM details (asmlib and non-asmlib==udev-rules) Performance tools in Linux (what you listed, and others too) iostat iostat -N iostat –xN iostat –x iostat –xNmdtz (depending on version) nmon & nmon_ analyzer top;iotop collectl Review the /proc area for stats Others that people use (open floor), and/or questions on “I want to see this, how would I?” #==============================================================================