solari 10 64 位操作系统安装rsync
一:最新版:rsync-3.0.7-sol9-sparc-local
下载地址:http://www.sunfreeware.com/programlistsparc9.html
基于的依赖包:Dependencies: popt, libiconv, libintl,libgcc-3.4.6 or gcc-3.4.6
描述:
rsync 同时安装到 Server A 和 Server B 。
在 Server A 上, rsync 作为守护进程运行,通过配置,可以使得 Server A 上的某些目录被 rsync 发布。
在 Server B 上, rsync 作为命令行工具运行,可以从运行 rsync 守护进程的另一台服务器(Server A )上将所发布的目录同步到 Server B
在 Server B 上配置定时任务,以便在指定的时间运行同步命令。
二:步骤:
1.0 在server A 和server B 上安装rsync软件
最新版本是:3.07
2.0 安装rsync
gzip -d rsync-3.0.7-sol9-sparc-local.gz
pkgadd -d rsync-3.0.7-sol9-sparc-local
/usr/local/bin/rsync --version 验证是不是安装成功,如果报错,将依赖包安装
3.0 编辑 rsync 的配置文件, /etc/rsyncd.conf ,该文件在安装之初是没有的,需要自己建立
touch /etc/rsyncd.conf
文件内容:
uid = root # 以 root 身份访问文件目录
gid = root # 以 root 组身份访问文件目录
use chroot = yes # 可以使用 chroot
max connections = 5 # 最大连接数
syslog facility = local5
pid file = /var/run/rsyncd.pid
hosts allow = 10.1.4.13 192.168.168.0/255.255.255.0 # 只允许 10.1.4.13 和网段 访问,中间需要用空格隔开
[apache2] # 这是一个发布项,可以发布多个
path=/store/web/apache2 # 发布的路径
read only=yes # 只读
list = yes # 允许列文件清单
comment=http server file # 描述信息
4.0 以守护进程启动rsync
/usr/local/bin/rsync --daemon&
5.0 配置rsync自动启动
vi /etc/rc3.d/S99Rsync
chmod 700 /etc/rc3.d/S99Rsync
加上内容:
/usr/local/bin/ rsync --daemon&
6.0 验证rsync 服务
/usr/local/bin/rsync -ztruvoglp --progress rsync://ip(server A ip)
输出:apache2 http server file (rsync server A 搭建成功)
三 :server B 操作 Server B 上面设置自动获取 Server A 上的文件
1.0 验证是不是能够看到server A 上的rsync目录
/usr/local/bin/rsync -ztruvoglp --progress rsync://ip(server A ip)
2.0 新建目录用于存放脚本:
mkdir -p /uo1/data
3.0 建立不需要同步的清单,如果都需要同步就不需要,清单文件名可以自己定义,如果不建立该文件,可以直接在后面步骤 的脚本命令中使用参 --exclude 来直接指明 vi /uo1/data/apache2_exclude_file.list
grpdomain1.log* # 表示 /store/web/apache2/grpdomain1.log* 不同步
newgrplog # 表示/store/web/apache2/newgrp 目录及子目录不同步
home/logs # 表示/store/web/apache2/home/logs/
applications/cenep/WEB-INF/log # 表示/store/web/apache2/applications/cenep/WEB-INF/log
4.0 建立同步脚本,并且定义调度计划:
touch /uo1/data/rsync-apache2.sh
vi /uo1/data/rsync-apache2.sh
内容:不要换行
#!/bin/sh
/usr/local/bin/rsync –ztruvoglp --exclude-from=/uo1/data/apache2_exclude_file.list --delete --progress rsync://10.1.4.1(server A IP)/apache2 /uo1/data/apache2
###/usr/local/bin/rsync -atruvoglp --progress --delete rsync://10.20.1.11/grpdomain1 /store/web/
--ztruvoglp 表示的是压缩传输、包含子目录、保持相同的权限等,可不理会
--exclude-from 指明从那个文件读取除外文件清单
--progress 是否在控制台上显示明细,如果在定时任务中运行,最好不增加该参数。
--rsync://10.1.4.10:873/apache2 同布的源, 873 是缺省端口,可忽略
--/uo1/data/apache2 serverB同步的路径
5.0 同步执行任务:
crontab -e
0 0 * * * /uo1/data/rsync-apache2.sh
四:更加多的操作
1.0 停止 Server A 上的 rsync 守候进程,命令:
ps -ef | grep rsync
kill pid(进程值)
2.0 重新启动守护进程:
/usr/local/bin/rsync –daemon&