近期公司安卓app测试,分配任务为监控APP内存、CPU占用率。因安卓是基于linux开发,故很容易就联想使用Linux监控相关的命令。想法总是美好的,现实总是残酷的,使用三星 Galaxy Note II N7108测试时发现,很多linux命令没有,用起来很不爽。

例:

C:\Documents and Settings\Findyou>adb shell
shell@android:/ $ grep
grep
/system/bin/sh: grep: not found

 

                                       (图1)

 

通过网络搜索发现了Busybox,下文主要针对三星N7108(Android 4.1.2)安装Busybox进行说明。

 


一、BusyBox简介    

  BusyBox 是一个集成了一百多个最常用linux命令和工具的软件。BusyBox 包含了一些简单的工具,例如ls、cat和echo等等,还包含了一些更大、更复杂的工具,例如grep、find、mount以及telnet。有些人将 BusyBox 称为 Linux 工具里的瑞士军刀。简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Android 系统的自带的shell。(摘自百度百科http://baike.baidu.com/view/1429588.htm

 

二、安装BusyBox准备

1、Root 三星N7108(Android 4.1.2)

2、下载BusyBox的binary

3、PC机安装Android SDK 

 

1、Root 三星N7108(Android 4.1.2)

a.PC端工具:360一键Root  http://shuaji.360.cn/root/

手机打开USB调试,连上PC机,点360一键Root程序,按步骤走即可。

b.Root相关问题:

1). 三星N7108(Android 4.1.1)可以用Framaroot进行Root,也很简单

解决:Findyou亲测,如果不知道搜索下Framaroot就有教程,下载地址http://forum.xda-developers.com/showthread.php?t=2130276

2).Root失败,手机一直重启进不了系统,哥就碰到了绿豆刷机神器(V5.5.0.0)把机器三星N7108(Android 4.1.1)给root挂了,怎么整都进不了系统。

解决:上三星官网下载Samsung Kies,在软件里点击”工具“》“紧急固件恢复”或者“固件升级和初始代”,哥试了后者,成功把手机给升到4.1.2,哈哈,手机就此满血满状态重生。

 

2、下载BusyBox的binary

a.下载地址:  http://www.busybox.net/downloads/binaries

选择最新版本,然后下载对应你的设备架构的版本,三星N7108为ARMV7处理器(详见文章开头的 图1),故我下载了busybox-armv7l。

b.下载后将busybox-armv7l重命名为busybox。

(图2)

 

3、PC机安装Android SDK 

a.下载地址:http://developer.android.com/tools/sdk/tools-notes.html

下载安装较为简单,解压即可,为了方便,可以添加环境变量,以便cmd方便操作

b..Android SDk相关

1).ADT下载:http://developer.android.com/sdk/index.html

不建议仅下载SDK Tools工具,建议下载ADT,内置Eclipse + ADT plugin+Android SDK等,偶尔看看源码也不错。

 

三、安装BusyBox

 1、手机开启USB调试模式后,连接电脑;

(图3)

 

2、将busybox拷入手机的SD卡,使用下面的CMD命令或自己想其他办法;

adb push E:\busybox /storage/sdcard0
注:busybox文件存放在E盘根目录,目标路行为SD卡

(图4)

注: $ll sdcard   –查看SD卡真实的路径,命令也可输入: $ls -al sdcard

 

3. 复制 busybox 文件到 /system/xbin,并为其分配“可执行”的权限

a.进入CMD执行以下命令:adb shell

b.切换至root,将文件从SD卡拷贝到/system/xbin目录下

c.进入xbin下,给busybox加可执行权限

d.安装busybox到目标目录

C:\Documents and Settings\Findyou>adb shell
$su
#cat /mnt/sdcard/busybox>/system/xbin/busybox
#cd /system/xbin
#chmod 755 busybox
#busybox --install .

 

 

 

至此busybox已安装完毕。

 

小技巧:

1.android系统本身就有ls命令,输入ls时调用的仍是android的ls

a.可使用别名替换原有的系统ls

$alias ls=\'busybox ls\'

 

b.可以将path变量中的/system/xbin设置在/system/bin前

c.可以将/system/bin中的ls移走,使用以下命令新建ls

$ln -s busybox ls

 

 

2. busybox ls乱码问题为显示模式问题,可使用以下命令解决

 

$alias ls=\'ls --color=never\' 
$alias ll=\'ls -la --color=never\'
或者
$alias ls=\'busybox ls --color=never\' 
$alias ll=\'busybox ls -la --color=never\'

 

 

 

 

 

 

 

版权声明:本文为findyou原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/findyou/p/3283281.html