likes
comments
collection
share

linux中的磁盘管理

作者站长头像
站长
· 阅读数 7

1.磁盘结构

1.1磁盘的数据结构

  • 扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据(扇区越多容量越大) 存放数据的最小单位 512字节
  • 磁道:同一盘片不同半径的同心圆
  • 柱面:不同盘片相同半径构成的圆(柱面和磁道数量相同

linux中的磁盘管理

1.2 硬盘接口的类型

有SAS、SATA、SCSI、光纤通道

  • SCSI:640MB/s,并行接口,早期服务器
  • SATA:6Gbps,SATA数据端口与电源(长的电源,数据线短的)端口是分开的,即需要两条线,一条数据线,一条电源线
  • SAS:6Gbps,SAS是一整条线,数据端口与电源端口是一体化的,SAS中是包含供电线的,而SATA中不包含供电线。SATA标准其实是SAS标准的一个子集,二者可兼容,SATA硬盘可以插入SAS主板上,反之不行。

linux中的磁盘管理

2.MBR与磁盘分区

2.1 分区的优点

  • 优化I/O性能 读写
  • 实现磁盘空间配额限制
  • 提高修复速度
  • 隔离系统和程序
  • 安装多个OS
  • 采用不同文件系统

2.2 分区的缺点

  • 必须是连续的空间
  • 一旦分好区域后无法增加减少空间,空间固定

2.3MBR分区与GPT分区的区别

MBR:2t以下的硬盘 使用fdisk

GPT:可以支持2t以下的硬盘 使用gdisk

2.4MBR

MBR: 主引导记录, 是硬盘上的第一个扇区, 想要读数据得从这个扇区开始

MBR 一共 512 字节

前 446 字节 开机引导程序, 引导硬件 找到我们的操作系统 后 64 字节 分区表 表明了 分区的范围, 分区从哪里到那里结束

最后 两字节 代表MBR 结束位

MBR 分区只可以分4个分区, 一个分区表要占 16字节

linux中的磁盘管理 分区分类

主分区: 可以直接使用 , 安装操作系统 存储文件 等

扩展分区:不可以直接使用, 需要再 划分逻辑分区, 让分区超过4个

逻辑分区:可以直接使用, 存储文件

扩展分区是特殊的主分区

主分区的序号为 1-4

逻辑分区的序号 从5 开始

2.5 GPT分区

GPT:GUID(Globals Unique Identifiers) partition table 支持128个分区,使用64位,支持8Z(512Byte/block )64Z ( 4096Byte/block)

使用128位UUID(Universally Unique Identifier) 表示磁盘和分区 GPT分区表自动备份在头和尾两份,并有CRC校验位UEFI (Unified Extensible Firmware Interface 统一可扩展固件接口)硬件支持GPT,使得操作系统可以启动。

3.文件系统

3.1文件系统的组成

  • 内核中的模块:ext4, xfs, vfat
  • Linux的虚拟文件系统:VFS
  • 用户空间的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat

xfs:centos 7默认的文件系统

ext4:centos 6默认的文件系统

swap:当内存不足时,将硬盘空间转换成内存

FAT16、FAT32:且最大只能支持32GB分区,单个文件也只能支持最大4GB。

3.2 文件系统的修复

fsck /dev/sdb1 -y :开源修复,不是很稳定

dd if=/dev/zero of=/dev/sdb1 bs=1M count=1 破坏文件系统,然后用上面的命令进行修复。

4.分区工具

4.1 fdisk

格式:fdisk -l 设备名

进入到分区命令中的选项:

  • m 打印出菜单
  • p 打印出当前分区表
  • n 新建一个分区
  • d 删除一个分区
  • t 改变分区的属性,系统ID
  • w 保存
  • q 不保存退出 具体实验在下文

4.2blkid

查看块设备的属性信息

linux中的磁盘管理 可以查看分区的UUID

4.3mkfs

创建文件系统(格式化)

格式:mkfs.[文件系统] 分区的文件名

4.4 mkswap

swap:特殊的文件系统,缓解内存不足,为了个别应用程序加内存有点浪费,添加交换分区的空间

mkswap + 分区

swapon +分区 开启 -a 全部

swapoff +分区 关闭 -a 全部

可以使用free -h查看主机的swap数值

linux中的磁盘管理

5.挂载与解挂载

5.1mount

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

重新挂载:mount -o ro [设备名] [挂载到的文件夹名] 挂载规则

  • 一个挂载点同一时间只能挂载一个设备
  • 一个挂载点同一时间挂载了多个设备,只能看到最后一个设备的数据,其它设备上的数据将被隐藏
  • 一个设备可以同时挂载到多个挂载点
  • 通常挂载点一般是已存在空的目录

6.磁盘分区实验

6.1实验内容

给虚拟机添加硬盘并做好磁盘分区,使用fdisk命令。

6.2实验具体操作

1.先在虚拟机里添加一块新磁盘,设置为20g

linux中的磁盘管理 一直点击下一步设置好。

2.先进入文件下查看有几个接口

linux中的磁盘管理 3.进入xshell输入命令刷新磁盘

linux中的磁盘管理

4.进入到dve文件夹中,输入fdisk 硬盘名

linux中的磁盘管理 5.创建主分区的话直接直接三个回车,进行默认设置

linux中的磁盘管理

6.设置分区大小为10G自定义

linux中的磁盘管理

7.最后不能忘记输入w保存并退出

linux中的磁盘管理 8.输入命令lsblk查看磁盘分区是否分配完毕

linux中的磁盘管理

9.分过区后直接进行格式化,输入命令:mkfs.xfs 文件名

linux中的磁盘管理

  1. 最后进行挂载完成磁盘分区设置。 linux中的磁盘管理

11.输入df-h查看挂载情况。

linux中的磁盘管理