【发布时间】:2010-08-02 19:38:50
【问题描述】:
我可以在哪里添加到 $PATH 以便所有守护程序都可以使用它?所以在守护进程启动之前它是“包含的”或“来源的”?
非常感谢!
【问题讨论】:
-
不是 XPATH 问题,删除了标签。
-
嗯。不是故意放在那里的..谢谢
标签: linux environment-variables daemon
我可以在哪里添加到 $PATH 以便所有守护程序都可以使用它?所以在守护进程启动之前它是“包含的”或“来源的”?
非常感谢!
【问题讨论】:
标签: linux environment-variables daemon
一个选项是/etc/profile。
【讨论】:
我可能读错了,如果你想在守护进程之前运行一些东西,你可以创建一个 cron 作业或...
系统启动文件位于/etc/rc2.d。您可以使用要在系统启动时运行的命令将文件添加到此目录。假设您想在系统启动时删除一些临时文件,您可以在 /etc/rc2.d 中放置一个名为 TempFileDel 的文件,其中包含删除临时文件的命令,这样每次系统重新启动时它都会运行。 直升机。 正如 shereenmotor 所说,通常启动脚本位于 /etc/rc2.d 中,但这取决于您运行的 UNIX/Linux 和系统的默认运行级别。 但恐怕没那么容易。脚本名称必须遵循一些规则: - 有两种脚本,比方说:杀死脚本和启动脚本。两者都存储在 /etc/rcX.d 中。 - 先执行终止脚本,然后执行启动脚本。 - 杀死脚本名称必须以“K”开头。 - start sctipts 名称必须以“S”开头。 - 在第一个字母之后,必须有一个两位数。这让“rc”知道 sctrips 的执行顺序。 rc 是调用其他脚本的“主”脚本。看看你的 /etc/inittab。 - 最后,您选择的名称。 当“rc”调用此脚本时,它会添加一个参数:“S”脚本开始,“K”脚本停止。这允许您对两个操作使用相同的脚本,只需使用链接。
创建一个文件
#!/bin/ksh
case $1 in
start)
echo Removing file...
rm /tmp/somefile;;
stop)
echo bye!;;
esac
然后
ln -s /path/to/TempFileDel /etc/rc2.d/S10TempFileDel
ln -s /path/to/TempFileDel /etc/rc2.d/K10TempFileDel
【讨论】:
守护进程在不同种类的 UNIX 上以多种不同的方式启动。他们中的大多数都有设置环境的方法。
也许最根本的就是为init进程设置环境,通常是通过/etc/inittab。这将为系统中的所有进程设置启动环境。
【讨论】:
如果你有脚本或命令,你可以把它放在 /bin/ 并使用 chmod 和 chown 设置适当的所有者和权限
【讨论】: