Busybox制作ARM(iTOP4412) 根文件系统
本记录来源与自身操作过程。
1.制作环境
PC环境:外部Winows8.1 内部则为vmware11+ubuntu12.04
嵌入式设备:iTOP4412
交叉工具:arm-none-linux-gnueabi-
2.移植步骤
1.解压BusyBox(我这里下载最新版为1.23.2)
2.执行 make menuconfig
3.在Busybox Settings->Build options->CorssCompiler prefix中输出arm-none-Linux-gnueabi-
5.保存设置退出make menuconfig,然后执行make,生成文件
6.制作的文件系统还需要新建“dev,etc,lib,mnt,proc,sys,tmp,var”文件夹,使用命令“#mkdir dev etc lib mnt proc sys tmp var “
下面的步骤参照着iTop4412的文档,也即添加一些常用的目录,并添加共享库等就不这里赘述了。
对于A shell不满意的话,还可以移植bash作为开发板的shell解释器
下面我简单介绍一下如何移植bash
3.移植bash
(1)配置 ./configure CC=arm-none-linux-gnueabi-gcc –prefix=/home/veryarm/bash/install –host=arm-linux –target=arm-none-linux-gnueabi –enable-static-link –enable-history –without-bash-malloc1
(2)编译
(3)copy 可执行程序 bash
cp -r bash /home/rootfs/bin/
后续按照参考链接来做就成,也就是放到开发板的/bin/目录下,然后执行bash,打印$SHELL看看切换过来没有
关于修改默认启动的shell网络上找到的
ubuntu 修改默认 shell2
如果拥有 root 权限,可以直接修改 /etc/passwd 文件。
找到用户 ID 起始的行
user:x:1000:112:user,,,:/home/user:/bin/bash
最后一个字段为登录后的默认 Shell, /bin/bash 是程序 bash 的主程序路径。 fish 主
程序的路径通常为 /usr/bin/fish 。
/etc/shells 中列出系统中所有可用 Shell( /bin/false 代
表禁用 Shell)
也可以使用如下命令更改默认 Shell
chsh -s /usr/bin/fish
(需要输入密码)
Tip:可以使用 whereis xxx 命令,来查找 xxx 程序的安装位置.
CC:指定交叉编译工具;
–prefix:指定编译后镜像和库文件安装的位置,这些我们要放到目标板上的
Busybox制作ARM(iTOP4412) 根文件系统的更多相关文章
- 使用BusyBox制作嵌入式Linux根文件系统
STEP 1:构建目录结构 创建根文件系统目录,主要包括以下目录/dev /etc /lib /usr /var /proc /tmp /home /root /mnt /bin /sbin ...
- 制作ramdisk-u.img根文件系统
具体步骤如下:1.解压内核源码树解压linux-2.6.29-mini2440-20090708.tgz到自己的工作目录,会生成一个友善之臂修改过的并且有几个mini2440默认配置文件的内核源码目录 ...
- 一步一步制作yaffs/yaffs2根文件系统(七)---真挚地道歉以及纠正前边出现的错误!
接上一节http://blog.csdn.net/mybelief321/article/details/10040939 说实话,我当时写这个系列的博文的时候,感觉对BusyBox算是有点了解,直到 ...
- 一步一步制作yaffs/yaffs2根文件系统(二)---安装BusyBox,构造/bin、/sbin、/usr、linuxr
开发环境:Ubuntu 12.04 开发板:mini2440 256M NandFlash 64M SDRAM 交叉编译器:arm-linux-gcc 4.4.3点此可下载 BusyBox版本: ...
- 一步一步制作yaffs/yaffs2根文件系统(四)---构建etc、dev等剩余目录
开发环境:Ubuntu 12.04 开发板:mini2440 256M NandFlash 64M SDRAM 交叉编译器:arm-linux-gcc 4.4.3点此可下载 BusyBox版本: ...
- 一步一步制作yaffs/yaffs2根文件系统(一)---储备好基础知识再打
开发环境:Ubuntu 12.04 开发板:mini2440 256M NandFlash 64M SDRAM 交叉编译器:arm-linux-gcc 4.4.3点此可下载 BusyBox版本: ...
- 一步一步制作yaffs/yaffs2根文件系统(三)---使用glibc库构造 /lib
开发环境:Ubuntu 12.04 开发板:mini2440 256M NandFlash 64M SDRAM glibc库:点此下载 交叉编译器:arm-linux-gcc 4.4.3点此可下 ...
- 使用BusyBox制作根文件系统【转】
本文转载自:http://www.cnblogs.com/lidabo/p/5300180.html 1.BusyBox简介 BusyBox 是很多标准 Linux 工具的一个单个可执行实现.Busy ...
- Busybox构建根文件系统和制作Ramdisk
定制根文件系统的方法很多,最常用的是使用BusyBox来构建定制根文件系统.它集成压缩了Linux的许多工具和命令,可以使用户迅速方便地建立一套相对完整.功能丰富的文件系统,其中包括大量常用的应用 ...
随机推荐
- LSH(Locality Sensitive Hashing)原理与实现
原文地址:https://blog.csdn.net/guoziqing506/article/details/53019049 LSH(Locality Sensitive Hashing)翻译成中 ...
- POJ3580 SuperMemo splay伸展树,区间操作
题意:实现一种数据结构,支持对一个数列的 6 种操作:第 x 个数到第 y 个数之间的数每个加 D:第 x 个数到第 y 个数之间全部数翻转:第 x 个数到第 y 个数之间的数,向后循环流动 c 次, ...
- HBase Snapshot简介
一.简介 HBase 从0.95开始引入了Snapshot,可以对table进行Snapshot,也可以Restore到Snapshot.Snapshot可以在线做,也可以离线做.Snapshot的实 ...
- AMD-requireJS
require.js是AMD的一种实现形式. 加载: <script src="require.js" data-main="main"></ ...
- 关于STM32 __IO 的变量定义
这个_IO 是指静态 这个 _IO 是指静态 volatile uint32_t 是指32位的无符号整形变量uint32_t 是指32位的无符号整形变量: 搞stm32这么久了,经常看到stm32里面 ...
- Oracle 中 nvl、nvl2、nullif、coalesce、decode 函数的用法详解
NVL(EXPR1,EXPR2) NVL2(EXPR1,EXPR2,EXPR3) NULLIF(EXPR1,EXPR2) COALESCE(EXPR1,,..,EXPRn) decode ------ ...
- Confluence 6 使用 Apache 和 mod_proxy
Atlassian 应用允许用户使用反向代理,但是 Atlassian 并不会为这个功能的配置提供支持.因此,Atlassian 也不能保证能够为这些配置提供任何支持. 如果你在配置上有任何需求,请参 ...
- 浅谈java中bigInteger用法
1.赋值: BigInteger a=new BigInteger("1"); BigInteger b=BigInteger.valueOf(1); 2.运算: ① add(); ...
- Python使用re模块实现正则表达式操作
Python提供了re模块,用于实现正则表达式的操作.在实现时,可以使用re模块提供的方法(如search().match().findall()等)进行字符串处理,也可以先使用re模块的compil ...
- shell 判断文件夹或文件是否存在
文件夹不存在则创建 if [ ! -d "/data/" ];then mkdir /data else echo "文件夹已经存在" fi 文件存在则删除 i ...