两台centos之间传送文件

最近在CentOS系统中(主机A)读数据。由于A主机只是作为数据读取,具体的Deep Learning 实验,需要在主机B( CentOS )中进行,需要将主机A上的数据传输。由于主机A并不是一直开着CentOS系统,且数据量比较(40G+),所以用优盘copy的方法有点不现实,经过查找资料,发现了两种方法。

 

注意:两台主机都是CentOS 6.5 版本的系统,主机A:IP 192.168.1.102     主机B:192.168.1.33

 

1、用命令行的方式

 

A,B 机上的SSH都允许root登录,B主机的IP:192.168.1.33,要把A主机上的/home/data文件夹传送到主机B上,运行命令

注意:这里的scp命令,前面不能加sudo ,加上sudo后会报错。

 

  1.  
    [root@localhost Desktop]# scp /home/data root@192.168.1.33:/home/new-data
  2.  
     

 

 

上面的命令中/home/data 是A主机中要传的文件夹,后面的信息是B主机的信息。

输入上面的命令会提示输入B主机的root 密码,对于要传的文件夹来说scp命令是不允许的会提示

 

/home/data: not a regular file

 

 

so,需要先将文件夹进行压缩,然后再用刚才的命令进行传递数据

 

  1.  
    [root@localhost Desktop]#tar jcvf /home/data.tar.bz2 /home/data #创建.tar.bz2文件,压缩率高(由于数据量比较大,压缩时间比较长)
  2.  
    [root@localhost Desktop]#tar -xvjf data.tar.bz2   #解压.tar.bz2文件

 



 

 

 

2、用NFS方式

 

首先稍微介绍一下NFS。

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

下面看一下NFS服务器和客户端的具体配置过程

服务器的配置

 

(1)安装nfs 所需的包,nfs-utils 和 rpcbind,注意:在centos的一些版本中安装nfs-utils的时候会安装rpcbind

 

yum install -y nfs-utils


(2)修改配置文件(创建共享的文件路径)

 

 

<pre name="code" class="html">[root@localhost Desktop]#vim /etc/exports 

/home/ 192.168.1.0/24 (rw,all_squash) #文件里面添加的内容

 


 

 

其中的/home/ 是要共享的目录  192.168.1.0/24 是允许访问的主机,可以是一个IP,也可以是一个网段 。()里是共享的权限 ,其中 rw是读写,all_squash是普通用户身份

 

(3)修改后,启动NFS服务

 

  1.  
    [root@localhost Desktop]# /etc/init.d/rpcbind start #输入该命令后无反应
  2.  
     
  3.  
    [root@localhost Desktop]# /etc/init.d/nfs start
  4.  
     



 

客户端的配置(主机B)

(1)安装nfs所需的软件包(和服务器的安装方式一样)

 

(2)查看服务器共享了哪些目录

 

showmount -e 192.168.1.102

 

会提示如下错误

 

在网上查找,发现是防火墻的问题 介绍网址 NFS错误:clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)

 

被访问的NFS服务器上的防火墙没有添加规则,我所做的处理是直接将防火墙关闭,需在服务器配置

 

 service iptables stop

 

服务器配置完后,再查看共享目录就没问题了。

 

 

(3)客户端mount nfs

 

mount -t nfs 192.168.1.102:/home /mnt/new_data

 

posted @ 2018-07-09 10:59  庞国明  阅读(4615)  评论(0编辑  收藏  举报