• linux系统启动流程


    POST(加电自检)-->BIOS(Boot Sequence)-->MBR(bootloader,446)-->Kernel-->initrd-->(ROOTFS)/sbin/init(/etc/inittab)

    内核设计风格:

    RedHat,SUSE 核心:动态加载  内核模块 内核:/lib/modules/"内核版本号命令的目录"/

    vmlinuz-2.6.32 /lib/modules/2.6.32/

     单内核:Linux(LWP)  核心:ko(kernel object)  so  微内核:Windows,Solaris

    chroot:  chroot /path/to/temproot [command...]  chroot /test/virroot  /bin/bash

    ldd /path/to/binary_file:显示二进制文件所依赖的共享库

    启动的服务不同:  运行级别:0-6  0:halt关机  1:single user mode,直接登陆管理员  2:multi user mode,no NFS  3:multi user model:text mode  4:resered  5:multi user mode,graphic mode  6:reboot

    bootloader(MBR)  两种启动方式  LILO  GRUB:GRand Unified Bootloader   Stage1:MBR   Stage2:/boot/grub/

    grub.conf

    default=0 #设定默认启动的title的编号,从0开始 timeout=5 #等待用户选择的超时时长,单位是秒 splashimage=  #grub的背景图片 hiddenmenu #隐藏菜单 password redhat(直接写明文密码) 或者 password --md5 ********(md5加密后的密码)

    title  # 内核标题或操作系统名称 可自由修改  root(hd0,0) #内核文件所在的设备:对grub而言,所有类型的硬盘一律hd:hd#,#标识第几个磁盘,最后的0表示对应磁盘的分区  kernel #内核文件路径,及传递给内核的参数  initrd #ramdisk文件路径

    查看运行级别 runlevel 运行级别 who -r 运行级别

    查看内核:  uname -r

    安装grub stage1: # grub grub> root (hd0,0) grub> set (hd0)

    安装grub第二种方式: # grub-install --root-directory=/

    grub>find grub>root (hd#,N) grub>kernel /path/to/kernel_file grub>initrd /path/to/initrd_file grub>boot

    Kernel初始的过程: 1,设备探测 2,驱动初始化 (可能会重initrd(initramfs)文件中转载驱动模块) 3,以只读挂载根文件系统 4,装载第一个进程(PID:1)

    /sbin/init: (/etc/inittab)  upstart:ubuntu,d-bus,event-driven  systemd:

    id:runlevels:action:process id:标识符 runlevels:在哪个级别运行此行

    si::sysinit:/etc/rc.d/rc.sysinit

    ACTION: initdefault:设定默认运行级别 sysinit:系统初始化 wait:等待级别切换至此级别时执行 respawn:一旦程序终止,会重新启动

    /etc/rc.d/rc.sysinit完成的任务 1,激活udev和selinux; 2,根据/etc/sysct1.conf文件,来设定内核参数 3,设定时钟时钟 4,装载键盘映射 5,启用交换分区 6,设置主机名 7,根文件系统检测,并以读写方式重新挂载 8,激活RAID和LVM设备 9,启用磁盘配额 10,根据/etc/fstab,检查并挂载其他文件系统 11,清理过期的锁和PID文件

  • 相关阅读:
    母牛的故事
    实现图的邻接矩阵和邻接表的存储
    各个位数和,找最终和为个位数
    排序5之归并排序
    排序2之冒泡与选择排序
    神奇的魔方
    关于SaveChanges
    ADO.NET Entity Framework 4.0 Self Tracking Entity
    EF4.0自跟踪实体使用小结
    ADO.NET Entity Framework 4.0 新特性
  • 原文地址:https://www.cnblogs.com/suzixuan/p/6851931.html
Copyright © 2020-2023  润新知