2011年2月27日 星期日

Galaxy tab 刷機

我的Galaxy Tab是中華電11月15日第一批出的, 也是我的第一個Android平台. 平常在使用上都很好, 遊戲如憤怒小鳥, 水果忍者, , 應用如Titanium Backup, KK Box, 加上市場, 黑市場, N多市場等眾多資源, 因此Tab反而成了全家人共同使用的手機, 也增加了家裡的樂趣.

也因為Tab, 我才從台灣, 對岸, 或國外的一些網站開始了解Android, 什麼是root, Firmware, 刷機, Market等名詞. Tab使用熟一點後, 發現兩個小不滿, 一個是Samsung Apps一直是空白的, 沒有apps可以下載, 看到有人可以下在NFS Shift,及NOVA, 是蠻羨慕的, 可是也沒有辦法. 另一個是, 檢查Firmware資訊, 電話打 *#1234#, 顯示版本怪怪的, 如下圖:

PDA:
PHONE: P1000ZUJJ2
CSC:

Tab首頁, 設定, 關於手機, 如下圖, 基頻是ZUJJ2


雖然使用上Tab功能都正常, 但看其他人的PDA及CSC都會有顯示相關的版本,而且Tab也有新的台版ROM釋出, 因此產生刷機的想法. 於是看了Mobile01平海大的貼文, samfirmware及國外XDA的許多刷機討論, 瞭解了Tab Firmware的檔案及刷機流程. 我只是初學者, 以下把我瞭解的一些整理出來, 分享給大家.

1. Tab firmware的版本: (可參考i9000類似)
- 主要依地區有分歐美版, 亞洲版, 阿拉伯版等, 再依國家或是電信公司, 及更新版本, 分別以不同的代號代表. 其他的不說, 以台灣版而言, 目前知道有三種代號.
- ZU: 中華電信客制版, 例如P1000ZUJJ2, P1000ZUJK1,.. P1000是Tab的產品代號, JJ2, JK1則是版本編號. 而JK1比JJ2新.
- ZF: 遠傳電信客制版, 例如P1000ZFJK1
- ZT: 台灣open版(不含中華或遠傳的一些客制apps), 例如P1000ZTJK1, P1000ZTJL1, 而JL1比JK1新
- 其他代號如ZH是香港版, DX是東南亞版, XX, XW是歐美版, JP, JV是阿拉伯版

2. Tab firmware檔案內容: (可參考i9000類似)
- 完整版的firmware, 會有PDA, PHONE, CSC三類的檔案, 附檔名以.md5或.tar的壓縮檔, 不完整的Firmware, 就可能只有PDA的檔案. Tab電話打 *#1234# 就會顯示每類的版本.
- PDA: 包含Android OS及附加的系統應用程式, 檔案size會很大, 一般會超過200MB以上
- PHONE: 檔名會內含MODEM字樣, 包含規範無線通訊晶片如何運作的檔案, 無線通訊如Wifi, 藍芽Bluetooth, 3G, GSM, CDMA等等, 無線通訊是跟每個國家或地區使用不同的無線規範相關. 檔案size一般在12MB左右.
- CSC: 是 Carrier Specific Customization簡寫, 檔名會內含CSC字樣, 包含如APN設定, 及跟不同國家或電信公司各自的應用設定. 檔案size一般在12MB-81MB左右.
- 完整firmware跟不完整firmware都可以刷機, 只是步驟會有不同.

以上說明漏漏長, 以下進入刷機實作:

刷機前準備手續:
1. 下載平海大的firmware壓縮檔, 或從對岸的網站找- P1000ZUJK1 及 P1000ZTJL1, 是7z壓縮檔, 要解壓縮.

2. 下載刷機所需軟體(Odin3 v1.7), 及PIT檔(P1_add_hidden.pit). 這兩個檔案可以在網路上找到, 或是到samfirmware.com下載. 注意PIT檔一定要是P1_add_hidden.pit, 不能拿其他名字的pit檔代替. PIT檔的作用, 相當於是Windows系統對硬碟進行分區partition. 用錯了就會刷機失敗.

3. Tab要先root, 可用z4root來做. z4root目前在market上已經沒有, 檔案如附件. 要root的目的是要安裝Titanium Backup做程式及資料備份.
附加壓縮檔: 201012/mobile01-99ea44c8fd9d08bd63bd19c9c12998d7.zip

4. 從Market下載Titanium Backup免費版安裝, 在偏好設定的備份設定, 將”備份資料夾名稱”更改為外部SD卡(原資料夾前要加上/external_sd/), 備份時選”所有應用程式與系統資料”. 如果不更改, 預設會備份到內部SD卡上. 改好後先批次備份一次, 然後看看外部SD卡有沒有TitaniumBackup資料夾內有沒有檔案, 就知道有沒有成功. 等刷機完成後, 再用Titanium Backup將應用程式及資料還原安裝回去Tab. 請看下圖 External Storage及備份目錄的地方.


5. 我的打算是將ZUJJ2中華電信版升級刷為ZUJK1中華電信版, 再刷為ZTJL1台灣open版.

補充: 請看我最底下12/23補充2, 刷機前先備份 efs 資料夾, 以免發生刷機失敗 imei 碼不見的情形. 我刷機前是沒做, 還好刷完後imei還在.

刷機過程:
1. Tab先充好電, 首頁, 設定, SD卡和行動電話儲存空間, 卸載SD卡, 來將外部SD卡卸載, 關機後將外部SD卡拿出.

2. 開機做hard reset回復出廠設定(首頁, 設定, 隱私設定, 重設為原廠設定, 或是電話 *2767*3855#), 這個步驟沒做應該也行, 我是要先把檔案清乾淨.

3. 在PC上把刷機軟體Odin3 v1.7及P1000ZUJK1的檔案放在同一資料夾下, 一共有5個檔案: Odin3 v1.7.exe, P1_add_hidden.pit, P1000ZUJK1-REV03-ALL-CL712217.tar.md5, MODEM_P1000ZUJK1_REV_00_CL644164.tar.md5, 及GT-P1000-CSC-CWTJJ3.tar.md5

4. 依照平海大介紹的步驟(http://www.mobile01.com/topicdetail.php?f=568&t=1899849)
- 此時Tab先不連上PC, 在PC上開啟Odin3 刷機軟體, 在Re-partition, Auto Reboot, F. Reset Time打勾, 然後點PIT, 選P1_add_hidden.pit
- PDA選P1000ZUJK1-REV03-ALL-CL712217.tar.md5)
- PHONE選MODEM_P1000ZUJK1_REV_00_CL644164.tar.md5
- CSC選GT-P1000-CSC-CWTJJ3.tar.md5
- 在Tab上同時壓下”音量下鍵”+”開機鍵”,進入”Download mode”, 然後將Tab接上電腦USB
- 等到Odin3抓到COM port後(COM port #視電腦而不同), 按Start開始刷機, 過2-3分鐘後就刷好了.
- 刷機完成出現PASS後, Tab跟電腦斷開, 再做一次hard reset *2767*3855#, reset後輸入*#1234#來確認升級後的版本

5. 我刷好ZUJK1中華電信版後的圖如下:
- 電話 *#1234#, 查詢升級後的版本

- 關於手機的圖, 基頻是ZUJK1

- 首頁的圖, 中間右方有中華電Hami widgets

- 程式頁面, 最上方有四個Hami的widgets

- 點Samsung Apps出現有9個apps可以下載, 其中有NFS Shift, NOVA. 終於可以下載了


6. 接著繼續把ZUJK1刷成ZTJL1(試驗性質, 要把Hami widgets拿掉). 在PC上把刷機軟體Odin3 v1.7及P1000ZTJL1的檔案放在同一資料夾下, 一共有4個檔案: Odin3 v1.7.exe, GT-P1000-CSC-BRIJJ1.tar.md5, MODEM_P1000ZTJL1_REV_00_CL614387.tar.md5, P1000ZTJK1-REV03-ALL-CL712217.tar.md5. 此處沒有P1_add_hidden.pit, 因為在刷ZUJK1時, 已經做過了分區re-partition, 不需要再重做.

7. 刷ZTJL1步驟:
- 此時Tab先不連上PC, 在PC上開啟Odin3 刷機軟體, 因為沒有PIT檔, 所以Re-partition不要打勾, 在Auto Reboot, F. Reset Time打勾. 切記沒有pit檔時, 如果Re-partition打勾, 就會刷機失敗.
- PDA選P1000ZTJK1-REV03-ALL-CL712217.tar.md5
- PHONE選MODEM_P1000ZTJL1_REV_00_CL614387.tar.md5
- CSC選GT-P1000-CSC-BRIJJ1.tar.md5
- 在Tab同時壓下”音量下鍵”+”開機鍵”,進入”Download mode”, 然後將Tab接上電腦USB
- 等到Odin3抓到COM port後(COM port #視電腦而不同), 按Start開始刷機, 過2-3分鐘後就刷好了.
- 刷機完成出現PASS後, Tab跟電腦斷開, 再做一次hard reset *2767*3855#, reset後輸入*#1234#來確認升級後的版本

8. 刷好ZTJL1台灣open版後的圖如下:
- 電話 *#1234#, 查詢升級後的版本

- 關於手機的圖, 基頻是ZTJL1

- 首頁的圖, 沒有中華電Hami widget

- 程式頁面, 上方已經沒有Hami的widget

- 點Samsung Apps出現有9個apps可以下載, 跟刷ZUJK1一樣


9. 程式及資料回復 - 刷好新firmware後, 把外部SD卡插回Tab上, root Tab(使用z4root), 從market下載Titanium Backup免費版安裝, 把”備份資料夾名稱”改到外部SD卡的TitaniumBackup資料夾, 然後按“備份/還原”, 就會列出所有已經備份的程式, 找到你要還原的程式, 輕輕點擊就可以把程式及資料安裝還原回去.

以上是Tab初學者對刷機的研究及實作分享, 大家鼓勵鼓勵.
---------------------------------
12/22補充: 其實是可以直接刷到ZTJL1, 不用中間多刷ZUJK1的. 不過直接刷ZTJL1時, 要用刷ZUJK1的方式.

12/23補充1: 刷完後, 感覺使用上差別不大, 跑Quadrant Standard 是1012, 可能要OCLF後才會更快(arickwu大的分數2244), 重點是 Samsung Apps 終於可以下載遊戲 NFS Shift, 跟NOVA, 這可是免費的.

12/23補充2: 看 macleod 大回文提醒, 及參考 XDA 上 i9000 刷機 efs 備份 的貼文, 最好先備份Tab上 efs 資料夾到外部SD卡上, 以免發生刷機失敗 imei 碼不見的情形. 我自己刷機前是沒有做, 還好 imei 還在. 亡羊補牢, 趕快做備份, 步驟如下:
- 電話打 *#06#, 會顯示imei碼, 一共15碼.
- Tab要root, 到 market 下載 rootexplorer, 或是對岸漢化後叫 R.E.管理器安裝
- 在根目錄下就會看到 efs 資料夾, 按 efs 久一些, 會出現選項, 選copy, 然後下拉到 sdcard 資料夾下, external_sd 資料夾, 點 paste, 就會copy到外部SD卡上.

12/23補充3: 預備安裝OCLF, 讓Tab操作更順. 可到 此 blog , 參考安裝過程, 也還蠻簡單的.
- 在先安裝好Ext2 tools後, 要再按Available做第二步OCLF安裝, 要等幾分鐘, Tab會自動重啟.
- 我安裝後跑 Quadrant Standard, 效能分數由安裝前是1012, 提高到2083.
- 如果以後還要再重新刷機, 需要記得先把 OCLF 反安裝才能去刷機

2011年2月16日 星期三

Linux without rescan disk

As a system admin, I need to use additional hard drives for to provide more storage space or to separate system data from user data. This procedure, adding physical block devices to virtualized guests, describes how to add a hard drive on the host to a virtualized guest using VMWare software running Linux as guest.

It is possible to add or remove a SCSI device explicitly, or to re-scan an entire SCSI bus without rebooting a running Linux VM guest. This how to is tested under Vmware Server and Vmware Workstation v6.0 (but should work with older version too). All instructions are tested on RHEL, Fedora, CentOS and Ubuntu Linux guest / hosts operating systems.

Step # 1: Add a New Disk To Vm Guest

First, you need to add hard disk by visiting vmware hardware settings menu.
Click on VM > Settings

Fig.01: Vmware Virtual Machine Settings

Fig.01: Vmware Virtual Machine Settings

Alternatively you can press CTRL + D to bring settings dialog box.

Click on Add+ to add new hardware to guest:

Fig.02: VMWare adding a new hardware

Fig.02: VMWare adding a new hardware

Select hardware type Hard disk and click on Next

Fig.03 VMware Adding a new disk wizard

Fig.03 VMware Adding a new disk wizard

Select create a new virtual disk and click on Next

Fig.04: Vmware Wizard Disk

Fig.04: Vmware Wizard Disk

Set virtual disk type to SCSI and click on Next

Fig.05: Vmware Virtual Disk

Fig.05: Vmware Virtual Disk

Set maximum disk size as per your requirements and click on Next

Fig.06: Finalizing Disk Virtual Addition

Fig.06: Finalizing Disk Virtual Addition

Finally, set file location and click on Finish.

Step # 2: Rescan the SCSI Bus to Add a SCSI Device Without rebooting the VM

A rescan can be issued by typing the following command:
echo "- - -" > /sys/class/scsi_host/host#/scan
fdisk -l
tail -f /var/log/message

Sample outputs:

Linux Vmware Rescan New Scsi Disk Without Reboot

Fig.01:Linux Vmware Rescan New Scsi Disk Without Reboot


Replace host# with actual value such as host0. You can find scsi_host value using the following command:
# ls /sys/class/scsi_host