硬盘相关-卷
LVM(逻辑卷管理器)的概念
LVM(Logical Volume Manager,逻辑卷管理器)是一种用于管理计算机存储设备上磁盘空间分配的方法。它提供了一种更灵活和动态的磁盘管理方式,与传统的分区方式相比,更加灵活和便于调整。
1. 物理卷(Physical Volume,PV)
物理卷是 LVM 的基本存储单元,通常对应于物理硬盘分区或整个硬盘。一个物理卷可以包含在一个或多个卷组中。
物理卷的创建: 你可以使用
pvcreate
命令将一个物理分区或硬盘初始化为物理卷。例如:1
sudo pvcreate /dev/sda3
物理卷的信息: 通过
pvs
命令可以查看所有物理卷的信息。1
sudo pvs
2. 卷组(Volume Group,VG)
卷组是 LVM 的第二个层次,包含了一个或多个物理卷。一个卷组可以看作是一个存储池,可以在其上创建逻辑卷。
卷组的创建: 可以使用
vgcreate
命令将一个或多个物理卷组合成一个卷组。例如:1
sudo vgcreate ubuntu-vg /dev/sda3
卷组的信息: 通过
vgdisplay
命令可以查看卷组的详细信息。1
sudo vgdisplay
3. 逻辑卷(Logical Volume,LV)
逻辑卷是在卷组之上创建的,可以看作是传统的分区。它提供了实际的存储空间,可以像普通分区一样使用(格式化、挂载等)。
逻辑卷的创建: 可以使用
lvcreate
命令在卷组上创建逻辑卷。例如:1
sudo lvcreate -L 100G -n ubuntu-lv ubuntu-vg
逻辑卷的信息: 通过
lvdisplay
命令可以查看逻辑卷的详细信息。1
sudo lvdisplay
它们之间的关系
物理卷(PV): 物理卷是 LVM 管理的最基本单位,它们是硬盘分区或整块硬盘。多个物理卷可以加入到一个卷组中。
卷组(VG): 卷组由一个或多个物理卷组成,它们将多个物理卷的空间整合在一起,形成一个大的存储池。卷组提供了逻辑卷创建和管理的基础。
逻辑卷(LV): 逻辑卷是在卷组之上创建的虚拟分区,它们可以动态调整大小,并且可以像普通的分区一样进行格式化和挂载。
与硬盘的关系及使用
硬盘分区(或整块硬盘): 首先将硬盘分区(如
/dev/sda1
、/dev/sda2
等)初始化为物理卷。创建卷组: 将一个或多个物理卷添加到卷组中,形成一个统一的存储池。
创建逻辑卷: 在卷组上创建一个或多个逻辑卷,逻辑卷将使用卷组中的空间。
格式化和挂载: 创建好的逻辑卷可以进行格式化,如 ext 4 文件系统,并挂载到文件系统路径上。
使用硬盘空间的方式
- 初始化物理卷:
- 例如,使用
pvcreate /dev/sda3
将物理分区初始化为物理卷。
- 例如,使用
- 创建卷组:
- 使用
vgcreate
命令将一个或多个物理卷组合成一个卷组,如vgcreate ubuntu-vg /dev/sda3
。
- 使用
- 创建逻辑卷:
- 使用
lvcreate
命令在卷组上创建逻辑卷,如lvcreate -L 100G -n ubuntu-lv ubuntu-vg
。
- 使用
- 格式化逻辑卷:
- 例如,使用
mkfs.ext4 /dev/ubuntu-vg/ubuntu-lv
格式化逻辑卷。
- 例如,使用
- 挂载逻辑卷:
- 使用
mount
命令挂载逻辑卷,如mount /dev/ubuntu-vg/ubuntu-lv /mnt
。
- 使用
通过这些步骤,你可以动态地管理和调整存储空间,而不必像传统分区那样需要在创建时确定固定的大小。这种灵活性对于服务器和大规模存储管理尤其重要。
命令及其解释
sudo vgdisplay
: 显示卷组(Volume Group,VG)的详细信息。1
sudo vgdisplay
输出解释:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20--- Volume group ---
VG Name ubuntu-vg # 卷组的名称
System ID
Format lvm2 # 卷组使用的LVM版本
Metadata Areas 1 # 元数据区域数量
Metadata Sequence No 2 # 元数据序列号
VG Access read/write # 卷组的访问权限
VG Status resizable # 卷组的状态
MAX LV 0 # 最大逻辑卷数量(0表示没有限制)
Cur LV 1 # 当前逻辑卷数量
Open LV 1 # 当前打开的逻辑卷数量
Max PV 0 # 最大物理卷数量(0表示没有限制)
Cur PV 1 # 当前物理卷数量
Act PV 1 # 当前活动的物理卷数量
VG Size <462.71 GiB # 卷组的总大小
PE Size 4.00 MiB # 每个物理扩展区(PE)的大小
Total PE 118453 # 总的物理扩展区数量
Alloc PE / Size 25600 / 100.00 GiB # 已分配的物理扩展区数量及大小
Free PE / Size 92853 / <362.71 GiB # 未分配的物理扩展区数量及大小
VG UUID xDrQn5-82mb-GSRY-IqDV-VR4V-fNOk-JodsIE # 卷组的唯一标识符sudo lvdisplay
: 显示逻辑卷(Logical Volume,LV)的详细信息。1
sudo lvdisplay
输出解释:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16--- Logical volume ---
LV Path /dev/ubuntu-vg/ubuntu-lv # 逻辑卷的路径
LV Name ubuntu-lv # 逻辑卷的名称
VG Name ubuntu-vg # 逻辑卷所属的卷组名称
LV UUID OeCqDd-O039-JMhk-TWaJ-og8T-BPgi-rL6hcd # 逻辑卷的唯一标识符
LV Write Access read/write # 逻辑卷的访问权限
LV Creation host, time ubuntu-server, 2024-07-13 10:44:07 +0000 # 逻辑卷创建的主机和时间
LV Status available # 逻辑卷的状态
# open 1 # 当前打开的逻辑卷数量
LV Size 100.00 GiB # 逻辑卷的大小
Current LE 25600 # 当前逻辑扩展区数量
Segments 1 # 逻辑卷的段数
Allocation inherit # 分配策略
Read ahead sectors auto # 预读扇区数
- currently set to 256 # 当前设置的预读扇区数
Block device 252:0 # 逻辑卷的块设备号sudo pvs
: 显示物理卷(Physical Volume,PV)的信息。1
sudo pvs
输出解释:
1
2PV VG Fmt Attr PSize PFree
/dev/sda3 ubuntu-vg lvm2 a-- <462.71g <362.71gPV
: 物理卷的路径。VG
: 所属的卷组名称。Fmt
: 物理卷的格式(LVM 版本)。Attr
: 属性(a--
表示激活状态)。PSize
: 物理卷的总大小。PFree
: 物理卷的空闲大小。
sudo vgs
: 显示卷组的摘要信息。1
sudo vgs
输出解释:
1
2VG #PV #LV #SN Attr VSize VFree
ubuntu-vg 1 1 0 wz--n- <462.71g <362.71gVG
: 卷组的名称。#PV
: 物理卷数量。#LV
: 逻辑卷数量。#SN
: 快照数量。Attr
: 属性(wz--n-
表示可写状态、可调整大小、未关闭的卷组)。VSize
: 卷组的总大小。VFree
: 卷组的空闲大小。
sudo lvs
: 显示逻辑卷的摘要信息。1
sudo lvs
输出解释:
1
2LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
ubuntu-lv ubuntu-vg -wi-ao---- 100.00gLV
: 逻辑卷的名称。VG
: 所属的卷组名称。Attr
: 属性(-wi-ao----
表示写入状态、初始化状态、可用状态)。LSize
: 逻辑卷的大小。Pool
: 池(如果是精简卷池)。Origin
: 源(如果是快照)。Data%
: 已使用数据的百分比(对于精简卷池)。Meta%
: 已使用元数据的百分比(对于精简卷池)。Move Log
: 移动日志。Cpy%Sync
: 同步的复制百分比。Convert
: 转换状态。
这些命令及其输出提供了详细的 LVM 布局和卷的状态信息,帮助你管理和监控你的存储配置。如果有其他问题或需要进一步的解释,请告诉我。
命令
在 Linux 系统中,逻辑卷管理(LVM,Logical Volume Manager)是一种用于管理磁盘存储设备的工具。LVM 使得系统管理员可以更灵活地管理文件系统和磁盘分区。以下是一些常用的 LVM 命令以及它们的详细介绍:
1. 物理卷 (Physical Volume, PV)
物理卷是 LVM 的基本存储单元。物理卷可以是整个硬盘,硬盘分区,或者是 RAID 设备。
创建物理卷:
1
pvcreate /dev/sda1
查看物理卷:
1
pvdisplay
查看物理卷信息:
1
pvscan
删除物理卷:
1
pvremove /dev/sda1
2. 卷组 (Volume Group, VG)
卷组是由一个或多个物理卷组成的逻辑集合。逻辑卷是在卷组上创建的。
创建卷组:
1
vgcreate my_vg /dev/sda1 /dev/sdb1
扩展卷组:
1
vgextend my_vg /dev/sdc1
查看卷组:
1
vgdisplay
查看卷组信息:
1
vgscan
减少卷组:
1
vgreduce my_vg /dev/sdc1
删除卷组:
1
vgremove my_vg
3. 逻辑卷 (Logical Volume, LV)
逻辑卷是在卷组上创建的,它类似于传统的磁盘分区,但更灵活。
创建逻辑卷:
1
lvcreate -L 10G -n my_lv my_vg
扩展逻辑卷:
1
lvextend -L +5G /dev/my_vg/my_lv
查看逻辑卷:
1
lvdisplay
查看逻辑卷信息:
1
lvscan
减少逻辑卷(在减小逻辑卷之前,请确保文件系统大小已经减小):
1
lvreduce -L -5G /dev/my_vg/my_lv
删除逻辑卷:
1
lvremove /dev/my_vg/my_lv
4. 文件系统
在创建逻辑卷后,通常需要在其上创建文件系统。
创建文件系统:
1
mkfs.ext4 /dev/my_vg/my_lv
挂载文件系统:
1
mount /dev/my_vg/my_lv /mnt/my_mount_point
查看挂载的文件系统:
1
df -h
5. 其他有用的 LVM 命令
显示所有 LVM 信息:
1
2
3lvs
vgs
pvs显示详细的 LVM 信息:
1
2
3lvdisplay
vgdisplay
pvdisplay
通过这些命令,系统管理员可以更灵活地管理存储资源,动态调整存储容量,并且减少系统停机时间。
补充
在 Ubuntu 中查看磁盘空间可以使用以下命令:
df -h
:显示磁盘使用情况,以人类可读的格式(例如 GB、MB)。1
df -h
du -sh /path/to/directory
:显示指定目录的大小,以人类可读的格式。1
du -sh /home
lsblk
:列出所有块设备,包括它们的挂载点和大小。1
lsblk
fdisk -l
:列出所有分区和详细信息。1
sudo fdisk -l
lsblk
:列出所有块设备及其大小。1
lsblk
fdisk -l
:显示所有磁盘及其分区信息。1
sudo fdisk -l
df -h
:显示各个挂载点的使用情况,包括总空间、已用空间和可用空间。1
df -h
parted -l
:显示所有磁盘及其分区信息。1
sudo parted -l
这些命令将帮助你查看硬盘的总大小和分区信息。