Chinaunix首页 | 论坛 | 博客
  • 博客访问: 28703375
  • 博文数量: 2065
  • 博客积分: 10377
  • 博客等级: 上将
  • 技术积分: 21525
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-04 17:50
文章分类

全部博文(2065)

文章存档

2012年(2)

2011年(19)

2010年(1160)

2009年(969)

2008年(153)

分类: LINUX

2010-03-13 16:18:28

linux中配置系统服务

[整理人:遥方 整理时间:2010-3-13]

一、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、   第三种方法的话需要自已编写脚本来控制此服务。所以对于我来讲可用性不高。不过可以学习一下

 

 

阅读(627) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~