公司新闻 火狐体育app:文件共享同步5种方式:NFS、NAS、rsync、scp、ftp 来源:火狐体育最新官网登录入口 作者:火狐体育app 发表时间: 2022-11-27 01:59:37

  谈到文件同步,我们最直接的同步方式是采用rsync的同步软件,rsync同步可以保持server和client的强一致(server中的增删改都会同步client),但在实际场景中rsync可能并不能被采纳。考虑到多场景,我在此列出来常用的同步方式,以及对应的利弊。

  1、rsync:最常用的同步方式,也是做文件同步的首先,但在实际的工作中,由于传统企业并没有对开源软件保持开放的心态,所以在某些场合下,虽说是最好的解决方法,但不一定会被认可。

  2、scp实现免密码文件同步:此方式采用scp定时复制,实现server和client的文件同步,但需要实现服务器之间的免密码登录服务器,弊端在于需要修改服务器的SSH核心配置项,这在某些场合中是被禁止的。

  3、ftp实现文件同步:ftp实现的同步属于弱同步,不能严格意义上实现文件的同步(文件的增加和修改可以实现严格意义的一直,但删除ftp同步暂时无法实现),此方法是同步的旁门左道,到在某些特定的情况下,确十分被接纳。毕竟ftp比rsync更能被传统行业所认可。

  5、NFS:NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

  NAS和NFS都是采用网络协议实现文件的共享,但区别在于NAS是硬件级别的实现,NFS是软件实现,相当于在做负载均衡的时候,keepalived和F5硬件负载的区别。

  rsync目录同步,可以采用yum的方式,也可以采用源码编译,笔者就是采用rsync的源码方式进行的安装。且作者整理成安装脚本,完成的下载目录:

  source/root/.bash_profile#这几行主要就是让在使用read键时能使用回删键。写错了,回删了,重启写。不用这段的话,回删键会变成乱码。

  模块定义什么呢?主要是定义服务器哪个目录要被同步。每个模块都要以[name]形式。这个名字就是在rsync 客户端看到的名字,其实有点像Samba服务器提供的共享名。而服务器真正同步的数据是通过 path 来指定的。我们可以根据自己的需要,来指定多个模块。每个模块要指定认证用户,密码文件、但排除并不是必须的;

  --password-file=FILE:指定密码文件,将密码写入文件,实现非交互式数据同步,这个文件名也需要修改权限为600

  --delete:删除那些仅在目标路径中存在的文件(源路径中不存在),在脚本中的数据同步经常加上此参数

  在实际的同步过程中,如果同步的周期比较短,且同步的目录比较大,则会出现rsync锁住的情况,导致CPU特别高,或者同步异常,因此在生产环境中,

  这通常是您的rsyncd.conf中的path路径所设的那个目录并不存在所致.请先用mkdir开设好要备份目录

  最后原因终于找到了。因为有两个网段都需要同步该文件夹内容,但没有在hosts allow后面添加另一个IP段

  对方没开机、防火墙阻挡、通过的网络上有防火墙阻挡,都有可能。关闭防火墙,其实就是把tcp udp的873端口打开

  这通常有两种情况,一种是服务器在防火墙内,一种是服务器在防火墙外。无论哪种情况,通常还是使用ssh,这时最好新建一个备份用户,并且配置sshd仅允许这个用户通过RSA认证方式进入。如果服务器在防火墙内,则最好限定客户端的IP地址,拒绝其它所有连接。如果客户机在防火墙内,则可以简单允许防 火墙打开TCP端口22的ssh外发连接就ok了。

  视情况而定。rsync可以直接通过873端口的tcp连接传文件,也可以通过22端口的ssh来进行文件传递,但你也可以通过下列命令改变它的端口:

  如果你不是以root权限运行这一守护进程的线端口以下是特权端口,会出现这样的错误。你可以用--port参数来改变。

  这是因为密码设错了,无法登入成功,请再检查一下rsyncd.secrets中的密码设定,二端是否一致?

  这通常是您的rsyncd.conf中的path路径所设的那个目录并不存在所致.请先用mkdir开设好备份目录.完!

  - 如果通讯过程被截获,由于窃听者即使获知公钥和经过公钥加密的内容,但不拥有私 钥依然无法解密(RSA算法)

  执行上述命令,一路回车,会在当前登录用户的home目录下的.ssh目录下生成id_rsa和id_rsa.pub两个文件,分别代表密钥对的私钥和公钥,如下图所示:

  将authorized_keys文件修改权限:chmod 600 authorized_key,如果不修改可能引起一些列问题,这步完成后,正常情况下就可以无密码登录本机了,即ssh localhost,无需输入密码

  B服务器上面,上传ftp_rsync.zip文件至指定的目录。此处为/root下面,编辑install_web.sh文件,有几个参数比较重要

  但get只能实现单个文件的下载同步,对于目录似乎无法实现的,因此对于目录的同步下载,需要用到mget命令

  但即使这样也解决不了robot4整个文件夹的同步,因为mget下载当前路径下的所有文件和文件夹,但不能递归下载robot4下面的子文件。

  使用wget下载整个FTP目录,可以用于服务器间文件传输,进行远程备份。通过限制网速,可以解决带宽限制问题。

  注意,这个就体现了使用wget实现ftp同步的思想,wget存在一个问题,如果对于同步的目录进行多次同步,在第二次的时候由于发现存在,wget不会强制下载同步,且对于ftp server同步目录删除一个文件,是无法实现同步的,也就是我们在文章开始的时候说的,ftp实现的同步似乎弱同步

  笔者的公司采用NFS做文件素材(文件、图片、视频)的同步,且NFS的server和client是在一个局域网中进行文件共享,因为NFS在我司的场景中适用

  ###nfs_server_share为nfs服务器用来共享的挂载点或者共享目录,也是文件实际存储的路径

  ##启动NFS服务(先启动rpcbind,再启动nfs;如果服务器自身已经安装过NFS,那就用restart重启两个服务)

  source/root/.bash_profile#这几行主要就是让在使用read键时能使用回删键。写错了,回删了,重启写。不用这段的话,回删键会变成乱码。

  综上,有关文件同步和共享的5种方式已经介绍完毕,大家可以根据实际工作中的场景进行灵活选择,5种方式各有利弊,各有其应用场景。

上一篇:信息共享主要方式有哪几种?蒲公英X1如何创建信息共享? 下一篇:江翔宇:中国金融数据保护的立法与监管研究
关注我们
©2022 火狐体育最新登录网址_官网app入口 京公网安备110177777720125 火狐体育最新登录网址|火狐体育app