二、Linux系统启动流程
第十单元 系统的初始化和服务
1. Linux系统引导的顺序
BIOS——找到启动介质,检查计算机的硬件设备,如CPU、内存和风扇速度等;
MBR——启动盘的第1个扇区512B。前446B是引导信息,64B是分区信息,后2B是标志位。主要是用来选择boot partition(分区),也就是由哪个分区来装入开机用的代码;
在内核部分主要是装机计算机设备的驱动程序以便操作系统可以控制计算机上的设备。并且以只读的方式挂载/(根)文件系统,也就是此时的操作系统只能读到根文件系统(目录)所在的分区;
init程序的进程id为1,即Linux操作系统第1个执行的程序。
1. BOIS的初始化和引导加载程序
1) BIOS的定义:BIOS(Basic Input/Output System)(基本输入/输出系统的缩写),它是硬件与软件之间的接口,而且是非常基本的接口。
2. GRUB程序和grub.conf文件
1) GRUB的定义:GRUB是Grand Unified Bootloader(多重操作系统启动管理器)的缩写。
2) grub的配置文件为:grub.conf
GRUB加密
①设置grub md5加密命令 grub-md5-crypt
②vi /etc/grub.conf
password = 明文或 password --md5 密文(加在hiddenmeenu下)
BIOS破解GRUB密码
①进入BIOS救援模式
②进入/mnt/sysimage/etc/grub.conf
③删掉加密行,保存退出
④reboot
⑤BIOS改回来
⑥登录
BIOS加密
①进入BIOS
②Security
③Set User Password
BIOS加密破解
①抠掉BIOS电池
3. 内核的初始化和init的初始化
1) init的配置文件为:/etc/inittab
2) 了解init程序要做的工作:
a) 决定预设(默认)要使用哪个run levels(运行级别)。
b) 执行一些系统初始化的脚本(程序)来初始化操作系统。
c) 根据run level的设置来执行所对应目录中的程序,以决定要启动哪些服务。
d) 设定某些组合键。
e) 定义UPS不间断电源系统,即当电源出现问题时或电源恢复时要执行哪些程序。
f) 产生6个virtual consoles,也就是tty1~tty6。
4. run levels(运行级别)
1) 所有的运行级别及每一个运行级别对应的功能:
vi /etc/inittab 查看init相关信息
5. 关闭系统及重启系统
1) 常用的可以关闭系统的命令:
shutdown -h now
halt
poweroff
init 0
2) 常用的可以重启系统的命令:
shutdown -r now
reboot
init 6
Ctrl+Alt+Delete键
第十一单元 系统监控
1. top命令
功能:top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。系统默认每5秒刷新一下屏幕上的显示结果。
① 第一行是任务队列信息
|
12:38:33
|
当前时间
|
|
up 50days
|
系统运行时间,格式为时:分
|
|
1 user
|
当前登录用户数
|
|
load average: 0.06, 0.60, 0.48
|
系统负载。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。
|
② 第二、三行为进程和CPU的信息
|
Tasks: 29 total
|
进程总数
|
|
1 running
|
正在运行的进程数
|
|
28 sleeping
|
睡眠的进程数
|
|
0 stopped
|
停止的进程数
|
|
0 zombie
|
僵尸进程数(主进程已停子进程未停)
|
|
Cpu(s): 0.3% us
|
用户空间占用CPU百分比
|
|
1.0% sy
|
内核空间占用CPU百分比
|
|
0.0% ni
|
用户进程空间内改变过优先级的进程占用CPU百分比
|
|
98.7% id
|
空闲CPU百分比
|
|
0.0% wa
|
等待输入输出的CPU时间百分比
|
|
0.0% hi
|
硬件中断占用CPU时间的百分比
|
|
0.0% si
|
软件中断占用CPU时间的百分比
|
|
0.0% ST
|
物理机CPU被偷走的部分
|
3. 第四五行为内存信息
|
KiB Mem内存
|
总内存
|
空余内存
|
已用内存
|
buffer:内存缓冲区,把零散的集中
cache:高速缓存,CPU经常使用的
|
|
KiB Swap交换分区
|
总内存
|
空余内存
|
已用内存
|
|
4. 进程信息
|
列名
|
含义
|
|
PID
|
进程id
|
|
PPID
|
父进程id
|
|
RUSER
|
Real user name
|
|
UID
|
进程所有者的用户id
|
|
USER
|
进程所有者的用户名
|
|
GROUP
|
进程所有者的组名
|
|
TTY
|
启动进程的终端名。不是从终端启动的进程则显示为 ?
|
|
PR
|
优先级
|
|
NI
|
nice值。负值表示高优先级,正值表示低优先级
|
|
P
|
最后使用的CPU,仅在多CPU环境下有意义
|
|
%CPU
|
上次更新到现在的CPU时间占用百分比
|
|
TIME
|
进程使用的CPU时间总计,单位秒
|
|
TIME+
|
进程使用的CPU时间总计,单位1/100秒
|
|
%MEM
|
进程使用的物理内存百分比
|
|
VIRT
|
进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
|
|
SWAP
|
进程使用的虚拟内存中,被换出的大小,单位kb。
|
|
RES
|
进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
|
|
CODE
|
可执行代码占用的物理内存大小,单位kb
|
|
DATA
|
可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
|
|
SHR
|
共享内存大小,单位kb
|
|
nFLT
|
页面错误次数
|
|
nDRT
|
最后一次写入到现在,被修改过的页面数。
|
|
S
|
进程状态。
|
|
D=不可中断的睡眠状态
|
|
|
R=运行
|
|
|
S=睡眠
|
|
|
T=跟踪/停止
|
|
|
Z=僵尸进程
|
|
|
COMMAND
|
命令名/命令行
|
|
WCHAN
|
若该进程在睡眠,则显示睡眠中的系统函数名
|
|
Flags
|
任务标志,参考 sched.h
|
5. free命令
free 以k为单位查看内存
free -m 以M为单位查看内存
free -h 以G为单位查看内存
6. 系统中进程的监控
进程:是程序的一次动态执行。
守护进程:是在后台运行并提供系统服务的一些进程
父进程、子进程:当一个进程创建另一个进程时,第1个进程被称为新进程的父进程,而新进程被称为子进程。
①ps命令
ps ——用来显示当前进程的状态
ps –aux ——显示所有的与用户相关的完整信息
ps –aux | head -5 —— 显示前五行用户相关的完整信息
ps -aux | grep 'init' | grep -v 'grep' (-v反向查看)
ps -ef | grep tomcat
②pstree命令
centos7默认没有pstree,需要yum -y install psmisc
pstree——以树状图显示程序。
pstree 4729——列出PID为4729的进程的进程状态树的命令
③kill命令
功能:把一个信号发送给一个或多个进程。默认发送终止信号。
kill 3852 ——终止PID为3852的进程
kill -9 3906 ——强制杀死PID为3906的进程
pkill firefox ——杀死名为firefox的进程
④pgrep命令
功能:通过名称或其他属性查找进程id
pgrep firefox 过滤出Firefox的PID
第十二单元 硬盘分区、格式化及文件系统的管理一
1. 硬件设备与文件名的对应关系
1) 掌握在Linux系统中,每个设备都被当做一个文件来对待。
fdisk -l /dev/sdb——查看硬盘详细信息
2) 掌握各种设备在Linux中的文件名
2. 硬盘的结构及硬盘分区
硬盘分区的原因:
a) 更容易管理和控制系统,因为相关的文件和目录都放在一个分区中。
b) 系统效率更高。
c) 可以限制用户使用硬盘的份额(磁盘空间的大小)。
d) 更容易备份和恢复。
硬盘结构:
一个硬盘逻辑上可以被划分成块、磁道、磁柱和分区。
①块:块是盘片上寻址(访问)的最小单位,一个块可以存储一定字节的数据。
②磁道:磁道是由一系列头尾相连的块组成的圆圈。
③磁柱:磁柱是由一叠磁道,由在相同半径上每个盘面的磁道所组成。
④分区:分区是由一组相邻的磁柱所组成。
3. Linux系统中硬盘的分区
1) 硬盘分区的分类:主分区、扩展分区和逻辑分区。
2) 主分区的数量:在一个硬盘上最多可以划分出4个主分区。
3)Linux内核在每个硬盘上可以最多支持:
a) 在SCSI硬盘上划分15个分区(Partitions)。
b) 在IDE硬盘上划分63个分区(Partitions)。
4. 使用fdisk和partprobe命令来管理硬盘分区
注:要建分区之前得先添加硬盘![]()
![]()
1) fdisk /dev/sdb——创建磁盘分区。
2) fdisk命令列表中常用的命令:
① d:删除分区,其中d是delete的第1个字母。
② l:列出分区类型,其中l是list的第1个字母。
③ m:列出fdisk中使用的所有命令,其中m是menu的第1个字母。
④ n:创建新分区,其中n是new的第1个字母。
⑤ p:列出分区表的内容,其中p是print的第1个字母。
⑥ q:退出fdisk,但是不存储所做的变化,其中q是quit的第1个字母。
⑦ t:改变分区系统的id,其中t是title的第1个字母。
⑧ w:退出fdisk并存储所做的变化,其中w是write的第1个字母。
3) partprobe:更新新建的分区表
5. 创建文件系统(数据的管理)
注:新建的分区需要格式化后方能使用
1) 掌握格式化的定义:所谓的格式化就是将分区中的硬盘空间划分成大小相等的一些数据块(Blocks),以及设定这个分区中有多少个i节点可以使用等。
2) 掌握文件系统的定义:文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构;即在磁盘上组织文件的方法。
3) 了解常用的文件系统类型
ext2:Linux系统中标准的文件系统
ext3:一种日志文件系统
ext4:一种针对ext3系统的扩展日志式文件系统
xfs:用于海量数据(推荐用)
btrfs:速度非常快,对CPU和内存要求高
lvm:逻辑盘卷管理
iso9660:目前唯一通用的光盘文件系统
NTFS:Windows系统使用
4) 掌握mkfs.命令的功能:格式化磁盘。
5) 灵活应用常用的格式化命令:
mkfs.文件系统类型(make file system)
例如,将分区/dev/sdb1格式化为ext4文件系统的命令为:
mkfs.ext4 /dev/sdb1
注:扩展分区不能格式化,只能格式化扩展分区下的逻辑分区
6. 为一个分区设定label(分区名)
1) 掌握e2label命令的功能:设定或查看一个设备的label名称。
2) 灵活应用e2label命令设定label:
a) 例如:查看/dev/sdb1分区的label的命令为:
e2label /dev/sdb1
b) 例如:将/dev/sdb1分区的label设定为wg的命令:
e2label /dev/sdb1 wg
7.新建分区流程
①fdisk /dev/sdb 新建分区
②partprobe 更新分区表
③mkfs. ext4 /dev/sdb1 {1..3} 格式化制作文件系统1-3
④mount /dev/sdb1 /sdb1 挂载
⑤e2label /dev/sdb1 wg 重命名分区
第十三单元 硬盘分区、格式化及文件系统的管理二
1. 文件系统的挂载与卸载
1) 挂载的定义:挂载指将一个设备(通常是存储设备(分区))挂接到一个已存在的目录上。
2) 掌握mount命令的功能:查看系统的挂载参数。
3) 灵活应用mount命令实现文件系统的挂载:
例如:将/dev/sdb1分区挂载到/wg目录上的命令:
mount /dev/sdb1 /wg
4) 掌握umount命令的功能:实现文件系统的卸载。
5) 灵活应用umount命令实现文件系统的卸载:
例如:卸载/wg上的文件系统的命令:
umount /wg
6)掌握df查看挂载信息及分区使用情况
df -h
df -g
df -m
7)掌握du命令
功能:统计目录下文件大小
8)挂载在同一分区下的所有目录均能看到分区下的文件
9)查看硬盘读写速度命令
dd if=/dev/zero of=sdb5/test bs=5G count=1
2. 虚拟内存的概念以及设置与管理
1) 掌握虚拟内存的定义:所谓虚拟内存就是一块硬盘空间被当做内存使用,也被称为交换分区(swap)。
2) 了解Linux交换分区的类型为:0x82
3) 掌握mkswap命令的功能:设置交换分区。
4) 掌握使用mkswap命令设置交换分区的用法举例:
例如:将分区/dev/sdb2设置为交换分区的命令:mkswap /dev/sdb2
5) 掌握swapon命令的功能:启动交换分区。
6) 掌握swapon –a命令的功能:启动全部的交换分区。
7) 掌握swapon –s命令的功能:列出当前正在使用的所有系统交换分区的状态。
8) 掌握使用swapon命令的用法举例:
例如:启用交换分区/dev/sdb2的命令:swapon /dev/sdb2
3. i节点
1) 掌握i节点的定义:i节点实际上是一个数据结构,它存放了有关一个普通文件、目录或其他文件系统对象的基本信息。
4. 符号(软)链接
1) 软链接的定义:符号链接是指向另一个文件的一个文件。
ln -s 绝对路径 目标路径
2) 掌握ln命令创建软连接的用法举例:
a) 为wolf/dog.wolf.baby文件建立一个dog_ wolf.boy符号链接并放在bodydog目录中的命令:
ln –s wolf/dog.wolf.baby bodydog/dog_ wolf.boy
3)特点:
①相当于win中快捷方式
②删除链接文件,原文件无影响
③删除原文件,链接文件失效
④修改原文件/链接文件,内容均改变
5. 硬链接
1) 掌握硬链接的定义:一个硬链接(hard link)是一个文件名与一个i节点之间的对应关系,也可以认为一个硬链接是在所对应的文件上添加了一个额外的路径名。
2) 掌握ln命令创建硬连接的用法举例:
a) 为wolf/wolf.dog文件在backup目录中建立一个名为wolf.dog2的硬链接命令:
ln wolf/wolf.dog backup/wolf.dog2
3)特点:
①删除链接文件,原文件无影响
②删除原文件,链接文件无影响
③修改原文件/链接文件,内容均改变
④硬链接执行inode号
6. Linux系统中的文件类型(详见linux系统管理P183)
1) 掌握Linux系统中常见的文件类型:
-:普通文件(regular file),也有人称为正规文件。
d:目录(directory)。
l:符号(软)链接。
b:块特殊文件(b是block的第1个字符),一般指块设备,如硬盘。
c:字符特殊文件(c是character的第1个字符),一般指字符设备,如键盘。
7. 检查磁盘空间
1) 掌握df命令的功能:显示文件系统中磁盘使用和空闲区的数量。
-a 显示所有磁盘
-h 单位转换
-i 查看inode使用情况(inode文件存放文件的编号)
ls -i /etc/passwd 查看文件inode号
ls -di /etc 查看目录inode号
access.log 访问日志
操作系统分成四大块:
super block
inode block
directory block
data block
inode文件包含:
①inode号
②权限
③属主
④属组
⑤创建时间
⑥文件/目录名
⑦指针
2) 掌握du命令的功能:显示目录和文件的大小a h同上
第十四单元 Linux网络原理及基础设置
IP地址:点分32位二进制
分成网络位和主机位
172.16.45.10/16
网络地址:172.16.0.0
主机地址:172.16.45.10
1. 使用ifconfig命令来维护网络
1) 掌握ifconfig命令的功能:显示所有正在启动的网卡的详细信息或设定系统中网卡的IP地址。
ifconfig 查看IP地址
ifconfig eth0 查看第一块网卡的信息
ifconfig eth0 192.168.11.10/24 临时配置IP地址
route add default gw 192.168.11.254 临时配置网关
route -n 查看网关/路由IP
cat /etc/resolve.conf 查看域名解析器DNS1
2) 设定网卡的IP地址:
①临时配IP地址
例如:修改eth0网卡的IP地址为172.18.48.56和子网掩码255.255.255.128的命令:
ifconfig eth0 172.18.48.56 netmask 255.255.255.128 或
ifconfig eth0 172.18.48.56/24
重启网络服务:service network restart
②永久配IP地址
vim /etc/sysconfig/network-scripts/ifcfg-eth0
service network restart 重启网络
service network status 查看网络服务状态
service NetworkManager stop 停掉网络守护进程
ifconfig eth0 查看IP是否修改成功
注:如若IP地址冲突需要重新配置新的IP地址,如若还是未成功需要停掉网络进程
chkconfig --list 查看程序是否设置开机启动
chkconfig NetworkManager off 设置网络开机时关闭
2. 使用ifup和ifdown命令启动和停止网卡
1) 掌握ifup命令的功能:启动系统上指定的网卡。
2) 掌握ifdown命令的功能:停止系统上指定的网卡。
3) 掌握使用ifup命令启用指定网卡的举例:
例如:启动eth0网卡的命令:ifup eth0(加载网卡的配置文件)等同
4) 掌握使用ifdown命令停用指定网卡的举例:
只能作用于配置文件
例如:停用eth0网卡的命令:ifdown eth0
ifconfig eth0 up 开启网卡
ifconfig eth0 down 关闭网卡
3. 网络配置文件
1) 了解网卡的配置文件存放在/etc/sysconfig/network-scripts目录中,且每个网卡对应的配置文件的文件名以ifcfg-开始,如eth0这个网卡对应的网络配置文件就是ifcfg-eth0。
补:虚拟机新添加网卡没有配置文件需手动添加配置或图形添加网卡
λ 掌握网络配置的定义:所谓的网络配置(设定)就是要修改网卡所对应的网络配置文件,可以通过使用文字编辑器(vi)直接编辑网络配置文件来重新配置网络。
4.虚拟机的几种网络模式
①桥连接模式:虚拟机连接到本地的局域网(推荐使用)
ping -c 4 192.168.11.11 ping 4次
arping -I eth0 192.168.11.11 查看IP有没有冲突
②NAT模式:把虚拟机的网络连接到本地的VMnet8(私网IP)
③仅主机模式:虚拟机之间的连接
service iptables stop

浙公网安备 33010602011771号