广告

首页 > 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 = 08: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日,08: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. 还没有引用通告。