用SD卡下载uboot、linux内核和文件系统
1、 移植mtd-utils:
a) 下载utd-utils 下载地址为ftp://ftp.infradead.org/pub/mtd-utils/
b) 交叉编译mtd-utils
i 修改Makefile CROSS=arm-linux-
ii make
iii 查看下mtd-utils-1.0.0目录下是否生成了咱们所需要大工具
(flashcp,nandwrite......等)。有工具生成了,OK,交叉编译成功。
iv 将生成大工具拷贝到文件系统开发板的根文件系统,放在/bin 或/sbin 都行。
2、 sd卡烧录
a) 在安装了 Linux 的 PC 机上通过 fdisk 给一张空的SD 卡分为 2 个区(如果SD卡中本身已经包含,请通过fdisk的“d”命令全部删除),得到如下的分区表:
Command (m for he lp) : p
Di sk /dev/ sdb: 1030 MB, 1030225920 byte s
32 he ads, 62 se c tor s / t rack, 1014 cyl inde r s
Uni t s = cyl inde r s of 1984 * 512 = 1015808 byt e s
Di sk ident i f ie r : 0x6f20736b
Devic eBoot Sta r t End Blocks Id Sys tem
/dev/ sdb1 * 1 20 19809 83 Linux
/dev/ sdb2 21 1014 986048 83 Linux
注意第 1 个分区制作的命令为:
Command (m for he lp) : n
Command a c t ion
e ext ended
p primary partit ion (14)
p
Partition numbe r (1-4): 2
Firs t cyinde r (11014, defaul t 21) :
Using defaul t value 21
Last cyl inder, +cyl inde rs or +s ize{K,M,G} (11014,defaul t 1014) : 20M
第 2 个分区制作的命令是:
Command (m for he lp) : n
Command action
e ext ended
p primary partition (14)
p
Partition numbe r (14): 2
Firs t cyl inde r (211014)defaul t 21) :
Us ing defaul t value 21
La st cyl inder, +cyl inde r s or +s iz e{K,M,G} (211014,de faul t 1014) :
Us ing defaul t value 1014
Command (m for he lp) :
我们还要通过“a”命令标记第 1 个分区:
Command (m for he lp) : a
Pa rtition numbe r (14) : 1
最后要通过“w”命令把建好的分区表写入 SD 卡。
b) 格式化 SD 卡的分区 1 和分区 2:
mkfs .vfa t /dev/ sdb1 mkfs. ext3 /dev/ sdb2 fsck.ext3 /dev/ sdb2
c) 通过 moviNAND_Fusing_Tool.exe 烧写 SD 卡 UBOOT 和 zImage:
更新SD卡根文件系统的方法很简单,在PC机器上 mount /dev/sdb2 后,直接通过
cp fa <your rootfs> </your rootfs>的方式就可以替换根文件系统了。是你的根文件系统的目录,是你的/dev/sdb2 挂载的目录。特别要注意的是,SD 的设备节点不一定是/dev/sdb,应该视用户电脑的硬盘情况而言,可能是/dev/sdc,/dev/sdd 等。
<new_rootfs_di r> </new_rootfs_di r>
<your rootfs> </your rootfs>
3、 nand烧录
a) 更新NAND版UBOOT
先把在电脑上把uboot复制到sd卡根文件系统中;再运行# f lashcp ubootmovi.bin /dev/mtd0;
b) 更新NAND分区中的Linux内核
建立fix-image脚本,内容为:
rm arch/arm/boot/zImage-fix;
dd if=arch/arm/boot/zImage of=arch/arm/boot/zImage-fix bs=2048 count=4096 conv=sync;
chmod 755 arch/arm/boot/zImage-fix;
编译内核
注意执行最后一步./fix-image脚本,将编译好的zImage-fix复制到sd卡根文件系统中;运行:# flashcp zImage-f ix /dev/mtd1;
c) 更新NAND分区中的文件系统
在 PC 上将做好的新的根文件系统拷贝入 SD 卡的某目录,下面我们以指代该目录。
以 SD 卡或 NFS 为根文件系统启动系统,运行如下命令擦除dev/mtd2分区:# flash_eraseall /dev/mtd2;然后将 NAND 的该分区 mount 到/mnt: # mount /dev/mtdblock2 t yaffs2 /mnt 将新的文件系统拷贝到/mnt:
# cp fa <new_rootfs_di r> /mnt;</new_rootfs_di r>
用SD卡下载uboot、linux内核和文件系统的更多相关文章
- linux的几个内核镜像格式Image 和 u-boot启动内核和文件系统时的一些环境变量的设置
关于编译powerpc linux的几个Image参考原文 http://blog.sina.com.cn/s/blog_86a30b0c0100wfzt.html 转载▼ PowerPC架构 L ...
- 小白自制Linux开发板 三. Linux内核与文件系统移植
上一篇完成了uboot的移植,但是想要愉快的在开发板上玩耍还需要移植Linux内核和文件系统. 1.Linux内核 事实上对于F1C100S/F1C200S,Linux官方源码已经对licheepi ...
- 嵌入式Linux内核+根文件系统构建工具-Buildroot 快速入手指导【转】
本文转载自:https://my.oschina.net/freeblues/blog/596448 嵌入式Linux内核+根文件系统构建工具-Buildroot 快速入手指导 buildroot 是 ...
- 用 S5PV210 学习 Linux (三) SD卡下载
学习地址:http://edu.51cto.com/lesson/id-63015.html http://blog.csdn.net/karven_/article/details/52015325 ...
- tiny4412 --Uboot移植(6) SD卡驱动,启动内核
开发环境:win10 64位 + VMware12 + Ubuntu14.04 32位 工具链:linaro提供的gcc-linaro-6.1.1-2016.08-x86_64_arm-linux-g ...
- Tiny6410烧入uboot,linux内核,文件系统
好久没有玩tiny6410了,今天拿出来试试.之前学习一直是跟着视频学习的.今天自己动手来做一下. 首先我将光盘linux目录下的linux-2.6.38-20150708.tgz rootfs_r ...
- 通过SD卡来安装Linux系统
一.制作SD启动卡(安装Linux)步骤: 烧写原理:superboot-6410.bin(bootloader)+内核镜像文件+根文件系统 1.将SD卡插入USB接口的读卡器,并插在PC的USB口 ...
- 使用uboot的tftp下载bootloader、内核、文件系统
开发板 jz2440 下载uboot.bin tftp 0x30000000 u-boot.bin nand erase bootloader nand write bootloader 下载内核 t ...
- 关于UBOOT,LINUX内核编译,根文件系统的15个小问题
(1)内核默认运行地址和加载地址在哪里设置? 由 arch/arm/kernel/vmlinux.lds.S 生成的 arch/armkernel/vmlinux.lds决定 (2)从FLASH什 ...
随机推荐
- windows10UWP:如何在xaml中设置控件为 public ?
windows10UWP中,由于使用页面导航,操作在不同一个页面的控件需求经常遇到. 如果要对另一个page里面的控件进行操作,那么这个控件必须设置为 public .在 xaml 设置控件的方法是: ...
- 自定义HtmlHelper方法
原文:http://www.cnblogs.com/wenjiang/archive/2013/03/30/2990854.html HtmlHelper方法是ASP.NET MVC中非常强大的特性, ...
- TFS 安装与管理
整了几天TFS,把相关的一些配置与安装的要点简单记下,希望对大家有用.本篇主要是安装与配置上的内容,下一篇会介绍如何使用以及使用方面的相关心得体会. 本篇内容简要: 1. 安装部署 1.1. 流 ...
- Android开发----权限大全
一.添加权限格式: 示例: <uses-permission android:name="android.permission.WRITE_EXTERNAL_STOR ...
- oracle 的 startup,startup mount,startup nomount之间的区别
startup,startup mount,startup nomount之间的区别 startup nomount选项:(读初始化参数文件,启动实例) startup nomount选项启动实例 ...
- WHU 1568 Product (DP、逆元)
题意: 定义f(x) 为数x的所有数字的乘积. 求满足f(k)=f(x)的不同的不含数字1的k的个数. x的长度小于50. 不超过1000组数据. Solution: 由于函数是乘积的形式,可以由质因 ...
- 使用PHP预定义变量得到url地址及相关参数
获取url地址栏参数多种方法:$_SERVER["SERVER_PORT"]//获取端口$_SERVER['HTTP_HOST']//获取域名或主机地址 如www.sina.com ...
- MySQL账号授权操作
Mysql权限控制 - 允许用户远程连接 设置mysql root密码: mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = P ...
- ps使用方法续
1.找一张皱折的背景,将需要制作的照片拖入背景层,调整尺寸并裁剪,使之 与背景边框相配, 2.调整-色相饱和度,全图:饱和度-35,明度+10, 3.调整图层改成柔光模式,出来旧照片的效果了, 4.色 ...
- Unity3d shader内置矩阵
内置矩阵 支持的矩阵(float4x4):UNITY_MATRIX_MVP 当前模型视图投影矩阵UNITY_MATRIX_MV 当前模型视图矩阵UNITY_MATRI ...