添加开机自启脚本
1.在/etc/init.d/下创建一个bootstart.sh脚本
cd /etc/init.d
vim bootstart.sh
脚本内容如下
#!/bin/sh
#chkconfig: 2345 80 90
#description:开机自动启动的脚本程序
# 开启redis服务 端口为6379
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
#tomcat 端口8060
/usr/local/tomcat/tomcat-admin/bin/./startup.sh
#nginx 目录/wwww
/usr/local/nginx/sbin/nginx
按键盘esc 退出输入模式,然后输入命令wq退出编辑模式
:wq #退出编辑模式
脚本第一行 “#!/bin/sh” 告诉系统使用的shell;
脚本第二行 “#chkconfig: 2345 80 90” 表示在2/3/4/5运行级别启动,启动序号(S80),关闭序号(K90);
脚本第三行 表示的是服务的描述信息
注意: 第二行和第三行必写,否则会出现如“服务 *.sh 不支持 chkconfig”这样的错误。
- 给脚本赋可执行权限
chmod +x bootstart.sh
3.添加脚本到开机自动启动项目中
chkconfig --add bootstart.sh
chkconfig bootstart.sh on
4.重启linux系统
reboot
二 这是一个实例
(1)编辑文件 /etc/rc.local
输入命令:
vim /etc/rc.local #将出现类似如下的文本片段:
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
/etc/init.d/mysqld start #mysql开机启动
/etc/init.d/nginx start #nginx开机启动
/etc/init.d/php-fpm start #php-fpm开机启动
/etc/init.d/memcached start #memcache开机启动
#在文件末尾(exit 0之前)加上你开机需要启动的程序或执行的命令即可(执行的程序需要写绝对路径,添加到系统环境变量的除外),如:
/usr/local/thttpd/sbin/thttpd -C /usr/local/thttpd/etc/thttpd.conf
(2)自己写一个shell脚本
将写好的脚本(.sh文件)放到目录 /etc/profile.d/ 下,系统启动后就会自动执行该目录下的所有shell脚本。
(3)通过chkconfig命令设置
将启动文件cp到 /etc/init.d/或者/etc/rc.d/init.d/(前者是后者的软连接)下
vim 启动文件,文件前面务必添加如下三行代码,否侧会提示chkconfig不支持
#!/bin/sh 告诉系统使用的shell,所以的shell脚本都是这样
#chkconfig: 35 20 80 分别代表运行级别,启动优先权,关闭优先权,此行代码必须
#description: http server(自己随便发挥)//两行都注释掉!!!,此行代码必须
chkconfig --add 脚本文件名 操作后就已经添加了
网友评论