引导使用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 = 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:
而在此之后的系统启动的罚款。 最后,我有一张纸条,说我删除了符号链接/ 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地址。 奇怪的是,当我试图在不同的网络同样的事情,在几乎相同的方式配置,我并不需要改变任何东西。 我从来没有想出什么差异。 感谢后伊拉克利阿。