AIX 开机启动网络服务配置

aix7 administrator

An administrator notices that the ntp group subsystem is not starting up at boot time. What will
cause this issue? [D]

C. The following line is commented out of the /etc/inittab file:
    xntpd: 23456789: respawn:/usr/sbin/xntpd > /dev/console 2>&1 #Start ntp daemon
D. The /etc/rc.tcpip file has the following line commented out:
    start /usr/sbin/xntpd "$src_running"

在AIX系统启动的最后阶段(这个阶段激活了rootvg文件系统,挂载了rootvg中的文件系统,并在最后调用/etc/inittab文件),最后调用的一个脚本是/etc/inittab,该文件的内容(节选)如下:

nit::initdefault:
brc::sysinit:/sbin/rc.boot >/dev/console >& # Phase of system boot
powerfail::powerfail:/etc/rc.powerfail >& | alog -tboot > /dev/console # Power Failure Detection
powermig::wait:/etc/rc.powermig transition >/dev/null >& # powermig startup
mkatmpvc::once:/usr/sbin/mkatmpvc >/dev/console >&
atmsvcd::once:/usr/sbin/atmsvcd >/dev/console >&
tunables::wait:/usr/sbin/tunrestore -R > /dev/console >& # Set tunables
securityboot::bootwait:/etc/rc.security.boot > /dev/console >&
mlsboot::bootwait:/etc/rc.mls.boot >/dev/console >&
rc::wait:/etc/rc >& | alog -tboot > /dev/console # Multi-User checks
mlsnet::wait:/etc/rc.mls.net > /dev/console >&
powermig2::wait:/etc/rc.powermig recover >/dev/null >& # powermig recover
powermt::wait:/usr/sbin/powermt load >/dev/null >& # powermt load
fbcheck::wait:/usr/sbin/fbcheck >& | alog -tboot > /dev/console # run /etc/firstboot
mls::wait:/etc/rc.mls >/dev/console >&
srcmstr::respawn:/usr/sbin/srcmstr # System Resource Controller
rctcpip:23456789:wait:/etc/rc.tcpip > /dev/console 2>&1 # Start TCP/IP daemons
nim::wait:/usr/bin/startsrc -g nim >/dev/console >&
rcemcp_mond::wait:/etc/rc.emcp_mond start > /dev/console >&
adsmsmext::wait:/etc/rc.jfs2hsm > /dev/console >& # TSM SpaceMan
filepath::wait:/etc/rc.filepath > /dev/console >& # Filepath startup
aso::once:/usr/bin/startsrc -s aso
sniinst::wait:/var/adm/sni/sniprei > /dev/console >&
rcitm1::wait:/etc/rc.itm1 > /dev/console >&
cron::respawn:/usr/sbin/cron
piobe::wait:/usr/lib/lpd/pioinit_cp >/dev/null >& # pb cleanup
qdaemon::wait:/usr/bin/startsrc -sqdaemon
writesrv::wait:/usr/bin/startsrc -swritesrv
uprintfd::respawn:/usr/sbin/uprintfd
shdaemon::off:/usr/sbin/shdaemon >/dev/console >& # High availability daemon

可以看到,其中的“srcmstr:23456789:respawn:/usr/sbin/srcmstr”标明了AIX中资源控制器SRC的启动情况。在随后的一行“rctcpip:23456789:wait:/etc/rc.tcpip”中,会启动AIX中的网络相关服务。

/etc/rc.tcpip是一个 shell 脚本,该脚本在执行过程中会使用SRC 命令,以服务的方式启动AIX网络服务所依托的AIX后台守护程序(daemons)。该脚本内容如下所示(节选):

start /usr/lib/sendmail "$src_running" "-bd -q${qpi}"

# Start up Portmapper
start /usr/sbin/portmap "$src_running" # Start up socket-based daemons
start /usr/sbin/inetd "$src_running" # Start up Domain Name daemon
#start /usr/sbin/named "$src_running" # Start up time daemon
#start /usr/sbin/timed "$src_running" # Start up Network Time Protocol (NTP) daemon
#start /usr/sbin/xntpd "$src_running" # Start up rwhod daemon (a time waster)
#start /usr/sbin/rwhod "$src_running" # Start up the Simple Network Management Protocol (SNMP) daemon
start /usr/sbin/snmpd "$src_running"

在/etc/rc.tcpip的开始部分会定义start函数,start函数(注意其中的关键行“startsrc -s $cmd -a "$3" &”)用来启动指定的TCP/IP相关服务,后面对这个函数进行调用,每个调用即是一个服务的启动任务,例如“start /usr/lib/sendmail "$src_running" "-bd -q${qpi}"”行,用来启动sendmail服务。

从/etc/rc.tcpip中可以看到,被启动的服务(守护进程)是TCP/IP所专有的,常用服务包括:gated 、inetd、named、routed、timed、snmpd、xntpd……

除此之外,还有若干服务是基本操作系统服务,如portmap、sendmail、syslogd等,它们在默认情况下都会被启动。

另外要注意格式,/etc/rc.tcpip中的大多数TCP/IP相关服务是被禁用的,也就是说该服务对应的启动命令是被注释掉的(前面标注 # 号的行为注释行)。

如果从/etc/inittab中删除 rc.tcpip行,则在AIX启动过程中将不会有任何网络的相关服务启动,甚至连CDE桌面环境都不能启动,因为CDE桌面环境将输出到某个IP地址上,在没有TCP/IP的情况下图形环境将会被挂起。另外,如果没有TCP/IP服务的支持,一些网络工具(如telnet、ftp)也就不能用了。

上一篇:python3.x 基础四:json与pickple


下一篇:(十四)json、pickle与shelve模块