uEFI

How does UEFI work?

谁说我不能喝 提交于 2019-12-05 20:20:09
问题 I was studying about bootloaders when exactly came upon the term UEFI. I can understand some things about UEFI. But still, In what mode(Real,Protected,Long) does a system with UEFI start? If normal boot loaders cant work with UEFI, Then what is the alternate of boot loader while dealing with UEFI? And do I need any other programming to create one, than assembly? 回答1: UEFI firmware runs in 64 bit long mode for 64 bit platforms and flat mode for 32 bit platforms; Unlike BIOS, UEFI features its

Linux的启动过程的分析

£可爱£侵袭症+ 提交于 2019-12-05 08:53:40
Linux的启动过程 Linux系统从启动大哦提供服务的基本过程为:首先机器家电,然后通过MBR或者UEFI装载GRUB,再启动内核,再由内核启动服务,最后开始对外服务 CentOS7要经历四个主要阶段 BIOS或UEFI初始化 启动引导装载程序 转载内核 系统初始化 检测和分析systemd启动过程 systemd-analyze time 查看启动耗时,即内存空间和用户空间所花的时间 systemd-analyze blame 查看正在运行的每个单元的启动耗时,并按照时常排序 systemd-analyze verify 查看系统单元是否有语法错误    来源: https://www.cnblogs.com/linerbaby/p/11917424.html

use grub2 make dual boot cd(support bios and UEFI)

不问归期 提交于 2019-12-04 21:14:10
使用grub2 制作支持BIOS&UEFI 双启动的ISO镜像 首先就是准备grub2了。最新的Release版本可以从这里获取: ftp://ftp.gnu.org/gnu/grub . 其他信息参考 http://www.gnu.org/software/grub/ Compiler: a. Download the newest released grub2 package b. Decompress the package to path $grub2 c. mkdir ~/grub2-bios ~/grub2-uefi, cd $grub2 mkdir build build-uefi d. cd build, ../configure --prefix=${HOME}/grub2-bios, make , make install #compiler bios version e: cd ../build-uefi ../configure --with-platform=efi --target=x86_64 --prefix=${HOME}/grub2-uefi, make, make install Note: 正确的编译grub2, 你需要安装一些工具与lib,请参考grub INSTALL document。 Make bin: Bios: cd ~

解决双系统安装出现错误:the grub-efi-amd64-signed package failed to install into /target/.

霸气de小男生 提交于 2019-12-04 13:42:50
win10安装Ubuntu16.04,双系统时,出现无法将grub-amd64-软件包装入target的问题,三个解决步骤。 1,选择从存储盘启动,且是 legacy only。 2,启动盘在启动项里面会有两个选项,一个带有UEFI选项,另一个没有,选择没有UEFI启动。 3,自己分配boot位置时候,不要自己分配/boot 选项, 原因看这里。 解决! 来源: CSDN 作者: hampeter 链接: https://blog.csdn.net/hampeter/article/details/81673950

Ubuntu18.04在uefi模式下安装失败-无法将grub-amd-signed软件包安装到/target/

巧了我就是萌 提交于 2019-12-04 13:40:04
dell 的240G固态+750G机械,原本机械中有一个16.04的ubuntu,固态下有一个win10。想把Ubuntu安装到固态,之前的ubuntu盘上面还有一些数据,不想删掉,打算做三个系统。先用软碟通刻录,在legacy模式下居然识别不出U盘的系统,就报找不到操作系统。之前ubuntu16.04也是这样装的。后来百度说要uefi的模式可以,试了下真的可以进去了。但是报错。无法将grub-amd-signed软件包安装到/target/中。又百度,说这个错是ubuntu12中的bug,按理说应该不会在ubuntu18.04中的。 然后又用另一台电脑装那台是240固态只有win10,分了50G的机械。用的uefi的模式,一次安装成功。这就郁闷了。同样的设置。为啥不行。 之后又尝试了 (uefi + legacy Option Rom )、 纯uefi,(legacy + legacy option Rom);在联网环境下安装和不联网环境下安装,均没有成功。(百度到这个bug在联网时会自动修复,就试了下,联网安装真好慢)。 legacy模式装ubuntu16一切ok,为啥ubuntu18会识别不出系统?我觉得可能与主板和刻录的盘有关,主板也不好验证,就换了个刻盘的工具 Rufus.之后就OK了。 解决方案: 1.使用 Rufus 刻录ubuntu18.04的iso。 2

ubunt安装 无法将grub-efi-amd64-signed软件包安装到/target/

余生颓废 提交于 2019-12-04 13:38:44
今天用U盘安装了ubuntu 12.04,安装过程中遇到了一个很坑的问题,快到最后的时候, the grub-efi-amd64-signed package failed to install into /target/. Without the GRUB bootloader the system will not load 解决方法: (1)如果是整个盘都安装UBUNTU,不要windows了,就把把UEFI启动方式关闭,改为legacy方式。 (2)如果不想关闭UEFI,最好安装ubuntu13.10 64位,这个版本对UEFI支持较好,另外,最好手动分区,划分一个200M左右的EFI分区用来专门负责UEFI启动。 我是采用第二种方法,还是安装的ubuntu 12.04,但是分区的时候单独分了一个200M左右的EFI分区用来专门负责UEFI启动。 还用用U盘安装的方法: 点击打开链接 http://jingyan.baidu.com/album/d3b74d64aa4a6a1f77e60932.html 来源: CSDN 作者: georgeshaw1 链接: https://blog.csdn.net/GeorgeShaw1/article/details/39506227

无法将grub-efi-amd64-signed软件包装到/target/中,如果没有grub启动引导器,所安装的系统无法启动正确思路

邮差的信 提交于 2019-12-04 13:38:31
最近想要玩下Linux系统,在虚拟机里玩感觉不太好,就想做成一个移动放在u盘里的Ubuntu系统。 准备工作 1两个U盘 其中一个用来做启动盘,一个用来做安装系统的盘 启动盘稍微小些,但是系统盘要大些,最好在8G以上 2下载ubuntu,我是使用ubuntu 18.04 https://cn.ubuntu.com/?_ga=2.155320955.1503142635.1541596150-1629911143.1541386761 3Linux启动U盘制作工具,在这里我用了两个,一个是 UltraISO, 另外一个是rufus rufus https://rufus.ie/en_IE.html UltraISO直接百度搜就OK 整个过程其实就是3个步骤: 1制作启动U盘 2对bioss进行更改 3进行安装 这三步在网上都是有教程的,而我自己重点介绍怎么解决“ 无法将grub-efi-amd64-signed软件包装到/target/中,如果没有grub启动引导器,所安装的系统无法启动正确思路 ”的问题。 网上有很多的教程,我发现都是实验性的,而且不能解决问题,说网络的,说bug的,我觉的都是没有好好的思考这个问题。我自己在遇到这个问题时,被坑哭了,挨个教程来了一遍,哈哈,都不管用。其实我觉得这个问题的出现在于两个系统的匹配问题。

Reading/Writing EFI variables on Linux in kernel mode

﹥>﹥吖頭↗ 提交于 2019-12-04 12:43:31
I am working on Linux UEFI .I want to access the efi variables through my driver code. Currently I'm looking linux/efi.h API like efi.get_variable(). but I'm not getting how to call those APIs with from my driver code. struct efi efi1; efi_init(); efi_char16_t *name = (efi_char16_t *)"Boot001"; efi_guid_t *vendor = (efi_guid_t *)"8be4df61-93ca-11d2-aa0d-00e098032b8c"; u32 *attr = (u32 *)0x7; unsigned long data_size = 1024; void *data = NULL; printk("\n Showing efi info \n"); stat = efi1.get_variable(name,vendor,attr,&data_size,data); with this code I'm getting NULL value for data. So can you

这才是代码签名管理的正确姿势,你Pick了吗?

时光总嘲笑我的痴心妄想 提交于 2019-12-04 11:24:00
代码签名机制是基于PKI技术的成熟机制,帮助开发者和最终用户建立安全信任的软件发布环境和使用环境,用来保护知识产权和信誉,确认软件开发商的身份,证明自签名后软件未被修改和纂改,精确区分合法应用程序和恶意软件,保障开发者代码和消费者软件内容的安全性。 然而在代码签名的实际应用中,存在着诸多安全管理问题和安全风险,极易造成重大财务损失以及品牌损害。(如:使用不当,保管不严等造成密钥泄露;管理不善等造成证书泄露……) 看到这些新闻,是否让你感到焦虑? ■ 2010年6月 赫赫有名的震网病毒盗用著名IT企业的数字签名进行伪装。 ■ 2013年4月,台湾FTP服务器中AMI Aptio UEFI BIOS源代码泄露,甚至包括AMI专用UEFI BIOS签名测试密钥 ■ 2015年9月,D-link意外泄露私有代码签名密钥,黑客可用该密钥对恶意软件进行签名,使它更容易执行攻击。 ■ 2015年,一家韩国移动软件开发商签名证书被盗,黑客用其签名一款暴力服务器消息块(SMB)扫描程序。 ■ 2018年11月 腾讯智慧安全御见威胁情报中心发现,一款拥有用合法数字签名的挖矿木马在Windows和安卓系统中悄然流行,中毒电脑和手机会运行门罗币挖矿程序。 ■ 2019年5月 三星SmartThings 敏感的源代码、证书和密钥一起泄露,包含了iOS和Android应用的私有证书。

UEFI 模式下如何安装 Ubuntu 16.04

痴心易碎 提交于 2019-12-04 08:46:02
作者:知乎用户 链接:https://www.zhihu.com/question/52092661/answer/259583475 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 针对UEFI模式下安装Ubuntu,亲测完整教程如下: 第一步: 用U盘作为启动盘做系统。 使用UltraISO,打开系统的.ios文件,写入磁盘镜像,写入方式选择USB-ZIP+; 第二步: 设置BIOS。 打开电脑进入BIOS,关闭Secure Boot(设置为Disabled),将Boot Mode设置为UEFI Only,或设置为Both,但此时最好将UEFI/Legacy Boot Priority设置为UEFI First; 第三步: 安装系统。 重启电脑,插入U盘并从U盘启动,进入安装界面,下面逐步说明: 1)语言选择英文,建议在Linux系统下一切都使用英文的; 2)先不更新系统、先不安装第三方软件,直接过; 3)选择Something else,把现有分区全部“减”成free space,重新分区如下(大小供参考): /boot:200M,采用Logical Partition,用于efi swap:2048M,采用Logical Partition /:50G,采用Primary Partition,用于Ext 4 /home:将剩下所有空间分配给