博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何使用LVM卷管理Linux系统中的磁盘
阅读量:6092 次
发布时间:2019-06-20

本文共 4896 字,大约阅读时间需要 16 分钟。

在Linux服务器中,当现有硬盘的分区规划不能满足要求时,就需要对硬盘中的分区进行重新规划和调整,有时候还需要添加新的硬盘设备来扩展存储空间。

实现上述操作要用到fdisk磁盘及分区管理工具,fdisk是大多数Linux系统中自带的基本工具之一。下面通过为Linux主机新增一块硬盘并建立分区的过程,介绍fdisk工具的使用。

一、检测并确认新硬盘

挂接好新的硬盘设备并启动主机后,Linux系统会自动检测并加载该硬盘,无需额外安装驱动。执行“fdisk -l”命令可以进行查看,确认新增硬盘的设备名称。

“fdisk -l”命令的作用是列出当前系统中所有硬盘设备及其分区的信息

【例1】:执行“fdisk -l”命令,确认系统新识别的硬盘设备(/dev/sdb)。

上述输出信息中包含了各硬盘的整体情况和分区情况,其中“/dev/sda”为原有的硬盘设备,而“/dev/sdb”为新增的硬盘,新的硬盘设备还未进行初始化,没有包含有效的分区信息。

对于已有的分区,将通过列表的方式输出以下信息。

Device分区的设备文件名称。

Boot:是否是引导分区,是,则有“*”标识。

Start:该分区在硬盘中的起始位置(柱面数)。

End:该分区在硬盘中的结束位置(柱面数)。

Blocks:分区的大小,以Blocks(块)为单位,默认的块大小为1024字节。

Id:分区类型的ID标记号,对于ext3分区为83,LVM分区为8e

System:分区类型。

识别到新的硬盘设备后,接下来就可以在该硬盘中建立新的分区了。在Linux系统中,分区和格式化的过程是相对独立的。

二、规划硬盘中的分区

在硬盘设备中创建、删除、更改分区等操作同样通过fdisk命令进行,只要使用硬盘的设备文件作为参数,即可进入到交互式的分区管理界面中,如下图。

在该操作界面中的提示符后,用户可以输入特定的分区操作指令,完成各项分区管理任务,例如输入“m”指令后,可以查看各种操作指令的帮助信息,如下图。

在分区过程中常用的一些交互操作指令有:

1、m:查看操作指令的帮助信息

2、p:列表查看分区信息

3、n:新建分区

4、d:删除分区

5、t:变更分区类型

6、w:保存分区设置并退出

7、q:放弃分区设置并退出

在以上操作中应注意的有:

【1】:选择分区号时,主分区和扩展分区的序号只能在1-4之间。分区起始位置一般由fdisk默认识别即可,结束位置或大小可以使用“+sizeM”或“+sizeK”的形式,如“+20 000M”表示将该分区的容量设置为20GB。

【2】:在执行删除分区时一定要慎重,应首先使用p指令查看分区的序号,确认无误后再进行删除。如果扩展分区被删除,则扩展分区之下的逻辑分区也将同时会被删除。因此建议从最后一个分区开始进行删除,以免fdisk识别的分区序号发生紊乱。

【3】:使用“t”更改分区类型时,只要依次指定分区序号及更改后分区类型的ID标记号即可。如果不知道分区类型对应的ID号,可以输入“l”指令列表查看各种分区类型所对应的标记号,

Linux系统中最常用的两种文件系统ext3、swap的ID号分别为83、82.

【4】:变更硬盘(特别是正在使用的硬盘)的分区设置以后,建议最好将系统进行重启,或者执行“partprobe”命令使操作系统获知新的分区表情况。在有些Linux操作系统中,若不进行这些操作,可能会导致格式化分区时对硬盘中已有数据的损坏,严重者甚至引起系统崩溃。

#partprobe   /dev/sdb

三、格式化分区

mkfs命令:

用途:创建文件系统(格式化)

格式:mkfs -t 文件系统类型  分区设备

mkswap命令

用途:创建交换文件系统

格式:mkswap  分区设备

实际上mkfs命令是一个前端工具,可以自动加载不同的程序来创建各种类型的分区,而后端包括有多个与mkfs命令相关的工具程序,例如支持FAT16、FAT32分区格式的mkfs.vfat程序等。

【例2】:查看“/sbin”目录中与mkfs相关的工具程序。

【例3】:在“/dev/sdb1”分区中创建ext3文件系统。

#mkfs  -t   ext3  /dev/sdb1

等同于执行“mkfs.ext3   /dev/sdb1”

【例4】:创建并启用交换分区,并通过free命令观察交换空间的变化。

四、挂载、卸载文件系统

1、mount命令

用途:挂载文件系统、ISO镜像到指定文件夹

格式:mount  [-t 类型]   存储设备  挂载点目录

     mount -o  loop    ISO镜像文件    挂载点目录

2、umount命令

用途:卸载已挂载的文件系统

格式:umount    存储设备位置

     umount    挂载点目录

3、查看已挂载分区的使用情况

      df   -hT

在Linux系统中,对各种存储设备中的资源访问都是通过目录结构进行的,虽然系统核心能够通过“设备文件”的方式操纵各种设备,但是对于用户来说,还需要增加一个“挂载”的过程,才能像正常访问目录一样访问存储设备中的资源。

当然,在安装Linux操作系统的过程中,自动建立或识别的分区通常会由系统自动完成挂载。然而对于后来新增加的硬盘分区、USB盘、光盘等设备,有时候还需要管理员手动进行挂载,实际上用户访问的是经过格式化后建立的文件系统。挂载一个分区时,必须为其制定一个目录作为挂靠点,用户通过这个目录访问设备中的文件、目录数据。

在Linux系统中,U盘设备被模拟成SCSI设备,因此与挂载普通SCSI硬盘中的分区并没有明显区别。若不确定所添加的U盘设备文件,可以先执行“fdisk -l”命令进行查看确认。

使用不带任何参数或选项的mount命令时,将显示出当前系统中已挂载的各个文件系统的相关信息。

proc、sysfs、tmpfs等文件系统是Linux运行所需要的临时文件系统,并没有实际的硬盘分区与其相对应,因此也称为“伪文件系统”。例如proc映射了内存及cpu寄存器中的部分数据。

设置文件系统的自动挂载】:

/etc/fstab配置文件:包含了需要开机后自动挂载的文件系统记录。如下图:

系统中的“/etc/fstab”文件可以视为mount命令的配置文件,其中存储了文件系统的静态挂载数据。Linux系统每次开机时,会自动读取这个文件的内容,自动挂载所指定的文件系统

在“/etc/fstab”文件中,每一行记录对应一个分区或设备的挂载配置信息,从左到右包括六个字段(使用空格或制表符分隔),各部分的含义如下所述:

第一字段:设备名或设备卷标名。

第二字段:文件系统的挂载点目录的位置。

第三字段:文件系统类型,如ext3、swap等。

第四字段:挂载参数,即mount命令“-o”选项后可使用的参数,如defaults、rw等。

第五字段:表示文件系统是否需要dump备份,一般设为1时表示需要,设为0时将被dump所忽略。

第六字段:该数字用于决定在系统启动时进行磁盘检查的顺序,0表示不进行检查,1表示优先检查,2表示其次检查。对于根分区应设为1,其他分区设为2.

【例5】:修改“/etc/fstab”文件,添加自动挂载“/dev/sdb1”分区的配置行。

#vi  /etc/fstab

在文件末尾添加如下行内容:

/dev/sdb1    /mailbox     ext3      default     0  0

一、LVM概述

     LVM是Linux系统中对磁盘分区进行管理的一种逻辑机制,它是建立再硬盘和分区之上,文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局,能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高了磁盘管理的灵活性。

在安装RHEL5系统的过程中选择自动分区时,默认就会采用LVM分区方案,不需要再进行手动配置。如果有特殊需要,也可以使用安装向导提供的磁盘定制工具调整LVM分区。需要注意的是,“/boot”分区不能基于LVM创建,必须独立出来。

关于LVM的几个基本术语:

1、PV(Physical Volume,物理卷)

     物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元PE,从而构成物理卷。

物理卷一般直接使用设备文件名称,如“/dev/sdb1”、“/dev/sdb2”等。

   用于转换成物理卷的普通分区,建议先使用fdisk工具将分区类型的ID标记号改为“8e”。若是整块硬盘,可以将所有磁盘空间划分为一个主分区后再作相应调整。

2、VG(Volume Group,卷组)

     由一个或多个物理卷组成一个整体,即成为卷组,在卷组中可以动态地添加或移除物理卷。许多个物理卷可以分别组成不同的卷组,卷组名称由用户自行定义。

3、LV(Logical Volume,逻辑卷)

     逻辑卷是建立在卷组之上的,与物理卷没有直接关系

对于逻辑卷来说,每一个卷组就是一个整体,从这个整体中“切出”一小块空间,作为用户创建文件系统的基础,这一小块空间就称为逻辑卷。使用mkfs等工具在逻辑卷上创建文件系统以后,即可挂载到Linux系统中的目录下使用。

     通过上述对物理卷、卷组、逻辑卷的解释可以看出,建立LVM分区管理机制的过程就是:首先,将普通分区或整个硬盘创建为物理卷;接下来,将物理上比较分散的各物理卷的存储空间组成一个逻辑整体,即卷组;最后,基于卷组这个整体,分割出不同的数据存储空间,形成逻辑卷。而逻辑卷才是最终用户可以格式化并挂载使用的存储单位。

二、LVM的管理命令

功  能

物理卷管理

卷组管理

逻辑卷管理

Scan  扫描 pvscan vgscan lvscan

Create 建立

pvcreate vgcreate lvcreate
Display 显示 pvdisplay vgdisplay lvdisplay
Remove 删除 pvremove vgremove lvremove
Extend 扩展
vgextend lvextend
Reduce 减少
vgreduce lvreduce

主要命令的语法

pvcreate    设备名

vgcreate    卷组名    物理卷名1    物理卷名2

lvcreate      -L    大小    -n     逻辑卷名     卷组名

lvextend     -L  +大小     /dev/卷组名/逻辑卷名

三、LVM应用实例

案例的环境和需求描述如下:

     公司准备在Internet中搭建邮件服务器,面向全国各地的员工即部分VIP客户提供电子邮箱空间。由于用户数量众多,邮件存储需要大量的空间,考虑到动态扩容的需要,计划增加两块SCSI硬盘并构建LVM逻辑卷(挂载到“/mail”目录下)专门用于存放邮件数据。

根据上述案例环境和需求,具体操作步骤如下:

1、关闭服务器,打开机箱,正确挂接2块SCSI新硬盘。

2、开启服务器主机,并执行“fdisk -l”命令进行检查,确认已识别新增的硬盘(sdb、sdc)。

3、在磁盘中进行分区,将每块硬盘的所有空间划分为一个独立的主分区,并将分区类型更改为“8e”。分好区后使用“fdisk -l”命令查看结果如下所示。

4、将“/dev/sdb1”和“/dev/sdc1”分区转换为物理卷。

5、将上述两个物理卷整合,创建名为“mail_store”的卷组。

6、在“mail_store”卷组中创建一个名为“mail”的逻辑卷,容量大小设置为3G。

7、使用mkfs命令在“mail”逻辑卷中创建ext3文件系统,并挂载到“/mail”目录下。

8、动态扩展“mail”逻辑卷的容量(增加500M),并更新系统识别的文件系统大小。

本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1899407,如需转载请自行联系原作者
你可能感兴趣的文章
java模式之模板模式——抽象类
查看>>
[ACM] hdu 1251 统计难题 (字典树)
查看>>
调试json
查看>>
C - Surprising Strings
查看>>
hibernate里的generator中class =value介绍
查看>>
activity-alias的使用
查看>>
第36周日
查看>>
SQL Server 无法打开物理文件的 2 种解决办法
查看>>
推荐一款好用的文件/文件夹对比工具 —— Beyond Compare
查看>>
java设计模式--结构型模式--桥接模式
查看>>
JS window.open()属性
查看>>
手机管理中的应用【6】——电源管理篇
查看>>
【Android工具】DES终结者加密时报——AES加密演算法
查看>>
效果收集-点击显示大图
查看>>
Android 开机过程PMS分析
查看>>
找不到com.apple.Boot.plist
查看>>
使用openssl创建自签名证书及部署到IIS教程
查看>>
入门视频采集与处理(学会分析YUV数据)
查看>>
java keytool详解
查看>>
记一次Redis被攻击的事件
查看>>