- 刀片服务器每一个刀片都可以作为单独的服务器使用,分为全刀和半刀
- 服务器按照厚度分类(4.445cm/U)
- 1U
- 2U
- 3U
- ……
- 服务器的特点
- RISC:速度快,占用空间小,功耗低
- PCle扩展卡:可以外接显卡,和提高性能的扩展卡
一、CPU
Linux查看CPU
- 外频匹配主板速度
- CISC:inerl i3 i5 i7 AMD r5 r7
二、内存
- Cache:读取磁盘内容
- Buffer:更快的写入磁盘
三、硬盘
四、主板
五、BMC
一、虚拟化架构
-
裸金属型虚拟化(原生架构)
- Server
- VMware ESXi //直接基于硬件
- 如果电脑安装了多台ESXi,可以是使用VSophere来进行管理
-
Xenserver
-
宿主型虚拟化(寄居架构)
- PC
- Workstation和Virtualbox都是基于Windows然后底层才是硬件
-
操作系统虚拟化(容器技术)
-
Docker //docker是容器的一种但是不能代表容器
-
Podman(红帽)
-
直接使用物理机资源,速度快,但是容易发生资源抢夺,通过LXC技术的cgroup/namesspace限制容器的资源限制,防止容器无限制的使用物理机资源
-
本地运行Centos的容器系统,下载
- docker pull centos/httpd
-
创建centos的时候就可以限制占用的资源
-
create images
- commit
- dockerfile
-
-
混合虚拟化 KVM,属于特殊类型的寄居架构
-
rhel5 kernel的核心 2.6.18
- 5.4以前支持Xen
- 之间同时支持
- 6以后仅仅支持KVM
-
rhel6 kernel的核心 2.6.32
-
rhel7 kernel的核心 3.10.0
-
rhel8 kernel的核心 4.18.0
-
Linux------xen/kvm-------Windows10
-
Windows10--------VMware-------Linux
-
需要修改内核,通过KVM技术虚拟出一台Windows
-
-
linux安装虚拟机
- xen/kvm为两种解决方法,这时候为xen/kvm为VMM
1、全虚拟化KVM
Ring0 1 2 3 标识CPU的运行级别,0级别最高
-
架构和虚拟化创建都在Hypervisor
-
ring3为用户经常使用的空间用户态
-
ring0内核态
-
需要提权就需要从用户态切换到内核态,变向提权
-
可以控制比自己权限低和本身自己
-
ring 1和 ring 2为驱动
-
VMM负责捕获异常,应用越权
-
全虚拟化:VMM做异常捕获 、翻译给硬件、模拟,让虚拟机认为自己是物理机 =====两种模式都支持
2、半虚拟化XEN
-
只做了翻译工作
-
XEN需要修改内核,修改Guest OS,修改内核所以代码需要公开,所以说不可以安装win10
-
修改内核为了替换掉不能虚拟化的指令
-
明确告诉系统是虚拟机,通过hypercall直接和底层虚拟化进行通信
-
效率是要高于全虚拟化的,省去了两个工作
3、Xen VS KVM(半虚拟化 VS 全虚拟化)
-
DomU受Dom0控制
-
Dom0:特权虚拟机
-
基于KVM加QEMU技术,使得虚拟机速度非常接近物理机,实现全虚拟化
-
QEMU可以作为一种托管
- KVM底层是Linux属于寄居
- XEM底层可以是Linux或者hardware就可以属于寄居或原生
- Xen支持虚拟化和半虚拟化
- Xen由于安全性所以的调用都需要Dom0通过
- 前端驱动,后端驱动作用类似于大使馆,需要通过驱动来进行交互,一次同意之后不需要再次申请
3、硬件辅助虚拟化
- Intel
- IO-through速度最快,但是需要底层硬件支持
二、虚拟化开源主流技术
三、容器
2008 Linux容器 LXC
2013 Docke底层依赖于LXC技术
四、虚拟化
1、Xen
剑桥大学研发
内核时定制的
首先安装Dom0,由Dom0控制DomU,Dom0类似于防火墙,缺点是因为都经过Dom0,所以速度较低
2、KVM
红帽收购
5.0到6.0版本之间Zen和KVM全部支持
6.0版本以后仅提供KVM虚拟机制
一、系统目录结构和文件属性
创建一个账户时
- /home/username
- /etc/passwd /etc/shadow
- /var/spool/mail/username
/etc/skel/:里面存放模板,每建一个用户的家都要给一套模板
rm -rf /home/test
rm -rf /var/spool/mail/test
- boot目录:内核文件、驱动
- dev目录:设备、存储
- c表示特殊设备
- b表示块设备
- home目录:用户家目录
- etc目录系统启动、用户管理、规则配置文件
- lib目录:内核模块文件,32位库,内核模块在/lib/modules
- media目录:rhel6临时挂载设备,rhel7开始以后放在/run/media/username
- mnt目录:临时挂载点
- proc目录:基于内存展示信息的目录
- 数字代表进程
- 其他的代表和内核相关的文件
- 不可以直接写入文件
- sys目录:存放主机硬件信息,虚拟化信息
- power : 电源管理
- 也没有办法创建文件夹
- tmp目录:类似于bin 10天自动删除
- 针对普通账户临时文件存放,面向所有人
- 备份放在tmp里,可以实现超时自动删除
- /usr/lib/tmpfiles.d/tmp.conf 针对tmp的监控文件
- var目录:业务数据
- /var/tmp目录:类似于sbin 30天自动删除
- 面向系统程序和超级用户
- /var/log目录:大部分的日志
- /var/lib目录:服务或应用相关的业务数据
- /var/tmp目录:类似于sbin 30天自动删除
- usr目录:用户自定义文件夹,主要用于软件安装
- 类似于 windows 下的 program files 目录。
二、查看信息
查看cpu
查看mem
查看分区
文件系统
5 ext3
6 ext4
ls----显示目录文件
pwd----显示当前工作目录
cd----切换工作目录
touch----创建文件,更新文件时间戳
mkdir----创建目录
rmdir----删除空目录
rm----删除文件
mv----移动,为文件或目录重命名
more---- 分页查看
一、指令分类
指令分为内部指令和外部指令
- 内部指令:Shell自带的命令,比如cd、history,内部命令是不可删除的
- 外部命令:一些软件安装后添加的命令,如is、cp,外部命令可以根据安装包或指令的路径删除
二、获取帮助信息
-
man 命令字
-
help 内部命令
三、常用命令
1、more
-
简介
-
语法格式
-
参数
-
适用于
- 翻页快速浏览
- 查看二进制文件
2、less
-
简介
-
语法格式
-
参数
-
适用于
- 快速查找
3、head
-
简介
-
语法格式
-
参数
4、tail
-
简介
-
语法格式
-
参数
5、grep
-
简介
-
语法格式
-
参数
6、du
-
简介
-
语法格式
-
参数
7、wc
-
简介
-
语法格式
-
参数
8、alias
-
简介
-
语法格式
-
unalias
9、find
-
简介
-
语法格式
-
参数
-
综合使用
10、gzip/gunzip
-
简介
-
语法格式
-
参数
11、bzip2/bunzip2
-
简介
-
语法格式
-
参数
12、tar
-
简介
-
语法格式
-
参数
一、Linux系统下的软件分类
二、应用程序的目录结构
/usr/local/bin 本地增加的命令
三、挂载光盘
-
一次性挂载
-
永久挂载
-
在最后一行添加
-
将文件种没有挂载的设备挂载上,重新读取fstab文件,重新加载
四、源码包安装
源码包的优点
1、获取最新的软件版本、即使修复BUG
2、可以灵活定制软件功能
使用场景
1、需要安装新版本的应用程序
2、保证安全性
3、需要为应用程序添加新的功能
源码包的安装过程
https://blog.csdn.net/YangYubo091699/article/details/configure --prefix=/opt/mlterm可以指定安装目录
- 安装rpm包的网站
-
撰写SPEC文档,就可以编写自己的RPM包
-
RPM包的命令格式
- firefox-68.1.0-1.el7.centos.x86_64.rp,m
- 软件名称-版本号-发行次数-硬件平台.扩展名
-
必须在目录下才能进行安装,管理和升级,而yum则不需要
一、首先需要挂载ISO镜像
导入镜像文件,确保设备状态以链接
rhel6之前临时设备(硬盘、U盘)挂载点:/media/
rhel7以后临时挂载点为:/run/media/root
-
新建光驱文件夹
-
通过mount进行挂载
-
挂载完成以后,就可以通过rpm安装镜像里的rpm包
二、rpm常用功能
三、rpm的拓展功能
四、故障维护
1、重建RPM数据库(初始化数据库)
2、恢复missing的文件(扩展)
- 第一种方法重新安装RPM包
- 第二种方法
- 把rpm包种对应的文件提取出来,拷贝到对应位置
- 通过使用rpm2cpio命令可以将RPM软件包转换成cpio格式,cpio是一个标准工具,它用于创建软件归档文件和从档案文件中提取文件。其中选项“i”表示提取文件、“v”表示指示执行进程、“d“表示根据包中文件原来的路径建立目录,如果需要保持源文件的更新时间还可以增加选项”m”
- -aV系统变化过的包文件
- -V选项增加-a就可以列出当前系统中安装后,所有变化过的包文件,可以以此来检查文件包的完整性,安全性定
- rpm -aV | grep bin(检查bin目录中变化过的文件)grep missing
- -K安装包校验(–checksig) -v显示更多信息
- rpm -K nmap.86_64.rpm 显示ok代表检验通过
- 把rpm包种对应的文件提取出来,拷贝到对应位置
3、RPM数据库维护(扩展)
4、入侵后的常规操作
-
对于要检查的文件或命令,找出它属于那个软件包
-
使用选项查看每个文件的信息,使用grep命令提取对于文件信息
- 得到md5sum值
-
检查实际的文件,查看内容是否被更改过:
yum所在目录 /usr/bin/yum
noarch:不区分架构
强制结束yum进程
一、仓库源的要求
- 仓库源必须存放在/etc/yum.repos.d/目录中
- 仓库源文件的后缀必须以‘.repo’结尾
- 同一台主机,不要起相同名字的仓库源
二、repo文件格式
- 本地yum源
配置完成后执行来清空缓存信息,使得repo文件生效
- 阿里源
三、yum的拓展功能
四、制作本地YUM源
1、导入mplayer包
2、解压
3、
- 针对文件夹执行,文件夹里是rpm包,用于区分安装包的依赖关系,生成repodata
- repomd.xml索引,关系源,yum用来管理包
- 压缩包辅助xml做资源调用
4、编写repo源
yum clean all
五、rar和unrar
- rar
- unrar
六、更新
1、更换7.9光盘
:查看有那些包可以更新
-
更新kernel
2、利用互联网升级
- 使用yum update -y可进行系统升级
七、嵌套虚拟化安装
需要在虚拟机设置里把CPU虚拟化打开
1、安装底层环境
2、安装软件可以使用ssh远程发送
3、卸载虚拟化
一、账户分类
认证方式(pam):如果账户不存在,不进行密码验证,windows则进行双重认证
1、用户
- 超级用户:UID=0 权限最大
- 程序用户
- RHEL5/6,UID=1-499;
- RHEL7,UID=1-999(其中1-200为系统占用)
- 普通用户
- RHEL5/6,UID=500-65535;
- RHEL7,UID=1000-60000
2、组
- 基本组:默认组,有且今有一个,等号后面的是基本组
- 附加组:可以没有,可以有一个或多个
二、passwd文件
三、shadow文件
行数一定和passwd一样,而且每一行都相互对应
四、group文件
五、相关指令
1、useradd username
-
新建账户时,系统会将中的目录及文件拷贝到新建用户的家目录中
- 可以通过修改,从而实现创建新用户时家目录的格式,生成新生成用户按照模板适配,旧用户不做改变
-
在中,新建用户名的邮箱
-
在passwd、shadow和group文件中,增加用户的信息
2、userdel -r username
- 不加-r选项,只删除passwd和shadow文件中的用户信息
- 加-r选项,删除所有信息,包括邮箱、家目录
3、usermod
对已存在的账户做属性修改
- -s:修改用户的登录Shell
- usermod -s /sbin/nologin curry :不允许账户登录
- usermod -s /bin/bash : 允许登录
- -L 账户锁定
- usermod -L james
- 没有密码会卡在输入密码过程中
- 锁定以后,/etc/shadow文件里第二栏密码位前面增加
- usermod -L james
- -U 账户解锁
- usermod -U james
4、passwd
- root
- 不需要知道当前的密码
- 设置新密码的时候,不需要遵循密码规则
- 普通用户
- 需要知道当前用户密码
- 设置新密码时,必须遵循密码要求
5、groupadd
- 增加新组,创建时通过可以指定GID
6、groupdel
- 设置为基本组。则不允许删除
7、cut
- 主要用于按列提取文本字符
8、chage
用户创建时,默认的属性(比如UID、GID,是否会创建家目录、创建邮箱等)都是通过/etc/login.defs文件控制的,修改此文件的属性,会影响以后创建的所有用户,如果需要对现存的账户做属性修改,可以结束chage命令。修改用户的密码策略,也可通过编辑/etc/shadow文件需改(不推荐)
-
修改用户的密码策略
修改/etc/shadow:先保存后强制退出(wq!)
六、文件、目录权限及归属
-
权限
文件 目录 读取r 读取文件内容 列出目录内容 写入w 修改文件内容 添加删除文件 执行x 运行程序、脚本 进入目录 -
归属
- 属主:拥有该文件或目录的用户
- 属组:拥有该文件或目录的组
1、相关命令
- chown
-
chgrp
2、相关知识
- 只要用户目录有对应的权限。那么在此目录内,用户可以删除、修改root的文件
- 文件目录权限为rwx
- 针对文件
- r表示可以打开和读取文件
- w表示可以对文件内容写入修改(但不能删除,除非文件的父目录有对应的权限)
- x表示文件可执行
- 针对目录
- r表示可以列出目录内容
- w表示可以在目录中增删改查(即删除文件)
- x表示可以进入目录,同时可以查看目录中文件的详细信息
- 针对文件
- 文件属性当中第十一个字段为扩展属性
- 代表没有扩展属性
- 代表设置了ACL扩展属性
七、扩展权限控制
因为默认的属主属组只能控制一个用户和组,无法针对每个用户做到权限控制,所以借助ACL属性,完善权限控制
一、MBR和GPT
1、MBR(主引导记录)
-
缺点
- 空间限制:支持单块磁盘容量不超2.2TB
- 最多只能创建4个主分区
-
介绍
-
MBR(提供磁盘引导位置512 bytes)
-
446+64+2组成
-
446:boot启动引导项(windows的c盘,Linux的boot)(80 20以前)
-
64:分区(80到00结束)
- 每一个分区至少有16个字节做描述信息(最多只能创建4个分区)
- 默认主分区
- 可以把最后一个设置为扩展分区,在里面创建逻辑分区
-
2:结束位,引导结束(55 aa)
-
-
-
LBA64以下
- 物理分区
- 扩展分区(不可写数据,有且只有一个)
- 逻辑分区(sda5)
-
2、GPT(全局唯一标识分区表)
-
有备份信息,在启动的时候如果主要信息出错,会从备份信息中调取,重新引导,自动修复
-
单块硬盘支持8ZB
-
Protected GPT:声明自己是GPT,防止MBR工具管理,造成损坏(512字节,也有引导作用)
-
LBA1:存放引导的位置,定义了分区在什么地方,安装那些系统,多系统如何进行引导,(备份为LBA-1)
-
LBA2-LBA33:每个区域都有512个字节作为描述(4个Entry作为分区描述信息,每个占128个字节),可以支持最少128个分区(备份为LBA-33—LBA-2)
-
LBA34开始
- 存放数据
二、磁盘基础
1、Linux将磁盘和分区光驱等设备表示为文件
- /dev为设备文件存放目录
- sd表示usb、sata、scsi、或者sas接口磁盘设备
- a表示第一个硬盘 第二个为b
- 5表示第一个逻辑分区1234代表4个主分区
- 在GPT中,只有主分区 ,从1开始编号
- vda为嵌套虚拟磁盘
三、RHEL/CentOS默认使用的文件系统
1、EXT4/ext3/ext2:第四代扩展文件系统,用于数据的存储
- 小文件小目录
2、XFS高性能的日志文件系统(使用率最高)
- 空间只能扩大不能缩小(针对逻辑卷)
- 针对大目录大文件(针对小文件小目录处理较为欠缺)
3、SWAP:交换文件系统,作用类似于虚拟内存
- Windows虚拟内存必须存在,否则不能正常启动
- linux虚拟内存为了临时弥补物理内存的不足
四、fdisk分区工具的使用
1、Fdisk(交互式)
-
MBR和GPT都适用
-
传统磁盘分区实用程序
-
利用基于提示的交互式用户界面
-
必须以正在分区的磁盘为参数执行示例:fdisk /dev/sda
2、Parted(一次生效)/gdisk(交互式)
- 偏向于GPT
- 更强大但更复杂的分区实用程序
- 支持GPT和2TB+分区
- 可以检测、创建、删除、调整并移动包含swap、ext[2,3,4]、reiserfs和VFAT文件系统的分区
五、相关命令
1、lsblk
-
介绍
part:分区 lvm:逻辑卷
监测磁盘健康情况
-i 显示设备的身份信息(SN厂家等信息) -a 显示设备的全部SMART信息 -x 显示设备的详细信息 -H 查看磁盘的健康状态
5、
-
查看xfs文件系统
6、
- ext指定别名
7、
-
xfs指定别名、UUID
8、
- 查看所有已使用或已挂载的设备(已创建但是未格式化不显示)
9、
-
格式
-
功能
-
常用选项
8、命令对比
七、创建磁盘分区
1、添加并识别硬件设备
- fdisk -l 可以看到新添加的设备
2、创建分区并识别分区
-
fdisk /dev/sdb
- 选项
-
:刷新,可以使kernel重新读取分区表。如果不添加路径,默认刷新整个磁盘分区
- rhel5和rhel7识别新分区通过partprobe识别,rhel6识别新分区通过partx识别
- 刷新后,可以查看文件是否识别新分区
3、制作文件系统
-
或
4、制作磁盘标签(option)
5、创建挂载点
-
:查看所有已使用或已挂载的设备(已创建但是未格式化不显示)
6、将分区信息写入文件系统分区表
-
-
查看设备信息时使用blkid指令
7、挂载文件系统
八、删除磁盘
虚拟机关机,移除完磁盘再还原快照
1、设备下线
2、编辑fstab,给对应的磁盘做注释
3、删除挂载点
4、
九、实验操作
1、建立ext类型
- fdisk /dev/sdb
- 刷新磁盘分区表
-
制作文件系统
-
挂载
-
临时挂载
-
永久挂载
-
2、建立xfs文件系统
3、创建扩展分区
-
总结
-
创建扩展分区
- 创建逻辑分区
-
格式化v
十、创建虚拟内存
-
分区类型的swap(效率高弹性差)
-
文件类型的swap(效率低弹性高)
cat /proc/partitions
文件创建出来的swap通过blkid、lsblk、cat /pro/partitions是看不出来的
- 管理方法
- 管理员可以为用户做能使用的磁盘空间进行配额限制,每一个用户只能使用最大配额范围内的磁盘空间
- 对用户存储文件数量的限制
- 对用户存储文件大小的限制
- 删除数据,格式化数据删除的是block区域
- 可以通过数据还原软件根据inode还原block区域的数据
- :使用随机字符串进行文件覆盖
-
分配单元大小
- 存放小型数据,如文本文档,建议使用默认4K
- 存放大型数据,建议使用更大的单元大小(占用区域较小,文件连贯性强)
一、EXT
1、配额说明
-
配额只能针对普通用户和用户组,对root无效
-
配额只能针对分区,不能针对某个目录(ext)
-
即可限制block,也可限制inode
-
查看当前磁盘有没有配额
2、前提条件
-
内核支持
-
系统安装quota工具
3、建立过程
①、挂载的同时需要为文件系统添加支持配额的选项
②、在分区中生成配额文件quota.user(针对用户)和quota.group(针对组)
③、为用户建立配额信息
④、开启/关闭配额功能
-
/
-
-
-a表示开启支持配额功能所有分区
-
还需要增加权限
-
⑤:配额查看
-
:只查看用户的配额信息
-
:之查看组的配额信息
-
:查看设备内的配额信息
4、关闭quota限制
二、XFS
1、针对用户和组做quota限制
-
挂载的同时需要为文件系统添加支持配额的选项
配额限制即可通过mount指令一次性添加,也可写入fstab,永久使用
-
设备启用配额,需要将文件系统重新挂载
-
对用户设置配额
2、针对项目(目录)做quota限制
-
挂载的同时需要为文件系统添加支持配额的选项
配额限制即可通过mount指令一次性添加,也可写入fstab,永久使用
-
设备启用配额,需要将文件系统重新挂载
-
-
对单一目录设置配额(project)
调用project命令创建一个project,要将grpquota的参数取消,然后加入prjqupta
①、指定专用标识符与目录的对应在
②、规范项目名称与标识符的对应在
③、初始化项目名称
-
查询某个project的配额使用情况
-
列出目前系统的给个文件系统,以及文件系统的quota挂载参数支持
-
暂时取消XFS文件系统的quota限制功能
3、移除XFS文件系统的quota限制
三、EXT和XFS的对比
一、 LVM概述
-
PV物理卷
-
物理卷可以由整个磁盘也可以是独立分区转化而成
-
物理卷包括了许多默认大小为4MB的PE基本单元(和Windows的分配单元大小差不多)
-
-
VG卷组
-
卷组是由一个或多个物理卷组成的整体
-
-
LV逻辑卷
-
从卷组中取出一部分空间,可以建立文件系统
-
二、LVM管理命令
三、结构图
四、实验操作
1、逻辑卷创建
①、LVM底层文件系统标签为
②、转换为分区并识别后
-
将磁盘分区初始化为物理卷
-
将初始化的物理卷加入卷组
-
在已有的卷组中,创建逻辑卷
-
可以进行格式化
注意路径为卷组名称加逻辑卷名称
-
设备挂载
注意:不要股灾sdb3,需要挂载/dev/yangvg/yanglv
-
和时,必须指定卷组和逻辑卷名称,逻辑卷指定大小
2、逻辑卷拉伸及缩小
①、卷组空间足够分配给逻辑卷时,拉伸LVM分为两步
- 拉伸逻辑卷
- 通知文件系统
②、卷组空间不够分配给逻辑卷时,拉伸LVM分五步
- 新建磁盘分区或磁盘
- 将新建磁盘或分区初始化为物理卷
- 拉伸卷组
- 拉伸逻辑卷
- 通知文件系统
一、移除普通设备
- 如果不存在物理卷则跳过3-8
-
查看已挂载设备
-
下线设备
-
如果有逻辑卷则执行啥看已存在的逻辑卷
-
卷组名/逻辑卷名
-
查看卷组
-
删除卷组
-
查看物理卷
-
删除物理卷
-
删除对应分区
-
刷新磁盘分区表
-
编辑
二、删除swap
-
关闭虚拟内存
-
删除对应文件
alt=“image-20220314194140193” style=“zoom:67%;” />
二、LVM管理命令
三、结构图
[外链图片转存中…(img-bYbZCJEO-1651546161236)]
四、实验操作
1、逻辑卷创建
①、LVM底层文件系统标签为
②、转换为分区并识别后
-
将磁盘分区初始化为物理卷
-
将初始化的物理卷加入卷组
-
在已有的卷组中,创建逻辑卷
-
可以进行格式化
注意路径为卷组名称加逻辑卷名称
-
设备挂载
注意:不要股灾sdb3,需要挂载/dev/yangvg/yanglv
-
和时,必须指定卷组和逻辑卷名称,逻辑卷指定大小
2、逻辑卷拉伸及缩小
①、卷组空间足够分配给逻辑卷时,拉伸LVM分为两步
- 拉伸逻辑卷
- 通知文件系统