❶ 把安卓系统根目录下的system里面的busybox删了会怎么样
在网上搜索了一下,安卓手机系统根目录里面没有看到有busybox这个文件夹,但偏偏我的手机里面存在。我估计是手机一键root时给残留下来的,但现在已经用另外的方法root成功…
❷ apktool文件夹里的busybox有什么用为什么说有的busybox不适合有的手机
1这个安卓手机上通用的补丁文件。(几乎是必备的)2它是命令行补丁,我们的系统内置的是toolbox,在/system /bin/内。但功能太弱了!3我们系统上的操作都是命令,/bin就是提供命令的地方,所有命令都要靠它!如果/bin 内没我们要使用的命令,那么就无法运行!比如linux的复制命令cp( ),我们系统内没这命令。运行就报错。4安上busybox后,装入/system /bin ,所以busybox不是一个程序。装上就可删除了。因为它提供更多的二进制命令,手机功能就更强了。5有朋友说,没安busybox,为什么re能复制文件?因为re内置bin命令。6安上busybox对系统有影响吗?基本上没!至今没发现它影响启动速度和系统速度,明显是使用时才调用。7装上有什么好处?装上后很多系统类软件需要它的支持,虽然软件完全可以内置bin。我测过,很多软件运行首先搜索系统是否内置busybox,如内置,使用系统的。如不内置,使用自带的。这只能说明:系统内置的busybox更稳定。。。8我有必要**usybox吗?这是个补丁,可打可不打。喜欢非常精简系统的,没必要打补丁。但打上,系统兼容性更好,一键处理系统也能完美运行!9没什么可说的了。。。但提醒:busybox一旦装入系统,就不建议再删除了!可能会影响系统。(我说的不是安装器,安装器随便删除)
❸ 怎么刷入 SU 二进制文件
SuperSU提示二进制文件复需要更新制一般是在刷入第三方内核、补丁或者更新升级了系统的情况下才会出现,因此SuperSU出现二进制更新的原因是用户更改了系统内核等操作导致SuperSU授权管理软件失效,也就是ROOT权限失效了。还有一种状态是SuperSU提示用户未安装二进制可执行文件,此提示是因为手机没有成功获取ROOT权限,仅仅是安装了SuperSU软件而已。解决方法1.刷入对应版本的SuperSU(1)点击下载与你手机里SU同样版本的zip包(不是APK),千万不要解压。(2)复制到手机SD卡中,重启手机进入Recovery,依照刷机步骤刷入刚才下载的SuperSU zip包。2.重新Root
❹ 在ubuntu系统连接jz2440开发板 出现Illegal instruction
我帮你查了下,看看有没有用。虽然是转载的~希望能帮上忙Illegal instruction的解决方法 最新解决方法:把/usr/local/arm/compiler/arm-none-linux-gnueabi/libc/armv4t/lib目录(也就是你的编译器的库目录)下的所有文件拷贝到目标板子的根目录的lib目录下就好了。这样无论你的hello是动态编译还是静态编译,跑起来都不会有Illegal instruction的问题。////////////////////////////////老的解决方法:开发板配置: ARM9 + linux-3.6.30编译器:arm-linux-4.3.2在移植好jffs2文件系统以后,当然想写个hello world 来验证一下自己的成果了。好,开始:1.编辑编译#vi hello.c#include <stdio.h>int main(void){ printf("welcome to my rootfs!/n"); return 0;}#arm-linux-gcc –o hello hello.c2.把hello复制到用来制作文件系统的文件夹,制作文件系统rootfs.jffs2,下载运行,开发板能够成功启动,能够出现shell交互界面。这点肯定地说明busybox是没有问题的。运行hello./hello出现:Illegal instruction从网上找了很多资料,大部分把责任归于EABI,但我想想,既然kernel和busybox都能正常启动,那它们都应该是eabi编译的了,hello也肯定是eabi的,因为他们都是用arm-linux-4.3.2编译的(编译内核的时候make menuconfig要选山EABI选项).所以网上大部分资料都不适合解决我遇到的问题。但最终还是找到了一边能够帮我解决问题的文章:http://hi..com/caicry/blog/item/ede3b8fa01ebc89059ee908a.html虽然他还是把问题归咎于EABI,但是却给我指点了解决问题的方向。既然busybox(这里的busybox是指编译busybox-1.15.2生成的busybox二进制文件)能够成功运行,hello不能运行,那就看看他们的区别:#file buxyboxbusybox: ELF 32-bit LSB executable, ARM, version 1 (SYSV),statically linked, for GNU/Linux 2.6.14, stripped#file hello# file hellohello: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped这时候恍然大悟了,hello在ram+linux系统上找不到运行所需的动态库,所以Illegal instruction。重新编译hello.c#gcc –static –o hello hello.c#file hellohello_static: ELF 32-bit LSB executable, ARM, version 1 (SYSV),statically linked, for GNU/Linux 2.6.14, not stripped重新制作jffs2文件系统,下载运行:#hello出现welcome to my rootfs! 完!现在EABI已经开始在嵌入式中流行起来,确保软件的EABI匹配性,应该注意下面几点:1. 编译kernel的时候要选上EABI。2. 交叉编译的所有的软件都要用支持EABI的编译器(例如arm-linux-4.3.2)来编译。
❺ 什么未安装二进制文件,怎么办
装个busybox更新既可啦。 之后就可以删去busybox
❻ BusyBox下自带的tftp命令怎么用
Tftp向运行平凡文件传输协议 (TFTP) 服务或 daemon 的远程计算机(尤其是运行 UNIX 的计算机)传输文件或从运行平凡文件传输协议 (TFTP) 服务或 daemon 的远程计算机(尤其是运行 UNIX 的计算机)传输文件。语法tftp [-i] [Host] [{get | put}] [Source] [Destination]参数-i 指定二进制图像传送模式(也称为八进制模式)。在二进制图像模式下,文件以一个字节为单位进行传输。在传送二进制文件时使用该模式。如果省略了 -i,文件将以 ASCII 模式传送。这是默认的传送模式。该模式将行尾 (EOL) 字符转换为指定计算机的适当格式。传送文本文件时使用该模式。如果文件传送成功,将显示数据传输率。 Host 指定本地或远程计算机。 put 将本地计算机上的 Destination 文件传送到远程计算机上的 Source 文件。因为 TFTP 协议不支持用户身份验证,所以用户必须登录到远程计算机,同时文件在远程计算机上必须可写。 get 将远程计算机上的 Destination 文件传送到本地计算机上的 Source 文件。 Source 指定要传送的文件。 Destination 指定将文件传送到的位置。如果省略了 Destination,将假定它与 Source 同名。 /? 在命令提示符显示帮助。 注释使用 get 参数 如果将本地计算机上的文件 FileTwo 传送到远程计算机上的文件 FileOne,则指定 put。如果将远程计算机上的文件 FileTwo 传送到远程计算机上的文件 FileOne,则指定 get。Windows XP 或 Windows 2000 不提供一般用途的 TFTP 服务器。Windows 2000 提供的 TFTP 服务器服务只为 Windows XP 和 Windows 2000 客户端计算机提供远程引导功能。 只有当网际协议 (TCP/IP) 协议在 网络连接中安装为网络适配器属性的组件时,该命令才可用。 范例要从本地计算机将文件 Users.txt 传送到远程计算机 vax1 上的 Users19.txt,请键入:tftp vax1 put users.txt users19.txt此外,TFTP是一个简单的协议,它不能指定路径,在传输时必须已经知道路径,最好使用IP地址而不是机器名字。供参考
❼ Busybox求助,我到了官网,但是给我的都是二进制文件和一堆乱码,二进制文件怎么下载
右键另存为,就下载下来了
❽ 如何利用busybox制作根文件系统
选定 busybox-1.9.2.tar.bz2 这个版本, 以静态方式编译, 即生成的 busybox 不需要共享库的支持就能运行。这样做我们就不需要布署程序库了。缺点是自己写的 arm-linux 程序在这个根文件系统中是不能运行的,因为缺少共享程序库的支持。不过不用担心,通过在目标机里以挂接 NFS 的方式, 将宿主机的 arm-linux-gcc 编译器的库文件挂到 arm-linux 的 /lib 下, 就可完美的运行我们自己的程序了。现在开始制作静态链接库的根文件系统。 1、准备根文件系统首先准备制作工具BusyBox1.9.2。准备交叉编译工具arm-linux-gcc 3.3.2。在机器上建立rootfs的文件夹#mkdir rootfs在rootfs中建立linux系统中典型的文件夹#cd rootfs#mkdir root home bin sbin etc dev usr lib tmp mnt sys proc#mkdir usr/lib usr/bin#pwd/home/su/rootfs2、解压源码包 #tar xjf busybox-1.9.2.tar.bz2 #cd busybox-1.9.23、修改 Makefile,#vi Makefile 将Makefile中的CROSS_COMPILE ?= 改为 CROSS_COMPILE ?= /usr/local/arm/3.3.2/bin/arm-linux-注:这个版本的 busybox 用 3.4.1 的 arm-linux-gcc 编译有些问题, 用 3.3.2 版则可顺利编译。4、定制 busybox 选择busybox下全部的可执行程序#make defconfig进到配置选项#make menuconfig设置静态编译方式 Busybox Settings —> Build Options —> [*] Build BusyBox as a static binary (no shared libs)Busybox Settings —> Install Options —> 中输入建立根文件系统的文件所在的路径/home/su/rootfs。其它的默认。 确保 [*] Build BusyBox as a static binary (no shared libs) 被选中,保存退出 5、执行 make 编译 #make 编译出错, 信息如下: applets/applets.c:15:2: warning: #warning Static linking against glibc proces buggy executables applets/applets.c:16:2: warning: #warning (glibc does not cope well with ld –gc-sections). applets/applets.c:17:2: warning: #warning See sources.redhat.com/bugzilla/show_bug.cgi?id=3400 applets/applets.c:18:2: warning: #warning Note that glibc is unsuitable for static linking anyway. applets/applets.c:19:2: warning: #warning If you still want to do it, remove -Wl,–gc-sections applets/applets.c:20:2: warning: #warning from scripts/trylink and remove this warning. applets/applets.c:21:2: error: #error Aborting compilation. make[1]: *** [applets/applets.o] Error 1 按照提示,修改文件 applets/applets.c 第 21 行, 将 #error Aborting compilation. 注释掉: 执行 make 重新编译 #make 编译通过, busybox 被生成了, 然后执行 #make installbusybox 就被安装到指定的路径下了/home/su/rootfs,这时可发现rootfs下多了个liunxrc的文件,bin、sbin下也多了很多文件。用ls –l命令查看其中的一个文件,可发现其是链接到busybox的一个连接符,所以我们之后在目标机上运行的命令大多都会调用busybox这个文件的。若之前忘了指定路径,默认生成到临时目录busybox-1.9.2/_install 下了。6、编写配置/etc下的初始化程序(可省略) 最简单的做法是把busybox-1.9.2/examples/bootfloppy/etc下的全部文件拷到目标文件的etc目录下 #cd /home/su/busybox-1.9.2/examples/bootfloppy/etc#cp –rf * /home/su/rootfs/etc也可自己写这些文件。7、把rootfs做成镜像 #mkcramfs rootfs rootfs.cramfs8、把rootfs.cramfs烧写到目标机中。9、运行目标机 这时会遇到一个错误信息: Can’t open tty2 Can’t open tty3Can’t open tty4 解决办法:把/rootfs/etc/ inittab 文件的第三行“tty2::askfirst:-bin/sh”删除掉。返回到第7步重做。现实中,动态编译的方法更适合工程的需要,所以一般是采用动态的方法编译根文件系统的。若选择动态编译的办法,大体方法还是一样的,存在一些不同之处是:不同之处之一是: 进到配置选项#make menuconfig选择动态方式Busybox Settings —> Build Options —> [*] Build Shared libbusybox不同之处之二是:上面静态编译出现的出错信息不会出现了,所以不需对程序做任何修改,但还是必须用arm-linux-gcc 3.3.2编译,否则还是会有麻烦。不同之处之三是(最大的不同之处):编译完成后,需进到rootfs目录的lib中,往里面添加一些库文件#cd /home/su/rootfs/lib这里有点麻烦,我怎么知道需要什么库文件的支持呢?最简单的办法是把arm-linux-gcc 3.3.2下的整个lib库拷进来,简单省事。但是这么做存在一个问题,做出的根文件系统非常大。另一个办法是:#cd /home/su/rootfs/bin#arm-linux-readelf busybox | grep shared这样就可以显示出系统运行起来需要什么库文件,再把相应的库文件拷到/home/su/rootfs/lib下。一般而言,系统库用到两个:动态链接器ld-linux.so和c函数库Glibc,Glibc包括:ld-linux:动态链接库,必需libc: 标准c函数库,必需libm: 数学库,一般需要libdl: 用于动态装载共享库,较少用到libcrypt: 加密附加库,需要认证的程序用到,较少用libpthread: POSIX线程库,一般需要如果需要某个函数库,我们可以将这些库和对应的符号链接拷到目标根文件系统的/lib目录下。简单起见,应该使用-d选项或-a选项调用cp命令,这样可保留完整的符号链接信息。例:#cp –a libc.so.6 /home/su/rootfs/lib/为了减少运行时库的大小,我们应该使用交叉编译版本即arm-linux-gcc 3.3.2的strip工具来处理根文件系统的库文件,把二进制文件中的包含的符号表和调试信息删除掉。例:#arm-linux-strip /home/su/rootfs/lib/*.so注意: 使用busybox做文件系统时,运行make命令,系统会马上显示: 没有/dev/null这个文件但是还是能最终编译出根文件系统,问题出在重启linux系统,机器进不去了。提示出错,信息如下:/etc/rc.d/rc.sysinit: line 173:/dev/null: read-only file system /etc/rc.d/rc.sysinit: line 173:/dev/null: read-only file system /etc/rc.d/rc.sysinit: line 184:/dev/null: read-only file system /etc/rc.d/rc.sysinit: line 184:/dev/null: read-only file system /etc/rc.d/rc.sysinit: line 200:/dev/null: read-only file system . . . ***An error occured ring the file system check. ***Dropping you to a shell;the system will reboot ***when you leave the shell Give root password for maintenance (or type Control-D to continue):解决办法: 按提示输入root用户的密码,回车,可看到 (Repair filesystem)1#: 依次输入命令:(Repair filesystem)1# mount -n -o remount,rw / (Repair filesystem)1# rm -f /dev/null (Repair filesystem)1# mknod -m 0666 /dev/null c 1 3 (Repair filesystem)1# reboot问题解决。
❾ 超级授权未安装SU二进制文件,怎么办
使用新的ROOT包或者re就可以成功了,新的固件老方法已经失效了,21号更新了新方法,请使用新的方法吧 、
❿ busybox无法安装,有root,提示没有su二进制文件,怎么办才好系统无法修改文件权限为33
电脑安装甜椒,打开手机设置,应用程序,调试,勾选,USB调试模式,,,,连接数据线到电脑,选择甜椒,应用工具,,,选择ROOT破解,,,重启后提示成功,安装SUPERUSER即可….刷机工具你可以试试XIAZAIBA的刷机工具…目前安卓手机并没有统一ROOT方案,一个是因为硬件不同,系统版本不同,系统ROM开发商不同,所以ROOT就不一样。比如联想A60可以用刷机精灵ROOT,A66T可以用Z4ROOT,中兴V88O可以用卓大师,联想P770可以用网络一键ROOT………………等等等等,,同款手机换新系统,ROOT方案也不同。。。