grub和lilo驱动启动程序
grub 使用手册
grub 使用手册以下是一个简单的 GRUB 使用手册:一、概述GRUB(Grand Unified Bootloader)是一个用于引导操作系统的启动引导程序。
它允许用户在多个操作系统之间进行选择,并提供了一些配置和诊断工具。
二、使用方法1. 进入 GRUB 菜单在计算机启动时,按下特定的键(通常是 Esc、F1、F2、F10 或 Del)进入GRUB 菜单。
这个菜单会显示可用的操作系统和启动项。
2. 选择操作系统使用上下箭头键选择要启动的操作系统,然后按 Enter 键。
如果您选择了一个带有操作系统的设备(例如硬盘上的某个分区),则会启动该操作系统。
3. 配置 GRUB您可以通过 GRUB 配置文件来定制 GRUB 的行为。
配置文件通常位于`/etc/default/grub` 或 `/etc//` 目录下。
使用文本编辑器打开配置文件,并进行所需的更改。
更改后,运行以下命令以更新 GRUB:```bashsudo update-grub```4. 修复 GRUB如果 GRUB 损坏或无法正常工作,您可以尝试使用以下命令修复它:```bashsudo grub-install /dev/sda```其中 `/dev/sda` 是您的硬盘设备名称。
这将重新安装 GRUB 到硬盘的MBR(主引导记录)中。
5. 退出 GRUB在 GRUB 菜单中,按下 Esc 键或按下任意键即可退出 GRUB 并返回到操作系统或启动菜单。
三、常见问题与解决方法1. 如何解决 GRUB 无法正常引导的问题?如果 GRUB 无法正常引导操作系统,您可以尝试使用系统恢复模式或启动盘来修复引导记录。
在恢复模式下,您可以使用命令行工具来修复 GRUB。
如果您有启动盘,可以使用它来启动计算机并运行修复工具。
一些常见的修复工具有 Boot-Repair、EasyBCD 等。
2. 如何添加新的操作系统到 GRUB?要添加新的操作系统到 GRUB,您需要编辑 GRUB 的配置文件。
07、GRUB启动引导器
使用全局口令锁定启动菜单项
GRUB提供了菜单项级别的保护,对于需 要保护的菜单项,可以使用已设置的全局口 令进行锁定,如要启动该菜单项需先输入全 局口令对该菜单项解锁。 命令格式 lock Lock命令用于设定某启动菜单项使用全 局口令进行锁定,该命令没有参数,一般紧 接title命令使用,锁定该菜单项中lock命令之 后的所有命令,直到输入正确的口令后,该 菜单项才会正常启动。
配置Linux的启动菜单项
GRUB对于不同的操作系统有不同的引导 方式,对Linux操作系统GRUB可以直接引导 其内核并启动,典型的Linux启动菜单项配置 为:
要完成对Linux操作系统的引导至少要有 title、root、kernel、initrd四条命令,其功能 如下所示。
Linux启动菜单项配置命令
chainloader
设置全局口令锁定启动菜单
全局口令用于设置只允许用户选择启动 菜单项进行启动,如进行其他操作需输入设 置的全局口令。 命令格式 password 口令字 用于为GRUB的启动菜单和菜单项设置口 令 在GRUB配置文件“/boot/grub/grub.conf” 的全局配置部分使用password命令。
正确安装Linux操作系统后,可从硬盘引 导系统进入GRUB启动菜单界面,在该界面中 可以使用按键如下所示。在该菜单界面中可 以选择GRUB配置文件中预设的启动菜单项, 从而实现硬盘中多个操作系统的切换引导。 此外还可以从该界面进入菜单项编辑界面和 GRUB命令行界面。
GRUB的启动菜单项编辑界面
GRUB菜单项编辑界面按键
按键 ↑↓ b e c o O d 说明 使用上下箭头键,选择菜单项中的行 选择“b”键启动当前的菜单项 选择“e”键编辑当前选中的行 选择“c”键进入GRUB的命令行方式 选择“o”键在当前行后面插入一行 选择“O”键在当前行前面插入一行 选择“d”键删除当前行
linux试题填空加判断题还有答案
一、填空题1. 在Linux系统中,以文件方式访问设备。
2. Linux内核引导时,从文件/etc/fastab中读取要加载的文件系统。
3. Linux文件系统中每个文件用i节点来标识。
4. 全部磁盘块由四个部分组成,分别为_引导块、专用块、i节点表示块、数据存储块5. 链接分为:_硬链接和符号链接。
6. 超级块包含了_i节点表和_空闲块表等重要的文件系统信息。
7. 某文件的权限为:drw-r--r--,用数值形式表示该权限,则该八进制数为:644 ,该文件属性是目录。
8. 前台起动的进程使用ctrl+c终止。
9. 静态路由设定后,若网络拓扑结构发生变化,需由系统管理员修改路由的设置。
10. 网络管理的重要任务是控制和监控。
11. 安装Linux系统对硬盘分区时,必须有两种分区类型:文件系统分区和交换分区。
13. 编写的Shell程序运行前必须赋予该脚本文件执行权限。
14. 系统管理的任务之一是能够在分布式环境中实现对程序和数据的安全保护、备份、恢复和更新。
15. 系统交换分区是作为系统虚拟存储器的一块区域。
16. 内核分为进程管理系统、内存管理系统、I/O管理系统和文件管理系统等四个子系统。
17. 内核配置是系统管理员在改变系统配置硬件时要进行的重要操作。
18. 在安装Linux系统中,使用netconfig程序对网络进行配置,该安装程序会一步步提示用户输入主机名、域名、域名服务器、IP地址、网关地址和子网掩码等必要信息。
19. 唯一标识每一个用户的是用户 ID和用户名。
20 .RIP协议是最为普遍的一种内部协议,一般称为动态路由选择协议。
21. 在Linux系统中所有内容都被表示为文件,组织文件的各种方法称为文件系统。
22. DHCP可以实现动态 IP地址分配。
23. 系统网络管理员的管理对象是服务器、用户和服务器的进程以及系统的各种资源。
24. 网络管理通常由监测、传输和管理三部分组成,其中管理部分是整个网络管理的中心。
linux boot命令用法
linux boot命令用法
在Linux系统中,`boot` 命令通常用于引导操作系统。
不过,在大多数Linux系统中,引导是由引导加载程序(boot loader)来完成的,而不是直接使用`boot` 命令。
常见的引导加载程序包括GRUB(GRand Unified Bootloader)和LILO(LInux LOader)。
以下是一个简单的例子,演示如何使用`boot` 命令:
1. GRUB 引导加载程序:
-如果你使用的是GRUB 引导加载程序,可以在GRUB 命令行界面中使用`boot` 命令手动引导。
-打开终端或GRUB 命令行。
-输入以下命令:
```bash
grub> boot
```
-这将尝试引导默认内核。
2. LILO 引导加载程序:
-如果你使用的是LILO 引导加载程序,可以在LILO 提示符下使用`boot` 命令。
-打开终端或LILO 提示符。
-输入以下命令:
```bash
LILO: boot
```
-这将启动默认内核。
请注意,这种手动引导的情况很少见,因为通常引导加载程序会自动选择并引导默认内核。
在正常情况下,你不需要手动执行`boot` 命令。
如果你遇到引导问题或需要手动引导,最好查阅你使用的引导加载程序(GRUB或LILO)的文档以获取更详细的信息。
Bootloader技术分析
Bootloader的特点
Bootloader启动可以是单阶段或多阶段,代 码可以都在flash中运行,或者一部分在flash 中运行,另一部分在ram中运行
一般bootloader至少有一部分在flash中运行, 但有少数例外(需要处理器支持)
一般bootloader有“引导”和“下载”两种 工作模式
U-boot所使用的文件格式
U-boot的tools目录提供一个工具 mkimage用来将elf格式的image文件转 成uImage
1. Vmlinux elf格式 2. zImage和bzImage 经过压缩的image 3. 用objcopy可以将elf转成bin文件
U-boot下载映像的制作过程
采用两级启动方式的Bootloader
Stage2:完成诸如命令处理等更加复杂的 功能,通常用C语言完成
1. 初始化本阶段需要用到的其他硬件设备 2. 准备系统内存映射 3. 将操作ห้องสมุดไป่ตู้统内核从Flash中搬移到RAM中 4. 为内核设置启动参数 5. 调用内核入口函数
Bootloader结构
处理器启动初始化代码及中断向量表 必要的设备管理机制和驱动函数 对传输协议的支持
由于需要完成“下载”功能,需要同主机 之间进行文件传输,所以需要支持至少某 种文件传输协议和相应的驱动程序,一般 通过串口,需要支持 xmodem/ymodem/zmodem等,当然 通过网络也是一个较好的选择
Bootloader结构
由于bootloader在工作过程中(尤其是调 试阶段)需要与开发者进行交互,所以提 供一个用户界面是必要的,通常通过串口 终端的方式来完成
在多数基于 Intel 的计算机中,GRUB 和 LILO 要 接受由 BIOS 所强加的限制。例如,多数 BIOSes 无法进入两个以上的硬盘,而且它们无法访问任一 驱动器上在超越柱面 1023 以上所贮存的数据。但 是,某些新的 BIOSes 没有这些限制。
启动引导程序配置文件
超级服务程序配置文件和目录
inetd配置文件 /etc/inetd.conf
TCP Wrappers配置文件 /etc/hosts.allow和/etc/hosts.deny
xinetd配置文件 /etc/xinetd.conf和/etc/xinetd.d目录里的文件
硬件配置
打印机配置文件
BSD LPD核LPRng的本地打印机主配置文件 /etc/printcap
CUPS本地打印机主配置和远程访问受权文件 /etc/cups/cupsd.conf
BSD LPD远程访问受权文件 /etc/hosts.lpd
LPRng远程访问受权文件 /etc/lpd.perms
SSH服务程序配置文件 /etc/ssh/sshd_config
SSH客户端配置文件 /etc/ssh/ssh_config
XDM配置文件 /etc/X11/xdm目录下
GDM配置文件 /etc/X11/gdm目录下
VNC服务程序配置文件 /usr/X11R6/bin/vncserver启动脚本和~/.vnc目录里的文件
文件服务程序配置文件
ProFTPd配置文件 /etc/proftpd.conf
vsftpd配置文件 /etc/vsftpd.conf
NFS服务程序的输出定义文件 /etc/exports
NFS客户端装配的NFS输出 /etc/fstab
Samba配置文件 /etc/samba/smb.conf
启动引导程序配置文件
LILO /etc/lilo.conf
GRUB /boot/grub/menu.lst
系统启动文件核脚本
主启动控制文件 /etc/inittab
LILO(LInux LOader)引导加载程序
LILO(LInux LOader)引导加载程序一.什么是引导加载程序最简单地讲,引导加载程序(Boot Loader)会引导操作系统。
当机器引导它的操作系统时,BIOS会读取引导介质上最前面的512字节(即人们所知的主引导记录(Master Boot Record,MBR))。
在单一的MBR中只能存储一个操作系统的引导记录,所以当需要多个操作系统时就会出现问题,所以需要更灵活的引导加载程序。
主引导记录本身要包含两类内容-部分(或全部)引导加载程序,以及分区表(其中包含关于介质其余部分如何划分为分区的信息)。
当BIOS引导时,它会寻找硬盘驱动器第一个扇区(MBR)中存储的数据;BIOS使用存储在MBR中的数据激活引导加载程序。
由于BIOS只能访问很少量的数据,所以大部分引导加载程序分两个阶段进行引导。
在引导的第一个阶段中,BIOS引导一部分引导加载程序,即初始程序加载程序(initial program loader,IPL)。
IPL查询分区表,从而能够加载位于不同介质上任意位置的数据。
首先通过这步操作来定位第二阶段引导加载程序(其中包含加载程序的其余部分)。
第二阶段引导加载程序是引导加载程序的主体;很多人认为这才是引导加载程序的真正部分。
它包含加载程序更需要磁盘空间的部分,比如用户界面和内核引导程序。
从简单的命令行到绘声绘色的GUI,这些用户界面的范围很广泛。
引导加载通常配置为两种方式的其中之一:要么是作为主引导加载程序(primary boot loader),要么是作为二级引导加载程序(secondary boot loader)。
主引导程序是安装在MBR上的第一阶段引导加载程序。
二级引导加载程序是安装在可引导分区的第一阶段引导加载程序。
必须在MBR上安装单独的引导加载程序,并配置它将控制权转交给二级引导加载程序。
很多较新的Linux引导加载程序特别实用,因为它们提供了不同程度的交互,比如高级的GUI和加密的密码,以及通过选择操作系统进行引导的能力。
grub启动流程及原理
[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywhere else TAB lists the possible
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 15 sectors are embedded.
-rw-r--r-- 1 root root 8904 2010-10-23 xfs_stage1_5
[cent@localhost ~]$
现在我们把Grub再安装一次,安装在MBR(MBR广义可指主引导扇区):
[cent@localhost ~]$ sudo grub
GNU GRUB version 0.97 (640K lower / 3072K upper memory)
grub_使用总结
GRUB使用总结1. 首先要了解的几个概念1.1 启动管理器启动管理器是存储在磁盘开始扇区中的一段程序,例如,硬盘的MBR(Master Boot Record),在系统完成启动测试后,如果系统是从MBR启动,则BIOS(Basic Input/Output System)将控制传送给MBR。
然后存储在MBR中的这段程序将运行。
这段程序被称为启动管理器。
它的任务就是将控制传送给操作系统,完成启动过程。
有许多可用的启动管理器,包括GRUB (Grand Unified Boot Loader),Bootmanager, LILO (LInux LOader), NTLDR (boot loader for Windows NT systems),等等.1.2 什么是GRUB?grub 是一个多重启动管理器。
grub是GRand Unified Bootloader的缩写,它可以在多个操作系统共存时选择引导哪个系统。
它可以引导的操作系统包括: Linux,FreeBSD,Solaris,NetBSD,BeOSi,OS/2,Windows95/98,Windows NT,Windows2000,WinXP。
它可以载入操作系统的内核和初始化操作系统(如Linux,FreeBSD),或者把引导权交给操作系统(如 Windows 98)来完成引导。
1.3 GRUB的特点特别适用于linux与其它操作系统共存情况。
支持大硬盘 现在大多数Linux发行版本的lilo都有同样的一个问题:根分区(/boot 分区)不能分在超过1024柱面的地方,一般是在8.4G左右的地方,否则lilo不能安装,或者安装后不能正确引导系统。
而grub就不会出现这种情况,只要安装时你的大硬盘是在LBA 模式下,grub就可以引导根分区在 8G以外的操作系统。
支持开机画面 grub支持在引导开机的同时显示一个开机画面。
对于玩家来说,这样可以制作自己的个性化开机画面;对于PC厂商,这样可以在开机时显示电脑的一些信息和厂商的标志等。
GRUB2及启动过程详解
GRUB2及启动过程详解作者: 南瓜剪子2016年7月28日1. 概述 (2)2. CentOS7中GRUB2 (2)3. GRUB2 的bootstrap image文件 (3)3.1. boot.img (3)3.2. diskboot.img (4)3.3. kernel.img (4)3.4. core.img (4)3.5. *.mod (4)4. 对比GRUB Legacy (5)4.1. stage1 (5)4.2. *_stage1_5 (5)4.3. stage2 (5)5. grub2-mkimage定制core.img (6)6. GRUB2安装 (7)6.1. Linux是怎么命名设备(/dev/sda) (7)6.2. MBR(Master Boot Record) (8)6.3. MBR分区表DPT(Disk Partition Table) (10)6.4. LBA and CHS (14)6.4.1. CHS(cylinders-heads-sectors) (14)6.4.2. LBA(Logical Block Address) (14)6.5. boot.img和core.img安装 (15)6.6. 硬盘总结 (18)7. 启动过程 (19)7.1. BIOS (19)7.2. GRUB2中boot.img (20)7.2.1. Step1无条件跳转 (20)7.2.2. Step2 初始化 (20)7.2.3. Step3 判断硬盘是否支持LBA还是只支持CHS (22)7.2.4. Step4 采用LBA加载core.img第一个扇区 (23)7.2.5. Step5 拷贝core.img第一个扇区到内存指定位置 (25)7.2.6. Step6 执行core.img第一条语句 (27)7.2.7. Step7 boot.img总结 (27)7.3. GRUB2中core.img (28)7.3.1. diskboot.img (28)7.3.2. GRUB2 core Startup (34)7.3.3. GRUB主函数即GRUB主要功能 (37)7.3.4. 加载Linux Kernel (38)7.4. Linux kernel (47)8. 结束语 (48)9. 参考文献 (48)1.概述计算机系统上电之后由固化到ROM中的BIOS(UEFI)进行操作,然后导入硬盘MBR中Boot Loader并调到其运行,由Boot Loader对操作系统内核进行加载,并将控制权交给操作系统.下图简单描述了CentOS7的启动过程(CentOS7使用GRUB2作为Boot Loader):现在的Boot Loader有很多类型,大致如下:1.对Linux来说GRUB2占据了统治地位2.对Windows来说Bootmgr/BCD占据了统治地位3.对Apple系统缺省的是BootX作为一名计算机工程师,了解Boot Loader的原理是很重要。
GRUB4DOS的各种启动方式
GRUB4DOS的各种启动方式GRUB4DOSGRUB4DOS是一个优秀的双(多)系统引导软件,使用GRUB4DOS可以很方便的引导各种操作系统,比如DOS、Windows、Linux等。
命令索引blocklist 输出文件的块清单表达法。
boot 引导已加载的操作系统或扇区链式加载器。
bootp 通过BOOTP初始化网络设备。
cat 显示指定文件的内容。
cdrom 初始化或者停止所有的 ATAPI CDROM 设备。
chainloader 加载扇区链式加载器。
cmp 比较两个文件, 并且报告两者之间的差异。
color 改变菜单的颜色。
configfile 将指定文件作为配置文件予以加载。
debug 打开/关闭调试模式。
default 把NUM 项菜单设为缺省值。
device 声明BIOS驱动器对应的实际物理设备。
dhcp 通过DHCP初试化网络设备。
splashimage 图形模式下载入背景图片文件。
foreground 设置图形模式下的前景色。
background 设置图形模式下的背景色。
clear 清屏。
displayapm 显示 APM BIOS 的相关信息。
displaymem 显示 GRUB 所判断到的当前系统的内存分布,包括所有物理内存区域。
displaymem 显示诸多文件的内容。
embed 如果设备是个驱动器, 则将Stage 1.5嵌入到主引导扇区之后。
fallback 如果调用当前的菜单项时出现错误,则跳转到NUM 项后重试。
commandline 进入命令行方式。
find 在所有分区上查找文件名, 并显示包含该文件的设备。
fstest 切换文件系统的试验模式。
geometry 输出驱动器的相关信息。
halt 关闭系统(计算机)。
help 显示内部命令的帮助信息。
hiddenmenu 隐藏菜单。
hide 通过在分区类型上置隐藏标志,隐藏指定分区。
ifconfig 指定 IP 地址, 子网掩码, 网关和服务器地址。
linux boot 参数
linux boot 参数Linux的启动参数(boot parameters)在系统的启动过程中起着关键的作用。
这些参数可以告诉Linux内核如何启动,以及启动后应该如何配置系统。
它们可以在GRUB、LILO或其他引导加载器中进行设置。
以下是一些常见的Linux启动参数及其作用:1.root=:指定根文件系统的设备。
例如,root=/dev/sda1表示根文件系统位于/dev/sda1分区。
2.initrd=或initramfs=:指定初始RAM磁盘或初始RAM文件系统的路径。
这通常用于在启动过程中加载必要的驱动程序或其他模块。
3.ro:以只读模式挂载根文件系统。
这可以防止对文件系统的意外写入。
4.rw:以读写模式挂载根文件系统。
5.quiet或silent:减少启动过程中的输出,使启动过程更加简洁。
6.splash:在某些发行版中,使用启动画面代替文本输出。
7.nomodeset:禁用内核模式设置,通常用于解决显卡问题。
8.vga=:设置VGA模式。
例如,vga=773设置了一个特定的分辨率和颜色深度。
9.single或1:启动到单用户模式,绕过所有系统服务并直接登录为root。
10.rescue或s:启动到救援模式,这通常用于修复损坏的系统。
11.debug:启用内核调试。
12.initrd=或initramfs=:指定initrd(初始RAM磁盘)的路径,这是一个临时文件系统,包含内核启动所需的驱动程序和工具。
13.rd.参数:用于传递参数给initrd。
例如,rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap告诉initrd使用LVM逻辑卷作为根和交换分区。
14.rhgb:在Red Hat系的发行版中,启用图形启动界面。
15.quiet:减少启动过程中的输出。
请注意,这些参数可能因Linux发行版和版本的不同而有所变化。
因此,在实际使用时,最好参考特定发行版的文档或手册以获取准确的信息。
GRUB启动引导器完全教程
GRUB启动引导器完全教程GRUB(GNU GRand Unified Bootloader)是一种开源的引导程序,常用于启动多个操作系统的选择菜单。
使用GRUB启动引导器可以实现多操作系统之间的切换,提高系统的灵活性。
下面是一个完整的GRUB启动引导器教程,包括安装、配置和使用指南。
一.安装GRUB1. 首先,确保已经安装了GRUB的依赖项。
在大多数Linux发行版中,可以使用以下命令来安装依赖项:`sudo apt-get install grub``sudo dnf install grub``sudo yum install grub`2. 安装GRUB到硬盘的主引导记录(Master Boot Record,MBR)。
在大多数Linux发行版中,可以使用以下命令:`sudo grub-install /dev/sda`上述命令会将GRUB安装到硬盘的MBR,并在启动时加载它。
二.配置GRUB`sudo nano /etc/default/grub`2.修改配置文件以满足您的需求。
例如,您可以更改默认选择的操作系统、超时时间、背景图像等。
确保在修改文件后保存更改。
3. 更新GRUB的配置文件。
在大多数Linux发行版中,可以使用以下命令:`sudo update-grub`注意:根据不同的发行版,可能需要使用不同的命令来更新GRUB的配置文件。
请查阅您所使用发行版的文档以获取准确的命令。
三.使用GRUB1.重新启动计算机。
在启动时,您将看到GRUB菜单,其中列出了可用的操作系统。
您可以使用上下方向键选择要启动的操作系统。
2. 如果想要强制进入GRUB菜单,可以按住Shift键(在大多数系统中)或Esc键(在一些系统中)。
4.如果您希望更改GRUB菜单的外观,可以更改配置文件中的背景图片、文本颜色等。
您可以在互联网上找到许多可用的GRUB主题,并按照其说明进行安装和配置。
总结:GRUB启动引导器是一种强大的工具,可以让您轻松地选择并启动不同的操作系统。
linux操作系统( 课后习题答案)
1.简述linux的内核版本号的构成。
答:由3个部分数字构成,其形式如下Major.minor.patchlevel major:表示主版本号,通常在一段时间内比较稳定。
minor:表示次版本号,如果是偶数,代表这个内核版本是正式版本,可以公开发行;而如果是奇数,则代表这个内核版本是测试版本,还不太稳定仅供测试。
patchlevel:表示修改号,这个数字越大,则表明修改的次数越多,版本相对更完善。
2.如何理解linux发行版本含义?它由哪些基本软件构成?答:linux的基础是其内核,但光有内核是无法满足用户需要的,必须构成发行套件,即发行版。
系统引导管理程序(Boot Manager、用户界面、X-Window系统、系统管理、Internet服务、文件和打印服务、应用程序、工具和库程序3.linux的运用领域主要有哪些?答:Intranet 、服务器、嵌入式系统、集群计算机等方面 4.Linux主要特点。
答:多用户、多任务、多平台、漂亮的用户界面、硬件支持、强大的通信和联网功能、应用程序支持4.X Window由哪3个部分组成?分别有何功能?答:Server(服务器)、Client(客服端)、通信通道Server:控制实际显示器和输入设备的程序。
Client:Client是使用系统窗口功能的一些应用程序。
通信通道:负责Server与Client之间的信息传输。
5.什么是桌面环境?linux下的桌面环境主要有哪两种?答:为用户管理系统、配置系统、运行应用程序等提供统一的操作平台。
Linux最常用的桌面环境:KDE和GNOME。
6.在GNOME桌面环境下如何获取帮助信息?答:(1)GNOME桌面环境提供帮助浏览器程序help,单击【主菜单】——【帮助】命令即可启动,单击文字链接可查看相关的联机帮助信息。
(2)如果已安装文档光盘,则可单击【主菜单】——【文档】命令,选择查看已安装的文档。
(3)当运行运用程序时,单击该程序的【帮助】——【目录】或者【目录内容】也可查看该程序的帮助信息。
Red Hat Linux 9的引导与配置
其含义如下:
(1)标识字段:标识字段是唯一的,一般不超过四个字符长度。
(2)运行级别:除了文件中列出的运行级别之外,还有两种运行级别,一种是s(或S),常用于 内部运行级别为1的脚本,另外一种是a、b、c等,属于指定的运行级别,通常不用。
(3)程序执行方式(详细见课本)
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6 上面的0~6就是前面说的0~6的运行等级。/etc/rc.d/rc脚本负责启动
2021/1/14
1
Red Hat Linux 9的引导与配置
1.1 Red Hat Linux的启动过程 Linux系统的整个启动过程分为四个阶段, 可以由用户参与配置和
修改的有两个阶段:一个是LILO或GRUB的程序配置,一个是init程 序的相关配置。 (1)当用户打开计算机的电源时,BIOS开始工作,整个主机通过主板 上的检测程序对各个硬件进行自检。如果没有硬件故障,计算机将按 照BIOS中第一启动设备的设定启动,通常设定为从硬盘启动。 (2)BIOS将引导硬盘的0道0扇区的主引导块,然后主引导块引导硬盘 活动分区的第0扇区的引导块,此引导块通常占用一个扇区,含有引 导和启动操作系统的程序,如LILO或GRUB。
2)timeout=10 timeout标识默认等待时间,上面设置的是10秒,即超过10秒用户
还没有进行选择时,将自动选择“default”选项指明的项目。 3)splashimage=(hd0,0)/boot/grub/splash.xpm.gz
GRUB启动引导器
GRUB简介 GRUB简介
GRUB( GRUB(Grand Unified Boot Loader)是强大的启动 Loader)是强大的启动 引导器,不仅可以对各种发行版本的Linux进行引导,也能 引导器,不仅可以对各种发行版本的Linux进行引导,也能 够正常引导PC机上的其他常见操作系统。由于GRUB的功 够正常引导PC机上的其他常见操作系统。由于GRUB的功 能强大,已经逐渐取代了Linux中过去使用的LILO,而成 能强大,已经逐渐取代了Linux中过去使用的LILO,而成 为各Linux发行版本默认的启动引导器 为各Linux发行版本默认的启动引导器
GRU的配置文件 GRU的配置文件grub.conf 的配置文件grub.conf
#more /etc/grub.conf (/etc/grub.conf 是 /boot/grub/grub.conf)的一个符号链接 /boot/grub/grub.conf)的一个符号链接 default 0 timeout 10 Splashimage (hd0,0)/boot/grub/splash.xpm.gz 全局配置 hd0,0) title Fedora Core (2.4.22-1.2115.nptl) 2.4.22-1.2115.nptl) root (hd0,0) hd0,0) kernel /vmlinuz-2.4.22-1.2115.nptl ro root=LABEL=/ /vmlinuz-2.4.22initrd /initrd-2.4.22-1.2115.nptl.img /initrd-2.4.22title windows 2000 map(hd0,hd1) map(hd0,hd1) map(hd1) map(hd1)(hd0) root(hd1,0) root(hd1,0) chainloader +1
硬盘上安装3个系统,多系统安装
安装FreeBSD时不要使用FreeBSD提供的Loder,选择不安装引导程序。
剩余正常安装。
七、重新启动,进入RH9
# grub
>unhide (hd0,0)
>quit
#
这样将WINDOW的C:的属性改为不隐藏。
# vi /etc/grub.conf
在这个文件中将WINDOW 项下的(hd0,5)改为(hd0,0)
保存,、安装FreeBSD
# vi /etc/grub.conf
在这个文件中将WINDOW那些项目复制一份,只要将抬头和引导盘改一下就行。
这样,在一块硬盘上安装了RH9 FreeBSD5.0 和WINDOW98。
/usr
/home
/var
/tmp
/u
装如扩展分区。
在配置GRUB时,GRUB知道有两个系统,但由于c:为隐藏分区所以它将第二个操作系统的引导设置为(hd0,5),这是我扩展分区上的D:,而不是C:。因此在重新启动是即使选择了WINDOW,也进不了WINDOW98。
五、进入RH9,
二、开始,我下载了RH9的ISO,直接从硬盘安装到扩展分区,在选择引导程序时我选择了LILO而不是GRUB,结果在启动时,没有LILO提示,只能进入WINDOWS98,最后只好用引导盘引导硬盘的RH9。(可能我没有修改/etc/lilo.conf)。
三、没办法,下载了powerquestpartitionmagic6.0。对硬盘进行了重新分区。在PQ下选择在C:之前建立一个小分区(500M)。PQ自己不知如何处,将WINDOW98分区设置成隐藏分区,且设置为不活动。结果现在连WINDOW98也启动不了了。
BootLoader程序原理
BootLoader程序原理
对于PC系统,引导加载程序由BIOS(固件程序)和位于磁盘MBR(主引导记录)中系统引导程序(LILO和GRUB等)一起组成。
BIOS完成硬件检测和资源分配后,将硬盘MBR 中的引导程序读到系统的内存中,然后将控制权交给引导程序。
引导程序的主要任务就是将内核映像从硬盘上读到内存中,然后跳转到内核的入口点去运行,即开始启动操作系统。
在嵌入式系统中,主要使用flash作为系统的存储煤介,很少用磁盘,因此整个系统的加载启动任务就完全由引导程序(也称为Bootloader)来完成。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
GRUB和LILO简介从普通的桌面用户到Linux,系统管理员,大部分Linux 用户都使用过一种名为引导加载程序的工具。
此类工具的不同变种会提供不同层次的支持和功能。
在很多情况下,Linux 发行版默认安装的引导加载程序并不总是适合需要;每个引导加载程序的默认设置也是如此。
在本文中,Laurence Bonney 讨论了两个流行的引导加载程序—— LILO 和GRUB ——的优点和缺点,并建议了很多配置,以充分发掘机器的潜力。
在不考虑他们的工作或专业情况下,所有Linux 用户都会使用的是哪个工具?引导加载程序。
通过本文了解引导加载程序的工作原理,认识两个流行的引导加载程序LILO (Linux Loader)和GNU GRUB(GRand Unified Boot Loader),并研究两者各自的优点和缺点。
什么是BootLoader(引导加载程序)?简单地说,BootLoader就是在操作系统内核运行之前运行的一段小程序。
通过这段小程序,我们可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。
在嵌入式系统中,通常并没有像BIOS那样的固件程序(注,有的嵌入式CPU也会内嵌一段短小的启动程序),因此整个系统的加载启动任务就完全由BootLoader来完成。
比如在一个基于ARM7TDMI core的嵌入式系统中,系统在上电或复位时通常都从地址0x00000000处开始执行,而在这个地址处安排的通常就是系统的BootLoader程序。
最简单地讲,引导加载程序(boot Loader)会引导操作系统。
当机器引导它的操作系统时,BIOS 会读取引导介质上最前面的512 字节(即人们所知的主引导记录(master boot record,MBR))。
在单一的MBR 中只能存储一个操作系统的引导记录,所以当需要多个操作系统时就会出现问题。
所以需要更灵活的引导加载程序。
主引导记录本身要包含两类内容——部分(或全部)引导加载程序以及分区表(其中包含有关于介质其余部分如何划分为分区的信息)。
当BIOS 引导时,它会寻找硬盘驱动器第一个扇区(MBR)中存储的数据;BIOS 使用存储在MBR 中的数据激活引导加载程序。
由于BIOS 只能访问很少量的数据,所以大部分引导加载程序分两个阶段进行引导。
在引导的第一个阶段中,BIOS 引导一部分引导加载程序,即初始程序加载程序(initial program Loader,IPL)。
IPL 查询分区表,从而能够加载位于不同介质上任意位置的数据。
首先通过这步操作来定位第二阶段引导加载程序(其中包含加载程序的其余部分)。
第二阶段引导加载程序是引导加载程序的主体;很多人认为这才是引导加载程序的真正部分。
它包含有加载程序更需要磁盘空间的部分,比如用户界面和内核引导程序。
从简单的命令行到绘声绘色的GUI,这些用户界面的范围很广泛。
引导加载程序通常配置为两种方式的其中之一:要么是作为主引导加载程序(primary boot Loader),要么是作为二级引导加载程序(secondary boot Loader)。
主引导程序是安装在MBR 上的第一阶段引导加载程序(见先前的描述)。
二级引导加载程序是安装在可引导分区的第一阶段引导加载程序。
必须在MBR 上安装单独的引导加载程序,并配置它将控制权转交给二级引导加载程序。
很多较新的Linux 引导加载程序特别实用,因为它们提供了不同程度的交互,比如高级的GUI 和加密的口令,以及通过选择操作系统进行引导的能力。
这样,可以在具有多个物理磁盘的同一机器上共存多个操作系统。
这种设置越来越常见,因为它帮助很多用户在安装新的Linux 时,能够保留先前由Windows? 机器所生成的宝贵数据资料。
我个人认为这种设置非常美妙;只使用一台机器就可同时拥有Linux 和Windows。
随着时间的推移,引导加载程序已经得到了增强,为用户引入了大量的功能。
各个引导程序的功能和配置存在差异,但基本的目标是相同的。
现在来看两个较为流行的引导加载程序:LILO 和GRUB。
LILO介绍LInux Loader(LILO)已经成为所有Linux 发行版的标准组成部分。
作为一个较老的/最老的Linux 引导加载程序,它那不断壮大的Linux 社区支持使它能够随时间的推移而发展,并始终能够充当一个可用的现代引导加载程序。
有一些新的功能,比如增强的用户界面,以及对能够突破原来1024-柱面限制的新BIOS 功能的利用。
虽然LILO 仍在不断地发展,但LILO 工作原理的基本概念保持不变。
使用LILO 作为引导加载程序要使用LILO 作为引导加载程序,需要做的事情取决于是要进行全新安装还是要让已经安装的Linux 改为使用LILO。
如果是要进行全新安装,那么直接跳转到配置LILO 那一节。
如果已经安装了某个Linux 发行版,那么通常可以选择安装并配置LILO(并可以将机器引导到新的Linux 安装)。
要将现有的Linux 迁移到LILO,首先必须获得最新版本的LILO(见参考资料)。
在做任何其他事情之前,建议您确保在手边拥有一张Linux 引导盘——如果偶而弄错了某些地方,它可以提供很大的帮助,能够恢复到初始的Linux 配置!将LILO 安装到系统中之后,让它接管MBR 非常简单。
以root 用户身份输入:代码:# /sbin/lilo -v -v这将使用当前的LILO 默认值,抹去MBR 中当前所有内容。
不过,请阅读配置LILO,以确保能够按预期引导起来。
也要注意,如果想要在同一机器上运行Windows 和Linux,那么应该先安装Windows OS,然后再安装Linux OS,这样,在Linux 安装中所选择的引导加载程序就不会被Windows 引导加载程序所覆盖。
与Linux 引导加载程序不同,多数Window 引导加载程序不支持引导Linux。
如果已经先安装了Linux,那么只需要自己创建一张Linux 引导盘,这样就可以在安装完Windows 之后,回到Linux 安装中并重写MBR。
配置LILOLILO 的配置都是通过位于/etc/lilo.conf 的一个配置文件来完成的。
清单1 给出了一个示例配置,使用的是我的家用机器,支持Linux 和Windows 机器的双重引导。
了解我的工作站的基本配置,就可以想像出这些配置是如何与实际机器相关联的:主HDD(物理磁盘1)上安装了Windows XP(最初机器上只有它)。
在Linux 术语中,这个HDD 是/dev/hda(在GRUB 术语中是hd0,0)。
从HDD(物理磁盘2)上安装了Red Hat Linux;root 分区位于这个硬盘驱动器的第三个分区,即/dev/hdb3(在GRUB 术语中是hd1,3)。
清单1. lilo.conf 示例文件代码:boot=/dev/hdamap=/boot/mapinstall=/boot/boot.bprompttimeout=100compactdefault=Linuximage=/boot/vmlinuz-2.4.18-14label=Linuxroot=/dev/hdb3read-onlypassword=linuxother=/dev/hdalabel=WindowsXP清单1 中的选项:引用:boot= 行告诉LILO 在哪里安装引导加载程序。
在上面的示例中,将把它安装到第一块硬盘的MBR。
也可以选择将LILO 安装到/dev/hdb3(示例中的Linux 分区),这样需要向/dev/hda 安装另一个引导加载程序,并令其指向LILO 引导加载程序;然后只需要让LILO 作为二级引导加载程序。
通常,引导加载程序应该位于/dev/hda。
还可以将这个参数指向软盘驱动器(最常见的是/dev/fd0),来制做LILO 软盘引导磁盘。
map= 指向引导期间LILO 内部使用的映射文件。
当使用/sbin/lilo 命令安装LILO 时,它会自动生成这个文件,其中包含有描述符表(还有其他内容)。
建议不要改动这个文件!install= 是LILO 在引导过程中内部使用的文件之一。
它同时包含有引导加载程序的主要部分和二级部分。
boot.b 文件的一个片段被写入到MBR(引导加载程序的主要部分),它会指向那个映射,接下来指向二级引导加载程序。
同样,不要改动它!prompt= 告诉LILO 使用用户界面(本例中给出了两个选择—— Linux 和WindowsXP)。
除了使用prompt/user 界面以外,在适当情况下还可以为Linux 内核等指定具体的参数。
如果不在配置文件中指定此选项,那么LILO 将引导到默认的OS,不发生任何用户交互,也不会等待。
(但是请注意,如果在引导时按下了SHIFT,那么还是可以得到提示,当不想把引导加载程序暴露给普通用户时,这非常有用)。
timeout= 是引导提示在自动引导默认OS(本例中是Linux)之前的等待时间(以十分之一秒为单位)。
如果在lilo.conf 没有指定prompt,那么这个参数就会被忽略。
compact 选项可以大大加速引导过程,它会将连续的读磁盘的请求合并为一个单独的请求。
不过,这可能是一件祸福参半的事情,因为我在论坛上看到过很多贴子提到了关于此选项的问题。
当希望从软盘引导时,这个选项尤其有用。
default= 选项告诉LILO 默认使用哪个映像进行引导,比如在等待超时之后。
这与lilo.conf 文件中的某个映像的标签相关联。
如果没有在配置文件中指定此选项,那么它将引导文件中指定的第一个映像。
对于允许用户引导到的每一个Linux 版本,都应该指定image= 及以下三个选项。
image 选项指定希望引导到的内核版本。
label= 标明了在运行期间希望能够从用户界面引导的不同OS。
另外,这个标签用于指定引导的默认OS。
(注意:标签名称中避免出现空格;否则,引导那个文件时会出现无法预期的错误。
)root= 告诉LILO OS 文件系统实际所在的位置。
在我们的示例中为/dev/hdb3,即第二块硬盘上的第三个分区。
read-only 告诉LILO 以只读的方式初始引导到文件系统。
OS 一旦完全引导起来,就会以读写方式挂载。
password= 允许您为将要引导到的特定OS 设置口令。
不幸的是,这个口令是以可读文本的方式保存在lilo.conf 文件中,所以,所有人都能够读取它。
如果需要,还可以对想要引导自的每个操作系统设置口令(在我们的示例中,只为Linux 的引导设置了一个口令)。
other= 的动作类似于image 和root 选项的组合,但是用于除了Linux 以外的其他操作系统。