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 ...
随机推荐
- STL之pair类型具体分析
pair定义于头文件utility中.基本的作用是将两个数据组合成一个数据,两个数据能够是同一类型或者不同类型. pair类型提供的操作: pair<T1,T2> p1; pair< ...
- 身份证号码 javascript 验证
function checkIsIdno(idcard) { var Errors=new Array( "SUCCESS", "身份证号码位数不对!", &q ...
- ORA-01591错误的原因和处理方法
http://blog.csdn.net/tclcaojun/article/details/6777022错误代码:ORA-01591 错误原因:使用了分布式事务,造成这个问题的原因很多时候都是由于 ...
- ubuntu下编译原生ffmpeg
本文主要介绍Linux 系统下如何编译Ffmpeg,编译环境是Ubuntu 16.04,Ffmpeg版本是3.4.2.Windows环境 下如何编译ffmpeg前面有博文介绍,也录有视频,感兴趣的同学 ...
- Android后退事件的处理
当我们想退出应用程序时,一般都会采用按物理按键(后退键)的做法,当用户在按两次后退键的时候就将应用程序退出,即销毁当前的Activity(): 重写onBackPressed()方法即可: 代码如下: ...
- 【Union Find】JAVA implementation
import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.Scan ...
- 取出所有的Map集合
public static void main(String[] args) { Map<Integer, String> map = new HashMap<Integer, St ...
- JS 的引用赋值与传值赋值
这个问题说大不大说小不小,如果你有幸踩了这个坑,一定会找这篇文章,哈哈~ 现说一下JS数字的类型:基本类型和引用类型 先看下下面两个栗子: var a = 30; var b = a; a = 20; ...
- NativeBase准备工作
环境 node>= 4.0 npm>= 3.0 rnpm (only if React Native version < 0.29) ReactNativeCLI 安装及运行 ht ...
- FTPHelper类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.N ...