Ubuntu編譯Android源碼過程中的空間不足解決方法


   Android源碼一般幾十G,就拿Android5.0來說,下載下來大概也有44G左右,和編譯產生的文件以及Ubuntu系統占用的空間加起來,源碼雙倍的空間都不夠有。編譯源碼前能分配足夠的空間再好不過,但往往事后才發現分配的空間不夠用也在所難免,一下是本人遇到空間不足以及解決過程的記錄。

  在此之前,先講些相關情況,裝Ubuntu之前最好能把/boot分區和編譯Android源碼的目錄所在分區分開安裝,單獨出來,以免編譯源碼的目錄滿了的時候關機后再登錄,這時就會黑屏進不了桌面。

     Ubuntu系統(虛擬機里)擴容編譯Android源碼的目錄所在分區,首先關閉Ubuntu系統,單擊虛擬機(M) ->   設置->    (硬件)硬盤 ->   使用工具  -》擴展  就會彈出擴展磁盤容量的對話框,然后輸入要擴展到的容量,最后點擊擴展。安裝Ubuntu分區不多的情況也許往往到這里就完事了,但是Ubuntu系統安裝多個分區的時候,往往要借助圖形分區工具gparted Live來調整分區大小或移動分區。   下載gparted Live工具,它是一個鏡像文件。

    圖形分區工具gparted Live來調整分區大小或移動分區

   1. 安裝圖形分區工具gparted Live

        虛擬機里Ubuntu系統關閉前提下

      (1)在右邊的“連接”里選  “使用ISO鏡像文件(M)”  添加下載的gparted Live鏡像文件。     

      (2)“設備狀態”里選上 “啟動時連接”

        

    2.啟動gparted Live。  

         (1)首先啟動Ubuntu系統,當進入vmware倒計時界面,迅速點擊鼠標進入系統按Esc鍵,

   

   這一步,可能時間很短暫,來不及反應就已經跳過該界面啟動系統了,網上有vi /etc/inittab修改啟動優先級的方法來停留在該界面,但新版本的Ubuntu系統已經找不到目錄/etc/inittab下的文件,這時可以修改Ubuntu系統安裝目錄里的后綴名為vmx的配置文件,添加bios.bootDelay = "10000"並保存即可。

  按Esc鍵,進入選項菜單選擇CD-ROM drive

   

  以下圖Enter鍵就可以了

 

接着分別輸入26、0就能進入磁盤擴容界面

 

 

新擴容的空間會出現在Linux-swap分區下方(因為當時操作時沒有截圖,所以用了上方的舊圖),並且沒有被格式化,這時

     (1)右擊Linux-swap分區選擇刪除分區,新擴容的空間會和刪除后的Linux-swap空間合並在一起,

     (2)右擊(1)的空間選擇新建和鄰近的/dev/sda4一樣ext4格式的分區,

     (3)通過按鈕”調整大小/移動“按鈕,左右拖到分區條來改變分區空間大小,並且只能改變相鄰分區的大小,

     (4)重新新建已刪除的Linux-swap分區

     (5)點擊Apply按鈕,這時只需等待系統完成分區擴容

     (6)點擊close

      (7)點擊左上角菜單欄,退出

      (8)雙擊左上角按鈕,退出gparted Live

     

3.取消”啟動時連接“恢復虛擬機設置,刪除BIOS時間設置或改小時間

4.啟動虛擬機,也許會出現以下的登錄界面

這是刪除后又新建的Linux-swap分區未掛載的原因,跳過進入Ubuntu系統修改配置文件即可

進入Ubuntu系統可輸入命令free -m查看swap為0,下圖僅用作示例(另圖中數據顯示可能圖與圖之間不對,因為用的是舊圖,但不影響示范作用)

 

 (1)輸入blkid命令查看當前分區UUID號,另外也可以另外打開一個終端輸入cat  /etc/fstab命令,對比一下相應的分區UUID號哪個不相同,一般都是swap分區改變了,復制swap  UUID號

 

  (2)輸入vi  /etc/fstab命令,刪除里面的swap  UUID號,並粘貼UUID號,保存。

 

    (3)重啟Ubuntu系統,重啟之前,也可以用命令df -h查看分區擴容情況

     (4)用命令free -m 查看swap是否不為0,不為0,說明已經成功了,上一步df -h可以看到分區擴容了

 

以上是個人遇到擴容問題時的解決過程記錄,若有錯誤和不足,請指正。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM