Android手機上如何實現data2ext

Android手機上如何實現data2ext    
做者:ygps2002    
相關帖子:    
1,[教程]G7刷機詳細教程:解鎖S-OFF,ROOT提取,CM-7.0.3ROM刷機    
2,[教程]Android手機上如何無痛替換SD卡,擴展存儲空間    
3,[教程]Android手機上如何實現data2ext  --->本貼    
4,[文章]磁盤的邏輯構造(參見: wenku.baidu.com/view/3e0c18a4f524ccbff1218413.html)    
5,[教程]活用Android手機上的GPS日誌+地圖語音導航    
6,[體驗]當G7遇到小米    
關鍵詞:    
SD卡    
格式化      
分區      
data2ext      
ext3分區      
app2sd      
ROM
   
data2ext的必要性:    
        你們在買了Android手機後,對操做界面的高人性化,免費應用軟件的多樣及大量遊戲的方便安裝感嘆以後,就會碰到內存不足的瓶頸。稍懂些計算機的人可能以爲早期的手機內存只有幾十KB,幾十MB都用的挺好,爲啥Android手機都超500MB還不夠用,是否是android系統很差呢?固然不是,偏偏是Android系統太好了,因此才須要更多內存。看看Android手機裏安裝的那麼多應用軟件,給用戶帶來之方便已經快遇上普通PC,甚至超過平板電腦和上網本的狀況來看,消耗一些內存也以爲值當。想起Nokia,Sony-Ericsson,motorola早期的手機除了打電話外沒有其餘任何功能還賣好幾千大洋,該珍惜Google的Android帶給咱們的實惠,這是真正的Nokia,Sony- Ericsson,Windows,iOS的顛覆者。免費這杆大旗更應該在中國扛下去。    
言歸正傳,既然買來的Andoird手機內存不足了,那麼如何能騰出內存空間呢?早期的問題解決辦法是app2sd,再改進就是app2sd+,如今到了data2ext了。本人手機進行的data2ext,system2ext試驗結果共享出來,你們參考。    
《事先準備》    
手機端:    
             手機已是S-OFF解鎖完畢,ROOT受權提取完畢;(詳細參見本人文章:如何無痛ROOT提取)    
             手機上的Recovery分區刷了第3方(Clockmodwork)的鏡像程序;    
             RE(RootExplorer安裝完畢);    
             其餘確認手機ROM,RAM,SD卡等信息的軟件(如MiniInfo,系統監控等任意APK應用都可)。    
PC端:    
             Android開發工具包,能執行ADB shell命令;    
             Andoird開發USB驅動安裝完畢;    
SD卡:    
             格式化好的SDHC卡(C6高速8GB),分區詳情SWAP:0GB+ext3:2GB+FAT32:2GB=共8GB。    
《data2ext詳細步驟》    
        Android系統(底層Linux內核)在啓動時,對各個磁盤分區的加載模式有所區別,其中/data分區是以可讀寫模式(R/W)加載上的,因此用戶安裝的軟件+數據均保存於此分區,如/data/app,/data/app-private,運行時的緩衝/data/dalvik-cache 等,這樣實現了用戶安裝軟件運行。但系統分區/system是以只讀方式(R/O)加載的,因此不容許卸載,修改自帶的系統及應用軟件,也不容許將APK 安裝到此分區。    
       下一節再來實驗稍複雜些/system分區數據移動到miniSD卡的ext分區(如下簡稱:sd-ext)。先來簡單看看/data分區的數據(含軟件)如何移動到sd-ext分區吧。    
       基本思路很是簡單,就是利用Linux/Unix系統中的文件目錄軟鏈接(soft link)來實現的。    
STEP-1,將手機與PC用USB鏈接好,確認手機端容許程序調試(手機不要以移動磁盤鏈接到PC);    
STEP-2,PC端打開DOS命令行(DOS Prompt);    
STEP-3,將當前目錄轉到ADB工具安裝的目錄(如:d:\android\tools);    
STEP-4,確認設備已鏈接好(能夠看到設備號爲0123456789ABCDEF的手機已鏈接好)後,進入adb shell;    
image001.png    
STEP-5,以su身份執行下面全部的操做,確認每一步結果正常;    
image003.png    
      上圖中第一個框中爲將/data分區的這3個目錄移動到/sd-ext/data下,同時刪除了/data目錄下的這3個目錄;第2個框爲在/data 目下創建3個軟鏈接(ln 命令);第3個框爲確認鏈接已正常創建。倒數第2行的du命令是確認/sd-ext/data目錄的容量大小,也就是從原/data分區下移動了 160MB數據到sd-ext分區,也即給手機自帶ROM騰出了160MB存儲空間,非常可觀了。重啓手機以前最好不要經過手機觸摸屏進行任何操做了,儘快執行reboot。    
STEP-6,重啓手機後,經過自帶及安裝的內存確認軟件,能夠看到手機內部存儲應該空餘出了160MB,同時sd卡的ext分區的可用空間少了160MB。    
      至此,恭喜你data2ext成功了。之後任何APK安裝將只消耗sd卡上的ext分區,而不消耗手機自帶存儲空間。能夠放心安裝大型APK了。這個結論不是那麼嚴格,但也八九不離十,隨後會明白緣由的。    
      可能有的機油可能會問,/data目錄下有不少數據,爲何只將這3個目錄遷移到sd-ext分區,其餘的不行嗎?聰明勤奮的機油想一想會明白的,此處略去。    
《system2ext詳細步驟》    
      除了data2ext外,可不能夠將system分區中的數據也遷移到ext分區呢?抱着窮追猛打的冒險精神,驗證了system2ext的可行性。結果證實徹底能夠和data2ext達到相同的效果。但操做上與data2ext有一處不一樣,就是前面提到過的/system分區在系統中是以只讀方式被加載的,按照上面的步驟可能會碰到不能遷移(刪除),不能拷貝或是不能新建文件鏈接等錯誤提示。此時須要藉助RE(RootExplorer)軟件來配合。    
STEP-1STEP-4,同data2ext;    
STEP-5,以su身份執行下面全部的操做,確認每一步結果正常;    
image005.png    
STEP-6,手機端打開RE瀏覽器,以R/W方式從新加載/system分區;    
image007.png    
      用手指輕觸[Mount R/W]按鈕,這時按鈕左邊的文字信息會有R/O變爲R/W,按鈕則變爲[Mount R/O]。    
STEP-7,繼續下面的操做,創建軟鏈接至/sd-ext分區上的目錄,用ls –l確認後重啓手機;    
image009.png    
      確認鏈接結果創建正常,並能夠看到/system/app目錄的大小爲121.1MB。    
image011.png    
STEP-8,確認手機重啓正常,各類軟件正常運行後,再次用USB鏈接到PC,執行如下操做;    
image013.png    
      上圖中的黃字內容跟第6步同樣,須要手機端RE配合;刪除掉app2目錄後能夠看到/system分區的存儲空間空餘出了大約50MB。    
image015.png    
STEP-9,若是一切運行正常,能夠將/system分區回覆成以R/O加載方式,或是重啓手機。    
     再次聲明一下,本人驗證時使用的是Class6的SDHC卡,若是Class4如下的卡建議最好別用data2ext,除了速度慢會卡屏之外,也有可能會影響卡的壽命。    
免責聲明:    
1,示例中全部所用軟件均是免費軟件或是破解版。    
2,本人基本不使用付費軟件,但支持付費使用,反對盜版軟件。    
3,對於盜版軟件或是破解軟件,僅限於我的使用,不同意商業或是網絡傳播。    
4,大量使用免費軟件或是破解版軟件,能夠節約大量銀子,節能環保!    
(完)    
2011.10.01css

相關文章
相關標籤/搜索