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可以看到分區擴容了
以上是個人遇到擴容問題時的解決過程記錄,若有錯誤和不足,請指正。