目录
CentOS 系统管理基础
本章介绍 Linux 系统引导原理,启动流程,系统目录,权限,命令以及 CentOS7 和 CentOS6 在系统管理,命令方面区别等内容。
1 操作系统启动概念
无论是 Windows 还是 Linux 操作系统,底层设备一般均为物理硬件,操作系统启动之前会对硬件进行检测,然后硬盘引导启动操作系统,以下为与操作系统启动相关的几个概念。
1.1 BIOS
基本输入输出(basic input output system,BIOS)是一组固化到计算机主板上的只读内存镜像(read only memory image,ROM)芯片上的程序,它保存着计算机最重要的基本输入输出程序、系统设置信
1.2 MBR
全新硬盘在使用之前必须进行分区格式化,硬盘分区初始化的格式主要有两种,分别是 MBR 格式和 GPT 格式。
如果使用 MBR 格式,操作系统将创建主引导记录扇区(MBR),MBR 位于整块硬盘的 0 磁道 0 柱面 1 扇区,主要功能是操作系统对磁盘进行读写时,判断分区的合法性以及分区引导信息的定位。
主引导扇区总共为 512 字节,MBR 只占用 446 字节,另外 64 字节为硬盘分区表,最后 2 个字节“55,AA”是分区的结束标志。
在 MBR 硬盘中,硬盘分区信息直接存储于主引导记录(MBR)中,同时主引导记录还存储着系统的引导程序。
MBR 的分区标准决定它只能适用于 2TB 以下的硬盘,对于大于 2TB 的盘就交给 GPT。
1.3 GPT
GPT 可以支持 2TB 以上的硬盘,使用 Fdisk 分区,最大建立 2TB 大小的分区,创建大于 2TB 的分区,使用 parted,同时使用 64 位的操作系统。
1.4 GRUB
GNU 项目的操作系统启动程序(GRUB),可以支持多操作系统的引导,它允许用户可以在计算机内拥有多个操作系统,在计算机启动时选择希望运行的操作系统。
2 Linux 操作系统启动过程
Linux 操作系统启动流程如图 1-1
- 加载 BIOS
计算机电源加电质检,首先加载 BIOS,BIOS 中包含硬件 CPU,内存,硬盘灯相关信息,包含设备启动顺序信息,硬盘信息,内存信息,时钟信息等。加载完 BIOS 后,计算机根据顺序进行启动。 - 读取 MBR
去取完 BIOS,计算机会查找 BIOS 所指定的硬盘 MBR 引导扇区,将其内容复制到 0x7c00地址所在的物理内存中。被复制到物理内存的内容是 bootloader,然后进行引导。 - GRUB 引导
GRUB 启动引导器是计算机启动过程运行的第一个软件程序,当计算机读取内存中的 GRUB 配置信息后,会根据配置信息来启动硬盘中的不同系统。 - 加载 kernel
计算机读取内存镜像,并解压。系统将解压后的内核释放到内存中,并调用 start_kernel()函数来启动一系列的初始化函数,并初始化各种设备,完成 Linux 核心环境的建立。 - 设定 inittab 运行等级
内核加载完毕,会启动 Linux 操作系统的一个守护进程 init,然后通过该进程读取/etc/inittab
文件,/etc/inittab
文件的作用是设定Linux 的运行级别,Linux 常见运行级别如下:
1)0:关机模式
2)1:单用户模式
3)2:无网络支持的多用户模式
4)3:字符界面多用户模式
5)4:保留,未使用模式
6)5:图像界面多用户模式
7)6:重新引导系统,重启模式 - 加载 rc.sysinit
读取完运行级别,Linux 系统执行的第一个用户层文件/etc/rc.d/rc.sysinit
,该文件功能包括设定 path 运行变量,设定网络配置,启动 swap 分区,设定/proc
,系统函数,配置 SELinux 等。 - 加载内核模块
读取/etc/module.conf
文件及/etc/module.d
目录下的文件来加载系统内核模块。该模块文件可以后期添加或者修改及删除。 - 启动运行级别程序
根据之前读取的运行级别,操作系统会运行 rc0.d 到 rc6.d 中的相应脚本程序,来完成相应的初始化工作和启动相应服务。 - 读取 rc.local 文件
操作系统启动完相应的服务之后,会读取执行/etc/rc.d/rc.local
文件,可以将需要开机启动的任务加到文件末尾,系统会逐行执行。 - 执行
/bin/login
程序
执行/bin/login
程序,启动到系统登录界面,至此 Linux 操作系统启动完毕。
3 TCP/IP 协议概述
TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用 4 层的层级结构,每一层呼叫它的下一级所提供的协议来完成自己的需求。
TCP 负责发现传输的问题,一旦有问题就发出信号,要求重新传输,直到所有数据都安全的传到目的地,而 IP 是给每一台联网设备规定一个地址。
图 3-1 为基于 TCP/IP 和 OSI 参考模型层次的对比。
4 Linux 系统配置 IP
LInux 服务器默认网卡配置文件在/etc/sysconfig/network-scripts/
下。
修改服务器网卡 IP 地址命令为vi /etc/sysconfig/network-scripts/ifcfg-eth0
。配置如下:
DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:AA:6C:01"
IPADDR="172.20.160.11"
NETMASK="255.255.255.0"
ONBOOT="yes"
TYPE="Ethernet"
GATEWAY="172.20.1.1"
UUID="4ab01db4-d17a-4c74-9c4f-d5483cb491f7"
服务器网卡配置文件,详细参数如下
- DEVICE=“eth0” :物理设备名
- BOOTPROTO=“static” :采用静态 IP
- IPADDR=“172.20.160.11” :IP 地址
- NETMASK=“255.255.255.0” :子网掩码
- ONBOOT=“yes” :开机启动网卡
- TYPE=“Ethernet” :网卡类型
- GATEWAY=“172.20.1.1” :网关地址
网卡配置完毕重启网卡服务/etc/init.d/network restart
即可。
5 Linux 系统配置 DNS
网卡 IP 地址配置完成后,如果服务器需要连接外网,还需要配置 DNS,它主要用于将请求的域名转换为 IP 地址,DNS 地址配置方法如下:
修改vi /etc/resolv.conf
文件,加入下面两行代码:
nameserver 202.106.0.20
nameserver 8.8.8.8
DNS 配置完成后无需重启,立即生效。
6 Linux 系统目录功能
如图 6-1 是典型的 Linux 目录结构。
- / :根目录
- /bin :存放必要的命令
- /boot :存放内核以及启动时所需的文件
- /dev :存放硬件设备文件
- /etc :存放系统配置文件
- /home :普通用户的宿主目录,用户数据放在其主目录中
- /lib | lib64 :存放必要的运行库
- /mnt :存放临时的映射文件系统,通常用来挂载使用
- /proc :存放存储进程和系统信息
- /sbin :存放系统管理程序
- /tmp :存放临时文件
- /usr :存放应用程序,命令程序文件,程序库,手册和其他文档
- /var :系统默认日志存放目录