日期:2014-05-16  浏览次数:20620 次

Linux下的服务管理和网络配置
winnt操作系统的服务管理是比较强的,它内置有一个服务管理器,能够非常方便的管理操作系统内的服务。Linux也同样有管理服务的特有方式。
Linux的服务都是以脚本的方式来运行的,存在于 /etc/rc.d/init.d目录下所有的脚本就是我们的服务脚本,它具有两项作用,一项是能够在系统启动的时候自动启动那些脚本中所要求启动的程序,另外,我们还能够通过该脚本来对服务进行控制,比如启动,停止等。

    我们先看看下面有那些服务:

# ls /etc/rc.d/init.d
anacron  cups       iptables   killall  nfslock  random      single  ypbind
apmd     firstboot  irda       kudzu    nscd     rawdevices  sshd
atd      functions  isdn       netfs    ntpd     rhnsd       syslog
autofs   gpm        kdcrotate  network  pcmcia   saslauthd   xfs
crond    halt       keytable   nfs      portmap  sendmail    xinetd

    里面列出的就是我们目前系统中所有的服务脚本,每次系统启动的时候就会启动。
我们打开一个脚本来看看:

    # cat /etc/rc.d/init.d/smb
case "$1" in
  start)
start
        ;;
  stop)
        stop
        ;;
  status)
        status rpc.mountd
        status nfsd
        ;;
  restart)
        $0 stop
        $0 start
        ;;
  reload)
        /usr/sbin/exportfs -r
        touch /var/lock/subsys/nfs
        ;;
  *)
        echo $"Usage: nfs {start|stop|status|restart|reload}"
        exit 1
esac
exit 0

    我们可以看出里面基本上有几个服务,启动、停止、重启、状态等等,我们看看下面的表:

    服务脚本操作
--------------------------------------
操作         作用
--------------------------------------
start             启动服务,等价于服务脚本里的start命令
stop             停止服务,等价于副外长脚本stop命令
restart          关闭服务,然后重新启动,等价于脚本restart命令
reload          使服不重新启动而重读配置文件,等价与服务脚本的reload命令
status           提供服务的当前状态,等价于服务脚本的status命令
condrestart  如果服务锁定,则这个来关闭服务,然后再次启动,等价于condrestart命令
--------------------------------------

    比如,我们要重新启动Samba,则可以用root用户运行下面两个命令,效果一样:

    # /etc/rc.d/init.d/smb restart
# service smb restart

    那么到这里就明白了,假如我们要把那个服务让它系统启动的时候自动启动,那么就配置好一个服务脚本,放到/etc/rc.d/init.d里面就OK了,相应的,如果你要删除那个服务,把脚本移走就可以了.