Linux中 /boot 目录介绍 【转载】

Linux中 /boot 目录介绍

转自:点击打开链接

一、/boot/目录中的文件和目录

Linux系统在本地启动时,目录/boot/非常重要,其中的文件和目录有:

(1)系统Kernel的配置文件;

(2)启动管理程序GRUB的目录,里面存放的都是GRUB在启动时所需要的画面、配置及各阶段(stage1, stage1.5, stage 2)的文件。见下图。

(3)Initrd文件,是系统启动时的模块供应的主要来源;

(4)System.map文件时系统Kernel中的变量对应表;

(5)vmlinuz是在启动过程中最重要的一个文件,因为这个文件就是实际系统所使用的kernel。

二、/boot/grub目录

2.1 grub.conf文件

这个文件其实是启动管理程序GRUB的配置文件。在同一层目录下面(/boot/grub/)还有一个它的镜像文件menu.lst。而在SUSE中menu.lst是GRUB实际用到的文件。

下面这个文件是我系统上摘录的。

# grub.conf generated by anaconda

#

# Note that you do not have to rerun grub after making changes to this file

# NOTICE: You have a /boot partition. This means that

# all kernel and initrd paths are relative to /boot/, eg.

# root (hd0,0) # kernel /vmlinuz-version ro root=/dev/sda2

# initrd /initrd-version.img

# boot=/dev/sda default=0 timeout=10 splashimage=(hd0,0)/grub/splash.xpm.gz title Red Hat Linux (2.4.20-8) root (hd0,0) A kernel /vmlinuz-2.4.20-8 ro root=LABEL=/ B initrd /initrd-2.4.20-8.img C

说明:

A: root(hd0,0)表示/boot/的路径。我的/boot/位于/dev/sda1,也就是BIOS检测到的第0号硬盘的0号扇区。

B: 告诉GRUB到哪里去找vmlinuz-2.4.20-8这个kernel,这里的“绝对路径”其实是/boot/vmlinuz-2.4.20-8,而文件的物理位置                       在/dev/sda1上。后面的ro表示以只读的方式读取该文件,而“root=LABEL=/”表示以标签名称为“/”的文件系统为根文件系统。这个               根文件系统与/boot/的位置是两个概念,这里的root是加载Kernel时的一个参数,目的是告诉Kernel,根文件系统在哪里。

实际上/boot/可以挂载到其他的硬盘上。只要在A的位置说明准确就可以了,如root(hd1,0)表示/boot/在第2块硬盘上。

C: 告诉GRUB到哪里去取文件initrd,它的“绝对路径”也是/boot/initrd-2.4.20-8.img。

2.2 其他文件

毫无疑问,grub.conf文件最重要。但在/boot/grub/中还有其他一些文件,我们也可以看看它们的作用。

2.2.1 stages文件

* stage1:它是硬件引导扇区(MBR)的备份文件。

* xxx_stage1_5:这些文件的作用是连接stage1到stage2的一个通道,里面唯一存放的是该系统文件的格式,所以只要被支持的文件,就会预先存放一个格式文件在其中。

* stage2:该文件是GRUB的核心程序,它的主要功能是:

  • 提供菜单
  • 读取配置文件
  • 连接下一个boot sector

2.2.2 device.map

该文件直接侦测目前的硬件来假设BIOS所记录的实体磁盘有哪些,默认值是安装系统时就记录好的。在之后加入的磁盘,在该文件中没有显示。

2.2.3 splash.xpm.gz

启动时的背景图片。

三、System.map文件

System.map文件是一个索引文件,它记录了kernel中的symbols的位置,symbols包括有变量或函数名称。

[[email protected] boot]# head -10 System.map-2.4.20-8 c0100000 A _text c0100000 t startup_32 c01000a5 t checkCPUtype c0100133 t is486 c0100142 t is386 c010018c t L6 c010018e t ready c010018f t check_x87 c01001b6 t setup_idt c01001d3 t rp_sidt

这些symbols在内核中的位置对于从事内核编程的人员有重要的意义。

四、kernel及initrd

4.1 kernel文件

kernel主要负责的是北桥、南桥、CPU及内存,可见它们都是整个主机最重要的硬件核心部分,kernel如果处了问题,系统肯定无法启动起来。

4.2 initrd文件

initrd的全名是initial ram disk,就是启动系统所需加载的虚拟磁盘。

在系统启动过程中,kernel、initrd和system module是依次加载的。initrd包含一部分内核模块,主要是一些关键的外部硬件,如SATA、SCSI和USB等外设。它如果失败当然也会影响系统启动。

而system module这些系统中的模块,是与支持和启动无很大关系的硬件有关,如果没有这些硬件设备的支持,系统也可以启动完成,只是存在功能上的缺失,如声卡、网卡、显卡等。这些系统模块也可以在启动后,以modprobe的方式载入模块使用。

时间: 11-20

Linux中 /boot 目录介绍 【转载】的相关文章

Linux中 /boot 目录介绍

转自https://blog.csdn.net/dulin201004/article/details/7396968 一./boot/目录中的文件和目录 Linux系统在本地启动时,目录/boot/非常重要,其中的文件和目录有: (1)系统Kernel的配置文件: (2)启动管理程序GRUB的目录,里面存放的都是GRUB在启动时所需要的画面.配置及各阶段(stage1, stage1.5, stage 2)的文件.见下图. (3)Initrd文件,是系统启动时的模块供应的主要来源: (4)Sy

linux中各目录及详细介绍

一.Linux文件系统的层次结构 在Linux或UNIX操作系统中,所有的文件和目录都被组织成一个以根节点开始的倒置的树状结构,如图: 二.目录 1.目录的定义 目录相当于Windows中的文件夹,目录中存放的既可以是文件,也可以是其他的子目录. 文件系统层次结构标准(FHS)定义了Linux操作系统中的主要目录及目录内容. 在FHS中,所有的文件和目录都出现在根目录"/"下,即使他们存储在不同的物理设备中. 2.linux中的目录详细介绍: /   根目录 /bin/   面向所有用

Unix/Linux中/usr目录的由来

在Linux系统中,有一个很重要的目录--/usr目录.关于这个目录名称的由来,网上主要有下面几种说法: user的缩写 User Shareable Read-only的缩写 Unix/User System Resources的缩写 Unix/User Software Resources的缩写 目前大多数版本的Linux中/usr目录主要放置的是可执行文件和先关库文件,因此user好像不太可能. 查阅了相关的资料,关于/usr目录起源的说法如下: /usr usually contains

Linux系统/boot目录破损无法启动怎么办

linux系统中的/boot目录存放着系统开机所需要的各种文件,其中包含内核.开机菜单及所需配置文件等等. 但是当不小心删除了/boot目录里的某些文件或者干脆整个/boot目录都不见了的情况下,该如何恢复系统并重启系统呢? 以下通过加载磁盘镜像文件以重装内核与grub2加载器的方式可解决这个问题,只是过程有点复杂. 实验环境:KVM中的rhel7系统. 1.模拟删除/boot目录,使系统无法启动 2.reboot尝试重新启动,确认系统已故障 3.强制关闭系统 4.进入虚拟机配置页面,通过以下点

linux中Dcumentation目录下的basic_profiling.txt文档翻译

These instructions are deliberately very basic. If you want something clever, go read the real docs ;-) Please don't add more stuff, but feel free to correct my mistakes ;-)    ([email protected]) Thanks to John Levon, Dave Hansen, et al. for help wr

linux中的目录配置

一.权限对文件的重要性 1.r(read):可读取此文件的实际内容,读取文本文件的文字内容等. 2.w(write):可以编辑,新增或者是修改该文件的内容. 3.x(execute):该文件具有可以被系统执行的权限. **在linux中,一个文件是否能被执行是由是否具有"x"这个权限来决定的,与文件名没有绝对的关系. 二.权限对目录的重要性 *文件是存放实际数据的所在,目录主要的内容是记录文件名列表,文件名与目录有前列的关联. 1.r:表示具有读取目录结构列表的权限,当你具有读取(r)

Linux中对目录和文件管理所使用的命令(理论部分,无图慎入!)

本次我和小伙伴们分享的是Linux系统中目录和文件管理所使用的的命令,接下来我会从以下几点和大家进行详细解析 Linux目录结构 查看及检索文件 备份及恢复文档(压缩包格式) VI文本编辑器 (一).Linux目录结构 1.树形目录结构2.根目录:? 所有分区.目录.文件等的位置起点? 整个树形目录结构中,使用独立的一个"/"表示3.常见的子目录:? /root(系统管理员的宿主目录)? /bin(所有用户可执行的命令) ? /boot(系统内核,启动文件) ? /dev(设备文件)?

Linux基本命令详解《二》(Linux中对目录和文件管理所使用的命令)

Linux基本命令详解<二>内容概述:Linux目录结构查看及检索文件备份及恢复文档vi文本编辑器一,Linux目录结构:树形目录结构(自顶而下)常见的子目录及作用:a./root:系统管理员root的宿主目录b./home:普通用户的宿主目录c./boot:系统内核/启动文件d./dev:设备文件e./etc:配置文件f./bin:所有用户可执行的命令g./sbin:管理员可执行的管理命令h./usr:应用程序i./var:日志文件(俗称可变长文件目录)j./proc :硬件配置信息k. /

Linux学习-常见目录介绍

常见目录介绍 / 根目录 /root root用户的根目录 /home/username 普通用户的根目录 /etc 配置文件目录 /bin 命令目录 /sbin 管理命令目录 /usr/bin /usr/sbin 系统预装的其他命令 linux 的man命令为何分那个多个章节 因为有的命令重名,规划到不同章节中,避免调用时冲突 $ man -a passwd -a后面加一个关键字,可以查看该关键字是一个命令或是文件.库函数等 shell(命令解释器)自带的命令成为内部命令,其他都是外部命令 内