无忧启动论坛

标题: Grub2中如何切换BCD马甲 [打印本页]

作者: ziluopao    时间: 2018-5-12 12:18
标题: Grub2中如何切换BCD马甲
因为要引导win7 vhd所以做了一个BCD文件,改名为win7BCD,

但一改就要使用句子判断成所改的文件名,
记得G4D的判断可以这样写
dd if=()/boot/win7BCD of=()/boot/BCD

可我试了,结果会提示在grub2下没有dd命令;

那么问题来了,在grub2下如何写呢
作者: bjlbjl    时间: 2018-5-13 09:26
本帖最后由 bjlbjl 于 2018-6-18 14:21 编辑

cc
作者: bjlbjl    时间: 2018-5-13 09:35
本帖最后由 bjlbjl 于 2018-6-19 22:39 编辑

BCFMGR
作者: bjlbjl    时间: 2018-5-13 09:38
本帖最后由 bjlbjl 于 2018-6-19 22:39 编辑

BCD改名
作者: ziluopao    时间: 2018-5-13 10:13
bjlbjl 发表于 2018-5-13 09:24
在grub2的grub.cfg中加入引导bootmgr的菜单,再修改BCD,加入VHD启动项即可

试了一下,出现这种提示错误

作者: ziluopao    时间: 2018-5-13 10:18
本帖最后由 ziluopao 于 2018-5-13 10:20 编辑
bjlbjl 发表于 2018-5-13 09:26
menuentry "VHD系统 "  {
  if  search.file /BCFMGR root ; then
    insmod ntldr


能说一下,你这种办法中要做哪些准备工作吗:比如ntldr和bootmgr文件要拷入到哪里,还是说不用拷等等,我总感觉路径很重要,一旦路径错了,就是拷进去了,也白费

另外,我现在做的系统不是mbr模式的,是GTP的,需要UEFI引导
作者: bjlbjl    时间: 2018-5-13 10:31
本帖最后由 bjlbjl 于 2018-6-18 14:21 编辑

menuentry
作者: bjlbjl    时间: 2018-5-13 10:35
本帖最后由 bjlbjl 于 2018-6-19 22:40 编辑

修改EFI
作者: ziluopao    时间: 2018-5-13 10:57
bjlbjl 发表于 2018-5-13 10:35
修改EFI文件下BCD文件,加入VHD启动项

假如我想在grub2启动界面中加一个背景图片不知加啥命令呢?
作者: bjlbjl    时间: 2018-5-13 11:08
本帖最后由 bjlbjl 于 2018-6-18 16:42 编辑

background
作者: bjlbjl    时间: 2018-5-13 11:11
本帖最后由 bjlbjl 于 2018-6-18 14:22 编辑

试范


}
作者: ziluopao    时间: 2018-5-13 12:28
本帖最后由 ziluopao 于 2018-5-13 12:33 编辑
bjlbjl 发表于 2018-5-13 11:11
试范

set timeout="5"


这里有一个问题还有搞不清,因为我目前所用的grub2,是从ubuntu中提取的,估计一些文件不全,所以想下载一个全的源码,这样才能配合你的这些判断句子,如字体等,所以我百度了一下,下载了一个grub2的源码,不知是这个吗,我在源码中搜了一下unicode.pf2,没有,如图

另外这个源码是不是只有执行命令才能安装呢
作者: bjlbjl    时间: 2018-5-13 12:55
本帖最后由 bjlbjl 于 2018-6-18 14:22 编辑

新建文件夹.7z (82 Bytes, 下载次数: 3)
作者: ziluopao    时间: 2018-5-14 11:04
bjlbjl 发表于 2018-5-13 11:11
试范

set timeout="5"

按你的方法有很大的进展,比如图片出来了,但是中文字体还是不支持

但我对照了一下路径,加载中文字体的文件似乎没有错误,也不知哪里的问题

作者: ziluopao    时间: 2018-5-14 11:21
本帖最后由 ziluopao 于 2018-5-14 11:36 编辑
wintoflash 发表于 2018-5-14 11:14
菜单文件编码必须是UTF-8无BOM


这个检查了,没问题,并且文件及文件的路径也好象没有问题,我拿 不准,大家看一下

另外我怀疑是不是因为memdisk的问题造成的没有加载中文字体,因为目前文件都拷入了各自的路径了,书写的命令也应该没错的,只是该命令起作用了吗?

但我不知道如何查memdisk是否起作用
作者: ziluopao    时间: 2018-5-14 11:38
本帖最后由 ziluopao 于 2018-5-14 11:40 编辑
wintoflash 发表于 2018-5-14 11:36
路径不对。你写的字体路径是内存盘memdisk里面的,不是磁盘里面的。


这,我。。那。。。如何把memdisk里面写上字体路径呢,还有,如何查出memdisk里面是否有这些文件呢,它们的路径是多少,如果没有这些文件怎么加进去,因为以后说不定还要整别的
作者: bjlbjl    时间: 2018-5-14 11:43
本帖最后由 bjlbjl 于 2018-6-19 22:40 编辑

解压
作者: ziluopao    时间: 2018-5-14 11:47
本帖最后由 ziluopao 于 2018-5-14 11:50 编辑
bjlbjl 发表于 2018-5-14 11:43
用7z解压memdisk.tar
ont=(memdisk)/boot/grub/fonts/unicode.pf2用的是memdisk.tar内的字体文件


我查了一下memdisk中的内容,好象是有这些文件

另外,这个memdisk.tar文件要解压吗
作者: bjlbjl    时间: 2018-5-14 11:54
本帖最后由 bjlbjl 于 2018-6-19 22:41 编辑

不需要
f
作者: ziluopao    时间: 2018-5-14 11:58
bjlbjl 发表于 2018-5-14 11:54
不需要
font=(memdisk)/boot/grub/fonts/unicode.pf2中的(memdisk)就是指明memdisk.tar文件的

但学是乱码,不知问题出在哪里,文件都对,路 径也对,但就是不显示中文

作者: bjlbjl    时间: 2018-5-14 12:04
本帖最后由 bjlbjl 于 2018-6-19 22:41 编辑

菜单编辑
作者: ziluopao    时间: 2018-5-14 12:11
本帖最后由 ziluopao 于 2018-5-14 12:19 编辑
bjlbjl 发表于 2018-5-14 12:04
菜单编辑用什么编辑的,用文本编辑是不行的


用的是bootice中的实用工具编的,并且保存为了UTF8

是否是这样,虽然在菜单中引用了memdisk命令,并且其里面的文件也是正确的,有没有可能此命令没有被执行呢,没有的原因是不是因为菜单中没有引用这个命令呢,或者说grub2中干脆没有安装这个memdisk命令呢
作者: ziluopao    时间: 2018-5-14 13:03
本帖最后由 ziluopao 于 2018-5-14 13:25 编辑

如果不通过memdisk命令,只通过本地的字体文件加载不知能实现吗,命令怎么写呢
#加载unicode字体显示中文

search -f /boot/grub/locale/uncode.pf2 --set=root
loadfont /boot/grub/locale/uncode.pf2
set font=/boot/grub/locale/uncode.pf2
if loadfont ${font}; then
set gfxmode=1366x768
set locale_dir=/boot/grub/locale
set lang=zh_CN
fi
这么写?
试了不行呢

作者: bjlbjl    时间: 2018-5-14 13:54
是不是编辑有问题
我编辑了一个,试一试,其他的文件不要动
替换掉,看看能不能显示中文,如能显示,说明编辑有问题
作者: bjlbjl    时间: 2018-5-14 13:57
本帖最后由 bjlbjl 于 2018-6-18 14:23 编辑

新建文件夹.7z (82 Bytes, 下载次数: 6)
作者: bjlbjl    时间: 2018-5-14 14:50
本帖最后由 bjlbjl 于 2018-6-19 22:41 编辑


作者: bjlbjl    时间: 2018-5-14 14:51
本帖最后由 bjlbjl 于 2018-6-19 22:41 编辑

不能用
作者: exhen    时间: 2018-5-14 14:55
bjlbjl 发表于 2018-5-14 14:51
不能用bootice中的实用工具编

大佬对ubuntu引导熟悉吗
作者: ziluopao    时间: 2018-5-14 14:55
bjlbjl 发表于 2018-5-14 14:51
不能用bootice中的实用工具编

难道是BOM的问题
作者: bjlbjl    时间: 2018-5-14 14:56

作者: bjlbjl    时间: 2018-5-14 14:57
用这个
作者: bjlbjl    时间: 2018-5-14 14:58
本帖最后由 bjlbjl 于 2018-6-18 14:25 编辑

新建文件夹.7z (82 Bytes, 下载次数: 5)
作者: bjlbjl    时间: 2018-5-14 15:04
本帖最后由 bjlbjl 于 2018-6-18 16:44 编辑

编辑过
作者: ziluopao    时间: 2018-5-14 15:52
bjlbjl 发表于 2018-5-14 15:04
编辑过的cfg文件不能用,是改不回来的

我拷入了源文件cfg,然后编辑了一下,使用的是无BOM头的,提示还是这个错误
作者: bjlbjl    时间: 2018-5-14 16:23
本帖最后由 bjlbjl 于 2018-6-18 14:26 编辑

#加载unicode字体显示中文


作者: bjlbjl    时间: 2018-5-14 16:37
本帖最后由 bjlbjl 于 2018-6-18 14:26 编辑

#加载
作者: bjlbjl    时间: 2018-5-14 16:38
本帖最后由 bjlbjl 于 2018-6-18 14:26 编辑

#加载
作者: bjlbjl    时间: 2018-5-14 19:59
在不显示中文,说明字体文件有问题,需替换掉
作者: bjlbjl    时间: 2018-5-14 20:09
本帖最后由 bjlbjl 于 2018-6-18 14:26 编辑

#加载
作者: bjlbjl    时间: 2018-5-14 23:52
我提取了一个unicode.pf2文件替换试试
作者: bjlbjl    时间: 2018-5-14 23:52
本帖最后由 bjlbjl 于 2018-6-18 14:27 编辑

新建文件夹.7z (82 Bytes, 下载次数: 15)
作者: bjlbjl    时间: 2018-5-15 00:04
本帖最后由 bjlbjl 于 2018-6-18 14:27 编辑


作者: bjlbjl    时间: 2018-5-15 00:06
本帖最后由 bjlbjl 于 2018-6-18 14:27 编辑

#加载
作者: bjlbjl    时间: 2018-5-15 00:13
本帖最后由 bjlbjl 于 2018-6-18 14:28 编辑

#加载
作者: ziluopao    时间: 2018-5-16 16:18
本帖最后由 ziluopao 于 2018-5-16 16:25 编辑
bjlbjl 发表于 2018-5-15 00:13
#加载unicode字体显示中文
loadfont /boot/grub/fonts/unicode.pf2
set gfxmode=1366x768


因为我的路径和你的命令中不一样,只是改了一下路径,别的没有改,估计这样不影响吧,另外里面有字体文件,并且用你44楼中的字体替换也不行

但是结果还是乱码,见图

另外这个字体必须用memdisk来执行吗,目前我的系统中没memdisk这个文件。我不想通过memdisk来引用可以吗
作者: bjlbjl    时间: 2018-5-16 16:29
我试了以前发的文件不乱码
作者: bjlbjl    时间: 2018-5-16 16:30
本帖最后由 bjlbjl 于 2018-6-24 18:45 编辑

h

作者: ziluopao    时间: 2018-5-16 16:33
本帖最后由 ziluopao 于 2018-5-16 16:40 编辑
bjlbjl 发表于 2018-5-16 16:30


我是这样写的,你看对吗
  1. set timeout="5"
  2. set default="0"

  3. insmod all_video
  4. insmod video_bochs
  5. insmod video_cirrus
  6. insmod efi_gop
  7. insmod efi_uga
  8. insmod font
  9. insmod gfxterm
  10. insmod gfxmenu
  11. insmod gettext
  12. insmod jpeg
  13. insmod png

  14. if loadfont /boot/grub/font.pf2 ; then
  15.         set gfxmode=auto
  16.         insmod efi_gop
  17.         insmod efi_uga
  18.         insmod gfxterm
  19.         terminal_output gfxterm
  20. fi

  21. #加载unicode字体显示中文
  22. loadfont /boot/fonts/unicode.pf2
  23. set gfxmode=1366x768
  24. set locale_dir=/boot/locale
  25. set lang=zh_CN
复制代码

作者: bjlbjl    时间: 2018-5-16 16:50
本帖最后由 bjlbjl 于 2018-6-19 22:42 编辑

把fonts文件夹
作者: ziluopao    时间: 2018-5-16 16:54
bjlbjl 发表于 2018-5-16 16:50
把fonts文件夹  locale文件夹 themes文件夹等全部移动到grub文件夹内
菜单改路径

和这应该没有关系,因为这个可以自定义路径
作者: bjlbjl    时间: 2018-5-16 16:56
本帖最后由 bjlbjl 于 2018-6-19 22:43 编辑

themes
作者: bjlbjl    时间: 2018-5-16 17:03
打开theme.txt文件看一下
作者: ziluopao    时间: 2018-5-16 17:05
bjlbjl 发表于 2018-5-16 16:56
themes文件夹内有命令文件是指向grub文件夹内 themes文件夹


难道和这里有关吗,这里是空的

作者: bjlbjl    时间: 2018-5-16 17:05
不信你换张背景图片试试就知道了
作者: ziluopao    时间: 2018-5-16 17:07
bjlbjl 发表于 2018-5-16 17:05
不信你换张背景图片试试就知道了


要是能换改路径就好了,因为按你的方法一换,要牵动很多地方,不小心就会乱套,会造成这里改好了,别的地方又出问题了
作者: exhen    时间: 2018-5-16 17:13
ziluopao 发表于 2018-5-16 17:05
难道和这里有关吗,这里是空的

你theme.txt里面的字体是 Unifont Regular 16,显然不是你自定义的字体。在term用loadfonts看一下现在所有列出来的字体,改过去
作者: ziluopao    时间: 2018-5-16 18:10
exhen 发表于 2018-5-16 17:13
你theme.txt里面的字体是 Unifont Regular 16,显然不是你自定义的字体。在term用loadfonts看一下现在所 ...


这个有点难度了,term是啥,命令?软件?还是环境
作者: bjlbjl    时间: 2018-5-16 20:31
改了一下
我测试正常
作者: bjlbjl    时间: 2018-5-16 20:32
本帖最后由 bjlbjl 于 2018-6-24 18:40 编辑

f
作者: bjlbjl    时间: 2018-5-16 20:32
本帖最后由 bjlbjl 于 2018-6-24 18:41 编辑

u
作者: bjlbjl    时间: 2018-5-16 20:33
本帖最后由 bjlbjl 于 2018-6-24 18:41 编辑

cc
作者: bjlbjl    时间: 2018-5-16 20:34
本帖最后由 bjlbjl 于 2018-6-18 14:29 编辑

新建文件夹.7z (82 Bytes, 下载次数: 8)
作者: bjlbjl    时间: 2018-5-16 20:38
本帖最后由 bjlbjl 于 2018-6-18 14:29 编辑

新建文件夹.7z (82 Bytes, 下载次数: 5)
作者: bjlbjl    时间: 2018-5-16 20:39
本帖最后由 bjlbjl 于 2018-6-18 14:30 编辑

新建文件夹.7z (82 Bytes, 下载次数: 5)
作者: bjlbjl    时间: 2018-5-16 20:41
themes文件太大,无法上传
作者: bjlbjl    时间: 2018-5-16 20:58
不需要memdisk.tar文件
作者: exhen    时间: 2018-5-17 02:17
ziluopao 发表于 2018-5-16 18:10
这个有点难度了,term是啥,命令?软件?还是环境

terminal 命令行
作者: exhen    时间: 2018-5-17 02:17
ziluopao 发表于 2018-5-16 18:10
这个有点难度了,term是啥,命令?软件?还是环境

terminal 终端命令行
作者: ziluopao    时间: 2018-5-17 09:42
exhen 发表于 2018-5-16 17:13
你theme.txt里面的字体是 Unifont Regular 16,显然不是你自定义的字体。在term用loadfonts看一下现在所 ...

试了一下,没有loadfonts命令呢

作者: exhen    时间: 2018-5-17 10:57
ziluopao 发表于 2018-5-17 09:42
试了一下,没有loadfonts命令呢

写错了,lsfonts
作者: ziluopao    时间: 2018-5-17 12:09
本帖最后由 ziluopao 于 2018-5-17 12:11 编辑
exhen 发表于 2018-5-17 10:57
写错了,lsfonts



没有错啊,加载中文了哈,但就是不显示呢

thmem.txt
  1. # GRUB2 gfxmenu Linux Vimix theme
  2. # Designed for any resolution

  3. # Global Property
  4. title-text: ""
  5. desktop-image: "background.jpeg"
  6. desktop-color: "#000000"
  7. terminal-font: "Unifont Regular 16"
  8. terminal-box: "terminal_box_*.png"
  9. terminal-left: "0"
  10. terminal-top: "0"
  11. terminal-width: "100%"
  12. terminal-height: "100%"
  13. terminal-border: "0"

  14. # Show the boot menu
  15. + boot_menu {
  16.   left = 30%
  17.   top = 30%
  18.   width = 45%
  19.   height = 60%
  20.   item_font = "Unifont Regular 16"
  21.   item_color = "#cccccc"
  22.   selected_item_color = "#ffffff"
  23.   item_height = 24
  24.   item_spacing = 12
  25.   selected_item_pixmap_style = "select_*.png"
  26. }

  27. # Show a countdown message using the label component
  28. + label {
  29.   top = 82%
  30.   left = 35%
  31.   width = 30%
  32.   align = "center"
  33.   id = "__timeout__"
  34.   text = "Booting in %d seconds"
  35.   color = "#cccccc"
  36.   font = "Unifont Regular 16"
  37. }
复制代码





欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3