在 debian 的引导或桌面启动过程中启动脚本的最简单方法是什么?
该脚本由一个用于连接 wifi 的命令 (ifup wlan0) 组成,并且需要 root 权限。我的系统是 debian 测试,slim 登录管理器,jwm 作为窗口管理器。
我已经尝试过以下方法:
- 使用 systemd 创建 .service 方式。它启动脚本,但在桌面登录时将其关闭,无法弄清楚原因。
- 在 Jwm 中使用启动命令,但我认为它失败了,因为启动 ifup 需要 root 权限。
- 将命令放入 .bashrc 文件中。与上面相同
- 将脚本放置在 /etc/rc5.d 目录中。
到目前为止没有任何效果。建议?
答案1
如果其他人需要知道,这就是最终有效的方法。
- 创建 /etc/rc.local 文件
- 修改它 755
- 在 rc.local 文件中我放入:
代码:
#!/bin/sh -e
# This script is executed at the end of each multiuser runlevel
/path/to/my/script
exit 0
答案2
这对我有用:
cat > /etc/init.d/my-start-script <<EOL
#! /bin/bash
### BEGIN INIT INFO
# Provides: my-start-script
# Required-Start: \$local_fs \$syslog
# Required-Stop: \$local_fs \$syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: starts my-start-script
# Description: starts my-start-script using start-stop-daemon
### END INIT INFO
# put your script here
exit 0
EOL
chmod 755 /etc/init.d/my-start-script
update-rc.d my-start-script defaults
您的脚本应该在每次重新启动后运行。后面的评论/bin/bash
为必填项update-rc.d