1

我想通过在远程服务器上运行的简单 Rails 应用程序在我的笔记本电脑上自动创建符号链接。我需要能够从任何地方在笔记本电脑上运行内核任务。这甚至可能吗?

4

4 回答 4

2

从远程获取脚本并执行它

您的服务器可以创建一个目标是在您的笔记本电脑上执行的 Shell 或 Ruby 脚本。您的笔记本电脑现在需要定期检查并执行此脚本。这样做的好处是:

  • 这不仅适用于您的笔记本电脑,也适用于检查脚本的任何其他机器。
  • 除了http,您不需要任何其他传输
  • 服务器不需要提前知道客户端
  • 这适用于任何其他任务,而不是在客户端创建符号链接而不进行更改。

客户端可以很简单:

wget -O - "url" | ruby -

或者

wget -O - "url" | sh -

在您的服务器上生成符号链接列表

您的服务器可以创建所需符号链接的列表。在您的客户端计算机上,您需要一个程序来定期解析此列表并创建符号链接。优点是:

  • 您不需要信任服务器
  • 你的服务器不能做rm -rf /意外
  • 除了http,您不需要任何其他传输
  • 这不仅适用于您的笔记本电脑,也适用于检查列表的任何其他机器。

客户端可以很简单

wget -O - "url" | ruby -r yaml -e "YAML.load(STDIN).each { |a, b| \`ln -s \"#{a}\" \"#{b}\" \` }"
于 2009-11-06T09:21:09.320 回答
1

您可以通过使用 Fuse 挂载文件系统来实现。在我看来,这是一件非常整洁的小事。

在这里找到保险丝

编辑:将链接更改为指向 FuseFs,它与 Ruby 绑定融合在一起,如果您使用 Ruby,这就是您所需要的。

于 2009-11-06T08:31:19.253 回答
1

您可以使用基于 ruby​​ 的 puppet。

于 2009-11-06T12:20:19.933 回答
0

如果它只是您的笔记本电脑而没有其他客户端,那么您可以将服务器 ssh 连接到您的笔记本电脑并做任何需要的事情。一般来说,不,HTTP 服务器不可能在客户端机器上做任何事情。

于 2009-11-06T08:30:05.713 回答