一、 启动关机的流程与加载程序
1. Linux启动流程
a) 加载BIOS的硬件信息,并获取第一个启动设备的代号
b) 读取第一个启动设备的MBR的引导加载程序的启动信息
c) 加载核心操作系统的核心信息,核心开始解压缩,并且尝试驱动所有硬件设备
d) 核心执行init程序并获取运行信息(/etc/inittab)
e) init执行/etc/rc.d/rc.sysinit文件(各个版本都不相同,如/etc/init.d/boot和/etc/init.d/rc)
f) 启动核心的外挂模块(/etc/modprobe.conf)
g) init执行运行的各个批处理文件
h) init执行/etc/rc.d/rc.local文件
i) 执行/bin/login程序,等待用户登录
j) 登陆之后开始以Shell控制主机
2. 用户自定义引导启动程序(/etc/rc.d/rc.local)
3. 关于模块的配置/etc/modprobe.conf启动过程中,读取的服务相关设置文件都记录在/etc/sysconfig目录下
核心放在/lib/modules/`uname-r`/kernel中,/etc/modules/`uname -r`/modules.dep文件记录了在核心支持的模块的各项依赖性,可以使用depmod命令建立该文件。
核心模块的观察:lsmod、modinfo
核心模块的加载与删除:modprobe(先解决模块的依赖性,推荐)、insmod、rmmod
4. 引导加载程序(例如Grub)有两种加载方式:
直接指定并取用核心文件,加载到主存储器中
将加载程序的控制权移交给下一个加载程序,链式加载程序(chain loader)的方式
5. 解决启动过程中的问题可能用到chroot,比如先启动一个Linux系统,然后再chroot到另外一个不能正常启动的Linux系统进行修复。
二、 函数库管理
1. ldconfig与/etc/ld.so.conf,将动态函数库加载到内存(高速缓存,cache)中,这样就可以提高动态函数库的读取速度。将动态函数库加载到高速缓存(cache)中的过程如下:
a) 在/etc/ld.so.conf中写下“想要读入高速缓存中的动态函数库所在的目录”
b)利用ldconfig将/etc/ld.so.conf的数据读入到高速缓存中
c) 同时在/etc/ld.so.cache文件中记录数据
2. ldd可以判断某个可执行的二进制文件有什么动态函数库
ldd [-vdr] [filename]
三、 系统守护程序
1. 根据守护程序的启动与管理方式,可以将守护程序分为可独立启动的独立启动守护程序,以及通过统一安全机制管理的超级守护程序。
superdeamon(超级守护程序)通过统一的守护程序(xinet)来负责唤起服务。Xinet的启动脚本写在/etc/init.d/xinet.d里,挂在这个守护程序里面的服务设置项目写在/etc/xinet.d.conf与/etc/xinet.d/*目录的任何文件中。
2. 整个服务开机就能启动的地方有两处,一处是在守护程序启动(/etc/rc.d/rc[0-6].d/*)目录下,另一处是/etc/rc.d/rc.local。
使用chkconfig管理开机启动的相关服务。语法:
chkconfig --list
chkconfig [--add|--del][service_name]
chkconfig --level [0123456][service_name] [on|off]
3. 如何将自己建立的服务加入chkconfig的管理中呢?只要将该服务加入init可管理的脚本中,即/etc/init.d中。
分享到:
相关推荐
Linux笔记——linux常用命令集合 Linux笔记——命令:awk Linux笔记——命令:sed Linux笔记——命令:grep Linux笔记——命令:find Linux笔记——命令:Sort,uniq,join,cut,paste,split Linux笔记——shell基础:...
1,安装VMware-tool与实现文件共享;2,u-boot移植步骤;3,安装交叉编译环境;4,启动代码的运行;5,嵌入式linux开发加速器--NFS开发环境的建立;...10,制作文件系统映象;11,自动生成make文件
【linux学习笔记-10】Linux进程相关系统调用(三).doc 【linux学习笔记-11】守护进程daemon.doc 【linux学习笔记-12】守护进程的日志实现.doc 【linux学习笔记-13】基本进程通信--文件锁.doc 【linux学习笔记-14】...
学习Linux的好资料 好好利用 帮助你更好的入门 完全免费
初学者在在学习linux内核的时候,其启动代码无疑是横在阅读这恰面的一座大山,才一开始就碰倒了复杂的AT&T语法与保护模式,大多数初学者往往由于无法理解其古怪的语法和难解的数据结构与管理方式,从而放弃在linux...
【linux学习笔记-8】Linux进程相关系统调用(1) 【linux学习笔记-9】Linux进程相关系统调用(2) 【linux学习笔记-10】Linux进程相关系统调用(3) 【linux学习笔记-11】守护进程daemon 【linux学习笔记-12】守护...
vi 学习笔记——取自《Unix&Linux;大学教程》,vi 学习笔记——取自《Unix&Linux;大学教程》
关于Linux的基础命令——个人的学习笔记总结 适合新人,小白
Linux培训教程:从实践中学习Linux-学习笔记.pdf
Linux 系统可划分为以下 4 部分。 Linux 内核 GNU 工具 图形化桌面环境 应用软件 内核主要负责以下 4 种功能。 系统内存管理 内核通过硬盘上称为交换空间(swap space)的存储区域来实现虚拟内存。内核在交换空间...
/etc:所有的系统管理所需要的配置文件和子目录。 /home:存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。 /lib:系统开机所需要最基本的动态连接共享库,其作用...
NULL 博文链接:https://skyxiaobai.iteye.com/blog/288819
Linux基础学习笔记整理 第一章 虚拟机安装 先下载VMware14 安装完成后下载镜像文件 根据自己需要下载相应的镜像版本 (给大家推荐个网站 ‘阿里云站点’ ) 安装过程中要注意一下内容 点击 sda 创建三个分区 要自己...
笔记目录1 进程调度和服务管理1.1 进程调度1.2 进程调度管理命令1.2.1 命令at可以使用的时间关键字1.2.2 命令atq1.2.3 命令atrm1.2.4 命令 crontabcron配置文件cron配置1.3 服务的概念服务脚本:/etc/rc.d/init.detc...
首次接触Linux,边学习边写出了这一篇博客,一方面为了巩固自身的知识,另一方面希望可以给其他刚入门的朋友提供一点点帮助。如果有内容有错误或者不准确欢迎指正。 本篇及系列文章均在CentOS虚拟机上展开。 首先,...
自己整理的hadoop学习笔记,很详尽 很真实。linux操作终端下遇到的各种Hadoop常见问题 解决方案
linux学习笔记之常用命令(一)——文件处理命令命令格式与文件处理命令ls命令命令格式与文件处理命令ls命令(类似windows的查看文件属性)目录处理命令目录处理命令之mkdir命令(类似windows的创建文件夹)目录处理...
个人简介围城文章分类全部亚虎娱乐(123)学习笔记(13)职场&人生(2)杂谈(0)编译&调试(12)IT 基础(24)C 基础(5)未分配的亚虎娱乐(0)文章
Oracle9i备课笔记——吕海东 第1讲 Oracle9i简介 目的: 1. 了解数据库的发展,关系数据库的基本原理。 2. 了解目前市场上流行的数据库产品及特点 3. 了解Oracle数据库的发展 4. 掌握Oracle9i产品系列 5. 掌握Oracle...
程, 从裸机到基于 Linux 嵌入式系统,实现了 FPGA 和 ARM Cortex-A9 CPU 之间的双向控制和 数据传输。 在做完这之后,就感觉遇到了瓶颈, 瓶颈主要来自于两个方面,第一是对 Linux 软件开发不熟悉,而 SOC FPGA 的...