linux系统的启动过程[阮胜昌]

/etc/rc.d/rc.local 这个命令脚本是在引导过程最后一步被执行的

#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
password=密码  //设置全局密码
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.18-8.el5)
password=密码   //设置菜单密码
        root (hd0,0)
        kernel /vmlinuz-2.6.18-8.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
        initrd /initrd-2.6.18-8.el5.img

参数说明:
a,default=0

  表示默认启动的第0号的操作系统,在GRUB中,title定义了启动的操作系统,从第1个开始,GRUB中是0,而第2个是1,依次类推...

b,timeout=5

  表示的是出现GRUB界面后,无操作情况下进入default设定的操作系统的时间,如果上下移动选择,则该选项无效;如果将timeout参数删除或者将等于号后的数字改为负数,将会使该项彻底失效,GRUB将一直停留在引导页面等待用户选择。

c,splashimage=(hd0,6)/boot/grub/splah.xpm.gz

  表示的是允许出现的GRUB背景的path,当进入GRUB引导界面的时候,可以看见一副背景图片,这个参数提供的就是这个功能。为了使GRUB引导更加个性化,大家也可以自己准备一张XPM图片,然后将图片压缩成gz格式,最后修改splashimage参数中的文件路径即可,此项为一可选项,所以上面将它用#注释了。

d,hiddenmenu

表示隐藏GRUB的启动菜单,直接进入由default设定的操作系统中去,为一可选项.

linux类
其格式一般为:
title (......)
root (hd[0-n],x)
kernel (......)
initrd (......)

其中:
  title行,是定义一个启动操作系统,而后边可以自己随便写上喜欢的名字,呵,当然最起码你得写得要自己能认出来,没必要把linux写成windows吧?!

  root行,指定相应的linux所有的/boot,如果在写分区和挂载时没有单独挂载,那么就和/在同一个分区中,hd[0-n]表示的是第几个硬盘,而x则表示的是[第几个分区-1],即x比分区号小1,特别要注意.

  kernel行,在这里以kernel 起始,指定Linux的内核的文件所处的绝对路径(通过在终端输入命令:ls /boot/vmlinuz*来看内核的全名);因为内核是处在/boot目录中的,而如果/boot是独立的一个分区,则需要把boot省略,因为 /boot所在的分区在root (hd[0-n],x)中指定了,所以就无需要再指明内核处在哪个分区了;ro 表示只读;root=LABEL=/ 来表示Linux的根所处的分区。LABEL=/ 这是硬盘分区格式化为相应文件系统后所加的标签;如果您不了解什么是标签,也可以直接以/dev/hd[a-z]X 或者/dev/sd[a-z]X来表示;就看您的Linux是根分区是在哪个分区了。比如我的是在/dev/hda3,那这里就可以写成root=/dev/hda3;

  initrd行,如果是/boot独立一个分区,initrd 一行要把/boot中省略;如果/boot不是处于一个分区,而是和Linux的/分区处于同一分区,不应该省略;我们通过查看/boot中的 initrd的文件名到底是什么来写这一行代码,在终端输入:ls /boot/initrd*
很容易能得到initrd文件名,然后写入.

众所周知,通过编辑GRUB启动参数可以轻松的进入单用户模式从而修改root密码,这对于一台多用户的计算机或服务器来说,无疑增加了安全隐患。大家一定很像为自己的GRUB加一把锁吧,大家可以通过GRUB的password参数对GRUB设置密码。

GRUB的密码设置可分为全局密码和菜单密码。

为了防止他人通过GRUB修改root密码大家需要设置一个全局密码。vi /boot/grub/grub.conf(或menu.lst)在splashimage这个参数的下一行可以加上password=密码,保存后重新启动计算机,再次登录到 GRUB菜单页面的时候就会发现,这时已经不能直接使用e命令编辑启动标签了,须先使用p命令,输入正确的密码后才能够对启动标签进行编辑;虽然我们设置了全局密码,但是如果他人得到了全局密码后仍然可以修改 GRUB启动标签从而修改root密码;这样我们就可以设置菜单密码,设置菜单密码也非常简单,我们只需要在title的下一行加上password=密码,然后保存退出。这样即使有了全局密码也必需输入菜单密码才能够引导系统。此外,如果直接对GRUB进行明文加密也是非常不安全的,所以就要使用MD5对其进行加密。在终端中输入grub-md5-crypt回车,这时系统会要求输入两次相同的密码,之后系统便会输出MD5码。大家只需要将生成的MD5密文复制下来,然后在按照password --md5 MD5密文这个格式设置全局或者菜单密码,保存退出,重启计算机即可。
附:
其实在GRUB启动菜单不能工作的时候,进入GRUB命令行(可按CTRL+C键)后,我们同样可以一步一步地把系统启动起来,其实在menu.lst 中,除title不是指令外,其余的都是GRUB指令,我们只要一步步地输入它们(错了要从新开始),中间输入关于kernel和 initrd要利用TAB键补齐写好,最后只要boot一下就行了.
 

你可能感兴趣的:(linux,系统)