rsync 服务器怎么架设ftp服务器方法 v0.1b (正在修订中)

rsync服务架设(数据同步|文件增量备份) - 可乐v加冰 - 博客园
随笔 - 19, 文章 - 0, 评论 - 3, 引用 - 0
    近期由于业务需要,需要将两台服务器数据保持同步。方案有很多,rsync是其中一种解决方案,本文对rsync的安装及配置进行简单说明,其他实现方式有兴趣可以研究。以下是本文提纲,供参考:
rsync安装篇
rsync配置篇(服务器端&客户端)
使用方法简介
一、rsync安装篇
    rsync的安装于其他linux应用安装方法相同,在centos系统,可通过以下命令安装
yum install rsync
        对于debian、服务器,可使用以下命令:
sudo apt-get
    安装完成后可使用命令rsync进行测试,如安装成功,会有以下提示:
二、rsync配置篇(服务器端&客户端)
    rsync服务器端可以理解为需要备份同步的主服务器,客户端可以理解为数据同步目标服务器。
    1、rsync服务器端配置:
        rsync服务器端正常运行需要三个配置文件:rsyncd.conf、rsyncd.secrets和rsyncd.motd,软件安装完成后默认是没有这三个配置文件的,需要手动创建,我们通过以下命令,创建相关目录及文件:
mkdir /etc/rsyncd/
touch /etc/rsyncd/rsyncd.conf
touch /etc/rsyncd/rsyncd.secrets
touch /etc/rsyncd/rsyncd.motd
chmod 600 /etc/rsyncd/rsyncd.secrets
    首先创建配置文件存放目录,这里使用/etc/rsyncd,之后建立三个配置文件。其中rsyncd.secrets为用户及密码存放文件,为了密码的安全性,我们把权限设为600。
    rsyncd.conf是rsync服务器的主要配置文件,配置信息基本都在此文件包含。rsyncd.secrets为用户及密码存放文件。rsyncd.motd 存放客户端登陆后的欢迎提示信息(好纠结)。
    下面为三个配置文件写入配置信息。
    rsyncd.conf 配置文件主要信息如下
#Minimal configuration file for rsync daemon
# See rsync(1) and rsyncd.conf(5) man pages for help
# This line is required by the /etc/init.d/rsyncd script
pid file=/var/run/rsyncd.pid
port=10086
address=192.168.162.9
#uid = nobody
#gid = nobody
use chroot=yes
read only=no
#limit access to private LANs
hosts allow=192.168.162.127
hosts deny=*
max connections = 5
motd file = /etc/rsyncd/rsyncd.motd
#This will give you a separate log file
#log file = /var/log/rsync.log
#This will log every file transferred - up to 85,000+ per user, per sync
#transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
[config_m]
path=/usr/local/config_m
auth users=sunguangran
secrets file=/etc/rsyncd/rsyncd.secrets
[jboss_home]
path=/usr/local/jboss-as-7.1.0.Final
exclude=/usr/local/jboss-as-7.1.0.Final/standalone/tmp
auth users=sunguangran
secrets file=/etc/rsyncd/rsyncd.secrets
    密码文件 rsyncd.secrets 的内容格式:
sunguangran:000000
    rsyncd.motd 文件内容可以随便写,用于在客户端登陆服务后显示的欢迎文字。
    rsyncd.conf 配置项较多,具体配置可google   rsync配置项说明,没google知道的多,这里就不多说了 哈
    此外,需要在服务器端开通相应端口的防火墙,以便客户端能够访问到服务。
三、使用方法简介
        上述三个配置文件准备好后,在服务器执行以下脚本,启动rsync服务:
/usr/bin/rsync –daemon --config=/etc/rsyncd/rsyncd.conf
         2、客户端
        客户端通过以下脚本同步数据:
/usr/bin/rsync -avzP --delete --port 10086 sunguangran@192.168.162.9::config_m /usr/local/config_m
         注: 这个命令的意思就是说,用sunguangran用户登录到服务器上,把config_m(服务器配置节点名称)数据,同步到本地目录/usr/local/config_m上。当然本地的目录是可以你自己定义的。当你在客户端上,当前操作的目录下没有/usr/local/config_m这个目录时,系统会自动为你创建一个;当存在该目录中,要注意它的写权限。
        使用这种方式进行同步是,在链接服务器成功后,需要手动个输入密码。我们期望做成系统定时任务,定期同步数据,可以使用以下方式,将密码从文件中读取。
    我们加一个选项 --password-file=/etc/rsyncd/rsyncd.secrets,这是当我们以sunguangran用户登录rsync服务器同步数据时,密码将读取 rsyncd.secrets 这个文件。这个文件内容只是sunguangran用户的密码。我们要如下做:
touch rsyncd.secrets
chmod 600 rsyncd.secrets
echo &000000&& rsyncd.secrets
rsync -avzP --delete --port 10086 --password-file=/etc/rsyncd/rsyncd.secrets sunguangran@192.168.162.9::config_m /usr/local/config_m
    这样就不需要手动输入密码文件了,可以手动将需要同步的目录写成shell脚本,做成系统定时任务。
    新建一个文件 rsync_task.sh,加入以下两行代码:
/usr/bin/rsync -avzP --delete --port 10086 --password-file=/etc/rsyncd/rsyncd.secrets sunguangran@192.168.162.9::config_m /usr/local/config_m
/usr/bin/rsync -avzP --delete --port 10086 --password-file=/etc/rsyncd/rsyncd.secrets sunguangran@192.168.162.9::jboss_home /usr/local/jboss-as-7.1.0.Final
    建立系统定时任务,输入crontab -e,输入以下内容:
0,30 * * * * /etc/rsyncd/rsync_task.sh
    保存退出,客户端服务器每个小时的0分和30分时都会自动运行一次rsync_task.sh
    rsync除了同步文件及目录之外,还可以利用它来实现对远程网站的远程备份。如果再结合脚本和Crontab就能实现定时自动远程备份。其可以实现与商业化的备份和镜象产品的类似效果,但完全免费。
    本文主要针对环境搭建及实现进行了简单说明,如果对其中具体配置项意义感兴趣,可进行查询,这里不做赘述。当前位置:&>&&>&
> 正文 rsync的两个错误及解决方法
rsync的两个错误及解决方法
发布时间:编辑:thebaby
rsync的两个错误及解决方法
的两个错误及解决方法,供大家参考。
building file list ...
rsync: pop_dir &/root& failed: Permission denied (13)
rsync error: errors selecting input/output files, dirs (code 3) at flist.c(1314) [sender=2.6.8]
原因:无法在当前目录产生临时文件。
觖决:cd /tmp/ ,然后执行。
rsync: failed to connect to 1.2.3.4: No route to host (113)
rsync error: error in socket IO (code 10) at clientserver.c(104) [receiver=2.6.9]
解决:关闭,tcp udp 的873端口来回传输数据的畅通。
本文标题:
本页链接:
12345678910的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.001 收益
的原创经验被浏览,获得 ¥0.005 收益
的原创经验被浏览,获得 ¥0.002 收益Linux 下架设 rsync 服务器
查看: 934|
  rsync 是一个Unix系统下的文件同步和传输工具。rsync是用 &rsync 算法&提供了一个客户机和远程文件服务器的文件同步的快速方法。
rsync 包括如下的一些特性:
* can update whole directory trees and filesystems 能更新整个目录和树和文件系统;
* optionally preserves symbolic links, hard links, file ownership, permissions, devices and times 有选择性的保持符号链链、硬链接、文件属于、权限、设备以及时间等;
* requires no special privileges to install 对于安装来说,无任何特殊权限要求;
* internal pipelining reduces latency for multiple files 对于多个文件来说,内部流水线减少文件等待的延时;
* can use rsh, ssh or direct sockets as the transport 能用rsh、ssh 或直接端口做为传输入端口;
* supports anonymous rsync which is ideal for mirroring 支持匿名rsync 同步文件,是理想的镜像工具;
安装配置过程:
一、建相应的文件及文件夹
[root@estals60:~]#mkdir /etc/rsyncd
--在/etc目录下创建一个rsyncd的目录,我们用来存放rsyncd.conf 和rsyncd.secrets文件;
[root@estals60:~]#touch /etc/rsyncd/rsyncd.conf
--创建rsyncd.conf ,这是rsync服务器的配置文件;
[root@estals60:~]#touch /etc/rsyncd/rsyncd.secrets --创建rsyncd.secrets ,这是用户密码文件;
[root@estals60:~]#chmod 600 /etc/rsyncd/rsyncd.secrets
--为了密码的安全性,我们把权限设为600;
[root@estals60:~]#ls -lh /etc/rsyncd/rsyncd.secrets
-rw------- 1 root root 14
10:21 /etc/rsyncd/rsyncd.secrets
[root@estals60:~]#touch /etc/rsyncd/rsyncd.motd
二、修改 rsyncd.conf 和rsyncd.secrets 和rsyncd.motd
rsyncd.conf 是rsync服务器主要配置文件,我们来个简单的示例;
比如我们要备份服务器上的 /nsn_talko_production/talko/var/www/html/Talko/talko.next/repository/
# Minimal configuration file for rsync daemon
# See rsync(1) and rsyncd.conf(5) man pages for help
# This line is required by the /etc/init.d/rsyncd script
pid file = /var/run/rsyncd.pid
port = 873
address = estals60
#uid = nobody
#gid = nobody
uid = root
gid = root
use chroot = yes
read only = yes
#limit access to private LANs
hosts allow=* #192.168.1.0/255.255.255.0 10.0.1.0/255.255.255.0
#hosts deny=*
max connections = 5
motd file = /etc/rsyncd/rsyncd.motd
#This will give you a separate log file
#log file = /var/log/rsync.log
#This will log every file transferred - up to 85,000+ per user, per sync
#transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
[P_repositor]
path = /nsn_talko_production/talko/var/www/html/Talko/talko.next/repository/
--list 意思是把rsync 服务器上提供同步数据的目录在服务器上模块是否显示列出来。默认是yes 。如果你不想列出来,就no ;如果是no是比较安全的,至少别人不知道你的服务器上提供了哪些目录。你自己知道就行了
ignore errors
--忽略IO错误
auth users = root
--用户账号 (这个必须得是系统中已经存在的账号)
secrets file = /etc/rsyncd/rsyncd.secrets
--存放密码的地方
comment = P_repositor
--相当于是一种接口名字,等服务跑起来了客户端可以直接用这名字调用相关服务器的文件夹内容信息
#exclude =
--无视这两个文件夹的内容
rsyncd.secrets的内容如下类似
root:123456 yofee:123456
rsyncd.motd 文件
  它是定义rysnc 服务器信息的,也就是用户登录信息。比如让用户知道这个服务器是谁提供的等。
+++++++++++++++++++++++++++
+ Yofee Packages rsync
+++++++++++++++++++++++++++
三、启动rsync服务器
[root@estals60:~]#/usr/bin/rsync --daemon& --config=/etc/rsyncd/rsyncd.conf
四、防火墙的设置
[root@estals60:~]#iptables -A INPUT -p tcp -m state --state NEW& -m tcp --dport 873 -j ACCEPT [root@estals60:~]#iptables -L& 查看一下防火墙是不是打开了 873端口;
五、执行同步命令
rsync -avzP root@estals60::P_repositor /nsn_talko/talko/var/www/html/Talko/talko.next/
这时会要求输入root的密码,然后就没啥问题了。
另外其实也可以考虑把他建在系统任务里面定时运行。道理都是一样的,用crontab,这里就不再重述了。
######################
uid = nobody
gid = nobody
use chroot = no
read only = false
max connections = 5
port = 873
motd file = /etc/rsyncd/rsyncd.motd
pid file = /tmp/rsyncd.pid
lock file = /tmp/rsync.lock
log format = %t %a %m %f %b
log file = /tmp/rsyncd.log
timeout = 300
path = /data/autoupdate/
ignore errors = yes
list = false
comment = update
secrets file = /etc/rsyncd/rsyncd.secrets
hosts allow = *
#hosts deny = 0.0.0.0/32
###########################################
上一篇:下一篇:Linux平台下rsync samba等的安装_小组_ThinkSAAS
Linux平台下rsync samba等的安装
Linux平台下rsync samba等的安装
rsync 服务器架设方法 v0.1b (正在修订中)
Samba 文件服务器用户复杂权限模型设计和实现 v0.1b
NFS 服务器安装配置
一步一学Linux与Windows 共享文件Samba (v0.2b)
VSFTPD的高手篇
ProFTPD 支持MySQL数据库添加虚拟用户认证及Quotas(磁盘限额)
vsftpd + pam_mysql + mysql 做的 ftp 服务器
请参考以下网址
http://www.linuxsir.org/main/?q=taxonomy/term/27
用户评论(0)
喜欢这个帖子的用户
加载中......
开发技术学习小组列表
PHP开发框架
缓存Memcache
服务器环境
ThinkSAAS商业授权:
ThinkSAAS为用户提供有偿个性定制开发服务
ThinkSAAS将为商业授权用户提供二次开发指导和技术支持
手机客户端
ThinkSAAS接收任何功能的Iphone(IOS)和Android手机的客户端定制开发服务
让ThinkSAAS更好,把建议拿来。

我要回帖

更多关于 怎么架设ftp服务器 的文章

 

随机推荐