1.VMWare 簡介
1.1 什麼是VMWare.
VMWare是比較流行的虛擬軟體,它可以在Windows上類比一台虛擬機器,安裝任何基於X86的作業系統.
– 它也有Linux版本,這樣可以在Linux安裝Windows
– 更新的伺服器版VMWare ESX已經不需要作業系統了.直在一台硬體上虛擬出N個機器,現在很多IDC(互連網伺服器商)採用這一技術,把一台多核機器分隔成N台虛擬機器給不同網站使用.
VMWare也有LINUX版本.
1.2VMWare優點
– 完全利用宿主機的硬體,虛擬出一套標準硬體.
– 安裝方便,所有資訊實際上存在幾個檔案當中,出錯刪除即可,不影響HOST,備份也很容易.直接拷貝檔案就行
– 而且可以任意在其它機器上使用,比如把安裝虛擬機器檔案放在移動硬體上,就可以到處使用
– 支援暫停功能,長時間操作可以暫時停下來.下次再運行.真實的機器無法做到這一點
– 可以利用光碟片的鏡像檔案虛擬成光碟機進行安裝.這樣從網路下載的光碟片檔案無需象真實機器一樣燒錄成光碟片才能安裝作業系統
– 可以類比出更多硬體用於測試,如類比出多塊網卡的機器用於防火牆測試.
1.3. VMWare的應用場合
安裝一個作業系統,想試用另一個作業系統
– 如安裝Windows,開發或測試使用Linux,用VMWare比安裝雙作業系統要安全的多
病毒,木馬分析
– 用一個虛擬機器讓這些傢伙隨便折騰,用於分析
作業系統調試
– 如安裝在直實硬體,只有一台機時,很多工具無法使用,用虛擬機器就方便不少.
1.4. 為什麼在VMWare安裝Linux
教學的環境整個體繫結構仍然是Windows.而且學生大多熟悉Windows,因為整個學習和開發環境還是以Windows為主,最佳的方案還是在VMWare安裝
VMWare的Linux可以直接原來虛擬機器檔案無需安裝.
學生也可以自行安裝與教學無關的虛擬機器
2.關於VMWare 虛擬機器的網路類型
因為開發虛擬機器需要大量與外界通訊.因此如何配置虛擬網路至關重要.
2.1 VMWare 分三種狀態
– Bridge 模式(橋接模式)
– HostOnly 模式
– NAT模式
三種模式採用不同通訊機制,Bridge 模式是在真實的網卡上綁定一個Filter ,HostOnly 模式是在Host作業系統中建一個虛擬網卡VMnet1,然後虛擬機器與VMnet1通訊.NAT模式則是使用VMnet8與虛擬機器通訊
2.2 Bridge模式
前提是必須接入網路當中,否則跟Host都無法通訊.因為真實網卡必須要連入網路才啟用
2.3 Host Only 模式
使用虛擬網卡VMNet1與宿主機通訊,不能連到區域網路上.
2.4 NAT 模式
使用虛擬網卡VMNet8與宿主機通訊,不能連到區域網路上. 在宿主機實現一個NAT伺服器
– 注意:NAT伺服器, VMWare都Windows一個應用程式,這裡分開只是為示範需要
2.5 Bridge Filter
Bridge 模式實現是在真實網卡綁定一個過濾器來實現,這說明Bridge必須要綁在一個真實網卡,有多個網卡時,要指定綁在哪個網卡上
兩個虛擬網卡
2.6. 在建立虛擬機器模式的選擇
如果虛擬機器位於一台IP網路中主機之上.並且這台虛擬機器需要與網路上其它主機通訊,則選擇Bridge模式
如果是一台單機,並且沒有網線與外界串連,此時網卡不啟用,此時用Bridge 模式將無效.比較好的選擇是HostOnly,這樣虛擬機器的網卡IP與VMNET1網卡的IP在同一網段即可進行通訊.
NAT比HostOnly模式多了一個內建的NAT網關.其餘配置差不多.
3.putty訪問虛擬機器中的LINUX
putty控作LINUX比直接在虛擬機器控制台操作更方便,因此使用較多,但是如果配置不對經常容易造成訪問不到的情況.
在絕大部分情況下,開發人員希望Windows作業系統與VMWare的Linux進行網路通訊,比如用Putty登入到Linux上,用Samba共用檔案等等,在不同的環境下,VMWare要結合Linux進行不同配置,很多初學者經常配不通兩者之間的網路,因此就有這一章節
3.1 第一點: 設定虛擬機器網路模式
– 如果是物理主機是一台單機選擇hostOnly模式,是網路主機選擇bridge模式,單機即使用是有物理網卡,強制選擇bridge模式,因為此時網卡未被啟用,網路仍然無法連通,網路主機也能選擇hostOnly模式,缺點就是只能是本機才能訪問虛擬機器,網路其它主機將無法訪問虛擬機器.
– hostOnly模要選擇一個VMnet1網卡,
– Bridge模式要選擇綁定在物理網卡上的VMnet0,如果一台機上有多個物理網卡,可以通過Manager Virtual Networks功能指定VMnet0綁定在某一塊網卡之上.
3.2 第二步:確定的主機訪問模式.
– 如果需要從虛擬機器訪問Windows主機,請確認Windows的防火牆是否關閉,一般需要關閉才能訪問,(或者把需要訪問的服務設為防火牆例外,當然這有點麻煩)
如從Linux用ftp 用戶端訪問Windows的FTP伺服器
如果採用Windows內建的防火牆在¡±控制台->Windows防火牆¡±中查看和設定
但如果Windows主機如果位於網路之上,將處於沒有防火牆保護的危險狀態.此時可以選擇HostOnly模式,這樣無需關閉防火牆,但這樣意味網路上其它主機無法直接存取虛擬機器
– 如果需要從Windows訪問虛擬機器,請確定虛擬機器的Linux防火牆是否關閉. 一般需要關閉才能訪問,putty即採用這一模式.
關閉和開啟可在圖形的介面的¡±主菜單->系統設定->安全層級 介面中查看和設定
3.3 第三步:配置IP網路
– 在同一個區域網路中,兩台主機必須處理一個IP子網才能進行通訊
判斷是否處理一個子網的方法是把本機IP地址與上子網路遮罩,如果得到結果表示網路號,如果它一致表示位於同一個子網
如本機ip 是192.168.1.136,子網路遮罩為255.255.255.0 則網路號 192.168.1.0
– 用ifconifg 配置Linux的IP和掩碼
ifconfig eth0 192.168.1.136
– 在Windows下用圖形介面的¡±網路連接->網卡->TCP/IP進行配置,可用ipconfig /all來查看IP
– 如用putty訪問Linux,需要保證從Windows下用ping命令能ping 通Linux,如果連通則基本上用putty訪問沒有問題
4.嵌入式Linux 虛擬機器的配置
在用於嵌入式LINUX開發當中。為了方便不同的情境進行開發。我總結要配置成如下結構比較方便開發。
4.1 雙網卡模式
預設的網卡設為bridge模式,用於與共它機器通訊,一般是192.168.1.X網段。
當虛擬機器建立後,停止虛擬機器運行。在虛擬機器設定當中。然後新增一個網卡.採用hostOnly模式,一般網段設為 192.168.2.x網段。
第二塊網卡是儲存在任何情況下(單機,網路)都能讓Putty和samba能以固定地址訪問到虛擬
4.2 關於虛擬機器使用USB轉口串口
一般筆記本沒有串口,使用USB轉串口來聯結開發板。如果想虛擬機器和WINDOWS都能用這個串口,在虛擬機器要做如下配置。選擇新增一個串口。在串口配置做如下配置.
使用物理串口,並在物理串口選擇“USB串口”對應用裝置名稱。在虛擬機器中,這樣可以直接使用 /dev/ttyS0 來操作串口。
注意:虛擬機器仍然是一個應用程式。因此如果其它應用程式使用串口。在虛擬機器中將打不開串口,反過來一樣,如果需要臨時性把虛擬機器串口停用,可以在串口配置把“已串連”的標記去掉。