1. 軟件安裝命令
SUN系統:pkginfo、 pkgadd 、 pkgrm
HP系統:swinstall
Linux系統:rpm
Aix系統:installp、 smit install
2. 內核參數修改方法
HPUX/HPIA:
使用 /usr/sbin/kctune(舊版本:/usr/sbin/kmtune)查看、設置內核參數;
/usr/sbin/kctune -v 顯示所有內核參數;
/usr/sbin/kctune -q XXX 查詢內核參數
/usr/sbin/kctune XXX=aaaa 設置內核參數;
/usr/sbin/kmtune -s XXX=aaa 從hpux B.11.23開始使用kctune 替代 kmtune
修改後需要重啓HP系統才能生效。
SUN:
root登錄,修改/etc/system,重啓操作系統生效。
AIX:
aix的消息隊列、共享內存等不支持修改,下面一些內核配置修改手段沒有具體驗證過。
/etc/security/limits ------配置cpu、rss、data等信息;適用5.0以上操作系統;
chdev -l sys0 -a maxuproc='500' --------修改用戶進程數500
/usr/sbin/vmo --------修改虛擬內存參數,適用5.2以上操作系統;
/usr/samples/kernel/vmtune ---------修改尋內存參數,適用5.2以下操作系統;
Linux:
修改手段較多,可修改的參數也很多。
echo 400 > /proc/sys/kernel/msgmni ----修改系統消息隊列最大數,直接修改/proc目錄對應文件內容,系統重啓會失效。
/sbin/sysctl -p net.ipv4.tcp_tw_recycle = 1 ----使用命令修改配置,並保存到/etc/sysctl.conf ,系統重啓不會失效。
安裝、配置、執行/etc/rc.d/rc.local ---- rc.local是linux默認使用的系統初始化腳本文件,每次啓動都會執行。
幫助網址:
http://nixdoc.net/man-pages/HP-UX/man5/msgmnb.5.html
http://www.macfreek.nl/memory/Kernel_Configuration
3. 進程分析手段
查看進程堆棧:
Sun、hpia、turbo_linux支持pstack查看進程的堆棧信息、查看core文件內存映像信息,能夠看到各子線程的堆棧信息;
Linux下使用gdb查看進程的堆棧方法:
$gdb -nx -quiet -readnever -p XXXX <<EOF >>stack.log 2>&1
$thread apply all bt
$EOF
Aix下支持procstack 查看進程堆棧;
進程執行過程跟蹤:
suse、turbo_linux均支持strace跟蹤命令執行過程,可以按順序列出所有系統調用、信號的處理時間和處理結果;
Linux下還有ltrace跟蹤進程執行過程調用的庫函數,(SUSE下默認沒有安裝,沒怎麼用過);
sun、aix下支持truss跟蹤命令執行過程。
進程句柄查看:
Sun機器支持pfiles XXX查看進程打開句柄;
Linux下支持lsof –p XXX查看進程句柄,在/proc/XXX目錄同樣可以查看句柄;
AIX下支持procfiles 查看進程使用的文件句柄。
4. 查看操作系統位數
Linux:
uname –a
X686或X86_64則內核是64位的,i686或i386則內核是32位的;
Soloaris:
isainfo –b
64表示內核是64位的,32表示內核是32位的;
HP_UX:
getconf KERNEL_BITS
64表示內核是64位的,32表示內核是32位的;
AIX:
bootinfo -K 顯示AIX系統內核是32位還是64位:
bootinfo -y 顯示機器硬件是32位還是64位。