IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    ubuntu设置grub2启动密码

    冷轩信发表于 2013-06-03 13:21:40
    love 0

    1. 第一步:设置用户名、密码

    打开 /etc/grub.d/00_header
    在最下面加入

    cat << EOF
    set superusers="su"
    password su 1234
    password user1 4321
    EOF

    su、user1 可以替换成你喜欢的用户名
    superuser 是必需的(可以执行和修改任何启动项)
    user1 非必需的,可以用于限制不同用户启动不同的系统,可以设置多个
    如果你不希望使用明文密码,可以在终端下运行

    grub-mkpasswd-pbkdf2


    然后输入密码,应该会得到类似下面这样的代码
    grub.pbkdf2.sha512.10000.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    然后将 password 换成password_pbkdf2 即可

    第二步:设置需要密码才可启动的启动项
    例子为设置恢复模式需要密码

    编辑 /etc/grub.d/10_linux
    找到linux_entry ()
    修改为
    linux_entry ()<br />
    {<br />
      os="$1"<br />
      version="$2"<br />
      recovery="$3"<br />
      args="$4"<br />
      user=""    #新添加
    if ${recovery} ; then<br /> title="$(gettext_quoted "%s, with Linux %s (recovery mode)")"<br /> user="--users su" #新添加
    else<br /> title="$(gettext_quoted "%s, with Linux %s")"<br /> user="" #新添加
    fi<br /> printf "menuentry ${user} '${title}' ${CLASS} {\n" "${os}" "${version}" #${user}为新添加的
    cat << EOF

    --users 用户名 设置该启动项需要使用的用户名
    我定义了一个变量 user 用来设置是否要求密码

    然后 sudo update-grub 即可

    重启按住Shift键试试恢复模式是不是要求密码了,编辑启动项是不是也要密码了
    以上转自 http://forum.ubuntu.org.cn/viewtopic.php?f=139&t;=279633

    下面为win系统启动项添加密码,编辑 /etc/grub.d/30_os-prober
    找到
    found_other_os=1<br />
          cat << EOF<br />
    menuentry "${LONGNAME} (on ${DEVICE})"  --class windows --class os {<br />
    EOF

    修改为
    found_other_os=1<br />
          cat << EOF<br />
    menuentry "${LONGNAME} (on ${DEVICE})"  --users su --class windows --class os {<br />
    EOF

    --users su 是我新添加的,要启动这个启动项需要用su用户才行

    sudo update-grub 生效,



沪ICP备19023445号-2号
友情链接