CF卡在嵌入式工控领域越来越多的被应用,如何在CF卡上构建嵌入式linux是开发中一个基础但非常重要的过程!

本文介绍在CF卡上建立用于PC104板卡上的根文件系统,着重介绍了针对CF卡的操作,至于具体文件系统的制作,网上教程很多,就不具体罗列了。

1. 将CF卡用读卡器插入PC机;
2. fdisk -l
该命令会列出所有磁盘及其分区,找到CF卡相对应的盘符,
如"/dev/sdb1"。
3. fdisk /dev/sdb
执行该命令后即可对CF卡分区了,键入"d"即为删除分区,
键入"n"即为新建一个分区,注意,在创建分区后要键
入"w"才会将分区情况保存下来,否则此次分区不会对
CF卡起作用,最后键入"q"退出。(假设现在我们删除了
所有分区,然后创建了一个分区)。
4. fdisk -l
查看一下创建的分区名称(这里假设上一步创建的分区为/dev/sdb1)。
4. mkfs.ext2 /dev/sdb1
该命令将/dev/sdb1分区格式化为ext2文件系统类型。
6. mkdir /mnt/cf
mount /dev/sdb1 /mnt/cf
上面mount命令执行后,进入CF卡的目录了,就可以制作具体的文件系统了。

但是要制作一个能从CF卡启动的linux系统还要安装引导装载程序,这个在下篇里介绍。

上一篇文章简单介绍了如何针对linux在CF卡上分区、格式化并制作文件系统,现在介绍一下在CF卡上安装grub的步骤。

针对linux有很多不同的引导装载程序,如针对X86处理器的grub和lilo,针对ARM处理器系列的uboot,以及vivi等等。其中uboot支持的处理器架构比较多,功能强大,但是移植过程也比较繁琐,因为要针对具体的硬件以及需求进行移植。而grub与lilo的安装移植比较简单,只需几个命令,针对上一篇文章介绍的PC104板卡是X86架构的,因此本文介绍一下grub在CF卡上的安装。

在CF卡上安装引导装载程序grub的步骤(以grub-0.97为例):
准备工作:下载grub源码grub-0.97.tar.gz,放入/usr/local/src/目录中。
1. cd /usr/local/src
2. tar zxvf grub-0.97.tar.gz
3. cd grub-0.97
4. ./configure
5. make
6. make install
7. 上一步完成后会在/usr/local/lib目录下生成一个grub的目录(也有可能
在其他的目录,取决于相关的环境变量),将生成的grub目录中的所有文
件复制到CF卡上的boot/grub/中,另外把/usr/local/src/grub-0.97/grub/
中的可执行文件grub复制到CF卡的boot/grub中,然后进入CF卡的boot/grub,
执行命令"./grub",出现grub的命令行,输入"find /boot/grub/stage1",
会有一行输出如"root (hd1,0)",接着输入"root (hd1,0)",回车后输
"setup (hd1)",若出现了success相关输出,即表示在CF卡上成功安装了
引导装载程序grub!
8. 在grub命令行下输入"quit"。
9. ln -s grub.conf menu.lst

这样,grub就以及安装完毕了,接着编辑CF卡上相关目录中的grub.conf文件,具体grub.conf的内容网上教程很多,不具体列出来。

在成功移植linux内核、文件系统并编写相应的启动初始化脚本后,将CF卡插入PC104板卡的CF卡插槽,上电启动,即可启动完全属于你的嵌入式linux了。

转载于:https://blog.51cto.com/6386296/1241661

在CF卡上建立文件系统和安装引导加载程序相关推荐

  1. 【技术分享】如何解锁高通骁龙660上的安卓引导加载程序

    本文是我们在DEF CON 29大会上的演示视频的配套文章,视频的链接地址为https://www.youtube.com/watch?v=z4gIxdFfJDg. 要想在安卓手机上获得root权限, ...

  2. 安装Keil537加载程序并编译后

    安装Keil5.37版本,加载程序,编译时终止,出现错误: *** Target 'Target 1' uses ARM-Compiler 'Default Compiler Version 5' w ...

  3. [原创] 利用busybox, extlinux 在工控机CompactFlash(CF卡)上构建Linux系统(上)

    上篇:CF卡分区, extlinux的安装 中篇:构建根文件系统 下篇:2.6内核剪裁及Busybox编译配置及其分析 硬件平台:研华3355 软件:busybox-1.13.3, extlinux ...

  4. 在CF卡上实现TrueFFS

    CF卡是一种基于Flash技术的容量大.携带方便的存储介质,已在嵌入式系统等领域得到广泛的应用:但是,有限的擦写次数极大地限制了CF卡的使用寿命.TrueFFS通过一系列算法,能够延长CF卡的使用寿命 ...

  5. 基于ATmega32的SD卡上FAT32文件系统数据读取

    SD卡(secure digital memory card,安全数码卡)是一种基于半导体快闪记忆器的新一代记忆设备,它被广泛地于便携式装置上使用,例如数码相机.个人数码助理(PDA)和多媒体播放器等 ...

  6. win7双系统安装openSUSE13.2解决【引导加载器安装期间出错】问题

    原始日期:2015-08-17 14:16 昨晚不知道哪根筋不对,突然想装一个liunx系统,与win7形成双系统,最终选定openSUSE13.2,想想以前也安装过Ubuntu,应该差不多,所以直接 ...

  7. 唯一插件化Replugin源码及原理深度剖析--插件的安装、加载原理

    上一篇 唯一插件化Replugin源码及原理深度剖析–唯一Hook点原理 在Replugin的初始化过程中,我将他们分成了比较重要3个模块,整体框架的初始化.hook系统ClassLoader.插件的 ...

  8. 愉快的舞会c++_如何在5分钟内建立一个令人愉快的加载屏幕

    愉快的舞会c++ First, here is what we will build. Set your timer! 首先,这是我们将要建立的. 设置您的计时器! Does this look fa ...

  9. 安装win7和centos6.7双系统 引导加载安装位置问题

    我在安装win7和centos6.7双系统时,根据网上的教程选择的是把引导加载安装到了centos系统的根分区中了,没有分boot分区,这样时无法启动centos的,所以在win7中安装easybcd ...

最新文章

  1. 利用mysql建立随机森林_随机森林算法实例 - osc_4imme0wh的个人空间 - OSCHINA - 中文开源技术交流社区...
  2. 16岁自闭少年被指黑掉英伟达微软,曾赚1400万美元,英国警方逮捕7人
  3. hello world 简单内核模块
  4. ubuntu 系统中如何截图
  5. java调接口传值_关于调用第三方接口时传递参数是File类型的解决方式
  6. php ip2long mysql,PHP基于ip2long实现IP转换整形
  7. java程序样例_一个完整的java程序示例
  8. python做视频抽帧图_python-opencv-视频截取帧图片
  9. 进程管理工具(Supervisor)笔记
  10. MyBatis动态SQL的List传值错误
  11. Transact-SQL 存储过程(c#调用执行)
  12. python爬虫怎么保存图片_使用Python爬虫怎么将网页图片保存到本地
  13. 19|雨季来临,聊些轻松的吧
  14. “注释”是程序员的自我修养
  15. Substance Painter里 AO贴图 烘焙黑图 原因
  16. SpringBoot2+Netty+WebSocket(netty实现websocket,支持URL参数)
  17. doraemon的python 网络基础、进程和操作系统发展史
  18. vcpkg + cmake + vscode 配置教程
  19. CentOS-6.3-i386-bin-DVD1下载地址
  20. 《乔布斯传》经典摘录(一)

热门文章

  1. 《深入理解Java虚拟机》第5章 调优案例分析与实战
  2. python django博客源码_利用Django实现一个博客(附全部源码)
  3. linux 增加maven内存,Ubuntu Linux系统下Apache Maven的安装和配置
  4. PHP中的方形按钮怎么敲,php 魔术方法使用说明
  5. 带背景音乐的表白html,感人的表白背景音乐,适合浪漫表白的纯音乐
  6. code函数oracle列子,Oracle Pivot函数语法详解及应用实例
  7. 植物病理学分类的高效网络体系结构的半监督噪声学生预训练
  8. aes256 php,如何在PHP中进行AES256解密?
  9. 阿里云运行python项目_荐个人博客开发-06:Nginx + uWSGI + Django项目部署到阿里云服务器运行...
  10. java表格模糊查询_使用java图形报表时,如何进行模糊查询