LINUX磁盘管理

2021/12/27 7:08:27

本文主要是介绍LINUX磁盘管理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

磁盘结构

硬盘的物理结构

  • 盘片:硬盘有多个盘片,每盘片2面

  • 磁头:每面一个磁头

硬盘的数据结构

  • 扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据,硬盘的最小存储单位

  • 磁道:同一盘片不同半径的同心圆

  • 柱面:不同盘片形同半径构成的圆柱面,由同一半径的多个磁道组成

硬盘存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数

可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域

磁盘接口类型

IDE、SATA、SCSI、SAS、光纤通道

  • lDE:.1.33MB/s,并行接口,早期家用电脑

  • SCSlL: 640MB/s,并行接口,早期服务器

  • SATA: 6Gbps,SATA数据端口与电源端口是分开的,即需要两条线,一条数据线,一条电源线

  • SAS:6Gbps,SAS是一整条线,数据端口与电源端口是一体化的,SAS中是包含供电线的,而SATA中不包含供电线。SATA标准其实是SAS标准的一个子集,二者可兼容,SATA硬盘可以插入SAS主板上,反之不行。

  • 光纤接口

机械与固态

机械硬盘(HDD) : Hard Disk Drive,即是传统普通硬盘,主要由:盘片,磁头,盘片转轴及控制电 机,磁头控制器,数据转换器,接口,缓存等几个部分组成。机械硬盘中所有的盘片都装在一个旋转轴上,每张盘片之间是平行的,在每个盘片的存储面上有一个磁头,磁头与盘片之间的距离比头发丝的直径还小,所有的磁头联在一个磁头控制器上,由磁头控制器负责各个磁头的运动。磁头可沿盘片的半径方向运动,加上盘片每分钟几千转的高速旋转,磁头就可以定位在盘片的指定位置上进行数据的读写操作。数据通过磁头由电磁流来改变极性方式被电磁流写到磁盘上,也可以通过相反方式读取。硬盘为精密设备,进入硬盘的空气必须过滤

固态硬盘(SSD) : Solid State Drive,用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单 元(FLASH芯片、DRAM芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也与普通硬盘—致 相较于HDD,SSD在防震抗摔、传输速率、功耗、重量、噪音上有明显优势,SSD传输速率性能是HDD的2倍 相较于SSD,HDD在价格、容量占有绝对优势硬盘有价,数据无价,目前SSD不能完全取代HHD

检查并确认新硬盘

为什么分区

  • 优化l/O性能

  • 实现磁盘空间配额限制·提高修复速度

  • 隔离系统和程序

  • 安装多个OS

  • 采用不同文件系统

硬盘分区

常见的硬盘可以划分为主分区、扩展分区和逻辑分区,通常情况下主分区只有四个,而扩展分区可以看成是一个特殊的主分区类型,在扩展分区中可以建立逻辑分区。主分区一般用来安装操作系统,扩展分区则多用来存储文件数据 MBR:Master Boot Record,1982年,使用32位表示扇区数,分区不超过21

规划硬盘中的分区

MBR与磁盘分区表示

主引导记录(MBR:Master Boot Record)

  • MBR位于硬盘的第一个物理扇区处

  • MBR中包含硬盘的主引导程序和硬盘分区表

  • 分区表由4个分区记录区,每个分区记录区占16个字节

linxu中将硬盘、分区等设备均表示为文件

dev/hda5
dev:硬件设备文件所在的目录
hd表示IDE设备
sd表示SCSI设备
a表示硬盘的顺序号,以字母a、b、c.....表示
5表示分区的顺序号,以数字1、2、3.....表示

磁盘分区结构

  • 硬盘中的主分区数目只有4个

  • 主分区和扩展分区的序号限制在1~4

  • 扩展分区再分为逻辑分区

  • 逻辑分区的序号将始终自从5开始

注:扩展分区一定要分为逻辑分区

创建文件系统

文件系统类型

XFS文件系统

  • 存放文件和目录数据的分区

  • 高性能的日志型文件系统

  • CentOS7系统中默认使用的文件系统(可进行数据恢复)

SWAP,交换文件系统

  • 为linux系统建立交换分区

linux支持的其它文件系统类型

  • FAT16、FAT32、NTFS

  • EXT4、JFS

检测并确认新硬盘

fdisk命令

  • 查看或管理磁盘分区

fdisk -l [磁盘设备]

fdisk [磁盘设备]

fdisk -l查看硬盘的整体情况和分区情况

  • Device:分区的设备文件名称。

  • Boot:是否是引导分区。若是,则有“*"标识。start:该分区在硬盘中的起始位置(柱面数)。

  • End:该分区在硬盘中的结束位置(柱面数)。

  • Blocks:分区的大小,以Blocks(块)为单位,默认的块大小为1024字节。

  • Id:分区对应的系统ID号。83表示Linux中的XES分区或EXT4分区、8e 表示LVM逻辑卷。LVM是Linux操作系统中对磁盘分区进行管理的一种逻辑机制,与之相关的知读将在后面的章节介绍

  • System:分区类型。识别到新的硬盘设备后,就可以在该硬盘中建立新的分区了。在Linux 操作系统中,分区和格式化的过程是相对独立的,关于格式化分区的操作将在后续内容中讲解。

交互模式中的常用指令

  • m、p、n、d、t、w、q

创建文件系统

mkfs命令

  • Make Filesystem,创建文件系统(格式化)

mkfs -t 文件系统类型 分区设备

示例

[root@localhost ~]# ls /sbin/mkfs*
/sbin/mkfs  /sbin/mkfs.cramfs   /sbin/mkfs.ext3   /sbin/mkfs.minix
/sbin/mkfs.btrfs 	/sbin/mkfs.ext2	 /sbin/mkfs.ext4  /sbin/mkfs.xfs
[root@localhost ~]# mkfs -t xfs /dev/sdb1

不重启加载新建的硬盘

磁盘添加完成,进入系统,使用下面命令扫描SCSI总线

echo "- - -" > / sys/class/scsi_host/host0 / scan

创建系统文件(格式化)

mkfs -t xfs /dev / sdb1 和mkfs.xfs /dev / sdb1
SWAP创建系统文件
mkswap    / dev / sdb5  #创建分区
swapon    是开启swap   注:/ dev / sdb2 (swap分区)
swapof    是关闭swap注: /dev / sdb2 (swap分区)
swapon -s #查看每个分区的swap状态信息
free -m   #查看总的swap状态信息

FAT32创建系统文件

mkfs -t vfat -F 32 /dev/sdb6和mkfs.vfat -F 32 /dev/sdb6

挂载、卸载文件系统

mount命令

  • 挂载文件系统、ISO镜像到指定文件夹

mount [ -t类型] 存储设备 挂载点目录
mount -o loop iso镜像文件 挂载点目录

umount命令

  • 卸载已挂载的文件系统

umount 存储设备位置
umount 挂载点目录

以上为临时挂载

设置文件系统的自动挂载

在/etc/fstab文件中,每一行记录对应一个分区或设备的挂载配置信息,这些信息从左到右包括六个字段(使用空格或制表符分隔),各部分的含义如下所述。

/ dev / sdb1 /     xfs	defaults	0 0
  • 第1字段:设备名或设备卷标名。

  • 第2字段:文件系统的挂载点目录的位置。

  • 第3字段:文件系统类型,如xfs、swap等。

  • 第4字段:挂载参数,即mount命令"-o"选项后可使用的参数。例如,defaults、rw、ro、noexec分别表示默认参数、可写、只读、禁用执行程序。

  • 第5字段:表示文件系统是否需要dump备份(dump是一个备份工具)。一般设为1时表示需要,设为o时将被dump忽略。

  • 第6字段:该数字决定在系统启动时进行磁盘检查的顺序。0表示不进行检查,1表示优先检查,2表示其次检查。根分区应设为1,其他分区设为2。

通过在/etc/fstab文件中添加相应的挂载配置,可以实现开机后自动挂载指定的分区。例如,执行以下操作将添加自动挂载分区/dev/ sdb1 的配置记录

查看磁盘使用情况

df命令

df [选项] [文件]

示例

[root@localhost ~]# df -hT
文件系统                       类型     容量    已用   可用   已用% 挂载点
/dev/mapper/VolGroup-Lv_root  ext4     6.7G   4.1G   2.3G   65%   /
/dev/sda1	                  ext4     99M    11M    83M    12%   /boot
tmpfs	                      tmpfs    252M   0      252M   0%    /dev/shm
/dev/sdb1                     ext4     19G    173M   18G    1%    /mailbox

gdisk命令交互模式中的指令(扩充)

  • b 将GPT数据备份到一个文件

  • c 更改分区名称

  • d 删除一个分区

  • i 显示分区详细信息

  • l 列出已知分区类型。此处8200是Linux swap,8300是Linuxfilesystem (对应fdisk的82和83)。还有一个8e00是Linux LVM

  • n 增加一个新的分区

  • o 创建一个新的空白的GPT分区表p显示当前磁盘的分区表

  • g 退出gdisk程序,不保存任何修改r恢复和转换选项(仅限专家)

  • s 排序分区

  • t 改变分区的类型v验证磁盘分区表

  • w 将分区表写入裁判并退出(保存并退出)

  • x 额外功能(仅限专家)

  • ? 显示帮助信息

本章总结

  • 管理磁盘和分区

  • 创建文件系统

  • 挂载、卸载文件系统

添加硬盘,进行分区,格式化,挂载并且创建系统文件



这篇关于LINUX磁盘管理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程