Linux---同步与共享

rsync
rsync命令的用法:

基本格式: rsync [选项] 原始位置目标位置
常用选项:
-a:归档模式, 递归并保留对象属性, 等同于-rlptgoD
-v:显示同步过程的详细(verbose) 信息
-z:在传输文件时进行压缩( compress)
-H:保留硬连接文件
-A:保留ACL属性信息
–delete:删除目标位置有而原始位置没有的文件
-r:递归模式,包含目录及子目录中所有文件
-1:对于符号链接文件仍然复制为符号链接文件
-p:保留文件的权限标记
-t:保留文件的时间标记
-g:保留文件的属组标记(仅超级用户使用)
-o:保留文件的属主标记(仅超级用户使用)
-D:保留设备文件及其他特殊文件

操作

1.搞一个需要同步的文件并且分权限

mkdir /var/ssh
cd /var/ssh/
touch /var/ssh/ssh.txt
useradd a1
passwd a1
useradd a2
passwd a2
chown a1:a1 /var/ssh/

2.第二个服务器同步一下

rsync -avz a2@192.168.84.130:/var/ssh/* /ssh/
rsync -avz /ssh/* a1@192.168.84.130:/var/ssh/#反向同步
ssh

1.设置免密(两个服务器都要搞)

ssh-keygen -t rsa
ssh-copy-id 192.168.84.133
ssh 192.168.84.133 date

2.安装gcc

yum -y install gcc*

3.依次安装需要的服务(给的光盘里有)

tar -zxf ocaml-3.10.1.tar.gz 
cd ocaml-3.10.1
./configure 
make world opt
make install
cd ..
tar -zxf unison-2.13.16.tar.gz 
cd unison-2.13.16
make UISTYLE=text THREADS=ture STATIC=true
cp unison /usr/local/bin/
cd ..
tar -zxf inotify-tools-3.14.tar.gz 
cd inotify-tools-3.14
./configure 
make
make install

4.搞两个文件交试试同步

mkdir /S1
cd /S1/
touch happy1.txt
unison -batch /S1/ ssh://192.168.84.133//S2#S2是另一个服务器的

PS:如果写脚本的话,内容

#!/bin/bash
ip2="192.168.84.133"
src2="/S1"
dst2="/S2"
/usr/local/bin/inotifywait -mrq -e create,delete $src2 | while read line;
do
        /usr/local/bin/unison -batch $src2 ssh://$ip2/$dst2
echo -n "$line" >> /var/log/inotify.log
echo `date` | cut -d " " -f1-4 >> /var/log/inotify.log
done         
NFS

1.安装两个包

yum -y install rpcbind
yum -y install nfs-utils

2.创建文件,开启服务

vim /etc/exports 
chmod 777 /S1#改权限
service rpcbind restart
service nfs restart
showmount -e

PS:exports写什么?

S1 192.168.84.0/24(rw,sync)#S1文件夹可以被192.168.84.0网段访问,权限读写

PS:ps:showmount -e报错为“clnt_create: RPC: Unknown host”
解决方法:
查找主机名hostname
写到文件里vim /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.84.130 bogon#这一行是新加的

3.另一个服务器的操作
之前的两个包要装一下,同步给挂载一样

yum -y install rpcbind
yum -y install nfs-utils
showmount -e 192.168.84.130
mount -t nfs 192.168.84.130:/S1 /mnt
ls /mnt/

PS:如果你发现你的网断了:

chkconfig NetworkManager off
chkconfig network on
service NetworkManager stop
service network start
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值