Linux开机引导和启动过程详解
Linux开机引导和启动过程详解
一、概述
操作系统的启动过程本质上分为2个阶段:boot
(引导)阶段和startup
(启动)阶段。引导阶段开始于打开电源剋管,结束于内核初始化完成和systemd
进程成功运行;启动阶段接管了剩余的其他的工作,一直到OS进入可操作状态。其涵盖的内容可以用下图表示:
操作系统的启动过程本质上分为2个阶段:boot
(引导)阶段和startup
(启动)阶段。引导阶段开始于打开电源剋管,结束于内核初始化完成和systemd
进程成功运行;启动阶段接管了剩余的其他的工作,一直到OS进入可操作状态。其涵盖的内容可以用下图表示:
完整的计算机由操作系统和硬件组成,必须两者兼备,而且两者要完美适配才能良好运作。操作系统的数量屈指可数,但是在操作系统下面的硬件却是千千万万。如何做到操作系统兼容各类各式的硬件环境呢?大家都协议一个通用的架构,大家都适配这个架构好了。于是,一个业内通用的架构——x86架构诞生了。
Linux操作系统,目前服务器领域体量最大的操作系统。之前学习操作系统时,并未单独对Linux操作系统进行深入的学习和理解,仅仅停留在常规使用和运维层面,而且只在需要时对部分功能和过程进行了深入的探索。在学习编程时,也并没有将Linux当作编程主力,当时还主要是在做Windows平台下的开发,因此对于Unix平台和类平台的编程开发能力相对较弱。基于以上两点,我觉得从头再完整过一遍Linux,将Linux相关内容整理成完整的知识体系架构。
Mac系统自带一个Python2,但是在实际生产时现在越来越多使用Python3。如果直接在系统上添加一个Python3,非常不方便进行管理。在进行开发时,也需要进行相关配置才能明确使用的Python版本。经过多方式、多软件尝试,最终找到一种方便的Python版本管理方式。
北京时间2020.03.11日,互联网中泄漏了关于CVE-2020-0796的相关信息。在此前的微软3月份例行补丁日更新中,无意中泄漏了该漏洞的存在。该漏洞影响组件为SMBv3,在Windows 10 1903和Windows Server 1903之后的版本中存在,影响范围较广。目前尚未发现可利用EXP,但已有crash的PoC,需要积极应对。此外,该漏洞具有蠕虫传播特性,可以轻松进行蠕虫传播,需要高度重视。
client和server首先要建立全双工的TCP连接,然后client建立并发送一个NetBIOS session请求包。 如果请求包格式化正确,server返回一个包含着确认session建立成功的消息包。然后,client 开始想server发送第一个smb协议数据包。
在系统安全研究中,堆,是一个极其重要的内存区域以及研究的热点。堆,区别于栈区、全局数据区以及代码区,它的主要作用是允许程序在运行时动态地申请某个大小的内存空间。本文将从宏观到微观,简单梳理总结一下Windows系统中的堆相关的知识以及常见的堆利用漏洞,方便自己后续的学习。
Uroburos是一个rootkit,由两个文件,一个驱动程序和一个加密的虚拟文件系统组成。它可以窃取信息(最著名的是:文件),还可以捕获网络流量。它的模块化结构使其可以轻松扩展新功能,这不仅使其非常复杂,而且具有很高的灵活性和危险性。Uroburos的驱动程序部分非常复杂,并且设计得非常离散且很难识别。 本文章的分析基于BAE Systems的report以及spresec的博客,使用的样本为626576e5f0f85d77c460a322a92bb267,使用的主要工具为volatility(rekall也可以)。
zy1 | zy2 | zy3 |
---|---|---|
NameNode | ResourceManage | |
DataNode | DataNode | DataNode |
NodeManager | NodeManager | NodeManager |
HistoryServer | SecondaryNameNode | |
ip:10.251.0.144 | ip:10.251.0.150 | ip:10.251.0.151 |
|
|
在伪分布式安装时,已经配置了hadoop的环境变量,无需再重复配置了。验证:
HDFS遵循主从架构。