搭建备份服务器

搭建备份服务器一、rsync的特性rsync的特性:1、支持拷贝特殊文件,设备等2、可以有排除指定文件或者目录同步的功能,相当于tar的排除功能3、可以做到保持源文件或目录的权限、时间、软硬连接、属主

大家好,又见面了,我是你们的朋友全栈君。

一、rsync的特性

rsync的特性:

1、  支持拷贝特殊文件,设备等

2、  可以有排除指定文件或者目录同步的功能,相当于tar的排除功能

3、  可以做到保持源文件或目录的权限、时间、软硬连接、属主、组等所有属性均不改变-p

4、  可实现增量同步,既只能同步发生变化的数据,因此数据传输效率很高(tar -N)

5、  可以使用rcp,rsh,ssh等方式来配合传输文件(rsync本身不对数据加密)

6、  可以通过socket(进程方式)传输文件和数据(服务端和客户端)

7、  支持尼米ingde或认证(无需系统用户)的进程模式传输,可实现方便安全的进行数据备份及镜像

二、rsync的应用

web服务器到备份服务器之间—》定时备份站点数据及配置  cron+rsync

nfs服务端到备份服务器之间—》实时备份 sersync+rsync  \inotify+rsync  \lrsyncd+rsync

三、rsync的用法

rsync的参数:

-v  详细模式输出,传输的进度等信息

-z  传输的时候进行压缩提高传输的效率

-a   归档模式,表示递归方式传输并且保持所有文件属性,等于-rtopgDl

-e   -rsh = COMMAND使用的通道协议,指定替代rsh的shell程序

–bwlimit 限速

 

三、rsync的三种模式

1)local模式

rsync -avz /etc/hosts /tmp/     ===》cp

rsync -avz –delete /tmp1/ /mnt/   ===>rm

 

第二种工作模式、使用远程的shell -e指定隧道

推  把文件推到服务器端   注意这里的ip是对面的ip

 rsync -avzP -e ‘ssh -p 22’ /tmp/ root@10.0.0.41:/tmp

拉

 rsync -avzP -e ‘ssh -p 22’ root@10.0.0.41/tmp /opt   这里是把tmp目录和tmp里面的内容都拉过来

 rsync -avzP -e ‘ssh -p 22’ root@10.0.0.41:/tmp/ /opt 这个是把tmp的子目录里面的内容全部拉过来注意拉的ip是对面的ip

如果传输速度太慢。要在/etc/ssh/sshd_config 81行注释掉、80行打开,122行打开

 

第三种以守护进程(socket)的方式传输数据

需要做以下准备

1、配置服务端rsync

1)服务端的错误日志cat /var/log/rsyncd.log

1)首先给备份服务器设置配置文件

vim /etc/rsyncd.conf

uid = rsync
gid = rsync
use chroot = no
max connections = 200
timeout = 300
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only =false
list = false
hosts allow =172.168.1.0/24
#hosts deny = 0.0.0.0/32#---》上面是允许网段,这个是不允许网段,所以配置文件二选一
auth users = rsync_backup
secrets file = /etc/rsync.password
[backup]
path = /backup

2)创建uid和gid    useradd rsync -s /sbin/nologin -M

3)创建模块目录并且授权

mkdir /backup

chown -r rsync /backup/

4)创建密码文件,并且收缩权限

echo “rsync_backup:pyrene”>/etc/rsync.password

chmod 600 /etc/rsync.password

5、查看版本和端口

rsync —daemon

netstat -lntup|grep rsync

Ps -ef |grep rsync|grep -v grep

6、加入开机自启动

chkconfig rsync on

echo “rsync –daemon”>>/etc/rc.local

tail -1 /etc/rc.local

2配置rsync客户端

1、创建密码文件

echo “pyrene” >/etc/rsync.password

chmod 600 /etc/rsync.password

2、创建备份目录(用于打包文件)

mkdir /backup

3,daemon模式用法

第一种模式:

push:推   下面是把客户端的tmp下内容推到服务端叫做rsync_backup这个auth users下的backup模块里面

rsync -avz /tmp/ rsync_backup@172.16.1.41::backup —password-file=/etc/rsync.password

拉

rsync -avz rsync_backup@192.168.241.132::backup /tmp/ —password-file=/etc/rsync.password

 

第二种模式:

拉

Rsync -avz rsync://rsync_backup@192.168.241.132/backup/ /tmp –password-file=/etc/rsync.password

推

rsync -avz /tmp/ rsync://rsync_backup@192.168.241.132/backup/

–password-file=/etc/rsync.password

四、排除及无差异同步

排除单个文件:

rsync -avz —exclude=a /backup/ rsync_backup@172.168.16.1.41::backup —password-file=/etc/rsync.password

排除多个文件:

rsync -avz —exclude={a,b} /backup/ rsync_backup@172.168.16.1.41::backup —password-file=/etc/rsync.password

也可以把—exclude={a..g}或者—exclude-from=paichu.log

 

无差异同步:(谨慎使用)

–delete

rsync -avz —delete /backup/ rsync_backup@172.168.16.1.41::backup —password-file=/etc/rsync.password

上面就是把前面的目录里面的东西和后面模块里面的一样

 

总结:rsync三种工作模式

1、  local:rsync(cp rm)

2、  通道模式:

Rsync -avzP -e ‘ssh -p 22’ /etc root@10.0.0.142:/tmp

一般配合ssh key面密钥传输,结合定时任务

3、daemon模式:

内网不需要加密,加密性能有损失

如果需要跨机房需要rsync+vpn(pptp,openvpn,ipsec)

 

扩展:

1、关于限速和断点续传

断点续传:–partial

限速参数:–bwlimit

[root@nfs01 ~]# rsync -avz –bwlimit=1 /root/test1 rsync_backup@172.168.1.41::backup –password-file=/etc/rsync.password

上面就是设置限速,这里设置的是1k每秒

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155664.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 不止一个背包的背包问题_超级背包怎么使用方法

    不止一个背包的背包问题_超级背包怎么使用方法有 N 个物品和一个容量是 V 的背包。物品之间具有依赖关系,且依赖关系组成一棵树的形状。如果选择一个物品,则必须选择它的父节点。如下图所示:如果选择物品5,则必须选择物品1和2。这是因为2是5的父节点,1是2的父节点。每件物品的编号是 i,体积是 vi,价值是 wi,依赖的父节点编号是 pi。物品的下标范围是 1…N。求解将哪些物品装入背包,可使物品总体积不超过背包容量,且总价值最大。输出最大价值。输入格式第一行有两个整数 N,V,用空格隔开,分别表示物品个数和背包容量。接下来有 N

    2022年8月9日
  • getAttribute() 与 attr() 的区别

    getAttribute() 与 attr() 的区别

    2021年10月31日
  • RGBD相机总结_光圈快门iso

    RGBD相机总结_光圈快门iso对深度相机进行总结,方便不断补充。

    2022年9月16日
  • 使用哈夫曼树实现文本编码、解码

    使用哈夫曼树实现文本编码、解码使用二叉树存储结构的链表,进行构造二叉树,对指定字符串编码解码

    2022年5月3日
  • 无锁队列实现原理_优先队列 java

    无锁队列实现原理_优先队列 java首次接触无锁数据结构的设计,请各位大佬多多指教~~~CAS(Compare&&Swap)原子操作CAS是无锁(lockfree)的数据结构的基础。用伪代码描述:input:reg,old_val,new_val/*是old_val,reg替换为new_val,返回为true;否则返回为false*/if(*reg==old_val){*reg==new…

    2022年10月21日
  • curl命令详解[通俗易懂]

    在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为下载工具。语法:#curl[option][url]常见参数:-A/–user-agent<string>…

    2022年4月8日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号