ジャンル不定の日記です。

adb uninstallができた!

昨日から v719 3G 4核 のrootかとか作業してて、ファームウェア書き換えたりしてうまく行かなかったんだが、
自力が厳しそうだから、怪しいroot化ツールも試してみて、 /data/data とか見たりしてインストール済みのパッケージ確認して、
それができたらファームウェアの書き換えはできる大体出来そうなんで、削除すべきパッケージのapkを消したファームを入れようかな。
って感じで、ちょっと怪しいツール使ってみたんだが結局失敗した感じ。

と思ったんだが、
多分初期状態では無いと思うんだが、気づいたら /system/xbin/su が存在してて機能する!
adb shell は $ のままだったが、発見したsu使ったら # になった!
adb root も機能しないんだが、 adb uninstall は機能する!

というわけで、
/data/data 見たりしてパッケージ名を確認、 adb uninstall で不要物の駆除。
って作業やることにする。

ツールは、「Framaroot」ってのと「SuperOneClick」っての試したんで、
どっちかで微妙にroot化ができてるぽい。


ちなみに、今のところ自力でroot化(adbだけrootコマンドが使えるようになれば良い)は厳しい感じなんだが、ファームウェアのカスタマイズは、
  • ONDAの公式ファームとって来る。
  • MT6582_Android_scatter.txtを確認する。
  • 「type: YAFFS_IMGtype: NORMAL_ROM」のイメージは、simg2imgでアンパックして改造、make_ext4fsでリパックができそう。
  • 「type: NORMAL_ROM」のイメージは、unpack-MTK.plでアンパックして改造、repack-MTK.plでリパックができそう。
simg2imgとmake_ext4fsはext4_utilsってパッケージでArchならAURにあったが、PKGBUILDをarch=("x86_64")に変更しないとmakepkgできなかった。

バイナリ以外にもsimg2img.pyってpythonスクリプトも見っけたが、
「print "文字列"」の部分を「print("文字列")」に変えるのと、
「ofd.write(data)」の直前の「data = '\0'」を「data = b'\0'」に変更しないと構文エラーとか出る。
軽い修正で機能するが、make_ext4fsのスクリプトは見つからなかった。

unpack-MTK.plとかは公式ぽいとこから拾った。

書き換えたイメージでファームウェア更新できるから、Androidの構造に詳しければadbのroot化出来そうな気がするんだが、
かなり調べて、/default.propとか/init.rcとかいじったけど無理だった。


で、今からやる不要アプリ消しだが、
https://play.google.com/store/apps/details?id=[パッケージ名]
とブラウザにURL移動して存在すればPlayStoreからインストールできるので要らない。
adbで、
adb uninstall [パッケージ名]
で削除できる。
中華アプリより前に、PlayStoreからインストールできるのを消してく。

ファームウェアの更新に苦労した・・・

ONDA v719 3G 四核 のファームウェア更新やったが、すごい苦労した・・・


ONDAのサイトから、v1.0.4_v3を取ってきたが、まず糞遅い。数時間かかる。

中のファイル名に中華語が使われてる。
文字化けファイルは.docとフォルダ名だけだったから、unzipした後で英字に変更した。

.docが説明書なんだが、
同梱されてるFlashToolと説明書のFlashToolバージョンが違ってて画面が全然違う。

説明書だと、
ツールでファームウェアを選択した後に端末電源を切ってUSB接続して、母艦のWindows機に同梱ドライバをインストールするのだが、
ドライバが同梱されてないw

という状況だった。

XP64bitだからダメなのかと思って、Win7で試したりとか、すごい時間かかった・・・


で、無事ファームの更新ができたわけなんだが、ファーム入手後の手順としては、

インストールすべきUSBドライバの名称が「Mediatek USB VCOM」ってものぽいことに気づいたんで、
どっかから拾ってきて、ドライバ要求された際に拾ってきたドライバを選択したらインストール成功した。
XP64で平気だった。

次に、ファームと一緒に同梱されているFlashToolはバージョン5.13.52.200なんだが、
このツールでもROM焼きできるんだと思うが使い方がわからなかった。
説明書の画像を見ると、バージョン3.1316ぽい。
というわけで、これもどっか怪しいとこから拾ってきたw

3.1316付近のFlashTool使えば説明書と同じなんだが、
説明書では、最初にUSB繋がずに「Firmware > Upgrade」を押してプログレスバーが動く画像が記載されているが、
この処理の時プログレスバー動かずに0%のまま停止する。
で、0%のまま、電源を切った端末をUSB接続するとプログレスバーが動き出す。
終了すると「○」が出てくる。


成功したら端末の電源を入れるが、ROM焼きツールはリカバリー領域に書き込むだけなのかな?
電源入れると「ONDA」の表示のところで数分止まったあとで、中華後に初期化されたAndroidが起動する。

ONDA v719 3G 四核 届いた!

ヤフオクで買ったONDA v719 3G 四核、やっと届いた。


で、
元々届いたら公式ファーム入れなおして使うつもりだったが、
入ってるファームがv1.0.1ぽくて、公式にはv1.0.4が存在する。v1.0.4は安定性が向上しているらしいのと、
ショップが日本語化してるぽいくて嫌だから公式ファームダウンロード中。
激遅い・・・
端末のリビジョンは少なくともv1とv3が存在するようで公式ファームは2種類配信されているが、シリアルみるとv3らしい。


メモリが1GBとストレージが8GBなのが少ないと思ってるんで、今回は、
  • SDカードの起動時自動マウント。
  • swapファイルを作成してswapを有効にする。
のカスタマイズをしてから使おうと思ってたんで、公式ファームをダウンロードしながら、届いた時のファームで中身確認とテストした。

SDカードをアプリとデータの領域にして、swapファイルは端末のnandに作るつもりだったが、
nandを頻繁に書き換えるのは良くないと思うし、swapもSDカード上にすべきと思った。

探しちゃったが、v719 3G 四核のSDカードスロットはSIMと一緒でカバーで隠れてる。
カバーを外さないと出し入れできないが、カバーが外しにくい。
ググったら、カバー外す際に爪折った人もいるみたいなんで気をつけないと・・・

FATでフォーマットされたSDは自動マウントされるが、ext3でフォーマットしたSDは自動マウントされなかった。
装着時ではなく、システム起動時にマウントされる必要があるから、どっちにしろカスタマイズする必要があると思うが。
あと、途中で気づいたが、端末のnandはext4になってるぽい。
一度ext3でSD用意したが、ext4で作りなおした。


SDカードを抜き差して、
/dev/block/mmcblk1p1
がSDカードデバイスなことがわかった。

FATのSDを装着すると、
/storage/sdcard1
にマウントされることがわかる。
この場所は自動でのマウントの場所だが、SDスロットは一つでかぶることはないから、ここにマウントしちゃえば良いね。

端末のUSBデバッグを有効にして、
adb shell mount -t ext4 -o noauto_da_alloc /dev/block/mmcblk1p1 /storage/sdcard1
問題なくマウントできた。
ONDAの端末以外は知らないが、前のvi10もそうだが、adb shellで普通にroot権限使える。
端末アプリのroot化とか余計なことしないで、root権限必要な作業はadbでやったほうが良い。
最初はextでSD作っちゃったからext3でマウントしたが、ext4に変更してデータ破損防止のためnoauto_da_allocオプションをつけた。
ext4には遅延書き込み機能があるらしいんだが、このオプションで無効になるらしい。

その後、端末のディレクトリ構造見て、
/fstab
/system/etc/vold.fstab
/system/etc/vold.fstab.nand
辺りの、ストレージの自動マウント関連ぽい設定ファイルを確認していじってみたが、ダメだった。
Linuxの /etc/fstab とは書式が違う。

他に端末の起動時処理をしていると思われる、
/init.rc
を見つけてコマンド書いてみたが、ダメ。シェルスクリプトとは書式が違うらしい。
マウント処理っぽいのを真似て書いてみてもダメだった。

だが、 /init.rc の最後の方に、
service  preinstall  /system/bin/busybox sh /system/bin/preinstall.sh
という、プリインストールのソフトをシェルスクリプトで自動起動してるぽい感じの記述を見つけて、
preinstall.sh にコマンドを書いたら、電源ONした際に実行された!
このスクリプトファイルに起動時に実行させたいコマンドを書いていけば良いね。

スワップファイルは、
adb shell dd if=/dev/zero of=/storage/sdcard1/swap bs=1048576 count=1024
adb shell busybox mkswap /storage/sdcard1/swap
って感じで作成した。
mkswapコマンドはbusybox経由でないと実行できなかった。

adb shell busybox swapon /storage/sdcard1/swap
adb shell busybox free -m
でスワップを有効にしてメモリの確認。
この2コマンドも要busyboxだった。

adb pull /system/bin/preinstall.sh
で preinstall.sh を母艦にコピーして、
mount -t ext4 -o noauto_da_alloc /dev/block/mmcblk1p1 /storage/sdcard1
$BUSYBOX swapon /storage/sdcard1/swap
と末尾に追加した。

adb shell mount -o remount,rw -t ext4 /system
adb push preinstall.sh /system/bin/preinstall.sh
adb shell chmod 0755 /system/bin/preinstall.sh
編集して再度端末にコピー、
adbだとパーミッションが変わっちゃうからchmodで元に戻す。
だが、
「failed to copy 'fstab' to '/fstab': Read-only file system」
/system が読み込み専用で怒られる。
adb shell mount -o remount,rw -t ext4 /system
と、rwでリマウントすれば変更できるようになる。

rebootしたら、目的通り起動時に自動的にマウント、SDにスワップができた!


公式ファームのダウンロードに時間がかかっててまだファームの更新ができないのだが、ファームの更新したら、上記の作業と、
  • 中華アプリの削除。
  • 自動マウントのSDにアプリとデータの領域をSDに移す。
だな。
たぶんシンボリックリンク張るだけで行けると思うんで、
新ファームの構造が大きく違わない限りは今回の手順でSDの自動マウントができるから、移すのは楽だな。
中華アプリの削除は見てみないとわからん。

コーヒー吸ってみた

この前タバコの代わりにお茶吸ってみたが、
今度はコーヒー(粉)吸ってみた。

コーヒーとか豆系は火がつかないと思ってたんだが、コーヒー吸ったことある人の記事を見たんで、
粉コーヒーなら常備してるから、試しに吸ってみたわけだが、
やっぱ細かい物とか硬い物は巻きにくいね。
で、巻が細くなっちゃってホルダーにフィットしなかったからというのもあるかもだが、火が消えちゃうね。
燃焼弱いペーパーだからってのもあるかもだが。

粉だけだと厳しいようなんで、ブレンドしてみたが、吸えないこともないんで、
タバコに混ぜて巻けばタバコの節約はできそう。

味ははしない感じ。
この前緑茶吸ったら苦くて不味かったから、味的には無味のコーヒーのほうが良いかも。
緑茶はまずいけど満足感は得られる気がしたんで、満足感は緑茶のほうが高かったと思う。
満足感はモクモク度に比例するのかな?

前回も書いたが、
タバコ以外吸ったり、喫煙以外でニコチン摂取したりするとわかるが、
満足度の原因はニコチンではない。
ニコチンに中毒性があるというのも恐らくデタラメ。


葉っぱじゃなくて豆系でも燃えるんなら、コーン茶とか安くて美味そうな気がするな・・・
豆系茶は茶葉に比べて重さの割に安いよね。

ワイヤレスゲートってとこのSIMはServersManよりも安い

格安SIM持とうか検討していて、最有力は月額500円未満のServersMan SIMだと思ってたが、
ワイヤレスゲートってとこのSIMは微妙にだがServersManよりも安いんだな。
ワイヤレスゲートのSIMはヨドバシカメラの独占販売みたいだが、オンラインショップで買える。
必要ないけど、SIM持ちの人はワイヤレスゲートの公衆無線LAN(有料)も無料で使えるらしい。

ServersManより安くて、回線速度は同じ250kbpsなんだが、
ServersManは使い過ぎるとさらに激遅になるらしいが、今のところワイヤレスゲートは制限が無いらしい。
どちらかだったらワイヤレスゲートの方が良さそうだな。


他にも基本料無しで従量制のSIMとか無いかと思って探したが、
「b-mobile 基本料 0円 SIM」ってのと、「Y!mobile EMチャージ」ってのが基本料無しで従量制のサービスみたい。
両方共、初期費用的なのは必要。

b-mobileの方は36円/1MBで、月3600円(100MB)が上限金額で、3600円到達後は1GBまで使える。
パケット量の2段階定額制みたいな感じだね。
1GB後に2GBまでの権利を3600円で購入できる。
完全に使いきると通信ができなくなる。
クレジットカードでの後請求ぽい。

Y!mobileの方は、60円/1MBで、1時間・1日・7日・30日のいずれかの権利を定額で購入することもできる。
こちらは2000円からの事前チャージぽい。

使い道ないけど一応モバイル通信の手段が欲しいだけだから、こんな感じの従量制SIMってのも魅力ありそうに見えるんだが、
b-mobileは6ヶ月利用がないと解約。
Y!mobileは事前チャージだが、最終チャージから380日でチャージ額消滅、760日で解約。
使わないつもりだから、この辺が・・・
Y!mobileは380日で最低2000円チャージすることになるから、それなら定額制の格安SIMでいい気がするな。
b-mobileは期限までにちょっとだけ使えばいいが、めんどいな。

ファルコン9の打ち上げ中継見てた

延期になってたファルコン9が先ほど打ち上げられて中継見てたけど、
公式サイトに「landed hard.」と記載。
ドラゴン宇宙船の方は分離してパネル開いてたから成功したように見えたが、
注目の1段目の方は墜落しちゃったぽいね。
残念・・・

年内に20機ほど打ち上げ予定なんだっけか?
次回も着陸予定なんだろうか。
着陸楽しみー

「格安SIM+050」を考えてみた

まだ新タブ届いてないんだが、
新タブにSIMスロットがあるので格安SIMを調べたりしてるのだが、
やっぱ現状、格安SIMを契約するとしたら月額467円(税抜)で低速回線が使えるDTIの「ServersMan SIM LTE」が最有力かなと思ってる。

通話も考えてみたけど、ServersManで通話オプションつけると300円/月の基本料がかかる。
他の格安SIMで通話オプション付きだともっと全然高い。
050から始まる電話番号がもらえて、アプリを起動していれば受信もできるようなんだが、
基本料無しで使えるIP電話って無いかな?

と思って調べてみたら、ありました!
「FUSION IP-Phone SMART」
通話料が高いが基本料が無料のIP電話サービス。
通話料が高いと言っても、値段そのものは同じで30秒単位課金と間隔が短いので、30秒までなら安い。

SIMに050の通話オプションつけても、アプリ使って通話することになるから、
滅多に使わないなら、オプション無しでIP-Phone SMARTにすればいいね。
IP-Phone SMARTは公式アプリもあるが、SIPプロトコルってのに対応してれば非公式アプリでも使えるらしいから、OS変えたりしても使えそう。


だが、他の格安SIMで通話オプション付きはServersManより全然高いが、050じゃなくて090でOS機能で通話できるわけだよね。
アプリ起動してなくても使えるならそっちの方がいいね。
OS機能にSIPプロトコルとやらが標準搭載されていれば違いは無さそうだが・・・

あと、ServersMan凄く安いけど、使わないけど一応欲しい程度だから、ワンコインといえども払うのためらっちゃう。
ほんと、株主優待とかとくとくポイントが支払いに使えるGMOとくとくBBが格安SIMやってくれれば良いんだがなあ・・・
DTIの親会社のフリービットってとこの株主優待でServersManの割引があるんだが、0円になるわけじゃないしな。

Arch Linuxの公式リポジトリにandroid-toolsってのがあった

前はなかった気がするんだが、Arch Linuxの公式リポジトリにandroid-toolsってのがあった。

記憶だと前はandroid-toolsはAURにあった気がするんだが、インストールするのに32bitのライブラリを要求された気がする。
で、できれば32bitのライブラリは入れたくないから、adb使うのにAURのadb-gitパッケージ入れてたんだが、
今Archのパッケージマネージャdで「android」で検索してみたら、
android-tools
android-udev
ってのが出てきた。

android-toolsにadbコマンド入ってるぽいからAURのadb-git消して公式リポジトリのandroid-tools入れてみたが、
adbコマンド使えた!

android-toolsにはadbの他にfastbootコマンドが入ってる。
これは母艦側にROMイメージおいて起動する奴?ちょっとわかんない。
android-udevは母艦用のUSBドライバだろうが、android-tools入れるときには要求されなかった。


公式リポジトリで済んだんで、adbの為にAUR使う必要はないね。

sunxiってのでAllwinnerのカスタムROM作れるのかな?

EMS遅いなー
というわけで、新タブはまだ日本についてないようなんですが、
現タブ ONDA vi10 は不要になる(予備機としては欲しいから文鎮化はできれば避けたいが)から、
カスタムROM乗っけたり、Firefox OSとかUbuntuとか乗っけたりとか、文鎮化の恐れがある行為をちょっと調べてみたんだが、

AUR(Arch Linuxのユーザー作成パッケージのリポジトリ)見たりしてたんだが、
vi10のAllwinner A10用のツールとして、sunxiってのがあった。
いくつかパッケージがあるが、
  • sunxi-livesuite
  • sunxi-awusb-dkms
  • sunxi-mali(sunxi-mali-git)
  • sunxi-tools-git
なんてのがある。

vi10のファームウェア更新(初期化)の際にWindowsでLiveSuiteってAllwinnerのROM焼きツールは何回か使ったが、
sunxi-livesuiteってので、LinuxでAllwinnerのROM焼きができるのかな?
WindowsでLiveSuite使う時、メインPCはLinuxなんでLinuxでやりたいとは思ってた。

WindowsでLiveSuite使う時にUSBドライバをインストールするが、
sunxi-awusb-dkmsってのはLiveSuiteの為の母艦用ドライバな気がする。

sunxi-maliはAllwinner内臓GPUのドライバかな?

sunxi-tools-gitってのはROMイメージのパック・アンパックとかのツールぽい?


新タブが届いたら旧タブで試してみたいが、
まず、sunxi-livesuiteで公式ファームをインストールできるか?
を試して、その後カスタムROMだが、
ONDA vi10の不満なところとして、
  • パーティションが割れててアプリ領域が少なすぎ!
  • 512MBの産廃より遥かにマシだが、メモリ1GBだとアプリ複数起動すると不足する・・・(swap欲しい)
ってところ。
その辺改善したカスタムAndroidイメージ作れれば良いな。
だが、パーティションはブートローダいじることになるし、kernelも公式のは使えなそうだな。
ブートローダいじると文鎮化の危険大だよね・・・

Androidでブートローダとkernelを変更したカスタムROMが成功すれば、
Ubuntuとか他のLinuxとかFirefox OS入れたりするのはさほど難しく無さそうかな?


ちなみに、AURでCPU名で検索すれば、Allwinner以外の機種用のツールも出てくる感じ。

携帯料金かなり節約できそう

先日DOCOMOの契約を見なおして、
不要サービス解除と、完全従量制な感じで基本料が安くなるように変更したが、
My Docomoに反映されてたが、800円くらい安くなりそうな感じ。
無料通話がなくなるので、こっちから全くかけなければだが、滅多に使わないから減るはず。
解除したサービスは来月からかと思ったが、日割りで計算されるのね。
電話屋は料金体系がわかりにくくてブラック企業だと思ってるが、良心的だったw

で、800円も安くなれば、その分で格安SIM契約できるが、
節約できちゃうならもったいないねw
家にいる限りは必要ないものだし。

格安SIM契約するならServersman SIMが最有力かなー思うんだが、
どこ契約するにしろ初期費用が3,000円くらいかかるんだよね。

GMOとくとくBBに格安SIMがあれば株主優待とかで使えそうだが、
残念ながら高速モバイル回線はやってるみたいだが、格安SIMは無いんだよね・・・