Linux——磁盘管理与文件系统

磁盘管理与文件系统

  • 一、磁盘结构和分区表示
    • 1.1 磁盘基础
      • 1.1.1 硬盘的结构
      • 1.1.2 硬盘的接口
    • 1.2磁盘分区表示
      • 1.2.1 MBR
      • 1.2.3 磁盘的分区表示
  • 二、Linux中使用的文件系统类型
    • 2.1 XFS文件系统
    • 2.2 Swap交换文件系统
    • 2.3 EXT4 (第四代扩展文件系统)
    • 2.4 Linux支持的其他文件系统类型
  • 二、管理磁盘及分区
    • 2.1 查看或管理磁盘分区——fdisk
    • 2.2 七个字段
    • 2.3 管理磁盘分区——fdisk /dev/sdb
    • 2.4 创建分区步骤
  • 四、创建文件系统
    • 4.1 创建文件系统(格式化分区)——mkfs
    • 4.2 创建交换文件系统——mkswap
  • 五、挂载、卸载文件系统
    • 5.1 挂载文件系统,ISO镜像到指定文件——mount
    • 5.2 卸载已挂载的文件系统——umount
    • 5.3 查看磁盘挂载情况
    • 5.4 挂载、卸载文件系统操作
    • 5.5 设置文件系统的自动挂载——/etc/fstab配置文件
  • 【总结】(故障)

一、磁盘结构和分区表示

1.1 磁盘基础

硬盘(Hard Disk Driver),简称HDD,是计算机常用的存储设备之一。

1.1.1 硬盘的结构

Linux——磁盘管理与文件系统_第1张图片
(1)磁盘的物理结构

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

(2)磁盘的数据结构

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

  • 磁道: 同一盘片不同半径的同心圆,是由磁头在盘片表面划出的圆形轨迹

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

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

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

(5)怎么查看分区信息
Linux——磁盘管理与文件系统_第2张图片

1.1.2 硬盘的接口

硬盘按数据接口不同,大致分为ATA(IDE)和SATA以及SCSI,接口速度不是实际硬盘传输速度。

类型 说明
IDE 并口数据线连接主板与硬盘,抗干扰性太差,且排线占用空间较大,不利电脑内部散热,已逐渐被SATA所取代
SATA 抗干扰性强,支持热插拔等功能,速度快,纠错能力强
SCSI 小型机系统接口,SCSI硬盘广为工作站级个人电脑以及服务器所使用,资料传输时CPU占用率较低,转速快,支持热插拔等
SAS 是新一代的SCSI技术,和SATA硬盘相同,都是采取序列式技术以获得更高的传输速度,可达到6Gb/s
光纤通道 为提高多硬盘存储系统的速度和灵活性才开发的,它的出现大大提高了多硬盘系统的通信速度。特性:热插拔性、高速带宽、远程连接、连接设备数量大

1.2磁盘分区表示

1.2.1 MBR

MBR是主引导记录(Master Boot Record),位于硬盘第一个物理扇区处,MBR包含硬盘的主引导程序和硬盘分区表。分区有四个分区记录,每个分区记录区占16个字节。
MBR总共512字节,前446字节是主引导记录,分区表保存在MBR扇区中的第447-512字节中。

1.2.3 磁盘的分区表示

Linux中将磁盘、分区等设备均表示为文件;

  • sd:表示SCSI设备
  • hd:表示IDE设备
  • 硬盘的顺序号,以字母a、b、c…表示
  • 分区的顺序号,以数字1、2、3…表示
  • 主分区从1-4,第一个逻辑分区始终从5开始
    Linux——磁盘管理与文件系统_第3张图片

二、Linux中使用的文件系统类型

文件系统类型决定了分区中存放、读取数据的方式和速率

2.1 XFS文件系统

  • 存放文件和目录数据的分区
  • 高性能的日志型文件系统,特别擅长处理大文件,可支持上百万TB的存储空间
  • CentOS系统中默认是用的文件系统

2.2 Swap交换文件系统

(相当于Windows系统下的虚拟内存

  • 为Linux系统建立交换分区
  • 一般设置为物理内存的1.5~2倍

2.3 EXT4 (第四代扩展文件系统)

  • 相当于存放目录和数据的分区
  • 典型的日志型文件系统

2.4 Linux支持的其他文件系统类型

  • EXT4(centos6)
  • FAT32(windows)
  • NTFS(windows)
  • LVM

二、管理磁盘及分区

2.1 查看或管理磁盘分区——fdisk

在这里插入图片描述
在这里插入图片描述
咱们添加了新的磁盘后,并不能通过 fdisk 命令查询到新加的磁盘,有两个办法:

  • 不重启的情况下识别磁盘:
    echo "- - - "> /sys/class/scsi_host/host0/scan
    echo "- - - "> /sys/class/scsi_host/host1/scan
    echo "- - - "> /sys/class/scsi_host/host2/scan
  • 重启命令: reboot / init 6

Linux——磁盘管理与文件系统_第4张图片

2.2 七个字段

Linux——磁盘管理与文件系统_第5张图片

字段 说明
Device: 分区的设备文件名称;
Boot: 是否是引导分区,是的话则有“ * ”的标志;
Start: 该分区在硬盘中的起始位置(柱面数);
End: 该分区在硬盘中的结束位置(柱面数);
Blocks: 分区的大小,以Block(块)为单位,默认的块大小为1024字节
ID 分区对应的系统ID号
system 分区类型

2.3 管理磁盘分区——fdisk /dev/sdb

在这里插入图片描述
交互模式中的常用命令

指令 说明
n 获取帮助命令
p 查看分区
d 删除分区
t 变更分区的类型
w 保存分区操作的类型
q 不保存分区操作并退出

Linux——磁盘管理与文件系统_第6张图片

2.4 创建分区步骤

Linux——磁盘管理与文件系统_第7张图片

n
   >>p 主分区, e  扩展分区, l  逻辑分区
      >> 设置分区:1  (主分区范围1-4,逻辑分区从 5开始)
         >> 设置柱面序列:直接回车接收默认值
            >>设置分区大小: +20G  (此处自定义输入,若直接回车则是接收默认值表示所有空间)
              >>w (保存分区并退出)

四、创建文件系统

4.1 创建文件系统(格式化分区)——mkfs

在这里插入图片描述
分区设备一定要用绝对路径

Linux——磁盘管理与文件系统_第8张图片

4.2 创建交换文件系统——mkswap

在这里插入图片描述

swapon /dev/sdb2 //启用新增加的交换分区
swapoff /dev/sdb2 //停用指定的交换分区
swapon -s //查看每个分区的swap状态
free -m //查看总的swap状态信息

Linux——磁盘管理与文件系统_第9张图片

五、挂载、卸载文件系统

5.1 挂载文件系统,ISO镜像到指定文件——mount

在这里插入图片描述
eg:[root@localhost /]# mount /dev/sdb1 /data/

在这里插入图片描述

选项 说明
-t 用于指定文件的系统类型,通常可以省略,由系统自动识别
-o 挂载参数列表,以英文逗号分隔,如用来描述特殊设备,用loop指定

注意:
1.最好挂空文件,不然文件可能丢失
2.如果挂载目录下,你不能解挂载的
3.不能一个目录挂载多个设备

[root@localhost ~]# mkfs -t xfs /dev/sdb1
[root@localhost ~]# vim /etc/fstab

mount /dev/cdrom /mnt
mount /dev/sdb1 /opt

#挂载已下载到系统中的镜像文件
mount -o loop CentOS-7-x86_64-DVD-1708.iso /media

5.2 卸载已挂载的文件系统——umount

在这里插入图片描述
在这里插入图片描述
需要卸载文件系统时,使用的命令为umount,使用挂载点目录或对应设备的文件名作为卸载参数。Linux系统中,由于同一个设备可以被挂载到多个目录下,所以一般建议通过挂载点的目录来卸载。
注意:
1.卸载前提:挂载的设备或目录没有被正在使用中,要先退出挂载目录
2.加入参数 -lf ,表示强制卸载

 [root@local /]# umount /dev/cdrom    //通过设备文件卸载光盘
[root@local /]# umount /mnt            //通过挂载点目录卸载对应的分区

5.3 查看磁盘挂载情况

在这里插入图片描述

选项 说明
-h 显示分区的容量单位
-T 显示文件系统的类型
-i 显示分区的inode号码数量

在这里插入图片描述
Linux——磁盘管理与文件系统_第10张图片

5.4 挂载、卸载文件系统操作

  • 硬盘分区挂载、卸载
  • 光盘设备挂载、卸载
  • ISO镜像文件挂载示例
  • 卸载文件系统

5.5 设置文件系统的自动挂载——/etc/fstab配置文件

vim /etc/fstab
/dev/sdb1     /opt    xfs         defaults      0    0
/dev/sr0      /mnt    iso9660     defaults      0    0

Linux——磁盘管理与文件系统_第11张图片

[root@localhost ~]# mkfs -t xfs /dev/sdb1
[root@localhost ~]# vim /etc/fstab //永久挂载
Linux——磁盘管理与文件系统_第12张图片

六个字段

字段 说明
字段一 分区名或设备卷标名
字段2 文件系统的挂载点目录的位置
字段3 文件系统类型,如xfs、swap等
字段4 挂载参数,即mount命令"-o"选项后可使用的参数。例如,defaults (默认参数) 、rw (可读写) 、ro (只读) 、noexec (禁用执行程序)
字段5 表示文件系统是否需要dump备份(dump是一个备份工具)。一般设为1时表示需要,设为0时将被dump忽略
字段6 该数字决定在系统启动时进行磁盘检查的顺序。0表示不进行检查,1表示优先检查,2表示其次检查。根分区应设为1,其他分区设为2

【总结】(故障)

  1. mount:/home/ky19 不包含 SELinux 标志

Linux——磁盘管理与文件系统_第13张图片

在刷新挂载的时候,通过“df -h” 我无法查询到当前挂载信息,后来发现是因为开启了SELINUX,关闭SELINUX后就可以访问了。关闭SELINUX的命令为 setenforce 0

  1. mount: 文件系统类型错误、选项错误、/dev/sdb2 上有坏超级块、 缺少代码页或助手程序,或其他错误
    Linux——磁盘管理与文件系统_第14张图片
    忘记在挂载之前格式化
    Linux——磁盘管理与文件系统_第15张图片

你可能感兴趣的:(Lunix,linux,运维,网络)