兩臺centos之間傳送文件

最近在CentOS系統中(主機A)讀數據。因爲A主機只是做爲數據讀取,具體的Deep Learning 實驗,須要在主機B( CentOS )中進行,須要將主機A上的數據傳輸。因爲主機A並非一直開着CentOS系統,且數據量比較(40G+),因此用優盤copy的方法有點不現實,通過查找資料,發現了兩種方法。html

 

注意:兩臺主機都是CentOS 6.5 版本的系統,主機A:IP 192.168.1.102     主機B:192.168.1.33sql

 

一、用命令行的方式

 

A,B 機上的SSH都容許root登陸,B主機的IP:192.168.1.33,要把A主機上的/home/data文件夾傳送到主機B上,運行命令vim

注意:這裏的scp命令,前面不能加sudo ,加上sudo後會報錯。centos

 

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

 

 

上面的命令中/home/data 是A主機中要傳的文件夾,後面的信息是B主機的信息。ruby

輸入上面的命令會提示輸入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文件

 

 
 

 

 

 

二、用NFS方式

 

首先稍微介紹一下NFS。app

NFS( Network File System )即,網絡文件系統,容許網絡中的計算機之間經過TCP/IP 網絡共享資源。在NFS的應用中,本地NFS的客戶端應用能夠透明地讀寫位於遠端NFS服務器上的文件,就像訪問本地文件同樣。spa

下面看一下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
相關文章
相關標籤/搜索