KVM虚拟机安装windows 10

一、VNC环境搭建
  • 安装vnc服务
yum -y install tigervnc tigervnc-server
 
  • vnc服务配置——宿主机远程控制
  1. # 配置vnc  
  2. # 将/lib/systemd/system/vncserver@.service文件复制一份  
  3. cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service  
  4.   
  5. # 编辑刚刚复制得到的文件,将文件中的<USER>修改为VNC Client(或者VNC Viewer)连接的账号,我只设置一个用户root,多用户再增加对应的vncserver@:2.service文件即可  
  6. vim /etc/systemd/system/vncserver@:1.service  
  7. # 修改以后的文件部分内容(只修改文件下半部分)  
  8. [Unit]  
  9. Description=Remote desktop service (VNC)  
  10. After=syslog.target network.target  
  11.   
  12. [Service]  
  13. Type=forking  
  14. User=root  
  15.   
  16. # Clean any existing files in /tmp/.X11-unix environment  
  17. ExecStartPre=/bin/sh -c ‘-/usr/bin/vncserver -kill :1 > /dev/null 2>&1 || :‘  
  18. ExecStart=/user/sbin/runuser -l root -c "/usr/bin/vncserver :1 -geometry 1280*720 -depth 24"  
  19. PIDFile=/home/root/.vnc/%H%i.pid  
  20. ExecStop=-/bin/sh -c ‘/usr/bin/vncserver -kill :1 > /dev/null 2>&1 || :‘  
  21.   
  22. [Install]  
  23. WantedBy=multi-user.target  
  24.   
  25. #设置vnc连接密码,输入命令vncpasswd以后连续输入两次密码,然后直接连续回车(回车以后还要设置几项,直接回车没有影响,未做深入研究)  
  26. vncpasswd  
  27.   
  28. # 启动vncserver@:1.service并设置开机启动  
  29. systemctl start vncserver@:1.service  
  30. systemctl enable vncserver@:1.service  
  31.   
  32. # 设置防火墙(VNC默认是被防火墙阻止的)  
  33. firewall-cmd --permanent --add-service="vnc-server" --zone="public"  
  34. firewall-cmd --reload  
  35.   
  36. # 启动VNC服务  
  37. vncserver  
  38. # 会出现以下信息:其中说明VNC客户端连接账号为root,端口号为5901(文章最后会有端口说明),在局域网内其他电脑上用VNC客户端连接  
  39. New ‘dev:1 (root)‘ desktop is dev:1  
  40. Starting applications specified in /root/.vnc/xstartup  
  41. Log file is /root/.vnc/dev:1.log
 
  • 下载vnc client,测试连接
 
 
二、虚拟机安装
 
  • 创建磁盘(安装系统的空间)
 
  1. # 创建类型为raw的磁盘,310G容量
  2. qemu-img create -f raw /opt/kvm.raw 310G  
  3.   
  4. # 检查磁盘是否创建成功  
  5. qemu-img info /opt/kvm.raw   
  6.   
  7. # 看到类似以下信息表明磁盘创建成功  
  8. image: /opt/kvm.raw  
  9. file format: raw  
  10. virtual size: 310G (10737418240 bytes)  
  11. disk size: 0  
 
  • virt-install命令以及VNC远程控制安装虚拟机
 
Windows系统安装
 
virt-install \
--virt-type kvm \
--name server-10-1-1-126-vm03 \
--ram 4096 \
--cdrom=/iso/cn_windows_10_2019_x64官网.iso \
--boot cdrom \
--cpu core2duo \
--network bridge=br0,model=‘e1000‘ \
--graphics vnc,listen=0.0.0.0,port=5900 \
--disk path=/data/kvm.raw,bus=‘ide‘ \
--noautoconsole \
--os-type=windows
 
执行virt-install命令以后,虚拟机安装并未结束,接下来用上面配置的VNC连接主机进行后续操作
  1. # 此时如果virt-install命令参数没有问题,会有提示信息:  
  2. # 开始安装......  
  3. # 域安装仍在进行。您可以重新连接  
  4. # 到控制台(virsh console)以便完成安装进程  
  5.   
  6. # 执行以后只看到提示连接成功,其他没有变化,所以不用执行这个命令,暂时没发现有什么用处  
  7. # 局域网内的任意一台同网段的电脑通过vnc client或者vnc viewer连接虚拟机

 KVM虚拟机安装windows 10

如果连接成功,就会出现熟悉的windows安装界面:

KVM虚拟机安装windows 10

virt-install常用参数说明
  • # 旧版本的写法
 1 –name指定虚拟机名称  
 2 –memory分配内存大小。  
 3 –vcpus分配CPU核心数,最大与实体机CPU核心数相同  
 4 –disk指定虚拟机镜像,size指定分配大小单位为G。  
 5 –network网络类型,此处用的是默认,一般用的应该是bridge桥接。  
 6 –accelerate加速  
 7 –cdrom指定安装镜像iso  
 8 –vnc启用VNC远程管理,一般安装系统都要启用。  
 9 –vncport指定VNC监控端口,默认端口为5900,端口不能重复。  
10 –vnclisten指定VNC绑定IP,默认绑定127.0.0.1,这里改为0.0.0.011 –os-type=linux,windows  
12 –os-variant=rhel6

 

  • # 新版本的写法
     1 --name      指定虚拟机名称  
     2 --ram       虚拟机内存大小,以 MB 为单位  
     3 --vcpus     分配CPU核心数,最大与实体机CPU核心数相同  
     4 –-vnc       启用VNC远程管理,一般安装系统都要启用。  
     5 –-vncport   指定VNC监控端口,默认端口为5900,端口不能重复。  
     6 –-vnclisten  指定VNC绑定IP,默认绑定127.0.0.1,这里改为0.0.0.0 7 --network   虚拟机网络配置  
     8   # 其中子选项,bridge=br0 指定桥接网卡的名称。  
     9   
    10 --os-type=linux,windows  
    11 --os-variant=rhel7.2  
    12   
    13 --disk 指定虚拟机的磁盘存储位置  
    14   # size,初始磁盘大小,以 GB 为单位。  
    15   
    16 --location 指定安装介质路径,如光盘镜像的文件路径。  
    17 --graphics 图形化显示配置  
    18   # 全新安装虚拟机过程中可能会有很多交互操作,比如设置语言,初始化 root 密码等等。  
    19   # graphics 选项的作用就是配置图形化的交互方式,可以使用 vnc(一种远程桌面软件)进行链接。  
    20   # 我们这列使用命令行的方式安装,所以这里要设置为 none,但要通过 --extra-args 选项指定终端信息,  
    21   # 这样才能将安装过程中的交互信息输出到当前控制台。  
    22 --extra-args 根据不同的安装方式设置不同的额外选项

     

    三、虚拟机管理—命令行方式

  •  1 virsh list                 # 查看在运行的虚拟机  
     2 virsh dumpxml vm-name      # 查看kvm虚拟机配置文件  
     3 virsh edit vm-name         # 修改虚拟机的配置文件(部分选项修改以后start虚拟机就可以生效)  
     4 virsh start vm-name        # 启动kvm虚拟机  
     5 virsh shutdown vm-name     # 正常关机  
     6   
     7 virsh destroy vm-name      # 非正常关机,强制关闭虚拟机(相当于物理机直接拔掉电源)  
     8 virsh undefine vm-name     # 删除vm的配置文件  
     9   
    10 ls  /etc/libvirt/qemu  
    11 # 查看删除结果,Centos-6.6的配置文件被删除,但磁盘文件不会被删除  
    12   
    13 virsh define file-name.xml # 根据配置文件定义虚拟机  
    14 virsh suspend vm-name      # 挂起,终止  
    15 virsh resumed vm-name      # 恢复被挂起的虚拟机  
    16 virsh autostart vm-name    # 开机自启动vm  
    17 virsh console <虚拟机名称>   # 连接虚拟机 

     

    彻底删除虚拟机的方法:

     1 # 虚拟机启动的情况下先关闭虚拟机  
     2 virsh destroy vm-name  
     3   
     4 # 删除vm配置文件  
     5 virsh undefine vm-name  
     6   
     7 # 查看删除结果(是否删除了配置文件),如果没有vm-name.xml文件则删除成功  
     8 ls /etc/libvirt/qemu  
     9   
    10 # 删除虚拟机磁盘(安装的时候创建的kvm.raw文件)  
    11 rm /data/kvm.raw  

     

KVM虚拟机安装windows 10

上一篇:浅谈PHP代码设计结构


下一篇:AcWing 853. 有边数限制的最短路