|
【提示 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 编辑 ] |
|