Linux(Debian 10)如何在KVM上安装虚拟机

本文详细指导如何在KVM环境中配置网桥,连接宿主机,并创建并安装Windows10虚拟机,包括设置静态IP、网关,分配磁盘,以及使用virsh工具管理和启动虚拟机。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

执行接下来的步骤的时候要确定自己的KVM已经在虚拟机上安装好了

首先先配置网桥,让KVM和我们的宿主机通过网桥进行连接

1.第一步切换到 /etc/network/interfaces.d/目录下

cd /etc/network/interfaces.d/

2.第二步,在interfaces.d/目录下创建一个br0(这个就是我们创建的网桥)

touch br0

创建以后ls命令一下可以看见有这个文件了

2.第三步,把以下内容写入我们刚刚创建的br0中,根据自己的来写,不要照抄了

auto br0
iface br0 inet static
#这里配置的网桥的ip,注意网段要与物理网卡相同,这里的ip不要与物理网卡ip相同了(即主机号不同)
address 192.168.18.11
#广播地址,网段也要与物理网卡相同
broadcast 192.168.18.255
netmask 255.255.255.0
#网关,可以填写你的路由器的网关
gateway 192.168.18.1

#关闭生成树
bridge_stp off #close Spanning tree

#eno1是我的物理网卡,我配置了ip地址,这里指的是把网桥和物理网卡eno1连接起来
bridge_ports eno1

bridge_waitport 0

4.写入以后cat一下br0文件可以看到里面已经有我们配置的东西了

cat br0

5.重启一下网络配置,让我们的网桥生效,执行以下命令

 /etc/init.d/networking restart

6.接下来就可以在KVM上创建虚拟机了,首先我会先在我的家目录(root)创建一个vm目录,将vm目录作为我的工作目录,接下来iso镜像文件和虚拟机的东西都放在这个目录里面

然后我会创建一个目录iso来放置我的镜像文件

 接下来把你需要安装的系统的镜像文件都放到iso这个目录下,如下我已经把我需要的放进去了

7.接下来我就安装一个Windows,首先我会先在vm目录下创建一个名为Win10(自己定义)的目录,用来放置win10的配置文件和磁盘文件,创建好以后把工作目录切到Win10

8.接下来给Win10虚拟机分配一个磁盘大小

qemu-img create -f qcow2 虚拟机名字.qcow2 磁盘大小

我给Win10虚拟机分配一个20G的磁盘大小 ,如下图,会多出来一个文件,该文件就有20G的大小,来作为Win10虚拟机的磁盘

8.接下来需要把我们的配置文件放进Win10目录下,并对配置文件进行修改,我这边修改好以后就是下面的样子,可以先修改好再把配置文件放进去

<domain type='kvm' id='6'>
  <name>Win10</name>   #将其改为你安装的虚拟机的名字
 #这个uuid不能和别的虚拟机相同,因为kvm是靠这个来定位一台虚拟机的
  <uuid>6a7a8c1b-95ac-48a4-9e4e-3d5c0e103e43</uuid>
  <memory unit='KiB'>4194304</memory> #这里是配置内存大小,我是分配了4G,可以不改
  <currentMemory unit='KiB'>4194304</currentMemory>
  <vcpu placement='static'>4</vcpu>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-i440fx-5.2'>hvm</type>
    <boot dev='hd'/>
    <boot dev='cdrom'/>
  </os>
  <features>
    <acpi/>
  </features>
  <cpu mode='custom' match='exact' check='full'>
    <model fallback='forbid'>qemu64</model>
    <feature policy='require' name='x2apic'/>
    <feature policy='require' name='hypervisor'/>
    <feature policy='require' name='lahf_lm'/>
    <feature policy='disable' name='svm'/>
  </cpu>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>destroy</on_crash>
  <devices>
    <emulator>/usr/bin/kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2'/>
      #这里要把改路径改为你磁盘文件的路径,我这边就是改为前面的Win10.qcow2的路径
      <source file='/root/vm/Win10/Win10.qcow2' index='2'/>
      <backingStore/>
      <target dev='vda' bus='sata'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      #这边要把你iso镜像文件的路径放上来,我的就是Windows.iso文件的路径
      <source file='/root/vm/iso/Windows.iso' index='1'/>
      <backingStore/>
      <target dev='hdc' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='1' target='0' unit='1'/>
    </disk>
    <controller type='usb' index='0' model='piix3-uhci'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pci-root'>
    </controller>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <controller type='sata' index='0'>
      <alias name='sata0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </controller>
    <interface type='bridge'>
#mac地址也不可以和别的虚拟机一样
      <mac address='00:50:79:10:3e:43'/>
      <source bridge='br0'/>
      <target dev='vnet5'/>
      <model type='e1000'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </interface>
    <input type='tablet' bus='usb'>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='keyboard' bus='ps2'>
    </input>
    <input type='mouse' bus='ps2'>
    </input>
    #下面的5901是通过vncviewer登录时候需要输入的端口,如果想自己设置端口登录,
    #就需要把autoport改为no,这里也可以不改,那么第一个启动的虚拟机其端口号就是5900,
    #第二个启动的端口号就是5901,依此增加
    <graphics type='vnc' port='5901' autoport='yes' listen='0.0.0.0'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </memballoon>
  </devices>
</domain>

9.在Win10目录下创建一个  虚拟机名字.xml 的文件,然后把修改好的配置文件内容放进去,我创建的是Win10.xml文件,然后使用cat命令写入的,你也可以用vim文本编辑器来写

10.接下来需要把我们的配置文件加载到虚拟机上,我这边就是把Win10的配置文件加载到Win10虚拟机上,使用以下命令

virsh define [你刚刚的配置文件名字,我的是Win10.xml]

11.如果你想要在加载完之后再对你现在在安装的虚拟机中的配置文件进行修改,可以使用以下命令

virsh edit [虚拟机名字,我的是Win10] 

12.接下来就可以启动我们的虚拟机了,使用以下命令

virsh start  [虚拟机名字,我的是Win10] 

 13.可以使用以下命令查看虚拟机状态

virsh list --all

14.虚拟机已经启动。我们可以通过netstat -an 命令查看一下这个虚拟机的端口号,可以看到是5900

15.接下来就可以通过vncviewer 工具来登录我们的虚拟机了,输入网桥中设置的ip以及端口号(该软件默认端口为5900,如果你是5901,只需要写个1就行,以此类推),点击connect就可以了

16.成功进入(我是已经初始化了)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值