无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
123
返回列表 发新帖
楼主: liuzhaoyzz
打印 上一主题 下一主题

[求助] 请问下有没有命令行工具添加UEFI引导序列?

    [复制链接]
61#
发表于 2023-8-19 21:14:10 | 只看该作者
本帖最后由 Bluebells 于 2023-8-19 21:22 编辑
pda8888 发表于 2023-8-19 20:50
已经添加成功过了,有bootice查看能看到,在BIOS的UEFI启动选项也能看到。

但关键是不支持使用第三方工具编辑用 bcdedit 创建的 EFI 启动项(很早之前, 我的某帖子中有说明这个情况)
使用 bcdedit 创建 EFI 文件的启动项还有一个致命缺点, 那就是在某些机子中, 会自动将新建的 EFI 启动项变为默认启动项(有几个人反馈有出现这种问题)
关于使用 bcdedit 创建 EFI 启动项的示例, 可以参考我的帖子Lenovo UEFI OKR 部署工具[+基于PECMD的开源版]中的"Lenovo_UEFI_OKR_部署工具PECMD开源版"里面的源码脚本

点评

可以在创建好EFI启动项之后,用 addlast 移动到最后。  详情 回复 发表于 2023-8-21 21:02
回复

使用道具 举报

62#
发表于 2023-8-21 15:43:09 | 只看该作者
https://www.powershellgallery.com/packages/UEFIv2/2.7

Add-UEFIBootEntry -Name "Linux" -FilePath "\EFI\BOOT\BOOTX64.EFI"

点评

这个资源不支持win7 只能win10  详情 回复 发表于 2023-8-30 10:22
这个牛B,好资源,下回来研究一下。  详情 回复 发表于 2023-8-21 20:57
回复

使用道具 举报

63#
发表于 2023-8-21 20:57:12 | 只看该作者
szwp 发表于 2023-8-21 15:43
https://www.powershellgallery.com/packages/UEFIv2/2.7

Add-UEFIBootEntry -Name "Linux" -FilePath " ...

这个牛B,好资源,下回来研究一下。
回复

使用道具 举报

64#
发表于 2023-8-21 21:02:34 | 只看该作者
Bluebells 发表于 2023-8-19 21:14
但关键是不支持使用第三方工具编辑用 bcdedit 创建的 EFI 启动项(很早之前, 我的某帖子中有说明这个情况) ...

可以在创建好EFI启动项之后,用 addlast 移动到最后。

点评

默认启动项与启动顺序没有关联  详情 回复 发表于 2023-8-21 21:05
回复

使用道具 举报

65#
发表于 2023-8-21 21:05:53 | 只看该作者
pda8888 发表于 2023-8-21 21:02
可以在创建好EFI启动项之后,用 addlast 移动到最后。

默认启动项与启动顺序没有关联
回复

使用道具 举报

66#
发表于 2023-8-27 11:34:22 | 只看该作者
多谢分享!!
回复

使用道具 举报

67#
发表于 2023-8-29 23:50:55 | 只看该作者
pda8888 发表于 2023-8-16 21:35
其实,用bcdedit 增加 UEFI 启动序列,我也折腾了很久,最后翻到一个不知名的墙外网站,最终找到了答案:
...

多谢大佬分享, 怎样判断当前系统是不是UEFI引导的呢

点评

答案就在bcdedit 如果 path 中给出的路径是 winload.efi ,则说明系统是通过 UEFI 模式启动的了  详情 回复 发表于 2023-8-30 16:34
回复

使用道具 举报

68#
发表于 2023-8-30 10:21:59 | 只看该作者
pda8888 发表于 2023-8-16 21:35
其实,用bcdedit 增加 UEFI 启动序列,我也折腾了很久,最后翻到一个不知名的墙外网站,最终找到了答案:
...

我第2第3条命令为什么一执行就出错呢, 指示引用指定项时出错, 我已经将第一步的guid替换到{guid}了

点评

把1、2、3步的命令和输出结果、错误提示贴出来看看。  详情 回复 发表于 2023-8-30 15:31
回复

使用道具 举报

69#
发表于 2023-8-30 10:22:38 | 只看该作者
szwp 发表于 2023-8-21 15:43
https://www.powershellgallery.com/packages/UEFIv2/2.7

Add-UEFIBootEntry -Name "Linux" -FilePath " ...

这个资源不支持win7 只能win10
回复

使用道具 举报

70#
发表于 2023-8-30 15:31:17 | 只看该作者
2013kyj 发表于 2023-8-30 10:21
我第2第3条命令为什么一执行就出错呢, 指示引用指定项时出错, 我已经将第一步的guid替换到{guid}了

把1、2、3步的命令和输出结果、错误提示贴出来看看。

点评

大佬, 红色字部分能设置分区的id吗, 不用盘符 bcdedit /set {guid} device partition=z:  详情 回复 发表于 2023-8-30 16:13
不好意思大佬, 我把生成的guid两边的{}删了, 加上就行了  详情 回复 发表于 2023-8-30 16:11
回复

使用道具 举报

71#
发表于 2023-8-30 16:11:54 | 只看该作者
pda8888 发表于 2023-8-30 15:31
把1、2、3步的命令和输出结果、错误提示贴出来看看。

不好意思大佬, 我把生成的guid两边的{}删了, 加上就行了
回复

使用道具 举报

72#
发表于 2023-8-30 16:13:41 | 只看该作者
pda8888 发表于 2023-8-30 15:31
把1、2、3步的命令和输出结果、错误提示贴出来看看。

大佬, 红色字部分能设置分区的id吗, 不用盘符
bcdedit /set {guid} device partition=z:

点评

可以是盘符,也可以是mountvol挂载的目录。 我的浅见:这里指定的盘符,是不会写入到nvram的,盘符是windows的概念,不是EFI的概念,bcdedit会把根据提供的盘符对应的物理磁盘和分区号(即这两个的guid)记录到nvra  详情 回复 发表于 2023-8-30 16:30
回复

使用道具 举报

73#
发表于 2023-8-30 16:30:36 | 只看该作者
2013kyj 发表于 2023-8-30 16:13
大佬, 红色字部分能设置分区的id吗, 不用盘符
bcdedit /set {guid} device partition=z:

可以是盘符,也可以是mountvol挂载的目录。
我的浅见:这里指定的盘符,是不会写入到nvram的,盘符是windows的概念,不是EFI的概念,bcdedit会把根据提供的盘符对应的物理磁盘和分区号(即这两个的guid)记录到nvram里面,就脱离了盘符的概念。
回复

使用道具 举报

74#
发表于 2023-8-30 16:34:21 | 只看该作者
2013kyj 发表于 2023-8-29 23:50
多谢大佬分享, 怎样判断当前系统是不是UEFI引导的呢

答案就在bcdedit
  1. bcdedit /enum {current}
复制代码
Windows 启动加载器
-------------------
标识符                  {current}
device                  partition=C:
path                    \windows\system32\winload.efi
description             Windows 11
locale                  zh-CN
inherit                 {bootloadersettings}

如果 path 中给出的路径是 winload.efi ,则说明系统是通过 UEFI 模式启动的了

点评

多谢大佬指导, 怎样把添加项设为第一个呢, 我用下面的方法, 会自动创建第二个项 bcdedit /default {guid}  详情 回复 发表于 2023-8-30 16:40
回复

使用道具 举报

75#
发表于 2023-8-30 16:40:49 | 只看该作者

多谢大佬指导,
怎样把添加项设为第一个引导项呢, 我用下面的方法, 会自动创建第二个项,两个项的名字一样
bcdedit /default {guid}
回复

使用道具 举报

76#
发表于 2023-8-30 20:31:34 | 只看该作者
{guid}肯定不一样。

1. 选择下次启动的{GUID}项(一次性有效)



  1. bcdedit /set {fwbootmgr} bootsequence {GUID}
复制代码



2. 置顶或置尾:


  1. bcdedit /set {fwbootmgr} displayorder {GUID} /addfirst
复制代码





  1. bcdedit /set {fwbootmgr} displayorder {GUID} /addlast
复制代码


bcdedit并不关心{GUID}是否已经存在,已经存在也不会报错。
回复

使用道具 举报

77#
发表于 2023-9-7 16:56:37 | 只看该作者
wintoflash 发表于 2020-3-26 11:05
试了一下,这个程序目前能执行以下操作:
1. 设置 BootCurrent
2. 设置 BootNext

研究的怎么样了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-6-1 08:07

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表