AIX网络服务的启动

http://book.51cto.com/art/201111/304528.htm

3.6.1 AIX网络服务的启动

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

 
 
  1. # cat /etc/inittab  
  2. ……………………………………………………..  
  3. init:2:initdefault:  
  4. brc::sysinit:/sbin/rc.boot 3 >/dev/console 2>&1 # Phase 3 of system boot  
  5. powerfail::powerfail:/etc/rc.powerfail 2>&1 | alog -tboot > /dev/console # Power Failure Detection  
  6. mkatmpvc:2:once:/usr/sbin/mkatmpvc >/dev/console 2>&1  
  7. atmsvcd:2:once:/usr/sbin/atmsvcd >/dev/console 2>&1  
  8. load64bit:2:wait:/etc/methods/cfg64 >/dev/console 2>&1 # Enable 64-bit execs  
  9. tunables:23456789:wait:/usr/sbin/tunrestore -R > /dev/console 2>&1 # Set tunables  
  10. rc:23456789:wait:/etc/rc 2>&1 | alog -tboot > /dev/console # Multi-User checks  
  11. fbcheck:23456789:wait:/usr/sbin/fbcheck 2>&1 | alog -tboot > /dev/console # run /etc/firstboot  
  12. srcmstr:23456789:respawn:/usr/sbin/srcmstr # System Resource Controller  
  13. rctcpip:23456789:wait:/etc/rc.tcpip > /dev/console 2>&1 # Start TCP/IP daemons  
  14. sniinst:2:wait:/var/adm/sni/sniprei > /dev/console 2>&1  
  15. ......................................................................................  
  16. orapw:2:wait:/etc/loadext -L /etc  
  17. h1:2:respawn:/etc/init.ohasd run >/dev/null 2>&1 </dev/null  

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

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

 
 
  1. ####################################################################  
  2. # rc.tcpip -  
  3. #   assumes interfaces are brought up by /etc/rc.net  
  4. #   starts TCP/IP daemons (sendmail, inetd, etc.)  
  5. ####################################################################  
  6. # start -  
  7. #   starts daemons using either src or command-line method  
  8. # args:  
  9. #   $1: pathname of daemon  
  10. #   $2: non-null if we should use src to start the daemon  
  11. #   $3: any arguments to pass it  
  12. #  
  13. start()  
  14. {  
  15.     # just return if the daemon doesn't exist  
  16.     #  
  17.     [ -x $1 ] || return 0  
  18.  
  19.     # start the daemon using either src or command-line method  
  20.     #  
  21.     cmd=`basename $1`  
  22.     if [ -n "$2" ] ; then  
  23.         startsrc -s $cmd -a "$3" &  
  24.     else  
  25.         if [ $cmd = "portmap" ] ; then  
  26.             $1 $3 &  # portmap must start in background  
  27.         else  
  28.             $1 $3  
  29.         fi  
  30.         echo "\t$cmd"  
  31.     fi  
  32. }  
  33.  
  34. …………………………………………..  
  35. # Start up ndpd-host daemon  
  36. #start /usr/sbin/ndpd-host "$src_running"  
  37.  
  38. # Start up the ndpd-router daemon  
  39. #start /usr/sbin/ndpd-router "$src_running"  
  40.  
  41. # Start up syslog daemon (for error and event logging)  
  42. start /usr/sbin/syslogd "$src_running"  
  43.  
  44. # Start up print daemon  
  45. #start /usr/sbin/lpd "$src_running"  
  46.  
  47. # Start up routing daemon (only start ONE)  
  48. #start /usr/sbin/routed "$src_running" -q  
  49. #start /usr/sbin/gated "$src_running"  
  50.  
  51. # Start up the sendmail daemon.  
  52. qpi=30m  # 30 minute interval  
  53. start /usr/lib/sendmail "$src_running" "-bd -q${qpi}"  
  54.  
  55. # Start up Portmapper  
  56. start /usr/sbin/portmap "$src_running"  
  57.  
  58. # Start up socket-based daemons  
  59. start /usr/sbin/inetd "$src_running"  
  60.  
  61. # Start up Domain Name daemon  
  62. #start /usr/sbin/named "$src_running"  
  63.  
  64. # Start up time daemon  
  65. #start /usr/sbin/timed "$src_running"  
  66.  
  67. # Start up Network Time Protocol (NTP) daemon  
  68. #start /usr/sbin/xntpd "$src_running"  
  69.  
  70. # Start up rwhod daemon (a time waster)  
  71. #start /usr/sbin/rwhod "$src_running"  
  72.  
  73. # Start up the Simple Network Management Protocol (SNMP) daemon  
  74. start /usr/sbin/snmpd "$src_running"  
  75.  
  76. # Start up the DHCP Server  
  77. #start /usr/sbin/dhcpsd "$src_running"  
  78. ……………………………………….. 

在/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)也就不能用了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值