【问题标题】:Add to $PATH in linux so that it's available to daemons在 linux 中添加到 $PATH 以便它可用于守护进程
【发布时间】:2010-08-02 19:38:50
【问题描述】:

我可以在哪里添加到 $PATH 以便所有守护程序都可以使用它?所以在守护进程启动之前它是“包含的”或“来源的”?

非常感谢!

【问题讨论】:

  • 不是 XPATH 问题,删除了标签。
  • 嗯。不是故意放在那里的..谢谢

标签: linux environment-variables daemon


【解决方案1】:

一个选项是/etc/profile

【讨论】:

    【解决方案2】:

    我可能读错了,如果你想在守护进程之前运行一些东西,你可以创建一个 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

    【讨论】:

    • 这可能是完美的。我会试一试!谢谢!
    【解决方案3】:

    守护进程在不同种类的 UNIX 上以多种不同的方式启动。他们中的大多数都有设置环境的方法。

    也许最根本的就是为init进程设置环境,通常是通过/etc/inittab。这将为系统中的所有进程设置启动环境。

    【讨论】:

    • 听起来不错。不过,我在 Ubuntu 中,并没有看到该文件
    【解决方案4】:

    如果你有脚本或命令,你可以把它放在 /bin/ 并使用 chmod 和 chown 设置适当的所有者和权限

    【讨论】:

      猜你喜欢
      • 2011-03-06
      • 1970-01-01
      • 1970-01-01
      • 2015-06-15
      • 2013-07-31
      • 1970-01-01
      • 1970-01-01
      • 2021-08-10
      相关资源
      最近更新 更多