全部博文(2065)
分类: LINUX
2010-03-13 16:18:28
linux中配置系统服务
[整理人:遥方
整理时间:
一、setup 、rc.local 和chkconfig三种方式都可以设置
PS: 我就说嘛怎么看到有些安装脚本中会有chkconfig这个东西的。原来是用来做系统服务用的呀!看来我学东西还是不够扎实呀!
第一种)
输入#setup指令进入服务菜单,选择你想启动的服务比如httpd,然后重起机器或者
/etc/rc.d./init.d/httpd start
PS:这种好像用的比较少。我不用它哈哈
第二种)
把启动命令放到/etc/rc.d/rc.local文件里这样就可以每次启动的时候自动启动服务了,例如对于 apache,编译好apache后会在安装目录的bin下生成apachectl文件,这是个启动教本,我们只需要把这个命令加到rc.local里就可以了
echo /usr/local/apache/bin/apachectl >> /etc/rc.d/rc.local,
PS:这样的话系统启动的时候就会自动将这个服务跑起来了。原来如此!
怪不得会看到:echo
"/usr/local/apache/bin/apachectl start" >> /etc/rc.local
设置服务自动启动的方式是在rc.local里还可以加入类似以下的一些脚本:
#sshd
/usr/local/sbin/sshd
#proftpd
/usr/local/sbin/proftpd
#apache
/home/apache/bin/apachectl start 看到它了哈哈。
#mysql
/home/mysql/bin/safe_mysqld --port=3306 &
PS:这种方法的话可以实现当你的OS重启的时候这些服务会自动启动起来!
第三种)
通过chkconfig指令.
使用chkconfig命令来把某项服务加到系统的各项运行级别中,步骤如下:
1 创建启动脚本.
对于apache,mysql,ssh这样的都是自己带的,我们只要稍微修改一下使之支持chkconfig就可以了
PS: 其中我们的启动脚本是自已编写出来的。一般都是些简单的shell就可以了
2 修改脚本
我们需要在脚本的前面加上一下2行,才能支持chkconfig命令
# chkconfig: 2345 08
92
#
# description: Automates a packet filtering firewall with ipchains.
#
chkconfig:后面定义的使启动服务的运行级别(例子中使2345启动改服务),以及关闭和启动服务的顺序,(上例中关闭服务的顺序使8,启动的顺序使92)
descriptions:对改服务的描述(上例中是ipchains包过滤),你可以换成自己想要的
修改好之后执行
cp 你的脚本 /etc/rc.d/init.d/脚本名 (哦想起来了我之前的那个serversocket服务哈哈)
chmod 700 /etc/rc.d/init.d/脚本名 (编写好这个脚本就OK)
chkconfig --add 脚本名
例如:
将其加入Linux启动过程,仅在level 3, level
5级别下运行
[root@Tester init.d]/sbin/chkconfig --add apache-httpd
[root@Tester init.d]/sbin/chkconfig
--level 35 apache-httpd on
之后就可以了,以后每次重新启动服务器都会自动启动和关闭我们的服务了
心得:
1、
第二种方法我受益比较多。
2、
第三种方法的话需要自已编写脚本来控制此服务。所以对于我来讲可用性不高。不过可以学习一下