導航:首頁 > 源碼編譯 > 編譯qemu600

編譯qemu600

發布時間:2023-03-01 07:20:36

⑴ 最新windows版qemu虛擬機使用技巧

RedflagWorkstation下已經帶了QEMU
#QEMU-imgcreatewindows.img2G#這個就是創建虛擬機磁碟,2G大小
#QEMU-hdawindows.img-cdrom/dev/acd0-bootd-m512-enable-audio-localtime
-hda是指定硬碟
-cdrom指定使用光碟機,這個參數後面必須要跟個文件名,可以是物理光碟機/dev/hda,可以使用ISO文件,為文件的路徑
-m是指定虛擬機使用的內存大小,如512M
-boot指定虛擬機啟動用的設備,-boot後可以選擇的參數是a,c,d.其中a是指從軟盤啟動,c就是用硬碟啟動,d是光碟機啟動。
-enable-audio
-localtime使用實際主板bios上的時間。
應該可以順利的進入虛擬機了,並開始安裝了。
RedflagWorkstation下已經帶了QEMU
#QEMU-imgcreatewindows.img2G#這個就是創建虛擬機磁碟,2G大小
#QEMU-hdawindows.img-cdrom/dev/acd0-bootd-m512-enable-audio-localtime
-hda是指定硬碟
-cdrom指定使用光碟機,這個參數後面必須要跟個文件名,可以是物理光碟機/dev/hda,可以使用ISO文件,為文件的路徑
-m是指定虛擬機使用的內存大小,如512M
-boot指定虛擬機啟動用的設備,-boot後可以選擇的參數是a,c,d.其中a是指從軟盤啟動,c就是用硬碟啟動,d當然就是光碟機啟動了。
-enable-audio
-localtime使用實際主板bios上的時間。
應該可以順利的進入虛擬機了,並開始安裝了。
安裝過程中,要求換盤:在QEMU中按ctrl alt 2切換到QEMUmonitor模式輸入?或help可以查看可用命令及使用說明。(在其他版本的QEMU中,運行QEMU載入OS後,這個shell就會自動變成QEMUmonitor模式)
changedevicefilename—changearemovablemedia
如changecdrom/tmp/xp1.iso
常用的快捷鍵:
ctrl alt F全屏切換
ctrl alt滑鼠在虛擬機和主機間切換
虛擬機上網設置兩種方式:
1.usermodenetwork:
這種方式實現虛擬機上網很簡單,類似vmware里的nat,QEMU啟動時加入-user-net參數,虛擬機里使用dhcp方式,即可與互聯網通信,但是這種方式虛擬機與主機的通信不方便。
2.tap/tunnetwork:
這種方式要比usermode復雜一些,但是設置好後虛擬機互聯網虛擬機主機通信都很容易
這種方式設置上類似vmware的host-only,QEMU使用tun/tap設備在主機上增加一塊虛擬網路設備(tun0),然後就可以象真實網卡一樣配置它.

dora 5 下的qemu安裝使用qemu是最近出現的一種新的虛擬機,本身小巧的系 統和linux的加速器,使它一經面世就受到了熱烈的歡迎,國內也有不少用戶,但沒有一篇完整的文章介 紹,使許多人走了不少彎路,其實,安裝是比較簡單的,較為復雜的部分是在網路部分,下面,就以 Fedora 5加kernel 2.6.17.4做為主機詳細介紹qemu的安裝和使用
一.安裝
下載
qemu最新版是0.81,同時下載加速器kmenu,最新版是1.3
http://fabrice.bellard.free.fr/qemu/download.html
先安裝Kqemu
$ tar zxvf kqemu-1.3.0pre9.tar.gz
$ cd kqemu-1.3.0pre9
$ su root
# ./configure
# make
# make install

然後安裝qemu
# tar zxvf qemu-0.8.1.tar.gz
# cd qemu-0.8.1
#./configure --prefix=/usr/local --enable-kqemu --enable-user --enable-alsa --disable-gcc-check
說明:
--enable-user 可以允許系統下的所有用戶使用Qemu
--enable-alas 可以允許系統共享系統的聲音系統
--disable-gcc-check 因為wqemu默認是使用gcc3.2,我的系統gcc已經升級到了4.1,所有禁止了qemu對gcc的檢查
#make
#make install
經過以上的操作,加速器和qemu都已經安裝完成了。

二.創建新的img
用戶可以將img文件創建到任意位置,只要有足夠的空間就行。
# mkdir win2kp
# cd win2k
# qemu-img create win2k.img 2G
Formating 'win2k.img', fmt=raw, size=2097152 kB
2G是指定虛擬機的硬碟大小的
三.網路的設置
國 內的很多人都講加參數就如何可以使用網路,但實際遠沒那麼簡單,我就是一開始看了網路上某人的貼子,結果是反反復復,網路一直不能正常工作,後來從 qemu的網站上下了所有的doc才搞定(比如有人發的貼都是使用-user-net就可以上網了,不但把語法寫錯了,而且只有這個參數根本就上不了 網!),在此我只說最復雜的部分,就是主機<->虛擬機<->internet全通的模式。
這種方式是使用tun/tap模式,必須崾內核的支持,主機上會增加一塊虛擬網路設備(tun0),然後就可以象真實網卡一樣配置它.
首先查看你的內核是否支持tun設備:
#ls -l /lib/moles/2.6.17.4/kernel/drivers/net/tun.ko
如果存在,則執行下面的命令,否則重新編譯模塊。
#modprobe tun

這時檢查moles:
#lsmod |grep tun
tun 10240 1
tun 載入成功以後,要手工編輯一個shell.而且必須放在/etc下,文件名必須是qemu-ifup.最後要記得給腳本加上執行許可權,如果要允許系 統下的所有用戶使用,還必須更改腳本的許可權,並在腳本中的命令前加上sudo,下面是是個完整的,給所有用戶使用的腳本。

#vi /etc/qemu-ifup :
#!/bin/sh
sudo /sbin/ifconfig $1 192.168.10.1
sudo route add -host 192.168.10.100 dev $1
sudo echo 1 > /proc/sys/net/ipv4/ip_forward
sudo iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE

#chmod a+x /etc/qemu-ifup

四.安裝虛擬系統
虛擬機的啟動有很多選項,下面我就以我安裝好的win2k來說明
如果要使用shm,必須進行以下的操作
# umount /dev/shm
# mount -t tmpfs -o size=528m none /dev/shm
別忘了啟動加速器
#modprobe kqemu
shm的容量必須比你將要分配給虛擬機的內存大16m,否則無法使用,上面是准備給虛擬機512m的內存,所以,shm被設置成了528,如果你只給虛擬機256m的內存,上面的size應該是272.
好了,下面准備開始給上面創建的win2k.img裝入系統
# qemu -hda /usr/local/win2k/win2k.img -cdrom /dev/hdc -boot d -m 512 -win2k-hack
對於win2k的安裝必須指定-win2k-hack參數,否則安裝會中途出錯退出,這個參數只需要在安裝的時候使用,在運行的時候是不需要的。
-hda是指定將要使用的image文件,也就是windows的C盤
-cdrom 是准備給cdrom的驅動器,也就是windows的D盤,有人說這個參數是-cdrom /dev/cdrom,是指定你的主機的cdrom的位置,這是一個天大的錯誤,這里指的是啟動後的虛擬機,和主機的cdrom在哪裡沒關系,當然,你的 系統必須有cdrom,如果沒有cdrom,我想在linux下虛擬mount一個還是很容易的。
-boot d ,就是指定系統從D啟動,各上面一項相關的
-m 512,指定分配組虛擬機的內存
如果一切順利,安裝完成以後,你就可以啟動系統了

五.啟動虛擬機
首先,按前面的介紹,載入好加速器和tun的模塊,如果前面已經載入了,這里就不再需要了,只在主機重啟了以後需要,如果經常使用虛擬機,也可以將它們直接添加進/etc/rc.d/rc.local讓系統自動載入。
#modprobe kqemu
#modprobe tun
#qemu -hda /usr/local/win2k/win2k.img -cdrom /dev/hdc -hdb fat:/home/seabird/work -m 512 -localtime -net nic -net tun
參數:
-hdb fat:/home/seabird/work
這是一個非常有用的參數,它的意思是把主機的/home/seabird/work目錄直接以fat的格式載入到虛擬機,當然,它是只讀的
-localtime,指定虛擬機使用當前的系統時間
-net nic -net tun
這兩個參數必須同時使用,否則,你還是上不了網,它的意思是啟動虛擬機的網卡同時和主機以及internet通訊,只有這個參數載入的時候,系統才會去讀取/etc/qemu-ifup文件,其它的模式是不會讀取這個文件的。
啟 動完成以後,將win2k的網卡地址指定為192.168.10.100,網關設為1921.68.10.1還記得/etc/qemu- ifup文件嗎,這個文件中的地址和你的虛擬機的地址是相關的,並不像有些人說的你可以像主機一樣隨便指定地址去上網,它是把主機作為一個NAT設備來使 用的。當然,你別忘記指定一個虛擬機可以到達的DNS伺服器
六.後記
1.指定虛擬機的網路地址的時候。千萬別指一個和你的主機相同網段的,那樣,你是不可能上網的。
2.可以去安裝98,但到目前的最新版為止,winxp在大多情況下安裝是不成功的,這個在qemu的網站上說的很清楚,只有等以後的版本了,所以,你看到的安裝winxp的貼子是沒有實踐的,我在三台配置不同的機器上安裝都以失敗告終了。
3.win2k運行的時候,如果用它自己的關機是關不掉虛擬機的,原因是不支持電源管理, 教你一個方法,使用win2k的安裝/卸載硬體,一步步往下走, 在windows搜索完硬體後出現的對話窗中選擇添加新硬體(白痴的windows,我竟然不能讓它跳過搜索), ->下一步,選擇「否,我想從列表選擇硬體」->下一步->NT Apm/legacy支持->下一步,安裝完成後你就可以正常關機了。
4.qemu還有一個最大的優點是可以啟動你的硬碟上的雙系統,如果現在就是雙系統,你可以像下面一樣直接啟動:
#qemu -hda /dev/hda1 -m 512 -net nic -net tun
/hda1是你的另一個系統的硬碟分區,如果你是grub啟動,這里就是你的grub所在的位置,等grub菜單出現後,選擇想啟動的系統就可以了(天啊,別選你現在正在運行的系統啊). Linux聯盟收集整理

⑵ qemu如何使用

qemu常用網路模式是user、tap。
user使用有局限性,
1) 由於其在QEMU內部實現所有網路協議棧,因此其性能較差。
2) 不支持部分網路功能(如ICMP),所以不能在客戶機中使用ping命令測試外網連通性。
3) 不能從宿主機或外部網路直接訪問客戶機。需要作地址重定向。
tap方式網路沒有這些限制。
通過tap又可以實現bridge和nat方式的網路連接。

⑶ 如何在linux上使用qemu執行鏡像文件

1. 編譯kernel
mkdir -p ~/misc/qemu
cd ~/misc/qemu
wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.3.7.tar.bz2
tar xvfj linux-3.3.7.tar.bz2
cd linux-3.3.7
make defconfig
make
cp arch/x86/boot/bzImage ..
2. 製作根文件系統
cd ~/misc/qemu
dd if=/dev/zero of=rootfs.img bs=1M count=10
mkfs.ext3 rootfs.img
mkdir rootfs
sudo mount -t ext3 -o loop rootfs.img rootfs
cd rootfs
mkdir dev proc sys
3. 編譯busybox
cd ~/misc/qemu
wget http://busybox.net/downloads/busybox-1.20.1.tar.bz2
tar xvfj busybox-1.20.1.tar.bz2
cd busybox-1.20.1
make defconfig
make menuconfig
(將busybox編譯為靜態連接方式)
- Busybox Settings
- Build options
- Build Busybox as a static binary
make
make install CONFIG_PREFIX=~/misc/qemu/rootfs
cd ~/misc/qemu
sudo umount rootfs
4. 運行
圖形界面下:
qemu -kernel bzImage -hda rootfs.img -append "root=/dev/sda init=/bin/ash"
命令行界面:
qemu -kernel bzImage -hda rootfs.img -append "root=/dev/sda init=/bin/ash" -curses
通過vnc運行:
qemu -kernel bzImage -hda rootfs.img -append "root=/dev/sda init=/linuxrc" -curses -vnc 192.168.1.237:1
上面192.168.1.237為本機的一個IP地址。在另外一台機器上運行vnc client,填入192.168.1.237:1,即可通過vnc連接到linux系統
改進1:mount /proc和/sys,以及創建/dev/下的設備節點

啟動後,/dev下無設備文件,而且/proc, /sys都沒有mount上,導致有些命令無法運行(如top)。為了解決這個問題,可以修改啟動腳本/linuxrc為:
#!/bin/ash

/bin/mount -t proc proc /proc
/bin/mount -t sysfs sysfs /sys
/bin/echo /sbin/mdev > /proc/sys/kernel/hotplug
mdev -s

/bin/ash

然後chmod a+x /linuxrc,umount後再執行
qemu -kernel bzImage -hda rootfs.img -append "root=/dev/sda init=/linuxrc"

有關mdev的介紹和使用可以參考:
http://hi..com/kebey2004/blog/item/3692f6079b8e9dda7a894721.html

改進2:編一個最小kernel
make allnoconfig
make menuconfig
選擇:
- Executable file formats / Emulations
- 選擇Kernel support for ELF binaries
- Device Drivers
- 選擇ATA/ATAPI/MFM/RLL support
- 選擇generic/default IDE chipset support
- File systems
- 選擇Ext3 journalling file system support
make
qemu -kernel linux-3.3.7/arch/x86/boot/bzImage -hda rootfs.img -append "root=/dev/hda init=/linuxrc" -curses

⑷ qemu如何使用

qemu從某種意義上功能類似於vmware/virtual box之類的軟體,可以讓你在當前OS中運行其它的操作系統,但是這僅僅是qemu的一種功能

qemu還可以模擬不同的cpu架構下的系統,比如在普通的個人pc上運行 arm linux之類,這個vmware之類的可能沒有

關於qemu的使用
先到官網上下載qemu的源代碼,目前是 1.2,如果使用的是linux系統,這個好辦,直接編譯安裝,網上有不少說明的文檔

使用的過程一般分為三步
1. 創建虛擬機文件系統
qemu-img create /f qcow2 xxx.img 10G

2. 在虛擬機文件系統中安裝操作系統
qemu-system-i386 -hda xxx.img -cdrom xxx.iso -boot d 以xxx.img為文件系統,xxx.iso是系統安裝ISO文件

3. 運行安裝好的操作系統
qemu-system-i386 -hda xxx.img 運行xxx.img中的系統

以上的命令參數都比較簡單,實際使用中需根據具體情況自己配置

閱讀全文

與編譯qemu600相關的資料

熱點內容
伺服器如何搭建多個節點 瀏覽:324
acx演算法 瀏覽:256
幽冥詭匠漫畫全集用什麼app可以看 瀏覽:1001
租用伺服器為什麼越來越慢 瀏覽:960
演算法創新就業方向 瀏覽:423
演算法最優解作者 瀏覽:867
通達信紅綠寶塔線指標源碼 瀏覽:666
app是什麼東西合法嗎 瀏覽:231
怎麼鎖app視頻教程 瀏覽:841
迅捷pdf注冊碼生成器 瀏覽:748
androidsdkosx 瀏覽:302
壓縮面膜紙熒光 瀏覽:841
app怎麼分身三個 瀏覽:744
電影bt下載源碼 瀏覽:421
iwatch屏幕加密晶元 瀏覽:570
公安主題網站源碼 瀏覽:986
天津市伺服器供應商雲伺服器 瀏覽:115
數控車床子程序編程 瀏覽:111
floydwarshall演算法 瀏覽:718
丟失微信app怎麼找 瀏覽:252