这里写图片描述

1.linux 中开机自启动运行脚本的主要方法介绍

Linux 中开机自启动或者运行的脚本设置大致分为三种
1.将自己写好的脚本或命令写入/etc/rc.local文件中。系统会根据该文件来启动所指定的脚本或命令。
2.通过启动脚本来创建一个服务,使用chkconfig来指定启动服务的级别,并在ntsysv工具下加载让其自动运行。
3.在 /home/用户/.bash_profile文件中 加入脚本或命令。在.bash_profile中加载的脚本或命令只能以单用户login时启动。并不是在Linux启动时启动。
上述三种方法可参考网址http://blog.sina.com.cn/s/blog_70808ace0100o3in.html


2.zookeeper 开机自启动脚本设置

(本次是使用上述的第二种方法,并已经实现;本人曾尝试过第一种方法,但并未实现 zookeeper 开机自启动)

注:机器已经安装并设置好 zookeeper
1. cd 切换到 /etc/rc.d/init.d/目录下,如下图所示
这里写图片描述


2.touch zookeeper创建一个文件,如图所示
这里写图片描述


3.编辑 zookeeper 文件(编辑前先为这个文件添加可执行权限chmod +x zookeeper)
这里写图片描述
注:#!/bin/bash
#2016/1/19 zhaolei
#chkconfig:2345 20 90//这一行是设置开机自启动文件必须的,复制即可
#description:zookeeper
#processname:zookeeper
case $1 in
start) su hadoop2 /usr/local/cluster/zookeeper/bin/zkServer.sh start;;

      *)  echo "require start|stop|status|restart"  ;;

esac 此处的|stop|status|restart可不用写


4.这个时候我们可以通过 service zookeeper start 命令来开启zookeeper
这里写图片描述
注1:(此时如果出现 No such file or directory 的错误提示,此时应该在 /usr/local/cluster/zookeeper/bin 文件下编辑 zkServer.sh脚本,在脚本中加上 ZOOKEEPER_HOME 的路径即可,如下图
这里写图片描述
注2:(此时如果出现某个文件(一般是zookeeper.outwenjian )有权限问题(not permit),则使用命令修改相关文件的权限
sudo chown -R hadoop2:hadoop2 +文件的绝对路径)
注3:(如果出现 service zookeeper start 命令执行成功,但是jps时却未发现QuorumPeerMain进程;查看日志会看到:nohup: failed to run command `java’: No such file or directory Zookeeper。
此时应该在相关的用户下执行 echo ‘source ~/bash_profile’ >> ~/.bashrc 命令即可。
具体原因看链接http://j.news.163.com/docs/99/2014091200/A5UHH9999001H99A.html


5.最后一点我们需要开机自动启动所以需要添加到启动里面
使用chkconfig –add zookeeper命令吧zookeeper添加到开机启动里面
这里写图片描述


6.添加完成之后接这个使用chkconfig –list 来看看我们添加的zookeeper是否在里面
这里写图片描述


7.如果一切都顺利的话则重启机器就可以看到
这里写图片描述

这里写图片描述

那么 zookeeper 开机自启动设置成功!

Logo

更多推荐