Tuesday, April 22, 2014

Android 開発環境(Debian)

別に本当に開発をするわけでもないけど、Debian unstable/sid環境下でのAndroid開発を作ってみました。

開発環境整備は情報が多すぎ何処からとりかかるか迷うが、Debian sid/testing (2014)環境ベースだと、http://developer.android.com/sdk/installing/index.html に従うこととなる。

とりあえずSDKとNDKをHOMEのandroidディレクトリにアーカイブで落とす。
Debianから、OpenJDK Development Kit (JDK)とOpenJDK Java runtime, using Hotspot JITの導入をし、さらにeclipseとegitを導入します。

$ sudo apt-get install openjdk-7-jdk openjdk-7-jre
$ sudo apt-get install eclipse eclipse-egit

そこで、METAキー(Windowsキー)を押し、eclipseと打ち、出たアイコンを叩きeclipseを起動します。Workspace launcher は素直にデフォルトの「/home/osamu/workspace」としました。

ADT Pluginの導入ですが、https://developer.android.com/tools/sdk/eclipse-adt.html から読み出し、https://developer.android.com/sdk/installing/installing-adt.html にある手順を踏み、Help−>Install new softwareと進み、work withにADT のサイトの「https://dl-ssl.google.com/android/eclipse/」を入れます。(androidと命名しました)そしてすべてインストールします。

「SDK Manager is missing ...」とかのメッセージがでるので、素直に「Open SDK Manager」のボタンを押す。(たしか最初どこかの段階でSDKの場所を聞かれ、「/home/osamu/android/sdk」と入力した)

とにかく自動選択されるものを、毎回ライセンスを受け入れることにチェックしてインストールする事を繰り返します。(うんざり)なんか中途半端にインストールされている気がします。

~/.bashrcに「PATH=${PATH}:~/android/sdk/tools」を加えます。ターミナルを再起動しshellを更新します。

android sdkとしてインストールを完了。(Toolsだけは全部選びません。最新バージョンだけ選びました)
だいぶ改善するようですが一部うまくいっていません。今日は悩まず、ここでeclipseを再起動します。

当分、チュートリアルをフォローして遊びます。今日はここまで。

PS: STPでの接続でFilerのDevicesにNexus 5が見えなくなってます。パッケージアップグレードで起こったバグかな?とりあえず困らないので放置です。


Sunday, April 20, 2014

Nexus 5 購入、即 Debian を用いてroot化

久しぶりに新電子機器購入。 Nexus 5 / 32 MB (Google Play版) (シンガポールから送られてきます)

SIMは別途IIJmioのSMS option付きベーシックプラン(音声なし)を Bic Cameraで購入。

早速Debian GNU/Linux Jessie/Sid with Gnome 3システムUSBでつなぐと、Gnome Filerで何かファイルが見えるではありませんか。mountされたファイルシステムに対応するものがないので、何故かなと思っていると、どうも最近はメディア転送プロトコル(MTP)とか言うしゃれたことでファイルにアクセスするようだ。

携帯電話躯体の蓋を開けハードの中を覗きたい衝動を抑え、兎に角ソフトの中を見ることで我慢することにする。

XDA Developer http://forum.xda-developers.com/google-nexus-5 に従うことにした。root の取り方は、http://forum.xda-developers.com/google-nexus-5/#root にある(少々古い環境前提)情報が基本。現在のDebian sid/jessieのマルチアーチ対応済みの64 bit環境でルート化のために32bitアプリを走らすのは、上記に書かれているようにlib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6等をインストールする代わりに対応するlibz1:i386 (実際はこれはバーチャルパッケージなのでzlib1g:i386 をインストール)等をインストールするのが準備となります。以下その手順のおさらい:
  • Nexus 5はOSでのホスト名が「hammerhead」ですので、これが別名です。
  • Wifi環境を確保する。
  • http://autoroot.chainfire.eu/ にいき、nexus 5を探す。Nexus 5 はFastboot flashable devicesです。
  • http://download.chainfire.eu/363/CF-Root/CF-Auto-Root/CF-Auto-Root-hammerhead-hammerhead-nexus5.zipをPC (Debian)にダウンロード。
  • zip fileの解凍して、できたディレクトリーの中に入る。
  • "chmod +x root-linux.sh" を実行し、このスクリプトを実行可能にする。
  • 必要パッケージのAPTからの導入(SDK自体の導入や、PATH設定はしなくてOK)
    • android-tools-adb - Android Debug Bridge CLI tool
    • android-tools-fastboot - Android Fastboot protocol CLI tool
    • android-tools-fsutils - Android ext4 utilities with sparse support
  • Nexus 5 を起動、Developer  modeにします。(設定->端末情報を7回連続タップ)
  • 開発者モードが見えるようになったら、中のUSB Debugにチェックをいれます。
  • Nexus 5の電源スイッチを押し、完全に「電源を切」ります。
  • USBでNexus 5 をPCに継ぎます
  • 再びNexus 5の「電源ボタン」と「ボリュームダウンボタン」の同時押しでfastboot再起動します。
  • "./root-linux.sh"と実行
  • スクリーン表示に従いすすむ。
    • データーを消すので、もし何か大事なデーターを入れている際には事前バックアップが必要です。私は何も無かったので、全く気にしませんでした。
至って簡単です。(無保障ですが)

上記ページにあるWEBビデオを見ればGUIベースでどうするかが英語でわかりやすく説明されています。

ここでPC(Debian)のシェルからadbコマンドが動きNexus 5 にアクセスでき、Nexus 5にシェルでアクセスでき、さらにrootまでとれました。

$ adb shell
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
shell@hammerhead:/ $ su
root@hammerhead:/ # mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,noatime,nomblk_io_submit,noauto_da_alloc,errors=panic,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,noatime,nomblk_io_submit,noauto_da_alloc,errors=panic,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 rw,seclabel,nosuid,nodev,relatime,nomblk_io_submit,nodelalloc,errors=panic,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
tmpfs /storage/emulated tmpfs rw,seclabel,nosuid,nodev,relatime,mode=050,gid=1028 0 0
/dev/fuse /storage/emulated/0 fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated/0/Android/obb fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated/legacy fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated/legacy/Android/obb fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
127|root@hammerhead:/ # set                                                    
ANDROID_ASSETS=/system/app
ANDROID_BOOTLOGO=1
ANDROID_DATA=/data
ANDROID_PROPERTY_WORKSPACE=9,0
ANDROID_ROOT=/system
ANDROID_SOCKET_adbd=10
ANDROID_STORAGE=/storage
ASEC_MOUNTPOINT=/mnt/asec
BASHPID=5692
BOOTCLASSPATH=/system/framework/core.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/framework2.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/webviewchromium.jar
COLUMNS
EMULATED_STORAGE_SOURCE=/mnt/shell/emulated
EMULATED_STORAGE_TARGET=/storage/emulated
EPOCHREALTIME=1397982119.027531
EXTERNAL_STORAGE=/storage/emulated/legacy
HOME=/
HOSTNAME=hammerhead
IFS=$' \t\n'
KSHEGID=0
KSHGID=0
KSHUID=0
KSH_VERSION='@(#)MIRBSD KSH R43 2013/02/19'
LD_LIBRARY_PATH=/vendor/lib:/system/lib
LINES
LOGNAME=root
LOOP_MOUNTPOINT=/mnt/obb
MKSH=/system/bin/sh
OPTIND=1
PATH=/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
PGRP=5692
PIPESTATUS[0]=127
PPID=5690
PS1='$(precmd)$USER@$HOSTNAME:${PWD:-?} # '
PS2='> '
PS3='#? '
PS4='+ '
PWD=/
RANDOM=7260
SECONDS=357
SHELL=/tmp-mksh/tmp-mksh
TERM=vt100
TMOUT=0
USER=root
USER_ID=0
_=set

root@hammerhead:/ # 
root@hammerhead:/ # cd /system/bin    
root@hammerhead:/system/bin # ls -la
drwxrwxrwx root     root              1970-01-26 22:38 .ext
-rwxr-xr-x root     shell      109008 2013-12-05 08:53 adb
-rwxr-xr-x root     shell         210 2013-12-05 08:53 am
-rwxr-xr-x root     shell        9560 2013-12-05 08:53 app_process
-rwxr-xr-x root     shell       53660 2013-12-05 08:53 applypatch
-rwxr-xr-x root     shell       17952 2013-12-05 08:53 atrace
-rwxr-xr-x root     shell        9456 2013-12-05 08:53 bdAddrLoader
-rwxr-xr-x root     shell        9568 2013-12-05 08:53 blkid
-rwxr-xr-x root     shell         199 2013-12-05 08:53 bmgr
-rwxr-xr-x root     shell       21852 2013-12-05 08:53 bootanimation
-rwxr-xr-x root     shell       34448 2013-12-05 08:53 bridgemgrd
-rwxr-xr-x root     shell         156 2013-12-05 08:53 bu
-rwxr-xr-x root     shell        5408 2013-12-05 08:53 bugreport
lrwxr-xr-x root     shell             2013-12-05 09:39 cat -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 chcon -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 chmod -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 chown -> toolbox
-rwxr-xr-x root     shell       21840 2013-12-05 08:53 clatd
lrwxr-xr-x root     shell             2013-12-05 09:39 clear -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 cmp -> toolbox
-rwxr-xr-x root     shell         207 2013-12-05 08:53 content
lrwxr-xr-x root     shell             2013-12-05 09:39 cp -> toolbox
-rwxr-xr-x root     shell        9504 2013-12-05 08:53 dalvikvm
lrwxr-xr-x root     shell             2013-12-05 09:39 date -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 dd -> toolbox
-rwxr-xr-x root     shell       21792 2013-12-05 08:53 debuggerd
-rwxr-xr-x root     shell       62804 2013-12-05 08:53 dex2oat
-rwxr-xr-x root     shell        9452 2013-12-05 08:53 dexopt
lrwxr-xr-x root     shell             2013-12-05 09:39 df -> toolbox
-rwxr-xr-x root     shell       67032 2013-12-05 08:53 dhcpcd
-rwxr-xr-x root     shell        5464 2013-12-05 08:53 diag_klog
-rwxr-xr-x root     shell       14264 2013-12-05 08:53 diag_mdlog
lrwxr-xr-x root     shell             2013-12-05 09:39 dmesg -> toolbox
-rwxr-xr-x root     shell      105864 2013-12-05 08:53 dnsmasq
-rwxr-xr-x root     shell       50520 2013-12-05 08:53 drmserver
-rwxr-xr-x root     shell       58848 2013-12-05 08:53 ds_fmc_appd
lrwxr-xr-x root     shell             2013-12-05 09:39 du -> toolbox
-rwxr-xr-x root     shell       42336 2013-12-05 08:53 dumpstate
-rwxr-xr-x root     shell        9500 2013-12-05 08:53 dumpsys
-rwxr-xr-x root     shell      122568 2013-12-05 08:53 e2fsck
-rwxr-xr-x root     shell       26200 2013-12-05 08:53 fsck_msdos
lrwxr-xr-x root     shell             2013-12-05 09:39 getenforce -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 getevent -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 getprop -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 getsebool -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 grep -> toolbox
-rwxr-xr-x root     shell        9500 2013-12-05 08:53 gzip
lrwxr-xr-x root     shell             2013-12-05 09:39 hd -> toolbox
-rwxr-xr-x root     shell      309828 2013-12-05 08:53 hostapd
lrwxr-xr-x root     shell             2013-12-05 09:39 id -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 ifconfig -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 iftop -> toolbox
-rwxr-xr-x root     shell         194 2013-12-05 08:53 ime
-rwxr-xr-x root     shell         201 2013-12-05 08:53 input
lrwxr-xr-x root     shell             2013-12-05 09:39 insmod -> toolbox
-rwxr-xr-x root     shell       30220 2013-12-05 08:53 installd
lrwxr-xr-x root     shell             2013-12-05 09:39 ioctl -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 ionice -> toolbox
-rwxr-xr-x root     shell      165540 2013-12-05 08:53 ip
-rwxr-xr-x root     shell      191520 2013-12-05 08:53 ip6tables
-rwxr-xr-x root     shell      196312 2013-12-05 08:53 iptables
-rwxr-xr-x root     shell        5356 2013-12-05 08:53 irsc_util
-rwxr-xr-x root     shell       38340 2013-12-05 08:53 keystore
lrwxr-xr-x root     shell             2013-12-05 09:39 kill -> toolbox
-rwxr-xr-x root     shell       63664 2013-12-05 08:53 linker
-rwxr-xr-x u0_a88   u0_a88    1103284 2014-04-19 02:18 lm.cryptsetup
-rwxr-xr-x u0_a88   u0_a88     556728 2014-04-19 02:18 lm.mkdosfs
lrwxr-xr-x root     shell             2013-12-05 09:39 ln -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 load_policy -> toolbox
lrwxrwxrwx root     root              2014-04-20 16:54 log -> toolbox
-rwxr-xr-x root     shell       13648 2013-12-05 08:53 logcat
-rwxr-xr-x root     shell       13672 2013-12-05 08:53 logwrapper
lrwxr-xr-x root     shell             2013-12-05 09:39 ls -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 lsmod -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 lsof -> toolbox
-rwxr-xr-x u0_a88   u0_a88      19362 2014-04-19 02:18 luks
-rwxr-xr-x root     shell        9568 2013-12-05 08:53 make_ext4fs
lrwxr-xr-x root     shell             2013-12-05 09:39 md5 -> toolbox
-rwxr-xr-x root     shell      255404 2013-12-05 08:53 mdnsd
-rwxr-xr-x root     shell         210 2013-12-05 08:53 media
-rwxr-xr-x root     shell       13604 2013-12-05 08:53 mediaserver
lrwxr-xr-x root     shell             2013-12-05 09:39 mkdir -> toolbox
-rwxr-xr-x root     shell      157488 2013-12-05 08:53 mksh
lrwxr-xr-x root     shell             2013-12-05 09:39 mkswap -> toolbox
-rwxr-xr-x root     shell        9576 2013-12-05 08:53 mm-jpeg-interface-test
-rwxr-xr-x root     shell       13604 2013-12-05 08:53 mm-qcamera-app
-rwxr-xr-x root     shell        9516 2013-12-05 08:53 mm-qcamera-daemon
-rwxr-xr-x root     shell         217 2013-12-05 08:53 monkey
lrwxr-xr-x root     shell             2013-12-05 09:39 mount -> toolbox
-rwxr-xr-x root     shell       26244 2013-12-05 08:53 mpdecision
-rwxr-xr-x root     shell       17912 2013-12-05 08:53 mtpd
lrwxr-xr-x root     shell             2013-12-05 09:39 mv -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 nandread -> toolbox
-rwxr-xr-x root     shell        5348 2013-12-05 08:53 ndc
-rwxr-s--- root     inet         5532 2013-12-05 08:53 netcfg
-rwxr-xr-x root     shell       83700 2013-12-05 08:53 netd
-rwxr-xr-x root     shell      117320 2013-12-05 08:53 netmgrd
lrwxr-xr-x root     shell             2013-12-05 09:39 netstat -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 newfs_msdos -> toolbox
-rwxr-xr-x root     shell        5356 2013-12-05 08:53 nl_listener
lrwxr-xr-x root     shell             2013-12-05 09:39 notify -> toolbox
-rwxr-xr-x root     shell       79272 2013-12-05 08:53 oatdump
-rwxr-xr-x root     root        26124 2013-12-05 08:53 ping
-rwxr-xr-x root     shell       30488 2013-12-05 08:53 ping6
-rwxr-xr-x root     shell         191 2013-12-05 08:53 pm
-rwxr-xr-x root     shell       17804 2013-12-05 08:53 port-bridge
-rwxr-xr-x root     shell      141924 2013-12-05 08:53 pppd
lrwxr-xr-x root     shell             2013-12-05 09:39 printenv -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 ps -> toolbox
-rwxr-xr-x root     shell       54564 2013-12-05 08:53 qmuxd
-rwxr-xr-x root     shell        5452 2013-12-05 08:53 qseecomd
-rwxr-xr-x root     shell      162768 2013-12-05 08:53 racoon
-rwxr-xr-x root     shell       25992 2013-12-05 08:53 radish
lrwxr-xr-x root     shell             2013-12-05 09:39 readlink -> toolbox
-rwxr-xr-x root     shell        5352 2013-12-05 08:53 reboot
lrwxr-xr-x root     shell             2013-12-05 09:39 renice -> toolbox
-rwxr-xr-x root     shell         188 2013-12-05 08:53 requestsync
lrwxr-xr-x root     shell             2013-12-05 09:39 restorecon -> toolbox
-rwxr-xr-x root     shell        9556 2013-12-05 08:53 rild
lrwxr-xr-x root     shell             2013-12-05 09:39 rm -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 rmdir -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 rmmod -> toolbox
-rwxr-xr-x root     shell       19408 2013-12-05 08:53 rmt_storage
lrwxr-xr-x root     shell             2013-12-05 09:39 route -> toolbox
-rwxr-x--- root     shell        9500 2013-12-05 08:53 run-as
lrwxr-xr-x root     shell             2013-12-05 09:39 runcon -> toolbox
-rwxr-xr-x root     shell        5356 2013-12-05 08:53 schedtest
lrwxr-xr-x root     shell             2013-12-05 09:39 schedtop -> toolbox
-rwxr-xr-x root     shell        9456 2013-12-05 08:53 screencap
-rwxr-xr-x root     shell       17868 2013-12-05 08:53 screenrecord
-rwxr-xr-x root     shell       38324 2013-12-05 08:53 screenshot
-rwxr-xr-x root     shell       17692 2013-12-05 08:53 sdcard
lrwxr-xr-x root     shell             2013-12-05 09:39 sendevent -> toolbox
-rwxr-xr-x root     shell      303092 2013-12-05 08:53 sensors.qcom
-rwxr-xr-x root     shell        5412 2013-12-05 08:53 sensorservice
-rwxr-xr-x root     shell        9500 2013-12-05 08:53 service
-rwxr-xr-x root     shell        9664 2013-12-05 08:53 servicemanager
lrwxr-xr-x root     shell             2013-12-05 09:39 setconsole -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 setenforce -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 setprop -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 setsebool -> toolbox
-rwxr-xr-x root     shell         178 2013-12-05 08:53 settings
lrwxr-xr-x root     shell             2013-12-05 09:39 sh -> mksh
lrwxr-xr-x root     shell             2013-12-05 09:39 sleep -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 smd -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 start -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 stop -> toolbox
-rwxr-xr-x root     shell       13876 2013-12-05 08:53 subsystem_ramdump
-rwxr-xr-x root     shell        5360 2013-12-05 08:53 surfaceflinger
-rwxr-xr-x root     shell         192 2013-12-05 08:53 svc
lrwxr-xr-x root     shell             2013-12-05 09:39 swapoff -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 swapon -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 sync -> toolbox
-rwxr-xr-x root     shell       63044 2013-12-05 08:53 tc
-rwxr-xr-x root     shell      171968 2013-12-05 08:53 thermal-engine-hh
-rwxr-xr-x root     shell       17756 2013-12-05 08:53 time_daemon
-rwxr-xr-x root     shell      139040 2013-12-05 08:53 toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 top -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 touch -> toolbox
-rwxr-xr-x root     shell        3814 2013-12-05 08:53 uiautomator
lrwxr-xr-x root     shell             2013-12-05 09:39 umount -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 uptime -> toolbox
-rwxr-xr-x root     shell        5352 2013-12-05 08:53 usbhub
-rwxr-xr-x root     shell        5356 2013-12-05 08:53 usbhub_init
-rwxr-xr-x root     shell        5348 2013-12-05 08:53 vdc
lrwxr-xr-x root     shell             2013-12-05 09:39 vmstat -> toolbox
-rwxr-xr-x root     shell       87752 2013-12-05 08:53 vold
lrwxr-xr-x root     shell             2013-12-05 09:39 watchprops -> toolbox
lrwxr-xr-x root     shell             2013-12-05 09:39 wipe -> toolbox
-rwxr-xr-x root     shell         190 2013-12-05 08:53 wm
-rwxr-xr-x root     shell      793480 2013-12-05 08:53 wpa_supplicant