廣告

首頁 > NFSTFTPUBOOT >開機使用NFS和TFTP(更新)

引導使用NFS和TFTP(更新)

而不是慢慢穿出來你的NAND快閃記憶體,您可以通過網絡引導加載內核從 NFS共享使用TFTP和OS MINI2440。 這也使得測試更改它快得多。 使用Fedora 11,你可以使用yum來安裝 TFTP,TFTP服務器和nfs - utils的。

yum安裝 TFTP TFTP服務器的NFS - utils

我創建了一個文件夾 / home/doug/mini2440/root_fs,並添加以下行到/ etc /出口允許 R / W訪問來自 192.168.1 .*:

doug / mini2440 / root_fs 192.168.1.1 / 24 ( rw, sync ,no_root_squash ) /首頁// MINI2440 / root_fs 192.168.1.1 / 24(RW, 同步 ,no_root_squash)

..和提取埃文件系統作為 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的
}

然後,我開始的服務:

init.d / nfs start / etc / init.d中/ NFS啟動

service xinetd start / sbin目錄/服務xinetd的啟動

要自動化這些,我覺得你可以做:

chkconfig的TFTP就

chkconfig的xinetd的,

chkconfig的NFS就

接下來,我編輯的UBOOT環境。 使用命令setenv來修改或添加條目和savenev,當您完成。 我結束了與以下方面:

MINI2440#printenv
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:

iface的eth0的INET靜態

而在此之後的系統啟動的罰款。 最後,我有一張紙條,說我刪除了符號鏈接 / etc / resolve.conf中,取代它與:

本地
本地搜索
域名服務器 192.168.1.100

警告說,上述需要整個要與你的防火牆和SELinux兼容,否則它不會工作!

我發現以下幾個環節很有幫助:

TFTP

NFS

U - BOOT的NFS / TFTP引導

Tags: , 分類: NFSTFTPUBOOT 標籤:
  1. Anafor
    2009年12月31日,8時02分|# 1

    親愛的朋友們,
    我已經建立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服務器沒有響應,仍試圖

  2. jmboy
    2010年5月27日,8點49分| #2

    嗨大家,

    我有相同的行為與 NFS OpenEmbedded的

    我想消息後“沒有一個國家是存在卡S3C24XXUDA134X”OpenEmbedded的嘗試重新配置以太網接口和失敗的NFS連接,但我不知道該怎麼做,為了避免這種情況。
    有沒有人找到了解決辦法?
    感謝對我的幫助
    jmboy

  3. 2010年8月8日13時57分| #3

    您好
    我有同樣的問題,網絡重新配置和NFS連接丟失。
    我不能找到解決方案張貼在這裡的URL,但我還是改變了我的rootfs的文件。
    您rootfs的編輯文件/ etc / init.d中/網絡
    找到像這樣的行:
    迴聲 - N“配置網絡接口... ...”
    執行 ifup - A
    迴聲“做。”
    並註釋掉第二行有這樣的東西:
    迴聲 - N“配置網絡接口... ...”
    #ifup的一個
    迴聲“做。”
    後通過 NFS rootfs的任何問題。 至少對於我來說。
    這看起來像醜陋的解決方法,但希望它會幫你。

  4. 2010年8月8日14時18 | #4

    嗨,是的,當我遇到過這個問題,我改變了一個固定的IP地址。 奇怪的是,當我試圖在不同的網絡同樣的事情,在幾乎相同的方式配置,我並不需要改變任何東西。 我從來沒有想出什麼差異。 感謝後伊拉克利阿。

  1. 還沒有引用通告。