1. 程式人生 > >搭建Ubuntu tftp 伺服器和NFS

搭建Ubuntu tftp 伺服器和NFS

NFS和TFTP是利用網路傳輸資料的兩種主要服務。接下來詳細解釋如何在ubuntu下安裝這兩種服務:

1.搭建TFTP伺服器:

 

首先要安裝tftp服務端:

sudo apt-get installtftpd-hpa            //tftpd-hpa是伺服器端

sudo apt-get install tftp-hpa(如果不需要客戶端可以不安裝)

安裝好後配置伺服器的設定:

sudo vim /etc/default/tftpd-hpa

  1 # /etc/default/tftpd-hpa
  2
  3 TFTP_USERNAME="tftp"
  4 TFTP_DIRECTORY="/tftpboot"
  5 TFTP_ADDRESS="192.168.1.20"
  6
  7 #TFTP_ADDRESS="127.0.0.1"
  8 TFTP_OPTIONS="--secure"

 

 IP改為自己主機上設定的IP,我的為192.168.1.20

其中第二項是TFTP的傳送目錄,將傳輸的檔案放在該資料夾下即可,在這裡新建一個/tftpboot目錄用於存放檔案。

 

而且要注意的是要將/tftpboot資料夾的許可權修改成777,命令如下:chmod777 -R /tftpboot

第三項tftp地址是主機的ip地址,設定好儲存即可。

然後重新啟動tftp服務:sudo service tftpd-hpa restart

到這步,主機上的tftp服務就算配置完成

接下來就是測試嵌入式板子能否與主機進行tftp傳輸了

tftp -g –r 檔名  伺服器IP

tftp -p –l 檔名  伺服器IP

在本機上開另外一個終端也可以進行測試:

tftp 127.0.0.1

tftp > get 檔名

 

2.NFS檔案系統搭建

 

 

首先安裝nfs服務:sudo apt-get install nfs-kernel-server

執行命令:mkdir /exp 建立一個nfs服務的專有的資料夾,這個資料夾就是將來傳輸檔案用到的建立好資料夾後,接著執行命令:sudo vi /etc/exports 配置nfs

在文章的最後一行新增:/exp*(rw,sync,no_root_squash,no_subtree_check)

 

 1 # /etc/exports: the access control list for filesystems which may be exporte    d
  2 #               to NFS clients.  See exports(5).
  3 #
  4 # Example for NFSv2 and NFSv3:
  5 # /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_    subtree_check)
  6 #
  7 # Example for NFSv4:
  8 # /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
  9 # /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
 10 #
 11
 12 /exp *(rw,sync,no_root_squash,no_subtree_check)
 13 /usr/local/ti-sdk-am335x-evm/targetNFS *(rw,nohide,insecure,no_subtree_check    ,async,no_root_squash)

 

 

 

其中:

*:允許所有的網段訪問,也可以使用具體的IP

rw:掛接此目錄的客戶端對該共享目錄具有讀寫許可權

 

 

修改完之後儲存退出

執行命令:sudo/etc/init.d/rpcbind restart 重啟rpcbind 服務

sudo /etc/init.d/portmap restart  (linux 6.0以上版本rpcbind 代替portmap)

執行命令:sudo /etc/init.d/nfs-kernel-server restart 重啟nfs服務

到這一步,主機的NFS服務就是配置完成

 

然後在嵌入式裝置上進行掛載操作:

mount -t nfs 192.168.1.20:/exp /mnt -o nolock 

將該ip地址的/exp目錄對映到嵌入式板子的/mnt目錄,也就是將/exp目錄掛載到/mnt目錄。訪問開發板的/mnt目錄,其實就相當於訪問主機的/exp目錄.