标签归档:VirtualBox

VirtualBox虚拟机磁盘结构-WinHex模板

以下是VirtualBox虚拟机磁盘结构的WinHex模板,研究此结构的可以借鉴。

 

template "VirtualBox虚拟机磁盘结构 v1.1"
description "VirtualBox虚拟机磁盘结构 v1.1"

sector-aligned
applies_to disk
requires 0x0 "3C 3C 3C 20 53 75 6E 20 56 69 72 74 75 61 6C 42 6F 78 20 44 69 73 6B 20 49 6D 61 67 65 20 3E 3E 3E"

begin

Char[64] "标签"
Hex 4 "标签 7F 10 DA BE"
Uint16 "版本号高"
Uint16 "版本号低"
Uint32 "结构大小(字节)" //从当前位置开始
Hex 4 "磁盘类型" //1动态扩展 2固定大小
Hex 4 "镜像标志"
char[256] "镜像备注"
UInt32 "offBlocks"
UInt32 "数据区起始偏移地址(字节)"
Section "老标准"
UInt32 "柱面"
UInt32 "磁头"
UInt32 "扇区"
UInt32 "扇区大小(字节)"
Section ""
Uint32 "BIOS的硬盘转换模式(现在未用)"
Int64 "虚拟磁盘大小(字节)"
UInt32 "块大小字节数"
Uint32 "附加块"
UInt32 "块总数"
UInt32 "使用中的块数"
numbering 1
section "镜像 UUID"
{
read-only guid "GUID (GUID~)"
move -16
hex 16 "GUID (HEX~)"
section ""
}[4]
Section "新标准"
UInt32 "柱面(新建时为0)"
UInt32 "磁头(新建时为0)"
UInt32 "扇区(新建时为0)"
UInt32 "扇区大小(字节)"

Section "说明:"
Section ""
Section "位图项总数=要新建虚拟硬盘大小(GB)*1024"
Section ""
Section "vdi虚拟硬盘文件大小(字节)="
Section "要新建虚拟硬盘大小(GB)*1024*4+512"
Section ""
Section "一块大小为2048扇区1048576字节1MB)"

end

VirtualBox 安裝 Android-x86 4.0

首先要下載 VirtualBox 跟 Android 4.0 X86 ISO,記住要下載的是 android-x86-4.0-eeepc-20111209.iso這個版本,其他的版本可能會無法安裝在 VirtualBox 上。

電腦一台,作業系統 Windows XP, Windows 7, Linux, MacOS 都可以
Oracle VirtualBox
Android 4.0 x86 ISO
目前 Android-x86 4.0 iso 已經推出新版本(20120101),不過新版本有一些小問題,會無法進入系統。
舊版本(20111209)可以在這裡下載。

下載完 VirtualBox 直接安裝就可以了,不用多作設定。

新建一個虛擬機器

開啟 VirtualBox 可以看到 VirtualBox 的介面,目前是沒任何虛擬機器的,接著點選新增來新增一個虛擬機器。

接著再設定虛擬機器的作業系統要選擇 Linux 及 Linux 2.6 ,名稱的部份就可以自行設定,這裡院長設定成 Android 4.0。

預設的記憶體是256MB,如果要調整的話輸入想要的大小就可以,這裡院長調整成 768MB。

接下來的設定保持預設值一直下一步就可以了,接著到最後一步檢視剛剛作的設定,沒問題的話點選建立就會完成建立虛擬機器的步驟。

建立完虛擬機器後就會回到 VirtualBox 的主介面,同時也可以看到剛剛新增的虛擬機器已經出現在列表上了。

調整虛擬機器的設定

建立好虛擬機機器後還要調整一些設定才能讓我們順利地安裝 Android-x86。

選擇 Android 4.0 這個虛擬機器,接著再點選設定值開啟虛擬機器的設定畫面。

掛上ISO檔

切換到存放裝置分頁,選擇左邊IDE控制器下的*DVD光碟機,接著點選右邊光碟的圖示並點選選擇虛擬 CD/DVD 磁碟檔案…。

選擇 android-x86-4.00-eeepc-20111209.iso 這個 ISO 檔

接著就會回到設定畫面,同時可以看到 Android ISO 檔已經掛上虛擬機器上的光碟機了。

設定網路

接著切換到網路分頁,接著在介面1的部份修改成以下的設定,設定完點選確定就可以完成虛擬光碟及網路介面卡的設定,並且回到主介面。

安裝 Android 4.0 x86

回到主介面後,點選虛擬機器並且點選啟動就會開啟虛擬機器。

很快地就會進入安裝介面,在安裝介面中只能使用鍵盤來操作,上下左右是選擇選項,Enter 則是確認選項。

進入安裝畫面後選擇 Installation – Install Android-86 to harddisk 來安裝 Android-x86 4.0。

完成光碟啟動後,第一次安裝要先建立 partitions ,選擇Create/Modify partitions。

進入 cfdisk 後,上方是目前有的磁區,下方是功能列,目前是沒有任何磁區的,選擇 NEW 來建立磁區。

設定磁區的屬性為 Primary

接著再設定磁區的大小,預設會是全部的容量,基本上不用變動直接 Enter 就可以了。

建立完後就會回到 cfdisk 的主畫面,一切正常的話,可以看到上方會出現剛剛建立的磁區。接著將這個磁區設定為 Bootable,這樣安裝完後就會以這個磁區作為開機磁區。

設定完開機磁區後會看到上方磁區在 Flags 欄位標記為 Boot 就表示已經設定完成,到了這邊還不算完成建立磁區的工作,還要進行最後一步,將剛剛磁區的設定寫入硬碟。

用鍵盤移動游標到 Write 選項,同時 按下 Enter。

在真正寫入硬碟前還會再詢問你一次,是否將設定寫入硬碟,在這個步驟必須使用鍵盤輸入 yes 並且按下 按下 Enter,這樣才會真正地將磁區設定寫入硬碟。

磁區寫入硬碟後會回到 cfdisk 的主畫面,這時就可以離開 cfdisk,選擇 Quit 就會離開 cfdisk

接著就會回到 Android-x86 的安裝畫面,這時就可以選擇剛剛建立好的磁區來安裝 Android-x86。

接著會詢問要格式化成那一種檔案格式,選擇 ext3 就可以了。

接著會再詢問你是否要格式化這個磁區,選擇 Yes 來格式化這個磁區。

接著會詢問是否安裝 GRUB,一樣 選擇 Yes。

接著會詢問是否將 /system 這個資料夾安裝成 read-write,這裡也一樣 選擇 Yes,接著就會開始安裝 Andorid-x86。

安裝的速度很快,同時安裝完後會詢問你是否要製作一個假的 SD Card 這裡當然要選擇 Yes

接著設定 SD Card 的大小,預設就是最大值 2047MB,只能往下調整,調整完 按下 Enter,就會進入製作 SD Card 的步驟。

製作完 SD Card 後,就正式安裝完 Android-x86 了,選擇 Reboot 讓虛擬機器重新開機吧!

重新開機後,因為預設還是光碟開機,所以在一開機時要按下 F12 選擇由 Primary Master 開機。

另外,也可以進入虛擬機器的設定裡的系統分頁,將開機順序調整成硬碟開機,這樣就不用每次都要按 F12 選擇開機磁碟。

開機後會進入 GRUB Boot loader,這裡直接選擇第一個就可以了。

接著就會進入 Android-x86 的開機畫面了。

另外,要停用虛擬機器與 Host 的滑鼠整合,這樣才能在 Android-x86 的虛擬機器中使用滑鼠。

稍待一會就會進入 Android-x86,一開始會跟第一次使用 Android 一樣。左邊的語言設定預設是 English,可以調整成繁體中文。

接下來的設定都可以直接下一步,不過到了設定 Google 帳戶這個階段,因為沒有網路連線所以選擇暫時不要。

設定完後就會進入 Android-x86 4.0 的桌面,進入後右上角就是 App 的清單

點選後就會開啟 App 的清單。

設定網路

剛安裝好的 Android-x86 4.0 是無法連線到網路的,因為還未設定網路的 IP 位址,這裡必須要手動地設定 IP 位置。

在 App 清單中開啟 Terminal Emulator。

開啟後會出現終端機介面,接著輸入 ip a 就會列出目前的網路卡。這裡可以看到 eth0 目前是還沒有設定 IP 的狀態

設定 IP 可以透過手動設定 IP 或者也可以透過 DHCP。

透過 DHCP 取得 IP

如果你的網路環境有 DHCP Server 的話,透過 DHCP 的方式取得 IP 是最簡單的方式。

在終端機輸入

su

dhcpcd eth0

接著就會自動取得 IP,可以再輸入 ip a,這時就會看到 eth0 已經透過 DHCP的方式取得 IP。

手動設定 IP

當然也可以透過手動設定 IP 的方式來設定 IP。

在終端機輸入

su ifconfig eth0 192.168.10.250 netmask 255.255.255.0 up route add default gw 192.168.10.1 dev eth0

設定 DNS Server

接著再設定 DNS Server

在終端機輸入

setprop net.dns1 8.8.8.8

設定完後就可以使用內建的瀏覽器上網試試看網路是否有設定成功。

到了這邊,安裝 Android-x86 4.0 的步驟就已經告一段落了,雖然可以上網,但是還是不能設定 Google 帳號,因為 Android-x86 4.0 只認得 WiFi 裝置,所以沒有 WiFi 裝置就會被當成沒有網路連線,希望這個功能可以在之後的版本被修正。