目录

1 MBR与磁盘分区

1.1 分区的意义 

1.2 MBR分区

1.2 磁盘分区的表示

1.3 磁盘分区结构

2 文件系统

2.1 XFS 

2.2 swap

2.3 FAT16、FAT32

2.4 EXT4

2.5 JFS

3 磁盘分区工具

3.1 fdisk

 3.2 添加磁盘

 3.3 磁盘分区

3.4 blkid

​编辑

3.5 mkfs

4 挂载及永久挂载

4.1 mount

4.2 临时挂载

 4.3 永久挂载


1 MBR与磁盘分区

windows 当中是可以不分区的

linux 当中一定要分区 才可以使用硬盘 

1.1 分区的意义 

  1. 优化I/O性能 读写

  2. 实现磁盘空间配额限制

  3. 提高修复速度

  4. 隔离系统和程序

  5. 安装多个OS

  6. 采用不同文件系统

1.2 MBR分区

MBR 分区最多只能分四个区

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

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

1.2 磁盘分区的表示

Linux内核读取光驱、硬盘等资源时,都是通过“设备文件”的形式进行,因此,将硬盘和分区分别表示为不同的文件。

表示:/dev/hda5

  • /dev/:硬件设备文件所在的目录
  • hd:表示IDE设备(sd表示scsi设备)
  • a:硬盘的顺序号,表示的第几块硬盘,以a、b、c…表示
  • 5:分区的顺序号,表示第一块硬盘接口的第五个分区

1.3 磁盘分区结构

  1. 因此总的来说,硬盘分区有 3 种:分别是主分区、扩展分区和逻辑分区。
  2. 对于一个硬盘来说,主分区至少有 1 个,最多有 4 个;扩展分区可以没有,最多只能有 1 个,且主分区+扩展分区总共不能超过 4 个;逻辑分区可以有若干个。
  3. 主分区可以直接存储数据
  4. 扩展分区不可以直接存储数据,还需要再分区

2 文件系统

文件系统的组成

  • 内核中的模块:ext4, xfs, vfat

  • Linux的虚拟文件系统:VFS

  • 用户空间的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat

2.1 XFS 

  • CenOS 7系统中默认使用的文件系统,高性能的日志型文件系统
  • 存放文件和目录数据的分区
  • 数据完整性:根据所记录的日志在很短时间内迅速恢复磁盘文件内容
  • 传输特性 :用优化算法,日志记录对整体文件操作影响非常小。查询与分配存储空间非常快。
  • 可扩展性 :是一个全64-bit的文件系统,最大可以支持8EB的文件系统
  • 传输带宽 : XFS 能以接近裸设备I/O的性能存储数据。对单个文件的读写操作,吞吐量可达4GB每秒。

2.2 swap

swap交换分区是系统RAM的补充,swap 分区支持虚拟内存。当没有足够的 RAM 保存系统处理的数据 时会将数据写入 swap 分区,当系统缺乏 swap 空间时,内核会因 RAM 内存耗尽而终止进程。配置过 多 swap 空间会造成存储设备处于分配状态但闲置,造成浪费,过多 swap 空间还会掩盖内存不足。

2.3 FAT16、FAT32

且最大只能支持32GB分区,单个文件也只能支持最大4GB

2.4 EXT4

Extended file system 适用于那些分区容量不是太大,更新也不频繁的情况,例如 /boot 分 区是 ext 文件系统的最新版。提供了很多新的特性,包括纳秒级时间戳、创建和使用巨型文件 (16TB)、最大1EB的文件系统,以及速度的提升1EB=1024PB=1024*1024T2.5B

2.5 JFS

主要是为满足服务器的高吞吐量和可靠性需求而设计、开发的。单个文件最大限制16TB,该文件系统最大支持1PB的容量。1PB=1024TB

3 磁盘分区工具

lsblk 列出块设备
fdisk管理MBR分区
gdisk管理GPT分区
parted高级分区操作,可以是交互或非交互方式
partprobe重新设置内存中的内核分区表版本,适合于除了CentOS 6 以外的其它版本 5,7,8

3.1 fdisk

格式:fdisk -l      [磁盘设备]

     或    fdisk       [磁盘设备]

打印出菜单
p打印出当前分区表
n新建一个分区
d删除一个分区
t改变分区的属性,系统ID
w保存
q不保存退出

 3.2 添加磁盘

 

 

 

 

 刚添加好磁盘后不会直接显示,需重启机器或刷新磁盘接口

 刷新磁盘接口

 然后再lsblk查看

 3.3 磁盘分区

fdisk /dev/sdb     #  对sdb磁盘进行分区

分区划分完毕,之后进行扩展分区、逻辑分区划分

同样的步骤

fdisk  /dev/sdb      #对sdb磁盘进行分区

 

 lsblk 查看分区情况

3.4 blkid

可以查看块设备属性信息

3.5 mkfs

mkfs 格式划分区

创建文件系统(格式化)常用选项

-t 指定文件系统类型
-b指定块 block 大小
-L设置卷标
-j相当于 -t ext3, mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3-i 
-i为数据空间中每多少个字节创建一个inode;不应该小于block大小
-N指定分区中创建多少个inode
-l一个inode记录占用的磁盘空间大小,128---4096
-m为管理人员预留空间占总空间的百分比
-OFEATURE[,...] 启用指定特性-O ^FEATURE 关闭指定

分区显示出来以后对分区进行格式化,使用mkfs.xfs +分区名

4 挂载及永久挂载

4.1 mount

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

device:指明要挂载的设备

  • 设备文件:例如:/dev/sda5

  • 卷标:-L 'LABEL', 例如 -L 'MYDATA'

  • UUID: -U 'UUID':例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'

  • 伪文件系统名称:proc, sysfs, devtmpfs, configfs

    mountpoint:挂载点目录必须事先存在,建议使用空目录

-t fstype 指定要挂载的设备上的文件系统类型,如:ext4,xfs
-rreadonly,只读挂载
-wread and write, 读写挂载,此为默认设置,可省略
-n不更新/etc/mtab,mount不可见
-a自动挂载所有支持自动挂载的设备(定义在了/etc/fstab文件中,且挂载选项中有
auto功能)
-L'LABEL' 以卷标指定挂载设备
-U'UUID' 以UUID指定要挂载的设备
-B--bind 绑定目录到另一个目录上
-o options:(挂载文件系统的选项),多个选项使用逗号分隔
-o 异步模式,内存更改时,写入缓存区buffer,过一段时间再写到磁盘中,效率高,但不安全

挂载规则

  • 一个挂载点同一时间只能挂载一个设备

  • 一个挂载点同一时间挂载了多个设备,只能看到最后一个设备的数据,其它设备上的数据将被隐藏

  • 一个设备可以同时挂载到多个挂载点

  • 通常挂载点一般是已存在空的目录

4.2 临时挂载

若重启服务器则挂载失效

df -h 查看挂载情况

 将 sdb1 挂载到/mnt

  将 sdb5 挂载到/opt

 4.3 永久挂载

 永久挂载即使服务器重启后挂载依然生效

需要 将文件写入 /etc/fstab

UUID 可以确保唯一

 vim /etc/fstab 

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

然后进入/etc/fstab将挂载信息写入其中后保存退出

 重启服务器查看是否永久挂载

 永久挂载成功

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐