1、需求MLO、u-boot.img、uImage、Systemfile

  1. 获取MLO、u-boot.img下载U-boot源码,解压获得源码,进入源码目录

    cd /home/zyr/Source_code/
    tar zxvf u-boot-2016.03.tar.gz
    cd u-boot-2016.03
    make arch=arm CROSS_COMPILE=arm-linux-gnueabihf- O=am335x-boneblack am335x_evm_defconfig all 

    获取uImage,下载kernel源码(链接: https://pan.baidu.com/s/1cqBd0q 密码: 7nzp),解压源码,进入源码目录

    进入源码目录
    运行脚本文件kernel.sh

    #! /bin/bash
    echo "Configure the kernel"
    until
    echo "1.make the omap2plus.defconfig"
    echo "2.make the menuconfig( Boot options -> Kernel command line type (root=/dev/mmcblk0p2 rootwait console=ttyO0,115200) )"
    echo "3.make the dtb"
    echo "4.make the zImage"
    echo "5.make the uImage"
    echo "6.make the distclean"
    echo "7.make the modules"
    echo "8.quit"
    read input
    test $input = 8
    do
    case $input in
    1)make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- omap2plus_defconfig;;
    2)make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig;;
    3)make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zyr-am335x-evmsk.dtb;;
    4)make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage;;
    5)make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x80008000 uImage;;
    6)make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean;;
    7)make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j8 modules;;
    8)echo"quit";;
    esac
    done

     

    第三项make dtb文件修改为am335x-boneblack.dtb

获取精简的文件系统(链接: https://pan.baidu.com/s/1o8mONgQ 密码: qq3g)

将文件系统放入指定的目录中:
例如/home/zyr/Source_code/BeagleBone/BeagleBone-crate-SDcard

2、创建制作SD启动的脚本文件(手上需要SD卡及读卡器,将SD卡与读卡器插入电脑的USB接口):

#!/bin/sh

#指定SD卡的路径(lsblk查看SD卡的路径)
DISK="/dev/sdb" #指定MLO(SPL)的路径
MLO="/home/zyr/Source_code/u-boot-2016.03/am335x-boneblack/MLO" #指定u-boot.img的路径
ubootimg="/home/zyr/Source_code/u-boot-2016.03/am335x-boneblack/u-boot.img" #指定uEnv.txt的路径
uEnvtxt="/home/zyr/Source_code/u-boot-2016.03/am335x-boneblack/uEnv.txt" #指定filesystem的路径
filesystem="/home/zyr/Source_code/BeagleBone/BeagleBone-crate-SDcard/Self-for-Boneblack-filesystem.tar.gz" #指定Blageboneblackdtb的路径
Beaglebonedtb="/home/zyr/Source_code/linux-3.14.65/arch/arm/boot/dts/am335x-boneblack.dtb" #指定uImage的路径
uImage="/home/zyr/Source_code/linux-3.14.65/arch/arm/boot/uImage" #擦除SD卡
dd if=/dev/zero of=${DISK} bs=1M count=
sync #烧写MLO,U-boot
dd if=${MLO} of=${DISK} count= seek= bs=128K
sync
dd if=${ubootimg} of=${DISK} count= seek= bs=384K
sync
#dd if=/home/zyr/MLO of=${DISK} count= seek= bs=128K
#dd if=/home/zyr/u-boot.img of=${DISK} count= seek= bs=384K #创建分区(Linux系统)
sfdisk --unit M ${DISK} <<-__EOF__
,,L,*
__EOF__ #格式化分区(格式化为ext4)
mkfs.ext4 -L rootfs ${DISK}
## Make sure posted writes are cleaned up
sync
sync
echo "Formatting done." mkdir -p /media/rootfs/
mount ${DISK} /media/rootfs mkdir -p /media/rootfs/opt/backup/uboot/
cp -v ${MLO} /media/rootfs/opt/backup/uboot/
cp -v ${ubootimg} /media/rootfs/opt/backup/uboot/
cp -v ${uEnvtxt} /media/rootfs/ tar xfvp ${filesystem} -C /media/rootfs
sync
sync
chown root:root /media/rootfs/
chmod /media/rootfs/ cp -v ${uImage} /media/rootfs/boot/
echo "This uImage is for BeagleBoneBlack kernel. What different from Am335x_evmsk is where the filesysytem run. "
echo "Am335x_evmSk's filesysytem is running in sd's part 2."
echo "BeagleBoneBlack's filesystem is running in Sd's part 1."
cp -v ${uEnvtxt} /media/rootfs/boot/
mkdir -p /media/rootfs/boot/dtbs/
cp -v ${Beaglebonedtb} /media/rootfs/boot/dtbs sh -c "echo '/dev/mmcblk0p1 / auto errors=remount-ro 0 1' >> /media/rootfs/etc/fstab" sync
sync
umount /media/rootfs

这样BelageBoneBlack(am335x)板的启动SD卡制作成功了。

说明:1、运行此脚本需要root权限:sudo sh xxxxx.sh

   2、需要linux虚拟机的ubuntu知道SD卡的位置,比如lsblk,可以看出是sdb

3、若是已经分过区的SD卡,需要多次运行此脚本(至少两次,中间需要将SD卡拔下来在插入),自己经验得出,不适用所有的人。

参考网址:

http://eewiki.net/display/linuxonarm/BeagleBone+Black

手动制作用于启动BeagleBoneBlack(am335x)的SD的更多相关文章

  1. BoneBlack am335x利用SD卡烧写板卡上的emmc

    参考ti论坛上面的一篇文章: 链接:https://pan.baidu.com/s/1SLSUbCRrIULJJf_BNI3sEQ 密码: hvem 自己稍微修改的debrick.sh 链接: htt ...

  2. MacOS下制作linux启动盘

    在Windows下,我们经常使用软碟通来制作各种系统的启动盘,那么在MacOS下,如何做到呢?MacOS跟Linux的做法基本一致.如果你只想快速地制作好启动盘,请看下面的快速版 首先,你需要以下两样 ...

  3. Ventoy制作PE启动盘

    前言 不怎么回事,只要是学计算机的都被非计算机专业的认为是会修电脑.常常抛来一个请求:咦,你不是学计算机的吗,帮我重装系统. 在日常生活中准备个有PE系统的U盘,以备不时之需. 常见的PE启动盘的制作 ...

  4. Windows 7 封装篇(一)【母盘定制】[手动制作]定制合适的系统母盘

    Windows 7 封装篇(一)[母盘定制][手动制作]定制合适的系统母盘 http://www.win10u.com/article/html/10.html Windows 7 封装篇(一)[母盘 ...

  5. AM335X的SD卡更新系统学习记录

    一般利用一张SD卡就能进行系统的更新,以前一直不知是什么原理,最近了解了下,对了解到的内容做个记录.使用的是AM335X平台,系统是Linux,文件系统是EXT3: 1.首先需要一张分好分区的SD卡( ...

  6. 手动制作Docker镜像

    手动制作 Docker 镜像 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云服务器(用来用去感觉 Windows 的 Docker 出各种问题,比如使用 ...

  7. 用U盘与移动硬盘制作WIN7启动盘(亲自实践)

    昨晚帮一个娃娃用移动硬盘里面的一个分区帮他制作成一个win7系统盘,为了以后万一换系统的时候方便.我自己有一个U盘坐的启动盘,移动硬盘没有倒腾过,看网上N多都是相互抄,制作都是WINPE系统的,相当蛋 ...

  8. 用U盘制作EXSI启动盘

    用U盘制作EXSI启动盘这是一个比较困难的事,一般的人会用UltraISO这个软件来制作.但是很遗憾,这样的方法很不好,我试了好几次都没有成功.主要是不能引导. 之后我换了一个刻录软件(rufus), ...

  9. Windows系统制作Ubuntu启动U盘(命令行)

    背景 现今Ubuntu系统的使用越来越多,考虑到日常办公还是用Windows系统,但开发的需求常常要有Linux系统.因此将Linux系统安装到U盘不失为一种好的选择.在Windows系统上制作Ubu ...

随机推荐

  1. soj1049.Mondriaan

    1049. Mondriaan Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description Squares and rectangl ...

  2. 20155307 2016-2017-2 《Java程序设计》第5周学习总结

    20155307 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 这两章主要讲的是如何处理程序中的异常情况,对于错误,java会将其打包成对象,可以用&quo ...

  3. 关于getsockname()/getpeername()函数第一次被调用得到0.0.0.0结果的说明

    最近阅读UNIX网络编程第四章时,书本末尾介绍了两个函数getsockname()和getpeername(),可以用于获取服务器端和客户端的IP地址与端口,原本很简单的两个函数,过一眼即明白函数的用 ...

  4. Max Sum Plus Plus (动态规划) HDU1024

    题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1024 (http://www.fjutacm.com/Problem.jsp?pid=1375) 题意 ...

  5. 戴尔游匣5577安装 ubuntu/mint

    这里以mint为例. 做好usb启动盘后, 启动到读秒的时候按上下方向键唤出如下选项: 在第二个选项里按 tab 键(上图界面有提示) 进去后有如下界面: 在后面加上参数: nouveau.modes ...

  6. rsync本地及远程复制备份【原创】

    1.安装rsyncyum instsall rsync 2.本地复制 rsync -auq --progress --delete /tongbu1/ /tongbu2/ rsync -auq --p ...

  7. 05 Diagnostics 诊断

    Diagnostics 诊断 Introduction 介绍 Profiling 分析 Tracing 跟踪 Debugging 调试 Runtime statistics and events 运行 ...

  8. python高性能web框架——Japronto

    近期做了一个简单的demo需求,搭建一个http server,支持简单的qa查询.库中有10000个qa对,需要支持每秒10000次以上的查询请求. 需求比较简单,主要难点就是10000+的RPS. ...

  9. 常见四大类型视频接线DP、HDMI、DVI、VGA的比较

    如今是新的“视”界,生活中总与各种屏幕打交道,难免会遇到选择视频接线的问题,要想搞清楚这点,我们只要通过了解现今常用的几种视频接线就会有个大致的认识.   281VGA.DVI.HDMI三种视频信号接 ...

  10. 使用qshell备份七牛云存储文件

    qshell是利用七牛文档上公开的API实现的一个方便开发者测试和使用七牛API服务的命令行工具.我们可以利用它来将七牛云上存储的文件备份到本地. 它提供Mac OSX, Linux, Windows ...