Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
保持主目录与Linux设备同步_Linux_Bash_Ubuntu_Synchronization_Shell - Fatal编程技术网

保持主目录与Linux设备同步

保持主目录与Linux设备同步,linux,bash,ubuntu,synchronization,shell,Linux,Bash,Ubuntu,Synchronization,Shell,我有两台服务器,计算机A和计算机B,都运行Linux。我需要编写一个程序或shell脚本,它将持续监视计算机a上我的主目录的内容,如果有任何更改,请将更改复制到计算机B上我的主目录,以便两个主目录始终相同。(对计算机B上的主目录所做的任何更改都将被安全地忽略。)使用,这将解决您的问题。大多数发行版都已经预先安装了此功能。使用,这将解决您的问题。大多数发行版都已经预装了该软件。您是否考虑过通过网络文件系统将/home从计算机A导出到计算机B,例如 您还可以以只读模式将导出的文件系统装载到B上,这样

我有两台服务器,计算机A和计算机B,都运行Linux。我需要编写一个程序或shell脚本,它将持续监视计算机a上我的主目录的内容,如果有任何更改,请将更改复制到计算机B上我的主目录,以便两个主目录始终相同。(对计算机B上的主目录所做的任何更改都将被安全地忽略。)

使用,这将解决您的问题。大多数发行版都已经预先安装了此功能。

使用,这将解决您的问题。大多数发行版都已经预装了该软件。

您是否考虑过通过网络文件系统将
/home
从计算机A导出到计算机B,例如


您还可以以只读模式将导出的文件系统装载到B上,这样,如果需要,您将无法从B修改
/home
的内容。

您是否考虑过通过网络文件系统将
/home
从计算机A导出到计算机B,例如


您还可以以只读模式将导出的文件系统装载到B上,这样,如果需要,您将无法从B修改
/home
的内容。

假设一个合理的最新Linux内核(包括inotify,它从2.6.13开始出现),您可以使用所述的inotify工具来监视更改,并调用文件上的rsync来更新计算机B。这应该满足您的要求,并允许B上的更改不会传播到A


您可能也可以使用incron做同样的工作,它与cron类似,但基于文件系统事件而不是时间,但它似乎更适合用于单个文件。

假设一个合理的最新Linux内核(包括inotify,它从2.6.13开始出现),您可以使用所述的inotify工具来监视更改,并调用文件上的rsync来更新计算机B。这应该满足您的要求,并允许B上的更改不会传播到A


您可能也可以使用incron做同样的工作,它与cron类似,但基于文件系统事件而不是时间,但它似乎更适合用于单个文件。

rsync不监视目录中的更改,尽管我同意它是用于实际传播的一个好工具。确保它立即发生可能有点困难。rsync不监视目录中的更改,尽管我同意它将是用于实际传播的一个好工具。确保它立即发生可能有点困难。