叢集后臺眾多,如何才能理清其中的關係?我們嘗試探索一下。我們從“/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)挖掘
[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)挖掘
[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)挖掘
[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”()。
轉:Oracle叢集重要程式evmd、cssd和crsd發源地及跟蹤探索
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29067253/viewspace-2134381/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【RAC】Oracle叢集重要程式evmd、cssd和crsd發源地及跟蹤探索OracleCSS
- Fails to Join the Cluster as CRSD and EVMD are in INTERMEDIATE StateAI
- 學習oracle 10.2.0.1 rac叢集程式cssd的原理及機制之系列一OracleCSS
- oracle 跟蹤檔案和轉儲命令及常用轉儲命令(轉)Oracle
- Oracle 跟蹤事件【轉】Oracle事件
- oracle跟蹤檔案和跟蹤事件(zt)Oracle事件
- 轉載 oracle 跟蹤檔案 和轉儲命令Oracle
- oracle 跟蹤檔案和轉儲命令(轉摘)Oracle
- oracle跟蹤事件(轉載)Oracle事件
- Oracle跟蹤事件和dumpOracle事件
- Oracle 跟蹤檔案和檔案轉儲(dump)Oracle
- oracle 跟蹤檔案和轉儲命令詳解Oracle
- oracle 10g 程式跟蹤命令Oracle 10g
- ORACLE 跟蹤工具Oracle
- [zt] oracle跟蹤檔案與跟蹤事件Oracle事件
- oracle跟蹤檔案與跟蹤事件(zt)Oracle事件
- 轉:使用 Tkprof 分析 ORACLE 跟蹤檔案Oracle
- oracle sql跟蹤 event 10046 - 轉OracleSQL
- Oracle事件跟蹤及結構資料dumpOracle事件
- 【TRACE】Oracle跟蹤事件Oracle事件
- Oracle跟蹤會話Oracle會話
- Oracle跟蹤檔案Oracle
- 使用Linux Strace跟蹤除錯Oracle程式程式Linux除錯Oracle
- Oracle EBS併發請求啟用跟蹤Oracle
- Oracle日誌切換及頻率跟蹤指令碼Oracle指令碼
- 使用ErrorStack進行Oracle錯誤跟蹤及診斷ErrorOracle
- 檢查是否啟用了跟蹤(oracle 白皮書 轉)Oracle
- oracle session(會話) 跟蹤OracleSession會話
- Oracle跟蹤事件 -- set eventsOracle事件
- Oracle 10G 跟蹤Oracle 10g
- Oracle 跟蹤事件 set eventOracle事件
- zookeeper叢集及kafka叢集搭建Kafka
- 使用ERRORSTACK進行錯誤跟蹤及診斷(轉)Error
- 如何收集Oracle程式中的SQL跟蹤資訊KUOracleSQL
- 多目標跟蹤論文及程式碼總結
- Oracle叢集軟體管理-新增和刪除叢集節點Oracle
- ORACLE 10046 設定跟蹤事件後無跟蹤檔案Oracle事件
- oracle 11gR2 grid 叢集資源設定跟隨叢集自動啟動Oracle