无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 6156|回复: 7
打印 上一主题 下一主题

grub4dos初级教程-进阶篇 [初稿]

[复制链接]
跳转到指定楼层
1#
发表于 2007-7-23 10:12:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
【提示  grub4dos初级教程-入门篇、应用篇 http://bbs.znpc.net/viewthread.php?tid=2407&extra=page%3D1
图文版电子文档可上网检索,或去本人网盘下载】

3 grub4dos初级教程-进阶篇

  3.1 密码设置
  3.2 菜单内置
  3.3 使用个性化grub4bdos文件名


3.1 密码设置

当设置的密码处于菜单文件的首项时,将禁用所有的交互式菜单编辑功能,包括编辑菜单项(`e`)/进入命令行(`c`)。当正确输入密码 (由PASSWD指定)后,上述被禁用的功能将被启用了。你也可以将此命令用到某个菜单项里,用以提高系统安全性。

命令:password [--md5] PASSWD
参数 --md5 说明密码(PASSWD)是使用md5crypt 加密的。

1、GRUB4DOS 明码加密

比如:未加密码的菜单文件如下:
default 1
timeout 3

title 0, Boot from Hard Drive (hd0,0)
root (hd0,0)
chainloader +1

title 1, GreenGhost [Ghost v8.3/v11] (MAP-HOOK)
map --mem /boot/grub/gghost.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

加入密码后菜单:

default 1
timeout 3

password=1234

title 0, Boot from Hard Drive (hd0,0)
root (hd0,0)
chainloader +1

title 1, GreenGhost [Ghost v8.3/v11] (MAP-HOOK)
map --mem /boot/grub/gghost.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

设置密码后,只有输入正确密码后才能编辑菜单项,或者进入命令行模式。
采用明码加密,使用方便,不过安全性低。

假如想锁住“1, GreenGhost”,也就是只有输入正确密码才能使用此项的话,可在该菜单项里加上“lock”。
菜单项变成:

title 1, GreenGhost [Ghost v8.3/v11] (MAP-HOOK)
lock
map --mem /boot/grub/gghost.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

启动该项时会提示错误。这时按P键,然后输入设定的密码就行了。

也可以设置不同的全局密码【grub中无此叫法,这里指title 前设置的密码。与菜单项里设置的密码以示区别。】和菜单项密码

比如:

default 1
timeout 3

password=1234

title 0, Boot from Hard Drive (hd0,0)
root (hd0,0)
chainloader +1

title 1, GreenGhost [Ghost v8.3/v11] (MAP-HOOK)
password=4321
map --mem /boot/grub/gghost.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

对于此菜单文件,进入grub4dos菜单后,选择 1, GreenGhost项,会提示输入密码,输入菜单项密码“4321”后能使用该项。

进入grub4dos菜单后,按“p”,输入全局密码“1234”,能编辑菜单项,或者进入命令行模式。包括删除1, GreenGhost项里设置的密码。

2、GRUB4DOS MD5码加密

明码加密时,打开菜单文件,就能知道所用密码,因此安全性比较低。grub支持使用MD5码加密,以提高安全性。把字符串转换成MD5码的方式有两种,一种使用grub里的md5crypt命令获得,另一种使用软件转换获得。

a,md5码获得

用md5crypt命令获得:

进入grub命令行,输入md5crypt,回车,输入设定密码后回车,就得到了相应的md5码。
如下图所示:

用软件获得:

上网搜索下载相应软件。软件不同或版本不同,操作会有区别。按使用说明进行操作即可。

下面以我用的md5.exe为例,进行说明:

新建文本文件1.txt,输入欲设定的密码,如“123456”,保存。
进入命令行模式,输入:

md5 1.txt 1_md5.txt

如图所示:


打开1_md5.txt文件,得到形如$1$8$pSqK8hjjgmdb73MJlsrnj1的md5码。

【提示:即使是相同的字符串,每次所得到的md5码也是不相同的。】

然后把得到的md5码字符串加入到菜单文件中就行了。

关于全局密码和菜单密码的使用与明码加密部分是相同的。比如:

default 1
timeout 3

password --md5 $1$5$QiEyMNWSnifAmHNnl2eIK.

title 0, Boot from Hard Drive (hd0,0)
root (hd0,0)
chainloader +1

title 1, GreenGhost [Ghost v8.3/v11] (MAP-HOOK)
password --md5 $1$8$pSqK8hjjgmdb73MJlsrnj1
map --mem /boot/grub/gghost.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)


3.2 菜单内置

对于多数没有或很少接触过linux的windows用户来说,刚开始使用grub时离不开菜单。也就是说,使用grub前,我们要准备menu.lst文件。而且有了菜单文件,使用grub4dos也更加方便。【参看入门篇中的1.4 如何使用grub4dos部分

通常,我们使用的菜单文件是外置的(一般保存在X:\, X:\boot\grub,X:\grub目录下。),这样菜单文件易被修改。把菜单内置,使目录下文件数减少,显得利落,也能提高安全性,足以应付一些没接触过grub4dos的,或者对grub4dos了解很少的人。

官方提供菜单导入/导出的工具grubmenu。【软件下载参看入门篇中的1.2 如何获得grub4dos最新版

准备菜单文件menu.lst【提示:菜单文件建议小于4 k,超过部分将被忽略。】,新版grldr和grubmenu.exe,保存到同一目录,进入命令行模式,输入:

grubmenu import grldr menu.lst

导出内置菜单,输入:

grubmenu export grldr menu0.lst

也可把menu.lst内置到grub.exe,用法类似。

菜单内置后,就可删除目录下的menu.lst了。


3.3 使用个性化grub4dos文件名

grub的核心文件是grldr/grldr.mbr,入门篇中介绍了“通过Windows NT的启动菜单进入grub4dos”,即在boot.ini中加入grldr项;以及“通过Windows VISTA的启动菜单进入grub4dos”,即在BCD中加入grldr.mbr项。

随着grub4dos影响的日益扩大,基于grub4dos的工具也越来越多,比如影响较大的一键ghost,矮人DOS工具箱,MAXDOS等等(本人的“gghost备份恢复工具”也是基于grub4dos的)。为避免冲突,这些软件多数采用了修改grldr文件名的方式。修改成个性化文件名,除了自己重新编译,一般要采用暴力修改的方式进行。显然这对于一般使用者来说,操作上存在一定难度,易造成软件无法运行,或带来不可预知的bug。

不过,新版grubinst[2007-07-16(r17)]已全面支持自己修改外部grldr/grldr.mbr文件名,这对于初学者来说无疑是个福音。

采用grubinst,你也能简单可靠地修改成个性化文件名了。

下面以把grldr改名为mygrldr为例进行说明。

首先把grldr复制到C:\,并改名为mygrldr,
然后在grubinst目录下,执行以下命令:

grubinst -e -b=mygrldr C:\mygrldr

这样boot.ini中就可相应改成:

c:\mygrldr="My GRUB4DOS"


也可以用grldr.mbr引导,比如把grldr.mbr改名为mygrldr.mbr,执行:

grubinst -e -b=mygrldr C:\mygrldr.mbr

启动项中加入:

C:\mygrldr.mbr="My GRUB4DOS

相应修改BCD文件后,Vista系统中也能使用个性化文件名了。

【提示:grldr需要是7-10或以后的版本。目前仅07-10版grub4dos可正常使用此功能。07-19现在】

【初稿 欢迎指正 未完待续】

[ 本帖最后由 lianjiang 于 2007-7-24 10:33 AM 编辑 ]
2#
发表于 2007-7-23 10:18:56 | 只看该作者
支持一个          :lol
回复

使用道具 举报

3#
发表于 2007-7-23 20:07:19 | 只看该作者
问下


首先把grldr复制到C:\,并改名为mygrldr,
然后在grubinst目录下,执行以下命令:

grubinst -e -b=mygrldr C:\mygrldr

这样boot.ini中就可相应改成:

c:\mygrldr="My GRUB4DOS"


如果这里不用grubinst更改
直接把原版的grldr重命名为mygrldr
感觉也应该行吧

因为以前我曾经直接把GRLDR改名为NTLDR
通过NT扇区直接启动grldr的
也没有处理啊....
回复

使用道具 举报

4#
 楼主| 发表于 2007-7-23 20:44:56 | 只看该作者
原帖由 hytmtet 于 2007-7-23 08:07 PM 发表
如果这里不用grubinst更改
直接把原版的grldr重命名为mygrldr
感觉也应该行吧

因为以前我曾经直接把GRLDR改名为NTLDR
通过NT扇区直接启动grldr的
也没有处理啊....


应不可。你改的NTLDR是个特殊文件名,不通用。
回复

使用道具 举报

5#
发表于 2007-7-23 22:48:26 | 只看该作者
真是及时雨!这几天正学grub呢,谢谢分享1:lol :lol :lol
回复

使用道具 举报

6#
发表于 2007-7-24 09:56:35 | 只看该作者
想学一下grub,看得头昏眼花:Q
回复

使用道具 举报

7#
 楼主| 发表于 2007-7-24 10:04:19 | 只看该作者
原帖由 tobelieve 于 2007-7-24 09:56 AM 发表
想学一下grub,看得头昏眼花:Q

建议先看看初级教程的入门篇和应用篇,使用很简单的。
回复

使用道具 举报

8#
发表于 2009-7-9 22:01:28 | 只看该作者
最近下定决心学grub4dos,以前学linux,只学了半吊子,比如grub和启动配置问题,就不愿学。现在觉得多重启动挺有意思,可是还有些艰深,好好钻研钻研。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-8-9 20:45

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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