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

Windows11和Ubuntu22双系统安装指南

一、需求描述

台式机电脑,已有Windows11操作系统,想要安装Ubuntu22系统(版本任意)。其中Windows安装在Nvme固态上,Ubuntu安装在Sata固态上,双盘双系统。开机时使用Grub控制进入哪个系统,效果图如下所示:

二、准备条件

1、Ubuntu镜像,官网地址:Ubuntu中文版,官方教程:Ubutu安装;

2、U盘一个,用于制作镜像(官网教程有提到,也可使用其它方法);

3、Windows系统要有ESP分区(如果没有,请看附录),用于EFI引导,且主板支持UEFI引导方式。

三、开始安装

1、开机进入BIOS,选择U盘为第一启动方式,这里主板因人而异,就不再赘述;

2、选择Try Or Installer Ubuntu,如果进入之后黑屏(Ubuntu24可能会出现),可以选择safe模式;

3、 选择语言和安装Ubuntu;(安装系统时无法截图,所以手机拍照;照片倾斜是为了防止摩尔纹,请理解)

4、 键盘布局默认即可,直接点击继续;

5、设置网络,可设置可跳过,根据个人需求;

6、自定义安装内容,可根据个人需求选择;

7、安装类型选择,选择其它选项,自己设置引导位置以及分盘;

8、 首先设置引导器位置,这个位置要和Windows Boot Manager在一块,也就是ESP分区的位置,如果这一块你不显示Windows Boot Manager或者所有盘符都没有Windows Boot Manager,说明你的Windows引导一直有问题,如果这个问题不解决,安装过程中可能会出现“Grub安装失败,这是一个致命错误”。

注意,引导器位置一定时ESP分区盘符,且有Windows Boot Manager字样,这里我的是nvme0n1p2,自己根据自己情况来。

9、设置Ubuntu系统交换空间、根目录以及用户目录盘符。首先找到你想要在哪里分配你的Ubuntu系统,这里我闲置的是/dev/sdb,是我的一块SATA固态硬盘480G,我准备分配8G交换空间、120G根目录和300G的用户目录,你们可以根据自己的情况分配。

交换空间用于虚拟内存,如果内存足够大(>32G),可以不设置;

根目录相当于Windows的系统盘,我这里分配了120G左右(根据个人情况);

用户目录是你经常使用和操作的目录,建议剩下的存储都给它(根据个人情况);

推荐大小分区类型分区位置用于挂载点
2G-8G逻辑分区空间起始位置交换空间
120G左右主分区空间起始位置Ext4日志文件系统/
余下所有逻辑分区空间起始位置Ext4日志文件系统/home

上面大致介绍完情况,开始手动分配。

10、分配交换空间

在目标空闲盘符,点击+号,开始分配。(大小自定义,注意是MB)(注意是逻辑分区)

****MB-逻辑分区-空间起始位置-交换空间

11、挂载根目录

在目标空闲盘符,点击+号,开始分配。(大小自定义,注意是MB)(注意是主分区,挂载/)

****MB-主分区-空间起始位置-EXT4日志文件系统-/

12、挂载home目录

在目标空闲盘符,点击+号,开始分配。(大小自定义,注意是MB)(注意是逻辑分区,挂载/)

****MB-逻辑分区-空间起始位置-EXT4日志文件系统-/home

13、以上全部分配完成,确认好引导器位置一直三个盘符大小,点击 继续即可。

提示再次确认

继续即可。

14、设置时区,默认上海即可(后续会出现Windows与Ubuntu时间差8小时情况,解决办法见附录)

15、设置用户名与密码等信息

设置完成之后,请耐心等待完成即可。完成之后拔下U盘,BIOS设置正确的启动项,即可进入Ubuntu系统。

四、附录

4.1、Windows系统无ESP分区

新的台式机电脑,可能在没有先使用PE工具分区情况下,直接安装了操作系统,就可能会导致没有ESP分区。ESP分区,即EFI系统分区,是EFI(可扩展固件接口)系统中的一个关键组成部分。它通常位于硬盘驱动器的首个分区,用于存储启动时所需的EFI启动管理器和操作系统相关文件。此外,ESP分区的文件系统格式通常为FAT32,以确保在EFI环境下的顺畅读写和引导操作。

如果没有ESP分区,想要设置,需要确保你的主板支持UEFI启动,然后再需要以下几步:

1、你的系统盘分区表类型必须为GPT格式,不是MBR格式,这点请注意。

如果不幸你的分区形式为MBR格式,也不用慌,使用系统自带工具或者DiskGenius都可以将盘符类型改为GPT格式(具体怎么操作去百度)。但是,这两个方式有个缺陷--它会清空你的数据,如果这是你的系统盘或者数据盘,那就不考虑这两种方式。如果是空盘,那无所谓。

这里我了解到一个强大的工具---傲梅分区助手,当然不是给他做广告哈,我本身情况就是系统盘是MBR,想改成GPT,但是不想重装系统。这款软件免费(关注公众号),使用起来很方面,亲测转GPT不会丢失数据。

右键即可看到MBR可以转GPT,点击之后,自动会创建一个100MB的ESP盘符,非常的方便。如果你的盘符是系统盘,那就需要制作一个PE系统来搞。

具体怎么操作,你可以看看官网文档,非常的方便。这样就解决了无损MBR转GPT,并创建ESP分区。

4.2、ESP分区过小问题

如果你想后续美化GRUB或者其它,100MB的ESP分区,着实有点小,你可以压缩盘符,然后扩容ESP分区,系统分区扩容时如果使用DiskGenius需要让你在PE环境下,这时候可以使用系统自带的磁盘管理器压缩出400MB的盘符,然后再使用DiskGenius扩容,这样就不用重启再使用PE了。

4.3、Windows与Ubuntu系统时间差问题

1、安装时间同步软件

sudo apt install ntpdate

2、同步时间

sudo ntpdate time.windows.com

3、将系统时间同步机制由UTC改为与windows一样的LocalTime

sudo hwclock --localtime --systohc

在启动Windows的时候,更新一下Windows时间,后续就不会出现时间不同步问题了。

4.4、使用Grub Customizer美化GRUB界面

可以使用一个可视化工具,名字叫Grub customizer

安装过程:

1、添加源

sudo add-apt-repository ppa:danielrichter2007/grub-customizer

2、更新源

sudo apt-get update

3、安装

sudo apt-get install grub-customizer

可以在列表配置界面,更改启动顺序,或者移除其它启动项;

在常规设置界面,可以设置第一启动项,GRUB显示时间等;

在外观设置界面,可以自定义GRUB界面,也可以使用其它主题。

一个神奇的网站GRUB主题,里面有各式各样的,境外网站,打开速度感人。

选择你认为好看的, 本文以Grub-theme-vimix为例,根据分辨率选择下载

下载完成之后,解压,放在/boot/grub/themes/路径下,例如(主题名字自定义)

sudo cp -r Tels/ /boot/grub/themes/

重启 Grub customizer软件,在外观设置界面,下拉框可以选择预设的主题。

保存之后开机,即可看到自定义样式。

相关文章:

Windows11和Ubuntu22双系统安装指南

一、需求描述 台式机电脑,已有Windows11操作系统,想要安装Ubuntu22系统(版本任意)。其中Windows安装在Nvme固态上,Ubuntu安装在Sata固态上,双盘双系统。开机时使用Grub控制进入哪个系统,效果图…...

Dockerfile-php7.4.33

# 使用一个包含基本编译工具的基础镜像 FROM ubuntu:latestRUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \echo "Asia/Shanghai" > /etc/timezone# 更新包列表并安装必要的编译工具和库 RUN apt-get update && apt-get i…...

如何降低MCU系统功耗?

大家在做MCU系统开发的时候,是否也碰到过降低MCU系统功耗的需求? MCU系统整板功耗是个综合的数据,包括MCU功耗以及外部器件功耗,在此我们主要介绍如何降低MCU的功耗: 可以在满足应用的前提下,降低MCU的运…...

移动端 UI 风格,诠释精致

移动端 UI 风格,诠释精致...

【408考点之数据结构】数组和特殊矩阵的压缩存储

数组和特殊矩阵的压缩存储 在数据结构中,数组是一种基础的数据结构,用于存储相同类型的元素的集合。矩阵则是一个二维数组,常用于表示图像、图形以及数学运算中的系数。随着矩阵的广泛应用,一些特殊类型的矩阵也被引入并得到了有…...

26、matlab多项式曲线拟合:polyfit ()函数

1、前言 在 MATLAB 中,可以使用 polyfit() 函数进行多项式曲线拟合。polyfit() 函数可以拟合一个多项式模型到给定的数据点,从而找到最符合这些数据点的多项式曲线。以下是关于 polyfit() 函数的一些基本说明和示例用法: 语法 p = polyfit(x, y, n) x 和 y 是数据点的横纵…...

VMR,支持30+种编程语言的SDK版本管理器,支持Windows/MacOS/Linux。

官方文档地址:https://docs.vmr.us.kg/ 欢迎安装使用,分享转发,前往github star。 跨平台,支持Windows,Linux,MacOS支持多种语言和工具,省心受到lazygit的启发,拥有更友好的TUI&…...

模板初阶【C++】

文章目录 模板的作用模板的原理模板分为两大类——函数模板和类模板函数模板语法函数模板实例化模板函数的方式模板函数的类型转换既有函数模板又有已经实现的函数,会优先调用哪一个? 类模板语法模板类实例化对象模板类的模板参数可以有缺省值类模板中的…...

搭建Vue的环境

目录 # 开篇 步骤一,准备Vue 的环境 步骤二,下载Vue.js的包 步骤三,创建并打开写前端代码的文件夹 步骤四,在VSCode中引入Vue.js的包 步骤五,创建第一个vue.html Vue其他知识 Vue.config命令 # 开篇 介绍&…...

[学习笔记]-MyBatis-Plus简介

简介 Mybatis-Plus(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 简言之就是对单表的增删改查有了很好的封装。基本不用再单独写sql语句了。目前此类…...

2024.6.23 刷题总结

2024.6.23 **每日一题** 520.检测大写字母,本题是简单模拟题,考察了ASCLL码相关的知识,根据题意,本题对于字符串有三种正确的用法,所以我们分三类来讨论,先根据首字母的大小写来分类,如果首字母…...

mysql查询不同用户(操作记录)的最新一条记录

先用MAX(time) 和 group by item_id 查询出不同的item_id对应的最大时间,然后再在外面连表查询,查询 表中 item_id 和login_time 时间 相等于刚才的查询记录的记录 具体语句如下 select a.* from reyo a join (select item_id,max(login_time) as ti…...

Java中如何使用设计模式来解决编程问题?

Java中使用设计模式来解决编程问题,可以显著提高代码的可复用性、可维护性和可读性。设计模式是一套被广泛应用于软件工程的解决方案,描述了在特定上下文中面对具体问题时的可复用解决方案。以下是几种常用的设计模式及其应用场景: 单例模式…...

单机、集群和分布式

目录 1.概述 2.单机服务器 单机版的服务器的性能,设计上的瓶颈? 3.集群 解决瓶颈1: 没有解决瓶颈2: 没有解决瓶颈3: 集群的优点? 集群的缺点? 4.分布式 分布式的优点? 分…...

qt开发-10_LineEdit

QLineEdit 小部件是一个单行文本编辑器。行编辑允许用户使用一组有用的编辑函数输入和 编辑一行纯文本。包括撤消和重做、剪切和粘贴以及拖放。通过更改行编辑的 echoMode(),它 还可以用作“只写”字段,用于输入如密码等. 创建好项目后,进入 …...

福昕PDF编辑器快速去除PDF水印方法

在福昕PDF编辑器软件中打开一个带有水印的PDF文件,点击如图下所示的页面管理->水印,点击全部移除 点击 是 水印消除(注:部分类型的水印可以消除,但是有些类型的水印无法通过此方法消除)...

Cloudflare 常用操作

一、域名托管到cloudflare 登录cloudflare->添加站点->填写域名(例如阿里云)->继续选择free套餐->继续->保存cloudflare分配的DNS地址->进入阿里云域名管理->进入DNS管理/DNS修改把DNS地址修改为cloudflare分配的两个DNS->保存->回到cloudflare->…...

elementUI的table使用展开功能( type=“expand“ ),展开时合起上一次展开的内容,始终保持展开内容为一个,并且再次点击合起自身

直接上代码了没什么可讲的,主要是用到 row-key"id" :expand-row-keys"expands row-click"handleRowClick" <template><div class"ele-body"><el-card shadow"never"><!-- 数据表格 --><ele-pro-t…...

【金】?Y? python网页前端streamlit

1、如何从 Google Colab Notebook 启动 streamit参考-How to Launch Streamlit App from Google Colab Notebook !streamlit run web.py & npx localtunnel --port 8501 & curl ipv4.icanhazip.com...

数据仓库之Lambda架构

Lambda架构是一种设计大规模数据处理系统的架构模式&#xff0c;它结合了批处理和实时处理的优点&#xff0c;以应对大数据的多样性、速度和规模问题。该架构主要由三个层次组成&#xff1a;批处理层&#xff08;Batch Layer&#xff09;、速度层&#xff08;Speed Layer&#…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销&#xff0c;平衡网络负载&#xff0c;延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

三维GIS开发cesium智慧地铁教程(5)Cesium相机控制

一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点&#xff1a; 路径验证&#xff1a;确保相对路径.…...

连锁超市冷库节能解决方案:如何实现超市降本增效

在连锁超市冷库运营中&#xff0c;高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术&#xff0c;实现年省电费15%-60%&#xff0c;且不改动原有装备、安装快捷、…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹&#xff0c;并新增内容 3.创建package文件夹...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

(二)原型模式

原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序

一、开发环境准备 ​​工具安装​​&#xff1a; 下载安装DevEco Studio 4.0&#xff08;支持HarmonyOS 5&#xff09;配置HarmonyOS SDK 5.0确保Node.js版本≥14 ​​项目初始化​​&#xff1a; ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

Razor编程中@Html的方法使用大全

文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...