linux下开机自启脚本
时间: 2023-10-25 11:06:55 浏览: 108
在 Linux 下,我们可以通过编写一个自启动脚本来实现开机自启动某个程序或服务。以下是实现步骤:
1. 编写启动脚本
在 /etc/init.d 目录下创建一个新的脚本文件(以 .sh 结尾),比如我们要启动一个名为 myapp 的程序,可以创建一个名为 myapp.sh 的脚本文件。在脚本中编写启动 myapp 的命令,如下所示:
```
#!/bin/bash
# description: myapp startup script
# chkconfig: 2345 20 80
case "$1" in
start)
echo "Starting myapp..."
/path/to/myapp start
;;
stop)
echo "Stopping myapp..."
/path/to/myapp stop
;;
restart)
echo "Restarting myapp..."
/path/to/myapp restart
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac
exit 0
```
其中,chkconfig 一行是必须的,它指定了自启动的级别及启动顺序。2345 表示在 2、3、4、5 级别下启动,20 表示启动顺序为 20,80 表示停止顺序为 80。
2. 添加执行权限
使用 chmod 命令为脚本文件添加执行权限,如下所示:
```
chmod +x /etc/init.d/myapp.sh
```
3. 添加到系统服务
使用 chkconfig 命令将脚本文件添加到系统服务中,如下所示:
```
chkconfig --add myapp.sh
```
执行完这个命令后,脚本文件将自动添加到系统服务中。可以使用 chkconfig --list 命令查看所有已经添加到系统服务中的脚本文件。
4. 启用自启动
使用 chkconfig 命令启用自启动,如下所示:
```
chkconfig myapp.sh on
```
执行完这个命令后,myapp 会在系统启动时自动运行。
注意:以上步骤仅适用于使用 SysVinit 系统初始化程序的 Linux 发行版,如 CentOS、Red Hat、Debian、Ubuntu 等。对于使用 systemd 系统初始化程序的发行版,需要使用 systemctl 命令来管理服务。
阅读全文