ubuntu下TFTP伺服器及NFS網路設定詳細過程

來源:互聯網
上載者:User

        昨晚剛寫了一篇Ubuntu10.04下的TFTP配置,這裡的TFTP伺服器配置用的是老方法了,不過也還是可以用。雖然TFTP及NFS網路設定方面非常簡單,不過由於長時間不用,今天再回過頭來實現這兩方面的配置過程,結果還真是鬱悶至極,看來不能忽視以前學過的知識,有空還得強化才行。

        接著來總結總結今天出現的一些問題,先來說說TFTP配置出來的一些問題吧,簡單的歸結如下:

        當TFTP配置成功後,在PC機上測試可以實現上傳與下載,說明是TFTP已經配置成功,是正常的,當目標板燒寫了Uboot之後,設定了環境變數ethaddr、ipaddr、serverip等,然後對主機進行ping操作,結果總是失敗。但是主機ping目標板卻是成功的,這是啥原因呢?

        為瞭解決這個問題,我對TFTP伺服器的配置成功與否產生質疑,結果重來了幾次,最終以失敗告終。緊接著在windows環境下用TFTP-server測試,還是出現這種問題,失敗。最後換了個uboot測試,還是沒成功。鬱悶啊鬱悶!!!!這是何等的鬱悶,沒想到被這小小的TFTP給難住了。如果目標板與主板沒連通,我後面的實驗就做不下去了,真是麻煩,心急如焚,雖說不能太急,但是由於已經花了半天的時間了,不能再浪費了。後來出去溜達了兩圈,突然間想到:NND,與目標板相連的是網線,其與PC相連的是有線乙太網路口,即eth0,而我現在連的是無線介面wlan0,這豈不是扯蛋嘛。於是乎,重新點烯了希望,馬上把wlan0無線斷了,啟用eth0的方式與目標板相連,並用ifconfig eth0 192.168.0.112配置主機IP。配置成功後,再次進行ping操作,果然,成功了!!!!!這個問題雖然有點白,不過確實讓我花了很大時間去找,哎,還好解決。

 

       接著談談配置NFS網路存在的一些問題吧,問題如下:

       當配置成功後,在本地進行測試,為何會掛載不成功呢:

       cpc@ubuntu:~$ sudo mount -t nfs 192.168.0.112:/home/cpc/nfs /mnt/nfs
       mount.nfs: access denied by server while mounting 192.168.0.112:/home/cpc/nfs

      這個問題還真棘手,不過也成功解決了,原因如下:

     1:沒有啟動連接埠映射  

           應該執行#sudo  /etc/rc.d/init.d/portmap start (如果不行,就執行:#sudo /etc/init.d/portmap start,如果還不行,則執行這一條:

           #sudo  service portmap start(這一條絕對能成功)

     2:  將/etc/exports中的“/home/cpc/nfs 192.168.0.*(rw, sync, no_subtree_check)"

改寫成“ /home/cpc/nfs *(rw,sync, no_root_squash)"即可

     這樣一改就可以解決上述的問題了。

 

        下面就來詳細地談下如何配置TFTP伺服器和NFS網路吧

1 TFTP伺服器配置

        1.1安裝tftpd、tftp和openbsd-inetd

        #sudo apt-get install tftpd

        #sudo apt-get install tftp

        #sudo apt-get install openbsd-inetd

 

      1.2 在使用者主目錄下建立tftpboot目錄並設定其讀取許可權

      mkdir /home/cpc/tftpboot

      chmod 777 /home/cpc/tftpboot

 

       1.3修改/etc/inetd.conf設定檔

       #sudo vim /etc/inetd.conf      開啟檔案

        將檔案底部加入為以下內容:

         tftp        dgram    udp    wait    nobody    /usr/sbin/tcpd    /usr/sbin/in.tftpd /home/cpc/tftpboot

         註:最後面的/home/cpc/tftpboot即為tftp伺服器的目錄了。

 

        1.4修改


/etc/xinetd.d/tftp  設定檔(如果沒有
tftp檔案就建立它)

        #sudo vim /etc/xinetd.d/tftp 開啟檔案後修改成如下樣式:

       service tftp
       {
               disable         =no
               socket_type     =dgram
               protocol        =udp
               wait            =yes
              user            =root
              server          =/usr/sbin/in.tftpd
              server_args     =-s /home/cpc/tftpboot -c
              source          = 11
              cps             = 100 2
      }

      當然以上的server_args參數可以根據實際情況修改。

 

           1.5 修改


/etc/default/tftpd-hpa檔案如下:

         #/etc/default/tftpd-hpa
         RUN_DAEMON="no"
         OPTIONS="-s /home/cpc/tftpboot -c -p -U tftpd" 

 

           1.6開啟服務

        sudo /etc/init.d/openbsd-inetd
reload 

 

        sudo /etc/init.d/xinetd restart

        sudo in.tftpd -l /home/cpc/tftpboot

 

 

   

         1.7測試是否成功配置(這塊就不講了,略過)

---------------------------------------------------

2   NFS網路檔案系統配置

 

       2.1安裝
NFS伺服器安裝
nfs-kernel-server

       可以通過新立得軟體包管理器來安裝或#sudo apt-get install nfs-kernel-server

       2.2 在使用者根目錄下建立nfs目錄並改變目錄許可權

       mkdir /home/cpc/nfs

       chmod 777 /home/cpc/nfs

 

       2.3 修改/etc/exports設定檔,修改內容如下:

      #
/etc/exports: the access control list for filesystems which may be
exported

  # to NFS clients. See
exports(5).

  #

  # Example for NFSv2 and
NFSv3:

  # /srv/homes
hostname1(rw
,sync)
hostname2(ro
,sync)

  #

  # Example for NFSv4:

  # /srv/nfs4
gss/krb5i(rw
,sync
,fsid=0
,crossmnt)

  # /srv/nfs4/homes
gss/krb5i(rw
,sync)

        
/home/cpc/nfs  *(rw, sync, no_root_squash)

 

        2.4 修改配置完後,接下來最關鍵的一步就是要啟動portmap服務與nfs-kernel-server服務

       

        sudo service portmap start(啟動portmap連接埠映射)

       

        sudo /etc/init.d/nfs-kernel-server
restart (啟動nfs服務)

 

       2.5測試

       可以把nfs檔案系統mount到/mnt/下,然後在/mnt下查看檔案的內容,如果在/mnt下能查看到與/nfs目錄下的內容,則說明nfs網路檔案系統配置成功。這樣,嵌入式目標板運行時可以通過設定環境變數bootargs,讓其過掛載nfs上的檔案系統,這樣方便調試。

      

<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->

        mount –t nfs
192.168.0.112:/home/cpc/nfs/ /mnt

       然後查看ls /mnt內容。

 

---------------------文章結束--------------------- 

 

 

 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.