利用NFS服務掛載NFS根檔案系統
嵌入式Linux根檔案系統,簡單地說,根檔案系統就是一種目錄結構
注意根檔案系統和普通的檔案系統的區別。
常見的Linux根檔案系統有:
(1)NFS(網路根檔案系統),主要用於 產品除錯階段 。
(2)YAFFS,主要用於產品的釋出階段。大量生產直接寫入NandFlash。
搭建NFS根檔案系統
這個過程包括
1、設定NFS共享目錄
2、啟動NFS服務
3、重新設定開發板的環境變數
4、掛載根檔案系統
具體步驟如下:
1、解壓根檔案系統原始碼包到 /home/lwb/目錄下
#tar xvzf root_qtopia.tar.gz /home/lwb
解壓後則在/home/lwb/目錄下生成了一個root_qtopia目錄
2、cd root_qtopia 進入該目錄
3、pwd 顯示當前目錄 /home/lwb/qtopia 這個目錄下面要用到
4、vim /etc/exports //編輯匯出目錄
在exports檔案末尾新增:
/home/lwb/root_qtopia *(rw,sync,no_root_squash) //匯出/home/lwb/root_qtopia目錄 可讀可寫屬性 同步 root許可權掛載的。
儲存退出
5、使生效: #exportfs –ra
6、#exportfs –v 檢視是否真的已匯出
顯示:/home/lwb/root_qtopia <world>(rw,wdelay,no_root_squash,anonuid=65534,anongid=65534) 顯然匯出成功
匯出成功 、伺服器設定好啦。
7、重啟NFS服務
#/etc/init.d/nfs start //啟動nfs服務
開始掛載NFS(網路根檔案系統):
1、重新設定環境變數:
[[email protected]]# setenv bootargs console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.108:/home/lwb/root_qtopia ip=192.168.1.226:192.168.1.108:192.168.1.108:255.255.255.0:SMDK2440A.arm9.net:eth0:off
2、儲存環境變數:
//執行儲存環境變數結果如下:
Saving Environment to NAND...
Erasing Nand...
Erasing at 0x4000000000002 -- 0% complete.
Writing to Nand... done
3、檢視環境變數:
[[email protected]]# printenv
bootcmd=nand read 0x30008000 60000 500000;bootm 0x30008000
bootdelay=1
baudrate=115200
ethaddr=08:08:11:18:12:27
netmask=255.255.255.0
embedclub=bmp d 70000
stdin=serial
stdout=serial
stderr=serial
lcdtype=w
ethact=dm9000
serverip=192.168.1.108
ipaddr=192.168.1.266
gatewayip=192.168.1.1
bootargs=console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.108:/home/lwb/root_qtopia ip=192.168.1.226:192.168.1.108:192.168.1.108:255.255.255.0:SMDK2440A.arm9.net:eth0:off
Environment size: 459/131068 bytes
1、掛在檔案系統
[[email protected]]#boot
結果如下:
[[email protected]]# boot
NAND read: device 0 offset 0x60000, size 0x500000
5242880 bytes read: OK
## Booting kernel from Legacy Image at 30008000 ...
Image Name: Linux kernel Image by embedclub
Created: 2013-05-27 8:52:50 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2286764 Bytes = 2.2 MB
Load Address: 30008000
Entry Point: 30008040
Verifying Checksum ... OK
XIP Kernel Image ... OK
OK
Starting kernel ...
Uncompressing Linux..................................................................................................................................................... done, booting the kernel.
Linux version 2.6.32.2-FriendlyARM ([email protected]) (gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) ) #1 Sun May 19 10:37:56 CST 2013
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177
此處省略很多………………………………
Looking up port of RPC 100003/2 on 192.168.1.108
eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1
Looking up port of RPC 100005/1 on 192.168.1.108
nfs: server 192.168.1.108 not responding, still trying
nfs: server 192.168.1.108 OK
VFS: Mounted root (nfs filesystem) on device 0:11.
Freeing init memory: 160K
[06/Jul/2005:01:37:10 +0000] boa: server version Boa/0.94.13
[06/Jul/2005:01:37:10 +0000] boa: server built Mar 26 2009 at 15:28:42.
[06/Jul/2005:01:37:10 +0000] boa: starting server pid=680, port 80
Try to bring eth0 interface up......NFS root ...Done
Please press Enter to activate this console.
按回車鍵:出現如下結果:
Please press Enter to activate this console.
[[email protected] /]# ls
bin etc lib mnt proc sbin tmp var
dev home linuxrc opt root sys usr www
[[email protected] /]#
成功,哈哈!開發板和PC上的Linux是同步的。
測試一下:在PC上的/home/lwb/root_qtopia/目錄下:#touch hello
在SecureCRT 上#ls一下 是會出現 hello目錄的。
來個多執行緒的多生產者、多消費者的程式在開發板上執行執行,哈哈
把已寫好的程式pc3.c通過arm-linux-gcc pc3.c –o pc3.o
把pc3.o 拷貝到/home/lwb/root_qtopia/bin目錄下
在secureCRT下的/bin目錄下執行 ./pc3.o 成功
各種興奮,哈哈!因為之前有過:
(1) 和開發板連線的網線的另一端沒和PC連線,但我一直以為是連啦!
(2) 連好網線後,還是沒掛接上NFS根檔案系統。在PC上的Linux重啟一下NFS服務之後一切OK,哈哈!
相關推薦
利用NFS服務掛載NFS根檔案系統
嵌入式Linux根檔案系統,簡單地說,根檔案系統就是一種目錄結構 注意根檔案系統和普通的檔案系統的區別。 常見的Linux根檔案系統有: (1)NFS(網路根檔案系統),主要用於 產品除錯階段 。 (2)YAFFS,主要用於產品的釋出階段。大量生產直接寫入NandFl
開發板通過nfs服務掛載虛擬機器檔案目錄的嵌入式開發方式
在做嵌入式開發時,一般都是先在linux下交叉編譯工程,將生成的執行檔案拷貝到開發板上再執行,這樣很麻煩,現在介紹一種nfs檔案掛載的方式,只需要在嵌入式裝置和虛擬機器上安裝nfs服務,再做一些網路環境的配置,就可以直接把虛擬機器上工程檔案所在的目錄直接掛載到
在linux的PC上掛載jffs2根檔案系統映像
我們在除錯硬體板時,經常需要做多個jffs2的根檔案系統映像,有時也要對比其他途徑得到的可用的jffs2根檔案系統映像。但jffs2的檔案系統映像不象光碟的映像檔案一樣可以通過loop裝置來掛載,總不可能一個個燒錄到硬體板去看吧。 後來到網上google了一把
QEMU模擬Mini2440開發板執行環境(二):NFS掛載根檔案系統
前言 原創文章歡迎轉載,請保留出處。 若有任何疑問建議,歡迎回復。 郵箱:[email protected] 緊接著第一篇(http://blog.csdn.net/maxwell_nc/article/details/44279553),我們使用網路檔案系統NFS掛載根檔案
wlh- beagle bone 通過uboot tftp 載入zImage 裝置樹 及 nfs 掛載根檔案系統
首先重啟Ubuntu 伺服器的 tftp 和nfs sudo /etc/init.d/xinetd restart 命令 重啟 xinetd tftp服務 sudo&nbs
nfs掛載根檔案系統
1.安裝NFS nfs原理是通過網路,將遠端主機共享的檔案系統,掛載到本機。Ubuntu 12.04上預設是沒有安裝NFS伺服器的,首先要安裝NFS服務程式: 先執行 # apt-get update
NFS作為根檔案系統,掛載超時
NFS伺服器配置正確後,使用ramfs,通過mount能夠正常掛載NFS,但是作為ROOTFS無法正常掛載,顯示超時。 經檢視log,RPC報錯-120。 分析結果: 在Ubuntu1804上,nfsserver支援v3,v4,在UBuntu1304上,nfsserver
從NFS啟動Linux並掛載根檔案系統
要搞嵌入式NFS確實必不可少,否則每次都要重啟煩都煩死。這裡總結在NFS建立過程中遇到的幾個問題。 下面記錄幾個遇到的問題 VFS: Cannot open root device “
uboot中利用TFTP和NFS載入核心映象和根檔案系統
origin: http://www.cnblogs.com/cjjnjust/articles/1754849.html 主機說明: 實驗板說明: MPC8349itx開發板: IP: 59.64.155.244 閘道器 59.64.155.1 開發板eth0為
u-boot下配置掛載NFS根檔案系統
一、在linux系統主機下安裝NFS伺服器 在ubuntu10.04下安裝命令為: sudoapt-get install nfs-kernel-server 二、配置nfs伺服器 在ubuntu下安裝完ssh伺服器後預設開機啟動
mini6410基於linux2.6.36核心通過NFS啟動根檔案系統總結(四製作根檔案系統及通過NFS掛載檔案系統)
本系列文章有本人yinjiabin製作,轉載請註明出處: http://blog.csdn.net/yinjiabin/article/details/7489563根檔案系統一般包括: 1)基本的檔案系統結構,包含一些必須的目錄,比如:/dev,/proc,/bin,/
基於busybox製作mini2440根檔案系統及使用nfs掛載
常見的檔案系統有yaffs2, jffs2,他們是適用於根檔案系統映象存在於NAND Flash上的情況。而傳統的Linux EXT2/EXT3檔案系統格式適用於傳統的block裝置,比如SD卡或者硬碟。 cramfs同時適用於以上兩種情況。其不管採用哪種格式,核心都必
Beaglebone Black——理論篇beaglebone black啟動——從串列埠獲得SPL、U-BOOT,TFTP伺服器獲得核心,NFS伺服器掛載根檔案系統
一般來講啟動一個系統所需的bootloader(SPL/MLO、u-boot.img)和根檔案系統(/boot下包含核心zImage)要麼是放在NAND Flash,或者是SD卡,或者是eMMC,或者是USB中,那麼還有一種方式,就是所需要的這些檔案全部
u-boot通過nfs從伺服器下載核心,並且啟動核心,掛載根檔案系統的方法
http://www.linuxidc.com/Linux/2013-08/89154.htm http://blog.csdn.net/sinat_31500569/article/details/53120530 參考連結 首先要在電腦上安裝nfs伺服器 1.執行命令
linux開發環境搭建(3)-nfs掛載根檔案系統
前面講解了網絡卡配置和使用tftp下載核心,這次要講的是使用nfs掛載根檔案系統。 1、什麼是根檔案系統 所謂根檔案系統,也就是系統啟動後第一個掛載的目錄,根檔案系統包括Linux啟動時所必須的目錄和關鍵性的檔案,例如Linux啟動時都需要有init目錄下的
U-boot從tftp伺服器啟動,掛載到NFS根檔案系統
在uboot輸入設定下面的變數: # mac address可以使用uboot目錄tools下的gen_eth_addr工個來產生 setenv ethaddr <mac address>
beaglebone black tftp與nfs掛載根檔案系統
原文連結: http://blog.csdn.net/zy812248258/article/details/39291835 我的板子是beaglebone black rev.c 啟動方式: 在win下用am335x-evm-01.00.00.00.img.zip裡的
Xlinx-Zedboard使用NFS掛載根檔案系統
安裝nfs-kernel-server和tftpd-hpa服務 有安裝包情況下 sudo dpkg -i *.deb 建立共享目錄tftpboot 1.sudo mkidr /tftpboot 2
tiny4412 busybox製作根檔案系統rootfs nfs 掛載 ubuntu 14.04
首先得要有製作好的uboot和linux核心映象zImage,先燒錄到sd卡里,這個是已經做好了的工作。 一,ubuntu上先設定好nfs服務 1.新建一個要掛載的檔案 [email protected]:~/share$ pwd /home/liudijian
JZ2440設定從開發板啟動或使用NFS作為根檔案系統啟動
進入u-boot介面,選擇q退出主介面,進入 OpenJTAG> 1、從開發板根檔案系統正常啟動: OpenJTAG> set bootargs noinitrd root=/dev/mtdblock3 init=/linuxrc console