linux开机流程、模块管理与Loader(再续)

1./etc/sysconfig/目录简介:

1)authconfig:这个档案主要在规范使用者的身份认证机制,包括是否使用本机/etc/passwd,/etc/shadow密码记录使用何种加密算法,还有是否使用外部密码服务器提供的账号验证等,以及/etc/shadow密码记录使用何种加密算法,还有是否使用外部密码服务器提供的账号验证(NIS,LDAP)等。系统默认使用MD5加密算法,并且不使用外部身份验证机制

2)clock:设定linux主机的时区,基本上,在clock档案内的设定项目ZONE所参考的时区位于/usr/share/zoneinfo目录下的相对路径中。

3)i18n:设定语系

4)keyboard&mouse:设定鼠标和键盘的形式

5)network:设定是都启动网络,以及设定主机名和网管(GATEWAY)

6)network-scripts/:设定网络卡

2.切换runlevel的方法:

1)修改/etc/inittab中,“id:数字:initdefault:”里的数字[0-6]

2)通过init [0-6]暂时变更系统的runlevel

3.runlevel:显示当前的运行级别

4./lib/modules/$(uname -r)/kernel简介:

1)arch:与硬件平台相关的项目,例如CPU的等级等等

2)crypto:核心所支持的加密技术,例如md5或者des等

3)drivers:一些硬件的驱动程序,例如显示适配器,网络卡,PCI相关硬件等等

4)fs:核心所支持的filesystem

5)net:与网络有关的各项协议数据,还有防火墙模块(net/ipv4/betfilter/*)等

6)sound:与音效有关的各项模块

5.depmod [-Ane]:/lib/modules/$(uname -r)/modules.dep记录在核心支持的模块的各项相依性。该指令就是建立这个档案,参数

1)-A:不加任何参数时,depmod会主动的去分析目前核心的模块,并且重新写入/lib/modules/$(uname -r)/modules.dep当中,若加入-A参数时,则depmod会去搜索比modules.dep内还要新的模块,如果真找到新模块,才会更新

2)-n:不写如modules.dep内,而是将结果输出到屏幕上

3)-e:显示出目前已加载的不可执行的模块名称。

6.lsmod:显示已经存在于核心的模块,显示内容包括有:

1)模块名称(Module)

2)模块大小(Size)

3)此模块是否被其他模块所使用(Used by)

7.modinfo [-adln] [module_name|filename]:查看模块的信息,参数,

1)-a:仅列出作者名称

2)-d:仅列出改modules的说明

3)-l:仅列出授权(license)

4)-n:仅列出该模块的详细路径

8.insmod [fullpath/module_name] [params]:由使用者自行加载一个完整的文件名模块

9.modprobe:主动搜寻modules.dep的内容,会先克服模块的相依性才决定需要加载的模块有哪些。

10.rmmod [-fw] module_name:删除模块,参数,

1)-f:强制删除模块,不管师父正被使用

2)-w:若该模块正被使用,则rmmod会等待该模块被使用完毕后,才会移除他

11.modprobe [-lcfr] module_name:模块加载相关指令,参数,

1)-c:列出目前系统所有的模块

2)-l:列出目前在/lib/modules/`uname -r`/kernel当中的所有模块完整文件名

3)-f:强制加载该模块

4)-r:类似rmmod,就是移除某个模块

12.grub(开机管理程序)的优点:

1)认识与支持较多的文件系统,并且可以使用grub的主程序直接在在文件系统中搜寻核心档名

2)开机的时候,可以自行编辑与修改开机设定项目,雷士bash的指令模式

3)可以动态搜寻配置文件,而不需要在修改配置文件后重新安装grub。亦即我们只要修改完/boot/grub/menu.lst(grub的配置文件)里头的设定后,下次开机就生效了

13./boot/grub/menu.lst文件解读:

default=0:默认开机选项,使用第一个开机选项

timeout=5:若5秒为动键盘,则使用默认开机选项

splashimage=(hd0,0)/grub/splash.xpm.gz:背景图片所在的档案

hiddenmenu:读秒期间是否显示完整的选单画面(预设隐藏),如果想要显示选单把这行注释掉即可

第一个选单的内容:

title CentOS (2.6.18-92.el5)

root (hd0,0)

kernel /vmlinuz-2.6.18-92.el5 ro root=LABEL=/1 rhgb quiet

initrd /initrd-2.6.18-92.el5.img

14.initrd:提供开机过程中所需要的最重要的核心模块,以让系统开机过程可以顺利完成。initrd可以将/lib/modules/...内的开机过程中一定需要的模块包成一个档案(档名就是initrd),然后在开机时透过主机的INT 13硬件功能将该档案读出来解压缩,并且initrd在内存会仿真成为根目录,由于此虚拟文件系统(Initial RAM Disk)主要包含磁盘与文件系统的模块,因此我们的核心最后就能够认识实际的磁盘,那就能够进行实际的根目录的挂载。

一般需要initrd的情况为:

根目录所在磁盘为 SATA、USB 戒 SCSI 等连接接口;

根目录所在文件系统为 LVM, RAID 等特殊格弅;

根目录所在文件系统为非传统 Linux 讣识的文件系统时;

其他必须要在核心加载时提供的模块。

15.mkinitrd [-v] [--with=模块名称] initrd 文件名 核心档名。版本:制作initrd,参数,

1)-v:显示mkinitrd的运作过程

2)--with=模块名称:模块名称值得是模块的名字而已,不需要填写。目前核心版本的 ext3 文件系统模块为底下的文件名: /lib/modules/$(uname -r)/kernel/fs/ext3/ext3.ko 那妳应该要写成: --with=ext3 就好了 (省略 .ko)

3)initrd 档名:你所要建立的initrd档名,尽量取有意义又好记的名字

4)核心版本:某一核心版本,如果是目前的核心则是$(uname -r)

16.grub-inistall [--root-directory=DIR] INSTALL_DEVICE,参数:

1)--root-directory=DIR:DIR为实际目录,使用grub-install默认会将grub所有的档案都复制到/boot/grub/*,如果想要赋值到其他目录与装置去就得需要使用这个参数

2)INSTALL_DEVICE:安装得装置代号

时间: 2024-07-30 05:47:20

linux开机流程、模块管理与Loader(再续)的相关文章

鸟哥的linux私房菜——第20章 启动流程、模块管理与loader

20.1 Linux启动流程分析 Linux启动过程: 按下开机电源后计算机硬件主动读取BIOS来加载硬件信息以及硬件系统的自我测试,之后系统会主动读取第一个可启动的设备(由BIOS设置),此时就可以读入引导加载程序(boot loader)了,引导加载程序指定使用那个内核文件来启动,并实际加载内核到内存中解压缩与执行,此时内核就能够在内存中活动,并检测所有硬件信息与加载适当的驱动程序来使主机运行,等内核检测硬件与加载驱动程序完毕后,就可以登录了. 1)加载BIOS的硬件信息与进行自我测试,并依

Linux开机流程即运行级别

Linux开机流程 一.概念 1.boot  loader: 领导装载程序,常用的有(Grub, spfdisk) 2.Grub: 是一个多操作系统启动管理器,开机时领导不同系统,windows  linux等 二.开机的流程 1.加载BIOS(basic input output system)的硬件信息,并进行自我测试 2.读取并执行第一个开机装置内MBR(主引导记录扇区)的boot loader即grub  spfdisk 等程序! 3. grub(boot loader)就是一个多操作系

Linux系统管理之模块管理、打印机设置(笔记)

第一部分.启动流程.模块管理与Loader 一.run level执行等级与切换 1.Linux通过设置run level来规定系统使用不同的服务来启动,基本上,依据有无网络与有无X Window将run level分为7个等级 0 - half :系统直接关机 1 -single user mode :系统单用户模式.用在系统出问题时维护 2 -multi-user,without NFS:类似下面的runlevel3,但无NFS服务 3 -Full multi-user:完整含有网络功能的纯

Linux开机流程一览

Linux开机流程一览 开机总体流程: 1.BIOS:加载BIOS的硬件信息并进行自我测试,依据设置取得第一个可开机的装置 2.MBR:读取并执行第一个boot loader 3.grub:读取/boot/grub识别系统文件 4.kernel:加载核心文件,加载完成后启动/sbin/init 5.init:启动init程序,完成后等待用户登陆 6.bash:用户登陆 总体流程图 init步详细介绍图

linux开机流程、模块管理与Loader

1.系统开机过程: 1)加载BIOS的硬件信息与进行自我测试,并依据设定取得第一个可开机的装置 2)读取并执行第一个开机装置内MBR的boot Loader(亦即grub,spfdisk等程序) 3)依据boot loader的设定加载Kernel,Kernerl会开始侦测硬件信息与加载驱动程序 4)在硬件驱动成功之后,Kernel会主动呼叫init程序.而init会取得run-level信息 5)init执行/etc/rc.d/rc.sysinit档案来准备软件执行的作业环境(如网络,时区等)

拜师鸟哥之linux学习体会(15)——开机流程、模块管理与Loader

1.    我们先回顾下之前所讲到的linux开机的一个流程:当你按下电源按键后计算机硬件会主动读取BIOS来加载硬件信息及进行硬件系统的自我测试,之后系统会主动读取第一个开机装置(由BIOS设定),此时就可以读入开机管理程序了. 2.    简单地说,系统开机的整个流程如下: 1)加载BIOS的硬件信息与进行自我测试,并依据设定取得第一个可开机的装置 2)读取并执行第一个开机装置内MBR的boot loader 3)依据boot loader的设定加载kernel,kernel会开始侦测硬件预

Linux 开机流程详解

对于任何系统, 开机不仅仅是接通电源这么简单的事情, 在这短短的几秒或几十秒内将会发生许多事情, 了解这个完整的流程将是解决任何开机问题或提高开机速度的前提. 接下来, 我们就详细了解一下Linux的开机流程: 1. 加载 BIOS 的硬件信息并进行自我测试,并依据取得第一个可开机的装置; 2. 读取并执行第一个开机装置内 MBR 的 Boot Loader (如 grub, spfdisk 等程序); 3. 依据 Boot Loader 的设定加载 kernel, kernel 会开始侦测硬件

linux开机流程详解

Linux操作系统的开机流程详解 开机需要十步 第一步:开机自检(BIOS)就是开始工作之前先对自己的工具进行检查是否正常,如果正常那就可以进行接下来的步骤假如步正常就得检测哪里的问题进行处理.BIOS其实就是主板上的一给自检程序,开机先对主板上自带的和外接的一些开机必备的设备进行检测,像CPU,显卡,内存,硬盘等设备的自检过程就是自检 第二步:MBR引导,也就是根据装有linux系统的硬盘上的主引导区的记录进行引导,主引导记录处在硬盘上的第一给物理分区上,硬盘能够读取到数据也就是靠的这个最主要

linux开机流程、模块管理与Loader(续)

1.init处理系统初始化流程: 1)/etc/rc.d/rc.sysinit这个脚本用来设定系统环境,具体为: 取得网络环境与主机类型(读取/etc/sysconfig/network取得主机名与默认网关等网络环境) 测试与挂载内存装置/proc及USB装置/sys(除了挂载内存装置/proc外,还会主动侦测系统上是否具有usb的装置,若有则会注定加载usb的 驱动程序,并尝试挂载usb的文件系统) 决定是否启动SELinux 启动系统的随机数生成器 设定终端机字形 设定显示于开机过程中欢迎画