Linux-基础教程--内核管理和系统启动过程.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《Linux-基础教程--内核管理和系统启动过程.ppt》由会员分享,可在线阅读,更多相关《Linux-基础教程--内核管理和系统启动过程.ppt(61页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本章内容要点n内核管理n系统启动过程n故障排查与修复本章学习目标 n了解内核组件n管理内核模块n调整内核参数n安全升级内核n熟悉系统系统过程n掌握修复运行级别和援救环境的使用n学会排查和修复常见的故障内核管理内核管理Linux内核功能n启动管理启动管理:在系统初始化过程中检测硬件、加载驱动并引导系统。n进程调度进程调度:负责控制进程对CPU的使用。n进程通信进程通信:提供了进程之间的各种通信机制。n内存管理内存管理:负责管理多个进程对内存的使用。n文件系统文件系统:使用虚拟文件系统中间层支持多种不同类型的文件系统。n设备管理设备管理:为设备提供缓冲和缓存以提高硬件的访问速度。n网络接口网络接口
2、:对各种网络标准的存取和各种网络硬件的支持。n安全管理安全管理:校验文件系统权限、SELinux 环境和防火墙规则。RHEL/CentOS下的内核n内核的RPM包qkernel:一般用途的普通版内核,支持单核或多核CPU,最多支持4G物理内存。qkernel-PAE:支持大内存的内核,支持多核CPU,最多支持64G物理内存。qkernel-xen:支持Xen虚拟化(hypervisor)的内核。n内核文档qkernel-doc显示内核相关的信息n显示系统内核信息 quname -srvmoqcat /proc/version n显示系统架构 qarchn显示 LSB (Linux Standa
3、rd Base) 和发布信息(Distribution information) qlsb_release -a # 适用于所有的 Linux 发行n显示 Linux 发布版本(仅用于 RedHat 系列) qcat /etc/redhat-releaseqrpm -q redhat,centos-release内核的重要组件n内核映像文件q文件保存在 /boot/vmlinuz-$(uname -r) 。q由启动加载器(GRUB)直接加载到内存以便启动内核。n内核模块q可根据需要装载或者卸载的内核扩展q包括驱动程序、文件系统、防火墙等等n初始化内存盘(Bootloader Initializ
4、ed RAM Disk)内核模块n内核的功能可以直接编译到内核映像文件,也可以编译为独立的模块。n可以在系统运行期间动态地加载或卸载内核模块以改变系统功能。n所有的内核模块保存在 /lib/modules/$(uname -r) 目录中。n/lib存在根文件系统中,因此所有内核模块必须在根文件系统挂载后才能使用。n为特定的内核版本编译,以Kernel的RPM提供。n可添加第三方模块内核模块工具nlsmod:列出已装载的模块q# lsmod |grep usbnmodprobe:装载和卸载模块q# modprobe usb_storageq# modprobe -r usb_storagenmo
5、dinfo:显示模块的信息q# modinfo usb_storage内核模块配置文件 /etc/modprobe.confn定义模块别名、设置默认的模块执行参数、指定在装载或卸载模块时需要执行的操作n配置文件中 可以使用如下四个配置语句qalias:用于指定别名。qoptions:用于指定模块运行时的默认参数。qinstall:用于指定加载模块时执行的命令。qremove:用于指定卸载模块时执行的命令。初始化内存盘n初始化内存盘提供在引导初期装载的模块q用于内核映像文件中没有提供的其他设备的内核驱动模块n文件保存在 /boot/initrd-$(uname -r).img n由启动加载器(G
6、RUB)直接加载到内存n在引导初期,根文件系统挂载之前使用n是Linux安装盘、Linux启动盘(CD、USB)、LiveCD的必备部件重建初始化内存盘n/boot/initrd-$(uname -r).imgq是在系统安装时根据当前系统的硬件而创建的 q针对特定的硬件和软件平台,不同系统的内容不同q当系统的硬件或软件改变时需要重建n使用 mkinitrd 命令重建q修改内核模块配置文件 /etc/modprobe.confq# mkinitrd /boot/initrd-$(uname -r).img $(uname -r)q也可以使用 -with=module_name 选项虚拟文件系统
7、/procn虚拟文件系统 /proc是在Linux启动时挂载到根文件系统上的,它是内存的一部分而并非真正存储在硬盘上。q重启系统后上次的修改会被重新初始化n使用/proc的目的就是将Linux的内核数据以目录或文件的形式呈现给用户或应用程序,以便查看内核信息或临时修改内核功能。q显示进程信息、内存资源、硬件设备、内核内存等q修改网络、内存子系统等内核属性,修改立即生效/proc 示例n只读文件 q/proc/1/* q/proc/cpuinfo q/proc/meminfo q/proc/partitions n/proc/sys/ 下的读写文件 q/proc/sys/kernel/hostn
8、ame q/proc/sys/net/ipv4/ip_forwardq/proc/sys/vm/drop_caches q/proc/sys/vm/swappinesssysctl : 持久的内核配置nsysctl 使 /proc/sys 设置具有持久性 n重新引导后,在 /etc/sysctl.conf 中添加的配置会自动体现在 /proc 中 n使用sysctl命令进行配置维护或监控: q列出所有当前设置: # sysctl -aq从sysctl.conf中重新装载: # sysctl -pq设定一个动态 /proc 值: # sysctl -w net.ipv4.ip_forward=1
9、使用rpm命令升级内核n安装新版内核q# rpm -i kernel*q不要使用不要使用 rpm -U 或或 rpm -F !n重新启动系统,在GRUB中选择新版内核启动系统n测试新版内核,若有任何问题发生可以使用旧版内核重新启动系统n当确信新版内核无任何问题时,删除旧版内核q# rpm -e kernel-oldversion使用yum命令升级内核n使用yum命令升级内核q# yum -y update kernelq主要包含如下操作:(1)下载最新版的内核RPM文件(2)安装新版的内核RPM文件(3)根据/etc/syconfig/kernel的设置自动配置GRUBn测试新版内核,若有任何
10、问题发生可以使用旧版内核重新启动系统n当确信新版内核无任何问题时,删除旧内核 q# yum remove kernel-oldversion系统启动过程系统启动过程RHEL/CentOS启动过程总览BIOSnBIOS(Basic Input/Output System)是指首次开机时由计算机上运行的软件代码。nBIOS 的主要功能是将识别和控制各种设备的程序代码嵌入在一个芯片上。包含机器的配置信息,如:IDE controller, NIC等。nBIOS允许用户设置介质启动顺序。BIOS初始化nTern onnCPU jump to address of BIOS (0 xFFFF0)nBIO
11、S runs POST (Power-On Self Test)qBIOS检测所有的外围设备,目的是将这些设备的信息提供给将来运行的操作系统使用。nFind bootale devicesn读取和执行引导设备首扇qBIOS读取引导介质上的MBR以寻找引导程序(MBR的前的前446字节字节),找到之后就执行它。MBR (Master Boot Record)nMBR 是一个 512 bytes 的硬盘首扇区 (sector 1 of cylinder 0, head 0)nMBR 的组成q引导加载器(446 bytes):包含可执行代码和错误信息文本q磁盘分区表(64 bytes):包含四个分区
12、的记录q结束标志(2 bytes):用于MBR的验证检查 (0 xAA55)nMBR被加载到RAM后,启动过程将由其接管MBR图示启动加载器( Boot loader )n引导加载器,更贴切地称为内核加载器。n任务是加载Linux内核q可选的,初始RAM磁盘n最流行的Linux引导加载程序qGRUB 或 LILOqSyslinuxGRand Unified BootloadernGRUB 是一款与操作系统无关的启动加载器 n提供了交互操作界面和命令行界面n支持文件系统的访问q可从 ext2/ext3, ReiserFS, JFS, FAT, minix 或 FFS 文件系统引导qGRUB de
13、vice (hd0,0) /dev/hda1 or /dev/sda1n在启动过程中可读取GRUB的配置文件n支持多种内核的可执行文件格式n支持无盘系统n支持 MD5 口令保护GRUB启动过程nGRUB stage1qMBR上的前446字节即为GRUB的stage1q任务就是加载 stage1.5nGRUB stage1.5:q位于紧跟在硬盘MBR之后的 30 Kilobytesq是stage1和stage2的一个中间层q任务就是加载文件系统驱动,以识别stage2存放的文件系统,并加载stage2 Stage1和Stage1.5是在系统安装时写入硬盘的 在/boot/grub 目录下可以找到
14、Stage1和Stage1.5的副本GRUB启动过程(续)nGRUB Stage2q/boot/grub/stage2 是GRUB的核心程序q读取配置文件/boot/grub/grub.confq在屏幕上显示操作系统的启动选择界面n在交互界面中可以为要启动的内核传递参数q将用户选择的(或配置文件中默认的)内核加载到内存,并将控制权移交给此内核GRUB支持两种加载操作系统的方式 直接加载:加载用户选择的直接加载:加载用户选择的Linux内核内核 链式加载:加载另一个引导程序从而加载其他操作系统的内核GRUB的配置文件n默认为 /boot/grub/grub.conf n对 grub.conf 的
15、修改可立即生效ngrub.conf中使用的常见配置命令qdefault m:设置启动菜单的默认启动项,菜单项序号参数其值从“0”开始 qhiddenmenu:隐藏菜单项 qtimeout n:设置GRUB菜单的启动延时(以秒为单位) qsplashimage:指定某文件作为启动菜单的背景图像,必须为 xpm 格式,可以是gz压缩文件 GRUB的配置文件(续)ngrub.conf中使用的常见配置命令qtitle:设置用来装载一个操作系统的一组特定命令的标题,标题将在GRUB启动菜单中显示 qroot :设置GRUB的根分区(root),通常是文件系统的boot分区,即Linux内核所在的分区 q
16、kernel:后跟 Linux 内核文件作为参数,加载 Linux 的内核文件及参数 qinitrd:后跟初始RAM盘映像文件 qrootnoverify :做root命令同样的事情,只是不挂装分区(用于启动Windows系统) qchainloader:调用 Windows 分区的启动引导器引导 Windows 系统 qpassword:设置 grub 口令,可以使用 -md5 参数后跟 MD5 口令GRUB的配置文件举例default=0timeout=5splashimage=(hd0,0)/grub/splash.xpm.gzhiddenmenutitle CentOS (2.6.18
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 基础教程 内核 管理 系统启动 过程
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内