http://www.xuexizu.com/training_centre/content/111841?nid=30538
Oracle集群后台进程众多,如何才能理清其中的关系?我们尝试探索一下。我们从“/etc/inittab”文件开始。
1.“/etc/inittab”文件内容
看一下从Linux操作系统“/etc/inittab”文件中能获得哪些信息。
[root@rac1 ~]# cat /etc/inittab
#
# inittab This file describes how the INIT process should set up
# the system in a certain run-level.
#
# Author: Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>
# Modified for RHS Linux by Marc Ewing and Donnie Barnes
#
# Default runlevel. The runlevels used by RHS are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
id:5:initdefault:
# System initialization.
si::sysinit:/etc/rc.d/rc.sysinit
l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6
# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
# When our UPS tells us power has failed, assume we have a few minutes
# of power left. Schedule a shutdown for 2 minutes from now.
# This does, of course, assume you have powerd installed and your
# UPS connected and working correctly.
pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"
# If power was restored before the shutdown kicked in, cancel it.
pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"
# Run gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6
# Run xdm in runlevel 5
x:5:respawn:/etc/X11/prefdm -nodaemon
h1:35:respawn:/etc/init.d/init.evmd run >/dev/null 2>&1 </dev/null
h2:35:respawn:/etc/init.d/init.cssd fatal >/dev/null 2>&1 </dev/null
h3:35:respawn:/etc/init.d/init.crsd run >/dev/null 2>&1 </dev/null
注意最后一部分内容,此处记录了Oracle集群主进程的源头。
2.使用pstree命令继续探索
1)挖掘EVMD
[root@rac1 ~]# ps -ef | grep -v grep | grep "init.evmd run"
root 3322 1 0 Nov24 ? 00:00:00 /bin/sh /etc/init.d/init.evmd run
[root@rac1 ~]# pstree 3322 -a
init.evmd /etc/init.d/init.evmd run
└─su -l oracle -c...
└─evmd.bin
├─evmlogger.bin -o /oracle/app/crs/evm/log/evmlogger.info -l/oracl
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
├─{evmd.bin}
└─{evmd.bin}
2)挖掘CSSD
[root@rac1 ~]# ps -ef | grep -v grep | grep "init.cssd fatal"
root 3323 1 0 Nov24 ? 00:24:34 /bin/sh /etc/init.d/init.cssd fatal
[root@rac1 ~]# pstree 3323 -a
init.cssd /etc/init.d/init.cssd fatal
├─init.cssd /etc/init.d/init.cssd oprocd
│ └─oprocd.bin run -t 1000 -m 500 -f
├─init.cssd /etc/init.d/init.cssd oclsomon
│ └─runuser -l oracle -c...
│ └─sh -c...
│ └─oclsomon.bin
├─init.cssd /etc/init.d/init.cssd daemon
│ └─ocssd.bin
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ ├─{ocssd.bin}
│ └─{ocssd.bin}
└─sleep 1
3)挖掘CRSD
[root@rac1 ~]# ps -ef | grep -v grep | grep "init.crsd run"
root 3324 1 0 Nov24 ? 00:00:00 /bin/sh /etc/init.d/init.crsd run
[root@rac1 ~]# pstree 3324 -a
init.crsd /etc/init.d/init.crsd run
└─crsd.bin reboot
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
├─{crsd.bin}
└─{crsd.bin}
3.小结
本文从“/etc/inittab”文件入手给出探索Oracle集群后台进程关系的方法。没有给出具体进程的详细功能描述。有关进程的详细描述请参考Oracle官方文档“Oracle Clusterware Software Component Processing Details”(http://download.oracle.com/docs/cd/B19306_01/rac.102/b14197/admcon.htm#sthref19)。