linux交换分区和逻辑卷
创始人
2025-05-31 18:44:31

交换分区

查看交换分区: [root@localhost ~]# free -m ---查看交换分区

1、流程:

(1)分区

例:创建分区

[root@localhost ~]# fdisk /dev/sda
Command (m for help): n --- 创建分区
Value out of range.p   primary (0 primary, 0 extended, 4 free)e   extended (container for logical partitions)
Select (default p): p --- 主分区
Partition number (1-4, default 1): 
First sector (2048-20971519, default 2048): 
Last sector, +sectors or +size{K,M,G,T,P} (2048-20971519, default 20971519): +2G
Command (m for help): p ---打印分区信息Device     Boot Start     End Sectors Size Id Type
/dev/sda1        2048 4196351 4194304   2G 83 Linux --- 83对应linux类型
Command (m for help): l --- 查看分区类型0  Empty           24  NEC DOS         81  Minix / old Lin bf  Solaris        1  FAT12           27  Hidden NTFS Win 82  Linux swap / So c1  DRDOS/sec (FAT-2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
........

(2)可选:更改分区类型 --- t

例2:更改分区类型

Command (m for help): t --- 更改分区类型
Selected partition 1 --- 目前只有一个,默认修改一号分区类型
Hex code (type L to list all codes): 82 --- 将分区类型修改为82
Changed type of partition 'Linux' to 'Linux swap / Solaris'. --- 分区类型已成功修改为linux交换分区Command (m for help): pDevice     Boot Start     End Sectors Size Id Type
/dev/sda1        2048 4196351 4194304   2G 82 Linux swap / Solaris

(3)格式化 --- mkswap

例3:格式化

[root@localhost ~]# mkswap /dev/sda1 --- 格式化
[root@localhost ~]# free -m --- 查看交换分区total        used        free      shared  buff/cache   available
Mem:           1806         630         756           9         419        1004
Swap:          2047           0        2047

(4)挂载分类:

<1> 临时挂载swapon 设备名

[root@localhost ~]# swapon /dev/sda1 --- 临时挂载
[root@localhost ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:           1806         631         754           9         419        1003
Swap:          4095           0        4095
[root@localhost ~]# swapoff /dev/sda1 --- 去掉临时挂载

<2> 永久挂载:添加进/etc/fstab文件中

  • 分区文件挂载
  • UUID挂载
实现UUID挂载
[root@localhost ~]# blkid /dev/sda1 --- 查询UUID
/dev/sda1: UUID="52ef06ce-2a2c-4663-b3c2-40819792be21" TYPE="swap" PARTUUID="9468c7dc-01"
[root@localhost ~]# vim /etc/fstab --- 永久挂载
/dev/mapper/rhel-swap   swap                    swap    defaults        0 0
UUID="52ef06ce-2a2c-4663-b3c2-40819792be21" swap        swap    defaults        0 0 --- UUID挂载
[root@localhost ~]# tail -1 /etc/fstab --- 查看
UUID="52ef06ce-2a2c-4663-b3c2-40819792be21" swap	swap    defaults        0 0 
[root@localhost ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:           1806         632         733           9         439        1001
Swap:          2047           0        2047
[root@localhost ~]# swapon -a --- 相当于激活在/etc/fstab文件中写入的,实现永久挂载
[root@localhost ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:           1806         634         731           9         439         999
Swap:          4095           0        4095

2、常用命令

命令功能
mkswap 分区设备名 将指定的分区格式化为swap交换文件系统
swapon 交换分区设备名 | -a 启用(或激活)指定的交换分区或所有交换分区
swapoff 交换分区设备名 | -a 禁用指定的交换分区或所有交换分区
swapon -s 查看交换分区的使用情况
free -m 以兆字节为单位显示物理内存、交换分区的使用情况

缺点:不论是MBR还是GPT分区,如果挂载目录的空间用尽,都无法实行动态扩展


逻辑卷

1、含义:

逻辑卷管理器是Linux系统用于对硬盘分区进行管理的一种机制,理论性较强,其创建初衷是为了解决硬盘设备在创建分区后不易修改分区大小的缺陷。

2、优点:动态管理

LVM技术是在硬盘分区和文件系统之间添加了一个逻辑层,它提供了一个抽象的卷组,可以把多块硬盘进行卷组合并

LVM的技术架构如图所示:

3、逻辑卷基本概念

物理存储介质:这里指系统的存储设备:硬盘。如:/dev/hda1、/dev/sda等等,是存储系统最低层的存储单元

(1)物理卷(PV --- Physical Volume)

物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数

(2)卷组(VG --- Volumne Group)

卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。即卷组由物理卷组成,类似于非LVM系统中的物理硬盘,可以在卷组上创建一个或多个"LVM分区"(逻辑卷)

(3)逻辑卷(LV --- Logical Volume)

逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷要以属于同一个卷组,也可以属于不同的多个卷组

常用命令:

  • -n lv名称

  • -L lv大小

  • -l lv大小(例:-l 50 --- 50个PE大小,50*4M=200M)

(4)物理区域(PE --- Physical Extent)

物理区域是物理卷中可用于分配的最小存储单元,物理区域的大小可根据实际情况在建立物理卷时指定。物理区域大小一旦确定将不能更改,同一卷组中的所有物理卷的物理区域大小需要一致。默认为 4MB
查看物理区域大小:[root@localhost ~]# vgdisplay --- Volume group ---VG Name               rhelSystem ID             Format                lvm2Metadata Areas        1Metadata Sequence No  3VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                2Open LV               2Max PV                0Cur PV                1Act PV                1VG Size               <19.00 GiBPE Size               4.00 MiB --- 默认为4MTotal PE              4863Alloc PE / Size       4863 / <19.00 GiBFree  PE / Size       0 / 0   VG UUID               xcJ9cx-zQad-lQof-RtKg-7Vf3-W74N-pgvmOh

(5)逻辑区域(LE --- Logical Extent)

逻辑区域是逻辑卷中可用于分配的最小存储单元,逻辑区域的大小取决于逻辑卷所在卷组中的物理区域的大小。在同一个卷组中,LE的大小和PE是相同的,并且一一对应

(6)卷组描述区域(VGDA --- Volume Group Descriptor Area)

        卷组描述区域存在于每个物理卷中,用于描述物理卷本身、物理卷所属卷组、卷组中的逻辑卷及逻辑卷中物理区域的分配等所有信息,卷组描述区域是在使用pvcreate建立物理卷时建立的。VGDA包括以下内容: PV描述符、VG描述符、LV描述符、和一些PE描述符。         系统启动LVM时激活VG,并将VGDA加载至内存,来识别LV的实际物理存储位置。当系统进行I/O操作时,就会根据VGDA建立的映射机制来访问实际的物理位置

4、常用LVM部署命令

命令物理卷管理卷组管理逻辑卷管理
扫描pvscanvgscanlvscan
建立pvcreatevgcreatelvcreate
显示pvdisplayvgdisplaylvdisplay
删除pvremovevgremovelvremove
扩展vgextendlvextend
缩小vgreducelvreduce

5、部署逻辑卷

(1)流程:PV ---> VG ---> LV

(2)案例:

<1> 正向操作:PV ---> VG ---> LV

例1:先分区 --- 三个主分区,每个分区为1G

首先删除之前创建的分区
[root@localhost ~]# vim /etc/fstab
/dev/mapper/rhel-swap   swap                    swap    defaults        0 0
UUID="52ef06ce-2a2c-4663-b3c2-40819792be21" swap        swap    defaults        0 0  --- 将此行删除
[root@localhost ~]# swapoff /dev/sda1 --- 卸除挂载
[root@localhost ~]# fdisk /dev/sda --- 进入创建分区
Command (m for help): d --- 删除之前创建的分区
Command (m for help): n --- 创建分区
Partition typep   primary (0 primary, 0 extended, 4 free)e   extended (container for logical partitions)
Select (default p): --- 默认创建主分区Using default response p.
Partition number (1-4, default 1):
First sector (2048-20971519, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-20971519, default 20971519): +1G
Command (m for help): n
Select (default p):
Using default response p.
Partition number (2-4, default 2):
Last sector, +sectors or +size{K,M,G,T,P} (2099200-20971519, default 20971519): +1G
Command (m for help): n
Select (default p):
Using default response p.
Partition number (3,4, default 3):
Last sector, +sectors or +size{K,M,G,T,P} (4196352-20971519, default 20971519): +1G
Command (m for help): p --- 打印分区信息
/dev/sda1          2048 2099199 2097152   1G 83 Linux
/dev/sda2       2099200 4196351 2097152   1G 83 Linux
/dev/sda3       4196352 6293503 2097152   1G 83 Linux

例2:修改分区类型


(更改分区类型为 --- 8e)

Command (m for help): p
/dev/sda1          2048 2099199 2097152   1G 8e Linux LVM
/dev/sda2       2099200 4196351 2097152   1G 8e Linux LVM
/dev/sda3       4196352 6293503 2097152   1G 8e Linux LVM
Command (m for help): w --- 保存退出

例3:创建PV

[root@localhost ~]# pvcreate /dev/sda{1..3} --- 创建pv(3个物理卷创建成功)Physical volume "/dev/sda1" successfully created.Physical volume "/dev/sda2" successfully created.Physical volume "/dev/sda3" successfully created.查看:pvs、pvdispaly、pvscan
[root@localhost ~]# pvsPV             VG   Fmt  Attr PSize   PFree/dev/nvme0n1p2 rhel lvm2 a--  <19.00g    0/dev/sda1           lvm2 ---    1.00g 1.00g/dev/sda2           lvm2 ---    1.00g 1.00g/dev/sda3           lvm2 ---    1.00g 1.00g
[root@localhost ~]# pvscanPV /dev/nvme0n1p2   VG rhel            lvm2 [<19.00 GiB / 0    free]PV /dev/sda1                           lvm2 [1.00 GiB]PV /dev/sda2                           lvm2 [1.00 GiB]PV /dev/sda3                           lvm2 [1.00 GiB]Total: 4 [<22.00 GiB] / in use: 1 [<19.00 GiB] / in no VG: 3 [3.00 GiB]

例4:创建VG

[root@localhost ~]# vgcreate myvg1 /dev/sda1 /dev/sda2 --- 将sda1和sda2放入myvg1中Volume group "myvg1" successfully created查看:vgs、vgdisplay
[root@localhost ~]# vgs --- 查看VG    #PV #LV #SN Attr   VSize   VFreemyvg1   2   0   0 wz--n-   1.99g 1.99grhel    1   2   0 wz--n- <19.00g    0
[root@localhost ~]# vgdisplay myvg1 --- 查看myvg1的详细信息(如果要指定PE大小,参数为S)
[root@localhost ~]# vgcreate -s 16M myvg1 --- 将PE大小默认4M改为16M

例5:扩展VG

[root@localhost ~]# vgextend myvg1 /dev/sda3 --- 将sda3添加到myvg1中
[root@localhost ~]# vgs myvg1 --- 查看大小VG    #PV #LV #SN Attr   VSize  VFreemyvg1   3   0   0 wz--n- <2.99g <2.99g

例6:创建LV

[root@localhost ~]# lvcreate -n lv1 -L 500M myvg1 --- 在myvg1中创建名字为lv1,大小为500M的lvLogical volume "lv1" created.-l lv大小(例:-l 50 --- 50个PE大小,50*4M=200M)
[root@localhost ~]# lvcreate -n lv2 -l 200 myvg1 --- 创建一个800M的逻辑卷,名字为lv2Logical volume "lv2" created.查看:lvs、lvdispaly
[root@localhost ~]# lvs --- 查看lvLV   VG    Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convertlv1  myvg1 -wi-a----- 500.00mlv2  myvg1 -wi-a----- 800.00mroot rhel  -wi-ao---- <17.00gswap rhel  -wi-ao----   2.00g
[root@localhost ~]# lvdisplay /dev/myvg1/lv1 --- 查看lv1的详细信息

例7:格式化以及挂载

[root@localhost ~]# mkfs.xfs -f /dev/myvg1/lv1 --- 格式化
[root@localhost ~]# blkid /dev/myvg1/lv1 --- 查看UUID
/dev/myvg1/lv1: UUID="24dcd389-74bb-49b9-b958-4542db0049a6" TYPE="xfs"
[root@localhost ~]# mkdir /data --- 创建/data文件
[root@localhost ~]# mount /dev/myvg1/lv1 /data --- 在/data目录下实现临时挂载

例8:LV扩展

[root@localhost ~]# dd if=/dev/zero of=/data/ss.rmvb bs=100M count=5 --- 模拟一个500M文件<1> 先查看lv1所在的vg是否有剩余空间来扩展
[root@localhost ~]# lvs --- 查看lv对应的vgLV   VG    Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convertlv1  myvg1 -wi-ao---- 500.00m --- lv1所在的vg为myvg1
[root@localhost ~]# vgs myvg1 --- 查看所在vg是否还有剩余空间VG    #PV #LV #SN Attr   VSize  VFreemyvg1   3   2   0 wz--n- <2.99g <1.72g --- 剩余1.7G1>如果剩余空间满足,直接扩展lv
2>如果剩余空间不满足,先扩展vg,在扩展lv<2> 扩展lv
[root@localhost ~]# lvextend -L 2G /dev/myvg1/lv1 --- 将lv扩展到2G
-L 2G:代表扩展到2G
-L +200M:代表增加200M 扩展文件系统后才可将空间添加进去
ext文件系统:[root@localhost ~]# resize2fs /dev/myvg1/lv1
xfs文件系统:[root@localhost ~]# xfs_growfs /dev/myvg1/lv1
[root@localhost ~]# xfs_growfs /dev/myvg1/lv1
meta-data=/dev/mapper/RHCE-myvg1     isize=512     agcount=4, agsize=6400 blks=                           sectsz=512    attr=2, projid32bit=1=                           crc=1         finobt=1, sparse=1, rmapbt=0=                           reflink=1
data     =                           bsize=4096    blocks=25600, imaxpct=25=                           sunit=0       swidth=0 blks
naming   =version 2                  bsize=4096    ascii-ci=0, ftype=1
log      =internal log               bsize=4096    blocks=1368, version=2=                           sectsz=512    sunit=0 blks, lazy-count=1
realtime =none                       extsz=4096    blocks=0, rtextents=0
data blocks changed from 128000 to 524288
[root@localhost ~]# df -h 
/dev/mapper/myvg1-lv1 2.0G  504M  1.6G  25%  /data

<2> 反向操作:LV ---> VG ---> PV

例1:卸载

[root@localhost ~]# umount /dev/myvg1/lv1 --- 取消挂载

例2:删除LV

[root@localhost ~]# lvremove /dev/myvg1/lv1 --- 删除lv1
Do you really want to remove active logical volume myvg1/lv1? [y/n]: yLogical volume "lv1" successfully removed
[root@localhost ~]# lvremove /dev/myvg1/lv2 --- 删除lv2
Do you really want to remove active logical volume myvg1/lv2? [y/n]: yLogical volume "lv2" successfully removed

例3:删除VG

[root@localhost ~]# vgremove myvg1 --- vgremove -- 移除Volume group "myvg1" successfully removed

例4:删除PV

[root@localhost ~]# pvremove /dev/sda{1..3}Labels on physical volume "/dev/sda1" successfully wiped.Labels on physical volume "/dev/sda2" successfully wiped.Labels on physical volume "/dev/sda3" successfully wiped.

例5:删除分区

[root@localhost ~]# fdisk /dev/sda
Command (m for help): d --- 删除,默认从后往前删除
Partition 3 has been deleted.Command (m for help): d
Partition 2 has been deleted.Command (m for help): d
Partition 1 has been deleted.
Command (m for help): w
[root@localhost ~]# lsblk --- 查看分区信息
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda             8:0    0   10G  0 disk
sr0            11:0    1  6.6G  0 rom

相关内容

热门资讯

杭州重点高中有哪些,杭州有哪些... 杭州重点高中有哪些目录杭州重点高中有哪些杭州有哪些重点高中杭州哪所高中最好杭州重点高中有哪些 ...
女为悦己者容意思,士为知己者死... 女为悦己者容意思目录女为悦己者容意思士为知己者死,女为悦己者容.是什么意思.女人无需为悦己者容悦人不...
北戴河是海吗 极速百科网 极速... 北戴河是海吗目录北戴河是海吗北戴河是海吗 北戴河是海。北戴河古称渝水,清光绪年间,因沙河流经戴...
外婆是什么样的关系,姥姥与我的... 外婆是什么样的关系目录外婆是什么样的关系姥姥与我的关系叫什么关系姥姥是指外婆还是奶奶??我与外婆是什...
头歌--第1关:Linux文件... 任务描述 假设系统中存在一个文件File,修改该文件的权限,根据实际需求...
【Spring从成神到升仙系列... 👏作者简介:大家好,我是爱敲代码的小黄,独...
梦见蜈蚣是什么意思,做梦梦见蜈... 梦见蜈蚣是什么意思目录梦见蜈蚣是什么意思做梦梦见蜈蚣什么意思梦见蜈蚣是什么意思,哪里有解释啊梦见蜈蚣...
小区车位比一般是多少,车库配比... 小区车位比一般是多少目录小区车位比一般是多少车库配比是什么小区总户数8200,总车位是1450个,配...
车锁上的lock什么意思,汽车... 车锁上的lock什么意思目录车锁上的lock什么意思汽车上lock是什么意思?车子上“lock标志”...
kirin710是什么处理器,... kirin710是什么处理器目录kirin710是什么处理器海思kirin710是高通多少?骁龙71...
程序的循环结构和random库...   第三个参数就是步长     引入文件时记得指明字符格式,否则读入不了 ...
跟着文档制作cocos第一个游... 背景 近期打算学习一下cocos creator,想着开发自己的游戏,是...
乌干达是什么梗,网络语乌干达什... 乌干达是什么梗目录乌干达是什么梗网络语乌干达什么意思?乌干达是什么梗乌干达是什么梗乌干达是什么梗 ...
车载电子狗怎么用,怎样使用电子... 车载电子狗怎么用目录车载电子狗怎么用怎样使用电子狗怎么使用电子狗求简答车载电子狗怎么使用车载电子狗怎...
梦见偷东西是什么意思,梦见自己... 梦见偷东西是什么意思目录梦见偷东西是什么意思梦见自己偷东西是什么意思?做梦梦见自己偷东西好不好梦见偷...
黄金瞳到底是什么,黄金瞳电视剧... 黄金瞳到底是什么目录黄金瞳到底是什么黄金瞳电视剧什么时候上映?《黄金瞳》的结局是什么?电视剧《黄金瞳...
前端-session、jwt 目录:   (1)session (2&#x...
企业即时通讯怎样为企业实现移动... 对于企业来说,在办公过程中少不了工作人员相互传递信息和数据传输,企业内部...
骑行选择什么自行车 极速百科网... 骑行选择什么自行车目录骑行选择什么自行车骑行选择什么自行车 1. 山地自行车:适合崎岖不平的路...
蓝色都有哪几种,蓝色都有什么颜... 蓝色都有哪几种目录蓝色都有哪几种蓝色都有什么颜色的蓝图片,蓝色都有什么颜色的蓝二年级蓝色有哪些种类蓝...
如何自学游泳要安全的,初学游泳... 如何自学游泳要安全的目录如何自学游泳要安全的初学游泳的人需要准备哪些东西,注意哪些事项?如何自学游泳...
一年级家长的话怎么写评语,一年... 一年级家长的话怎么写评语目录一年级家长的话怎么写评语一年级学生评价手册家长寄语怎么写一年级最佳家长评...
EEG微状态的功能意义 导读大脑的瞬时全局功能状态反映在其电场结构上。聚类分析方法一致地提取了四种头表面脑电场结构ÿ...
docker 镜像管理 查看本地镜像 docker images 可以查看本地下载的镜像 docker images [O...
k8s-1.22.15部署ng... 1.介绍 在前面文章中已经提到,Service对集群之外暴露服务的主要方式有两种&#x...
革命烈士寄语怎么写,清明节缅怀... 革命烈士寄语怎么写目录革命烈士寄语怎么写清明节缅怀先烈的寄语有哪些呢?革命烈士寄语怎么写 革命...
5万元以下新车推荐,5万以下买... 本篇文章极速百科给大家谈谈5万元以下新车推荐,5万以下买什么车好,以及5万以下的新车哪款最好对应的知...
真皮沙发翻新一般多少钱?(真皮... 本篇文章极速百科给大家谈谈真皮沙发翻新一般多少钱?,以及真皮沙发翻新一般多少钱一个对应的知识点,希望...
磨皮什么意思(磨皮是啥?) 磨... 本篇文章极速百科给大家谈谈磨皮什么意思,以及磨皮是啥?对应的知识点,希望对各位有所帮助,不要忘了收藏...
进程间通信【Linux】 1. 进程间通信 1.1 什么是进程间通信 在 Linux 系统中,进程间通信...