网站建设按期没有完成能要回定金吗,店面设计ppt,工程造价信息网官网查询,衡水哪里可以做网站RSYNC软件介绍#xff1a; rsync是类unix系统下的数据镜像备份工具#xff0c;从软件的命名上就可以看出来了——remote sync。它的特性如下#xff1a;可以镜像保存整个目录树和文件系统。可以很容易做到保持原来文件的权限、时间、软硬链接等等。无须特殊权限即可安装。优… RSYNC软件介绍 rsync是类unix系统下的数据镜像备份工具从软件的命名上就可以看出来了——remote sync。它的特性如下 可以镜像保存整个目录树和文件系统。 可以很容易做到保持原来文件的权限、时间、软硬链接等等。 无须特殊权限即可安装。 优化的流程文件传输效率高。 可以使用rcp、ssh等方式来传输文件当然也可以通过直接的socket连接。 支持匿名传输以方便进行网站镜象。 软件下载 rysnc的主页地址为 http://rsync.samba.org/ 目前最新版本为2.4.6。可以选择从原始网站下载 http://rsync.samba.org/ftp/rsync/一、下载、安装rsync #tar zxvf rsync-2.6.9.tar.gz
#cd rsync-2.6.9
#./configure --prefix/usr/local/rsync
#make
#make install **** 正常安装RH的时候是带RSYNC的运行文件放在/usr/bin/rsync 二、配置rsync server 1、启动RSYNC #vi /etc/xinetd.d/rsync 把原来的YES改成NOservice rsync
{disable nosocket_type streamwait nouser rootserver /usr/bin/rsyncserver_args --daemonlog_on_failure USERID
}随系统启动RSYNC#chkconfig rsync on2、配置/etc/rsyncd.conf(需要手动生成) rsyncd.conf的参数写在上边就是全局参数和写在模块里的就是模块参数#vi /etc/rsyncd.conf
全局参数
uid root //运行RSYNC守护进程的用户
gid root //运行RSYNC守护进程的组
use chroot no //不使用chroot
max connections 4 // 最大连接数为4
strict modes yes //是否检查口令文件的权限
port 873 //默认端口873模块参数
[backup] //这里是认证的模块名在client端需要指定
path /home/backup/ //需要做镜像的目录,不可缺少
comment This is a test //这个模块的注释信息
ignore errors //可以忽略一些无关的IO错误
read only yes // 只读 no可读可写
list no //不允许列文件清单
auth users hening //认证的用户名这个名字是服务器端实实在在存在用户如果没有这行则表明是匿名此用户与系统无关
secrets file /etc/rsync.pas //密码和用户名对比表密码文件自己生成
hosts allow 192.168.1.1,10.10.10.10 //允许主机
hosts deny 0.0.0.0/0 //禁止主机
#transfer logging yes
注释下面这些绿色文件是安装完RSYNC服务后自动生成的文件
pid file /var/run/rsyncd.pid //pid文件的存放位置
lock file /var/run/rsync.lock //锁文件的存放位置
log file /var/log/rsyncd.log //日志记录文件的存放位置3、配置rsync密码在上边的配置文件中已经写好路径 /etc/rsync.pas名字随便写只要和上边配置文件里的一致即可格式(一行一个用户) 账号密码#vi /etc/rsync.pas例子: Hening:111111 权限因为rsync.pas存储了rsync服务的用户名和密码所以非常重要。要将rsync.pas设置为root拥有, 且权限为600。#cd /etc
#chown root.root rsync.pas
#chmod 600 rsync.pas3.rsyncd.motd配置欢迎信息可有可无# vi /etc/rsyncd.motdrsyncd.motd记录了rsync服务的欢迎信息你可以在其中输入任何文本信息如 Welcome to use the rsync services! 4、让配置生效#service xinetd restart 如果报错xinetd: 未被识别的服务执行 #yum -y install xinetd 三、启动rsync server RSYNC服务端启动的两种方法 1、启动rsync服务端独立启动#/usr/bin/rsync --daemon2、启动rsync服务端 有xinetd超级进程启动# /etc/rc.d/init.d/xinetd reloadreload一般只是从新读取一次配置文件。restart则是把进程停掉从头启动一次。restart自然也就reload了。但是对于大型服务restart可能不方便。四、加入rc.local 在各种操作系统中rc文件存放位置不尽相同可以修改使系统启动时把rsync --daemon加载进去。#vi /etc/rc.local
加入一行/usr/bin/rsync --daemon 五、检查rsync #netstat -a | grep rsynctcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN 六、配置rsync client 1、设定密码#vi /etc/rsync.pas
111111修改权限#cd /etc
#chown root.root rsync.pas
#chmod 600 rsync.pas2、client连接SERVER 从SERVER端取文件/usr/bin/rsync -vzrtopg --progress --delete hening192.168.0.217::backup /home/backup --password-file/etc/rsync.pas 向SERVER端上传文件/usr/bin/rsync -vzrtopg --progress --password-file/root/rsync.pas /home/backup hening192.168.0.217::backup 这个命令将把本地机器/home/backup目录下的所有文件含子目录全部备份到RSYNC SERVER172.20.0.6的backup模块的设定的备份目录下。 请注意如果路径结束后面带有/,表示备份该目录下的东东但不会创建该目录如不带/则创建该目录。 RSYNC用法 rsync [OPTION]... [USER]HOST::SRC [DEST] #从RSYNC SERVER备份文件到本地机器rsync [OPTION]... SRC [SRC]... [USER]HOST::DEST #从本地机器备份文件到RSYNC SERVER3、自动运行 1vi /usr/local/rsync/time.sh //制作脚本文件 把下边的内容复制进去#!/bin/bash
/usr/bin/rsync -vzrtopg --progress --delete hening192.168.0.217::backup /home/backup --password-file/etc/rsync.pas2) 定时执行 crontab -e
加入55 * * * * /usr/local/rsync/time.sh //每55分运行一次time.sh脚本文件 七、iptables iptables -A INPUT -p tcp -s ! 11.22.33.44 --dport 873 -j DROP 如此 只有 11.22.33.44 这个 client IP 能进入这台 rsync server。 命令介绍-rvlHpogDtS rsync命令参数 -v表示verbose详细显示 -z表示压缩 -r表示recursive递归 -t表示保持原文件创建时间 -o表示保持原文件属主 -p表示保持原文件的参数 -g表示保持原文件的所属组 -a存档模式 -P表示代替-partial和-progress两者的选项功能 -e ssh建立起加密的连接。 --partial阻止rsync在传输中断时删除已拷贝的部分(如果在拷贝文件的过程中传输被中断rsync的默认操作是撤消前操作即从目标机上 删除已拷贝的部分文件。) --progress是指显示出详细的进度情况 --delete是指如果服务器端删除了这一文件那么客户端也相应把文件删除保持真正的一致。 --exclude不包含/ins目录 --size-only 这个参数用在两个文件夹中的差别仅是源文件夹中有一些新文件不存在重名且被修改过的文件因为这种文件有可能会因为内容被修改可大小一样而被略过。这个参数可以大大地提高同步的效率因为它不需要检查同名文件的内容是否相同。 --password-file来指定密码文件内容包含server端指定认证用户的密码。 这样就可以在脚本中使用而无需交互式地输入验证密码了这里需要注意的是这份密码文件权限属性要设得只有属主可读。 hening192.168.0.217::backup hening是指server端指定认证的用户 192.168.0.217是指服务器端的ip ::backup 表示服务器端需要同步的模块名称 /home/quack/backup/$DATE是同步后的文件指存放在本机的目录地址。 /var/log/rsync.$DATE是同步后的日志文件存放在本机的目录地址。 注意不放/ 则目录名也包含mirror放 / 则只有目录里面的东西mirror了 详见http://blog.csdn.net/moqiang02/article/details/37938059 实例总结流程 1.配置主控端# vim /etc/rsyncd.conf
###################################
uid nobody
gid nobody
use chroot no
max connections 4
stirict modes yes
port 873
[backup]
path /usr/local/test/
comment This is a test
ignore errors
read only false
list no
hosts allow 192.168.0.11
hosts deny 0.0.0.0/0
auth users bakweb
secrets file /etc/rsyncd.pw
pid file /var/run/rsyncd.pid
lock file /var/run/rsync.lock
log file /var/log/rsyncd.log
###################################
# vim /etc/rsyncd.pw
###################################
bakweb:123456
###################################
# cd /etc
# chown root.root rsyncd.pw
# chmod 600 rsyncd.pw
启动rsync server
# rsync --daemon
查看端口873是否打开
加入启动
# echo rsync --daemon /etc/rc.local
给/usr/local/test目录写权限
# chown -R nobody.nobody /usr/local/test
# chmod -R 770 /usr/local/test 主控配置完成。 2.客户端配置 # vim /etc/rsyncd.pw
####################################
123456
####################################
# chown root.root /etc/rsyncd.pw
# chmod 600 /etc/rsyncd.pw
再使用命令直接更新到服务器数据文件就不需要密码
rsync -vzrtopg --progress --password-file/etc/rsyncd.pw /usr/local/bin/ bakweb192.168.0.10::backup 注意 1.这里的backup名字为主控conf配置里面的[backup]一定要同名2.bakweb为主控conf配置里面的bakweb可以随意命名不是系统用户。 配置完了之后可能会遇到一些权限问题。以下就一些常见的权限问题进行解答 问题一 ERROR: chroot failed rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver3.0.3] 原因 服务器端的目录不存在或无权限。 创建目录并修正权限可解决问题。 问题二 ERROR: auth failed on module tee rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver3.0.3] 原因 服务器端该模块tee需要验证用户名密码但客户端没有提供正确的用户名密码认证失败。 提供正确的用户名密码解决此问题。 问题三 ERROR: Unknown module ‘tee_nonexists’ rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver3.0.3] 原因 服务器不存在指定模块。 提供正确的模块名或在服务器端修改成你要的模块以解决问题。 测试 都配置完毕之后就是测试了。在FreeBSD机器上输入命令 rsync -vzrtop --delete /home/andrewy/etc test192.168.21.41::backup --password-file/etc/rsyncd.password 查看同步效果。 注意我这里是直接以root进行操作。rsync以delete操作时要注意它会完全同步这边的目录与服务器的目录中的文件这样会产生一个后果它会删掉服务器中多余的文件这样做很危险如果是线上机器请慎之又慎切记 转载于:https://www.cnblogs.com/moqiang02/p/4061208.html