(一)基础篇
1. Linux版本
-
1.1 内核版本格式
- xx.yy.zz :xx主版本,yy为次版本,zz为末版本
- 小于2.6版本:次版本奇数为开发版,次版本偶数为稳定版
- 大于2.6版本:longterm 为长期支持版本,stable 为稳定版,mainline 为主线开发版本
-
1.2 常见发行版本
- Red Hat
- Ubuntu
- CentOS
- Debian
- Fedora
2. 基本概念
root账户 / 根目录
(二)系统操作篇
1. 使用终端
- 1.1 命令提示符
- $(普通用户)
- #(root用户)
- 1.2 命令和路径补全
- tab键
- 1.3 命令的分类
- 使用type来查看命令的分类:内部命令、外部命令
2.帮助命令
- 2.1 man
- man xxx:获取xxx命令的帮助
- man 1 man:man命令自身的帮助文档
- 2.2 help
- help xxx:获取内部命令的帮助
- xxx --help:获取外部命令的帮助
- 2.3 info
- 比man更丰富的帮助信息,格式:info xxx
3. 文件与目录管理
- 3.1 文件与目录查看命令 ls
- -l 显示文件的详细信息
- -a 显示隐藏文件
- -r 逆序显示
- -t 按照时间排序
- -R 递归显示
- 3.2 路径操作(绝对路径与相对路径)
- cd 切换路径
- pwd 显示当前路径
- 3.3 建立与删除目录
- mkdir 新建目录
- rmdir 删除空目录
- 3.4 通配符
- * 匹配任意字符
- ? 匹配单个字符
- [xyz] 匹配xyz任意一个字符
- [a-z] 匹配字符范围
- [!xyz] 或者 [^xyz] 匹配不在xyz中的任意字符
- 3.5 复制文件 cp
- -r 复制目录
- -p 保留用户权限时间
- -a 尽可能地保留原始文件的属性,等同于 -dpR
- 3.6 删除文件 rm
- -r 递归删除
- -f 不提示
- 3.7 移动与重命名 mv
- 移动文件 mv file dir1/
- 重命名文件 mv file1 file2
4.文本查看
- 4.1 head
- 显示文件前n行
- 4.2 tail
- 显示结尾n行
- 4.3 cat
- -f 参数可以显示文件更新信息
- 查看文件(文件内容过长时不建议使用cat)
- 4.4 wc
- 统计文件行数
5.打包和压缩
- 5.1 tar
- 打包命令
- 扩展名 .tar
- 配合 gzip 和 bzip2 可以使用打包和压缩功能
- 5.2 gzip
- 压缩与解压缩命令
- 扩展名 .gz
- 5.3 bzip2
- 压缩与解压缩命令
- 扩展名 .bz2
6. vim文本编辑器
- 6.1 正常模式
- i I、 o O、 a A进入插入模式
(位置分别为:当前位置 、行首、下一行、上一行、当前位置之后、行尾) - v V Ctrl+v 进入可视模式
- : 进入命令模式
- esc 回到正常模式
- h j k l 上下左右(可结合n)
- yy y$ 复制(可结合n)
- dd d$ 剪切(可结合n)
- p 粘贴
- u 撤销
- Crtl+r 重做
- x X 往后(前)删除单个字符
- f 替换单个字符
- gg(首行) G(尾行) ngg(第n行)
- 0(行首) ^ (本行第一个字符处) $(行尾)
- i I、 o O、 a A进入插入模式
- 6.2 命令模式
- w 写入文件
- w 文件名 另存文件
- q 退出
- q! 不保存退出
- !cmd 执行命令
- / 查找
- s/ old/new/ 替换
- set nu(设置行号) set nu!(取消行号)
- 6.3 插入模式
- 6.4 可视模式
- v 字符可视化模式
- V 行可视化模式
- Ctrl+v 块可视化模式
7.用户管理
- 7.1 用户命令
-
常用用户命令
useradd 添加用户 userdel 删除用户 passwd 设置用户密码 usermod 修改用户信息 groupadd 添加用户组 groupdel 删除用户组
用户与用户组的概念
用户的家目录 /home/用户名
-
以管理员身份运行
su 切换用户 sudo 以root用户身份执行某条命令 visudo 修改sudo命令的配置文件
-
- 7.2 用户配置文件
- /etc/passwd 用户信息配置文件
- /etc/shadow 用户密码信息配置文件
8.权限管理
-
8.1 权限的表示方法
一般权限用三个字符表示 r w x,对应数字分别为 4 2 1
-
文件与目录的权限格式相同,但功能不同
文件权限r w x:读、写和执行 目录权限r w x:读取目录内文件名、修改目录内文件名、进入目录
-
特殊权限,/etc/passwd 用户信息配置文件
t增加了目录权限为777的目录的安全性,确保只有root用户和文件属主才可操作自己的文件或目录
-
8.2 权限的相关命令
- chmod 修改权限
- chown 更改属主、属组
- chgrp 单独更改属组(不常用)
(三)系统管理篇
1.正则表达式
- 1.1 正则表达式是什么
- 对字符串操作的一组逻辑公式
- 用于对符合规则的字符串进行查找和替换
- 1.2 初识元字符
- ^
- $
- .
- 1.3 扩展的元字符
2.文本与文件查找
- 2.1 grep
- -i 忽略大小写
- -v d反转
- -a 处理二进制文件
- -R 递归方式
- 2.2 find 实时搜寻硬盘查询
- -name 按照文件名搜索
- -perm 按照权限搜索
- -user 按照属主搜索
- -type 按照文件类型搜索
- 2.3 locate 从数据库中检索
- 速度快,但并非实时信息
- 2.4 whereis 查找二进制(命令)、源文件、man文件
- 2.5 which 查找PATH下的可执行文件
3.软件安装与更新
- 3.1 rpm安装
- -i 安装
- -q 查询
- -U 升级
- -e 卸载
- 3.2 yum安装
- 安装 yum install xxx
- 卸载 yum remove xxx
- 更新 yum update xxx
- 3.3 源代码编译安装
- ./configure
- make
- make install
4.网络配置
- 4.1 配置命令
- ifconfig 查看和配置网络接口
- ip 查看和配置网络接口、路由
- netstat 查看进程监听端口状态
- network 与 NetworkManager 网络管理脚本
- 4.2 配置文件
- ifcfg-eth0 eth0 网卡配置文件
- networking 主机名配置文件
- resolv.conf 域名配置文件
5.服务与日志
- 5.1 服务状态的查看命令
- service: service 服务名称 start|stop|restart|status
- systemctl: systemctl start|stop|restart|stratus 服务名称.service
- 5.2 服务配置文件的编写
- 5.3 常用系统日志
- /var/log 系统日志默认目录
- message 系统日志
- dmesg 内核启动日志
- secure 安全日志
- 5.4 应用程序日志
6.防火墙
- 6.1 SELinux
-
访问控制方式分类
DAC 自主访问控制 MAC 强制访问控制
-
常用命令
getenforce 查看SELinux状态 setenforce 修改访问状态
-
配置文件
/etc/selinux/config enforcing 强制控制 permissive 通知但不强制控制 disable 禁用访问控制
-
- 6.2 iptables
-
表
filter 用于过滤 nat 用于地址转换
-
链
INPUT 进入本主机方向 OUTPUT 本主机发出方向 FORWARD 转发方向 PREROUTING 路由前转换 POSTROUTING 路由后转换
-
选项
-i -o 接口 -s -d IP 地址 / 子网掩码 -p TCP/UDP 指定协议 --sport 源端口 --dport 目的端口 -j 动作 ACCEPT 允许此规则匹配的数据包通过 DROP 丢弃此规则匹配到的数据包 REJECT 拒绝此规则匹配的数据包并返回rst包 SNAT 源地址转换 DNAT 目的地址转换 MASQUERADE 动态源地址转换
-
- 6.3 tcpdump
-
保存和读取规则
-r filename 从文件读取已抓取的数据包 -w filename 将抓取的数据包保存至文件
-
常用选项
-v 显示详细信息 -n 不将IP地址解析为主机名 -i 接口 host 主机 port 端口
-
7.磁盘分区
- 7.1 链接文件
- 符号链接
- 硬链接
- 7.2 mount挂载命令
-t 文件系统类型
-
-o 挂载选项
ro 只读挂载 rw 读写挂载 remount 重挂载
- 7.3 配置文件 /etc/fstab
8.文件系统
- 8.1 常用命令
-
fdisk 分区工具
-l 查看分区信息 fdisk /dev/sdx 为某一个存储分区
df 查看分区使用的空间大小
du 查看文件夹使用的空间大小
-
mkfs 格式化命令
mkfs.ext4 格式化为ext4文件系统 mkfs.xfs 格式化为XFS文件系统
-
- 8.2 ext4
9.系统启动过程与故障修复
-
9.1 系统启动过程简述
- BIOS 选择启动设备
- MBR 硬盘可引导扇区
- GURB Linux 系统可引导工具
- 内核
- init 或者 systemd(CentOS7以前为init)
- service 服务或者 systemd 服务(CentOS以前仅有service服务)
- 启动 tty 等待用户登录
-
9.2 更新内核版本
-
RPM 方式更新
安装速度快 没有最新的版本
-
源代码编译方式更新
可以使用最新的版本 编译时间较长
-
10.逻辑卷与LVM
10.1 卷用于分层管理磁盘
-
10.2 LVM 分为三层
- PV 物理卷
- VG 逻辑卷
- LV 逻辑卷
-
10.3 常用命令
- pvcreate 建立 PV
- vgcreate 建立 VG
- lvcreate 建立 LV
- pvs 查看 PV
- vgs 查看 VG
- lvs 查看 LV
- lvextend 扩展 LV