原文链接:「链接」
Hello,大家好啊!今天给大家带来一篇在信创终端操作系统上实现定时同步数据到Windows 系统共享目录的实战文章。这个方案特别适合日常办公中存在Windows与国产操作系统混合部署的场景,通过自动化同步机制,既能备份关键数据,也能实现跨平台协作!欢迎大家分享点赞,点个在看和关注吧!
一、目标说明
我们将实现以下功能:
在信创系统(如 UOS、麒麟)中,将指定文件夹内容同步到Windows系统共享目录
同步过程使用rsync保持数据一致(增量复制 + 自动删除)
挂载SMB协议的共享目录,确保可跨系统读写
使用cron定时执行同步任务,真正做到自动化无感知数据同步
二、配置Windows文件共享环境
启用SMB功能:
作用:允许Windows开启SMB(Server Message Block)协议,使Linux系统能通过CIFS/SMB 协议访问其共享目录。
打开控制面板 → 程序与功能 → 启用或关闭Windows功能
勾选SMB 1.0/CIFS文件共享支持
点击确定并重启系统
创建共享目录
新建目录,如 C:\Users\pdsyw\Desktop\linuxbackup
右键→属性→共享→高级共享→勾选“共享此文件夹”
设置权限:添加或选择目标用户,赋予“读取/写入”权限
确认Windows主机IP,例如:192.168.80.22
1.点击程序
2.点击启用或关闭Windows功能
3.选择SMB相关
4.重启
5.创建文件夹
6.点击属性
7.点击共享
8.选择用户
9.点击完成
10.点击高级共享
11.点击权限
12.点击添加
13.选择用户
14.勾选权限
15.点击确定
16.点击关闭
17.查看IP地址
三、信创系统挂载SMB共享目录
1.安装软件
pdsyw@pdsyw-PC:~/Desktop$ sudo apt install cifs-utils rsync -y
cifs-utils:提供mount.cifs命令,允许挂载Windows共享目录。
rsync:用于高效的增量同步工具,避免每次都复制全部文件。
2.挂载共享文件夹
pdsyw@pdsyw-PC:~/Desktop$ sudo mkdir -p /windows_backup
pdsyw@pdsyw-PC:~/Desktop$ sudo mount -t cifs //192.168.80.22/linuxbackup /windows_backup -o username=pdsyw,password=1,uid=$(id -u),gid=$(id -g),iocharset=utf8
创建挂载点/windows_backup
使用mount -t cifs命令将Windows上的共享目录挂载到本地路径
参数说明:
uid=$(id -u):挂载目录文件归属为当前用户
gid=$(id -g):同上,指定用户组
iocharset=utf8:保证中文文件名不乱码
vers=3.0(建议加上):用于强制使用SMB协议版本,防止连接失败
3.同步测试
pdsyw@pdsyw-PC:~/Desktop$ rsync -av --delete /home/pdsyw/Desktop/ /windows_backup/data/
-a:归档模式,保留权限、符号链接、时间戳等
-v:详细输出模式
--delete:删除目标目录中源目录已不存在的文件,实现完整镜像同步
源路径结尾有/,表示同步目录内容;没有/ 表示连目录一起复制
4.查看同步文件
pdsyw@pdsyw-PC:~/Desktop$ cd /windows_backup/data/
pdsyw@pdsyw-PC:/windows_backup/data$ ls -ltr
5.在Windows上查看
直接在Windows中打开C:\Users\pdsyw\Desktop\linuxbackup查看是否同步的文件已出现。
6.编辑定时任务
pdsyw@pdsyw-PC:~/Desktop$ crontab -e
pdsyw@pdsyw-PC:~/Desktop$ crontab -l
* * * * * rsync -av --delete /home/pdsyw/Desktop/ /windows_backup/data/
每分钟执行一次同步任务(* * * * *)
crontab -l 可查看当前定时任务
可改为 0 * * * * 表示每小时同步一次。
7.创建文件测试
8.同步正常
9.编写同步脚本
pdsyw@pdsyw-PC:~/Desktop$ sudo vim /usr/local/bin/sync_to_win.sh
pdsyw@pdsyw-PC:~/Desktop$ cat /usr/local/bin/sync_to_win.sh
#!/bin/bash
SRC="/home/pdsyw/Desktop/"
DST="/windows_backup/data/"
# 若目标未挂载则尝试挂载
if ! mountpoint -q /windows_backup; then
mount -t cifs //192.168.80.22/linuxbackup /windows_backup \
-o username=pdsyw,password=1,uid=$(id -u),gid=$(id -g),iocharset=utf8
fi
# 执行同步
rsync -av --delete "$SRC" "$DST"
pdsyw@pdsyw-PC:~/Desktop$ sudo chmod +x /usr/local/bin/sync_to_win.sh
10.编写定时任务
pdsyw@pdsyw-PC:~/Desktop$ sudo crontab -e
pdsyw@pdsyw-PC:~/Desktop$ sudo crontab -l
* * * * * /usr/local/bin/sync_to_win.sh
11.创建文件测试
12.同步正常
通过本文操作,我们成功实现了:在信创系统中挂载Windows SMB网络共享目录,使用rsync 工具实现增量、双向一致的文件同步,配置cron实现定时自动同步机制,这套方案适用于多种应用场景:
日常办公跨平台数据备份
多操作系统协作环境
自动化脚本同步日志、资料、文档等
如果你觉得这篇文章对你有帮助,欢迎分享点赞,点个在看和关注哦!我们下次再见!