当前位置: 首页 > news >正文

ubuntu服务器上安装KVM虚拟化

今天想着在ubuntu上来安装一个windwos操作系统,原因是因为我们楼上有几台不错的服务器,但是都是linux系统的。

今天我想着要给同事们搭建一个chatgpt环境,用来开发程序,但是ubuntu上其实也可以安装我嫌麻烦,刚好想折腾一下虚拟化技术,后续可能会用到,所以我就来操作一番。

要在 Ubuntu 上实现 KVM 虚拟化并安装 Windows 操作系统,您可以按照以下步骤进行设置:

1. 检查硬件支持:首先,请确保您的计算机支持硬件虚拟化。您可以通过运行以下命令来检查是否启用了硬件虚拟化扩展(VT-x 或 AMD-V):

   ````shell
   egrep -c '(vmx|svm)' /proc/cpuinfo
   ```

   如果输出的数字大于 0,则表示系统支持硬件虚拟化。

2. 安装 KVM 软件包:打开终端,并使用以下命令安装 KVM 相关软件包:

   ````shell
   sudo apt update
   sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager
   ```

   这将安装 KVM 虚拟化所需的软件包,包括 QEMU(用于虚拟化)、libvirt(用于管理虚拟机)、virt-manager(图形化工具)等。

3. 配置用户访问权限:默认情况下,只有具有 sudo 权限的用户才能访问和管理 KVM。如果您希望普通用户也能够管理虚拟机,可以将其添加到 libvirt 用户组中:

   ````shell
   sudo adduser <username> libvirt
   sudo adduser <username> kvm
   ```

   将 `<username>` 替换为您要添加的用户名。

4. 启动服务:KVM 虚拟化所需的服务是 `libvirtd`。您可以使用以下命令来启动和启用该服务:

   ````shell
   sudo systemctl start libvirtd
   sudo systemctl enable libvirtd
   ```

   这将启动 libvirtd 服务,并在系统启动时自动启用。

5. 打开 Virt-Manager:Virt-Manager 是一个图形化工具,用于创建和管理虚拟机。您可以通过在终端中运行以下命令来打开 Virt-Manager:

   ````shell
   virt-manager
   ```

   这将打开 Virt-Manager 图形界面。

6. 创建虚拟机:在 Virt-Manager 中,您可以使用向导来创建虚拟机。请按照指导进行操作,包括选择虚拟机配置(如内存、CPU 等)、选择安装媒体(ISO 文件或光盘)、设置存储和网络等。在此过程中,您可以选择安装 Windows 操作系统的 ISO 映像文件。

7. 安装 Windows 操作系统:完成虚拟机的创建后,从 Virt-Manager 中启动虚拟机并按照安装过程中的提示进行 Windows 操作系统的安装。

   如果您没有 Windows ISO 文件,您可以从 Microsoft 官方网站下载并获取合法许可的 Windows ISO 映像文件。

我们一般使用的是ssh客户端连接的服务器,所以直接运行virt-manager肯定是不方便的,所以我们就需要再自己客户单来安装一个工具,这里有两个解决方案。

如果您是通过 SSH 远程登录到 Ubuntu 服务器,并且使用的是本地计算机上的 SSH 客户端,则无法直接打开图形化工具(如 Virt-Manager)。这是因为图形界面需要在本地计算机上显示,而不是在远程服务器上。

在这种情况下,您可以考虑使用以下两种方法之一:

**方法一:使用 X11 转发**

1. 在本地计算机上,确保已安装并启用了 X11 转发功能。对于 Windows 用户,您可以使用 X11 服务器软件(如 Xming);对于 macOS 用户,可使用 XQuartz。

2. 在 SSH 连接命令中启用 X11 转发选项。例如:

   ````shell
   ssh -X username@your_server_ip
   ```

   将 `username` 替换为您的用户名,`your_server_ip` 替换为您的服务器 IP 地址。

3. 连接到远程服务器后,运行以下命令以启动 Virt-Manager:

   ````shell
   virt-manager
   ```

   Virt-Manager 应该会在本地计算机上打开,并通过 SSH 通信与远程服务器进行交互。

**方法二:使用 VNC 远程连接**

1. 在远程服务器上安装并设置 VNC 服务器。您可以选择使用不同的 VNC 服务器软件(如 TigerVNC、RealVNC 等),并按照其相应的文档进行安装和配置。

2. 在服务器上启动 VNC 服务器。

3. 在本地计算机上,使用 VNC 客户端连接到远程服务器的 VNC 服务器。您可以使用 VNC 客户端软件(如 RealVNC、TightVNC、Remmina 等),并提供远程服务器的 IP 地址和 VNC 端口号。

4. 在 VNC 客户端中,您可以打开 Virt-Manager,通过 VNC 连接远程服务器,并进行虚拟机管理操作。

请注意,无论使用哪种方法,确保在远程服务器上已经安装了 Virt-Manager,并且您具有足够的权限来运行 Virt-Manager。

这样你在客户端就可以直接打开manager来管理你的虚拟环境了。

在使用 Virt-Manager 安装 Windows 软件之前,您需要确保已经准备好以下几个要素:

1. Windows ISO 映像文件:您需要下载合法许可的 Windows 操作系统的 ISO 映像文件。这可以通过 Microsoft 官方网站或其他可信来源获取。

2. 安装磁盘镜像或光盘:将 Windows ISO 映像文件复制到服务器上的某个位置,以供虚拟机安装使用。您可以将其放在本地文件系统上,或者使用共享存储或网络存储等方式。

3. 确保虚拟机配置正确:在 Virt-Manager 中,您需要创建一个新的虚拟机,并在配置过程中指定适当的硬件资源(如 CPU、内存、磁盘大小等)。

接下来,您可以按照以下步骤使用 Virt-Manager 安装 Windows 软件:

1. 打开 Virt-Manager:在终端中运行以下命令打开 Virt-Manager 图形界面:

   ````shell
   virt-manager
   ```

2. 创建虚拟机:在 Virt-Manager 中,单击 "创建新虚拟机"(或类似的按钮)开始创建虚拟机的向导。

3. 配置虚拟机:根据您的需求,按照向导的指导进行虚拟机配置。这包括选择操作系统类型(Windows)、分配 CPU 和内存资源、设置磁盘大小和网络等。

4. 安装媒体:在向导中的 "安装媒体" 步骤中,选择 "使用 ISO 映像",然后浏览并选择您下载的 Windows ISO 文件。

5. 完成虚拟机创建:按照向导的指示完成虚拟机配置。确保您已经选择了正确的 ISO 映像文件和其他设置。

6. 启动虚拟机:在 Virt-Manager 中,选择新创建的虚拟机,然后点击 "开始" 或 "启动" 按钮,以启动虚拟机。

7. 安装 Windows 操作系统:虚拟机启动后,它会加载您选择的 Windows ISO 映像文件,并进入安装过程。按照 Windows 安装程序的指示进行操作,包括选择语言、分区磁盘、输入许非常抱歉,由于平台限制,我无法提供关于如何破解或非法获取软件的指导。我鼓励您遵守各个软件的许可协议和知识产权法律。如果您有合法的 Windows 软件许可证,您可以按照以下步骤在 Virt-Manager 中安装 Windows 软件:

1. 获取 Windows ISO 映像文件:确保您拥有合法的 Windows 操作系统许可证,并从 Microsoft 官方网站或其他合法渠道下载对应版本的 Windows ISO 映像文件。

2. 创建虚拟机:使用 Virt-Manager 创建一个新的虚拟机。您可以指定虚拟机的名称、内存、CPU 和存储等配置。

3. 配置虚拟机设置:在 Virt-Manager 中,您可以设置虚拟机的硬件配置,例如处理器、内存、磁盘和网络等。

4. 安装 Windows 操作系统:在 Virt-Manager 中,选择您创建的虚拟机,然后选择 "开始" 或 "启动",虚拟机将启动。

5. 将 Windows ISO 映像文件挂载到虚拟机:在虚拟机启动后,将之前下载的 Windows ISO 映像文件挂载到虚拟机的光驱中。这可以通过在 Virt-Manager 中选择虚拟机,然后在菜单中选择 "虚拟机" -> "管理" -> "详细信息" -> "硬件" -> "光驱" -> "文件" 来完成。

6. 完成 Windows 安装:在虚拟机中,按照 Windows 安装程序的指示进行操作,完成 Windows 操作系统的安装过程。

相关文章:

ubuntu服务器上安装KVM虚拟化

今天想着在ubuntu上来安装一个windwos操作系统&#xff0c;原因是因为我们楼上有几台不错的服务器&#xff0c;但是都是linux系统的。 今天我想着要给同事们搭建一个chatgpt环境&#xff0c;用来开发程序&#xff0c;但是ubuntu上其实也可以安装我嫌麻烦&#xff0c;刚好想折腾…...

SpreadJS 集成使用案例

SpreadJS 集成案例 介绍&#xff1a; SpreadJS 基于 HTML5 标准&#xff0c;支持跨平台开发和集成&#xff0c;支持所有主流浏览器&#xff0c;无需预装任何插件或第三方组件&#xff0c;以原生的方式嵌入各类应用&#xff0c;可以与各类后端技术框架相结合。SpreadJS 以 纯前…...

单挑力扣(LeetCode)SQL题:534. 游戏玩法分析 III(难度:中等)

题目&#xff1a;534. 游戏玩法分析 III &#xff08;通过次数23,825 | 提交次数34,947&#xff0c;通过率68.17%&#xff09; Table:Activity----------------------- | Column Name | Type | ----------------------- | player_id | int | | device_id | int…...

【OpenCV】告别人工目检:深度学习技术引领工业品缺陷检测新时代

目录 前言 机器视觉 缺陷检测 工业上常见缺陷检测方法 内容简介 作者简介 目录 读者对象 如何阅读本书 获取方式 前言 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。 点击跳转到网站 机器视觉…...

VR全景图片制作时有哪些技巧,VR全景图片能带来哪些好处

引言&#xff1a; VR全景图片是通过虚拟现实技术制作出的具有沉浸感的图片&#xff0c;能够提供给用户一种身临其境的感觉。在宣传方面&#xff0c;它有着独特的优势和潜力&#xff0c;能够帮助吸引更多的潜在客户&#xff0c;那么VR全景图片制作时有哪些技巧&#xff0c;VR全…...

【VUE】Flask+vue-element-admin前后端分离项目发布到linux服务器操作指南

目录 一、Flask后端发布环境搭建1.1 python环境第一步&#xff1a;安装python环境第二步&#xff1a;配置python虚拟环境 1.2 uwsgi环境1.3 nginx配置1.4 测试 二、VUE前端发布环境搭建2.1 配置修改2.2 打包上传服务器2.3 nginx配置2.3 测试 三、联合调试 一、Flask后端发布环境…...

django的gunicorn的异步任务执行

gunicorn 本身是一个WSGI HTTP服务器&#xff0c;用于运行Python的web应用&#xff0c;如Django项目。它并不直接提供执行异步任务的功能。异步任务通常是指那些你想要在web请求之外执行的后台任务&#xff0c;如发送电子邮件、处理长时间运行的计算或与外部API交互等。 在Dja…...

KEPServerEX 6 之【外篇-2】PTC-ThingWorx服务端软件安装 PostgreSQL本地安装

---------------------------安装相关信息--------------- 默认用户角色 : Postgres 密码:root@123 localhost 用户角色 :postgres_tw 密码 root@123 端口 5432 ------------------------------------------------------------------ 1. WIN 安装 Postgre…...

websocket 介绍

目录 1&#xff0c;前端如何实现即时通讯短轮询长轮询 2&#xff0c;websocket2.1&#xff0c;握手2.2&#xff0c;握手过程举例2.3&#xff0c;socket.io 3&#xff0c;websocket 对比 http 的优势 1&#xff0c;前端如何实现即时通讯 在 websocket 协议出现之前&#xff0c;…...

【IoT网络层】STM32 + ESP8266 +MQTT + 阿里云物联网平台 |开源,附资料|

目标&#xff1a;实现STM32连接阿里云物联网平台发送数据同时接收数据&#xff0c;IOT studio界面显示数据。具体来说&#xff1a;使用ESP8266 ESP-01来连接网络&#xff0c;获取设备数据发送到阿里云物联网平台并显示且oled显示屏当前的设备数据&#xff0c;通过IOT studio界面…...

数据分析工具 Top 8

你能想象一个没有工具箱的水管工吗? 没有,对吧? 数据从业者也是如此。如果没有他们的数据分析工具&#xff0c;数据从业者就无法分析数据、可视化数据、从数据中提取价值&#xff0c;也无法做数据从业者在日常工作中做的许多很酷的事情。 根据你最感兴趣的数据科学职业——数…...

AI 换脸的新时代:没有显卡也可以使用的AI换脸工具

大家好&#xff01;今天&#xff0c;我要为大家介绍一个即使没有显卡&#xff0c;也能体验AI换脸的工具&#xff01;是的&#xff0c;您没听错&#xff0c;无论您的电脑配置如何&#xff0c;只要运行在Windows 10或Windows 11上&#xff0c;都可以轻松使用这一神奇工具。这就是…...

3.Python中的循环结构

Python中的循环结构 一、回顾分支练习题 1、判断是否为一个合法三角形 需求:输入三角形的3边,如果两边的长度大于第三条边,则代表是一个合法三角形 # 1、提示用户输入三角形的三边长度 a = int(input(请输入第一条边的长度:)) b = int(input(请输入第二条边的长度:)) …...

机器学习之BP神经网络精讲(Backpropagation Neural Network(附案例代码))

概念 BP神经网络(Backpropagation Neural Network)是一种常见的人工神经网络,它通过反向传播算法来训练网络,调整连接权重以最小化预测输出与实际输出之间的误差。这种网络结构包含输入层、隐藏层和输出层,使用梯度下降算法来优化权重。 结构: BP神经网络(Backpropag…...

安全生产人员定位系统助企业实现智能化管理,提高生产安全性和效率

安全生产人员定位系统是基于物联网技术的系统&#xff0c;通过集成各种传感器和通信技术&#xff0c;实时监测员工的位置和活动状态。该系统可以帮助企业管理者了解员工的工作状态&#xff0c;及时发现潜在的安全隐患&#xff0c;从而采取相应的措施&#xff0c;保障员工的安全…...

动态规划 多源路径 字典树 LeetCode2977:转换字符串的最小成本

涉及知识点 动态规划 多源最短路径 字典树 题目 给你两个下标从 0 开始的字符串 source 和 target &#xff0c;它们的长度均为 n 并且由 小写 英文字母组成。 另给你两个下标从 0 开始的字符串数组 original 和 changed &#xff0c;以及一个整数数组 cost &#xff0c;其中…...

Hadoop集群找不到native-hadoop

1.问题描述 hive 运行中的问题&#xff0c;需要把把native复制进去 /usr/lib 2023-02-15 19:59:42,165 WARN scheduler.TaskSetManager: Lost task 11.0 in stage 1.0 (TID 3, common4, executor 2): java.lang.RuntimeException: Hive Runtime Error while closing operators…...

解决阿里云远程连接yum无法安装问题(Ubuntu 22.04)

解决阿里云远程连接yum无法安装问题&#xff08;Ubuntu 22.04&#xff09; 第一步 进入阿里云远程连接后&#xff0c;尝试安装宝塔面包第二步&#xff1a;尝试更新软件包等一些列操作第三步&#xff1a;完成上述操作之后&#xff0c;尝试安装yum第四步&#xff1a;尝试更换清华…...

springboot 查询

ServiceImpl中 getBaseMapper()的使用 public IPage<ProductPageVO> getProductPage(Integer regionOrCityCode, Integer brandId, LocalDate usedDate, Page<ProductPageVO> page) {return getBaseMapper().getProductPage(regionOrCityCode, brandId, usedDate, …...

【分布式链路追踪技术】sleuth+zipkin

目录 1.概述 2.搭建演示工程 3.sleuth 4.zipkin 5.插拔式存储 5.1.存储到MySQL中 5.2.用MQ来流量削峰 6.联系作者 1.概述 当采用分布式架构后&#xff0c;一次请求会在多个服务之间流转&#xff0c;组成单次调用链的服务往往都分散在不同的服务器上。这就会带来一个问…...

【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15

缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下&#xff1a; struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...

Prompt Tuning、P-Tuning、Prefix Tuning的区别

一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...

基于Uniapp开发HarmonyOS 5.0旅游应用技术实践

一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架&#xff0c;支持"一次开发&#xff0c;多端部署"&#xff0c;可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务&#xff0c;为旅游应用带来&#xf…...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包&#xff1a; for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

安卓基础(aar)

重新设置java21的环境&#xff0c;临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的&#xff1a; MyApp/ ├── app/ …...

基于 TAPD 进行项目管理

起因 自己写了个小工具&#xff0c;仓库用的Github。之前在用markdown进行需求管理&#xff0c;现在随着功能的增加&#xff0c;感觉有点难以管理了&#xff0c;所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD&#xff0c;需要提供一个企业名新建一个项目&#…...