linux查找的命令有哪些
在Linux中,用于查找文件的命令主要有以下几个:
find:在文件系统中根据条件查找文件。
locate:通过数据库查找文件,速度比find快。
which:查找执行文件(即命令)的位置。
whereis:查找二进制、源码和man手册页等相关文件的路径。
grep:在文件中查找包含指定模式的行。
计算机的发展
电子管时代
特点: 体积大,功耗高,可靠性差,运算速度慢,价格昂贵
典型:ENIAC
晶体管时代
特点:体积小,功耗降低,可靠性提高,速度提高,价格昂贵
典型:TRADIC
集成电路时代
特点:中小规模集成电路,可靠性提高,价格降低,运算速度提高
大规模超大规模集成电路板
特点:进入微型计算机时代,体积更小,价格更低,使用更加方便,速度进一步提高
量子计算机,生物计算机,人工智能
计算机的架构组成
架构
x86: 中央处理器指令架构
划分
软件:计算机所能执行的程序
硬件:计算机的物理介质
组成
冯诺依曼体系
输入设备
输出设备
存储器
运算器
控制器
冯诺依曼 现代计算机之父 博弈论之父
类型
微型计算机
小型计算机
大型计算机
超级计算机
硬件参数
数据单位
计算机数据存储中,数据的基本单位是字节
计算机数据存储中,数据最小单位最小单位是bit
单位换算
8bit=1B
1024B=1KB
1024KB=1MB
1024MB=1GB
1024GB=1TB
1024TB=1PB
1024PB=1EB
1024EB=1ZB
YB BB NB DB
计算机科学之父 : 艾伦 麦席森 图灵 人工智能之父 图灵奖
主板
1.作为计算机绝大部分硬件的载体存在
类型
大板
一般指ATX板:标准型主板,长方形,尺寸比较大,接口较为丰富
小板
一般指M-ATX板:即紧凑型主板,正方形,尺寸较小,接口较少
芯片组
南桥:负责连接速度较慢的硬件
北桥:负责连接数据较快的硬件
常见品牌
华硕 ASUS
微星 MSI
技嘉 GITABYTE
CPU
作用:整个计算机的运算核心
中央处理器
接口类型:
LGA:主板上具有针脚,CPU有触点
SOCKET:主板上有触点,CPU上有针脚
核心线程
芯片组
频率
主频:CPU的每秒运算工作次数
外频:CPU与外部组件进行数据传输的速度
倍频:CPU内部用来加速工作性能的参数
关系
主频=外频*倍频
超频:
通过某些技术手段将CPU的外频或者倍频在主板中进行设置,最终实现更高的处理速度
散热
风冷:安装简单,性价比高,最为常见
水冷:安装较为复杂,价格较贵,散热效果好
硬盘
分类:
传统硬盘 : 传输速度较慢,存储容量较大
固态硬盘 :传输速度快,存储容量小
传统硬盘结构
盘片 存储数据
磁头臂 负责移动磁头
磁头停泊区域 在磁盘没有被使用的时候停放磁头位置
磁头 负责读取数据
永磁铁 保证磁头悬停在盘片上
空气过滤片 过滤空气,保证硬盘中为真空状态
传动轴 负责转动磁头臂
主轴 负责带动盘片进行旋转
音速马达 负责给主轴提供动力
传统硬盘的参数指标
7200转 6400转
注意事项:
正常关机
避免震荡
固态硬盘结构
闪存芯片:负责存储数据
主控芯片:发送操作指令
缓存:处理硬盘与内存的读写差异
常见接口
SATA IDE SCSI
USB:外接硬盘接口
容量
内存
分类
电存储:使用电子存储数据
磁存储:使用磁铁的南北极来存储数据
结构
金手指:内存条和内存查口之间的连接部件
存储颗粒:用来存储数据
SPD:纪录内存中各种参数信息
PCB:电路板,内存的载体
容量
4G 8G 16G
电源
作用:将家用电源转换成为安全电压为其他物理硬件供电
显示器
作用:显示信息
键盘鼠标
作用:输入信息
机箱
作用:保护硬件免受伤害
显卡
作用:将电脑的数字信息转换成为模拟信号,提供图象处理
类型:
集成显卡
集成在主板上的独立显卡芯片,使用计算机的内存充当缓存
会降低主机性能,适合计算机轻度使用者
独立显卡
将显存,GPU以及相关的电路设计在一个独立的板卡上,需要占用主板接口
不占用计算机内存
自带风扇,性能更加强大,需要单独购买,价格昂贵
核心显卡
集成在CPU上的显卡
使用计算机缓存充当现存使用
依托CPU的强大,在低功耗下实现更好的图形处理能力
声卡
作用:处理所有的音频信息
网卡
作用:进行网络连接
网络适配器
常见接口类型
PCI接口
USB接口
光驱v
作用:读取光盘数据
BIOS
概念:基本输入、输出系统
作用:
存储计算机的基本硬件信息
加电自检
引导操作系统
芯片类型
ROM:只读存储器,只能读取,不能修改,断电后数据不会丢弃,如BIOS
RAM:随即存储器,能读取信息,也能修改信息,断电后数据丢失,如CMOS
CMOS
概念:互补金属软化物半导体存储器
作用:纪录主板的主要参数
特点:通过电池供电
VMware workstation
虚拟化
定义: 通过特定的虚拟化技术将一台物计算机虚拟成为多个逻辑计算机,每一个逻辑计算机都可以运行不同的操作系统,并且应用程序都可以在相对应的独立空间中运行而相互不会受到影响,从而显著的提高了计算机的工作效率
虚拟机
定义:通过虚拟化的技术虚拟出来的逻辑计算机
虚拟化的作用
同时运行多个计算机或操作系统
构建测试环境
数据迁移
架构类型
传统架构
一个计算机同时只能运行一个操作系统
一个操作系统中可以运行多个应用程序,但是可能会出现冲突
虚拟机架构
寄居架构
虚拟机监视器作为应用软件安装在宿主机
虚拟机监视器可以安装多个客户机操作系统
每个客户机操作系统都可以运行多个应用程序,但是不会受到其他的客户机种的应用程序的影响
宿主机操作系统中也iky安装多个应用程序,不会受到其他客户机的影响
一旦宿主机出现问题,所有的客户机都会受到影响
原生架构
虚拟机监视器作为操作系统安装在计算机硬件上
虚拟机监视器可以安装多个客户机操作系统
每一个客户机操作系统中的应用程序不会受到其他的客户机操作系统中的应用程序冲突
宿主机操作系统中不可以安装应用程序
快照
作用:将系统恢复的某一个固定节点状态的
选项:
拍摄快照:将但前系统状态保存为快照
恢复快照:将当前虚拟机恢复到前一个快照节点
快照管理:通过目录树的方式查看和管理快照
克隆
作用:快速生成虚拟机
分类
链接克隆
快速创建一个类似于快捷方式的虚拟机
实际操作的还是原来的虚拟机
完整克隆
创建一个完整独立的虚拟机,与前一个虚拟机性能相同但完全独立的系统,操作不会对原系统有任何影响
用户身份
定义:用户是指计算机的使用者在计算机系统中的身份映射
普通用户:具有部分系统操作权限
管理员用户:此系统的最高权限拥有者
windows 管理员 :Administrator
linux 管理员 :root
DOS命令
1.打开命令提示符:win + r 在运行窗口输入cmd
2.开始菜单 搜索 “命令提示符” 启动
3.开始菜单 搜索 “命令提示符” 右键 以管理员身份运行
作用:快速对操作系统进行发送指令
格式:命令 空格 选项 空格 参数
注意: 选项参数不为一
命令位置必须在第一位
windows系统中不区分大小写
选项和参数的位置可以互换
命令:
dir
作用:查看指定文件夹中的内容
选项:
/? 查看帮助信息
/A 显示指定属性的文件
mkdir
作用:创建文件夹
选项:
/? 查看帮助信息
rd
作用:删除文件夹
选项:
/? 查看帮助信息
/s 删除目录树
type
作用:查看文件内容,创建文件
选项:
/? 查看帮助信息
echo
作用:输入内容 配合数据重定向符号 〉
del
作用:删除文件
选项:
/p 删除之前需要确认
/f 强制删除只读文件
shutdown
作用:关闭或重新启动计算机
选项:
/l 注销计算机
/s 关闭计算机
/a 取消操作
/r 重起计算机
/t 设置时间
/c 设置提示信息
netstat
作用:查看网络连接,路由表和网络接口等信息
选项:
/a 显示所有的信息
ping
作用:通常用来测试网络的连通性
选项:
/t 连续监测
计算机网络
起源
20世纪60年代由美国过国防部高级研究院 资助ARPAnet 组织研究成功
作用
主要为了针对前苏联的第一颗人造卫星发射做出的反应,主要任务是为了打造美国国防及军事应用科技在世界上的领先位置
设计思想
为了保证在某些关键节点被破坏到的情况下,快速的作出防护反应,同时在保证线路损坏的情况下依旧能保持信息的通信,不再使用一条固定的线路来发送信息,而这个节点就被称为路由
1969年底
建立第一个由四台计算机互相分组交换的试验网络诞生
1982年
由于ARPA网络过于臃肿,维护成本巨大,所以美国国防高级研究院将整个网络分为两部分,一部分作为运行,有国家进行维护,另外一部分被作为民用,也就是最早期的internet
有ARPA提供资金支持工业界和学术界从事新的项目研究,最后ARPA采用互联网协议IP (internet protocol)用来取代之前好似用的NCP
1986年
由美国国家科学基金会NSF 提供巨资建全美国6个超级计算机中心,基于这六个超级计算机中建造第二代互联网主干网络,取代了ARPAnet网络,成为新的计算机网络 NSFnet
匹兹堡超级计算机中心,康奈尔超级计算机中心,约翰`冯诺尼曼计算机超级中心,国家超级计算机中心,圣地亚哥超级计算机中心,国家大气研究中心
1991年
IBM MCI MERIT 组成了一个高级网络服务公司 ANS
ANSnet成立,并且取代了NSFnet 成为了三代internet主干网络
1992年
internet 开始进入商业化的发展,向全世界推广
在商业化的过程中,万维网(www)诞生使internet使用更为简单方便,同时开创了internet发展的新时代
计算机网络
定义:计算机网络是计算机技术与通信技术的结合,实现信息传输,达到资源共享的目的的系统
分类:
按照覆盖范围分
局域网
LAN(local area network )
覆盖范围通常为10KM
应用场景
一个公司
一个部门
一栋楼
一个教室
特点:
组网灵活方便
投资少
安全性好
保密性高
传输速度快
误码率底
城域网
MAN(METROPOLITAN AREA NETWORK)
局限在一个城市的范围
介于局域网和广域网之间,地理位置从几十公里到上百公里不等,可以覆盖一个城市
城域网没有特别显著的特点
广域网
WAN(Wide area network)
地理覆盖范围从几十到几万公里不等,小到一个城市,大到一个国家,甚至全世界
互联网
特点:
覆盖范围广
成本高
安全性差
传输速度慢
误码率高
按照拓扑结构
星型结构
特点:由一个中央节点和周围的节点组成,中央节点可以与从节点之间通信,从而节点之间必须通过中央节点才能通信
优点:方便扩展,方便故障检测,容易管理和维护,可靠性高,传输速度快
缺点:过于依赖中央节点
环型结构
定义:环型网络是一个密闭的环,每一台计算机通过硬件接口进入网络,这些接口首尾相连形成了一个密闭环路
优点:抗干扰能力强 , 性价比高
缺点:稳定性差,传输效率低
总线型结构
定义:采用一套公共线路作为传输介质,每一台计算机通过相应的硬件接口接入网络中,信号沿着总线进行广播发送
优点:宜于扩展,较高的可靠性
缺点:传输效率低,传输距离有限,故障排查麻烦
树型结构
定义:分层部署网络
优点:宜于扩展,易于故障排查
缺点:结点压力大
网状型结构
定义:树型结构的升级
优点:稳定性高
缺点:性价比低,节点压力大
混合型结构
定义:将网络拓扑混合使用,没有固定的样子
优点:宜于扩展,故障排查容易
缺点:成本高,节点压力大
网络协议
定义:网络协议是指通信双方必须遵守的控制信息交换的规则集合
要素
语法:通信双方传输数据的结构和形式
语义:通信双方数据的每一部分的含义
时序(同步):数据发送的时间和发送的频率
网络标准
定义:通信双方都一直同一的规则
常见:
ISO 国际标准化组织 OSI IOS
IEEE 电气和电子工程师协会
ANSI 美国国家标准化局
ITU-T 国际电子联盟-电信标准部
IANA 因特网编号挂历
APNIC 亚太互联网络信息中心
CNNIC 中国互联网信息中心
ICANN 国际互联网域名管理机构
China Compulsory Certification
局域网标准
是由IEEE组织定义其标准,包含: 线缆,信号,协议等
线缆:
双绞线: 最基础的数据传输介质
类型: 屏蔽类双绞线,非屏蔽类双绞线
组成:
裸铜导体
聚乙烯绝缘
聚氯乙烯护套
撕裂绳
线序
568A: 绿白,绿,橙白,蓝,蓝白,橙,棕白,棕
568B:橙白,橙,绿白,蓝,蓝白,绿,棕白,棕
网线类型:
直通线:保证两端线序相同,用于连接两个不同性质的设备
交叉线:保证两端线序不同,用于连接两个相同设备
全反线:保证两端线序完全相反,用于在主机连接网络设备,用于配置
接口
RJ-45接口
光纤
组成:
聚合物表皮
玻璃涂层
玻璃核心
类型:
单模光纤:激光光源只输出一个光线,成本较高,损耗小,效率高
多模光纤:发光二极管,可以同时发送多个激光,端口连接较为容易,成本较低,损耗大,效率低
优势
传输带宽高
传输距离远
抗干扰能力强
接口
SC方形接口
铜轴电缆
组成:
外皮,编制线屏蔽网,塑料绝缘层,裸铜导体
类型
粗缆:模拟信息
细缆:数字信号
无线传输介质
微波
红外线
无线电波
信号
数据在传输过程中,所采用的二进制数据流的方式
数字信号: 抗干扰能力强,加强通信安全性
模拟信号:保密性差,抗干扰能力弱
通信
信号传输的工作方向
单工通信 :信号源只能向一个方向传输通信
半双工通信:信号在同一时间内只能向一个方向传输信息
全双工通信 :信号源在同一时间内可以双向通信
数制
常见的数制
十进制 0 1 2 3 4 5 6 7 8 9 10
二进制 0 1 10 11 100 101 110 111 1000
八进制 0 1 2 3 4 5 6 7 10 11 12
十六进制 0-9 A B C D E F 10
概念
数位:数字字符在一个数中的所处位置
数码:数制中表示基本数制的大小的数字符号
基数:数制中可以使用的数码个数
位权:数制中某一个数位上的1代表数制的大小
十进制 转换 二进制 八进制 十六进制
192 短除
255 127 192 168 100 200
二进制 转 十进制 八进制 十六进制
10 101 010
2 5 2
1010 1010
10 10
A A
1 0 1 0 1 0 1 0
128 64 32 16 8 4 2 1
128+32+8+2=170
八进制 转 二进制 十进制
1 7 7
01 111 111
8^2 8^1 8^0 进制的n-1次方 ,n是从右往左数第几位
1*8^2+7*8^1+7*8^0
1*64+7*8+7*1=127
十六进制转换 二进制 十进制
7 E
0111 1110
16^1 16^0
7*16^1+14*1 =126
二进制 : 11110000 10111100 01010011 1111111111111111111111111111111111111111111111111111111111111111
八进制: 213 111 357
十进制: 666 777 888 65535
十六进制: FF CD 58
IP地址
概念
TCP/IP协议的统一地址格式,为了确定每台计算机在网络中的位置
协议
TCP/IP协议
常见的版本
IPv4
00000000.00000000.00000000.0000000 0.0.0.0
11111111.11111111.11111111.1111111 255.255.255.255
2^31=21亿
分类
网络位:用来定位网段位置,将整个IP地址给划分成为网络位和主机位,方便定位
主机位:用来定义主机的位置
A类
0-127
0.0.0.0-----127.255.255.255
锁定网络位8bit 即第一组数字
B类
128-191
128.0.0.0-----191.255.255.255
锁定网络位16bit,即第一二组数字
C类
192-223
锁定网络位24bit,即第一二三组数字
D类
224--239
E类
240-255
类型
公有地址:可以在互联网中正常使用的地址
私有地址:不可以在互联网中使用的地址
10.0.0.0-10.255.255.255
172.16.0.0-172.31.255.255
192.168.0.0-192.168.255.255
特殊地址:具有特殊意义和特殊作用的地址
0.0.0.0 任意IP地址
192.168.123.0 代表网段
255.255.255.255 全网广播地址
192.168.123.255 网段的广播地址
127.0.0.0-127.255.255.255
回环地址
ipconfig 察看网络参数
/all 察看详细信息
子网掩码:区分网络位和主机位
IPv6
互联网协议第六版本
特点:地址池容量大
更快的数据转发
更高的安全性
长度
128bit的数据
写法
16bit为一组 将二进制转换成为16进制
fe80::6106:2e83:d034:d13c
fe80:0000:0000:0000:6106:2e83:d034:d13c
两部分组成
网络前缀
接口标识
192.168.123.46/24 www.baidu.com:443
255.255.255.0
10.0.0.1/8
172.16.1.1/24
172.16.1.5/24
MAC地址
名称:直译为 媒体存取控制地址 Media Access Control Address
物理地址
特点:唯一性
00-0C-29-AC-37-87
以十六进制显示,共48bit 分6组
172.16.223.1 172.31.2.1
OSI参考模型
概念:Open System Interconnection 开放式互联参考模型
International Organization for Standardization
他是一个灵活,稳健的可操作模型,通常用来分析和设计网络体系结构
目的:规范不同系统的互连标准,使不同的操作系统能够更为容易的通信,而不需要改变底层硬件或软件逻辑
组成
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
物理层:
定义接口和媒体特性
定义比特的表示,数据传输,信号传输模式等
定义网络物理拓扑
负责将数据进行转换与传输
数据链路层
提供可靠的数据传输服务
MAC 工作在此层
MAC地址表
物理编址 流量控制 差错控制 接入控制
网络层
定义逻辑地址
路由选择,维护路由表
传输层
负责将上层应用程序的数据进行分段重组
提供端到端的数据传输服务
滑动窗口机制
会话层
负责管理,建立和终止会话连接
负责调解系统之间的通信过程
表示层
数据的解码和编码
数据的加密和解密
数据的压缩与解压缩
ASCII
应用层
为应用软件提供接口方便应用程序能与网络服务对接
TCP/IP 协议 传输控制协议
作用: 能够在多个不同网络之间实现信息传输的协议簇
结构
四层
应用层 OSI上三层
传输层 OSI 传输层
网络层 OSI 网络曾
网络接口层 OSI物理层,数据链路层
五层
应用层 OSI上三层
传输层 OSI 传输层
网络层 OSI 网络层
数据链路层 OSI 数据链路层
物理层 OSI 物理层
linux
特点
开源,稳定,高效
1969年
肯.汤姆森 开发出来第一个操作系统的原始代码
1970年
丹尼斯.里奇 开发了C语言,解决了unix系统的移植性问题
贝尔实验室 BELL MIT GE
Mulitics计划
为了实现多人多工对计算机进行操作,衍生出来一个批处理系统的概念,也可以称为多任务操作系统 分时操作系统
1984年
minix 迷你-unix
自由软件运动 GNU 理查德.斯托曼 并且成立了自由软件基金会NSF 发布了GPL协议
提倡: 用户可以自由使用,复制、在发行、修改、学习、强化软件
禁止:单纯的销售软件,不能修改授权
1991年
linux 基于Unix-like 系统中诞生出来
1994年
创建红帽公司正式开始售卖linux
红帽的发行版本
fedora
社区驱动
释放周期短
关注功能和技术
桌面版本
redhatenterprise linux
注重稳定性
有偿许可
由红帽提供技术支持
服务器版本
centos
社区驱动
注重稳定性
自由使用
协议
GPL 协议:
开源界最常用的许可模式
特性:
自由复制
自由分发
可以修改
可以盈利
apache协议
特性:
永久权利
全球范围
授权免费
无排他性
不可撤销
应用场景
网络服务器
高性能运算场景
unix-like
root linux 系统的超级用户(管理员用户)
密码设置:
保证密码字符串长度
包含大小写字符和特殊符号
不能是常见的信息
root密码忘记
重启虚拟机
按E 对内核进行编译
在linux16 这一行最后位置加入 “ rd.break”
ctrl + x 启动
mount -o remount,rw /sysroot
chroot /sysroot
passwd root 给root用户设置新的密码
输入密码两次
touch /.autorelabel
exit 推出环境
reboot 执行操作 开启虚拟机
交互类型
GUI 可视化操作系统,图形操作系统
CUI 字符交互系统
终端类型
默认情况下系统会提供6个终端
名称:tty1 - tty6
切换:ctrl + alt + F1 - F6
默认情况下无论命令还是图形都回出现在TTY1终端下
命令提示符
[root@localhost home]#
[用户名称@主机名称 工作路径]提示符(#当前用户为管理员用户$代表普通用户)
PS1
作用:用来声明提示符信息
格式:PS1='自定义选项'
echo 作用:显示内容
echo $PS1
选项:
[\u@\h \W]\$
\u 显示当前用户名称
\h 显示当前主机名称小数点之前的名字
\W 显示当前工作路径
\$ 显示提示符类型
\H 显示完整主机名称
\t 显示时间格式为24小时制
\T 显示时间格式为12小时制
\@ 显示时间格式为12小时制,并附带am/pm
\w 显示完整路径
hostname
作用:显示当前主机完整名称,临时修改主机名称
格式: hostname [主机名称]
命令的使用方法
格式:
命令 选项 参数
注意:
选项参数不唯一
命令必须在第一个字段
选项和参数的位置可以互换
回车表示立即执行命令(\ 转义符)
命令、选项、参数需要使用空格分隔
输入时严格区分大小写
选项和参数可以忽略
内核版本
uname
作用:察看内核信息
格式:uname [选项]
选项:
-a 显示所有信息
内核名称,主机名称,内核版本号,内河版本,硬件名称,处理器类型,硬件平台,操作系统
-n 显示主机名称
-m 显示硬件名称
-r 显示内核版本号
-s 显示内核名称
-o 显示操作系统名称
内核版本号的命名规则
3.10.0-693.el7.x86_64
主版本号.次版本号.发布版本号.修改正版本号.硬件名称
分类
3.0之前采用的是稳定版本和开发版本
次版本号为奇数时是开发版本
次版本号为偶数时是稳定版本
3.0之后采用的主线版本,长期维护版本
主线版本:mainline
长期维护版本:longterm version
下载
CentOS www.centos.org 下载位置
fedora getfedora.org
redhat www.redhat.com
查看发行版本
cat /etc/redhat-release
linux 设计理念
一切皆文件
由单一的小程序组合,组合小程序完成复杂任务
由文本文件保存配置信息
尽量避免捕捉用户接口
提供机制,而非策略
date
作用:显示系统时间
格式:date [选项] [参数]
参数:
+%Y 显示年份
+%m 显示月份
+%d 显示日期
+%D 显示日期,年份缩写
+%H 显示小时,24小时制
+%I 显示小时,12小时制
+%l 显示小时,12小时制缩写
+%r 显示时间,12小时制,并显示上下午
+%M 显示分钟
+%s 显示从1970年1月1日到当前时间的总秒数
+%S 显示秒
+%a 星期的缩写
+%A 星期的完整写法
+%b 月份的缩写
+%B 月份完整英文名称的缩写
+%j 当前日期在当前年份的第几天
+%U 当前日期在当前年份的第几周
+%c 显示详细时间
+%y 单独显示年的缩写
选项:
-s 设置当前时间
clock
作用:查看硬件时间
格式:clock [选项]
选项:
-s 覆盖系统时间
cal
作用:查看日历
格式:cal [选项] [参数]
选项:
-1 显示当前月份的日历
-3 显示前后以及当前月份,三个月的日历
-s 显示本月,以周日为开始点,周六为结束点
-m 显示本月,以周一为开始点,周日为结束点
-y 显示本年的12个月
参数格式
日月年格式输入,中间需要使用空格分隔,准确定位年月日
bc
作用:计算器
quit
作用:退出计算器
exit
作用:退出当前环境
命令类型:
内部命令:一些常用的命令且命令文件小的命令,通常会随着系统的开启加载到内存中随时等待系统的调用
外部命令: 通常一些不常用的或命令体积较大,会存放在磁盘中,只有用户使用时才会被加载到内存中使用,使用完成之后会自动关闭不会继续占用系统资源
命令的执行结果
直接显示结果,回到命令提示符状态,等待下一条命令的输入
进入该命令执行环境中,持续到手动退出,回到命令提示符状态,等待下一条命令的输入
快捷键
ctrl + L 将当前屏幕清空
ctrl + c 终止输出
ctrl + d 终止输入
shift + pgup 向上翻屏
shift + pgdn 向下翻屏
type
作用:用来区分命令类型
格式:type [选项] 命令
选项:
-t 以标准方式,将命令内容显示
file 外部命令
builtim 内部命令
alias 别名命令
alias
作用:查看或设置别名
格式:alias 别名=‘命令’
文件:
~/.bashrc 个人用户的别名配置文件
/etc/bashrc 全局别名配置文件
unalias
作用:取消别名
格式:unalias 别名
帮助命令
help
作用:查看帮助信息
格式: 命令 --help
操作:
shift + pgup 向上翻屏
shift + pgdn 向下翻屏
man
作用:手册页帮助页面
格式:man 命令
操作:
space 向后翻屏
b 先前翻屏
enter 向后翻行
k 向前翻行
/ 向后查找关键字
? 向前查找关键字
n/N 跳转关键字
q 退出
info
作用:超文本格式的帮助页面
格式:info 命令
操作 :
↑ 向上翻行
↓ 向下翻行
enter 进入节点
N/n 上下节点切换
tab 链接间的跳转
h 帮助
q 退出
总结
help绝大多数的GNU工具都会支持的选项,仅显示简单的帮助信息
man以手册页的方式显示内容,内容更为全面和详细
infoGNU开发的超文帮助工具,信息最为详细,功能最为强大,样例更多
目录树结构
/ 根目录,所有的目录起点
/boot 启动目录,存放内核以及引导程序相关的文件
/dev 设备目录,存放与设备相关的文件
/bin 存放系统命令的目录,普通用户和管理员用户都可以使用
/sbin 存放系统环境设备相关的命令,只有管理员可以使用
/etc 存放系统配置文件
/home 普通用户的家目录,默认情况下此目录中包含每个用户的同名目录
/root 管理员用户家目录
/proc 虚拟文件系统,数据存放在内存中,主要包括内核,进程,网络状态等
/sys 虚拟文件系统,主要包括内核相关的信息
/mnt 挂载目录,如U盘,硬盘等外接设备
/media 挂载目录,存放媒体设备,如软盘,光盘等
/usr 存放系统软件相关资源的目录
/var 动态数据保存位置,主要包含缓存,日志,软件产生的临时文件
/lib 系统调用函数库以及内核模块
/lib64 64系统的函数库以及内核模块存放位置
/tmp 临时目录,存放那个系统运行时产生的临时文件
/opt 第三方软件保存位置
/run 存放程序运行时产生的可变数据
/srv 存放服务数据目录
基本命令
pwd
作用:查看当前工作目录
cd
作用:改变当前工作目录
绝对路径:以/为起点的路径
相对路径:以非/为起点的路径
操作:
cd [选项] [路径]
标识符
. 返回当前目录
.. 返回上一级目录
~ 返回当前用户家目录
- 返回之前操作的目录
mkdir
作用:创建目录
格式:mkdir [选项] 参数
选项:
-p 创建多级目录
rmdir
作用:删除目录
格式:rmdir [选项] 参数
选项:
-p 删除多级目录
rm
作用:删除文件
格式:rm [选项] 参数
选项:
-r 递归删除操作,可作用于目录
-f 强制,不需要确认信息
注意:
此命令异常危险,使用时谨慎操作
shutdown
作用:关闭或重启计算机
格式:shutdown [选项] [参数]
选项:
-k 不会关机,只会发送警告信息
-h 设置时间
-n 不采用正常关机流程,强制杀死所有进程后关机
-c 取消当前关机操作
-r 重启
-f 关机或重启时跳过磁盘检测功能
选项的格式
长格式:一般都采用--进行调用,需要将选项内容写全
短格式:一般采用-进行调用,基本是一些长格式选项的缩写
ls
作用:查看指定目录中的内容,默认情况下查看当前目录
格式:ls [选项] [参数]
选项:
-a 显示所有文件,包括隐藏文件
-A 显示所有文件,包括隐藏文件,但排出.和..
-l 显示详细信息
文件类型和权限 文件连接数 属主 属组 文件的大小(单位B) 文件的时间 文件名称
-1 显示格式为一行一个文件名称
-d 显示指定目录的属性
-f 直接显示结果不进行排序
-h 人性化显示单位
-r 倒叙输出
-S 按照文件大小排序,从大到小排序
-o 显示详细信息,但没有文件的归属组
-t 按照时间进行排序
--color= 显示颜色,always显示颜色,never不显示颜色
--full-time 显示完整时间格式
--time 显示时间 atime读取时间 ctime状态时间
-R 递归显示目录信息
cp
作用:复制文件
格式:cp [选项] 源文件 目标地址
选项:
-i 覆盖文件时需要确认操作
-f 强制覆盖不需要确认
-a 最大限度保留文件的原始属性
-r 表示递归,复制目录时需要使用
-p 保留文件原始属性
注意:
同名目录会采用合并操作
文件不会被合并
mv
作用:移动文件,或改名文件
格式:mv 源文件 目标地址
注意:
在同目录的情况下为改名
不同目录情况下为移动
移动的同时也可以改名
查看文件内容
cat
作用: 从第一行开始显示文件内容
格式 : cat [选项] 文件名
选项:
-n 输出行号,同时空行也进行标记
-b 输出行号,仅对非空白行进行标记
-E 在行尾的换行符位置显示$
-T 将TAB键输出为^I
tac
作用: 从最后一行开始向前显示文件内容
格式 : tac 文件名
nl
作用: 显示文件内容,同时显示行号
格式: nl [选项] 文件名
选项:
-b 用来指定行号的显示方式
-b a 显示行号 对所有内容进行标记
-b t 显示行号,仅对有内容的行进行标记
-n 指定行号的显示类型
-n ln 在行号栏最左侧显示行号
-n rn 在行号栏最右侧显示行号
-n rz 在行号栏最右侧显示行号,使用0补全行号
-w 指定行号的长度
-w 数字
more
作用: 逐行显示文件内容
格式: more [选项] 文件名称
选项:
+n 代指数字 从第N行开始显示内容
-n 代指数字 自定义显示屏幕数量
+/ 查找关键字,并且从关键字前两行开始显示
操作 :
enter 向下翻行
space 向下翻屏
q 退出
b 向上翻屏
:f 立即显示文件内容以及当前行数
less
作用: 逐行显示文件内容
操作:
enter 向下翻行
space 向下翻屏
q 退出
b 向上翻屏
k 向上翻行
pgup 向上翻屏
pgdn 向下翻屏
/ 向下查找关键字
? 向上查找关键字
n 向下跳转关键字
N 向上跳转关键字
head
作用: 截取文件的头几行
格式: head [选项] 文件名称
选项:
-n 指定截取行数
tail
作用:截取文件的尾几行
格式: tail [选项] 文件名称
选项:
-n 指定截取行数
vi vim nano
文件的类型
- 文本文件
d 目录文件
l 链接文件
b 块设备文件
f 普通文件
c 字符文件
s 套接字文件
p 管道文件
file
作用:查看文件类型
格式:file [选项] 参数
选项:
-b 不显示文件名称,仅显示文件类型
-f 批量显示文件名
-F 指定文件类型的分隔符
which
作用:显示命令的完整路径
whereis
作用: 查找指定指令的二进制程序文件、源码文件、帮助文件等
格式: whereis [选项] 指令
选项:
-b 输出二进制程序文件
-m 输出帮助手册文件
-s 输出源码文件
搜索命令
locate
作用: 通过文件名称查找文件
格式: locate [选项] 名称
选项:
-c 统计符合文件的文件数量,不显示文件名称
-i 搜索时忽略大小写
特点:
因为locate命令是在数据库中进行搜索,所以速度较快
但是默认情况下需要24小时才能更新,手动更新:updatedb
find
作用:在多级目录架构中递归查询文件,功能强大
格式:find 路径 选项 表达式
选项:
与文件名称相关的查找
-name 查找指定文件名称
-type 查找指定文件类型
-size 查找指定文件大小
-newer 查找比某个文件更新的
与使用者相关的查找
-user 查找指定属主的文件
-group 查找指定属组的文件
-nouser 查找属主异常的文件
-nogroup 查找属组异常的文件
-uid 查找UID符合条件的文件
-gid 查找GID符合条件的文件
与时间有关的
-atime 读取时间
-mtime 修改时间
-ctime 状态时间
+n n 天之前被修改过的内容
-n n 天之内被修改过的内容
n 表示第N天当天被修改过的内容
与权限相关的查找
-perm 查找权限
n 查找权限数字必须包含
-n 查找文件权限必须完全一样
/n 查找文件必须符合某一个权限的文件
二次处理
-exec 将查询到的内容进行二次处理
格式: -exec 命令 {} \;
注意:此处命令禁止使用别名命令
创建
touch
作用:创建空文件,或修改文件时间戳
读取时间(access time atime)
当文件内容被读取时,更新时间
状态时间(status time ctime)
当文件状态发生变化时,更新时间
修改时间(modification time mtime)
当文件内容发生变化时,修改时间
格式:touch [选项] 文件名称
选项:
-a 修改atime 同时ctime发生变化
-m 修改mtime 同时ctime发生变化
-c 修改全部时间
-d 通过自定义时间格式修改指定文件时间戳
-t 通过精准时间格式修改指定文件时间戳
stat
作用: 查看文件详细信息
文本编辑器
nano
作用: 简单的文本编辑器
使用: nano [文件名称]
操作:
ctrl+G 求助
ctrl+O 写入
ctrl+R 读档
ctrl+Y 上页
ctrl+K 剪切文字
ctrl+X 离开
ctrl+W 搜索
ctrl+V 下页
ctrl+U 还原剪切
vi或vim
作用: 文本编辑器
概述:所有的Unix-like系统都会内置的文本编辑器,系统中有很多的软件都会主动调用vi编辑器
vim具有程序编辑能力,可以主动的以字体颜色来辨别语法的正确性,方便程序设计
因为程序简单,所以调用速度快
使用:
工作模式
命令模式
进入编辑器之后默认的模式
可以通过指令对内容进行操作
输入模式
想文件内输入内容
末行模式
对文件进行操作
格式:
vi [选项] 文件名称
模式的切换
默认进入命令模式
命令模式切换末行模式
: 将要对文件进行操作
/ 向下查找内容
? 向上查找内容
末行切换命令
Esc 按键
命令切换输入
a 从光标位置后一个字符开始输入
A 从光标所在行的行尾开始输入
i 从光标位置前一个字符开始输入
I 从光标所在行的行首开始输入
o 从光标所在行的下一行开始输入
O 从光标所在行的上一行开始输入
输入模式切换命令模式
ESC 按键
注意:
输入模式无法直接切换到末行模式,只能通过命令模式进行切换
光标的移动(命令模式)
方向键和hjkl 进行方向移动
G 跳转到最后一行
nG n代指数字,跳转到第N行
gg 跳转到第一行
0 零, 跳转到光标所在行的行首
$ 跳转到光标所在行的行尾
H 跳转到当前页面所在的第一行
M 跳转到当前页面所在的中间行
L 跳转到当前页面所在的最后一行
n空格 n代指数字,从光标位置开始向后跳转N个字符
n回车 n代指数字,从光标位置向下跳转N行
nk n代指数字,从光标位置向上跳转N行
u 撤销上一步操作
U 可重复撤销上一步操作
pgup 向上翻屏
pgdn 向下翻屏
K 临时切换到命令提示符界面
nb 向前跳转N个单词
nw 向后跳转N个单词
删除,复制,粘贴(命令模式)
x 从光标位置向后删除一个字符
X 从光标位置向前删除一个字符
nx n代指数字,从光标位置向后删除N个字符
nX n代指数字,从光标位置向前删除N个字符
d$ 从光标位置删除到行尾
d0 从光标位置删除的行首
dd 删除光标所在行
ndd n代指数字,从光标所在行向后删除N行
d1G 从光标所在行删除到第一行
dG 从光标所在行删除到最后一行
yy 复制光标所在行
p 从光标位置向下粘贴
P 从光标位置向上粘贴
nyy n代指数字,从光标所在行向后复制N行
y0 从光标所在位置复制到行首
y$ 从光标所在位置复制到行尾
y1G 从光标所在行复制到第一行
yG 从光标所在行复制到最后一行
保存,退出,查找,替换(末行模式)
: 对文件进行操作
q 退出
w 保存
wq 保存退出
! 强制
r 读取其他文件到光标所在位置
w 文件名 文件另存为
s 替换
N1,N2 s/源字符/替换字符/[g|c]
g 替换不需要确认
c 替换需要确认
set nu 显示行号
set nonu 取消行号
set hlsearch 高亮显示
set nohlsearch 取消高亮
/ 向下查找内容
? 向上查找内容
n 向下跳转关键字
N 向上跳转关键字
多文本操作(末行模式)
vim 文件1 文件2 文件3 …… 可以打开多个文件
:files 列出当前正在处理的所有文件列表
:3n 向下跳转3个文件
:3N 向上跳转3个文件
:! 命令 在不退出当前编辑情况下执行系统命令(不能使用别名命令)
:wn 保存并跳转到下一个文件
:wN 保存并跳转到上一个文件
多窗口操作(末行模式)
sp 文件名称 水平分割窗口
vsp 文件名称 垂直分割窗口
Ctrl + w 方向键 切换窗口,一次只能切换一个
qall 关闭所有窗口
wall 保存所有窗口内容
close 关闭当前窗口
only 仅保留当前光标所在窗口
数据恢复
错误使用vi命令导致出现交换文件(.swp)
若系统出现意外宕机时,系统会出现交换文件主要用于数据恢复
O 以只读方式打开文件
E 忽略报错信息,直接进行编辑
R 使用环境文件覆盖原文件
Q 退出
A 终止操作
可视化操作(命令模式)
v 字符选择可视化操作
V 行选择可视化操作
ctrl + v 矩形选择可视化操作
y 复制
d 删除
I 选中区块前添加内容
p 粘贴
r 替换选择内容
A 选中区块后添加内容
zf 创建折叠窗口
zo 打开折叠窗口
zd 删除折叠窗口
补充用法(命令模式)
R 替换操作,从光标位置开始替换
~ 将当前光标锁定字母给转换成大小写
宏
q宏名称 录制宏
q 停止录制
@宏名称 使用宏
特殊插入(命令模式)
先输入数字 在按i键,开始输入需要重复的数据,输入完成之后按ESC键即可完成
选项:
-x 文件加密
取消:
末行模式下 :set key= 回车 :wq保存退出
用户和组
用户: 用户是指计算机的使用者在计算机系统中的身份映射
用户分类:普通用户,超级用户
组: 用户提供本地计算机对象的列表,类似于一个容器
标识:
用户:user ID 简称:UID
组: group ID 简称:GID
文件:
注意: 文件中每一行代表一个用户或者组的信息
/etc/passwd
用户名称
密码占位符
UID
GID
用户的说明栏
用户的家目录
登录shell
/bin/bash:可以登录当前系统的shell环境
/sbin/nologin:不可以登录当前系统的shell环境
/etc/shadow
用户名称
加密后的密码
最近一次修改密码的时间
密码不可以被修改的时间
密码需要重新修改的时间
密码修改前的提示天数
密码过期后的宽限天数
账户的实效时间
保留字段
/etc/group
组名称
组的密码占位符
GID
该组中包含的用户名称
/etc/gshadow
组名称
组密码栏
组的管理员
该组中所包含的用户名称
用户登录系统的流程
用户输入用户名和密码之后,系统会有先找到/etc/passwd 文件,在此文件中进行所有操作,查找文件中是否存在输入的用户名称,如果没有则退出,如果有则将该文件中的信息读取并且核对(UID GID 家目录 登录shell等信息)
通过/etc/shadow文件对用户输入的密码进行核对,若检测不成功则退出,若成功则核对密码信息(账户有效期,密码过期时间等)
用户的操作:
useradd
作用: 创建新的用户
格式:useradd [选项] 用户名称
选项:
-u 指定UID,0超级用户的UID 1-999 系统用户 1000-普通用户ID
-g 指定GID(初始组)
-G 指定有效组
-M 不生成家目录
-s 指定登录shell
-d 指定家目录
-e 指定账户失效时间
初始组:账户创建时指定的组,通常是同名组
有效组:账户创建时附加的组
userdel
作用:删除用户
格式:userdel [选项] 用户名称
选项:
-r 删除用户的同时删除家目录和邮件等目录
usermod
作用:修改以存在的用户信息
格式:usermod 选项 参数 用户名称
选项:
-u 修改UID
-g 修改GID(初始组)
-G 修改有效组
-s 修改登录shell
-d 修改家目录
-e 修改账户失效时间
-l 修改用户名称
id
作用: 查看用户的所有ID
groups
作用: 查看指定用户的组列表
passwd
作用: 为用户设置密码或修改密码
格式: passwd [选项] [用户名]
选项:
-l 锁定密码
-u 解除锁定
-S 查看密码状态
-n 密码不可被修改的时间
-x 密码需要重新修改的时间
-w 密码修改前的提示天数
-i 密码过期后的宽限时间
-k 保持密码不会过期
-d 删除密码
组操作
groupadd
作用: 创建组
格式: groupadd [选项] 组名
选项:
-g 指定GID
groupmod
作用: 修改组
格式: groupmod 选项 修改参数 组名
选项:
-g 修改GID
-n 修改组名
groupdel
作用:删除组
格式: groupdel 组名
gpasswd
作用: 为组添加密码,或添加用户
格式: gpasswd [选项] [参数] 组名
选项:
-a 将指定用户添加到组中
-M 更新组成员列表
-d 从组中删除一个用户
-A 为组添加管理员
newgrp
作用: 登录组身份
格式: newgrp 组名
注意:退出时需要退出环境 exit
su
作用: 切换用户
格式:su [用户名称] 或 su - [用户名称]
区别:
su 用户名称:切换到指定用户下,但是保留当前工作路径等信息
su - 用户名称: 真正的登录用户,所有信息都更新
注意:
退出当前环境是需要使用exit来返回
权限管理
查看权限:
ls -l 或者 stat
-rw-r--r--. 1 root root 0 3月 21 03:30 1.txt
第一字段:文件类型和文件权限,共10字符
文件类型:占第一个字符
文件权限:第2到第10字符
每三个为一组,分别代表属主,属组,其他人的权限
内容均为rwx的组合,若没有权限也会使用“-”来进行字符的站位
r read 读取
w write 写入
x execute 执行
root用户不会受到普通权限影响
权限修改
chmod
作用:修改权限
格式:chmod [u/g/o/a][+/-/=][r/w/x] 文件名称
u 属主
g 属组
o 其他人
a 所有人
+ 在当前权限环境下添加新的权限
- 在当前权限环境下删除权限
= 使用新的权限环境覆盖掉原来的权限
用数字修改权限
格式:chmod 数字 文件名
r用数字表示 4
w用数字表示 2
x用数字表示 1
数位
属主代表百位
属组代表十位
其他人代表个位
选项:
-R 表示递归修改
权限对目录和文件的不同意义
对目录的意义
r 读取目录架构列表权限
w 具有改动该目录的列表权限
x 是否能够进入目录的权限
对文件的意义
r 读取文件内容
w 改动文件内容
x 此文件是否可以被系统执行
默认权限
文件的默认权限为:666
目录的默认权限为:777
umask
作用: 查看反码权限,设置反码权限
格式: umask 数字
千为代表特殊权限
百位代表读取权限
十位代表写入权限
个位代表执行权限
022 000 044 033 011 055
文件的权限和目录的权限分别是多少
注意:
文件在创建时不会添加X权限
拖反码出现奇数时,自动反码去掉X权限
隐藏权限
chattr
作用:修改隐藏权限
格式:chattr [+/-/=]选项 文件名
选项
a 该文件只能增加数据不能删除也不能修改
i 该文件不能删除,修改,增加
c 不能进行压缩
d 不能移动
lsattr
作用:查看隐藏权限
特殊权限
作用:提高系统的安全性
分类
setUID (SUID) 数字表示为4
设置完成后,会有S的标记出现在文件的属主X权限上,其功能主要是:
执行者对该程序使用的时需要具有执行权限
本次执行时会具有该程序拥有者的权限
仅在本次执行时产生效果
setGID (SGID) 数字表示为2
设置完成后,会有S标记出现在文件的所在组的X权限
执行者在对该程序需要有执行权限
执行者在执行过程中获得属组身份
stcky BIT (SBIT) 数字表示为1
设置完成后,会有t标记出现在其他人的X权限位置
主要针对目录生效
需要该用户对此目录具有WX权限
当用户在该目录下创建文件或目录时,只有自己或root用户能够进行修改,其他人不能删除或改名
修改文件的归属
chgrp
作用: 修改文件的用户组
格式:chgrp [选项] 属组 文件名
选项:
-R 递归修改
chown
作用:修改文件的归属(属主和属组)
格式: chown [选项] 属主:属组 文件名
chown [选项] 属主 文件名
chown [选项] .属组 文件名
chown [选项] :属组 文件名
chown [选项] 属主. 文件名
chown [选项] 属主.属组 文件名
选项:
-R 递归修改
压缩
作用:降低磁盘使用量
原理:压缩无用位,腾出更多空间
扩展名:
*.tar 通过tar程序打后的文件
*.tar.gz 通过tar程序打包后的文件,使用gzip进行压缩
*.tgz 通过tar程序打包后的文件,使用gzip进行压缩
*.gz 通过gzip程序压缩的文件
*.bz2 通过bzip2程序压缩的文件
*.zip 通过zip程序压缩的文件
*.xz 通过xz程序压缩的文件
gzip
作用:通过gzip程序压缩或者解压文件
格式:gzip [选项] 需要压缩的文件名 压缩后的文件名
选项:
-d 解压缩
-c 将压缩数据传输到屏幕中
-v 显示详细信息
-1-9 压缩级别
zcat 使用cat格式查看压缩内容
zmore 使用more格式查看压缩内容
zless 使用less格式查看压缩内容
bzip2
作用:使用bzip2程序压缩或解压文件
格式:bzip2 [选项] 需要压缩的文件名 [压缩后的文件名]
选项:
-d 解压缩
-c 将压缩数据传输到屏幕中
-k 保留源文件
-1-9 压缩级别
bzcat 使用cat格式查看压缩内容
bzmore 使用more格式查看压缩内容
bzless 使用less格式查看压缩内容
xz
作用:使用xz程序压缩或解压文件
格式:xz [选项] 需要压缩的文件名 [压缩后的文件名]
选项:
-d 解压缩
-c 将压缩数据传输到屏幕中
-k 保留源文件
-1-9 压缩级别
xzcat 使用cat格式查看压缩内容
xzmore 使用more格式查看压缩内容
xzless 使用less格式查看压缩内容
dd
作用:创建指定大小的文件,主要用于测试
格式:dd if=/dev/zero of=a1.txt bs=1M count=100
/dev/zero 他是一个提供无限连续不断的空数据量
/dev/null 空设备文件,负责导入一些不需要的数据流
if 指定获取文件内容的名称
of 指定新的文件名称
bs 指定数据区块大小
count 指定使用数据区块的数量
总结:
压缩文件是,优先考虑压缩比例问题,则使用xz较为合适
压缩文件时,有限考虑时间和兼容性问题,则使用gzip较为合适
若两者都兼顾时,则使用bzip2较为合适
打包
tar
作用: 用来将目录进行打包压缩
格式: tar [选项] -f 打包名称 源文件
选项:
-c 建立打包文件
-t 查看打包文件
-x 解包
-j 使用bzip2程序压缩
-J 使用xz程序压缩文件
-z 使用gzip程序压缩文件
-v 显示详细信息
-f 指定文件名称
-C 指定释放路径
-p 保留原理属性和权限
-P 保留绝对路径
--exclude 排除指定文件
磁盘管理
磁盘的名称
IDE接口 /dev/hd[a-d]
SATA SCSI接口 /dev/sd[a-p]
打印机 /dev/lp[0-2] /dev/usb/lp[0-15]
光驱 /dev/sr[0-1]
注意: 磁盘名称,是根据Linux内核检测到的顺序进行命名
虚拟化的设备,/dev/vd[a-p]
硬盘结构
盘片,主轴,磁头,磁头臂,磁头停泊区,永磁体,音速马达,空气过滤片,传送轴
盘片:磁道,扇区,柱面
由同一个盘片不同半径的同心圆组成若干个磁道
每一个磁道又被划分成为若干个弧段,这个弧段就被称为扇区
不同的盘片相同编号的磁道组成柱面体就被称为柱面
硬盘中最小的存储单元为扇区,通常大小为512B,当然由于磁盘容量不断提高,也出现了4K的扇区
通常第一个扇区存放 重要信息,被称为MBR(主引导记录)因为出现了4K的扇区之后,更新了一个新的机制GPT
MBR
通常大小为512B
可以同时支持Linux和Windows系统的引导
组成:
主引导记录:安装启动引导程序的位置 占用446字节
分区表:记录整个硬盘的分区状态 占用64字节
结束标识:通过使用AA55或55AA来标识MBR的结束
注意:
硬盘分区默认只能写入4个分区
分区的三种类型:主分区,扩展分区,逻辑分区
主分区:优先等级最高的分区,主要用来存放操作系统等信息的分区
扩展分区:无法直接写入数据,主要是用来为逻辑分区提供位置
逻辑分区:优先等级最低,主要负责记录数据
4个分区分别对应的时主分区和扩展分区
主分区可以拥有1-3个,扩展分区有且只能有一个
分区最小单位是柱面
分区:
方便管理和规划
提高系统性能
提高数据的安全性
分区特性
主分区和扩展分区最多能有4个
扩展分区有且只能有一个
逻辑分区是从扩展分区的基础上划分出来的
主分区和逻辑分区需要在格式化之后才能对数据进行存取操作
若扩展分区遭到破坏,所有的逻辑分区都会被删除
第一个逻辑分区从5开始
GPT
常见扇区大小为512B,但是为了兼容出现的4K扇区,所以采用了逻辑区块地址(LBA)进行分区规划
LBA 0
存放第一阶段启动引导程序,存放标识符,用来表示当前硬盘格式
同时兼容MBR
LBA 1
用来记录分区表的位置和大小,同时记录备份的GPT的位置以及分区表的验证码
LBA 2-33
记录实际分区信息
LBA 34 -34
记录硬盘的实际数据
LBA -33 -2
记录LBA 2-33 的备份信息
LBA -1
备份分区头部信息
添加磁盘
安装硬盘
关闭虚拟机--编辑虚拟机设置--添加--选中硬盘确定
划分磁盘分区
格式化,建立可以用的文件系统
建立挂载关系
查看硬盘分区
lsblk
格式:lsblk [选项]
选项:
-p 列出完整文件名称
-d 仅列出磁盘本身,不列出磁盘分区数据
-f 列出文件系统信息
-m 列出文件权限信息
文件系统
ext2/3/4:扩展文件系统,Linux早期使用的文件系统类型
xfs :从CnetOS 7 开始系统默认使用的文件系统,多用于大型的服务器架构开发,特点:支持大容量,格式化速度快 日志文件系统
swap :交换文件系统,专门用来为交换分区配置使用的文件系统类型
vfat :虚拟文件分配表,可以同时被Linux和windows系统承认的文件系统类型
磁盘分区
fdisk
作用:将磁盘按照MBR引导进行分区
格式:fdisk 磁盘名称
使用:
m 查看帮助信息
n 创建分区
p 创建主分区
e 创建扩展分区
l 创建逻辑分区
p 不退出的情况下查看分区类型
l 查看标签编号
t 修改分区标签
w 保存并退出
q 不保存退出
d 删除分区
gdisk
作用:将磁盘按照GPT格式划分分区
格式:gdisk 磁盘名称
操作:
? 查看帮助信息
n 创建分区
p 不退出的情况下查看分区信息
l 查看标签编号
t 修改分区标签
w 保存并退出
q 不保存退出
d 删除分区
格式化操作
mkfs.ext2
mkfs.ext3
mkfs.ext4
作用:格式化成为ext2/3/4类型的文件系统
格式:mkfs.ext4 分区名称
mkfs.xfs
作用:格式化成为xfs类型的文件系统
格式:mkfs.xfs 分区名称
mkfs.vfat
作用:格式化成为vfat类型的文件系统
格式:mkfs.vfat 分区名称
mkswap
作用:格式化成为swap类型的文件系统
格式:mkswap 分区名称
挂载
前提条件
单一文件系统不能被重复挂载到不同的挂载点中
单一的目录不能被重复挂载多个文件系统
理论上挂载点的目录应该保持为空状态
挂载和挂载点
目录时访问的入口,数据通常存放在磁盘或者分区中,而让目录和分区对应的过程就叫做挂载,这个充当入口的目录就是挂载点
mount
作用: 将目录和分区进行挂载使用
格式: mount [选项] 分区 挂载点
选项:
-a 重新挂载/etc/fstab文件
-t 挂在时指定文件系统
-o 挂载时指定额外参数
ro,rw 挂载文件系统是否为只读或读写
remount 重新挂载
defaults 默认值
umount
作用:取消挂载
格式:umount 分区/挂载点
/etc/fstab
作用:挂载文件
内容
分区
挂载点
文件系统类型
挂载参数
是否启动备份
是否启动磁盘检测
磁盘配额
概述
主要用来妥善分配系统资源
应用场景
本地
限制某些用户使用的空间
限制某些组使用的空间
限制某些目录使用的空间
网络
限制个人存储空间大小
限制网络硬盘大小
限制邮件大小
磁盘配额的使用限制
ext文件系统仅可以对整个文件系统进行限制
内核必须支持磁盘配额功能
仅对普通用户生效
若启用SELinux ,则不是所有目录都可以设置磁盘配额
磁盘配额的设置规范
磁盘配额分别针对用户,组或目录使用(user group project)
容量限制和文件数量的限制
限制磁盘容量:block
限制文件数量:inode
软限制和硬限制
硬限制:hard,表示用户使用量绝对不能超过的数值
软限制:soft,表示用户低于soft数值时,可以正常使用,若超过soft限制,但是低于hard限制时,每次用户登录系统,系统都会主动提示磁盘容量即将耗尽的警告信息,并且给予一定宽限时间,若用户在宽限时间之内容量没有下调到低于soft数值时,那么软限制将会变成硬限制
宽限时间
当用户使用量达到soft时,会出现,提示用户进行数据清理
一般默认情况下数值为7-14天
环境准备
准备磁盘,进行分区,格式化文件系统(xfs ext)
挂载
usrquota 启动用户磁盘配额功能
grpquota 启动组磁盘配额功能
prjquota 启动目录磁盘配额功能
磁盘配额
xfs_quota
作用:xfs文件系统的磁盘配额命令
格式:xfs_quota -x -c "动作"
选项:
-x 启用专家模式
-c 指定操作命令
print 列出当前主机内符合磁盘配额的文件系统
report 列出目录的磁盘配额选项
state 列出当前磁盘配额的文件系统信息
limit 设置用户和组的使用
-u 指定用户
-g 指定组
-p 指定目录做限制
b[soft/hard]=N 设置容量的限制
i[soft/hard]=N 设置数量的限制
添加硬盘
分区 fdisk /dev/sdb
n 创建
p 主分区
e 扩展分区
l 逻辑分区
w 保存退出
格式化 mkfs.xfs /dev/sdb1
lsblk -f
挂载
vim /etc/fstab
/dev/sdb2 /c xfs defaults,usrquota 0 0
mkdir /c
mount -a
配额
xfs_quota -x -c "limit -u isoft=7 ihard=10 a1 " /c
权限
chmod 777 /c
验证
su - a1
cd /c
touch {1..11}.txt
dd if=/dev/zero of=1.txt bs=1M count=101
echo "10086:/a" >> /etc/projects 指定方案识别码和目录对应
echo "ds:10086" >> /etc/projid 指定方案名称与方案识别码对应
xfs_quota -x -c "project -s ds" 初始化方案名称
xfs_quota -x -c "limit -p isoft=7 ihard=10 bsoft=70M bhard=100M ds " /a 设置目录限制
xfs_quota -x -c "disable -p " /b 暂时取消限制
xfs_quota -x -c "enable -p" /b 恢复取消状态
xfs_quota -x -c "off -p" /b 删除磁盘配额限制
ext4文件系统的磁盘配额
quotacheck
作用:检测磁盘配额并且产生磁盘配额文件
选项
-a 检测可以用的分区
-u 检测用户配额
-g 检测组配额
-c 创建配额数据文件
-v 显示执行过程信息
edquota
作用:编辑用户和组的配额设置
选项:
-u 更改用户配额
-g 更改组配额
-t 修改宽限时间
quotaon
作用:启用文件系统的磁盘配额功能
选项:
-u 开启用户
-g 开启组
-v 显示过程
quotaoff
作用:关闭文件系统的磁盘配额功能
-u 关闭用户
-g 关闭组
-v 显示过程
quota
作用:查看用户和组的磁盘配额使用情况
选项:
-u 查看用户情况
-g 查看组情况
quotacheck -ug /dev/sdb1 检测的同时生成用户和组的配额文件
edquota -u a1 配置用户配额限制
quotaon -u /a 开启用户配额的限制
chmod 777 /a 修改权限
磁盘阵列
概念:RAID,通过技术手段可以将多个较小的磁盘整合成为一个很大的存储空间,通过格式化挂载等操作让系统能够识别使用此存储空间,并且可以附带数据保护功能
等级
RAID 0
等量模式
可以将多块磁盘组合成为一个容量相加的存储空间
存储空间等于所有磁盘的总容量
存储性能最佳
存储空间所存储的数据会平均分配给处于阵列中的所有磁盘
若有磁盘损坏则所有磁盘都会受到影响,数据亦如此
通常等量数据区块大小为4KB-1MB
最少需要2块硬盘存储
RAID 1
镜像模式
最少需要2块硬盘组成
一半的硬盘容量进行数据存储,另外一半的容量进行数据完整备份
因此磁盘使用量会减少50%
在数据写入的同时,会同时写入到两个硬盘中
因为使用镜像模式,则数据量变大,读写性能变差
但是,但安全性最高,造价高
数据的一致性最高
RAID 01 或 RAID 10
磁盘数量最少需要4块
RAID 0 和 RAID 1的组合使用,优缺点兼顾
RAID 5
兼顾性能与数据安全性的均衡考虑
最少需要3块硬盘,两块做等量,一块磁盘做奇偶校验数据,一般情况下这个硬盘也可以被叫做奇偶校验盘
因此存储容量是存储空间磁盘的数量-1
RAID 6
最少需要4块硬盘
在RAID 5的情况下,多加入一个奇偶校验盘
磁盘总容量是整体的磁盘数量-2
热备份磁盘
sparedisk
一块或多块没有包含在原本的磁盘阵列中的磁盘,默认情况下不会被启用,当磁盘阵列发生损耗,该磁盘会直接被拉入到磁盘阵列中,替换掉不能工作的磁盘,然后立即重新建立数据系统,保证磁盘阵列的正常运行
硬件RAID和软件RAID
硬件磁盘阵列,通过磁盘阵列卡来绑定实现磁盘阵列功能
因为磁盘阵列卡附带芯片来专门处理RAID任务,所以系统性能会更好
软件磁盘阵列,通过软件手段来模拟磁盘阵列功能,需要消耗系统资源
磁盘阵列的优势
容量的增加
提高读写性能
提高数据的安全性和可靠性
磁盘阵列的名称
硬件:/dev/sd[a-p]
软件:/dev/md[0-1]
/dev/md126 /dev/md127
/dev/md126p[1-4]
设置磁盘阵列功能
mdadm
作用:配置磁盘阵列功能
格式:mdadm --create /dev/md[0-1] --auto=yes --level=[0/1/5/6] --chunk=NK --raid-devices=N --spare-devices=N 设备1 设备2 设备3……
--create 指定磁盘阵列名称
--auto=yes 确定创建磁盘阵列
--level 指定磁盘阵列等级
--chunk 指定数据区块大小
--raid-devices 指定使用设备数量
--spare-devices 指定热备份设备数量
设备1…… 磁盘分区的名称
--stop 停止RAID
--fail 模拟损坏磁盘
--remove 移除损坏磁盘
--add 添加磁盘
思路
添加磁盘
分区
fdisk /dev/sdb
fdisk /dev/sdc
磁盘阵列
mdadm --create /dev/md0 --auto=yes --level=5 --chunk=4K --raid-devices=3 --spare-devices=2 /dev/sdb1 /dev/sdb2 /dev/sdc1 /dev/sdc2 /dev/sdc3
格式化
mkfs.xfs /dev/md0
挂载
mkdir /a
mount /dev/md0 /a
应用
mdadm --detail /dev/md0 查看磁盘阵列
df -hT 查看挂载信息
RAID 01
创建两个 RAID 0 md0 md1
在创一个 RAID 1 md2
LVM
概念:逻辑卷管理,可弹性的扩展文件系统,不考虑安全和性能
组成:
物理卷
PV
是指磁盘分区或逻辑上具有分区功能的设备
卷组
VG
由一个或多个物理卷所组成的存储池
逻辑卷
LV
类似硬盘的分区,建立在卷组上,是一个标准的块设备文件,可以建立文件系统并挂载使用
物理扩展块
PE
整个LVM中最小的存储单元,LVM中所有的数据都是通过PE进行写入完成的
配置
条件:
内核必须支持LVM功能
软件必须安装lvm2
分区-PV-VG-LV-格式化-挂载
pv阶段
pvcreate
作用:创建pv
格式:pvcreate /dev/sdb{}
pvscan
作用:查看系统中的PV
格式:pvscan
pvdisplay
作用:显示PV信息
格式:pvdisplay 分区名称
pvremove
作用:删除PV
格式:pvremove 分区名称
VG阶段
vgcreate
作用:创建VG
格式:vgcreate VG名称 pv名称……
选项:
-s 指定PE大小
vgscan
作用:查看系统中的VG
vgdisplay
作用:显示VG详细信息
格式:vgdisplay VG名称
vgremove
作用:删除指定的VG
格式:vgremove VG名称
vgextend
作用:用来额外添加PV数量来提升容量
格式:vgextend VG名称 PV名称……
vgreduce
作用:用来删除PV实现降低容量操作
格式:vgreduce VG名称 PV名称……
LV阶段
lvcreate
作用:创建LV
格式:lvcreate 选项 LV名称 选项 VG名称
选项:
-n 指定创建名称
-L 指定容量创建
-l 指定PE数量创建
lvcreate -l 1024000 -n LV_1 /dev/VG_1
lvscan
作用:查看系统中的LV
lvdisplay
作用:显示LV的详细信息
格式:lvdisplay LV名称
lvextend
作用:增加VG提升空间
格式:lvextend 选项 参数 LV名称
选项:
-L 指定容量扩容
-l 指定PE数量扩容
注意: 附带+代表增加空间 不带+代表指定大小
lvreduce
作用:降低空间
格式:lvreduce 选项 参数 LV名称
选项:
-L 指定容量降低容量
-l 指定PE数量降低容量
注意: 附带-代表增加空间 不带-代表指定大小
lvremove
作用:删除LV
文件系统
概述
ext2/3/4 xfs vfat swap NTFS
文件系统的组成
iNode:
记录文件属性,一个文件占用一个iNode,同时记录文件数据区块所在的区块号码
数据区块:
实际记录文件内容,若文件过大,则会占用多个区块
超级区块:
文件系统的整体信息,包含iNode和数据区块的总量,使用量,剩余量,格式等相关信息
ext文件系统
概述:
文件系统格式化过程中规划所有的iNode,数据区块等,除非重新格式化,否则iNode和数据区块等总量不会发生变化
区块群组包含独立的iNode ,数据区块,超级区块,文件系统描述说明区,区块对照表和iNode对照表
区块群组:
iNode
记录文件的属性和文件实际存放数据的位置
文件的大小、属主、属组、时间、链接、特性、内容指向
特性:
每个iNode大小为128B,ext4 文件系统可以设置为256B
每个文件仅占用一个iNode
文件系统的使用容量和iNode数量有关
当系统读取文件时,首先会找到iNode,分析权限和用户是否符合条件,若符合则可以访问数据区块内容
记录区
记录方式:直接指向,间接指向,双间接指向,三间接指向
通常记录数据区块指向需要4B大小
假设数据区块大小为1K
直接指向:12条
12 1K = 12K
间接指向:1条
1K/4B=256个数据区块
双间接指向:1条
256256=65536个数据区块
三间接指向:1条
256256256=16777216个数据区块
总量12+256+256256+256256*256
数据区块
文件系统支持数据区块的大小为1K,2K,4K三种
主要功能是存放数据的
单一文件最大可以存放16G 256G 4T
文件系统最大支持的空间是2T,8T,16T
注意事项:
每一个区块只能存放一个文件
文件大于数据区块,则文件会占用多个数据区块
若文件小于数据区块,则会浪费剩余空间
原则上,数据区块大小和数量在格式化完成之后不能再次修改
文件系统和应用程序可能会存在容量冲突
超级区块
记录整个文件系统的相关信息 1024B
记录数据区块和iNode区块的总量
记录已经使用的数据区块和iNode区块数量
记录未使用的数据区块和iNode数量
记录数据区块大小和iNode区块大小
文件系统的挂载时间,最近一次写入数据的时间,最近一次磁盘检测时间
有效位数值,用来表示此文件是否被挂载,0表示挂载,1表示未被挂载
文件系统描述区
记录数据区块开始位置与结束位置
记录每个区块分别存放位置
区块对照表
记录区块的分配情况
iNode对照表
记录iNode分配情况
xfs文件系统
因为ext文件系统组成结构复杂,所以格式化速度较慢,以至于后面系统所采用的格式换成xfs文件系统
xfs文件系统的架构组成:数据区,文件系统活动登录区,实施运行区
数据区
包含iNode,数据区块,超级区块
与ext文件系统的区别
区块容量512B-64KB,常用的容量4K
iNode容量256B-2MB,常用的容量256K
文件系统活动登录区
记录文件系统的变化,用于修复文件系统
实施运行区
是临时区块,用来在文件创建时,首先将数据存放到此数据区块中,等待分配完成之后,在吸入到数据区中的iNode区块和数据区块中
最小容量4K ,最大容量1G
数据的离散问题
数据的离散问题需要通过重新格式化后再次写入数据来解决数据读写效率降低的问题
xfs文件系统的备份和还原
xfsdump
作用:xfs文件系统自带的磁盘备份命令,可以针对整个文件系统进行完整备份或增量备份
完整备份:将当前的文件系统内的所有内容都进行备份
优点:备份数据严谨,可以随时单独拿出来使用
缺点:备份还原速度较慢
增量备份:对比前一段备份文件后将新添加的内容进行备份
优点:备份和还原速度快,较为节省资源
缺点:备份数据不完整,需要配合完整备份使用
选项:
-L 记录每次备份的SESSION标题信息,可以用来进行说明,没有实际意义
-M 记录存储媒介的标头信息,可以用来进行说明,没有实际意义
-l 指定备份级别
-f 指定文件名或设备名称
-I 查看当前设备信息状态
备份级别:
0-
0代表完整备份
/var/lib/xfsdump/inventory 所有备份信息所存放位置
xfsrestore
作用:还原xfs文件系统的备份
选项:
-I 查看当前设备的信息状态
-L 指定备份的session标头
-f 指定文件名称
-s 指定恢复的数据
-i 提供交互界面
add 添加到还原列表中
delete 删除还原列表
ls 查看当前备份信息中的所有内容
cd 进入到备份信息中的某个目录
pwd 查看当前工作路径
help 帮助
quit 不还原退出
extract 还原并退出
-r 用来批量恢复
xfsdump -l 0 -L aaaaa -M bbbbb -f /root/a.dump /a 完整备份
xfsdump -l 1 -L AAQ -M DDQ -f /root/a2.dump /a 增量备份
xfsrestore -f /root/a2.dump -i /b 进入交互界面
xfsrestore -f /root/a.dump /b 全部还原
xfsrestore -f /root/a2.dump -s a1.txt /b 还原指定文件
进程管理
程序:二进制文件,以文件的形式存放在存储媒介中
进程:二进制程序被触发之后,程序的代码以及所需要的数据都会被加载到内容中,进行工作的内容
PID:进程ID
PPID:父进程ID
PID是PPID的继承关系
进程运行的时间问题
短时效:程序需要运行的时间段
长时效:需要进程持续的执行运行操作
进程的作用
多用户环境
每个用户可以同时登录系统,且具备不同的权限和环境
多任务环境
通过CPU的调度,实现多个任务快速切换
多终端环境
每个终端可以让不同的用户进行登录操作
任务管理
提供前台和后台的管理机制
查看进程
ps
作用:查看某个阶段的进程状态
选项:
-A 显示所有进程
-l 以长格式显示PID信息
F 表示此进程的表示,用来说明进程权限
4 root权限
0 无权限
1 该进程仅有复制权限没有执行权限
S 代表此进程的状态
S 正常执行状态
R 该程序正在运行中
D 该程序进入深度睡眠状态,不可唤醒
T 该程序为停止状态
Z 该程序为僵尸状态
UID 用户标识
PID 进程标识
PPID 父进程标识
C CPU利用率
PRI 优先级,内核自动生成的
NI 优先级,用户可以手动修改的
ADDR 进程在内存中的位置
SZ 进程消耗内存的空间大小
WCHAN 目前进程是否在被运行
TTY 终端
TIME CPU的使用时间
CMD 触发此进程的命令
-a 显示与终端相关的进程
-x 列出完整的信息
top
作用:动态查看进程状态
内容:
第一行:
当前系统时间
系统开机到现在的总时间
在线用户数量
平均负载
第二行:
进程统计
总进程数量
运行进程数量
睡眠进程数量
停止进程数量
僵尸进程数量
第三行:
用户空间CPU占比
内核空间CPU占比
用户进程空间改过的优先级进程CPU占比
空闲CPU占比
等待输入输出CPU占比
硬中断CPU占比
软中断CPU占比
第四行:内存信息
物理内存总容量
物理内存使用中的容量
物理内存空闲容量
物理内存缓存容量
第五行:交换分区信息
交换分区总容量
交换分区使用中的容量
交换分区空闲容量
交换分区缓存容量
第六行:
PID 进程ID
USER 用户名称
PR 优先级,内核自动生成的
NI 优先级,用户可以手动修改的
VIRT 虚拟内存
RES 实际内存
SHR 共享内存
S 进程状态
%CPU CPU使用率
%MEM 内存使用率
TIME+ CPU的使用累计时间
COMMAND 触发进程的命令
选项:
-d 指定刷新时间
操作:
enter 快速刷新
q 退出
h 帮助信息
P 以CPU使用率排序
M 以内存使用率排序
N 以PID排序
r 设置优先级
T 以CPU使用累计时间排序
pstree
作用:显示进程之间的关联性
选项:
-p 显示PID
-u 显示进程用户
优先级
作用:设置程序运行顺序
类型:
PRI:priority内核动态调整的优先级,用户无法直接进行修改
NI:nice 用户可以手动配置的优先级
关系:
旧PRI+NICE=新PRI
注意:
程序的执行顺序是按照优先级来执行,优先级数字越小,CPU越优先执行此程序
nice的数值可以调整范围为-20 到 19
root可以随意修改自己或其他人的进程nice值,范围在-20到19
普通用户只可以修改自己的进程nice值,范围在0到19
修改
renice 数字 PID 修改已经存在的进程优先级
nice -n 数字 命令 在创建进程时设置优先级
任务管理
概念
前台:出现在提示符界面中,并且可以进行操作的环境
后台:不需要和用户交互的运行环境
管理
将当前环境放入后台运行: ctrl + z
将新创建的环境放入后台运行: &
查看后台任务状态:jobs
将后台任务移动到前台中处理:fg [数字标号] 调用指定进程
kill
作用:向指定进程发送特定动作
选项:
-l 列出所有可以用的信号名称
-s 发送信号
9 杀死进程
1 重新加载
15 结束进程
查看系统资源
free
作用:查看内存使用情况
选项:
-h 人性化显示单位
-s 指定刷新时间
-c 指定刷新次数
uptime
作用:查看CPU的负载
netstat
作用:查看网络服务状态
选项:
-a 显示所有信息
-n 显示端口信息
-t 显示与TCP有关的信息
-u 显示与UDP有关的信息
-p 显示PID信息
Proto 协议名称
Recv-Q 接收数据包个数
Send-Q 发送数据包个数
Local Address 本地地址:端口号
Foreign Address 目标地址:端口号
State 状态
PID/Program name PID/服务名称
dmesg
作用:查看内核检测启动信息
vmstat
作用:查看系统资源使用情况
procs 进程字段
r 等待进程数量
b 不可以被唤醒的进程数量
memory 内存字段
swpd 虚拟内存使用量
free 未被使用的内存容量
buff 缓冲容量
cache 缓存容量
swap 交换分区
si 从磁盘中进程获取的容量
so 内存无法存储时,磁盘的进程占用量
io 磁盘的i/o(输入输出)
bi 磁盘读取的区块数量
bo 磁盘写入的区块数量
system 系统项目
in 每秒被终端进程使用的次数
cs 每秒执行时间的切换次数
cpu CPU的项目
us 用户占用CPU的数值
sy 内核占用CPU的数值
id CPU的空闲数值
wa 等待I/O所消耗的CPU数值
st 虚拟化占用的CPU数值
服务管理
服务:service
程序:daemon
1、system V 服务类型
采用是init脚本程序的处理方式
init机制进行程序和服务的管理
服务启动的分类
独立启动模式:服务器通过自己的程序文件进行独立启动,启动后常驻与内存中,提供给系统或网络用户访问,反应速度较快
超级守护进程启动:由xinetd提供集中管理机制,当用户请求访问时,由xinetd去唤醒相应的服务程序
好处是节省资源,缺点是响应速度慢,可能会有一点延迟
管理命令
service
格式: service 服务名称 动作
动作:
start 开启/启动
stop 关闭
restart 重新启动
status 查看服务状态
运行级别
0 关机
1 单用户模式
2 不支持网络的字符界面
3 支持网络的字符界面
4 保留
5 图形界面
6 重启
调用: init 运行级别
指定默认启动服务
chkconfig 服务名称 on 默认启动
chkconfig 服务名称 off 默认不启动
2、systemd
特点:
支持多核架构,可以同事启动多个服务,并且速度较快
可以自动解决服务的依赖性,减少工作量
systemd常驻与内存中,相应速度更快
将服务定义为服务单元(unit),并且将服务单元归类到不同的类型中
向下兼容旧版本
运行级别
服务管理
交互模式
systemd的配置目录
/usr/lib/systemd/system:每个服务最主要的启动脚本位置
/run/systemd/system:系统启动过程中产生的服务脚本
/etc/systemd/system:管理员根据主机需要所建立的执行脚本,优先级最高
systemd的服务单元的类型说明 unit
.service
一般服务类型
主要是系统服务,包含服务器本身所需要的本地服务和网络服务,也是最常见的服务类型
.socket
内部程序数据交换服务
通常用于本地服务,比如,图形化界面
因为此类型需要交互,所以启动时会有延迟
.mount/.automount
文件系统挂载相关服务
比如网络自动挂载、NFS文件系统挂载和文件系统关联性高的服务
.path
检测特定文件或目录的服务
比如,打印服务,需要通过检测打印机目录来启动打印功能
.timer
需要运行循环的服务
.target
需要执行环境类型的服务
一般都是一群unit集合
管理工具
systemctl
格式:
systemctl 动作 服务名称[.unit]
动作:
start 立即启动
stop 立即关闭
restart 重新启动
reload 重新加载
enable 设置为开机默认启动
disable 设置为开机默认关闭
status 查看服务运行状态
is-active 查看该服务是否运行
is-enabled 查看该服务默认启动状态
服务的当前状态
active (running)
有一个或者多个服务正在运行
active (exited)
仅指定一次就正常结束的服务,无需常驻内存
active (waiting)
需要等待其他服务来进行触发
inactive
目前没有运行
服务的默认启动状态
enabled
开机默认启动
disabled
开机默认不启动
static
该程序不可自己启动
mask
该程序不能启动,已经被强制注销
查看系统上所有的服务
格式:systemctl list-nuit-files 显示/usr/lib/systemd/system内的所有文件以及说明
systemctl list-units 显示已经启动服务单元
管理不同的操作系统环境
graphical.target
提供命令行+图形界面
multi-user.target
纯命令模式
rescue.target
在无法登录root情况下,systemd会启动一个临时的操作系统,此系统与源系统无关,可以通过该模式获取到root权限维护当前系统,如修改root密码
emergency.target
紧急处理系统错误,需要使用root登陆
补全:
动作 :isolate 切换环境
systemctl poweroff 关机
systemctl reboot 重启
systemctl suspend 挂机
systemctl hibernate 休眠
systemctl rescue 修复模式
systemctl emergency 紧急修复模式
systemctl get-default 查看当前操作模式
systemctl list-dependencies 查看服务之间的依赖关系
计划任务
概念:定时执行某些特定的任务操作
类型
例行性的任务:每隔一定的周期处理的任务
突发性的任务:处理完成一次之后就自动结束的任务
命令:
at:突发性的任务命令
需要保证系统已将安装了atd服务,并且已经开启才可以使用
crontab:例行性的任务命令
需要保证系统已将安装了crond服务,并且已经开启才可以使用
应用场景:
查询数据库的建立与更新
locate数据的建立,更新/var/lib/mlocate/数据库
缓存
定期循环清理缓存数据和临时文件
与网络服务相关的分析操作
检测凭证是否过期,检测网络主机是否存在
日志的轮询
用来主动将日志文件进行数据拆分,分别存放,可以更有效的记录信息和节省空间,做到提高读写性能的作用
日志分析
用来主动分析日志,并且发送邮件
RPM软件日志文件的建立
追踪记录更新的软件名称
at
格式: at [选项]
选项:
-c 计划任务的ID 查看计划任务的命令
-l 列出当前系统中的所有at任务
-d 删除一个计划任务
-m 当计划任务完成后,会发送邮件通知使用者
时间格式:
HH:MM 小时:分钟
HH:MM YYYY-MM-DD 小时:分钟 年-月-日
HH:MM [am|pm] [mounth] [date] 小时:分钟 上下午 月 日期 10am june 1
10pm + 3 days
命令:
设置好执行时间后进入at环境再次写入操作命令
ctrl + d 保存写入的命令并退出
命令:
atq 查看计划列表
atrm 删除计划任务
访问控制文件:
/etc/at.allow:存放可以使用的atd服务的用户名称
/etc/at.deny:存放不可以使用的atd服务的用户名称
服务名称
atd
crontab
格式: crontab [-u 用户名称] [选项]
选项:
-u 指定用户
-e 编辑计划任务
-l 查看计划任务
-r 删除所有的计划任务
编辑格式:
时间 + 命令(最好使用绝对路径)
时间格式:
分 时 日 月 周
0-59 0-23 1-31 1-12 0-7
特殊符号
* 代表任意
, 分割的时段 3,7
- 代表连续的时间段 3-7
/n 代表固定间隔 */2
配置文件
/etc/crontab 直接进入配置内设置计划任务,只有root可以使用,更为方便和直接
/etc/cron.d/* 每个软件的自己的计划任务存放位置
/var/spool/cron/* 每一个用户所使用crontab -e编辑的内容存放位置
固定时间固定任务使用
/etc/cron.monthly 每月
/etc/cron.daily 每天
/etc/cron.hourly 每小时
/etc/cron.weekly 每周
访问控制文件:
/etc/cron.allow:存放可以使用的crond服务的用户名称
/etc/cron.deny:存放不可以使用的crond服务的用户名称
服务名称
crond
sudo
概念
多用于普通提升权限使用,对于管理员用来说,更多的作用是为了获取不同的身份信息
定义:
为了使用户在当前环境中具有某些管理员的权限
格式:
sudo [选项] 用户 命令
/etc/sudoers
作用:用来声明可以提权的用户以及操作
内容
root ALL=(ALL) ALL
用户名称:声明系统可以使用sudo命令的用户
来源主机名称:声明该用户可以在那台主机链接到当前的主机中
可以切换的身份:声明该账户可以切换成为哪些用户
可以执行的命令:声明此账户可以执行哪些命令,命令需要使用绝对路径声明
注意:
!表示不能执行的命令
%用来声明后面的字符串为组名
选项:
-u 指定使用用户身份
-V 显示版本编号
-l 显示出自己的权限
-b 将需要执行的命令放入到后台运行
visudo
作用:修改sudo命令的权限文件,进超级用户可以使用
密码:
需要输入的密码为当前用户密码
日志
作用:
记录了系统的活动信息文件,比如,何时、何地、何主机、做了什么事情
记录了系统在什么时间由那个进程做了什么事情
概述:
日志的重要性
记录过往时间的记事本
解决系统方面的错误
解决网络方面的错误
常用的日志文件
/var/log/boot.log
记录本次系统开机启动的信息,不会保留上一次信息
信息内容主要包含系统内核检测与启动硬件的相关信息以及启动内核支持的相关功能
/var/log/cron
记录crontab是否被执行,且执行过程中是否有错误,/etc/crontab是否存在语法错误等
/var/log/dmesg
记录系统启动过程中产生的各种信息
/var/log/lastlog
记录系统上所有账户的最近登录信息
/var/log/maillog /var/log/mail/*
记录当前系统中所产生的邮件往来信息
/var/log/messages
一般日志文件,系统发生的错误信息都会被记录在该文件中,是运维人员优先查看的日志文件
/var/log/secure
只要涉及到需要输入用户名密码的软件或程序,无论登录成功与否,都将会被记录
/var/log/wtmp
记录正确登录系统时的账户信息与错误登录系统时的账户信息
/var/log/httpd/* /var/log/sshd/*
不同网络服务所对应的专属日志文件记录位置
日志文件所需要的相关服务和进程
服务:
systemd-journald.service 由systemd提供,主要记录信息的记录者
rsyslog.service 负责收集登录信息和网络服务等信息
logrotate 日志的文件轮询功能
记录日志文件的服务:rsyslog.service
配置文件:/etc/rsyslog.conf
格式:
服务名称
kern 记录内核所产生的信息,主要包含硬件检测以及内核版本与功能
user 用户产生的信息
mail 邮件所产生的信息
daemon 系统服务产生的信息
auth 认证与授权相关信息
syslog 系统日志相关协议的信息
lpr 打印机相关信息
news 服务器相关信息
uucp 早期的Unix之间进行数据交换的信息
cron 计划任务cron,at等产生的信息
authpriv 与安全相关的信息
ftp 与FTP服务相关的信息
http 与HTTP服务相关的信息
local 0-7 保留给主机用户使用的日志文件信息
连接符
. 代表了比指定等级更为严重的等级统统记录下来(包含指定级别)
.= 代表了指定等级
.! 代表不等于,除了指定等级,其他统统记录下来
服务等级
debug 7 用来排错是产生的信息,安全等级最低
info 6 仅是一些基本的信息说明
notice 5 正常信息,但等级比info级别高
warning(warn) 4 警告信息,可能会出现问题,但不至于影响某个服务的运行
err(error) 3 一些重大的错误信息,例如配置文件参数错误造成服务无法启动
crit 2 比err等级更为严重的信息
alert 1 严重问题,可能会影响到系统正常运
emerg 0 系统几乎已经处于宕机状态,最为严重的错误级别
none 不需要记录的信息
位置
日志文件所记录的位置
重启
systemctl restart rsyslog.service
日志轮询
概念:
用来主动将日志文件进行数据拆分,分别存放,可以更有效的记录信息和节省空间,做到提高读写性能的作用
规定条件
时间:规定一个特定时间段,完成日志分割
大小:规定一个指定容量,完成日志的分割
文件特点:
将现在已有的日志文件重命名后,创建一个新的文件记录信息
a
a改成a1 创建a
a1改成a2 a改成a1 创建a
配置文件
/etc/logrotatae.conf 主配置文件
/etc/logrotate.d/ 该目录中的所有文件都会被主动加载到/etc/logrotatae.conf文件中使用
文件内容
weekly 每周对日志文件进行轮询处理
rotate N 保留N个备份文件
create 需要给日志进行改名和创建新的空文件继续存储
dateext 被轮询的文件名添加时间参数
compress 被修改的日志文件是否需要压缩操作
include 对指定目录中的所有文件都执行轮询任务
minsize 指定轮询的文件容量的标准
{ } 表示针对某个特殊的日志进行单独设置
强制轮询
logrotate -vf /etc/logrotate.conf
journalctl
作用:查看日志信息
选项:
-n 查看最近几行的内容
-p 针对信息的重要性排序查看
虚拟机网络
VMnet0 桥接模式
VMnet1 仅主机
VMnet8 NAT模式
NAT:网络地址转换 Network Address Translation
虚拟机与主机关系:只能单向访问,虚拟机可以通过网络访问主机,主机不能通过网络访问虚拟机
虚拟机与网络中的其他主机的关系,只能单向访问,虚拟机可以访问网络中的其他主机,其他主机不能通过网络虚拟机
虚拟机和虚拟机之间的关系:互相不能访问,虚拟机各自完成独立相互之间无法通过网络连接
桥接模式:Bridged Adapter
在所有的关系中,都可以进行互相访问,可以理解为独立真实的主机,有自己独立的IP地址等
主机模式:Host-only Adapter
此模式为高级模式,因为配置较为复杂,需要扎实的网络知识,不建议使用
网络参数
配置类型
手动配置
优点:
可以明确声明自己的网络参数
缺点:
容易造成网络冲突
自动配置
优点:
网络参数的灵活多变
配置方法
临时配置
通常通过命令来实现
临时生效,重启设备后失效
ifconfig
作用:查看或者设置网络参数
格式:ifconfig [网卡名称 IP地址 netmask 子网掩码]
永久配置
永久修改IP地址
/etc/sysconfig/network-scripts/ifcfg-网卡名称
TYPE 网卡类型
DEVICE 网卡名称
BOOTPROTO=static/dhcp 网络参数获取方式
static 手动获取
dhcp 自动获取
ONBOOT=yes/no 是否自动启动
IPADDR 设置IP地址
NETMASK 设置子网掩码
GATEWAY 设置网关
DNS1 设置DNS服务器地址
HWADDR 设置MAC地址
NM-CONTROLLED 网卡守护进程
UUID 通用唯一识别码
重启
ifdown 网卡名称 关闭网卡
ifup 网卡名称 开启网卡
ping
作用:检测网络连通性
格式:ping [选项] 参数
选项:
-c 指定次数
-i 指定间隔时间
-W 指定等待时间
SSH
概念:远程连接工具,服务名称为sshd
作用:提供安全加密的远程连接管理
组成: openssh 提供ssh服务的功能
openssl 提供加密程序
端口:tcp 22
配置文件:/etc/ssh/sshd_config
配置项:
Port 22 指定服务端口
ListenAddress 0.0.0.0 监听地址
PidFile /var/run/sshd.pid sshd中的PID文件存放位置
LoginGraceTime 2m 连接是出现的密码界面错误时间,默认单位是秒
Compression yes 是否使用压缩指令
HostKey /etc/ssh/ssh_host_rsa_key ssh version 1使用的私钥
HostKey /etc/ssh/ssh_host_ecdsa_key ssh version 2使用的RSA私钥
HostKey /etc/ssh/ssh_host_ed25519_key ssh version 2 使用的DSA私钥
KeyRegenerationInterval 3600 需要间隔多久进行从新连接一次,单位为秒
ServerKeyBits 78 service key 的长度
SyslogFacility AUTH 当有人使用ssh登录系统时,ssh会记录信息
Loglevel INFO 登录记录的等级
PermitRootLogin no 是否允许root用户登录
UseLogin no 是否允许用户登录
SrictModes yes 使用者钥匙变更后,客户端不允许联机
RSAAuthentication yes 是否使用纯RSA认证
PubkeyAuthentication yes 是否使用公钥认证
AuthorizedKeysFile .ssh/authorized_keys 不需要密码登录是账户存放档案的名称
RhostsAuthentication no 本机系统不使用远程主机文档认证(.rhosts)
IgnoreRhosts .ssh/.rhosts 是否取消认证
PasswordAuthentication yes 是否需要密码验证
PermitEmptyPassword no 是否允许空密码登录
PrintMoth no 登入后是否显示信息
AddressFamily any 指定sshd应用地址簇 any=默认 inet=ipv4 inet6=ipv6
AllowGroups yes 是否允许使用组身份登录
AllowTcpForwarding yes 是否允许TCP进行转发
GSSAPIAuthentication no 是否允许基于GSSAPI(通用安全服务应用程序接口)的用户认证
GSSAPICIeanupCredentials 是否在用户退出登录后自动销毁用户认证缓存
MaxAuthTries 指定每个连接最大允许的认证次数
功能模块
ssh
作用:安全远程连接命令
格式:ssh [选项] [参数] 服务器用户名称@目标地址
选项:
-1 强制使用ssh协议版本1
-2 强制使用ssh协议版本2
-4 强制使用IPv4地址
-6 强制使用IPv6版本
-A 开启认证代理转发功能
-a 关闭认证代理转发功能
-b 使用本机指定地址作为对应连接的源IP地址
-C 请求压缩所有数据
-F 指定ssh指令的配置文件
-f 后台执行ssh指令
-g 允许远程主机连接主机的转发端口
-i 指定身份验证
-l 指定连接远程服务器登录用户名称
-N 不执行远程指令
-o 指定配置项
-p 指定远程服务器上的端口
-q 静默模式
C/S架构
client-server
客户端/服务器架构
B/S架构
browser-server
浏览器/服务器架构
iptables -F 临时清空防火墙规则
setenforce 0 临时关闭SELinux
Wi-Fi
Bluetooth 蓝牙 blue蓝色 tooth牙齿
background 背景 back后面、后退、反面、背部 ground地面、范围
Notifications 通知
notifications popups 弹出通知 ON打开 OFF关闭
lock screen notifications 锁屏通知
search 搜索
region&language 地区及语言
universal access 普及 universal普遍的、全世界的 access入口、通道
online account 在线 账户
add on account 添加账户
privacy 隐私、秘密
sharing 共享、公用
sound 声音
power 权利、控制力
network 网络
devices 设备
details 详细说明、细节
unknown
未知的 filesystem type 'linux_raid_member’成员、部件
/1: target is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
target 对象、目标 case情况、事实 useful有用的
exclusively. Mounted filesystem?
Command does not accept argument: /dev/sdb1.
接受、论据
mounted安装好的、准备
argument参数
count计数
block代码块
buff 缓存
available
adj. 可获得的;有空的;可购得的;能找到的;
start开始
session会话
启动root用户 870的会话
pam_unix验证模块
rotate log file weekly
每周日志文件轮询
foreign 目标 、外来的
faulty 错误、故障
failed失败、不及格
failsafe 故障安全
directory 目录
cannot 不能
remove 删除
dangerous 危险的
operate 操作
recursively递归
override 优先
command 命令
found 找到
access 通道、访问、入口
modfiy 修改、修饰
change 改变、更改
pattern 样例、模式
input 输入
output 输出
skipping跳过、跳绳
found 找到
exist 存在
account账户、报告
currently 当前、目前
available可获取的、有效地
process 进程
add添加
consition环境、条件
config配置文件
unreachable不能到达的
Auth授权、认证
service daemon 服务器守护进程
passphrase 密码、密码短语、通行码
verification验证
lost验证
问题:rm -rf 1.txt /etc 这样就把/etc目录删了
给网卡复制网络配置参数
cp -p /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens37
给dhcp复制配置参数
cp -p /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
systemctl restart dhcpd.service
journalctl -xe
control process exited with error code
Wi-Fi
Bluetooth 蓝牙 blue蓝色 tooth牙齿
background 背景 back后面、后退、反面、背部 ground地面、范围
Notifications 通知
notifications popups 弹出通知 ON打开 OFF关闭
lock screen notifications 锁屏通知
search 搜索
region&language 地区及语言
universal access 普及 universal普遍的、全世界的 access入口、通道
online account 在线 账户
add on account 添加账户
privacy 隐私、秘密
sharing 共享、公用
sound 声音
power 权利、控制力
network 网络
devices 设备
details 详细说明、细节
unknown
未知的 filesystem type 'linux_raid_member’成员、部件
/1: target is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
target 对象、目标 case情况、事实 useful有用的
exclusively. Mounted filesystem?
Command does not accept argument: /dev/sdb1.
接受、论据
mounted安装好的、准备
argument参数
count计数
block代码块
buff 缓存
available
adj. 可获得的;有空的;可购得的;能找到的;
start开始
session会话
启动root用户 870的会话
pam_unix验证模块
rotate log file weekly
每周日志文件轮询
foreign 目标 、外来的
faulty 错误、故障
failed失败、不及格
failsafe 故障安全
directory 目录
cannot 不能
remove 删除
dangerous 危险的
operate 操作
recursively递归
override 优先
command 命令
found 找到
access 通道、访问、入口
modfiy 修改、修饰
change 改变、更改
pattern 样例、模式
input 输入
output 输出
skipping跳过、跳绳
found 找到
exist 存在
account账户、报告
currently 当前、目前
available可获取的、有效地
process 进程
add添加
consition环境、条件
config配置文件
unreachable不能到达的
Auth授权、认证
service daemon 服务器守护进程
passphrase 密码、密码短语、通行码
verification验证
lost验证
问题:rm -rf 1.txt /etc 这样就把/etc目录删了
远程连接失败:
修改ip地址
临时修改ipconfig ens33 192.168.1.29/24
永久修改 /etc/sysconfig/network-scripts/ifcfg-ens33
修改ens33文件中的BOOTPPROTO为自动获取static才行
桥接模式:设置ip即可
NAT模式:虚拟机监视器左上角编辑—》虚拟网络编辑器—》查看NAT的ip–>返回虚拟机设置和NAT一样的ip
确保电脑和虚拟机在同一网段
ping自己
ping别人
测试连通性
yum要挂镜像才能使用、挂载上
如果进入虚拟机进入emerg模式,可能是镜像挂载失败,重新挂载即可
报错信息
取消挂载失败—>显示项目繁忙
使用exit退出,关闭终端后重新取消挂载
取消挂载点—>挂载点里面文件全部消失,会存到了磁盘分区,重新挂载后会出现在挂载点
mdadm阵列时显示资源繁忙
----->不能先挂载,阵列完之后再挂载
挂载mount /dev/md0 /1 只挂载一个目录
/dev/md0 /1 ext4 defaults 0 0
挂载不上时,格式化一下其他类型,xfs—>ext4
这时在挂载
Device /dev/sdb1 excluded by a filter.
阵列创建时不能挂载
mdadm --create /dev/md1 --auto=yes --level=5 --chunk=4K --raid-devices=2 /dev/sdc{1…2}
mdadm --create /dev/md2 --auto=yes --level=5 --chunk=4K --raid-devices=3 /dev/sdc{3…5}
mdadm --create /dev/md0 --auto=yes --level=5 --chunk=4K --raid-devices=2 /dev/md1 /dev/md2
———————————————————————————————
lvm
create创建 scan查看、浏览、扫描 display显示
extend扩展 reduce减少
pv创建时不能挂载
pvcreate /dev/sdb1
pvscan
pvdisplay
pvremove
vgcreate /
给网卡复制网络配置参数
cp -p /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens37
给dhcp复制配置参数
cp -p /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
systemctl restart dhcpd.service
journalctl -xe
control process exited with error code