从UEFI如何启动到系统

从UEFI如何启动到系统

文章目录

  • 从UEFI如何启动到系统
    • UEFI须知
    • 1. 进入UEFI setup界面
    • 2. Setup界面
    • 3. BootManager界面
    • 4. Shell下操作
      • 4.1. 显示启动设备
      • 4.2. 进入设备及查看文件
      • 4.3. UEFI下的其他操作
      • 4.4. UEFI下的一些Shell命令
    • 5. UEFI下更新固件方法
    • GRUB
    • GRUB界面
    • 1. 编辑GRUB选项
    • 2. 手动找grub.cfg
    • 3. 没有grub.cfg怎么办?

UEFI须知

1. 进入UEFI setup界面

在串口或者显示界面下显示BDS字样的时候(如下图), 稍微按按上下键即可进入Setup界面
UEFI Booting

2. Setup界面

无论是Intel还是loongson, BIOS下都有设置的接口, PMON也有, 无非是显示样式差异, 原理相通. LoongsonUEFI界面如下图

不同的条目, 用于设置不同的功能. 其中普通用户通常只需要进入BootManager界面选择相应的启动目标即可.
Setup

3. BootManager界面

在下图区域1中为条目名称, 区域2中为UEFI下解析的路径名(有点专业,不用理解), 总之, 左边看不懂时就看右边, 找相关的关键字, 比如下图, 左侧是设备名, 不太能看出是什么设备, 右侧则有Sata字样可以识别.
BootManager

4. Shell下操作

通常, 正常情况下, 系统直接启动, 用户无法感知上述界面的存在, 但当出现一些问题时, 我们可能需要进入Shell下进行操作, 如上图中的第二个条目, 选中后回车进入下图界面:
Shell

4.1. 显示启动设备

正常情况下, 进入Shell后仍然会提示启动相关的设备, 如上图, 倘若由于操作过多, 或者显示bug等, 我们还想再次看到相关的显示, 则需要通过map命令再次显示,如下图:

map命令

可以看到, 其实和默认进入Shell的打印是一样的, 不过为了防止打印被冲刷掉, 还是要会一下.

4.2. 进入设备及查看文件

看上图, 图中黄色字体, FS0: , BLK0:等, 可以理解为不同设备的重命名, 其中FS开头的标识表示该设备的文件系统可以识别, BLK开头的表示表示该设备不存在文件系统, 或者文件系统不可识别. 总之对我们有意义的就只有FS开头的标识.

只有含有文件系统的设备我们才能访问, 所以UEFI下需要访问的GRUB, 内核等EFI文件一定是放在UEFI下能够识别的文件系统中的. 也就是FS开头的设备.

如何访问文件系统中的文件呢, 先看下图:

文件操作

进入设备时比较特殊, 输入FS0:即可,不能是cd FS0:, 也不能不加后面的冒号.

进入设备之后就和linux的操作很类似了, 使用cd, ls即可.

然后ls看到的緑色显示的文件, 也就是UEFI下的可执行文件–EFI文件. 运行时也无需像linux那样在前面加路径才能执行, UEFI下直接输入文件名即可.

哦, 值得一提, UEFI下可以通过Tab键实现文件名补全.

4.3. UEFI下的其他操作

如第一节的内容, UEFI下的界面下通常会有很多选项, 其中用户比较关心的选项大概有:

  1. 快速启动: 忽略部分设备初始化, 启动速度加快, 比如x86部分机器需要关闭此选项才能更改启动顺序, 选择系统安装盘.
  2. 安全启动: 开启安全校验, 部分外插设备未经过校验可能无法识别, 所以x86装机时可能也需要关闭此项, 防止U盘无法识别.
  3. 传统模式: 通常是用于兼容很久的系统启动. 比如龙芯的机器开启传统模式可以安装旧世界系统, 关闭则安装新世界系统, x86下可能叫CSM…, 开启则可以引导MBR分区的硬盘, 关闭则引导GPT格式硬盘.
  4. 高级选项:一些高级的功能开关, 普通用户可能不需要使用, 比如上述传统模式, 龙芯的机器将其放在了高级选项中, 英文是LegacyMode, (看不懂这种英文的同学自我PUA一下). 其他如有需求请在工程师指导下使用.

4.4. UEFI下的一些Shell命令

比如pci命令, 具体可以通过pci -?查看具体使用方法, 这里不详细演示.

常用的命令有:cd, ls, map, pci, mm, dmem, ifconfig, edit, vers等.

5. UEFI下更新固件方法

还有spi命令不得不单独强调, 一个产品往往需要保持更新才能更好的满足用户的需求. 固件是尤其重要的一点.

当我们需要更新固件(UEFI和PMON都是固件)时, 在Shell下找到文件后, 通过spi -u filename的命令, 即可完成固件更新.

当然图形界面下也有相关接口, 可以自己理解一下英文再操作.

GRUB

GRUB界面

GRUB主界面

如图, GRUB界面下列出了几个选项, 其中第一项vm.mxd是我自己加的内核, 第二项Loongnix GNU/Linux是系统自带内核, 第三项Advanced options for Loongnix GNU/Linux是高级选项, 通常包含一些恢复模式的选项, 第四项是System Setup–系统设置, 其实就是进入UEFI Setup界面.

然后在界面的最下方:

Use the ^ and v keys to select which entry is highlighted.
Press enter to boot the selected OS, e to edit the commands
before booting or c for a command-line.

翻译一下:

通过按上下键选择选项, 按执行进入选项, 按e去编辑选项, 按c进入GRUB的命令行.

1. 编辑GRUB选项

通常我们通过UEFI执行GRUBefi文件即可进入GRUB界面, 然后回车便可以启动内核, 但是倘若内核无法正常启动, 我们需要加串口调试, 就需要我们按e去编辑选项, 比如增加串口或者进入单用户模式等.

e后进入下图, 我们可以将光标通过上下左右按键, 移动至linux开头的那一行, 并在行末加入想要的参数比如串口console=ttyS0,115200 earlycon=uart,mmio,0x1fe001e0.

GRUB编辑

可以看到, 界面最下面仍然有一些文字, 告诉我们按下Ctrl-X组合键或者F10可以直接启动, 按下Ctrl-cF2进入到GRUB命令行, 按下ESC可以退回上一步.

2. 手动找grub.cfg

当我们在UEFI下执行GRUBefi文件后, 加入grub.cfg的路径有问题, 则需要我们手动找到grub.cfg并且加载:

GRUB命令行操作

逐个说明上述命令: 首先ls命令能够看到当前能够识别的设别, 其中hd0表示一块硬盘(Hard Disk0), 如果有多个硬盘将以hdx的形式显示.

但是hd0并不具有文件系统, (hd0,msdos2)这种形式才表示有文件系统, msdos指MBR的分区格式, msdos2也就表示MBR硬盘上第二个分区.

然后逐级用ls命令找到grub.cfg的路径:(hd0,msdos2)/boot/grub/grub.cfg.

最后通过configfile命令, 解析grub.cfg文件, 即可重新回到GRUB的主界面.

3. 没有grub.cfg怎么办?

有时候, 我们会遇到有grub, 但是没有grub.cfg的情况, 这时, 我们可以稍微背下来两条命令, 这两条也就是grub.cfg中加载内核和加载initrd的命令: linux命令和initrd命令

linux命令后面加内核的路径, 以及内核启动参数

initrd命令后面加initrd的路径即可.

然后执行boot即可启动. 如下图:

grub命令启动内核

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/116899.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【unity小技巧】实现由滑动条控制音量的大小

文章目录 前言开始1.配置BGM2.滑动条3.文本组件4.新增音量控制脚本 完结 前言 这期来一个比较基础的课程,也是比较常用的,unity使用滑动条控制音量的大小 开始 1.配置BGM 2.滑动条 3.文本组件 4.新增音量控制脚本 public class VolumeController : M…

数据结构-邻接表广度优先搜索(C语言版)

对于一个有向图无向图,我们下面介绍第二种遍历方式。 广度优先搜索,即优先对同一层的顶点进行遍历。 如下图所示: 该例子,我们有六个顶点, 十条边。 对于广度优先搜索,我们先搜索a,再搜索abc…

人工智能-深度学习计算:层和块

我们关注的是具有单一输出的线性模型。 在这里,整个模型只有一个输出。 注意,单个神经网络 (1)接受一些输入; (2)生成相应的标量输出; (3)具有一组相关 参数…

【Unity之UI编程】如何用UGUI搭建一个登录注册面板

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:UI_…

15 _ 二分查找(上):如何用最省内存的方式实现快速查找功能?

今天我们讲一种针对有序数据集合的查找算法:二分查找(Binary Search)算法,也叫折半查找算法。二分查找的思想非常简单,很多非计算机专业的同学很容易就能理解,但是看似越简单的东西往往越难掌握好,想要灵活应用就更加困难。 老规矩,我们还是来看一道思考题。 假设我们…

深度学习之基于Yolov5人体姿态摔倒识别分析报警系统(GUI界面)

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 系统设计概述: 传感器采集:通过在场景中布置摄像头或红外传感器等设备,采集人体…

聊一聊关于手机Charge IC的电流流向

关于手机Charge,小白在以前的文章很少讲,一是这部分东西太多,过于复杂。二是总感觉写起来欠缺点什么。但后来想一想,本是抱着互相学习来写文章的心理态度,还是决定尝试写一些。 关于今天要讲的关于手机Charge的内容&a…

2023 electron最新最简版打包、自动升级详解

这里我将讲解一下从0搭建一个electron最简版架子,以及如何实现打包自动化更新 之前我有写过两篇文章关于electron框架概述以及 常用api的使用,感兴趣的同学可以看看 Electron桌面应用开发 Electron桌面应用开发2 搭建electron 官方文档:ht…

使用Ansible中的playbook

目录 1.Playbook的功能 2.YAML 3.YAML列表 4.YAML的字典 5.playbook执行命令 6.playbook的核心组件 7.vim 设定技巧 示例 1.Playbook的功能 playbook 是由一个或多个play组成的列表 Playboot 文件使用YAML来写的 2.YAML #简介# 是一种表达资料序列的格式,类似XML #特…

康耐视VisionPro+C#程序编写

添加引用,用什么就添加什么 康耐视控件名 代码实现 引用命名空间 using Cognex.VisionPro.PMAlign; 实例化工具及训练区域设置 CogPMAlignTool cogPMAlignTool new CogPMAlignTool(); cogPMAlignTool.InputImage cogImageFileTool.OutputImage as CogImage8…

MATLAB_双馈风力发电机-900V直流混合储能并网系统MATLAB仿真

仿真平台为:matlab2016b 双馈感应风机模块、采用真实风速数据。混合储能模块、逆变器模块、转子过电流保护模块、整流器控制模块、逆变器控制模块等模块。 下图分别为母线直流电压以及有功无功输出: 混合储能系统——蓄电池以及超级电容的SOC为&#x…

【Linux系统编程】系统用户和权限的操作

目录 一,Linux的用户 1,用户之间的切换 2,超级用户权限的使用 二,Linux的文件权限 1,文件信息的介绍 2,文件权限的修改 3,用户的修改 3-1,拥有者的更改 3-2,所属…

国际物流常见风险如何规避_箱讯科技

外贸物流是国际贸易的重要环节,其管理和效率的高低直接影响着贸易的成本和效益。因此,外贸企业应该重视物流的组织和管理,提高物流运作的效率。 国际物流基础知识 01什么是“双清包税”和“双清不包税” 双清包税上门又叫双清包税到门&…

vue3+element Plus实现弹框的拖拽、可点击底层页面功能

1、template部分 <el-dialog:modal"false"v-model"dialogVisible"title""width"30%"draggable:close-on-click-modal"false"class"message-dialog"> </el-dialog> 必须加的属性 modal:是否去掉遮罩层…

设计模式_策略模式

策略模式 介绍 设计模式定义案例问题堆积在哪里解决办法策略模式对算法进现封装&#xff0c;抽象 如&#xff1a;IF elseIF 一大堆 可以配合工厂模式使用炼丹炉里做饭 要求 菜谱 和 食材可配置问题在可配置 菜谱封装菜谱 然后抽象菜谱&#xff0c;为了统一使用方法 类图 Cai…

第一章 introduction to software testing

文章目录 基本概念validation / verificationinput domain / output domaindeterministic / non-deterministicterminate / not-terminate Testing概念testing 的目的Fault, failure, error测试三要素 (3 essential pieces of information)测试输入预期输出执行测试 test execu…

Excel·VBA工作表导出为图片

《Excel转图片别再截图啦&#xff01;用这4个方法&#xff0c;高清且无损&#xff01;》&#xff0c;excel转为图片一般方法较为简单&#xff0c;那么能否使用vba将excel转为图片 选中区域导出为图片 zoom设置为2&#xff0c;导出图片较为清晰 Sub 选中区域导出为图片()Dim …

【案例】3D地球

效果图&#xff1a; 直接放源码 <!DOCTYPE html> <html> <head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><meta name"viewport" content"initial-scale1.0, user-scalableno" …

使用pandas处理excel文件【Demo】

一、代码示例 import pandas as pd from pandas import Series,DataFrame from pandasql import sqldf import matplotlib.pyplotidInfos DataFrame(pd.read_excel(home_data.xlsx))print(idInfos.head(2))print(idInfos.dtypes)# print(idInfos[:][姓名]) # 自定义一个函数s…