LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1280|回复: 10

grub密码设置问题,password可以嵌套???????请大家耐心看看。

[复制链接]
发表于 2005-2-28 18:56:52 | 显示全部楼层 |阅读模式
我的/boot/grub/menu.lst内容如下:
default=0
timeout=40
password --md5 $1$10bzm0$RTdpRALadtbQdx1D6HRaj/
title LFS 5.1.1
lock
        root (hd0,10)
        kernel --no-mem-option /boot/vmlinuz ro root=/dev/hda11
password --md5 $1$wBnfn0$EcxnrpHfZWy2DA3Cmvi87/
title Red Hat Enterprise Linux AS (2.6.9-5.EL)
lock
                root (hd0,0)
                kernel /boot/vmlinuz-2.6.9-5.EL ro root=LABEL=/ rhgb quiet
                initrd /boot/initrd-2.6.9-5.EL.img
我想给LFS5.1.1和REDHAT都加上GRUB密码,
比如想给LFS的密码是lfs,
想给REDHAT的密码是red,
gurb-md5-crypt已经做了,准确无误,写好的menu.lst文件如上,
开机时,却出现了这样的问题:如果要进入LFS,先要击"p"输入密码lfs,然后还会出现一个password:的提示,再输入red,就可以进入系统了。
如果要进入REDHAT,开机时,要击"p"输入lfs(不是我想设的red),就可以进入REDHAT系统。这样LFS系统等于加了两层密码,而REDHAT是一层密码,不过它的密码却是lfs。

难道password和lock会自动嵌套?第一个password和最后面的lock对应,第二个password和第一个lock对应?
不知道我的分析对不对,如果是这样,那怎么给两个title都加密,象我设想的一样,给LFS的密码就是一个lfs,给REDHAT的密码就是一个red。
发表于 2005-2-28 19:42:59 | 显示全部楼层
不知道为什么,帮忙顶顶,自己也好知道 :cool:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-1 14:54:02 | 显示全部楼层
自己顶!
回复 支持 反对

使用道具 举报

发表于 2005-3-1 15:10:30 | 显示全部楼层
lock命令是继承自timeout后面那个password的,如果你想为每个启动菜单项设置一个密码的话可以这样写:
在每个菜单项的title下一行加上password就可以了
timeout下面那个password是全局的,只有要启动时你想手动编辑菜单的的启动参数时才要用到。

default=0
timeout=40
password --md5 $1$10bzm0$RTdpRALadtbQdx1D6HRaj/     //这个是全局密码,在你启动的时候按了P或C什么键之后就要输入这个密码
title LFS 5.1.1
password lfs                        //启动LFS 5.1.1时要键入的密码
root (hd0,10)
kernel --no-mem-option /boot/vmlinuz ro root=/dev/hda11

title Red Hat Enterprise Linux AS (2.6.9-5.EL)
password red                      //启动Red Hat时要用的密码
root (hd0,0)
kernel /boot/vmlinuz-2.6.9-5.EL ro root=LABEL=/ rhgb quiet
initrd /boot/initrd-2.6.9-5.EL.img
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-1 19:39:47 | 显示全部楼层
这么说password 和 lock不是一一对应的?
那 lock 应该写在何处?
回复 支持 反对

使用道具 举报

发表于 2005-3-1 22:24:40 | 显示全部楼层
default=0
timeout=40
password 123                  //这个是全局密码,在你启动的时候按了P或C什么键之后就要输入这个密码
title LFS 5.1.1
lock
root (hd0,10)
kernel --no-mem-option /boot/vmlinuz ro root=/dev/hda11

title Red Hat Enterprise Linux AS (2.6.9-5.EL)
lock
root (hd0,0)
kernel /boot/vmlinuz-2.6.9-5.EL ro root=LABEL=/ rhgb quiet
initrd /boot/initrd-2.6.9-5.EL.img

像上面这样写的话无论是进入LFS 还是进入RED HAT都要输入密码123才可启动的
回复 支持 反对

使用道具 举报

发表于 2005-3-2 03:07:09 | 显示全部楼层
这问题基础版之前也讨论过,还有password可以不使用md5
回复 支持 反对

使用道具 举报

发表于 2005-3-2 09:25:43 | 显示全部楼层
全局密码相当于一个房子,最外面的门才用得到,就像你自己家一样,你如果把最外面的门锁上,如果想进到房子里的其它两个房间,必须 先进入外面的门,全局密码可以不用设置,分别设置title
后面两个启动菜单的密码就可以了!

此例中lsf密码加到所有titel的前面。默认为全局密码!

而你的文件
default=0
timeout=40
password --md5 $1$10bzm0$RTdpRALadtbQdx1D6HRaj/
//此为这个grub启动菜单的全局密码,所以你进入系统时肯定得先输入上面的密码才能进入,
title LFS 5.1.1
lock
root (hd0,10)
kernel --no-mem-option /boot/vmlinuz ro root=/dev/hda11
password --md5 $1$wBnfn0$EcxnrpHfZWy2DA3Cmvi87/
//因为启动菜单的密码是以title----title结束的,很显然,此处你虽然想设置redhat的密码,但是你却没有加入到red hat title的后面,所以系统默认为LFS5.11的密码,所以你当你如果想进入LFS5.11时,肯定得先输入第一个密码,然后再输入第二个密码,但当你想进入redhat的时候,只要输入全局密码就可以了,因为你的redhat根本没有加菜单密码,像上面一样,相当对你把家里最外面的门锁上了,屋里的两个门你只锁了一个,所以进入外面的门后,两个门,一个锁着,必须 开锁才能进去, 一个没锁,直接就可以进去了,!!!呵呵!
title Red Hat Enterprise Linux AS (2.6.9-5.EL)
lock
root (hd0,0)
kernel /boot/vmlinuz-2.6.9-5.EL ro root=LABEL=/ rhgb quiet
initrd /boot/initrd-2.6.9-5.EL.img
回复 支持 反对

使用道具 举报

发表于 2005-3-2 23:49:13 | 显示全部楼层
楼上说的没错。

第一个标签之前的password(全局密码)可以带FILE,例如:
[HTML]password --md5 $14039178dkz8k329 /boot/grub/secret.lst
title one
    lock
    root (hd0,10)
    kernel --no-mem-option /boot/vmlinuz ro root=/dev/hda11
title two
    password --md5 $2dkai393
    root (hd0,1)
    kernel --no-mem-option /boot/vmlinuz ro root=/dev/hda2
title three
    root (hd0,9)
    kernel --no-mem-option /boot/vmlinuz ro root=/dev/hda10
[/HTML]

则:
1)title three的运行不用任何密码;

2)title two只有在运行的时候,才会要求密码;

3)title one则要求用p先输入密码(全局的那个密码),然后进入才有效,lock即要求合法用户才能运行,所以要先p输入密码;但是,在全局密码带FILE情况下,这个入口将变成废物;-D;

4)全局密码控制范围:运行带lock的入口、进入gnu/grub命令行、编辑任何入口;
当全局密码带FILE时,则p输入密码后,gnu/grub将调用FILE作为新菜单,并重新加载stage2 ;因此,你可以设置自己的秘密菜单,如第一个password那样带个/boot/grub/secret.lst;

5)局部密码(如:title two那个password)只控制自己的那个入口;局部密码不能带FILE。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-3 07:15:00 | 显示全部楼层
谢谢各位,明白了,原来启动菜单的密码是以title----title结束的。

看了linux_now的例子,是不是说全局密码必须写在所有title之前,而且全局密码必须在有lock的启动项里才能生效,也就是说lock是仅为全局密码服务的,象title three没有lock,所以全局密码对它无效。
局部密码不用那个lock,只要在该局部的title之下写一个password就可以了。

不知道我的理解对不对?
回复 支持 反对

使用道具 举报

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

本版积分规则

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