百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Linux磁盘管理LVM和RAID使用介绍

gudong366 2025-05-23 16:02 7 浏览

摘要:一般情况下,Linux的磁盘管理有很多工具,划分磁盘的类型可以是普通的物理磁盘,也可以是逻辑磁盘,还可以使用RAID工具对磁盘进行容错管理。

本文主要介绍Linux系统磁盘管理工具LVM和RAID的使用方法,详细内容参考下文。

一、登陆Linux系统

1、登陆Linux

2、查看磁盘情况

二、逻辑卷管理器(LVM)

LVM:LVM是逻辑盘卷管理(Logical Volume Manager)的简称,是Linux环境下对卷进行操作的抽象层。LVM是建立在硬盘和分区之上的一个逻辑层,为文件系统屏蔽下层磁盘分区布局,从而提高磁盘分区管理的灵活性。LVM允许在多个物理设备间重新组织文件系统,包括重新设定文件系统的大小。

通过LVM,可以实现存储空间的抽象化并在上面建立虚拟分区,可以更简便地扩大和缩小分区,可以增删分区时无需担心某个硬盘上没有足够的连续空间,避免为正在使用的磁盘重新分区的麻烦、为调整分区而不得不移动其他分区的不便,它相比传统的分区系统可以更灵活地管理磁盘。

1、LVM结构图

2、LVM术语

(1)、物理卷

物理卷是LVM的基本存储逻辑块,物理卷可以是整个硬盘、硬盘上的分区或从逻辑上一磁盘分区具有同样功能的设备(如:RIAD)。物理卷(physical volume, PV)在LVM系统中处理最底层。

(2)、卷组

卷组(Volume Group,VG)建立在物理卷之上,它由一个或多个物理卷组成;卷组创建之后,可以动态添加物理卷到卷组中,在卷组上可以创建一个或多个逻辑卷;一个LVM系统中可以只有一个卷组,也可以包含多个卷组。LVM的卷组类似于非LVM系统中的物理硬盘。

(3)、逻辑卷

逻辑卷(Logical Volume,LV)建立在卷组之上,逻辑卷相当于分区,只不过给分区时通过卷组划分,划分为逻辑卷后就相当于划分了分区,仅需要对LV进行格式化文件系统即可。

(4)、LVM与文件系统之间的关系

说明:/boot 分区不能位于卷组中,因为引导装载程序无法从逻辑卷中读取;如果想把 / 分区放在逻辑卷上,必须创建一个与卷组分离的 /boot 分区。

注意:安装Linux系统的时候,如果选择LVM磁盘管理,需要将启动文件放到单独的/boot目录中,这个/boot目录最好是单独创建的/dev/sda1磁盘。

(5)、PV&VG&LV的设备名

名称

含义

设备名

PV

物理卷,对应磁盘或者分区

/dev/sda*

VG

卷组,对应一组磁盘或者分区

/dev/<VGname>

LV

逻辑卷,对应着LVM分区

/dev/<VGname>/<LVname>

(6)、LVM 常用命令集

任务

PV

VG

LV

创建

pvcreate

vgcreate

lvcreate

删除

pvremove

vgremove

lvremove

显示信息

pvs

vgs

lvs

扫描列表

pvscan

vgscan

lvscan

显示属性

pvdisplay

vgdisplay

lvdisplay

更改属性

pvchange

vgchange

lvchange

扩展


vgextend

lvextend / lvresize

缩减


vgreduce

lvreduce / lvresize

(7)、LVM创建过程

第一步:执行指令# pvcreate /dev/sda2创建物理卷/dev/sda2

执行指令# pvcreate /dev/sda3创建物理卷/dev/sda3

第二步:查看新建好的物理卷

执行指令# pvs查看创建好的物理卷

或者执行指令# pvdisplay

第三步:将新创建的物理卷添加到卷组中

执行指令# vgcreate -s 8m centos /dev/{sda2,sda3}

第四步:查看创建好的卷组

执行指令# vgs

或者执行指令# vgdisplay

第五步:在卷组中创建逻辑卷

执行指令# lvcreate -L 140G -n home centos

第六步:查看创建好的逻辑卷

执行指令# lvs

或者执行指令# lvdisplay

第七步:对逻辑卷进行扩展 lvextend / lvresize

执行指令# lvextend -L 100G /dev/centos/home可以对逻辑卷/home扩容100G。

第八步:对逻辑卷进行格式化 mkfs、

执行指令# mkfs -t ext4 /dev/centos/home对逻辑卷/home进行ext4格式化。

第九步:对逻辑卷进行挂载 mount

执行指令# mkdir /lvm创建挂载点

执行指令# mount /dev/centos/home /lvm将逻辑卷挂载到挂载点

三、磁盘阵列(RAID)

RAID:RAID(Redundant Arrays of Inexpensive Disks)容错式廉价磁盘阵列。RAID技术可以通过软件或硬件实现,将多个磁盘整合成为一个较大的磁盘装置,该装置不仅有存储功能,还具有数据保护的功能。RAID具有多个不同的等级,每个等级的对整合后的磁盘实现不同的功能。比较常用等级有RAID1和RAID5。

1、磁盘阵列的优点

(1)、整合现有的磁盘空间

(2)、提高磁盘的IO效率

(3)、提供容错性

2、磁盘阵列的类型

(1)、硬件磁盘阵列:使用磁盘阵列卡,使用dmraid工具管理;

(2)、软件磁盘阵列:使用Linux系统仿真磁盘功能,使用mdadm工具管理。

备注:在Linux中常用的是使用mdadm工具管理来实现软件RAID。

3、创建软件RAID

第一步:确认Linux是否安装mdadm工具包

执行指令# rpm -qa mdadm

第二步:对磁盘进行分区并设置分区类型为RAID

执行执行# fdisk /dev/sda

备注:fdisk 命令只适合小于2T的硬盘,如大于2T则需要使用parted。

第三步:使用mdadm创建RAID

执行指令# mdadm --create /dev/md0 --auto yes --level 1 n2 /dev/sda{sda2,sda3}

第四步:查看创建好的RAID

执行指令# mdadm -D /dev/md0

第五步:格式化RAID分区

执行指令# mkfs -t ext4 /dev/md0

第六步:挂载RAID分区

执行指令# mkdir /raid创建挂载点

执行指令# mount /dev/md0 /raid将RAID分区挂载到挂载点

相关推荐

linux sed系列 第四篇:sed工业实战——日志处理与数据清洗

“掌握了sed的编程能力后,我们如同装备精良的工匠,终于可以踏入真实的工业战场。本篇将聚焦sed在日志分析、数据合规化、多文件批处理等场景中的应用,看它如何在海量数据中游刃有余,展现文本处理的...

Linux下sed的简单使用(linux中sed是什么意思)

1、sed简介stremeditor流编辑器,它是一项Linux指令,功能同awk类似,差别在于,sed简单,对列处理的功能要差一些,awk的功能复杂,对列处理的功能比较强大,sed编辑器是一行一...

linux基础命令之date命令(linux中的date)

date命令主要用于显示或者设置系统时间语法格式:date参数对象使用date命令时,最好先使用date--help命令查看支持哪些参数,有些小型Linux系统下的date命令,只支持一些基本参...

Ubuntu linux 常用命令(ubuntu常用的50个命令)

使用dpkg命令来安装.deb包。sudodpkg-i~/example.deb如果在安装过程中遇到依赖问题,可以使用以下命令来修复:sudoapt-getinstall-f将flut...

Linux基础命令-sed命令(linux教程:sed命令的用法)

Sed全名streameditor流编辑器,它是一个强大的文本处理工具,它可以从文件中接受输入,也可以接受来自标准输入流的输入,它擅长取行。Sed的用途非常广泛,包括:1)文本替换2)选择性的输...

linux sed系列 第二篇:sed进阶技巧——地址定位与正则表达式

“上一篇我们掌握了sed的基础替换,如同获得了第一把钥匙。现在,让我们更进一步,学习如何精准锁定目标行,如同拥有了导航地图,让每一次操作都直击要害!”地址定位的四种维度sed的强大,很大程度上源...

火狐Firefox浏览器140发布:手动Unload标签页、优化翻译体验等

IT之家6月24日消息,Mozilla在发布版本139不到一个月后,推出了最新的开源网页浏览器Firefox140。新版本增加了手动Unload标签页的功能,优化了垂直标签页的调...

Linux 基本正则表达式及扩展正则表达式功能举例

在Linux中,正则表达式(RegularExpression)是一种强大的模式匹配工具,用于在文本中查找、匹配和处理特定模式的字符串。Linux支持两种类型的正则表达式:基本正则表达式(Basic...

linux下find命令的经典26个使用示例

简介find命令是基于unix的操作系统中常用的工具之一。顾名思义,它在目录层次结构中查找文件和目录。用户可以传递不同的参数,并根据文件的名称、扩展名、类型、大小、权限、修改时间、所有者、组等搜索文件...

linux运维中特殊符号的应用与实践

路径位置类的特殊符号(1)、波浪线(~)在linux系统的命令行中,~表示用户的家目录,超级用户为/root,普通用户为/home。假设我当前目录在usr/local下[root@xrylocal]...

开源框架log4cpp实战(开源gui框架)

1.Log4cpp使用Log4cpp中主要包含Category(种类),Appender(附加器),Layout(布局),Priorty(优先级),NDC(嵌套的诊断上下文)。Category、App...

Linux find命令详解(linux find -l)

一、命令介绍Linuxfind命令是类unix操作系统中最重要和最常用的命令行实用程序之一。find命令用于根据指定的条件搜索和定位与参数匹配的文件和目录列表。find命令提供了广泛的选项,允许用户...

Linux运维:单引号与双引号的使用(linux 单引号和双引号)

1、单引号的使用单引号可以将它中间的所有任意字符还原为字面意义,实现屏蔽Shell元字符的功能。注意不可以在两个单引号中间单独插入一个单引号,单引号必须成对出现。示例1:定义一个变量,并输出变量的...

Linux技巧:find 命令用法详细说明,看完会有收获

在Linux命令中,find是比较复杂难用的命令。使用该命令搜索文件时,常常发现自己找了一些例子能用,但稍微改一下条件,就搜不到想要的结果。下面会以一些实例来说明使用find命令的关键要点和...

Linux Shell中单引号、双引号、反引号的解释

1、单引号('')单引号所见即所得,直接显示单引号里的内容。即单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的。比如下面的例子,单引号所见即所得。2、双引号("...