1. 程式人生 > >嵌入式linux平臺的NFS移植

嵌入式linux平臺的NFS移植

 感謝遙姐和超哥!

下載portmap以及nfs-utils原始碼包,用交叉編譯器進行編譯:

      configure portmap :./configure CC=交叉編譯器的路徑 --host=arm-linux

      configure nfs-utils  :./configure CC=XXXX --host=arm-linux --disable-gss

中間會遇到很多問題,缺少各種lib檔案,解決方法是下載這些lib的原始碼包,同樣用交叉編譯器編譯得到.a或者.so庫檔案,放到工作目錄或者交叉編譯器的lib中。configure檔案中的一些變數也需要修改,比如libwrap = -lwrap就應該改為libwrap=libwrap.a,最重要的是放對目錄。注意檢視config.log檔案的錯誤資訊,比如libwrap缺少某個標頭檔案就應該將這個標頭檔案加入include資料夾中。

     configure portmap之後,將portmap拷入嵌入式檔案系統的/usr/local/bin/下即可使用portmap start啟動portmap服務。用rpcinfo -p 也可以看到portmap使用了111埠。

      configure nfs之後,就開始:$make

                                                     $make DESTDIR=/home/jellyjar/arm-nfs install(注意不可以使用install strip,交叉編譯器無法刪除debug資訊)

這之後在目標資料夾arm-nfs下生成如下結構的檔案:

[email protected]:~/桌面/dragon_arm_nfs$ ls
sbin  usr  var
[email protected]:~/桌面/dragon_arm_nfs$ ls sbin
mount.nfs  mount.nfs4  umount.nfs  umount.nfs4
[email protected]:~/桌面/dragon_arm_nfs$ ls usr/sbin
exportfs  rpcdebug    rpc.mountd  rpc.statd  sm-notify nfsstat   rpc.idmapd  rpc.nfsd    showmount  start-statd

     編譯的nfs原始碼包與apt-get install下載的不一樣,aptget下載的dev包都是已經編譯好的,無法再次使用交叉編譯器編譯,。在嵌入式下,nfs的啟動很特殊。講dragon-arm-nfs檔案拷貝入嵌入式linux檔案系統後,執行如下一連串命令即可啟動nfs:

portmap start

切換到dragon_arm_nfs/usr/sbin下執行: ./rpc.statd

                                                                ./rpc.nfsd(這2步可能不成功,按照錯誤提示新增/var/lib/nfs資料夾即可)

                                                                ./rpc.mountd

與pc機上的nfs不同,可能是由於編譯器的關係,嵌入式nfs基於mount,但是mount 192.168.1.153:/nfs/nfsServer /home/nfsclient時mount無法自己呼叫nfs,必須到dragon_arm_nfs/sbin中使用mount.nfs來遠端掛載: ./mount.nfs 192.168.1.153:/nfs/nfsServer /home/nfsClient -w。此時到伺服器端showmount -a,即可發現掛在成功啦!大功告成!!!

參考:http://blog.csdn.net/zuogenyu/archive/2011/02/21/6197473.aspx

相關推薦

嵌入式linux平臺NFS移植

 感謝遙姐和超哥! 下載portmap以及nfs-utils原始碼包,用交叉編譯器進行編譯:       configure portmap :./configure CC=交叉編譯器的路徑 --host=arm-linux       configure nfs-

嵌入式linux usb wifi移植[s3c6410平臺 轉載]

http://blog.chinaunix.net/uid-8048969-id-3251135.html 重新編譯關於WIFI方面的modules,然後編譯wifi模組的驅動。把模組設定成開機載入模式。

嵌入式 Linux開發Kernel移植(二)——kernel核心配置和編譯

嵌入式 Linux開發Kernel移植(二)——kernel核心配置和編譯    本文選擇linux 2.6.35.7版本kernel進行實踐。一、linux kernel原始碼目錄分析Kbuild,K

嵌入式Linux下CUPS移植

一、交叉編譯      交叉編譯的過程不贅述,跟其他開源軟體類似。編譯後將安裝路徑裡的cups資料夾(後用[cups]代替)拷貝到板子上 二、配置並啟動服務      首先注意編譯核心時需要選擇usb printer surpport,支援usb印表機。  

【OpenCV移植系列】02. OpenCV 1.0 在嵌入式Linux 上的移植

1. OpenCV簡介 OpenCV的全稱是:Open Source Computer Vision Library。OpenCV是一個基於(開源)發行的跨平臺計算機視覺庫,可以執行在Linux、Windows和Mac OS作業系統上。它輕量級而且高效——由一

《net-snmp5.7.3移植到arm-linux平臺

b2c bash oca 創建 tran ros base embed mic net-snmp5.7.3移植到arm-linux平臺 本次交叉編譯在ubuntu 15.04 64位系統下進行。 準備工作 在編譯移植前有幾項準備工作需要完成。 1下載net-snmp 5.

jsoncpp linux平臺編譯和arm移植

clas inux sta 編譯 動態 cpp 取出 dir 沒有 下載 http://sourceforge.net/projects/jsoncpp/ 或者 http://download.csdn.net/detail/chinaeran/8631141 Linux平

嵌入式Linux截圖工具gsnap移植與分析【轉】

ram creat 嵌入式linux mbed 生活 rip 改變 因此 sig 轉自:http://blog.csdn.net/lu_embedded/article/details/53934184 版權聲明:開心源自分享,快樂源於生活 —&mdash

嵌入式Linux移植unzip工具

16px 文件 bsp ont div 嵌入 for .gz .tar.gz   由於busybox編譯出來的unzip不支持有密碼的壓縮包解壓,因此基於unzip60源碼包,交叉編譯一個嵌入式Linux上的unzip工具。 1.下載地址是: http://sourcefo

嵌入式ARM平臺基於Linux配置應用程式開機自啟動(fluxbox參考)

本文轉載於 http://www.eefocus.com/toradex/blog/18-01/426601_a6317.html,特此感謝 By Toradex秦海 1). 簡介 嵌入式ARM平臺裝置採用Embedded Linux作業系統

嵌入式Linux開發——(十五)移植YAFFS檔案系統

一、移植YAFFS檔案系統 1)YAFFS檔案系統的介紹     ①YAFFS(yet another flash file system)是一種類似於JFFS / JFFS2,專門為NAND Flash設計的嵌入式檔案系統,適用於大     &nbs

嵌入式Linux開發——(十四)移植Linux核心

基於Linux2.6.22.6 1、相關常識     ①VERSION = 2   PATCHLEVEL=6        主版本號,穩定版本用偶數來表示,每隔2~~3年出現一個穩定版 &nbs

嵌入式Linux】ARM開發板通過NFS掛載Linux主機實現檔案共享

一般在Linux主機上arm-linux-gcc編譯程式,然後將該生成的可執行檔案傳送給ARM開發板,ARM開發板再執行該檔案。 (主機Linux系統)--->(ARM開發板Linux系統)  傳送檔案的過程可以採用NFS,FTP等多種方法 採用NFS實現遠端掛載,ARM

linux平臺ffmpeg+h.264的本機移植和交叉編譯

本文講解在ubuntu和arm平臺下的ffmpeg和x264相關庫的移植,最終實現使用ffmpeg進行H.264編碼。 1、原始碼下載: 2、編譯     2.1、yasm-1.2.0移植       PC可使用如下命令對yasm庫進行配置、編譯和安裝,庫

深度實踐嵌入式linux系統移植 光碟下載地址

深度實踐嵌入式Linux系統移植這本書,翻了翻,感覺挺好,但要獲得這本書的配套光碟檔案真不容易, 書的序言部分給了一個支援站點 ,但是打不開。另外一種方式就是在以在華章網站下載。但是華章網站需要註冊才能下載(一般人都討厭註冊),而且註冊後下載的僅僅是一個下載連結,裡面的內容是

Linux平臺上使用Cmake進行交叉編譯替代嵌入式平臺所使用的Makefile

 jm11.0kta1.2.zip解壓後的資料夾名為JMKTA。 JMKTA的目錄結構如下 . ├── bin │   ├── decoder.cfg │   ├── encoder_baseline.cfg │   ├── encoder.cfg │   ├── encoder_extended.cfg│ 

#嵌入式Linux最小系統移植# yaffs2根檔案系統移植出錯記錄

busybox官網地址: 本次移植採用的busybox版本: busybox-1.26.0.tar.bz2 交叉編譯工具鏈版本: $ arm-linux-gcc -v gcc version 4.4.3 (ctng-1.6.1) 1

嵌入式Linux作業系統移植IMX6開發板之實現USB 自動掛載

本篇文章講述如何實現USB自動掛載,U盤即插即用,不用手動掛載的方法,以及給出U盤自動掛載的原理。 目前做的IMX6開發板,移植Linux系統,原始碼(linux核心為3.0.35)由廠家提供(後面會提供核心,uboot,檔案系統原始碼)。主要功能是實現機器人

嵌入式 hi3518平臺uboot引導nfs檔案系統

實驗板上操作: uboot啟動後按鍵進入uboot命令列環境: => cp.b fef50000 40000 20000; go 40004        ## 驅動vsc7385晶片 => set serverip 59.64.155.122          ## 主機地址 => se

嵌入式Linux下ALSA音訊架構ALSA-lib移植與編譯心得

*************************************************************************************************************************** 作者:EasyWave