我有一个在 linux 服务器上运行的应用,我需要为其数据创建一个本地备份 。
但是,每小时会在应用程序中添加新数据,我想将本地备份数据与服务器数据进行同步。
我想编写一个脚本( shell或python ),该脚本可以自动从 linux 服务器下载新添加的数据< / strong>到我的本地计算机备份。但是我是linux环境的新手,不知道如何编写shell脚本来实现这一目标。
实现此目标的更好方法是什么?这样做的脚本是什么?
答案 0 :(得分:0)
rsync -r适合您的用例,它是单行命令。
rsync -r source destination
或根据具体情况需要的选项。
因此,您不需要使用python脚本,但是您仍然可以编写它并使用上面的命令。
此外,如果您希望Python脚本以自动方式执行此操作,则可以选中event scheduler module。
答案 1 :(得分:0)
这取决于您的数据在Linux服务器上的存储位置和存储方式,但是您可以编写一个网络应用程序,将数据推送到客户端,然后客户端将数据保存在本地计算机上。您可以为此使用套接字。
如果数据可通过http服务器获得,并且您知道如何编写RESTful API,则也可以使用它,并使每小时在本地计算机上运行的任务调用REST API并处理其(JSON)数据。请记住,如果服务器在线运行并且不在同一LAN中,则需要保护API。
您还可以编写一个小型应用程序,每小时通过FTP从服务器下载文件(如果要备份系统上存储的文件)。但是,您将需要知道文件的确切路径。
以上所有解决方案均适用于Python编程。可以使用Shell脚本,但要复杂一些。我将使用Python来执行此类任务,因为您有许多与网络相关的库(ftp,套接字,http客户端,简单的http服务器,WSGI库等)。