远程更新一个Linux的盒子

我有一堆自制的Linux机器(使用buildroot制作的),我希望它们能够通过我的ubuntu服务器的互联网固定IP来自动更新

我想更新内核以及一些文件或目录等

我开始自己的SSH脚本,将列出服务器上的一个/ home / update /的文件,如果有必要,上传最新的一个,然后运行一个脚本,将做每一个变化,但…

我不认为这是正确的方式,我想知道是否有一些简单的方法来做到这一点。

谢谢 :)

如果您可以将所有文件打包为Debian软件包,并且所有系统都是相同的,则可以在包含这些系统所需软件包的服务器上创build自定义存储库 ,然后只需要apt-get updateapt-get upgrade定期的。 你需要确保你在系统的本地副本上testing这个版本库,然后才能find没有ssh服务器的“远端”计算机,否则就会被破坏。

否则,您可能需要使用Puppet ( 这里继续)或Chef来pipe理所有这些系统及其更改。

“rsync”是一个很好的命令。 它会自动使用SSH连接并将远程文件与本地进行比较,以确定哪些需要更新。

有很多选项,所以你需要阅读http://rsync.samba.org/documentation.html的文档

这是保持本地和远程目录或文件最新的好方法。

如果你正在更新已安装的程序,内核等,你应该考虑使用“yum update”(fedora / redhat)或者“apt-get update && apt-get upgrade && apt-get dist-upgrade”(ubuntu / debian)。 对于定制的内核或应用程序,您可能需要执行自己的自定义更新脚本。

也许我在这里错过了一些东西,但是,你有没有看过yum update或类似的命令为Ubuntu? http://ubuntuforums.org/showthread.php?t=11103