用service命令和chkconfig命令管理服务进程

如果你都是按照默认配置安装的那么只要按照如下步骤就可以了

先我们把mysql增加到linux的系统服务中去

用service命令和chkconfig命令管理服务进程

 

mysql:

 

1、cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql  
将服务文件拷贝到init.d下,并重命名为mysql

 代码如下

 service命令可以快速地开启和停止linux中的服务程序,这在调试过程中非常有用.chkconfig命令可以快速地设置开机时需要自动启动的服务程序.

2、chmod +x /etc/init.d/mysql    赋予可执行权限

复制代码

  这两个命令的功能都可以通过其他方法实现,只不过有了它们之后更加方便,维护工作可以更加轻松.

3、chkconfig –add mysql        添加服务

cd /usr/local/mysql/share/mysql

 

4、chkconfig –list             显示服务列表

cp mysql.server /etc/init.d/mysqld

service命令和进程管理脚本

图片 1

chkconfig –add mysqld

  在debian
linux中如果用apt-get命令安装mysql,nginx等服务程序,安装程序都会自动在/etc/init.d/目录中创建一个管理此服务进程用的shell脚本,如:

如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入

chkconfig mysqld on

 

 

service mysqld restart

1

chkconfig --level 345 mysql on

5、reboot重启电脑

6、netstat -na | grep 3306,如果看到有监听说明服务启动了

转载声明:http://www.cnblogs.com/fnlingnzb-learner/p/5832917.html

现在你就可以使用:service mysqld start来启动mysql了

/etc/init.d/mysql

apache:

2

 代码如下

/etc/init.d/nginx

复制代码

3

cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
增加httpd服务
vi /etc/rc.d/init.d/httpd

/etc/init.d/keepalived

在第2行加入

  这样我们就用可以用/etc/init.d/{脚本文件名} start 或 service
{脚本文件名} start 来启动一个服务,如:

# chkconfig: – 85 15

 

# description: Apache is a World Wide Web server. It is used to serve

1

# HTML files and CGI.

#启动mysql服务

然后执行

2

 代码如下

/etc/init.d/mysql start

复制代码

3

chkconfig –add httpd

service mysql start

这样就可以使用service httpd
start来启动apache了。

  如果进程管理脚本支持restart命令参数,还可以用
/etc/init.d/{脚本文件名} restart 或 service {脚本文件名} restart
来重新启动 一个服务,如:

另一篇相关教程

1

Apache加入到系统服务里面:

#重新启动mysql服务

cp /安装目录下/apache/bin/apachectl /etc/rc.d/init.d/httpd

2

修改httpd

/etc/init.d/mysql restart

在文件头部加入如下内容:
 
 

3

 代码如下

service mysql restart

复制代码

  上面两个命令的效果是一样的,这样重启mysql或php-fpm的时候就不用每次都先把进程kill掉,然后写一大段路径和参数来启动服务了.只不过用service命令的话只要记住脚本文件名,不用写绝对地址,这样比较方便,默认的脚本文件名都是和服务程序的名字一样的.

 ### 
  # Comments to support chkconfig on RedHat Linux 
  # chkconfig: 2345 90 90 
  # description:http server 
  ### 
  保存 
  在打入 
  #chkconfig –add httpd 
  #chkconfig –level 345 httpd on

 

MySQL加入到系统服务里面 
  

  如果自己编译安装php-fpm等服务程序,/etc/init.d目录中的这个脚本是需要自己加的.幸运的是很多服务程序的源码包中都附带了这个脚本如:

 代码如下

 

复制代码

1

cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld 
  #把msql的脚本文件拷到系统的启动目录下 
  cd /etc/init.d/ 
  chkconfig –add mysqld #将mysql加到启动服务列表里 
  chkconfig mysqld on #让系统启动时自动打开mysql服务 
  Apache加入启动项里面: 
  echo ‘/usr/local/apache2/bin/apachectl start ‘ >>
/etc/rc.local

mysql5.6源码中的 support-files/mysql.server

总结,上面的方法都差不多,只是两篇文章的写法不一样了,这里大家可自行选择加入系统服务的命令了。

2

php5.4源码中的 sapi/fpm/init.d.php-fpm

3

redis2.6源码中的 utils/redis_init_script

这些就是应用程序官方提供的进程管理脚本,把它们复制到/etc/init.d目录中,顺便改一个简短点儿的名字,就可以用service
命令管理服务进程了.别忘了给复制到/etc/init.d中的脚本加可执行权限.

1

chmod +x /etc/init.d/mysql /etc/init.d/nginx /etc/init.d/redis

  有的时候需要修改脚本中的参数如路径名等才能顺利执行,需要简单调试一下.

 

  这里需要注意一下service命令后面的参数 

  service命令后面的第一个参数,一定要和/etc/init.d中的脚本名字一样,要不然系统会报错,为了简单,可以直接命名成服务程序名字. 

  service命令的第二个参数,如start,stop,restart,它是传给进程管理脚本的.所以是否支持这个参数不是service命令决定的,是进程管理脚本决定的,使用不同的进程管理脚本,可以选择的命令参数和功能也是不同的.

  进程管理脚本都会支持start和stop两个命令参数,还有可能支持其他的命令参数.一般可以用service
{脚本名} 查看脚本的帮助信息,里面有支持的命令参数如:

You can leave a response, or trackback from your own site.

Leave a Reply

网站地图xml地图