linux 下安装rsync
一、服务器端配置:
1、安装xinetd,并修改rsync相关配置
# yum -y install xinetd
# vi /etc/xinetd.d/rsync
如下代码:
service rsync
{
disable = yes
socket_type
= stream
wait = no
user = root
server = /usr/bin/rsync
server_args
= --daemon
log_on_failure += USERID
}
将disable
= yes改成disable = no
然后重启xinetd
# /etc/init.d/xinetd
restart
[
注:如果服务器上装有防火墙,需要打开端口,默认端口是873
# telnet 127.0.0.1 873
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
# iptables -A INPUT -s 192.168.0.0/255.255.255.0 -p tcp -m tcp --dport
873 -j ACCEPT
# iptables -A INPUT -p tcp -m tcp --dport 873 -j DROP
]
2、编写rsync.conf配置文件
# vi /etc/rsyncd.conf
内容如下:
port=873
uid = nobody
gid = nobody
user chroot = no
max connections = 200
timeout = 600
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
[www]
path = /home/www
ignore errors
read only = no
list = no
hosts allow = 192.168.1.0/255.255.255.0 设置允许访问的ip 可以为*(所有)
auth users = root
secrets file = /etc/rsyncd.secrets
注释:
port #开放端口
uid = nobody #进行备份的用户UID,nobody为任何用户
gid = nobody #进行备份的组GID,nobody为任意组
use chroot = no #如果"use chroot"指定为true,那么rsync在传输文件以前首先chroot到path参数所指定的目录下。这样做的原因是实现额外的安全防护,但是缺
点是需要以root权限,并且不能备份指向外部的符号连接所指向的目录文件。默认情况下chroot值为true。但是这个一般不需要,所以我选择no或 false
list = no #不允许列清单
max connections = 200 #最大连接数
timeout = 600 #覆盖客户指定的IP超时时间,也就是说rsync服务器不会永远等待一个崩溃的客户端。
pidfile = /var/run/rsyncd.pid #pid文件的存放位置
lock file = /var/run/rsync.lock #锁文件的存放位置
log file = /var/log/rsyncd.log #日志文件的存放位置
[backup] #这里是认证模块名,即跟samba语法一样,是对外公布的名字
path = /home/www #这里是参与同步的目录
ignore errors #可以忽略一些无关的IO错误
read only = no #允许可读可写
list = no #不允许列清单
hosts allow = 192.168.1.0/255.255.255.0 #这里跟samba的语法是一样的,只允许192.168.1.0/24的网段进行同步,拒绝其它一切IP
auth users = admin #认证的用户名
secrets file = /etc/rsyncd.secrets #密码文件存放地址
注意:对于这个地方的配置文件,虽然解释的很清楚,可是一些朋友始终还会在这里出错,这里我提亮点易错点:
[backup]是认证模块名和 path = /var/www 是参与同步的目录
这里的path 大家要记好了,这里不要随便的一设置就直接完事,要知道这里是认证模块的,以后从客户机备份的数据会存储在这里。
3、编写用户密码文件
# vi /etc/rsyncd.secrets
root:1234789
#用户名:密碼
4、给予只读权限
# chown root:root /etc/rsyncd.secrets
# chmod 600
/etc/rsyncd.secrets
-rw------- (600) -- 只有属主有读写权限。
-rw-r--r-- (644) -- 只有属主有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700) -- 只有属主有读、写、执行权限。
-rwxr-xr-x (755) -- 属主有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711) -- 属主有读、写、执行权限;而属组用户和其他用户只有执行权限。
-rw-rw-rw- (666) -- 所有用户都有文件读、写权限。这种做法不可取。
-rwxrwxrwx (777) -- 所有用户都有读、写、执行权限。更不可取的做法。
以下是对目录的两个普通设定:
drwx------ (700) - 只有属主可在目录中读、写。
drwxr-xr-x (755) - 所有用户可读该目录,但只有属主才能改变目录中的内容
suid的代表数字是4,比如4755的结果是-rwsr-xr-x
sgid的代表数字是2,比如6755的结果是-rwsr-sr-x
sticky位代表数字是1,比如7755的结果是-rwsr-sr-t
5、创建目录并修改所有者
# mkdir /home/www/
# chown -R nobody:nobody /home/www
6、启动服务
# rsync --daemon
7、加入开机自启动
# echo "rsync --daemon">> /etc/rc.local
二、Linux客户端进行同步
1、客户端默认好像已经装了rsync,没有的话装下:
# yum -y install rsync
2、创建密码文件
# vi /etc/rsyncd.passwd
文件内容如下(只包含密码部分):
123456789
3、执行异步同步操作:
# /usr/bin/rsync -avz --progress --password-file=/etc/rsyncd.passwd root@192.168.1.1::www /home/www
linux 下安装rsync的更多相关文章
- (转)Linux下通过rsync与inotify(异步文件系统事件监控机制)实现文件实时同步
Linux下通过rsync与inotify(异步文件系统事件监控机制)实现文件实时同步原文:http://www.summerspacestation.com/linux%E4%B8%8B%E9%80 ...
- 如何在Linux下使用Rsync
如何在Linux下使用Rsync 吐槽 昨天对scp进行总结之后看到最后有说到Rsync,俗语有云:好奇心害死猫.抱着学习的态度将Rsync给找了出来,然后进行了一些简单的学习.下面介绍一些个常用的命 ...
- Linux下安装 Posgresql 并设置基本参数
在Linux下安装Postgresql有二进制格式安装和源码安装两种安装方式,这里用的是二进制格式安装.各个版本的Linux都内置了Postgresql,所以可直接通过命令行安装便可.本文用的是Cen ...
- Linux下安装Tomcat服务器和部署Web应用
一.上传Tomcat服务器
- Linux下安装使用Solr
Linux下安装使用Solr 1.首先下载Solr.mmseg4j分词包.tomcat并解压,这用google.百度都可以搜索得到下载地址. 2.因为要使用到中文分词,所以要设置编码,进入tomcat ...
- Linux下安装tar.gz类型的jdk,并配置环境变量
近期因要学习一门技术,必须在Linux下运行,故开始学习如何使用Linux. 在安装jdk时出现了困难,环境变量配置不成功,花了一天时间才搞定,特分享出来,供大家参考. Linux下安装jdk,步骤如 ...
- Linux下安装和配置JDK与Tomcat(升级版)
在这个版本 Linux下安装和配置JDK与Tomcat(入门版) 的基础上优化升级 1.下载相关软件 apache-tomcat-6.0.37.tar.gz jdk-6u25-linux-i586-r ...
- Linux下安装cmake
cmake是一个跨平台的编译工具,特点是语句简单,编译高效,相对于原有的automake更为高效,接下来说明在Linux下安装cmake工具的过程 首先去cmake官网下载cmake安装包,下载界面网 ...
- linux下安装安装pcre-8.32
linux下安装安装pcre-8.32 ./configure --prefix=/usr/local/pcre 出现以下错误 configure: error: You need a C++ com ...
随机推荐
- js 继承inheritance/extends
主要就是<javascript语言精粹>语言精粹中的内容 5.1伪类 Function.prototype.method = function(name,func){ this.proto ...
- python中read、readline和readlines
f = file('test.txt' , 'r') all_data = f.read() # 字符串类型 f.read(8) #读取固定大小的 ...
- 初学java之异常类
//异常类 package st; public class example_1 { public static void main(String args[]) { int n=0,m=0,t=10 ...
- Check the difficulty of problems(POJ 2151)
Check the difficulty of problems Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 5457 ...
- web自定义控件UserControl
今天做了两个自定义控件,之前用WPF也做过,但是感觉跟今天的不太一样.首先是在项目中建了一个UserContral的控件界面,把需要的控件拖到里面,再给按钮添加事件.我们公司的控件都是买的Dev Ex ...
- linux shell 单引号 双引号 反引号的区别
一.单引号和双引号 首先, 单引号和双引号,都是为了解决中间有空格的问题. 因为空格在linux中时作为一个很典型的分隔符,比如 string1=this is a string,这样执行就会报错.为 ...
- java之io之File类的list()方法过滤目录的使用
java的io的知识中,File类必须掌握.File类是对文件或者文件夹的封装.它本身并不能对所封装的文件进行读写,它封装的只是文件或文件夹的周边知识,比如 大小啦,创建日期啦,路径啦等等. 如果Fi ...
- (转)onTouchEvent方法的使用
(转)onTouchEvent方法的使用 手机屏幕事件的处理方法onTouchEvent.该方法在View类中的定义,并且所有的View子类全部重写了该方法,应用程序可以通过该方法处理手机屏幕的触 ...
- java引用类型
java数据类型图: java的数据类型分基本数据类型(原始数据类型)和引用数据类型:1.基本八大类,图中可以很清楚的看到:这种类型的数据变量在声明之后java就会立刻分配给他内存空间.如:sho ...
- 一模 (2) day1
第一题: 题目大意: 设 2n 张牌分别标记为 1, 2, ..., n, n+1, ..., 2n,初始时这 2n 张牌按其标号从小到大排列.经一次洗牌后,原来的排列顺序变成 n+1, 1, n+2 ...