您的位置:首页 > 娱乐 > 八卦 > 哪家网站好_简网app工场下载_如何查看网站收录情况_网站优化推广公司

哪家网站好_简网app工场下载_如何查看网站收录情况_网站优化推广公司

2024/12/26 11:18:38 来源:https://blog.csdn.net/m0_61864577/article/details/144726363  浏览:    关键词:哪家网站好_简网app工场下载_如何查看网站收录情况_网站优化推广公司
哪家网站好_简网app工场下载_如何查看网站收录情况_网站优化推广公司

ubuntu22.04上安装win10虚拟机,并采用noVNC+frp,让远程通过web访问桌面

    • 一.相关知识
    • 二.操作步骤
      • 1.准备工作
        • A.安装ubuntu22.04
        • B.安装必须的软件包
        • C.为root用户设置密码[jack],并允许ssh登录
        • D.打开MobaXterm[支持X11Forwarding],通过ssh用root帐号登录ubuntu22.04,确认是否支持KVM,配置pci passthrough
      • 2.安装KVM
      • 3.准备依赖
      • 4.创建虚机
      • 5.将ubuntu22.04物理机上的目录映射进虚机
        • A.物理机上的配置过程
        • B.在虚机中安装virtiofs驱动,并启动服务,将物理机上的目录映射进虚机
      • 6.虚机中安装UltraVNC Server
      • 7.远程控制
        • A.方式一
        • B.方式二

演示视频:

ubuntu22.04上安装win10虚拟机

一.相关知识

  • ubuntu22如何安装kvm
  • kvm如何创建win10虚机
  • 如何通过noVNC连接虚机
  • ubuntu22如何实现端口转发
  • 如何在虚机与宿主机之间共享存储

二.操作步骤

1.准备工作

A.安装ubuntu22.04
  • 镜像下载
  • 在BIOS中开启VT-d
  • 默认安装
B.安装必须的软件包
sudo apt update
sudo apt install net-tools -y
sudo apt install openssh-server -y
sudo apt install vim -y
ifconfig # 获取IP
C.为root用户设置密码[jack],并允许ssh登录
export passwd=jack && printf "${passwd}\n${passwd}\n"  | sudo passwd root 
sudo sed -i "s/#PermitRootLogin.*/PermitRootLogin=yes/g" /etc/ssh/sshd_config
sudo systemctl restart sshd
D.打开MobaXterm[支持X11Forwarding],通过ssh用root帐号登录ubuntu22.04,确认是否支持KVM,配置pci passthrough
  • 运行xclock,确认可能显示界面
  • 确认是否支持KVM
    sudo apt install cpu-checker -y
    kvm-ok
    
    输出
    INFO: /dev/kvm exists
    KVM acceleration can be used
    
  • 开启pci passthrough
    sudo sed -i "s/GRUB_CMDLINE_LINUX=.*/GRUB_CMDLINE_LINUX=\"intel_iommu=on iommu=pt\"/g" /etc/default/grub
    sudo cat /etc/default/grub | grep -w "GRUB_CMDLINE_LINUX"
    
    输出
    GRUB_CMDLINE_LINUX="intel_iommu=on iommu=pt"
    
  • 重新创建引导
    sudo apt install grub-common -y#EFI模式
    sudo grub-mkconfig -o /boot/efi/EFI/ubuntu/grub.cfg#BIOS模式
    grub-mkconfig -o /boot/grub/grub.cfg#确认是否添加增加成功
    sudo cat /boot/efi/EFI/ubuntu/grub.cfg | grep "intel_iommu"
    
  • 重启系统:sudo reboot
  • 再次确认kernel启动参数是否添加成功
    sudo cat /proc/cmdline  | grep "intel_iommu"
    

2.安装KVM

sudo apt update
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients \bridge-utils virt-manager libvirt-daemon-config-network
sudo systemctl enable --now libvirtd
sudo systemctl start libvirtd
sudo virsh net-autostart default
sudo ifconfig virbr0

3.准备依赖

  • A.创建相关目录
# 磁盘镜像存储位置
sudo mkdir -p /var/lib/libvirt/images# ISO镜像存储位置
sudo mkdir -p /var/lib/libvirt/boot/# 创建虚机与宿主机之间的共享目录
sudo mkdir -p /home/kvm_share_data
sudo chmod 777 -R /home/kvm_share_data
  • B.下载KVM/QEMU Windows guest drivers[virtio-win]
wget -O /var/lib/libvirt/boot/virtio-win-0.1.266.iso \https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.266-1/virtio-win-0.1.266.iso
  • C.准备win10系统镜像

    • 在PC机上下载MediaCreationTool
    • 运行MediaCreationTool,下载Windows.iso安装镜像
    • 将Windows.iso拷贝到ubuntu22.04的/var/lib/libvirt/boot/目录下
  • D.下载UltraVNC Server

wget -O /home/kvm_share_data/UltraVNC_1_3_81_X64_Setup.exe \https://www.uvnc.eu/download/1381/UltraVNC_1_3_81_X64_Setup.exe

4.创建虚机

  • A.创建虚机
# 删除旧的虚机和镜像
virsh destroy win10
virsh undefine win10
sudo rm -f /var/lib/libvirt/images/win10.qcow2
virt-install \--virt-type=kvm \--name win10 \--ram 10240 \--vcpus=4 \--check path_in_use=off \--console pty,target_type=serial\--connect qemu:///system \--os-variant=win10 \--cdrom=/var/lib/libvirt/boot/Windows.iso \--disk path=/var/lib/libvirt/boot/virtio-win-0.1.266.iso,device=cdrom \--network=bridge=virbr0,model=virtio \--graphics vnc \--disk path=/var/lib/libvirt/images/win10.qcow2,size=20,bus=virtio,format=qcow2
  • B.系统安装
    • 选择Windows 10专业版本
    • 选择自定义安装
    • 点击加载驱动->浏览
    • 展开CD驱动器 virtio-win-0.1.266
    • 选择amd64/w10 目录,点击确定,之后点击下一步,安装Red Hat VirtIO SCSI controller驱动
    • 驱动安装成功后,可以显示磁盘,点击新建,应用,创建主分区,点击下一步,开始安装
  • C.安装virtio-win-gt-x64.exe
  • D.安装virtio-win-guest-tools.exe

5.将ubuntu22.04物理机上的目录映射进虚机

A.物理机上的配置过程
  • 关闭虚机
virsh shutdown win10
  • 编辑虚机
virsh edit win10
  • 分别在"domain"和"devices"部分添加以下代码:
<memoryBacking> <source type="memfd"/> <access mode="shared"/> 
</memoryBacking><filesystem type="mount" accessmode="passthrough"><driver type="virtiofs"/> <source dir="/home/kvm_share_data"/><target dir="kvm_share"/><address type="pci" domain="0x0000" bus="0x07" slot="0x00" function="0x0"/>
</filesystem>

/home/kvm_share_data
kvm_share:共享名

  • 启动虚拟
virsh start win10
  • 显示控制台
virt-viewer
B.在虚机中安装virtiofs驱动,并启动服务,将物理机上的目录映射进虚机
  • 下载链接
  • 安装winfsp
  • 打开任务管理器,选择服务Tab,找到VirtioFsSvc服务,开启该服务
  • 打开"我的电脑",可以看到名为kvm_share的磁盘

6.虚机中安装UltraVNC Server

  • 下载链接
  • 或使用共享目录中下载好的文件
  • 只选择UltraVNC Server
  • Select Additional Tasks界面中,全部选中
  • 右击任务栏上的图标,点击Admin Property,配置VNC Password
  • 点击Apply,完成配置
  • 获取虚机的IP,并记录

7.远程控制

A.方式一
  • 开启端口转发,将宿主机上的5901端口转发到虚机里的UltraVNC Server端口【5900】

    sudo apt install ncat -y
    sudo ncat --sh-exec "ncat 192.168.122.220 5900" -l 5901 --keep-open
    
  • 在windows PC机上,下载UltraVNC_1_3_81_X64_Setup.exe,安装UltraVNC Viewer

  • 通过UltraVNC Viewer,连接到ubuntu22.04的5901端口,远程控制win10虚机

B.方式二
  • 在ubuntu22.04宿主机上搭建noVNC,通过WEB控制虚机
    apt install -y git python3-pip
    pip3 install websockify
    git clone https://github.com/novnc/noVNC.git
    ./noVNC/utils/novnc_proxy --listen 10.22.4.111:6080 --vnc 192.168.122.220:5900
    
  • 在windows PC机上,打开浏览器,输入以下URL,即可通过WEB控制win10虚机
    http://10.22.4.111:6080/vnc.html?host=10.22.4.111&port=6080
    
  • 内网穿透参考 [可选] 如何通过frp内网穿透工具访问内网里的NVR、IPC等嵌入式设备

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com