一、磁盘管理
1、硬盘
(1)什么是硬盘
硬盘是一种计算机储存设备,通常由一个或多个磁性盘片组成,盘片上覆盖磁性材料,可以在其上进行数据的读写,硬盘通常安装在计算机的内部。也可以外接在计算机上
(2)硬盘的作用
储存计算机的操作系统,应用程序、文档、多媒体文件等数据。当计算机访问数据时,硬盘会将数据读取到计算机的内存中进行处理。因此,硬盘是计算机系统中不可缺少的一部分。
(3)硬盘的组成
- 空气滤纸:保证磁盘清洁
- 盘片:两面均可写,(多个组成)
- 主轴(马达):在转动时读取数据
- 磁头:有多个,是两面均可,与盘片不贴在读取时依靠电磁流读取
- 永磁铁:保证磁盘的磁性稳定
- 磁盘:铝合金制作,用来储存文件
2、磁盘的数据结构
(1)扇区
扇区是盘片被分为多个扇形区域,每个扇形存放512字节的数据(扇区越多,容量越大)
(2)磁道
磁道是同一盘片不同半径的同心圆
(3)柱面
柱面是不同的盘片相同半径构成的圆(柱面和磁道数量相同
3、 MBR与磁盘分区表示
(1)硬盘的分区形成
- 主分区
- 扩展分区
- 逻辑分区
(2)主引导记录(MBR)
- MBR位于硬盘第一个物理扇区处
- MBR中包含硬盘的主引导程序和硬盘分区表( MBR最多分4个(3个主分区、1个扩展分区))
- 分区表有4个分区记录区,每个分区记录占16个字节
- linux 中将硬盘、分区等设备均为文件
例:
(3)MBR的作用
规定好主分区可以分几个
4、磁盘分区
(1)磁盘分区结构
- 硬盘中的主分区数目只有4个
- 主分区和扩展分区的序号必须在1-4
- 扩展分区再分就是逻辑分区
- 逻辑分区的序号始终从5开始
(2)主分区和扩展分区的区别
- 主分区——安装操作系统,也可以做储存设备
- 扩展分区(逻辑分区)——存储数据,不能安装操作系统
(3)GPT和MBR分区
- GPT分区硬盘大于2T以上(128个主+扩展)——可用gdisk /dev/sdb进行分区
- 使用MBR分区硬盘小于2T(只可以分区1-4)——可用fdisk /dev/sdb进行分区
(4)硬盘的实际空间比标明的空间要小的原因
- 分区表占空间——文件系统和格式化占用空间
- 进制转换——制造商采用的十进制计算表示硬盘的存储容量(1KB=1000字节,1MB=1000KB字节, 1GB=1000MB字节, 1TB=1024字节),计算机采用的是二进制(1KB=1024字节,1MB=1024KB字节,1GB=1024MB字节,1TB=1024GB字节),因此同样的硬盘容量则会有差别。
(5)分区的原因
- 优化读写的性能
- 实现磁盘空间的配额限制
- 隔离系统和程序
- 提高修复速度
- 安装多个os
- 采用不同文件系统
(6)分区的优点
- 便于管理
- 优化读写性能
(7)分区的缺点
- 一旦建立无法修改,如要修改,只能推倒重建,重建格式化,数据会丢失
- 不够灵活,空间只能来自于一块硬盘,并且必须是连续的空间
- 没有备份冗余功能,没有备份,需要依靠工程师手动备份
5、磁盘管理命令
(1)查看或管理分区——fdisk
- 格式:fdisk -l + 磁盘设备
- 例:
fdisk -l /dev/sda
(2)添加硬盘生效
由于后面添加硬盘时不用重新启动添加一个别名
alias scan=‘echo “- - -” > /sys/class/scsi_host/host0/scan;echo “- - -” > /sys/class/scsi_host/host1/scan;echo “- - -” > /sys/class/scsi_host/host2/scan’*——作用是自动获取接口,添加硬盘时不用重新启动
- 添加硬盘时怎样添加生效:
首先在虚拟机上添加一个20G硬盘
添加一个20G的硬盘
vim .bash_profile——进入添加,对自己生效
source .bash_profile ——重新启动
[root@localhost ~]# scan——刷新硬盘添加的设备接口
[root@localhost ~]# lsblk——查看
- 注:partprobe 命令:
作用:如果磁盘硬件刷新没出来,重新刷新内核信息表和缓存同步进行刷新生效。(机器一般不会重新启动可用)
例如此现象:
- 注:如果添加的自动获取接口配置的别名文件 vim .bash_profile 中未生效,则可用 vim.bashrc 进入配置别名脚本,配置后刷新
如 vim.bashrc 也未生效,则用 vim /etc/profile 进入配置脚本,全局生效,配置后刷新
6、磁盘分区
(1)分区的相关命令
(2)对创建的磁盘分区——n
fdisk -l /dev/sda1—— 查看磁盘的分区情况
fdisk是MBR分区的命令,它只能分4个,只能处理2T以下的硬盘分区
fdisk /dev/sdb——进入分区页面的交互模式下
- 建立扩展分区过程:
lsblk——查看是否新建成功
扩展分区不可直接使用:没有文件系统、为了给创建逻辑分区基础
- 建立逻辑分区过程:在建立完扩展分区才可以建立逻辑分区
[root@localhost ~]# lsblk——查看建立的逻辑分区
- 主分区建立过程:
(3)删除分区——d
二、文件系统类型
1、linux文件系统
(1)什么是文件系统
- linux的文件系统是用来管理linux操作系统中文件和目录的。负责管理存储设备的数据存储和访问,包括硬盘、光盘、闪存驱动器等。
- linux文件系统通过一种树形目录结构来组织文件,根目录是文件系统起点,其他目录和文件都位于根。
(2)文件系统的作用
- 数据的组织和储存:文件系统提供了一种组织数据的结构,能够把文件分为不同的目录,以及把数据存储在物理存储设备上。
- 数据的保护:文件系统可以通过权限控制机制限制不同用户对文件的访问权限,保证数据的安全性。
- 数据的访问:文件系统可以提供对存储设备的访问接口,通过这些接口可以访问存储设备中的数据。
- 数据的管理:文件系统提供了对数据的管理功能,包括文件的复制、移动、删除、重命名等操作。
- 文件系统还提供了一些高级功能,比如日志记录、快照、压缩等,以提高数据的可靠性和性能。
总结来说,文件系统的主要作用是为用户提供一个组织、保护、访问和管理数据的机制,使用户能够更加方便地使用存储设备,并且保证数据的安全性和可靠性。
在Linux系统中,文件系统是非常重要的一部分,
不同的文件系统可以提供不同的功能和性能,用户可以根据自己的需求来选择合适的文件系统。
linux的文件系统就是XFS
如果没有安装文件系统,操作系统将无法对存储设备进行管理和访问,
因为文件系统是操作系统与存储设备之间的接口。
没有文件系统,操作系统就无法识别存储设备上的数据格式和存储位置,也无法对数据进行组织、保护、访问和管理。
2、XFS文件系统
特点
- 存放文件和目录数据的分区
- 高性能的日志型文件系统,特别擅长于处理大文件,可支持上百万TB的存储空间
- Centos7系统默认使用文件系统
3、SWAP、交换文件系统
(1)作用
- 为linux 系统建立交换分区
- 一般设置为物理内存的1.5~2倍
(2)原理 - 如有一个程序的运行空间不够用可以借去另一个分区的空间
(3)特点 - 交换的分区必须是没有运行的、或者是待机的状态
(4)命令 - free -h——查交换分区的大小
- 示例:
4、linux支持的其他文件系统类型
(1)EXT4
- centos7 默认使用的是 xfs ,可支持 ext4
- centos6 只支持 ext4
(2)FAT32
(3)NTFS
(4)LVM
5、创建文件系统——mkfs
(1)命令格式
mkfs.xfs 文件系统类型 分区设备
mkfs -t 文件系统类型 分区设备
(2)示例
mkfs.xfs /dev/sdb2}——创建文件系统
6、挂载
(1)临时挂载
- 命令
mkdir /data——创建新的目录
mount /dev/sdb2 /data/——挂载到空目录
df -h——查看是否挂载cehngg
- 示例:
(2)解除挂载——umount
- 解除挂载临时和永久的都可以
- 示例:
umount /dev/sdb2 /data——解除挂载点、
df -h——查看挂载点
umount -lf /dev/sdb2 /data/——强制解除正在繁忙的文件系统,强制解除挂载
(3)永久挂载、自动挂子啊——vim /etc/fstab 配置文件里挂载
UUID号是设备的唯一标识符
blkid——查看设备的UUID号
- 直接以设备名称来进行挂载
vim /etc/fstab——进入配置文件
/dev/sdb2 /data xfs defaults 0 0——使用设备挂载
df -h——查看是否生效
mount -a——未生效使用,读取配置文件,使生效
- 以UUID号挂载
umount /dev/sdb2 /data/——卸载之前的设备挂载
blkid——查询UUID号
复制到配置文件中
mount -a——读取配置文件,刷新
(4)光盘镜像挂载
vim /etc/fstab——进入编辑
/dev/cdrom /mnt iso9660 defaults 0 0 ——光盘镜像挂载
mount -a——读取配置文件,是挂载生效
df -h——查看挂载信息
7、创建交换——mkswap
(1)命令格式
mkswap 分区设备
(2)创建之前,目标分区应先通过fdisk工具将分区类型ID号设为82
(3)示例:
fdisk -l /dev/sdb——查看类型
partprobe ——刷新
(4)格式化交换分区
mkswap /dev/sdb1
swapon /dev/sdb1——启用新增加的交换分区
free -h——查看交换分区
swapoff /dev/sdb1——不需要时停止指定的交换分区
swapon -s——查看每个分区的swap状态信息
free -m——查看总的swap状态信息
8、2T以上的硬盘——gdisk
(1)格式
gdisk + 设备名称
(2)实验
- 添加一个2T以上的硬盘
reboot——重新启动虚拟机
lsblk——查看添加的硬盘
大于2T时会显示以下,可使用GPT
gdisk /dev/sdc——分区
df -h——查看分区信息
mkfs.xfs /dev/sdc1——创建文件系统
mkdir gpt——创建新的目录
mount /dev/sdc1 /root/gpt/——挂载
面试题:
1、用设备唯一号挂载:以UUID号挂载
- 查看设备:blkid
- 进入粘贴UUID:vim /etc/fstab
- 输入:UUID=" "+挂载目录 xfs defaults 0 0
2、怎么查看设备读写性能:iostat