【1.安装ubuntu22.04】
目录
- 参考文章链接
- 电脑参数
- 安装过程
- 准备
- 查看/更改引导方式
- 查看/更改磁盘的分区格式
- 关闭BitLocker加密
- 压缩分区
- 关闭独显直连
- 制作Ubuntu安装盘
- 下载镜像
- 制作启动盘
- 进入BIOS模式进行设置
- Secure Boot
- 引导项顺序
- try or install ubuntu
- 进入安装
- 分区
- 启动引导器
- 个人信息和重启
参考文章链接
Windows11 + Linux
电脑参数
电脑名称:七彩虹橘宝R15
CPU:AMD锐龙 R7-7435H
显卡: NVIDIA GeForce RTX4050独显 6GB显存
内存: DDR5 16GB
固态硬盘:1TB
安装过程
准备
准备一个8G以上的尽量好用的U盘
查看/更改引导方式
目的:确保双系统安装完成之后可以有双系统菜单
Win+R
呼出运行界面,输入:msinfo32
,确定,会弹出一个系统信息的面板(或者直接搜索系统信息)
在项目栏找到BIOS模式,看对应的值,是否为UEFI,如果是就OK,我的电脑是UEFI
,跳到下一步。
如果BIOS模式的值不是UEFI,而是显示传统(Legacy),那么就要改成UEFI,重启电脑狂按对应按键进入BIOS模式(如果不知道按哪个可以看看下面这个表,一般电脑开机的时候也会很快闪过按什么键的提示)
查看/更改磁盘的分区格式
目的:避免安装Ubuntu到最后了却因为引导器安装失败功亏一篑:
右键开始按钮选择磁盘管理
在Windows所在的磁盘(图中的磁盘0)左边灰色块右键,选择属性
在卷这栏可以看到磁盘分区形式,是否为GPT格式,如果是就OK!跳到下一步
如果磁盘分区形式显示的是:主启动记录(MBR),那么就要修改为GPT格式
关闭BitLocker加密
避免装双系统过程中进入烦人的BitLocker恢复模式
如果在上面的操作中打开磁盘管理后,C盘D盘没有写着:(BitLocker 已加密)这些字就OK
如果有BitLocker加密,在设置-隐私和安全性里找到设备加密(或者直接搜索bitlocker打开设备加密设置),把设备加密的开关关闭就好。(不过,磁盘已存储的数据越多,关闭设备加密耗时越长,如果电脑里面东西比较多的话最好合理安排一段空闲时间并接通电源再进行哦!)
压缩分区
在磁盘管理中挑选一个分区压缩给Ubuntu,右键选择压缩卷,如果发现可以输入的可压缩空间大小远小于磁盘剩余空间,可以使用DiskGenius工具先进行分区压缩。
关闭独显直连
如果电脑有配备独立显卡并且有独显直连的功能,最好先关闭,以避免安装Ubuntu系统时遇到显卡驱动问题,安装好双系统再启用独显直连功能。
这里可以在windows设备管理器右键关闭显卡,等安装完之后再开启独显
制作Ubuntu安装盘
下载镜像
首先下载Ubuntu的映像文件,可以在官网下载,也可以在各种镜像网站下载,看哪个快下载哪个。
各种镜像网站
官方release
制作启动盘
ubuntu22.04.5有4G多,大概半小时下完,这个时候可以同时下载制作启动盘的工具。我试过ventoy
不够效果很不理想,经常出现复制镜像文件到u盘到一半的时候电脑识别不到u盘,所以我后面改用之前使用过的rufus:
轻松创建 USB 启动盘
设置如下
进入BIOS模式进行设置
制作好启动盘之后将U盘插入要装ubuntu系统的电脑。然后进入BIOS模式
我的电脑是用F2进入BIOS模式,进来如下图:
Secure Boot
关闭安全启动(Secure Boot),避免启动安装盘时出现Verification failed错误
我的电脑这里是enforce secrue boot
这里一定要是Disabled
引导项顺序
把U盘设置为最优先引导项,避免要进入U盘的Ubuntu安装程序时,电脑自动返回到Windows系统启动。在BIOS设置界面找到Boot启动顺序列表,把要用的U盘设备按提示移到最前面
记得做完所有更改之后保存,继续。
try or install ubuntu
在进行到这一步的时候如果直接会车可能会卡死,左上角一直显示一个“-”的黑屏现象,这大概是因为英伟达显卡的驱动问题。
进入安装
在经历过ubuntu启动之后会进入安装界面
我们这里选择简体中文和安装ubuntu
我这里选择正常安装和安装第三方软件,这样之后就不用自己安装那么多东西
分区
继续安装之后我们选择安装类型选择其他选项,这样才可以自己手动分配内存空间(如果经验不足没有把握的话还是选择第一个吧)
❗❗❗注意,接下来是安装ubuntu可以说是最重要的步骤之一。如果不小心把windows的磁盘格式化了,那么就很麻烦,所以要看好磁盘大小和类型,以免出错。
分区的重要性如下:
系统稳定性与数据安全性
- 隔离风险:将系统分区与数据分区分开,可以有效降低系统故障对数据的影响。例如,系统分区出现故障或需要重新安装系统时,数据分区中的文件和数据不会受到影响,从而保障了数据的安全性。
- 备份与恢复:合理的分区方案便于数据的备份和恢复。用户可以单独对数据分区进行备份,而无需备份整个系统分区,节省了备份时间和存储空间。在系统出现问题时,也能够快速恢复数据分区中的重要数据。
系统性能优化
- 磁盘读写效率:不同的分区可以分配给不同的磁盘或磁盘区域,从而优化磁盘的读写效率。例如,将系统分区放在磁盘的内圈区域,数据分区放在外圈区域,可以减少磁盘寻道时间,提高数据读写速度。
- 内存管理:通过设置合理的交换分区大小,可以优化系统的内存管理。交换分区是系统在物理内存不足时,将部分内存数据暂时存储到磁盘上的区域。合理设置交换分区大小,可以避免系统因内存不足而频繁进行磁盘交换操作,从而提高系统的整体性能。
系统灵活性与可扩展性
- 多系统共存:合理的分区方案可以方便用户在同一台计算机上安装多个操作系统。例如,用户可以在一个硬盘上同时安装Ubuntu和Windows操作系统,通过设置不同的分区来分别存储两个操作系统的数据和配置文件,实现多系统的灵活切换和共存。
- 系统升级与扩展:随着用户对系统功能和性能要求的不断提高,可能需要对系统进行升级或扩展。合理的分区方案可以方便用户在不破坏现有数据的情况下,对系统进行升级或添加新的功能模块。例如,用户可以在数据分区中添加新的软件包或配置文件,而无需重新安装整个系统。
数据分类与管理
- 便于数据分类:用户可以根据自己的需求和使用习惯,将不同类型的数据存储在不同的分区中。例如,将文档、图片、视频等个人数据存储在一个分区中,将工作相关的数据存储在另一个分区中,便于数据的分类和查找。
- 提高数据管理效率:合理的分区方案可以提高数据管理的效率。用户可以对不同分区中的数据进行单独的备份、加密、压缩等操作,根据数据的重要性和使用频率,制定不同的数据管理策略,从而更好地保护和管理数据。
这里有个技巧:先分逻辑分区,再分配主分区。不然可能会出现问题。还有就是/home分区过小可能导致用户数据存储空间不足;交换分区过小可能导致系统在内存不足时运行缓慢或崩溃,所以这两个区可以大一点
我习惯的分区是home、swap、EFI、根分区。这里面只有swap是主分区。
所以无论怎么分,都不要把swap放在最前面分就行了。
下面介绍一下各个分区的用途:
home分区存放的是用户的个人数据,类似于D盘E盘
swap交换分区,虚拟内存,这个要和自己的电脑内存一样大,我的是16G
EFI系统分区,是存放启动文件的,我的启动方式是UEFI,所以是要创建EFI分区,还要设置引导。另一种Legacy启动方式就要创建boot分区(默认ext4格式),和boot引导。
/(根分区):没什么好说的,顾名思义
总结一下表格就是:
名称 | 大小 | 类型 | 位置 | 用途 | 文件系统 |
---|---|---|---|---|---|
/home | 300G | 逻辑分区 | 空间起始位置 | 个人数据 | ext4日志文件系统 |
swap | 16G | 主分区 | 空间起始位置 | 交换空间 | swap |
EFI系统分区(ESP) /boot/efi | 1GB | 逻辑分区 | 空间起始位置 | 存放启动文件 | FAT32 (EFI) |
/(根分区) | 83G | 逻辑分区 | 空间起始位置 | 主分区根目录 | ext4日志文件系统 |
这里面要注意、EFI系统分区的时候类型应该是EFI,否则可能会因为windows已经有一个启动器而无法分区成功。
启动引导器
在安装Ubuntu时,选择“安装启动引导器(Bootloader)的设备”是一个关键步骤。这个选项决定了GRUB(GRand Unified Bootloader,启动引导程序)将被安装到哪个设备上。GRUB的作用是管理系统的启动过程,允许用户选择启动不同的操作系统。
注意:sda3 表示磁盘 a 的第三个分区,sdc1 表示磁盘 c 的第一个分区
最后的安装启动器设备 如果有/dev/sda 就是整块硬盘的那一个,可以选择,让ubuntu引导windows
有些人选择的是/boot 对应的分区 但是安装完毕后得进入windows使用EasyBCD来维护引导而且感觉windows不太友善,我是有丢失ubuntu的引导选项,又得用EasyBCD 重新设置一些。
根据搜集的资料总结,如果是EFI启动就要选择EFI分区所在的设备,不是的话就选择dev/sda
我最后的分区如下,不过有几个地方要改一下:
首先是boot/efi分区,类型应该选择EFI,还有启动引导器应该选择EFI所在设备,也就是/dev/nvmeOn1p5
,之前图片忘记拍了,只能选择没有修改前的图片放上来。
个人信息和重启
在选择好启动引导器之后,就要选择地点和填写个人信息和密码
信息配置完之后,耐心等待安装,这个过程会有点长,可以去看看ubuntu信息或者干干别的事
安装完之后提示要重启、记得按照提示拔掉u盘
接下来就安装完了,可以进入ubuntu系统了。之后输入密码进入桌面就会提醒更新和软件安装等信息。
相关文章:

【1.安装ubuntu22.04】
目录 参考文章链接电脑参数安装过程准备查看/更改引导方式查看/更改磁盘的分区格式关闭BitLocker加密压缩分区关闭独显直连制作Ubuntu安装盘下载镜像制作启动盘 进入BIOS模式进行设置Secure Boot引导项顺序try or install ubuntu 进入安装分区启动引导器个人信息和重启 参考文章…...
【设计模式-行为型】备忘录模式
一、什么是备忘录模式 来到备忘录模式了,这个模式我感觉相对简单一些,就是备份,或者快照。跟前面一样为了加深理解,我们引入一个电影情结来说明啥是备忘录模式,以来加深大家对备忘录模式的认识。那么,在电影…...

Linux环境下的Java项目部署技巧:安装 Mysql
查看 myslq 是否安装: rpm -qa|grep mysql 如果已经安装,可执行命令来删除软件包: rpm -e --nodeps 包名 下载 repo 源: http://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm 执行命令安装 rpm 源(根据下载的…...

云原生(五十三) | SQL查询操作
文章目录 SQL查询操作 一、数据库DDL操作 1、登陆数据库 2、创建DB数据库 二、数据表DDL操作 1、创建数据表 2、RDS中SQL查询操作 三、SQL查询操作 1、RDS中SQL查询操作 SQL查询操作 一、数据库DDL操作 1、登陆数据库 2、创建DB数据库 创建一个普通账号,…...
【前端知识】常用CSS样式举例
文章目录 一、Flex盒子布局1. Flexbox 的基本概念2. Flex 容器的属性2.1 display2.2 flex-direction2.3 flex-wrap2.4 justify-content2.5 align-items2.6 align-content 3. Flex 项目的属性3.1 order3.2 flex-grow3.3 flex-shrink3.4 flex-basis3.5 flex3.6 align-self 4. 示例…...

硕成C语言1笔记
硕成C语言1笔记 这一节内容主要讲了进制转换 进制转换:十进制转其他进制用短除法,最后逆序输出十六进制的15表示的是F,255的十六进制是:FF其他进制转十进制:按权展开,从n的0次方开始,一直到最…...
[SAP ABAP] Debug Skill
SAP ABAP Debug相关资料 [SAP ABAP] DEBUG ABAP程序中的循环语句 [SAP ABAP] 静态断点的使用 [SAP ABAP] 在ABAP Debugger调试器中设置断点 [SAP ABAP] SE11 / SE16N 修改标准表(慎用)...
理解 InnoDB 如何处理崩溃恢复
在数据库领域,数据的一致性与可靠性至关重要。InnoDB 存储引擎的崩溃恢复机制是保障数据安全的核心,其中 Doublewrite Buffer 和 Redo Log 发挥着关键作用。下面,我们将详细探讨 InnoDB 从写入到崩溃恢复的全过程。 一、写入流程 修改页面&…...

UE5 蓝图学习计划 - Day 8:触发器与交互事件
在游戏开发中,触发器(Trigger) 和 交互事件(Interaction Events) 是实现游戏动态交互的关键。例如,当角色接近一扇门时,它可以自动打开,或者当玩家进入特定区域时,游戏触…...
根据接口规范封装网络请求和全局状态管理
封装通用页面接口网络请求 axios (request)封装见:https://blog.csdn.net/XiugongHao/article/details/143449863 /*** 封装通用页面的增删改查接口*/ export function postPageListData(pageName: string, queryInfo: any) {return request.…...

Unet 改进:在encoder和decoder间加入TransformerBlock
目录 1. TransformerBlock 2. Unet 改进 3. 完整代码 Tips:融入模块后的网络经过测试,可以直接使用,设置好输入和输出的图片维度即可 1. TransformerBlock TransformerBlock是Transformer模型架构的基本组件,广泛应用于机器翻译、文本摘要和情感分析等自然语言处理任务…...

work-stealing算法 ForkJoinPool
专栏系列文章地址:https://blog.csdn.net/qq_26437925/article/details/145290162 本文目标: 重点是通过例子程序理解work-stealing算法原理 目录 work-stealing算法算法原理和优缺点介绍使用场景work-stealing例子代码 ForkJoinPoolnew ForkJoinPool(…...

DeepSeek Janus-Pro:多模态AI模型的突破与创新
近年来,人工智能领域取得了显著的进展,尤其是在多模态模型(Multimodal Models)方面。多模态模型能够同时处理和理解文本、图像等多种类型的数据,极大地扩展了AI的应用场景。DeepSeek(DeepSeek-V3 深度剖析:…...

STM32-时钟树
STM32-时钟树 时钟 时钟...

hot100_21. 合并两个有序链表
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4] 示例 2: 输入:l1 [], l2 [] 输出:[…...

代码讲解系列-CV(一)——CV基础框架
文章目录 一、环境配置IDE选择一套完整复现安装自定义cuda算子 二、Linux基础文件和目录操作查看显卡状态压缩和解压 三、常用工具和pipeline远程文件工具版本管理代码辅助工具 随手记录下一个晚课 一、环境配置 pytorch是AI框架用的很多,或者 其他是国内的框架 an…...

C++ Primer 标准库类型string
欢迎阅读我的 【CPrimer】专栏 专栏简介:本专栏主要面向C初学者,解释C的一些基本概念和基础语言特性,涉及C标准库的用法,面向对象特性,泛型特性高级用法。通过使用标准库中定义的抽象设施,使你更加适应高级…...

计算机网络安全与运维的关键 —— 常用端口全解析
目录 前言 常见端口分类及用途 20 端口(FTP 数据传输) 21 端口(FTP 消息控制) 22 端口(SSH) 23 端口(Telnet) 25 端口(SMTP) 53 端口(DNS&…...
Vue.js 的介绍与组件开发初步
Vue.js 的介绍与组件开发初步 Vue.js 的介绍与组件开发初步引言第一部分:Vue.js 基础入门1.1 什么是 Vue.js?1.2 搭建 Vue.js 开发环境安装 Node.js 和 npm安装 Vue CLI创建新项目运行示例 1.3 第一个 Vue.js 示例 第二部分:Vue.js 组件开发基…...

【仿12306项目】通过加“锁”,解决高并发抢票的超卖问题
文章目录 一. 测试工具二. 超卖现象演示三. 原因分析四. 解决办法方法一:加synchronized锁1. 单个服务节点情况2. 增加服务器节点,分布式环境synchronized失效演示 方法二:使用Redis分布式锁锁解决超卖问题1. 添加Redis分布式锁2. 结果 方法三…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...

如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
安卓基础(aar)
重新设置java21的环境,临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的: MyApp/ ├── app/ …...
Java编程之桥接模式
定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...