通过systemd和rsync来实现:A目录和B目录文件同步

1.需求:

        我们需要实现/home/root/tmp/A 和/home/root/tmp/B的文件同步

2.实现方法:

        2.1 创建测试目录

mkdir -p /tmp/A
mkdir -p /tmp/B

        2.2 创建sync-files-test.path与sync-files-test.service文件

[root@k8s-master system]# cd /etc/systemd/system

#创建sync-files-test.path,监控/home/root/tmp/A目录的变化,有变化时执行sync-files-test.service
[root@k8s-master system]# cat sync-files-test.path 
[Unit]
Description=monitor files and sync

[Path]
PathChanged=/home/root/tmp/A
unit=sync-files-test.service

#创建sync-files-test.service,执行rsync命令,将/home/root/tmp/A/的内容同步到/home/root/tmp/B/目录下
[root@k8s-master system]# cat sync-files-test.service 
[Unit]
Description=sync-files-test.service

[Service]
ExecStart=/usr/bin/rsync -av --delete /home/root/tmp/A/ /home/root/tmp/B/

        2.3 启动sync-files-test.path服务,开启监控

[root@k8s-master system]# systemctl start sync-files-test.path 
[root@k8s-master system]# systemctl status sync-files-test.path 
● sync-files-test.path - monitor files and sync
   Loaded: loaded (/etc/systemd/system/sync-files-test.path; static; vendor preset: disabled)
   Active: active (waiting) since 二 2024-08-20 09:57:31 CST; 5s ago

8月 20 09:57:31 k8s-master systemd[1]: Started monitor files and sync.

3.测试:

#检查/home/root/tmp/A和/home/root/tmp/B文件
[root@k8s-master system]# ls -la /home/root/tmp/A
总用量 0
drwxr-xr-x 2 root root  6 8月  20 09:57 .
drwxr-xr-x 4 root root 24 8月  20 09:57 ..
[root@k8s-master system]# ls -la /home/root/tmp/B
总用量 0
drwxr-xr-x 2 root root  6 8月  20 09:57 .
drwxr-xr-x 4 root root 24 8月  20 09:57 ..

#创建test文件
[root@k8s-master system]# echo hello >/home/root/tmp/A/test

#查看/home/root/tmp/A/test和/home/root/tmp/B/test,一致说明文件已同步
[root@k8s-master system]# cat /home/root/tmp/A/test
hello
[root@k8s-master system]# cat /home/root/tmp/B/test
hello

#追加test文件,然后分别查看
[root@k8s-master system]# echo "test" >>/home/root/tmp/A/test 
[root@k8s-master system]# cat /home/root/tmp/A/test
hello
test
[root@k8s-master system]# cat /home/root/tmp/B/test
hello
test

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值