Linux 磁盘管理 管理LVM逻辑卷 以及 RAID卷组成
管理磁盘及分区
在Linux服务器中,当现有硬盘的分区规划不能满足要求(例如,根分区的剩余
空间过少,无法继续安装新的系统程序)时,就需要对硬盘中的分区进行重新规划和
调整,有时候还需要添加新的硬盘设备来扩展存储空间。
实现上述操作需要用到 fdisk磁盘及分区管理工具, fdisk是大多数 Linux系统中
自带的基本工具之一。本节将通过为 Linux主机新增一块硬盘并建立分区的过程,介
绍 fdisk工具的使用。
增加硬盘设备时首先需要在机箱内进行硬盘接口的物理连接。若是在 Vmware虛
拟机环境中,可以修改虚拟主机的设置,添加一块“ Hard Disk”硬盘设备。
检测并确认新硬盘
fdisk -l ##可以确认、查看新增硬盘的设备和位置
规划硬盘中的分区
fdisk /dev/sdb ##进入交互式的分区管理
输入 m 命令后 可以查看各种操作指令的帮助信息
输入 n 命令 新建分区
输入 p 创建主分区
输入 e 创建扩展分区
之后依次选择分区序号,起始位置,结束位置和分区大小 即可完成新分区的创建
在fdisk交互式界面输入 t 命令 , 可以变更分区的类型
最常用的 EXT4 ID号为 83
Swap ID号为 82
Windows中的 NTFS文件系统 ID号为 86
其他类型的文件系统 可以通过 输入 l 命令进行查看
最后输入 w 保存分区操作并退出
q 不保存操作并退出
管理文件系统
创建文件系统的过程 也即 格式化分区 的过程,在linux系统可以通过 mkfs命令工具 格式化 XFS EXT4 FAT等不同类型的分区,mkswap 可以格式化 swap交换分区
mkfs -t ext4 /dev/sdb1
mkfs.ext4 /dev/sdb1
这两条命令都可以把 /dev/sdb1 格式化为 ext4 文件系统
管理 LVM 逻辑卷
LVM 介绍
LVM是 Linux系统中对磁盘分区进行管理的一种逻辑机制,它是建立在硬盘和分
区之上,文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局
能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性。
在安装 Centos系统的过程中选择自动分区时,就会默认采用LVM分区方案,不
需要再进行手动配置。如果有特殊需要,也可以使用安装向导提供的磁盘定制工具调
整LMM分区。需要注意的是,“/boot”分区不能基于LVM创建,必须独立出来
PV (Physical Volume,物理卷)
物理卷 是LVM 机制 的基本存储设备,通常对应为一个普通分区或整个硬盘。
pvscan ##此命令用于扫描系统中的所有物理卷,并输出相关信息
pvcreate ##用于将分区或整个硬盘转换成物理卷
例如 pvcreate /dev/sdb1
pvdisplay ##用于显示物理卷的详细信息,需要使用指定的物理卷作为命令参数,默认时将显示所有物理卷的信息。
pvremove ##用于将物理卷还原成普通分区或者磁盘,不再用于LVM体系。
VG (Volume Group, 卷组)
由一个或多个物理卷组成一个整体,即称为卷组,在卷组中可以动态的添加或者移除物理卷。
vgscan ## 用于扫描系统已建立的LVM卷组及相关信息。
vgcreate ##用于将一个或者多个物理卷创建为一个卷组,第一个命令参数用于设置新卷组的名称,其后依次指定需要加入卷组的物理卷作为参数
例如 vgcreate abc /dev/sdb1 /dev/sdb2
创建一个 /dev/sdb1 /dev/sdb2 组成的名称为abc的卷组
vgdisplay ##用于显示系统中各卷组的详细信息,需用使用指定卷组名称作为命令参数,未指定将显示所有卷组信息
vgremove ##用于删除指定的卷组,指定卷组名称作为参数即可
vgextend ##用于扩展卷组的磁盘空间,当创建了新的物理卷,并需要将其添加到已有卷组中,就可以使用。
例如 vgextend abc /dev/sdb3
在 abc卷组中 添加 /dev/sdb3物理卷
LV(Logical Volume ,逻辑卷)
逻辑卷建立在卷组之上,与物理卷没有直接关系。对于逻辑卷来说,每一个卷组就是一个整体,从这个整体中切出一小块空间,作为用户创建文件系统的基础,这一小块空间就称为逻辑卷。
lvscan ##用于扫描系统中已建立的逻辑卷及相关信息
lvcreate ##用于从指定的卷组中分割空间,以创建新的逻辑卷。需要指定逻辑卷大小,名称,以及所在的卷组名作为参数
例如 lvcreate -L 10G -n abc vg_name
在卷组 vg_name 中建立一个 容量为10G 名称为abc的 逻辑卷
lvdisplay ##用于显示逻辑卷的详细信息,需要指定逻辑卷的设备文件作为参数,也可以使用卷组名作为参数,以显示该卷组中所有逻辑卷的信息。
lvremove ##用于删除指定的逻辑卷,直接使用逻辑卷的设备作为参数即可
lvextend ##用于动态扩展逻辑卷的空间,当目前使用的逻辑卷空间不足时,可以从所在卷组中分割额外的空间进行扩展。
例如 lvextend -L 10G /dev/abc
为 abc逻辑卷扩展10G大小的磁盘空间
Raid 磁盘阵列与阵列卡
RAID是英文 Redundant Array of Independent Disks的缩写,中文简称为独立冗余
磁盘阵列,简单的说RAID是把多块独立的物理硬盘按不同的方式组合起来形成一个
硬盘组(逻辑硬盘),从而提供比单个硬盘具有更高存储性能和存储容量的数据备份
技术。
在用户看来,组成的磁盘组就像是一个硬盘,用户可以对它进行分区,格式化
等等组成磁盘阵列的不同方式成为RAID级别( RAID Levels)。RAID级别也就是
RAID技术的几种不同等级,分别可以提供不同的速度,安全性和性价比。根据实际
情况选择适当的RAID级别可以满足用户对存储系统可用性、性能和容量的要求。
mdadm是multiple devices admin的简称,它是Linux下的一款标准的软件 RAID 管理工具,作者是Neil Brown
接下来就要通过mdadm工具 管理raid
mdadm -E /dev/sd[b-c]1 检查是否做raid
mdamd -C 创建 -v详细过程 /dev/md0 -l0 level0(表示raid0) -n2 有两块磁盘 /dev/sd[b-c]1 -x1 /dev/sdf1 保留的一块盘
mdadm -D /dev/md0 查看
通过mkfs工具 格式化raid盘
mkfs.ext4 /dev/md0
创建挂载点 并挂载
mkdir /md0
mount /dev/md0 /md0
这样 /md0就是一块 raid0 磁盘了