在关机时运行脚本

我已经阅读了这个和类似问题的答案,但到目前为止,没有一个对我有用。

在我的Ubuntu 11.10(oneiric)系统上,/ /etc/rc0.d//etc/rc0.d/中的所有文件都是链接。 我将我的脚本(名为shutdown_script )放在/etc/init.d/目录中并创建了两个符号链接,一个在/etc/rc0.d/ ,另一个在/etc/rc6.d ,两者都带有名称K99shutdown_script 。 脚本没有在关机时运行,这就是我想要的。 该脚本只是为了测试我是否可以在关机时运行脚本; 我在下面的shutdown_script中提供代码:

 #!/bin/sh # # Tests script to run at shutdown. # Script creates a fil and writes to it. # # Usage: ./shutdown-script touch $HOME/shutdown.log echo "Shutting down at `date` ..." >> $HOME/shutdown.log 

如您所见,它只是向主文件夹添加一个文件,显示当前的日期和时间。

请问你能告诉我我可能做错了什么,更重要的是,如何让脚本在关机时运行。

原则上你正在做的是正确的。 我猜你可能正在寻找你想要创建的shutdown.log文件的错误位置。 由于这些脚本将在root用户关闭时执行,因此变量$HOME将不会指向您通常的主目录。 查看是否已创建/root/shutdown.log ,或在脚本中提供绝对路径而不使用$HOME变量。