- 浏览: 1929139 次
- 性别:
- 来自: 南京
文章分类
最新评论
-
cht的大摩托:
学习
IBM WebSphere Performance Tool / ISA / jca457.jar / ha456.jar / ga439.jar -
leeking888:
有没有linux 64位的相关librfccm.so等包啊?
web test LoadRunner SAP / java / Java Vuser / web_set_max_html_param_len -
paladin1988:
非常不错,多谢了。。
appServer IBM WebSphere / WAS 7 / 8.5 / was commerce -
hzxlb910:
写了这么多
net TCP/IP / TIME_WAIT / tcpip / iperf / cain -
acwyg:
ed2k://|file|LoadRunner.V8.1.is ...
web test performance tools / linux performance tools / windows performance tools
Ubuntu 9.10grub硬盘引导 Ubuntu 9.10 的windows xp下正确menu.lst 写法(千万不要照搬9.04)
http://hi.baidu.com/syb1988013/blog/item/793c888ded217a18b31bbac5.html
Winxp3 + ubuntu8.04
双系统启动问题
http://www.ownlinux.cn/2008/05/13/ubuntu-804-wubi-initranfs/
笔者在装好一些软件的时候,系统提示需要重启才能生效,结果开机的时候,ubuntu系统提示说:
Busybox v1.1.3 (debian1:1.1.3-5 ubuntu12)built-in shell (ash)
enter ‘help’for a list of built-in commands
(initranfs)
这是怎么回事了,笔者也没弄明白,进终端也不行,同样的错误,该怎么办了,难道只有重装,笔者也没办法了,难道配好的系统就这样完了,苦心经营那么
久了,在ubuntu下速度真的是不敢恭维,时间就是这样浪费了?就没有一个可以解决的方案?笔者坚信肯定有,笔者并没有死心,想了很久,也听了一些人的
建议,终于找到了一个方案,下面我就来说说我的解决方案吧。
先说说笔者的环境吧,我是用wubi安装的ubuntu8.04,前面我有写过有关wubi安装的文章,如果还不知道wubi安装的可以去看看《用wubi安装 ubuntu 8.04 只需五步》
,
不过解决这个问题只适合wubi安装的朋友,双系统的可以参照网上的解决方案(WindowsXP+Ubuntu,进去windowsxp系统,把
boot里面的initrd.img-2.6.24-12-generic.bak重命名替换initrd.img-2.6.24-12-
generic,这个方法是否可行,笔者没有考证过,笔者的环境不同吗)
好了,进入正题,首先我们开启xp,进入安装ubuntu8.04的盘,笔者的安装在H盘,我们进入H:\ubuntu\disks目录找到我们所需要备份的*.disk 即(swap.disk home.disk usr.disk root.disk)如图:
将这几个文件复制到其他任意盘中,备份完后,我们就要开始用wubi重装ubuntu了,运行wubi.exe,会出现卸载的界面,如图:
我们肯定要把下载的文件备份了,不要把上面的勾去掉,这样等下我们装系统就要快些。
接着点击移除,等卸载完后,就要重复我们的wubi安装了,这就不多说了。
装完后,我们找到刚才备份的那几个*.disk文件,复制到我们的安装目录disks文件夹下,点击全部覆盖,(当然在做这一步之前我们可以在备份 我们刚才装好的系统的几个.*disk文件,以免出错而又要重装,这只是为了安全起见,对于胆小的朋友来说,这一步最好不要省),然后重启看看,可爱的 ubuntu界面是不是又回来了啊,以前的配置都还在吧!祝贺一下!如果以后我们的系统又出了什么问题,我们同样可以用这几个文件将原来的文件覆盖,就像 windows里面的一键还原,爽吧,呵呵!
本文是由OwnLinux.cn 原创团队成员silencer 撰写
http://forum.ubuntu.org.cn/viewtopic.php?t=120157&highlight=busybox
Busybox v1.1.3 (debian1:1.1.3-5 ubuntu12)built-in shell (ash)
enter 'help'for a list of built-in commands(initranfs)
在网上找了很多资料终于找到了解决方法:
先说说我的情况,我的是双系统,WindowsXP+Ubuntu,所以我进去windowsxp系统
把boot里面的initrd.img-2.6.24-12-generic.bak重命名替换initrd.img-2.6.24-12-generic
http://www.ibm.com/developerworks/cn/linux/l-busybox/
developerWorks 中国 > Linux > BusyBox 简化嵌入式 Linux 系统为小环境准备的一个小工具包 |
级别: 初级 M. Tim Jones (mtj@mtjones.com ), 咨询工程师, Emulex 2006 年 9 月 11 日 BusyBox 是很多标准 Linux® 工具的一个单个可执行实现。BusyBox 包含了一些简单的工具,例如 cat 和 echo,还包含了一些更大、更复杂的工具,例如 grep、find、mount 以及 telnet(不过它的选项比传统的版本要少);有些人将 BusyBox 称为 Linux 工具里的瑞士军刀。本文将探索 BusyBox 的目标,它是如何工作的,以及为什么它对于内存有限的环境来说是如此重要。<!----><!----> <!----> BusyBox 最初是由 Bruce Perens 在 1996 年为 Debian GNU/Linux 安装盘编写的。其目标是在一张软盘上创建一个可引导的 GNU/Linux 系统,这可以用作安装盘和急救盘。一张软盘可以保存大约 1.4-1.7MB 的内容,因此这里没有多少空间留给 Linux 内核以及相关的用户应用程序使用。
BusyBox 揭露了这样一个事实:很多标准 Linux 工具都可以共享很多共同的元素。例如,很多基于文件的工具(比如 为了让一个可执行程序看起来就像是很多可执行程序一样,BusyBox 为传递给 C 的 main 函数的参数开发了一个很少使用的特性。回想一下 C 语言的 main 函数的定义如下:
清单 1. C 的 main 函数
在这个定义中, 清单 2 给出的这个简单 C 程序展示了 BusyBox 的调用。它只简单地打印 清单 2. BusyBox 使用 argv[0]
来确定调用哪个应用程序
调用这个程序会显示所调用的第一个参数是该程序的名字。我们可以对这个可执行程序重新进行命名,此时再调用就会得到该程序的新名字。另外,我们可以创建一个到可执行程序的符号链接,在执行这个符号链接时,就可以看到这个符号链接的名字。 清单 3. 在使用新命令更新 BusyBox 之后的命令测试
BusyBox 使用了符号链接以便使一个可执行程序看起来像很多程序一样。对于 BusyBox 中包含的每个工具来说,都会这样创建一个符号链接,这样就可以使用这些符号链接来调用 BusyBox 了。BusyBox 然后可以通过
我们可以从 BusyBox 的 Web 站点上下载最新版本的 BusyBox(请参看 参考资料 一节的内容)。与大部分开放源码程序一样,它是以一个压缩的 tarball 形式发布的,我们可以使用清单 4 给出的命令将其转换成源代码树。(如果我们下载的版本不是 1.1.1,那就请在这个命令中使用适当的版本号以及特定于这个版本号的命令。) 清单 4. 展开 BusyBox
结果会生成一个目录,名为 busybox-1.1.1,其中包含了 BusyBox 的源代码。要编译默认的配置(其中包含了几乎所有的内容,并禁用了调试功能),请使用
清单 5. 编译默认的 BusyBox 配置
结果是一个相当大的 BusyBox 映像,不过这只是开始使用它的最简单的方法。我们可以直接调用这个新映像,这会产生一个简单的 Help 页面,里面包括当前配置的命令。要对这个映像进行测试,我们也可以对一个命令调用 BusyBox 来执行,如清单 6 所示。 清单 6. 展示 BusyBox 命令的执行和 BusyBox 中的 ash shell
在这个例子中,我们调用了
如果您正在构建一个具有特殊需求的嵌入式设备,那就可以手工使用
使用手工配置,我们可以指定在最终的 BusyBox 映像中包含的命令。我们也可以对 BusyBox 环境进行配置,例如包括对
NSA(美国国家安全代理)的安全增强 Linux(SELinux),指定要使用的编译器(用来在嵌入式环境中进行交叉编译)以及 BusyBox
应该静态编译还是动态编译。图 1 给出了 图 1. 使用 menuconfig 配置 BusyBox
要手工配置 BusyBox,请使用下面的命令: 清单 7. 手工配置 BusyBox
这为我们提供了可以调用的 BusyBox 的二进制文件。下一个步骤是围绕 BusyBox 构建一个环境,包括将标准 Linux 命令重定向到 BusyBox 二进制文件的符号链接。我们可以使用下面的命令简单地完成这个过程: 清单 8. 构建 BusyBox 环境
默认情况下,这会创建一个新的本地子目录 _install,其中包含了基本的 Linux 环境。在这个根目录中,您会找到一个链接到 BusyBox 的 清单 9. 将符号链接安装到另外一个目录中
使用 到 BusyBox 的命令行链接也可以使用 BusyBox 在运行时动态创建。 清单 10. 在运行时创建命令链接
BusyBox 包括了几个编译选项,可以帮助为我们编译和调试正确的 BusyBox。 表 1. 为 BusyBox 提供的几个 make 选项
在定义配置时,我们只需要输入 清单 11. 编译 BusyBox 二进制程序
如果您非常关心对 BusyBox 映像的压缩,就需要记住两件事情:
BusyBox 中的命令并不支持所有可用选项,不过这些命令都包含了常用的选项。如果我们需要知道一个命令可以支持哪些选项,可以使用 清单 12. 使用 --help 选项调用命令
这些特定的数据只有在启用了
向 BusyBox 添加一个新命令非常简单,这是因为它具有良好定义的体系结构。第一个步骤是为新命令的源代码选择一个位置。我们要根据命令的类型(网络,shell 等)来选择位置,并与其他命令保持一致。这一点非常重要,因为这个新命令最终会在 menuconfig 的配置菜单中出现(在下面的例子中,是 Miscellaneous Utilities 菜单)。 对于这个例子来说,我将这个新命令称为 清单 13. 集成到 BusyBox 中的新命令的源代码
接下来,我们要将这个新命令的源代码添加到所选子目录中的 清单 14. 将命令添加到 Makefile.in 中
接下来再次更新 ./miscutils 目录中的配置文件,以便让新命令在配置过程中是可见的。这个文件名为 Config.in,新命令是按照字母顺序添加的: 清单 15. 将命令添加到 Config.in 中
这个结构定义了一个新配置项(通过 接下来需要更新 ./include/applets.h 文件,使其包含这个新命令。将下面这行内容添加到这个文件中,记住要按照字母顺序。维护这个次序非常重要,否则我们的命令就会找不到。 清单 16. 将命令添加到 applets.h 中
这定义了命令名( 倒数第二个步骤是向 ./include/usage.h 文件中添加详细的帮助信息。正如您可以从这个文件的例子中看到的一样,使用信息可能非常详细。在本例中,我只添加了一点信息,这样就可以编译这个新命令了: 清单 17. 向 usage.h 添加帮助信息
最后一个步骤是启用新命令(通过 使用新的 BusyBox,我们可以对这个新命令进行测试,如清单 18 所示。 清单 18. 测试新命令
就是这样!BusyBox 开发人员开发了一个优秀但非常容易扩展的工具。
BusyBox 是为构建内存有限的嵌入式系统和基于软盘系统的一个优秀工具。BusyBox 通过将很多必需的工具放入一个可执行程序,并让它们可以共享代码中相同的部分,从而对它们的大小进行了很大程度的缩减,BusyBox 对于嵌入式系统来说是一个非常有用的工具,因此值得我们花一些时间进行探索。 学习
获得产品和技术
讨论
end |
发表评论
-
OS + Linux RedHat 7 / redhat 7 configuration
2017-05-27 16:14 849s redhat 7.2 tracker-store C ... -
OS + Linux CoreOS / Ubuntu 16.04 LTS / docker / openSTF
2016-10-18 09:45 1664s DOCKER windows安装 http://b ... -
OS + Linux Framework GUI wxWidgets / QT / GTK / Windows MFC、WTL、WPF、MAC Cocoa
2016-08-03 14:20 967s MFC、WTL、WPF、wxWidget ... -
OS + Linux Shell Command find
2013-03-22 15:24 2736Linux中find常见用法示例 http://w ... -
OS + Linux Kernel IO PPC / TPC / select / poll / ppoll / epoll
2013-02-05 14:20 1702Using epoll() For Asynchro ... -
OS + Unix FreeBSD / MacOSX Snow Leopard 10.6.3 / 10.6.7 / 10.6.8 v1.1
2012-10-30 11:16 14805http://support.apple.com/zh_C ... -
OS + UNIX AIX /etc/services
2012-04-13 20:02 17216$ cat /etc/services # @(# ... -
OS + Linux Shell Sed / Linux Sed / linux Sed / Linux sed / linux sed / sed
2012-02-28 17:04 2379linux shell 之 sed [ftpus ... -
OS + UNIX AIX Tools
2011-11-23 16:51 1145许多 UNIX 管理员都拥 ... -
OS + UNIX AIX performance
2011-11-23 16:48 1928十大AIX高手巅峰对决 银行业再度包揽前三 2013-02 ... -
OS + UNIX AIX command
2011-11-23 16:18 3384AIX版必读收藏贴 http://www.loveu ... -
OS + Linux/Unix download tools curl / wget
2011-11-01 15:05 2486s 用wget下载整个网站 http://zha ... -
OS + Linux RedHat Autotools aclocal / autoscan / autoconf / autoheader /automake
2011-09-15 16:27 1873Auto Tools使用流程 htt ... -
OS + Linux DNS Server Bind
2011-08-16 17:36 1283[root@B2Cmonitor Server]# ps -e ... -
OS + Unix IBM Aix basic / topas / nmon / filemon / vmstat / iostat / sysstat/sar
2011-07-15 23:43 9743nmon 性能:分析 AIX 和 Linux 性能的免 ... -
Unix + OS books
2011-05-01 15:21 2144linux下fork的运行机制 http://www.c ... -
RedHat + OS CPU、MEM、DISK
2011-03-08 15:28 1511RedHat 批量查看Linux机器磁盘空间 [ro ... -
OS + Linux File nfs / samba / rsync / inotify / smb / webdav
2011-01-18 16:00 7694Linux NFS 和 Samba 共享配置 http: ... -
OS + Linux Disk disk lvm / disk partition / disk mount / disk io
2010-12-29 11:35 3270RedHat Linux LVM LVM - ... -
Unix + OS IBM Aix Disk disk lvm / disk partition / disk mount / disk mon / File
2010-12-28 17:59 4524AIX file AIX 5L 上JF ...
相关推荐
linux-3.18.24内核源码和补丁 + busybox-1.30 or 1.36 + dhcpv6源码。 解压命令:tar -xvf 和 带bz2的解压命令 tar -jxvf 和 guzip
本教程将引导你通过一系列步骤,利用Linux内核源代码和Busybox源代码来创建一个能在Bochs和Qemu模拟器上启动的简单Linux系统。 **一、准备工作** 1. **Linux内核源代码**:首先,你需要下载Linux内核的源代码,...
非常好用的万能Linux工具,集成了三百多个最常用Linux命令和工具的软件
本文档主要涉及的组件包括arm-linux-gcc-4.4.1交叉编译器、Linux内核2.6.31.6和BusyBox 1.15.1。 首先,交叉编译环境是将软件构建为在不同架构(在这种情况下是ARM架构)上运行的目标代码的关键。arm-linux-gcc-...
qemu-5.0.0、u-boot 源码、linux-5.4.95内核、gcc-linaro-6.5.0-2018.12-x86_64_arm-linux-gnueabihf交叉编译链、busybox-1.32.1 工具 文章 https://blog.csdn.net/leacock1991/article/details/113703897 使用资源
linux 中 busybox-1.36.0 版本的源码包,可用于busybox的交叉编译
### Busybox 制作 Linux 文件系统详解 #### 标题解析 标题“busybox制作linux文件系统”指出了本文档的主要目的:利用Busybox工具构建一个简易的Linux文件系统。Busybox是一个为嵌入式设备设计的小巧工具箱,它集成...
Busybox被形象的称为“嵌入式Linux的瑞士军刀”,它是一UNIX工具集。它可提供一百多种GNU常用工具、shell脚本具等。
### Linux Busybox 构建与配置详解 #### 一、Busybox简介与系统构建 Busybox 是一个为嵌入式设备设计的软件包,它集成了大量的标准 Unix 工具到一个单一的小型可执行文件中。这使得Busybox成为了一个理想的工具...
用busybox制作嵌入式Linux的文件系统_杨延军
BusyBox 是很多标准 Linux® 工具的一个单个可执行实现。BusyBox 包含了一些简单的工具,例如 cat 和 echo,还包含了一些更大、更复杂的工具,例如 grep、find、mount 以及 telnet(不过它的选项比传统的版本要少)...
使用busybox制作的ramdisk根文件系统,适用于linux2.6.14
linux最小rootfs busybox
Busybox 作为一个快速工具,可以帮助开发者快速制作嵌入式 Linux 根文件系统。 Busybox 提供了多种 GNU 常用工具、shell 脚本和其他实用工具,总共超过100种。 Busybox 的特色是所有命令都编译成一个文件,其他命令...
常见的Bootloader有U-Boot和 BusyBox,它们还提供了交互式的控制台,便于系统调试和更新。 五、文件系统 嵌入式Linux通常使用轻量级的文件系统,如JFFS2、YAFFS或ext2/3/4。文件系统管理设备上的数据存储,提供目录...
自定义打包的LinuxOS,该OS只有10M左右,仅包含LinuxKernel+Busybox;
linux busybox tool ,power function to make filesystem
如何在嵌入式单板上使用BusyBox带的简单tftp程序和调试计算机之间进行文件传输
Busybox是一款集成了众多Linux命令的小巧工具,它将许多常见的Linux命令行工具打包到一个单一的可执行程序中,适合在资源有限的嵌入式设备上使用。 Busybox提供了如ls、cat、cp、mv、rm等基本的文件操作命令,以及...