Linux 启动SUSE reboot时执行脚本

Linux 启动SUSE reboot时执行脚本,linux,shell,startup,Linux,Shell,Startup,我正在尝试在启动SUSE重新启动时执行一个名为“testing”的脚本。所以我把这个简单的脚本放在“/etc/init.d”中 代码是这样的 #!/bin/bash # ScriptName=testing cat > ~/output << "EOF" This text is generated on startup!! EOF 但在我重新启动系统后,什么也没发生 我一定错过了什么 不应该是“touch”,而是指向/etc/init.d/testing的符号链接(ln-

我正在尝试在启动SUSE重新启动时执行一个名为“testing”的脚本。所以我把这个简单的脚本放在“/etc/init.d”中 代码是这样的

#!/bin/bash
# ScriptName=testing
cat > ~/output << "EOF"
This text is generated on startup!!
EOF
但在我重新启动系统后,什么也没发生

我一定错过了什么

不应该是“touch”,而是指向/etc/init.d/testing的符号链接(ln-s)

试一试

希望这有帮助。

尝试将路径设置为绝对路径(即,不要以
~/
开始路径,而是执行类似
/output
的操作)。tilde使用当前用户的主目录,但是,由于此脚本在启动时执行,没有用户登录,因此可能不是您期望的目录。如果没有用户登录,则可能不是您期望的目录。=>它不取决于登录的用户,而是取决于执行进程的UID。由于启动脚本是以root用户身份运行的,因此它将是/root/output(~扩展到root用户的主目录,即UID 0的用户)。
chmod +x /etc/init.d/testing   
touch /etc/rc.d/rc3.d/S12testing
chmod +x /etc/init.d/testing   
touch /etc/init.d/rc.d/rc3.d/S12testing
cd /etc/init.d/rc.d/rc3.d
ln -s ../../testing S12testing