1.定时数据同步
这里把定时触发和同步一起来简单介绍一下,Crontab是个能定时执行命令的一个工具, 它是用来让使用者在固定时间或固定间隔执行程式之用,下面就介绍一下这个命令的常用参数。
Crontab命令参数:
-e执行文字编辑器来设定时程表,内定的文字编辑器是VI,如果你想用别的文字编辑器,则请先设定VISUAL环境变数来指定使用那个文字编辑器(比如说setenvVISUALjce)。
-r删除目前的时程表。
-I列出目前的时程表。
Crontab时程表示格式如下:f1 f2 f3 f4 f5 command
其中,f1是表示分钟,f2表示小时,f3表示一个月份中的第几日,f4表示月份,f5表示一个星期中的第几天。Command表示要执行的命令。当f1为 时表示每分钟都要执行command,f2为*时表示每小时都要执行程式,其余类推。当f1为a-b时表示从第a分钟到第b分钟这段时间内要执行,f2为a-b时表示从第a到第b小时都要执行。当f1为*/n时表示每n分钟个时间间隔执行一次,f2为*/n表示每n小时个时间间隔执行一次,其余类推。当f1为a,b,C,......时表示第a,b,C,......分钟要执行,f2为a,b,C,...... 时表示第a,b,C,......个小时要执行,其余类推。当然也可以将要定时执行的命令存放在预备文档里,这里就得用crontab file的方式来设定时程表。
2.数据同步
现在来介绍一下如何让数据同步的一个工具,Rsync可以让数据同步,下面看一下一些Rsync的主要参数:
-V,--verbose 输出的信息;
-q,--quiet 安静模式,几乎没有信息产生.常用在以cron执行rsync;
-a,--archive archive mode权限保存模式,相当于-rlptgoD 参数;
-p,--perms 保留档案权限;
-O,--owner保留档案所有者(root only);
-g,--g rouP 保留档;案群;
-D,--devices 保留device 信息(root only);
-e,--h=COMMAND定义所使用的remote shell;
-4, --ipv4 使用IPv4协议;
-6, --ipv6 使用IPv6协议;
下面看一下如何通过SSH和Rsync工具组合使用方法:
#rsync -ave ssh 192.168.1.2:/home/ftp/pub/ /home/ftp/pub/
需要注意的是,源端目录名称末尾的/。在源说明中后缀/通知rsync复制该目录的内容,但不复制目录文件自身。要想把目录包含在要复制内容的最顶层就要去掉/;
使用SSH传输rsync流量具有下述优点, 可通过网络加密数据,而且速度非常快,使用SSH客户端密钥建立的任何信任关系。如果要在两台计算机之间保持大型、复杂目录结构的同步性(尤其是两者间的差异很小时), 那么rsync就是一种使用起来极为方便(并且执行速度很快)、随心所欲的工具。
#crontab -e
0 17 * * 1-5 rsync -ave ssh 192.168.0.103:/my /my
上面的操作"crontab-e"命令是编辑定时启动脚本,然后在周一到周五的每天下午5点执行SSH远程自动登录然后把192.168.0.103的/my目录下的所有东西同步到本地的/my目录下,这样就达到了自动数据同步备份的目的了。
分享到:
相关推荐
Linux目录数据定时备份
在`/etc/crontab`或用户个人的`.crontab`文件中添加定时任务,例如每天凌晨1点执行rsync备份: ``` 0 1 * * * rsync -arvz --progress --password-file=/etc/rsyncd/rsyncd.pass --port=873 rsync@192.168.0.252::...
5. **自动化备份**:结合crontab工具,可以设置定时任务,让rsync定期执行备份操作,实现自动化增量备份。 【总结】 rsync是一款强大的文件同步和备份工具,它的灵活性和效率使其成为Linux环境中不可或缺的一部分...
使用 crontab 可以实现定时执行 rsync 命令,从而实现定时备份。 crontab 的格式为: minute hour day month day_of_week command minute: minute(0-59) hour: hour(0-23) day: day of the month(1-31) ...
crontab是一个命令工具,用于在Linux系统中计划和执行任务。我们可以使用crontab来实现每天、每周、每月等定时备份的任务。 使用rsync服务器可以实现快速、安全、高效的文件备份和同步。架设rsync服务器过程简单,...
例如,在crontab配置文件中添加以下行,每天凌晨1点执行同步: ```bash 0 1 * * * rsync -avz --delete /source/directory/ user@remote_host:/destination/directory/ ``` ### 6. 在企业环境中的应用 在企业环境...
1. **定时任务同步**:通过crontab设置定时任务,定期执行rsync命令来同步文件。这种方法简单易行,但无法实时响应文件的变化。 2. **rsync+inotify实时同步**:结合inotify工具,当主服务器上的文件发生改变时,...
在`crontab -e`中添加一行表示每天凌晨1点执行Rsync同步的命令,如: ```bash 0 1 * * * rsync -avz --delete /source/directory user@remote:/destination/directory ``` 这条命令将在每天1点执行一次同步,`-a`...
# 执行Rsync命令进行同步 rsync -avz --delete $LOCAL_PATH $REMOTE_HOST:$REMOTE_PATH ``` 在这个脚本中,`-a`选项表示归档模式,它会保留权限、时间戳等属性;`-v`表示详细模式,可以看到同步过程中的信息;`-z`...
rsync是一款强大的数据同步工具,而crontab则是Linux下的定时任务调度器。 rsync的主要特点包括: 1. 镜像备份整个目录树和文件系统,确保源服务器和目标服务器的文件一致性。 2. 保留原始文件的权限、时间戳、软...
用户可以创建一个crontab文件,设定特定时间执行`rsync`命令来同步数据。例如,你可能会设置每天凌晨1点进行一次全量同步,之后每隔5分钟进行一次增量同步。定时同步的配置可能如下: ```bash 0 1 * * * rsync -avz...
- **编写计划任务脚本**:通过crontab设置定时任务,使用shell脚本控制RSYNC同步过程。 #### 项目背景 在项目背景描述中,公司需要加强开发人员线上代码的安全性,通过在独立的备份服务器上进行统一集中备份来实现...
5. **设置定时任务**:通过crontab等工具设置定时任务,定期执行同步脚本,确保数据的及时更新。 #### 七、总结 rsync作为一种高效的数据同步工具,在Linux和Windows系统间的数据备份管理中发挥着重要作用。通过与...
现在,你可以编写一个shell脚本来执行rsync同步。例如,在WEB1上创建名为`test.sh`的脚本: ```bash #!/bin/bash /home/rsync/bin/rsync -azu --progress /home/test/. root@192.168.1.110:/tmp/test/ ``` `-a`...
接下来,创建一个脚本文件,例如`bf.sh`,用于执行Rsync同步命令。这些命令可以是完全同步,包含`--delete`选项,或者增量同步,根据实际需求选择。例如,可以使用`rsync -vzrtopg --progress -e ssh --delete user@...
使用命令 `/etc/init.d/xinetd start` 启动xinetd,然后使用 `/usr/bin/rsync --daemon` 启动Rsync守护进程。 7. **验证Rsync服务状态**: 使用 `lsof -i :873` 检查Rsync是否正在监听873端口。 8. **SSH认证**...
结合cron定时任务,可以定期自动执行rsync同步。在`crontab -e`中添加一行,如每天凌晨1点执行同步: ```bash 0 1 * * * rsync -avz /source /destination ``` ### 八、rsync的其他特性 - `--link-dest`:通过硬...
为了定期同步,可以使用crontab设置定时任务。例如,每20分钟同步一次: ```bash # crontab -e 20 * * * * /data/rsync.sh ``` rsync.sh是包含rsync命令的shell脚本。 rsync有多种选项,如`-a`表示归档模式,保留...