2.9 KiB
2.9 KiB
lsyncd服务器端
安装lsyncd
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum -y install lsyncd
配置服务器端
cat > /etc/lsyncd.conf << EOF
----
-- User configuration file for lsyncd.
--
-- Simple example for default rsync, but executing moves through on the target.
--
-- For more examples, see /usr/share/doc/lsyncd*/examples/
--
-- sync{default.rsyncssh, source="/var/www/html", host="localhost", targetdir="/tmp/htmlcopy/"}
settings {
logfile = "/var/log/lsyncd/lsyncd.log",
statusFile = "/var/log/lsyncd/lsyncd.status"
}
sync {
default.rsyncssh, -- 使用ssh同步文件,需要与客户端免密,客户端不需要特殊配置
source = "/opt/imis",
host = "10.217.34.66",
targetdir = "/data/imis",
delete = false,
delay = 0,
rsync = {
binary = "/usr/bin/rsync",
archive = true,
compress = true,
verbose = true,
owner = true,
perms = true,
_extra = {"--bwlimit=2000"},
},
ssh = {
port = 22
}
}
sync {
default.rsync, -- 使用rsync同步文件,客户端需要安装rsyncd,且添加配置文件,密码文件(权限600),服务器端需要密码文件(权限600)
source = "/opt/imis",
target = "rsync@10.217.35.166::imis",
delete = false,
delay = 0,
rsync = {
binary = "/usr/bin/rsync",
password_file = "/etc/rsync-pass",
archive = true,
compress = true,
verbose = true,
owner = true,
perms = true,
_extra = {"--bwlimit=2000"},
},
}
EOF
cat > /etc/rsync-pass << EOF
dasfasfasf
EOF
chmod 600 /etc/rsync-pass
启动
systemctl restart lsyncd
systemctl enable lsyncd
(可选)rsync客户端
只有使用rsync的客户端才需要配置
安装rsync
yum -y install rsyncd
配置
cat > /etc/rsyncd.conf << EOF
# /etc/rsyncd: configuration file for rsync daemon mode
# See rsyncd.conf man page for more options.
# configuration example:
# uid = nobody
# gid = nobody
# use chroot = yes
# max connections = 4
# pid file = /var/run/rsyncd.pid
# exclude = lost+found/
# transfer logging = yes
# timeout = 900
# ignore nonreadable = yes
# dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
# [ftp]
# path = /home/ftp
# comment = ftp export area
uid = root
gid = root
use chroot = no
max connections = 100
timeout = 600
pid file = /var/run/rsyncd.pid
locak file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
[imis]
path = /data/imis/
read only = no
list = yes
ignore errors
hosts allow = 10.217.34.12
hosts deny = *
auth users = rsync
secrets file = /etc/rsyncd.pass
EOF
cat > /etc/rsyncd.pass << EOF
rsync:dasfasfasf
EOF
chmod 600 /etc/rsyncd.pass
启动
systemctl restart rsyncd
systemctl enable rsyncd