Create a new file, in the padmin 's home directory:
[root@vios1]/home/padmin# cat .profile_vios ## Add this variable to .profile # echo "export ENV=/home/padmin/.profile_vios" >> /home/padmin/.profile export EXTENDED_HISTORY=ON export EDITOR=/usr/bin/vi export HOST="$(/usr/bin/uname -n)" export PATH=$PATH:/usr/ios/cli alias aix="ioscli oem_setup_env" alias history='fc -t' alias ll='ls -la' if [ "$(whoami)" != "root" ]; then export PS1="[$(whoami)@$(/usr/bin/hostname)]\$PWD$ " else export PS1="[$(whoami)@$(/usr/bin/hostname)]\$PWD# " fi set -o vi # If real TTY then allows BACKSPACE if [ $(/usr/bin/tty | awk '{print $1}' | grep -q '/dev/' ; echo $?) -eq 0 ] then /usr/bin/stty erase ^? fi pcmpathq () { pcmpath query device | egrep "SERIAL|DEVICE" | sed '/DEV/{x;p;x;}' | sed 's/DEV#://g' | sed 's/DEVICE NAME://g' | awk '{print $2}' | sed '/^$/d' | while read word do if [ $(echo $word | grep hdisk > /dev/null 2>&1;echo $?) -eq 0 ] then hd=$word else echo $hd";\c" echo $word fi done }
Add the following lines to .profile from padmin user:
[root@vios1]/home/padmin# cat .profile ....At the end export ENV=/home/padmin/.profile_vios
Add the following lines to /etc/profile:
[root@vios1]/home/padmin# cat /etc/profile .... HOSTNAME=$(/usr/bin/hostname) PS1="[\$LOGNAME@\$HOSTNAME]\$PWD# " export PS1 EDITOR=/usr/bin/vi export EDITOR export EXTENDED_HISTORY=ON alias ll='ls -lsa' export ENV=/home/padmin/.profile_vios trap 1 2 3
Create a filesystem /mksysb
Create a scripts directory, for example /home/scripts with a bin and log directory into. Change the owner: chown -R padmin /mksysb /home/scripts Create a con job as padmin user (5 * * * 0 /home/scripts/bin/mksysb.sh > /dev/null 2>&1) Create the script mksysb.sh and make it executable
#!/bin/ksh #==================================================================== #@(#) Create an mksysb for a VIOS on a local filesystem # Please add into the file /etc/exclude.rootvg the /mksysb/ # and create a specific filesystem /mksysb export PATH=$PATH:/usr/bin # needed for user padmin sn=$(basename $0 | cut -d. -f1) logpath=/home/scripts/log logname=$logpath/$sn.log errname=$logpath/$sn.err mksysbpath=/mksysb mksysbfile="$mksysbpath/$(hostname).mksysb" dest="test@yahoo.com" main () { date "+%d-%m-%Y %H:%M" /usr/ios/cli/ioscli backupios -file $mksysbfile -mksysb -nomedialib 1> $logname 2> $errname if (( $? != 0 )) then mailx -s "backupios in error on host $(hostname)" "$dest" < $errname fi } echo `date`" : Begin of "$sn" "$(hostname)"\n" > $logname main > $logname 2>&1 echo "\n"`date`" : End of "$sn" "$(hostname) >> $logname
# viosbr -backup -file $(hostname -s) -frequency weekly -numfiles 2
As padmin user user the viosbr that put an entry into root crontab to save the VIOS maps, network config… very usefull. A file will be generate into /home/padmin/cfgbackups/
To apply IBM best practice on a VIOS, use:
[padmin@vios1]/home/padmin$ rules -o list [padmin@vios1]/home/padmin$ rulescfgset
To disable this notification at login on VIOS:
chdev –l viosrules0 –a motd=no
A new command : rules, has appear in latest VIOS versions (>2.4), you can use it to check the recommended values for each device parameter, and apply best values:
[padmin@vios1]/home/padmin$ rules -o diff -s -d devParam.adapter.vdevice.IBM,l-lan:min_buf_tiny device=adapter/vdevice/IBM,l-lan 512 | 4096 devParam.adapter.vdevice.IBM,l-lan:max_buf_small device=adapter/vdevice/IBM,l-lan 2048 | 4096 devParam.adapter.vdevice.IBM,l-lan:min_buf_small device=adapter/vdevice/IBM,l-lan 512 | 4096 FORCE apply [padmin@vios1]/home/padmin$ rules -o deploy -d
Default rules are stored into :
/usr/ios/cfg/emc_clar_rules.xml /usr/ios/cfg/emc_invista_rules.xml /usr/ios/cfg/emc_mclar_rules.xml /usr/ios/cfg/emc_minvista_rules.xml /usr/ios/cfg/emc_msymm_rules.xml /usr/ios/cfg/emc_power_rules.xml /usr/ios/cfg/emc_symm_rules.xml /usr/ios/cfg/vios_default_rules.xml
Other scripts:
/root/scripts/change_devices_param.sh -f /root/scripts/customize_aix.sh -f /root/scripts/check_security.sh
Other settings to change:
chdev -l fcs0 -a max_npivs=255 -P
Firtst install yum, and add the following packages:
# yum -y install bash lsof coreutils logrotate sed
Rebuild RPM database
# updtvpkg
Useful for latest upgrade (faster) Remove Java7
installp -u Java7.jre Java7.sdk installp -u Java7_64.jre Java7_64.sdk
for i in $(lslpp -Lc | grep openssh.msg. | grep -v en_US | cut -d':' -f2) do installp -u $i done
for i in $(lslpp -Lc | grep "ios.cli.man." | grep -v en_US | cut -d':' -f2) do installp -u $i done
for i in $(lslpp -Lc | grep "bos.msg." | grep -v en_US | cut -d':' -f2) do installp -u $i done
for i in $(lslpp -Lc | grep "bos.loc.iso." | grep -v en_US | cut -d':' -f2) do installp -u $i done
for i in $(lslpp -Lc | grep "bos.iconv." | grep -v en_US | egrep -v "bos.iconv.com|bos.iconv.iso|bos.iconv.ucs.com|bos.iconv.ucs.pc" | grep -v en_US | cut -d':' -f2) do installp -u $i done
for i in $(lslpp -Lc | grep "bos.loc.com." | grep -v en_US | egrep -v "bos.loc.com.utf" | cut -d':' -f2) do installp -u $i done