在 Windows 上使用 qemu 运行虚拟 Linux

在 Windows 上使用 qemu 运行虚拟 Linux

我正在尝试使用适用于 Windows 的 Qemu 1.3 在装有 Windows 7 的 USB 记忆棒上运行 lubuntu。在我的 USB 记忆棒上下载并解压 Qemu 后,如果我单击 qemu.io.exe,我会得到

qemu-io.exe>

如何启动我下载的 linux .iso 文件?这听起来很简单,但是从 Qemu 网站来看,我并不清楚。

答案1

Qemu 手册是一个很好的起点。它将帮助您弄清楚下一步该做什么,也就是告诉 qemu 要做什么,以及具体如何做。

答案2

这是我在 64 位 Windows 7 Enterprise 上运行最低版本 CentOS 7 的方法,无需成为管理员组(非管理员)的成员。

基本思想是:

  1. 下载适用于 Windows 的 qemu 并将其解压到任意位置
  2. 下载要运行的 Linux 发行版的 ISO 映像
  3. 创建一个将作为虚拟机硬盘的文件
  4. 运行 qemu,从 CD 映像启动
  5. 安装操作系统
  6. 重新启动虚拟机,这次没有 CD 映像

网络和精美的图形很难做好。实际上,仍在努力……

1. 下载 QEMU

用一个在 QEMU 链接页面上找到预编译的二进制文件。 我用了版本 2.8.0

要以非管理员身份“安装”此版本,请打开命令提示符,发出命令set __COMPAT_LAYER=RunAsInvoker并从该提示符运行qemu-w64-setup-20170131.exe。安装在您有写入权限的文件夹中,例如“我的文档”或类似文件夹。

2. 下载 Linux 的 ISO 映像

再次,请自便。我用的是CentOS 7 的最小发行版,该文件名为CentOS-7-x86_64-Minimal-1611.iso

3.创建虚拟硬盘

我为此使用了批处理文件。将以下内容复制到名为的文件createvm.bat,并调整变量以适合您的环境:

@echo off
rem ==================================
rem Replace with your values
rem ==================================
set "QEMUDIR=%USERPROFILE%\Documents\Warez\qemu-2.8.0-win64"

rem ==================================
rem Safety net
rem ==================================
if not exist hda.img (
    rem CREATE a virtual hard disk 
    "%QEMUDIR%\qemu-img.exe" create hda.img 40G
) else (
    echo file hda.img already exist. Delete or move and try again.
    goto:eof
)

4. 运行 QEMU,从虚拟 CD 启动

使用批处理,因为您可能会经常使用它。将以下内容复制到installvm.bat

@echo off

rem ==================================
rem Replace with your values
rem ==================================
set "QEMUDIR=%USERPROFILE%\Documents\Warez\qemu-2.8.0-win64"
set "ISOFILE=CentOS-7-x86_64-Minimal-1611.iso"

rem ==================================
rem You can add a w suffix to this if 
rem you don't want a console
rem ==================================
set "QEMUBIN=qemu-system-x86_64.exe"

rem ==================================
rem Run the virtual machine
rem ==================================
start "QEMU" "%QEMUDIR%\%QEMUBIN%" -drive file=hda.img,index=0,media=disk,format=raw -cdrom %ISOFILE% -m 2G -L Bios -usbdevice mouse -usbdevice keyboard -boot menu=on -rtc base=localtime,clock=host -parallel none -serial none -name centos -no-acpi -no-hpet -no-reboot 

5.安装操作系统

我在使用 GUI 安装程序时遇到了问题。当提示安装 CentOS 时,按下键并将该行末尾的TAB单词替换为。quiettext

按照屏幕上的安装说明进行操作。安装完成后,虚拟机将退出。这可能需要相当长的时间,尤其是以非管理员用户身份运行时。

6. 在 QEMU 中运行 Linux 映像

每次需要时,您都要反复执行此步骤来运行虚拟机。将以下内容复制到runvm.bat

@echo off

rem ==================================
rem Replace with your values
rem ==================================
set "QEMUDIR=%USERPROFILE%\Documents\Warez\qemu-2.8.0-win64"

rem ==================================
rem You can add a w suffix to this if 
rem you don't want a console
rem ==================================
set "QEMUBIN=qemu-system-x86_64.exe"

rem ==================================
rem Run the virtual machine
rem ==================================
start "QEMU" "%QEMUDIR%\%QEMUBIN%" -drive file=hda.img,index=0,media=disk,format=raw -m 2G -L Bios -usbdevice mouse -usbdevice keyboard -boot menu=on -rtc base=localtime,clock=host -parallel none -serial none -name centos -no-acpi -no-hpet -no-reboot -device e1000,netdev=user.0 -netdev user,id=user.0,hostfwd=tcp::2222-:22

我添加了本地端口转发:如果你通过 ssh/putty 连接到 localhost:2222,你将访问虚拟机的 SSH 守护进程。请注意firewalldiptables 可能阻止流量,具体取决于您安装 Linux 的方式。

相关内容