syncd本地和超SSH同步目录
文章解释如何搭建syncd本地和超SSH工具同步目录
syncdLinux系统使用Live同步目录工具本地可找到这些目录,或在同一机器内或远程在不同机器上查找。远程同步文章聚焦使用SSH实现
使用的好处syncd即自由轻量解法不会影响文件系统性能系统定期监控文件修改并使用rsync
执行同步
需求
面向syncd正确工作你需要rsync
安装
注释 :推荐运行下命令sudo
安装rsync
CentOS、Fedora或RedHat系统使用
yum安装rsync
Ubuntu或Debian系统使用
apt-Get更新apt-get安装rsync
安装 Lsyncd
安装Isyncd
CentOS系统、Fedora系统或RedHat系统上需要先启动EPEL存储器Isyncd
.使用下列命令实现安装
yum安装epel释放yum安装Isync
Ubuntu或Debian系统Isyncd
工具包含在默认仓库中, 因此下列命令应足以安装 :
sudo获取更新sudo获取安装Isyncd
确认安装成功并验证安装版使用下列命令:
Isyncd-version
syncd配置文件
默认配置文件Lsyncd自动创建/etc/lsyncd.conf
安装完成后
文件包含所有参数执行目录间同步,无论是局部或远程同步
示例配置文件您可以审查内容/usr/share/doc/lsyncd*/examples/
syncd版本安装
/sr/share/doc/syncd-22.2/examples/s-lh共40-r根7152017年2月16日lalm.lua根10552月16bash.lua根5342017年2月16日根33762162017lftp.lua根根2278201716lgforce.lua根27372017年2月16日liagemagic.lua根22017年2月16 lpostcmd.lua-rw-r-r-r根211201716rsync.lua根根2042017年2月16 lsyncssh.lua根根40472017年2月16sayirc.lua
对本文章而言,配置文件可提供实用示例lsync.lua
本地同步lsyncssh.lua
远程同步
配置文件结构如下:
cat/sr/share/doc/syncd-2.2/examples/lsync.lua简单示例默认rsync{stativeFile=syncd.stats
如前所述,Lscernd使用rsync
工具同步执行,以便使用rsync
标志加插进程个性化rsync
参数到同步
语句 :
script=伪,压缩=真,链接=假,所有者=假,perms=假,verbose=真
同时,还必须考虑到Lsyncd汇总事件预设20秒后验证是否做过修改时间可用延迟
参数输入同步
段配置文件:
{默认.rsync,源=src,目标=rg,延迟=5
同步本地目录
同步本地目录内容/path/source_dir
本地目录/path/destination_dir
需要修改配置文件,建议创建日志文件与状态文件跟踪任务进度,尽管这是一个可选步骤:
mkdir /var/log/lsyncd touch /var/log/lsyncd/lsyncd.{log,status}
下一步是修改配置文件/etc/lsyncd.conf
指定源和目标目录,并创建日志和状态文件位置配置如下:
syncd用户配置文件简单示例默认rsync,但执行通过目标更多例子见/usr/share/doc/syncd*/examples/secs {logfile=/var/log/syncd/syncd.log,stativeFile=/var/log/syncd/syncd.status
激活新配置启动服务命令如下:
systemctl启动
听从以上指令后, Lsyncd将开始同步内容/path/source_dir
至/path/destination_dir
.
警告:唯一安全性是允许Lsyncd启动启动并确认多线程显示 Lsyncd安装并使用例举 :
重开时采取下列步骤:
rsync检验您是否处于远程/服务器状态
rsync -n -avrc root@REMOTE_SERVER:/PATH_TO_FOLDER_TO_BE_SYNCED/* /PATH_TO_FOLDER/
启动 Lsyncd使用 :
systemctl启动Isyncd.service
需要同步多项本地目录
多对目录同步同步
配置文件中的语句 :
sync默认值/path/bource2
SSH同步远程目录
使用 Lsyncd实现远程同步时,源服务器必须无密码SSH访问目标服务器通过创建SSH密钥完成源码服务器
生成SSH无密码访问密钥
使用下命令源服务器生成密钥 :
ssh-keygen-trsa
提示输入文件并保存密钥留空使用默认位置在此后, 下一提示请求密码句留空以备完全无密码登录
现在按键生成后,复制按键目的地服务器复制进授权键
文件目标服务器使用下指令源码服务器生成密钥
ssh拷贝识别器_Serveri
测试无密码连接完成后登录目的地服务器自源码一:
ssh Destration_serveri
如果您能登录而不提示密码,进程成功
开始登录后创建远程主机目录,该目录将作为目标文件夹工作并退出SSH会话:
mkdir/path/remote_destation_dir退出
编辑配置文件
配置文件结构将保持段解析同步本地目录,但将对本地目录作一些修改同步
语句 :
- 上头
默认.rsync
属性变换default.rsyncssh
帮助实现rsync
SSH工具 - 上头
目标
属性将用两个属性替换以指定远程目的地:主机
并目标目录
.
配置文件将看起来像此 :
{日志file/var/log/syncd/syncd.log/sidfile/svar/log/syncssh/syncd.statives
修改后配置文件启动服务
systemctl启动
syncd服务已经运行时,只需重新启动它:
sudo服务Isyncd重开
警告:唯一安全性是允许Lsyncd启动启动并确认多线程显示 Lsyncd安装并使用例举 :
重开时采取下列步骤:
rsync检验您是否处于远程服务器状态
rsync -n -avrc root@REMOTE_SERVER:/PATH_TO_FOLDER_TO_BE_SYNCED/* /PATH_TO_FOLDER/
启动 Lsync
systemctl启动Isyncd.service
排除Lsyncd目录
有时你需要排除特定目录中某些选择文件夹实例包括:
- NFS安装媒体文件
- 日志文件同步时日志文件生成大量不必要的聊天带宽使用在某些情况下,这可能造成重大延迟同步
- 运行过程使用的临时文件
排除文件夹只需放置排除文件夹的相对路径例举 :
- /var/目标目录与serve同步
- /var/www/vhosts/www.example.com/wp-content/uploads目录从您的NFS服务器上安装或您不想要同步
- 创建Isyncd配置排除假设CentOS6使用Lsyncd2.1.5
syncd配置显示于下方excludeFrom线
vm/etc/syncd/syncd.confs
接下去排除与源目录相对路由同步目标目录为/var/www,而我们想排除的目录为/var/www/vhosts/www.example.com/wp-content/uploads输入方式为
cat /etc/lsyncd-excludes.txt vhosts/www.example.com/wp-content/uploads
CAUTION:确保排除文件无空行if it does,Isyncd视此为exclude/
hth登录平台syncdNFS解决方案
syncd常用复制主从架构文件处理内容/代码更新大有效,用户提供或媒体文件大有效,使用NFS分享各种网络服务器文件夹往往更容易格外小心排除Lsyncd分享NFS文件夹最坏的假设方案是重开主服务器但NFS共享失败挂载,这可能导致Lsyncd清除NFS共享内容
有几种方法处理
选项1:排除Lsyncd目录
更多细节见区解析 Lsyncd目录
选项2:使用符号链接
sync默认不工作目标符号链接我们可以用它保护NFS安装内容
代之以:
/var/root文件夹Lsyncd复制
/加载<-NFS分享点
挂载不同文件夹下nfsmount分享, 表示/nfsmount, 并做下列工作(假设上传内容已被复制到/nfsmount/ up加载):
/var/wwwrm-Rf上传
NFS安装内容安全定位Lsyncd复制目录树
选项3:设置rsync参数
sync支持-x选项通知rsync不跨文件系统边界开始前有数注解 试试前需要知道
- 云块存储量额外LVM量等
- Lsyncd与NFS服务器居同服务器无效假设您有专用NFS服务器
- 只有在源为单文件系统时才有效
syncd2.0.x
向选项Lsyncd传入rsyncOpts线编辑/etc/syncd.lua
syncssh默认数sssssssssssssss
syncd 2.1.x
syncd 2.1.x,rsyncOpts改成rsync添加到/etc/syncd.conf
syncssh预设值为syncsshssssssssssssssssssmssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
结论
使用 Lsyncd保持本地文件夹和远程文件夹同步是一种经济高效替代方法,并由于配置文件多选项可用,可个性化满足您的需要
相关文章
使用反馈标签做评论或提问可同时使用开始和我们对话.
更新 29天前