mini2440 最小根文件系统制作和nfs启动
mini2440 内核启动后,可以用busybox制作一个简单的根文件系统并用nfs来启动该文件系统
启动mini2440, 按任意键进入uboot,按q键进入uboot命令行:
执行以下命令:
set bootargs "noinitrd root=/dev/nfs rw nfsroot=192.168.211.2:/home/host/nfs/mini2440/rootfs ip=192.168.211.211 console=ttySAC0 init=/linuxrc"
saveenv
从http://busybox.net/downloads/busybox-1.22.1.tar.bz2 下载busybox,然后解压缩并进入解压文件夹:
tar xf busybox-1.22..tar.bz2
cd busybox-1.22./
然后执行下面命令进行配置:
make menuconfig
选择下面的选项:
Busybox Settings--->
Build Options---->
[*]Build BusyBox as a static binary (no shared fibs)
(arm-linux-) Cross Compiler prefix Busybox Settings --->
Installation Options --->
Applets links (as soft-links) -->
(/home/host/nfs/mini2440/rootfs)BusyBox installation prefix
其他选项选择默认即可。
然后进行编译和安装(安装到/home/host/nfs/mini2440/rootfs文件夹下):
make
make install
然后进入rootfs文件夹,执行下面命令:
mkdir dev etc home lib mnt proc sys tmp var
mkdir etc/init.d
touch etc/inittab
chmod +x etc/inittab
touch etc/init.d/rcS
chmod +x etc/init.d/rcS
touch etc/fstab
cd dev
mknod ttySAC0 c
ln -s ttySAC0 console
mknod null c
mknod mtdblock0 b
mknod mtdblock1 b
mknod mtdblock2 b 2
mknod mtdblock3 b 31 3
cd ../lib/
在etc/inittab文件中添加如下内容:
# System initialization.
::sysinit:/etc/init.d/rcS
::sysinit:/bin/sh
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -a -r
在etc/init.d/rcS文件中添加如下内容:
#!/bin/sh
mount -a
在etc/fstab文件中添加如下内容:
none /proc proc defaults
tmpfs /tmp tmpfs defaults
这样根文件系统就基本完成了,然后重启nfs服务器:
/etc/init.d/nfs-kernel-server restart
再重启mini2440就可以从nfs启动根文件系统了。
也可以制作yaffs镜像并烧写到nand flash:
从mini2440光盘中找到工具mkyaffs2image-128M(光盘中以压缩包方式存放于linux/mkyaffs2image.tgz),然后执行下面命令:
mkyaffs2image-128M /home/host/nfs/mini2440/rootfs/ rootfs.img
将rootfs.img拷贝到tftp文件夹,然后重启nfs服务器:
/etc/init.d/tftp-hpa restart
接着重启mini2440,进入uboot命令行,执行下面命令 :
tftp 0x30008000 rootfs.img
nand erase 0x560000 $filesize
nand write.yaffs 0x30008000 0x560000 $filesize
但是最后一步烧写yaffs失败,提示“ 2621440 bytes written: ERROR"。
我之后修改成下面的命令就可以了(filesize 大小为2adc80):
nand erase 0x560000 2d0000
nand write.yaffs 0x30008000 0x560000 $filesize
但是之后我又试了一次,但再次烧写失败,不知道原因何在。
mini2440 最小根文件系统制作和nfs启动的更多相关文章
- 根文件系统制作、NFS配置与安装及利用NFS挂载根文件系统
最近打算从头开始制作根文件系统,下面是开发过程. 一.根文件系统的制作 0.FHS(Filesystem Hierarchy Standard)标准介绍 该标准规定了根目录下各个子目录的名称及其存放的 ...
- linux根文件系统制作,busybox启动流程分析
分析 busybox-1.1.6 启动流程,并 制作一个小的根文件系统 源码百度云链接:https://pan.baidu.com/s/1tJhwctqj4VB4IpuKCA9m1g 提取码 :l10 ...
- NFS文件系统制作
内核: linux-3.0 u-boot: 2010.09 开发板: fl2440(s3c2440主芯片) 交叉编译器: 2011.11 ...
- Exynos4412从SD卡启动的简单网络文件系统制作
Exynos4412从SD卡启动的简单网络文件系统制作 1. 简介 嵌入式系统能够在开发板上正常运行,需要先进行系统配置,一个完整的嵌入式系统应该包含的几个部分::uboot,kernel,rootf ...
- 使用NFS启动Tiny4412开发板根文件系统
1.Ubuntu14.04上搭建NFS服务 1.1.安装NFS服务 $ sudo apt-get install nfs-kernel-server //安装NFS服务 1.2 创建Tiny ...
- EASYARM-IMX283 nfs启动内核和根文件系统
EASYARM-IMX283(以下简称IMX283)默认采用从nand flash启动,但是在开发过程中因为要频繁的替换内核,我们更倾向于从nfs启动. 先看看IMX283中uboot中默认采用的启动 ...
- NFS启动文件系统
NFS启动文件系统 一.软硬件平台 1.开发板:创龙AM3359核心板,网口采用RMII形式. 2.UBOOT版本:U-Boot-2016.05,采用FDT和DM. 3.交换芯片MARVELL的88E ...
- am335xSD卡启动--文件系统制作
1.网上下载busybox工具https://busybox.net/downloads/ 2.根据此文章提示制作自己的跟文件系统 链接: https://pan.baidu.com/s/1bp6GK ...
- rootfs -根文件系统制作
目录 目录 目录 概述 概念 根文件系统是什么 根文件系统中有什么 根文件系统的形式 Busybox 简介 什么是 linuxrc VFS 简介 Busybox 工具 Busybox 目录结构 Men ...
随机推荐
- 2016.7.12 eclispe使用mybatis generator生成代码时提示project E is not exist
运行mybatis-generator之后,出现错误:project E is not exist 错误原因:使用了项目的绝对路径. http://bbs.csdn.net/topics/3914 ...
- mongodb配置副本集(多台服务器间的副本集搭建) replica[ˈrɛplɪkə]
副本集具有多个副本保证了容错性,就算一个副本挂掉了还有很多副本存在,并且解决了“主节点挂掉了,整个集群内会自动切换”的问题.我们来看看mongoDB副本集的架构图: 由图可以看到客户端连接到整个副本集 ...
- C 错误处理
C 错误处理 C 语言不提供对错误处理的直接支持,但是作为一种系统编程语言,它以返回值的形式允许您访问底层数据.在发生错误时,大多数的 C 或 UNIX 函数调用返回 1 或 NULL,同时会设置一个 ...
- vue2.0 仿手机新闻站(三)通过 vuex 进行状态管理
1.创建 store 结构 2.main.js 引入 vuex 3. App.vue 组件使用 vuex <template> <div id="app"&g ...
- vue2.0 仿手机新闻站(二)项目结构搭建 及 路由配置
1.项目结构 $ vue init webpack-simple news $ npm install vuex vue-router axios style-loader css-loader -D ...
- windows ce.net开发概述
依据开发所处的层次以及开发工具的不同,能够将嵌入式系统开发分为系统开发和应用开发. 系统开发所涉及的内容包含三个方面:系统定制.驱动程序开发.操作系统一致(BSP开发). 一系统开发 (1) ...
- 使用Hadoop自己的类操作HDFS
package hdfs; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.I ...
- c# using三种用法
http://www.cnblogs.com/fashui/archive/2011/09/29/2195061.html http://www.cnblogs.com/iamv/archive/20 ...
- window.close关闭当前页面
浏览器处于安全策略考虑,只允许Javascript关闭由javascript打开的页面,为了用js关闭当前窗口,我们可以这么考虑,这也是最常用的做法. <a href="javascr ...
- OpenStack安装CentOS镜像:Device eth0 does not seem to be present, delaying initialization
解决办法:删除 /etc/udev/rules.d/70-persistent-net.rules 后重启机器.70-persistent-net.rules这个文件确定了网卡与MAC地址的绑定,cl ...