引導使用NFS和TFTP(更新)
而不是慢慢穿出來你的NAND快閃記憶體,您可以通過網絡引導加載內核從 NFS共享使用TFTP和OS MINI2440。 這也使得測試更改它快得多。 使用Fedora 11,你可以使用yum來安裝 TFTP,TFTP服務器和nfs - utils的。
我創建了一個文件夾 / home/doug/mini2440/root_fs,並添加以下行到/ etc /出口允許 R / W訪問來自 192.168.1 .*:
..和提取埃文件系統作為 root / home/doug/mini2440/root_fs
你需要編輯 / etc / xinetd.d中/ TFTP設置 TFTP。 礦張貼,以供參考,你至少需要設置禁用=無。
#說明:tftp服務器服務使用簡單文件傳輸的文件
#協議。 TFTP協議通常用於引導無盤
#工作站,下載配置文件到網絡感知打印機,
#,並開始為某些操作系統的安裝過程。
服務 TFTP
{
禁用=無
socket_type = dgram
協議 = UDP
WAIT = YES
用戶 =根
sbin / in.tftpd服務器= / usr / sbin目錄/ in.tftpd的
home / doug / mini2440 / kernel server_args = - S /首頁/格/ MINI2440 /內核
per_source = 11
CPS = 100 2
標誌 = IPv4的
}
然後,我開始的服務:
service xinetd start / sbin目錄/服務xinetd的啟動
要自動化這些,我覺得你可以做:
chkconfig的xinetd的,
chkconfig的NFS就
接下來,我編輯的UBOOT環境。 使用命令setenv來修改或添加條目和savenev,當您完成。 我結束了與以下方面:
bootdelay = 3
波特率 = 115200
: 18 : 12 : 27 ethaddr = 8時08分:11:18:12:27
usbtty = cdc_acm
=mini2440-nand:256k @ 0 ( u-boot ) ,128k ( env ) ,5m ( kernel ) ,- ( root ) mtdparts = mtdparts = MINI2440的NAND:256K @ 0(U - BOOT),128K(ENV),5M(內核) - (根)
=0tb MINI2440 = MINI2440 = 0tb
=ttySAC0, 115200 noinitrd bootargs_base = 控制台 = ttySAC0,115200 noinitrd
= / sbin / init bootargs_init的init = / sbin / init服務
= / dev / mtdblock3 rootfstype =jffs2 root_nand = 根為/ dev / mtdblock3 rootfstype = JFFS2
= / dev / mmcblk0p2 rootdelay = 2 root_mmc = = / dev / mmcblk0p2 rootdelay的根= 2
mnt / nfs root_nfs = 到/ mnt / NFS
= / dev / nfs rw nfsroot = ${serverip} : ${root_nfs} set_root_nfs = SETENV root_nfs 根為/ dev / RW nfsroot的 NFS = $ {服務器IP}:$ {root_nfs}
ip = ${ipaddr} : ${serverip} :: ${netmask} :mini2440:eth0 ifconfig_static =運行的setenv ifconfig的 IP = $ {IPADDR}:$ {服務器IP}:$ {掩碼}:MINI2440:eth0的
ip =dhcp ifconfig_dhcp =運行的setenv ifconfig的 IP = DHCP
=dhcp 使用ifconfig = IP = DHCP
set_bootargs_mmc =的setenv bootargs $ {bootargs_base} $ {bootargs_init} $ {MINI2440} $ {root_mmc}
set_bootargs_nand =的setenv bootargs $ {bootargs_base} $ {bootargs_init} $ {MINI2440} $ {root_nand}
set_bootargs_nfs =運行set_root_nfs的setenv bootargs $ {bootargs_base} $ {bootargs_init} $ {MINI2440} $ {root_nfs} $ {ifconfig命令}
=mini2440-nand mtdids = nand0 = MINI2440的NAND
=ttySAC0, 115200 noinitrd init = / sbin / init mini2440 =0tb ip =192.168.1.85 root = / dev / nfs rw nfsroot =192.168.1.10: / home / doug / mini2440 / root_fs bootargs = 控制台 = ttySAC0,115200 noinitrd 的 init = / sbin / init 的 MINI2440 = 0tb IP = 192.168.1.85根= / dev / NFS 的RW nfsroot的= 192.168.1.10:/ /格/ MINI2440 / root_fs
啟動文件 “的uImage”
大小 = 1E9088
fileaddr = 32000000
gatewayip = 192.168.1.100
NETMASK = 255.255.255.0
IPADDR = 192.168.1.85
服務器IP = 192.168.1.10
bootcmd = TFTP; bootm 32000000
分區 = nand0,0
mtddevnum = 0
mtddevname = U - Boot的
注意:當你的setenv你必須省略等號。 很明顯,你會想改變這一些,以滿足您的網絡設置。 在這裡我的筆記本電腦是192.168.1.10和192.168.1.100是我的pfSense的方塊,這是由DHCP分配192.168.1.85的MINI2440。
當您啟動系統 UBOOT將通過 TFTP下載內核,然後掛載的NFS共享。
如果你有網絡上的DHCP埃應自動獲得一個 IP地址。 在這種情況下,您可以跳過休息!
如果你想有一個靜態地址,你可以修改/ etc / network / interfaces中。 我只是改變了DHCP靜態為 eth0:
而在此之後的系統啟動的罰款。 最後,我有一張紙條,說我刪除了符號鏈接 / etc / resolve.conf中,取代它與:
本地搜索
域名服務器 192.168.1.100
警告說,上述需要整個要與你的防火牆和SELinux兼容,否則它不會工作!
我發現以下幾個環節很有幫助:



親愛的朋友們,
我已經建立OpenEmbedded的distrubition為 MINI2440。 我抄
mini2440的基image.tar.gz我,我的PC主機 arrenged一個跨越NFS
建設。 它工作正常,但是當我複製和提取
MINI2440的控制台image.tar.gz,我NFS沒有響應。 你有什麼
我的意見? 我複製我的minicom的控制台消息和重視。
此外,我嘗試下面的鏈接 sistem為 NFS rootfs的,但它仍然不是
響應。
U - Boot的1.3.2 - MINI2440(2009年10月6日 - 12時 51分09秒)
I2C:準備
DRAM:64 MB
閃存:2 MB
NAND閃存壞塊表芯片0
沒有發現壞塊表芯片0
128 MIB
環境中的OOB的偏移...
USB:S3C2410 USB Deviced
:串行
輸出:串行
錯誤:串行
MAC地址:08:08:11:18:12:27
按任意鍵停止自動引導:0
DM9000我/ O:0 × 20000300,編號:0x90000a46
DM9000的:在16位模式下運行
MAC地址:08:08:11:18:12:27
TFTP服務器 192.168.1.10;我們的IP地址是192.168.1.85
文件名'uImage.bin“。
負載地址:0 × 32000000
載重:校驗和錯誤
校驗和錯誤
T ################################################# ################
################################################## ###############
#########
完成
傳輸的字節 = 2031220(1efe74進制)
##從傳統的圖像引導內核在32000000 ...
圖片名稱:Angstrom/2.6.31 + git/mini2440
創建時間:2009-10-30 9時 06分09秒UTC
圖片類型:ARM Linux內核映像(未壓縮)
數據大小:2031156字節 = 1.9 MB
加載地址:30008000
入口點:30008000
驗證校驗和... ...“確定”
加載內核圖像 ... OK
確定
啟動內核 ...
解壓縮
Linux版本2.6.31.1(斯文@辦公室)(gcc版本4.2.4)#1週五 10月30日17時 04分01秒CST 2009
中央處理器:ARM920T [41129200]修訂 0(ARMV4T),CR = c0007177
CPU:VIVT數據緩存,VIVT指令高速緩存
機:MINI2440
內存政策:ECC的殘疾人,數據緩存回寫
CPU S3C2440A(編號 0 × 32440001)
S3C24XX鐘,(C)2004 SIMTEC電子
S3C244X:405.000 MHz的核心,101.250 MHz的內存,外設 50.625兆赫
時鐘:低速模式(1.500兆赫),速度快,MPLL,UPLL
內置 1 zonelists區秩序,流動性分組。 總頁數:16256
內核命令行:控制台= ttySAC0,115200 noinitrd的init = / sbin / init的MINI2440 = 0tb IP = 192.168.1.85根= / dev / NFS的RW nfsroot的= 192.168.1.10:/ HD
PID哈希表項:256(順序為:8,1024個字節)
的dentry緩存哈希表條目:8192(順序為:3,32768字節)
inode的緩存哈希表的條目:4096(順序為:2,16384字節)
內存:64MB = 64MB總
內存:60640KB代碼可用(3568K,417K數據,132K的init,0K highmem)
竹節:Genslabs = 11,HWalign = 32,令= 0-3,MinObjects = 0,CPU的= 1,節點 = 1
NR_IRQS:85
IRQ:待結算狀態 02000000
IRQ:結算 subpending狀態 00000002
控制台:彩色虛擬設備 80 × 30
控制台[ttySAC0]啟用
校準延遲循環 ... 201.93 BogoMIPS(LPJ = 504832)
山緩存哈希表的條目:512
CPU:測試寫入緩衝區的一致性:確定
NET:註冊協議族16
MINI2440:選項字符串MINI2440 = 0tb
MINI2440:液晶[0:240 X320] 1:800 × 480 2:1024 × 768
S3C2440的:正開始架構
S3C2440的:IRQ支持
(C)2003-2004,2006 SIMTEC電子 S3C24XX DMA驅動程序,
在c4808000 DMA通道0,IRQ 33
DMA通道1 c4808040,IRQ 34
DMA通道2 c4808080,IRQ 35
DMA通道3 c48080c0,IRQ 36
S3C244X:時鐘的支持,DVS的關閉
簡介:創建於 0板
usbcore:註冊新的接口驅動程序USBFS
usbcore:註冊新的接口驅動程序樞紐
usbcore:註冊新的設備驅動程序的USB
S3C I2C S3C2440 I2C從機地址0 × 10
S3C I2C S3C2440 I2C總線頻率設置為 98千赫
S3C - I2C S3C2440 I2C:I2C - 0:S3C I2C適配器
NET:註冊協議族2
IP路由緩存哈希表中的條目:1024(訂貨量:0,4096字節)
TCP建立哈希表中的條目:2048(順序為:2,16384字節)
TCP綁定哈希表中的條目:2048(順序:1,8192字節)
TCP:配置哈希表(2048綁定 2048成立)
TCP里諾註冊
NET:註冊協議族1
JFFS2的2.2版本。 (NAND)的© 2001-2006紅帽公司
ROMFS MTD(三)2007年紅帽公司
MSGMNI已設置為 118
ALG:無 stdrng(krng)測試
IO調度 NOOP註冊
IO調度預見性的註冊(默認)
IO調度註冊截止日期
IO調度 CFQ註冊
控制台:切換到彩色幀緩衝設備 60 × 53
FB0:s3c2410fb幀緩衝設備
S3C2440 - uart.0:0 × 50000000(IRQ = 70將 MMIO)ttySAC0是S3C2440的
S3C2440 - uart.1:0 × 50004000(IRQ = 73將 MMIO)ttySAC1是S3C2440的
S3C2440 - uart.2:0 × 50008000(IRQ = 76將 MMIO)ttySAC2是S3C2440的
BRD:模塊加載
AT24 0-0050:1024字節 24C08 EEPROM(可寫)
DM9000以太網驅動程序,V1.31
eth0的:c486e300 DM9000E,c4872304的IRQ 51的MAC:08:08:11:18:12:27(片)
(C)2004 SIMTEC電子 S3C24XX NAND驅動器,
s3c24xx - NAND S3C2440 NAND:Tacls = 1,9ns Twrph0 = 3 29ns,Twrph1 = 2 19ns
s3c24xx NAND S3C2440 NAND:NAND軟的ECC
NAND器件製造商ID:0xec,芯片ID:0xf1(三星的NAND 128MiB 3,3 V 8位)
創建“非128MiB 3,3 V 8位”4 MTD分區:
0 × 000000000000-0 × 000000040000:“U - Boot的”
ftl_cs:FTL頭沒有找到。
0 × 000000040000-0 × 000000060000“的U - Boot - ENV”
ftl_cs:FTL頭沒有找到。
0 × 000000060000-0 × 000000560000:“內核”
ftl_cs:FTL頭沒有找到。
0 × 000000560000-0 × 0000.08億:“根”
ftl_cs:FTL頭沒有找到。
ohci_hcd:USB 1.1的“打開”主機控制器接口(OHCI)驅動程序
S3C2410 OHCI S3C2410 OHCI:S3C24XX符合OHCI
S3C2410 OHCI S3C2410 OHCI:註冊新的USB總線,分配總線號 1
S3C2410 OHCI S3C2410 OHCI:IRQ 42,IO記憶 0 × 49000000
USB USB1:配置1#選擇 1選擇
樞紐 1-0:1.0:USB集線器發現
樞紐 1-0:1.0:檢測到2個端口
usbcore:註冊新的接口驅動程序libusual
S3C2440 usbgadget S3C2440 usbgadget:S3C2440的:增加128字節的FIFO
鼠:PS / 2鼠標設備共同所有小鼠
輸入:GPIO鍵 / devices/platform/gpio-keys/input/input0
S3C2440,S3C2440 TS - TS:啟動
創建的組 TS過濾 LEN 12深度2接近10閾值6
創建過濾器中位數 TS LEN 20深度為 2 12月24日
創建過濾器的平均TS LEN 4深度為 2閾值65535
創建線性 TS過濾深度為 2
S3C2440,S3C2440 TS - TS:4過濾器(S)初始化
S3C2440,S3C2440 TS - TS:成功加載
輸入:S3C2410觸摸屏/ devices/virtual/input/input1
(C)2004,2006 SIMTEC電子 S3C24XX的RTC
S3C2410,S3C2410 RTC RTC:RTC禁用,重新啟用
S3C2410的RTC S3C2410 - RTC:RTC核心:註冊 rtc0 S3C
I2C / dev項的驅動程序
S3C2410看門狗定時器,(C)2004 SIMTEC電子
S3C2410 - WDT S3C2410 - WDT:看門狗無效,復位時,IRQ啟用
cpuidle:使用總督階梯
sdhci:安全數字主機控制器接口的驅動程序
sdhci:版權所有(c)皮埃爾 Ossman
映射通道0至0
S3C2440 - SDI S3C2440 - SDI:斷電。
S3C2440 - SDI S3C2440 - SDI:初始化完成。
註冊 LED器件:LED1
註冊 LED器件:LED2
註冊 LED器件:LED3
註冊 LED器件:LED4
註冊設備 LED:背光
usbcore:註冊新的接口驅動程序hiddev
usbcore:註冊新的接口驅動程序USBHID
USBHID:V2.6:USB HID核心驅動
高級 Linux聲音架構驅動程序版本1.0.20。
不戴UDA134X設備
沒有戴s3c24xx I2S設備
S3C24XX_UDA134X SoC的音頻驅動程序
UDA134X SoC的音頻編解碼器
ASOC:UDA134X s3c24xx I2S映射確定
ALSA設備清單:
#0:S3C24XX_UDA134X(UDA134X)
TCP立方米註冊
NET:註冊協議族17
RPC:註冊 UDP傳輸模塊。
RPC:註冊 TCP傳輸模塊。
S3C2410 RTC S3C2410 - RTC:設置系統時鐘 2009-12-19零點 36分25秒UTC(1261182985)
eth0的:鏈接下跌
IP配置:猜測掩碼 255.255.255.0
IP配置:完成:
設備 = eth0的地址= 192.168.1.85,掩碼 = 255.255.255.0,網關 = 255.255.255.255,
主機 = 192.168.1.85,NIS域,域= =(無),
bootserver = 255.255.255.255,rootserver = 192.168.1.10,ROOTPATH =
尋找 192.168.1.10端口的RPC 100003 / 2
eth0的:連接起來,100Mbps的全雙工,LPA 0xCDE1
尋找 192.168.1.10端口的RPC 100005 / 1
VFS:裝入的根設備 0:14(NFS文件系統)。
釋放初始化內存:132K
INIT:2.86版啟動
請等待:引導 ...
開始的udev
填充開發高速緩存
重新掛載根文件系統 ... ...
未知的HZ值! (90)假設 100。
ALSA的:恢復混音器設置 ... ...
配置網絡接口... ...任何國家都存在卡S3C24XXUDA134X
的/ usr / sbin目錄 / alsactl:解析:1639:無法打開文件'/ usr/share/alsa/init/00main':沒有那個文件或目錄
任何國家都存在卡S3C24XXUDA134X
NFS:192.168.1.10服務器沒有響應,仍試圖
嗨大家,
我有相同的行為與 NFS OpenEmbedded的
我想消息後“沒有一個國家是存在卡S3C24XXUDA134X”OpenEmbedded的嘗試重新配置以太網接口和失敗的NFS連接,但我不知道該怎麼做,為了避免這種情況。
有沒有人找到了解決辦法?
感謝對我的幫助
jmboy
您好
我有同樣的問題,網絡重新配置和NFS連接丟失。
我不能找到解決方案張貼在這裡的URL,但我還是改變了我的rootfs的文件。
您rootfs的編輯文件/ etc / init.d中/網絡
找到像這樣的行:
迴聲 - N“配置網絡接口... ...”
執行 ifup - A
迴聲“做。”
並註釋掉第二行有這樣的東西:
迴聲 - N“配置網絡接口... ...”
#ifup的一個
迴聲“做。”
後通過 NFS rootfs的任何問題。 至少對於我來說。
這看起來像醜陋的解決方法,但希望它會幫你。
嗨,是的,當我遇到過這個問題,我改變了一個固定的IP地址。 奇怪的是,當我試圖在不同的網絡同樣的事情,在幾乎相同的方式配置,我並不需要改變任何東西。 我從來沒有想出什麼差異。 感謝後伊拉克利阿。