当前位置: 首页 > news >正文

成都网站建设_创新互联对百度竞价排名的看法

成都网站建设_创新互联,对百度竞价排名的看法,wordpress到底是什么,世界著名小型建筑设计Rsync Inotify双机热备 一、备份机操作 备份机:主服务器或主机文件将需要备份的文件同步到此服务器上,即从主服务器上同步过来进行备份。 1.1安装rsync sudo apt-get install rsync1.2修改/etc/dault/rsync文件 sudo vim /etc/default/rsync修改如…

Rsync + Inotify双机热备

一、备份机操作

备份机:主服务器或主机文件将需要备份的文件同步到此服务器上,即从主服务器上同步过来进行备份。

1.1安装rsync

sudo apt-get install rsync

1.2修改/etc/dault/rsync文件

sudo vim /etc/default/rsync

修改如下部分:
RSYNC_ENABLE=true(默认为false)
RSYNC_CONFIG_FILE=‘/etc/rsync/rsyncd.conf’(指定rsync配置文件路径,默认为/etc/rsyncd.conf,也可以使用默认)
在这里插入图片描述

1.3方便管理rsync配置文件,新建文件夹rsync

sudo mkdir -p /etc/rsync/

1.4建立密码文件rsync.secrets

密码文件是双机同步时认证的关键,两机密码需要相同。

cat > /etc/rsync/rsyncd.secrets << EOF
> #/etc/rsync/rsyncd.secrets
> www-data:123456
> EOF

创建完用户名为www-data,密码为123456的文件后,需要给该文件设置权限(必须设置)

chmod 600 /etc/rsync/rsyncd.secrets

1.5拷贝文件rsyncd.conf,并自定义修改内容

cp /usr/share/doc/rsync/examples/rsyncd.conf /etc/rsync/

usr下的rsyncd.conf是自带的模板文件,自己使用需要修改

vim /etc/rsync/rsyncd.conf
# 日志文件路径
log file=/var/log/rsyncd
# pid文件
pid file=/var/run/rsyncd.pid
# 模块名称(重要)
[www-data]
comment = public archive
# 备份文件的存储路径,需要确保存在(重要)
path = /var/www/pub
use chroot = yes
# 最大连接数10个
# max connections=10
# lock文件
lock file = /var/lock/rsyncd
# 不仅读也要写权限
read only = no
list = yes
# uid与pid非必要情况可设置问www-data
uid = root
pid = root
# 用户名称
auth users = www-data
# 指定同步校验用户时的密码文件
fake super = yes
# 密码文件
secrets file = /etc/rsync/rsyncd.secrets
strict modes = yes
# 指定主服务器ip
hosts allow = 192.168.27.130
# 是否忽略错误
ignore errors = no
# 是否忽略非可读的
ignore nonreadable = yes
# 日志转移
transfer logging = yes
# 日志输出格式
log format = %t: host %h (%a) %o %f (%l bytes). Total %b bytes.
# 最大响应时间
timeout = 600
refuse options = checksum dry-run
dont compress = *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz

修改完成,保存并退出

1.6启动服务

/etc/init.d/rsync restart

在这里插入图片描述

/etc/init.d/rsync status

在这里插入图片描述
正常情况下服务都会启动顺利,但是!
在这里插入图片描述
也可能会出现上图的错误,rsync.conf在已经配置路径的情况下依旧默认是在/etc/文件夹下,执行命令:

mv /etc/rsync/rsyncd.conf /etc/

重新启动服务成功。

二、主服务器配置

主服务器:指重要文件的原件在该服务器上。

2.1安装rsync

sudo apt-get install rsync

2.2修改/etc/dault/rsync文件

sudo vim /etc/default/rsync

修改如下部分:
RSYNC_ENABLE=true(默认为false)
在这里插入图片描述

2.3方便管理rsync配置文件,新建文件夹rsync

sudo mkdir -p /etc/rsync/

2.4建立密码文件rsync.secrets

密码文件是双机同步时认证的关键,两机密码需要相同(这里只需要密码就行)

cat > /etc/rsync/rsyncd.secrets << EOF
> #/etc/rsync/rsyncd.secrets
> 123456
> EOF

创建完密码为123456的文件后,需要给该文件设置权限(必须设置)

chmod 600 /etc/rsync/rsyncd.secrets

2.5验证主从服务器的连接状态

在主服务器上运行:

rsync -vzrtopg --progress www-data@192.168.27.131::www-data --password-file=/etc/rsync/rsyncd.secrets

解释一下各个参数的含义:
www-data : 在备份服务器上设置的用户名
192.168.27.31 : 备份服务器ip
www-data : 备份服务器中rsyncd.conf中模块名称
在这里插入图片描述

2.6测试数据备份效果

依旧在主服务器上执行:

rsync -avzPt --delete /etc/rsync/temp/ www-data@192.168.27.131::www-data --password-file=/etc/rsync/rsyncd.secrets

解释一下各个参数的含义:
/etc/rsync/temp : 需要备份文件存储路径
www-data : 在备份服务器上设置的用户名
192.168.27.31 : 备份服务器ip
www-data : 备份服务器中rsyncd.conf中模块名称
总结来说:通过rsync将/etc/rsync/temp/路径下的所有文件备份到用户名为www-data,ip地址为192.168.27.131的服务器,里面的rsyncd.conf文件夹中的www-data模块下的path(也就是/var/www/pub)指向路径里面。
如果temp后面不加 / 就会将temp文件夹整个保存到/var/www/pub下。

三、定时备份

3.1选择命令编辑方式

crontab -e

在这里插入图片描述
选择3,vim.tiny编辑方式

3.2输入定时命令

0 5 * * * rsync -avzPt --delete /etc/rsync/temp/ www-data@192.168.27.131::www-data --password-file=/etc/rsync/rsyncd.secrets

解释一下各个参数的含义:
0 :指分钟
5 :指小时
即在5时00分执行该备份命令。

四、即时备份

4.1安装inotify

apt-get install inotify-tools

安装完成后,inotifywait默认路径为/usr/bin/inotifywait

4.2创建脚本

cat > /etc/rsync/rsync.init.sh <<EOF
> #!/bin/bash
> /usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e modify,delete,create,attrib /etc/rsync/temp/ | while read files
> do
> rsync -avzPt --delete --password-file=/etc/rsync/rsyncd.secrets /etc/rsync/temp/ www-data@192.168.27.131::www-data
> echo "{files} was rsynced" >> /temp/rsync.log 2>&1
> done

解释一下各个参数的含义:
#!/bin/bash : 脚本文件必备
/usr/bin/inotifywait : inotifywait默认路径
modify,delete,create,attrib : 修改,删除,新建,更改格式(对文件操作)
/etc/rsync/temp/ : 监听的文件路径
while read files : 文件被读取时
echo “{files} was rsynced” >> /temp/rsync.log 2>&1 : 日志信息保存

4.3修改脚本权限

chmod 755 /etc/rsync/rsync.init.sh

4.4设置脚本开机自启

编辑 /etc/rc.local文件,在 exit0 的前面一行,加入如下语句

/bin/bash /etc/rsync/rsync.init.sh > /dev/null 2>&1 &

特别申明:/etc/rc.local 文件在ubuntu18系统里,默认是没有的。!!!

这个时候就需要自己手动设置才会有的,方法如下:
1.创建软连接

ln -sf /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service

添加一句命令行,将命令追加到rc-local.service中(>>是追加,>是覆盖)

cat >>/etc/systemd/system/rc-local.service<<EOF
> [Install]
> WantedBy=multi-user.target
> Alias=rc-local.service
> EOF

3.创建rc.local文件并赋权

touch /etc/rc.local && chmod 755 /etc/rc.local

4.导入必要的语句

cat >>/etc/rc.local<<EOF
> #!/bin/bash
> /bin/bash /etc/rsync/rsync.init.sh > /dev/null 2>&1 &
> exit 0
> EOF

5.重新加载服务

systemctl daemon-reload

五、备注和错误处理

5.1rsync命令说明

-v:显示rsync过程中详细信息。可以使用"-vvvv"获取更详细信息。
-P:显示文件传输的进度信息。(实际上"-P"=“–partial --progress”,其中的"–progress"才 是显示进度信息的)。
-n --dry-run :仅测试传输,而不实际传输。常和"-vvvv"配合使用来查看rsync是如何工作的。
-a --archive :归档模式,表示递归传输并保持文件属性。等同于"-rtopgDl"。
-r --recursive:递归到目录中去。
-t --times:保持mtime属性。强烈建议任何时候都加上"-t",否则目标文件mtime会设置为系 统时间,导致下次更新
:检查出mtime不同从而导致增量传输无效。
-o --owner:保持owner属性(属主)。
-g --group:保持group属性(属组)。
-p --perms:保持perms属性(权限,不包括特殊权限)。
-D :是"–device --specials"选项的组合,即也拷贝设备文件和特殊文件。
-l --links:如果文件是软链接文件,则拷贝软链接本身而非软链接所指向的对象。
-z :传输时进行压缩提高效率。
-R --relative:使用相对路径。意味着将命令行中指定的全路径而非路径最尾部的文件名发送 给服务端,包括它们的属性。用法见下文示例。
–size-only :默认算法是检查文件大小和mtime不同的文件,使用此选项将只检查文件大小。
-u --update :仅在源mtime比目标已存在文件的mtime新时才拷贝。注意,该选项是接收端判 断的,不会影响删除行为。
-d --dirs :以不递归的方式拷贝目录本身。默认递归时,如果源为"dir1/file1",则不会拷贝 dir1目录,使用该选项将拷贝dir1但不拷贝file1。
–max-size :限制rsync传输的最大文件大小。可以使用单位后缀,还可以是一个小数值(例如: “–max-size=1.5m”)
–min-size :限制rsync传输的最小文件大小。这可以用于禁止传输小文件或那些垃圾文件。
–exclude :指定排除规则来排除不需要传输的文件。
–delete :以SRC为主,对DEST进行同步。多则删之,少则补之。注意"–delete"是在接收端 执行的,所以它是在 : exclude/include规则生效之后才执行的。
-b --backup :对目标上已存在的文件做一个备份,备份的文件名后默认使用"~“做后缀。
–backup-dir:指定备份文件的保存路径。不指定时默认和待备份文件保存在同一目录下。
-e :指定所要使用的远程shell程序,默认为ssh。
–port :连接daemon时使用的端口号,默认为873端口。
–password-file:daemon模式时的密码文件,可以从中读取密码实现非交互式。注意,这不是 远程shell认证的密码,而是rsync模块认证的密码。
-W --whole-file:rsync将不再使用增量传输,而是全量传输。在网络带宽高于磁盘带宽时,该 选项比增量传输更高效。
–existing :要求只更新目标端已存在的文件,目标端还不存在的文件不传输。注意,使用相对路径时如果上层目录不存在也不会传输。
–ignore-existing:要求只更新目标端不存在的文件。
–remove-source-files:要求删除源端已经成功传输的文件。

虽然选项非常多,但最常用的选项组合是"avz",即压缩和显示部分信息,并以归档模式传输。

5.2日志格式解析

log format =
%h:远程主机名
%a:远程IP地址
%l:文件长度字符数
%p:该次rsync会话的进程id
%o:操作类型:“send"或"recv”、”del.”
%f:文件名
%P:模块路径
%m:模块名
%t:当前时间
%u:认证的用户名(匿名时是null)
%b:实际传输的字节数
%c:当发送文件时,该字段记录该文件的校验码

5.3常见错误

问题一:
@ERROR: chroot failed
rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:服务器端的目录不存在或无权限,创建目录并修正权限可解决问题。

问题二:
@ERROR: auth failed on module tee
rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:服务器端该模块(tee)需要验证用户名密码,但客户端没有提供正确的用户名密码,认证失败,提供正确的用户名密码解决此问题。

问题三:
@ERROR: Unknown module ‘tee_nonexists’
rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:服务器不存在指定模块。提供正确的模块名或在服务器端修改成你要的模块以解决问题

问题四:(在client上遇到)
rsync -auzv --progress --password-file=/etc/rsync.pas root@192.168.1.128::backup /home/
rsync: could not open password file “/etc/rsync.pas”: No such file or directory (2)
Password:
@ERROR: auth failed on module backup
rsync error: error starting client-server protocol (code 5) at main.c(1506) [Receiver=3.0.7]

遇到这个问题:client端没有设置/etc/rsync.pass这个文件,而在使用rsync命令的时候,加了这个参数–
password-file=/etc/rsync.pass

问题五:
rsync -auzv --progress --password-file=/etc/rsync.pas root@192.168.1.128::backup /home/
@ERROR: auth failed on module backup
rsync error: error starting client-server protocol (code 5) at main.c(1506) [Receiver=3.0.7]

遇到这个问题:client端已经设置/etc/rsync.pas这个文件,里面也设置了密码111111,和服务器一致,但是
服务器段设置有错误,服务器端应该设置/etc/rsync.pas ,里面内容root:111111 ,这里登陆名不可缺少

问题六:
rsync -auzv --progress --password-file=/etc/rsync.pas root@192.168.1.128::backup /home/
@ERROR: chdir failed
rsync error: error starting client-server protocol (code 5) at main.c(1506) [Receiver=3.0.7]

遇到这个问题:是因为服务器端的/home/backup 其中backup这个目录并没有设置,所以提示:chdir failed

问题七:
rsync: write failed on “/home/backup2010/wensong”: No space left on device (28)
rsync error: error in file IO (code 11) at receiver.c(302) [receiver=3.0.7]
rsync: connection unexpectedly closed (2721 bytes received so far) [generator]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [generator=3.0.7]

遇到这个问题:磁盘空间不够,所以无法操作,可以通过df /home/backup2010 来查看可用空间和已用空间

http://www.ds6.com.cn/news/22511.html

相关文章:

  • 原创先锋 北京网站建设优化水平
  • c 鲜花店网站建设东莞seo建站投放
  • app制作软件公司seo推广有哪些
  • 企业网站系统建设毕业论文新乡seo优化
  • 广东省做农业网站销售的公司百度推广怎么联系
  • 如何做本地门户网站自助建站网
  • 网站字体样式网站seo报价
  • 做微信商城设计网站站长工具爱站
  • 大兴城乡建设委员会网站link友情买卖
  • 要运行 wordpress php无法安装网站优化包括对什么优化
  • 吉林省人民政府征兵办公室官网杭州seo整站优化
  • 做珠宝的网站郑州seo博客
  • 企业网站模板 css关键词搜索排行榜
  • 厦门微网站建设丹东网站seo
  • 广州 天河网站设计免费seo网站推广
  • 武汉模板建站系统刷推广链接
  • 龙岗网站开发公司百度公司的企业文化
  • 衢州网站设计公司排行注册推广赚钱一个80元
  • 贵州企业网站开发公司链交换
  • 企业网站运营开封网站推广
  • 建设网上商城网站兰州seo关键词优化
  • 代码做网站电脑零基础培训班
  • 有没有电商设计的网站参考自己开发网站怎么盈利
  • 潍坊信息网网站建设百度指数的作用
  • 地产平台网站模板万能搜索引擎入口
  • 广州番禺各镇分布图搜索引擎关键词优化方案
  • 什么网站可以赚钱啊个人如何在百度上做广告
  • ps做网站图安徽seo人员
  • 从化网站建设价格一媒体app软件下载老版本
  • 长春网站建设电话app推广文案