一分钟掌握Linux系统grub.conf配置核心知识

引导加载程序(Boot loader)是计算机在加载操作系统内核之前运行的一段小程序。通过这段小程序,可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境加载到一个适合的状态,以便为最终调用操作系统内核做好准备。通常,引导加载程序依赖于硬件实现,早期的Linux系统常见的引导加载程序有2种,即Grub和Lilo,现如今Grub已经成为了主流(类似Windows下的boot.ini引导文件)。

引导加载程序读取grub.conf文件的配置信息,然后根据对应配置信息来启动不同的操作系统, 管理员可以从三个路径(本质是一个)查看grub.conf的配置信息,具体如下所示:

[[email protected] boot]# cat /etc/grub.conf

#<==也可读取/boot/grub/menu.lst(软链接)或/boot/grub/grub.conf(真实文件)。

...省略多行注释信息,其实这里的注释已经解释的蛮清楚了,只是90%的初学者看不见这里...

default=0

#<==默认情况下如何加载系统,0表示加载菜单中对应的第一个名字,多系统时可以调节默认加载项。

timeout=5

#<==表示多少秒之后开始加载默认的系统,给管理员提前选择的时间。

splashimage=(hd0,0)/grub/splash.xpm.gz 

#<==启动时显示的背景图标,在(hd0,0)代表/boot分区。

hiddenmenu  

#<==系统启动时,会隐藏启动菜单信息,按默认设置启动系统,除非用户按键干预。

password [–md5|–encrypted ] STRING  

#<==当编辑grub菜单时需要输入密码认证,Linux基础优化之一,默认没有。

title CentOS 6 (2.6.32-696.el6.x86_64) 

#<==要启动的系统对应的项目名称,可按需修改。

    root (hd0,0)  

#<==引导内核文件和内核所需驱动文件所在的分区,(hd0,0)代表/boot分区。

#<==其中hd0表示计算机的第一块磁盘,(hd0,0)中逗号后面的0表示第一个分区,即(hd0,0)表示第一块磁盘的第一个分区,即/dev/sda1(分区通常最先独立分出的/boot分区,对应的设备名就是sda1)。

kernel /vmlinuz-2.6.32-696.el6.x86_64 ro root=UUID=491eabe5-e6c0-4457-9bdb-b37cc6751308 rd_NO_LUKS rd_NO_LVM.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet 

#<==整行表示加载内核,即读取boot分区上的内核文件及一堆可选内核参数。

#<==/vmlinuz-2.6.32-696.el6.x86_64为内核文件。root=UUID=后面一串数字表示根对应的设备信息(/dev/sda3),其他介绍的作用不大,忽略即可。

initrd /initramfs-2.6.32-696.el6.x86_64.img  #<==内核启动所需的驱动文件的所在地,存在于boot区。

提示:这个grub.conf的知识其实在企业Linux运维中用途不是很大,讲解grub的目的是,希望读者能了解Linux系统的整个启动流程做铺垫,RHCE认证课程会有修复grub.conf的考题,其实没什么大用,因为在IT网站运维工作中,极少在线处理问题,出问题也是直接切换服务了,之后在慢慢研究修复还是重装都可以。

转载地址:http://blog.51cto.com/oldboy/2093484

原文地址:https://www.cnblogs.com/kindnull/p/8692233.html

时间: 2024-10-12 21:34:25

一分钟掌握Linux系统grub.conf配置核心知识的相关文章

(转)Linux系统基础网络配置老鸟精华篇

Linux系统基础网络配置老鸟精华篇 原文:http://blog.51cto.com/oldboy/784625 对于linux高手看似简单的网络配置问题,也许要说出所以然来也并不轻松,因此仍然有太多的初学者徘徊在门外就不奇怪了,这里,老男孩老师花了一些时间总结了这个文档小结,也还不够完善,欢迎大家补充,交流.谢谢大家!20120827补充:http://oldboy.blog.51cto.com/2561410/974194 深入浅出route命令小结目录:1)配置修改主机名hostname

&#8203;查看Linux系统的所有配置命令

查看Linux系统的所有配置命令     1.查看主板的序列号: dmidecode | grep -i 'serial number'     2.查看CPU信息: cat /proc/cpuinfo dmesg | grep -i 'cpu' dmidecode -t processor     3.查看内存信息: cat /proc/meminfo free -m vmstat     5.查看网卡信息: dmesg | grep -i 'eth' cat /etc/sysconfig/h

Linux系统下如何配置SSH_Centos7 ssh连接配置 CentOS7下安全配置

转自:http://www.linuxdown.net/install/config/2016/0611/5853.html Linux系统下如何配置SSH_Centos7 ssh连接配置 CentOS7下安全配置SSH 时间:2016-06-11 11:13来源:未知 作者:Linux先生 举报 点击:1804次 SSH 通常是我们进入新伺服器的第一个应用程式,它也取代了telnet 和rsh 成为管理伺服器的最主要介面. SSH 通常是我们进入新伺服器的第一个应用程式,它也取代了telnet

LINUX系统查看相关配置命令

系统 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # hostname # 查看计算机名 # lspci -tv # 列出所有PCI设备 # lsusb -tv # 列出所有USB设备 # lsmod # 列出加载的内核模块 # env # 查看环境变量 资源 # free -m # 查看内存使用量和交换区使用量 # df -h # 查看各分区使用情况 #

Linux系统 无需JRE配置Java

Linux系统 无需JRE配置Java 最近使用Deepin想要搞搞Spring项目,所以必须要配置java以及maven,这里详细描述一下两套方法部署Java 案例一:低版本配置方法(不高于11版本,这些版本需要配置JRE) 1.下载 JDK 进入 Oracle 官方网站 下载合适的 JDK 版本,准备安装. 注意:这里需要下载 Linux 版本.这里以jdk-8u151-linux-x64.tar.gz为例,你下载的文件可能不是这个版本,这没关系,只要后缀(.tar.gz)一致即可. 2.

U盘安装CentOS7.2 Linux系统和基础配置

通过U盘安装Linux系统,基本步骤如下: 首先需要一个8gb左右的U盘,容量越大越好,CentOs 7.2版本的完整ISO镜像文件已经达到7GB左右. 从163开源站(http://mirrors.163.com)下载CentOs7.2的ISO镜像文件,这里下载的是4GB大小的ISO文件CentOS-7-x86_64-DVD-1511.iso 从网上下载一个U盘刻录工具,常见的U盘刻录工具有U1traISO.USBWriter等,这里推荐使用USBWirter,因为USBWriter使用简单,

Linux系统启动-grub.conf文件

1.cat /boot/grub/grub.conf查看grub.conf  default=0     #默认第一个title timeout=5     #若 5 秒内未劢键盘,使用默讣选单开机 splashimage=(hd0,0)/grub/splash.xpm.gz    #这儿使用的是grub的识别方式 hiddenmenu                  #秒期间是否显示出完整的选单画面 title CentOS (2.6.18-92.el5)        #第一个选单的内容

迅为iTOP-4412开发板Linux系统下如何配置wifi模块

精英版在 linux 下使用 wifi,需要进行下面的配置: 首先用户在拿到光盘资料以后查看下光盘里面的"linux"->"root_xxxxxxxx.tar.gz"文件,其中的 "xxxxxxxx" 代表linux系统的版本日期, 迅为提供的支持linux下wifi的系统版本是 "root_20150422.tar.gz" , 也就是 2015-04-22 以后的版本(包括 20150422)是支持 wifi 模块的.

Linux 系统中 如何配置自定义命令 (Mac本同样适用)

我相信  熟悉Linux的同学们  都有一个烦恼  就是 如果要查看某一个文件的时候   要一级或者多级的去cd切换目录,哪有木有便捷的方法来随意切换呢?  就像快捷键一样这就是在 Linux 系统中配置自定义命令,很简单?? 在文件/root/.bashrc中,添加以下行: alias mycommand = "cd /root" 在终端直接执行mycommand就会执行cd /root ??:    source ~/.bash_profile  这个命令一定要记得执行,这一行命令