Linux系统管理——系统启动和内核管理

1、内核

1.1内核分类

内核设计流派:
    单内核(monolithic kernel):Linux
    把所有功能集成于同一个程序

微内核(micro kernel):
    Windows, Solaris
    每种功能使用一个单独子系统实现

1.2、内核组成

组成部分:
    核心文件:/boot/vmlinuz-VERSION-release

1.3、centos6启动

    1.加载BIOS的硬件信息,获取第一个启动设备
    2.读取第一个启动设备MBR的引导加载程序(grub)的启动信息
    3.加载核心操作系统的核心信息,核心开始解压缩,并尝试驱
    动所有的硬件设备
    4.核心执行init程序,并获取默认的运行信息
    5.init程序执行/etc/rc.d/rc.sysinit文件
    6.启动核心的外挂模块
    7.init执行运行的各个批处理文件(scripts)
    8.init执行/etc/rc.d/rc.local
    9.执行/bin/login程序,等待用户登录
    10.登录之后开始以Shell控制主机

1.4、系统运行级别

    /sbin/init CentOS6    之前;
    
    运行级别:为系统运行或维护等目的而设定;0-6:7个级别
    0:关机
    1:单用户模式(root自动登录), single, 维护模式
    2: 多用户模式,启动网络功能,但不会启动NFS;维护模式
    3:多用户模式,正常模式;文本界面
    4:预留级别;可同3级别
    5:多用户模式,正常模式;图形界面
    6:重启
    
    默认级别: 3, 5
    切换级别:init #
    查看级别:runlevel ; who -r

2、内核编译

2.1、内核组成


内核组成部分:
kernel:
     内核核心,一般为bzImage,通常在/boot目录
    下,名称为vmlinuz-VERSION-RELEASE
kernel object:
     内核对象,一般放置于
    /lib/modules/VERSION-RELEASE/

[ ]: N
[M]: M
[*]: Y

辅助文件:ramdisk
    initrd
    initramfs

2.2、准备

前提:
    (1) 准备好开发环境
    (2) 获取目标主机上硬件设备的相关信息
    (3) 获取目标主机系统功能的相关信息
    例如:需要启用相应的文件系统
    (4) 获取内核源代码包
    www.kernel.org
目标主机硬件设备相关信息:
    CPU:
    cat /proc/cpuinfo
    x86info -a
    lscpu

2.3、步骤

    tar xf linux-3.10.67.tar.xz -C /usr/src
    cd /usr/src
    ln -sv linux-3.10.67 linux
    cd /usr/src/linux
    cp /boot/config-$(uname -r) ./.config
    make help
    make menuconfig
    make -j 2
    make modules_install
    make install
    reboot

2.4、如何编译

(1) 配置内核选项
支持“更新”模式进行配置:make help
    (a) make config:基于命令行以遍历的方式去配置内核
    中可配置的每个选项
    (b) make menuconfig:基于curses的文本窗口界面
    (c) make gconfig:基于GTK (GNOME)环境窗口界面
    (d) make xconfig:基于QT(KDE)环境的窗口界面

支持“全新配置”模式进行配置
    (a) make defconfig:基于内核为目标平台提供的“默认
    ”配置进行配置
    (b) make allyesconfig: 所有选项均回答为“yes“
    (c) make allnoconfig: 所有选项均回答为"no“
(2) 编译
    全编译:make [-j #]
    编译内核的一部分功能:
    
    (a) 只编译某子目录中的相关代码
        cd /usr/src/linux
        make dir/
    (b) 只编译一个特定的模块
        cd /usr/src/linux
        make dir/file.ko

        例如:只为e1000编译驱动:
        make drivers/net/ethernet/intel/e1000/e1000.ko
要获取特定目标平台的使用帮助
    make ARCH=arch_name help
    make ARCH=arm help
在已经执行过编译操作的内核源码树做重新编译:
    需要事先清理操作:
    make clean:清理大多数编译生成的文件,但会保留
    config文件等;
    make mrproper: 清理所有编译生成的文件、 config及某
    些备份文件;
    make distclean:mrproper、 patches以及编辑器备份文件;

2.5、卸载内核

    删除/lib/modules/目录下不需要的内核库文件
    删除/usr/src/linux/目录下不需要的内核源码
    删除/boot目录下启动的内核和内核映像文件
    更改grub的配置文件,删除不需要的内核启动列表

原文地址:http://blog.51cto.com/mjunetwslinux/2069315

时间: 2024-10-17 02:30:31

Linux系统管理——系统启动和内核管理的相关文章

Linux之系统启动和内核管理

系统启动 常用命令: runlevelwho -r/etc/inittab:定义启动级别/etc/rc.d/init.d/NetworkManager 定义网络管理程序的详细信息/etc/rc.d/rc.sysinit 系统初始化脚本/etc/rc.d//rc[0-6].d/定义6个级别对应的服务程序开启或关闭/etc/rc.d/rc.local 开机最后一步要执行的脚本可以放到此文件中自定义服务 chkconfig --list 查看定义服务程序详情列表testsrv需要放入/etc/rc.d

linux基础—课堂随笔010_系统启动和内核管理

系统启动和内核管理 Linux: kernel+rootfs kernel: 进程管理.内存管理.网络管理.驱动程序.文件系统.安全功能 rootfs:程序和glibc 库:函数集合, function, 调用接口(头文件负责描述) 程序:二进制执行文件 内核设计流派: 单内核(monolithic kernel):Linux 把所有功能集成于同一个程序,分层实现不同功能,系统庞大复杂 微内核(micro kernel):Windows, Solaris 每种功能使一个单独子系统实现,将内核功能

Liunx 系统启动和内核管理总结

Liunx 系统启动和内核管理总结 Liunx系统启动 一.硬件启动流程 (1).打开电源 (2).BIOS: 1. POST 初始化硬件设备,检查系统外围主要设备(CPU,内存,硬盘,显卡i-o设备,键盘鼠标) 2.确定启动设备 -根据BIOS设置的启动顺序,检测驱动器(硬盘,光盘,U盘,网络) --如果硬盘是启动项,读取硬盘第一个扇区(MBR,512字节)到内存 ---控制区转给MBR中的Boot loader (3).MBR 1.执行MBR中Bootloader 2.MBR由主引导程序,硬

Linux系统启动与内核管理(下)

从上一篇介绍了系统启动流程可以得知,在BIOS读取相关信息之后,接下来就是去找第一个可以启动的设备当中的MBR中读取Boot Loader信息,Boot Loader提供具有惨淡功能,直接加载内核信息,以及相关的控制权转交功能.启动系统必须有Boot Loader,然后才能去加载内核,Boot Loader存储于MBR当中,MBR只有512字节,其中前446字节存储Boot Loader,区区只有446自己不可能容纳较多的功能,Linux将Boot Loader的程序运行与配置项加载分成三个阶段

八、Linux精简系统和内核管理裁剪(一)

一.内核 1.什么是内核 内核其实就是操作系统,是驱动计算机硬件,实现人机操作,并提供其他服务器功能的底层系统.linux操作系统也称为"内核",指的是同一件事情. linux的内核是以模块化的方式工作的,主要工作任务包括存储管理.cpu管理.进程管理.文件系统管理.设备驱动管理.网络管理.系统调用.安全管理等. 2.内核的组成部分包括vmlinuz.initrd(linux5)或者initramfs(linux6)./lib/modules(模块,子核心) 二.内核设计 微内核 就是

系统启动和内核管理

CentOS 5和6的启动流程 服务管理 Grub管理 自制Linux 启动排错 编译安装内核 Linux组成 Linux: kernel+rootfs kernel: 进程管理. 内存管理. 网络管理. 驱动程序. 文件系统. 安全功能 rootfs:程序和glibc 库:函数集合, function, 调用接口(头文件负责描述) 过程调用:procedure,无返回值 函数调用:function 程序:二进制执行文件 内核设计流派: 单内核(monolithic kernel):Linux

八、Linux精简系统和内核管理裁剪(二)

八.内核服务管理 内核切换 chroot  initramfs(内核所在的目录) [[email protected] initramfs]# cd .. [[email protected] ~]# chroot initramfs/ bash-4.1# 自定义启动服务 1.编辑启动脚本文件,可以模仿/etc/rc.d/init.d/目录下的脚本文件. 2.cp启动脚本到/etc/rc.d/init.d/目录下. 3.配置启动项,chkconfig -add scriptname 手工编写启动

Linux系统启动和内核管理

Linux组成 由 kernel 和 rootfs 组成 单内核:(进程管理,内存管理,网络管理, 驱动程序,文件系统, 安全功能) /boot/vmlinuz-VERSION-release 辅助的伪根系统 /boot/initramfs-VERSION-release.img            这是一个cpio格式的归档文件,存放的是各种驱动模块 md5sum vmlinuz /boot/vmlinuz       查看两个文件中的内容是否完全一致,只要有一个字符不一样,两个文件的md5

第15章,系统启动和内核管理

更多内容请点击: Linux学习从入门到打死也不放弃,完全笔记整理(持续更新,求收藏,求点赞~~~~) http://blog.51cto.com/13683480/2095439 本章内容 Centos5和6的启动流程 服务管理 Grub管理 自制Linux 启动排错 编译安装内核 Centos7启动流程 Unit介绍 服务管理和查看 启动排错 破解口令 修复grub2 Linux组成:------------------------------------------------------