Fedora 在启动时下载文件

Fedora 在启动时下载文件

我需要从外部位置下载文件,例如http://s3.amazonaws.com/my-bucket/config.xml然后在服务器启动时将该文件保存到 /etc/config.xml。

在 Fedora 中执行此操作的最佳方法是什么?

我认为我需要一些启动脚本,因为每次重启/启动时都需要执行此脚本。

需要澄清的是,该过程如下:

  • 服务器启动
  • 服务器从该位置下载文件
  • 服务器运行命令“serivce httpd start”

答案1

您可以使用计划任务指令@reboot在每次系统启动时运行脚本。编辑/etc/crontab

@reboot root cd /to/where/xml/file/lives && /usr/bin/wget -q http://s3.amazonaws.com/my-bucket/config.xml && /sbin/service http start

根据 IgnacioVazquez-Abrams 的评论,您需要在启动时使用 chkconfig 命令禁用 httpd,例如

chkconfig httpd off

答案2

您只需将命令放入 即可/etc/rc.local。此脚本在启动过程结束时运行,因此您的网络接口和设置将已初始化。您可能必须禁用现有的 httpd 启动脚本(可能在 中/etc/init.d),方法是将其设为不可执行:

sudo chmod -x httpd

或者简单地将其移动到另一个位置。

有关启动顺序的更多信息,请参见: https://wiki.archlinux.org/index.php/Arch_Boot_Process

它可能不是特定于您的发行版,但该过程在任何现代发行版上通常非常相似。

答案3

编写一个在network/NetworkManager和之间运行的启动脚本httpd。请参阅/usr/share/doc/initscripts-*/sysvinitfiles以了解更多详细信息。

相关内容