【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
写一个测试服务脚本
- 测试脚本放在 /etc/init.d/ 目录下
- 应该加有执行权限
- 脚本内容应该有如下行
- # chkconfig: 运行级别 启动顺序编号 关闭顺序编号
- # description:
- 加入开机自启动列表,会生成相应的软链接
- 用 service 命令执行启动关闭重启等操作
- 举例说明
- vim /etc/init.d/testsrv
-
#!/bin/bash # # chkconfig: - 98 4 # description: This is test script. . /etc/init.d/functions start(){ touch /var/lock/subsys/testsrv action "start testsrv" } stop(){ rm -f /var/lock/subsys/testsrv action "stopping testsrv" } status(){ [ -f /var/lock/subsys/testsrv ] && echo "testsrv is running" || echo "testsrv is stopped" } restart(){ stop start } case "$1" in start) start ;; stop) stop ;; restart) restart ;; status) status ;; *) echo "Usage: testsrv {start|stop|status|restart}" ;; esac
-
chmod +x /etc/init.d/testsrv
-
chkconfig --add testsrv
-
chkconfig --level 123456 testsrv on
模拟故障
- 如果在脚本testsrv里的start函数里加上 sleep=10000
- 开机时系统会自动启动 testsrv,则会等待很久
- 解决办法
- 进入单用户模式,由于单用户模式也开机会启动 testsrv,可要等待很久
- 重启 按任意键 更改内核参数输入a 在这一行的末尾加上 init=/bin/bash
- mount -o remount,rw /
- chkconfig --level 123456 testsrv off
- 重启
来源:oschina
链接:https://my.oschina.net/u/4270793/blog/3145596