【linux】物理卷、卷组、逻辑卷

概述

初次了解物理卷、卷组和逻辑卷这些概念,大概理了下这三个概念之间的关系,只是一点皮毛,用于大致理解:

个人感觉很像虚拟化的过程,物理卷就相当于物理设备;卷组相当于把这些物理设备分组了;逻辑卷就相当于从卷组里申请资源创建出来的设备,逻辑从字面看就是不是真实的卷,而是一些磁盘空间的抽象。

物理卷

pvcreate创建物理卷

bash 复制代码
pvcreate /dev/sdd

pvs查看创建的物理卷

bash 复制代码
pvs

pvremove删除物理卷

删除物理卷时,该物理卷必须从vg中移除

bash 复制代码
pvremove /dev/sdd

在这里插入图片描述

卷组

vgcreate创建卷组

创建一个名为myvolgroup的卷组,并将物理卷/dev/sdd加入到该卷组中。

bash 复制代码
vgcreate myvolgroup /dev/sdd

vgs查看已创建的卷组

bash 复制代码
vgs

vgreduce移除物理卷

将物理卷/dev/sdd从卷组myvolgroup中移除

bash 复制代码
vgreduce myvolgroup /dev/sdd

如果/dev/sdd是卷组myvolgroup中的最后一个物理卷,移除的时候会报错:Can't remove final physical volume "/dev/sdd" from volume group "myvolgroup" 这种情况是正常的。可以直接将整个卷组删除。

vgremove删除卷组

删除卷组myvolgroup

bash 复制代码
vgremove myvolgroup

逻辑卷

lvcreate创建逻辑卷

在卷组myvolgroup里创建一个逻辑卷,名字叫mylogicalvol,大小为10G

bash 复制代码
lvcreate -n mylogicalvol -L 10G myvolgroup

lvs查看已经创建的逻辑卷

bash 复制代码
lvs

创建完逻辑卷后会生成如下软连接:

lvremove删除逻辑卷

bash 复制代码
lvremove /dev/myvolgroup/mylogicalvol

删除逻辑卷前需要将挂载点卸载

加密设备(可选)

cryptsetup选项

选项 含义
-v 显示更详细的错误信息
-y 两次询问密码以进行验证
-c, --cipher=STRING 指定加密算法、加密模式和密钥长度,例 aes-xts-plain64:256 表示使用AES加密算法、XTS模式和256位密钥长度。参考 /proc/crypto
luksFormat 格式化一个LUKS设备,设定磁盘密码
luksOpen 开启映射设备
luksClose 关闭映射设备
luksAddKey 给映射设备添加密钥文件
status 查看映射设备信息

cryptsetup对磁盘设置密码

bash 复制代码
cryptsetup luksFormat /dev/myvolgroup/mylogicalvol

生成密钥文件

bash 复制代码
touch /root/mapmylogicalvol_passwd

cryptsetup luksAddKey /dev/mapper/myvolgroup-mylogicalvol /root/mapmylogicalvol_passwd

打开映射

打开设备/dev/myvolgroup/mylogicalvol,并创建映射mapmylogicalvol。

bash 复制代码
cryptsetup luksOpen /dev/myvolgroup/mylogicalvol mapmylogicalvol

关闭设备

bash 复制代码
cryptsetup luksClose mapmylogicalvol

查看映射状态

方法1:

bash 复制代码
cryptsetup status mapmylogicalvol

方法2:

bash 复制代码
cryptsetup status /dev/mapper/mapmylogicalvol

设备格式化

mkfs格式化分区并创建文件系统

bash 复制代码
mkfs -t xfs /dev/myvolgroup/mylogicalvol

挂载设备

手动挂载

bash 复制代码
mkdir -p /data/test
mount /dev/myvolgroup/mylogicalvol /data/test

开机自动启动挂载

  • (可选)如果配置了磁盘加密映射,需要将映射关系加入到映射关系配置文件/etc/crypttab中

    格式为: 映射设备名 加密设备 密码文件

    如果有密码文件的话,例子如下:

  • 配置/etc/fstab

如果磁盘设置了密码,重启reboot虚拟机后,会提示让输入磁盘密码;如果/etc/crypttab中配置了磁盘密钥文件,则不需要手动输入。

参考资料

相关推荐
H_oRIZoN_4 小时前
Linux入门DAY41(51 单片机 串口与通信协议)
linux·运维·单片机
GeW5 小时前
RHCE备考别瞎学!按这个计划走,30天提高通过率,快速拿证
linux
Escalating_xu6 小时前
【System V 信号量】从 P/V 原语到 Builder 封装:写出可控、可清理的进程互斥组件
java·linux·开发语言·jvm
傲世仙尊6 小时前
System V 进程间通信详解:共享内存、消息队列与信号量(CSDN博客)
linux·开发语言·c++
码农小韩6 小时前
Linux应用开发(六)——进程间通信
linux·linux驱动·嵌入式软件开发·嵌入式操作系统·linux应用
笨笨饿7 小时前
#138_解决Codex要五次回复的问题
linux·stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式实时数据库
m0_459872927 小时前
Linux 系统基础
linux·运维·服务器
吴声子夜歌7 小时前
Shell编程——数组
linux·运维·shell
blueSatchel8 小时前
ros-humble仿真-建图-导航
linux·ros2
Lucis__8 小时前
基于责任链模式的消息队列—异步处理流水线的最佳实践
linux·c++·消息队列·责任链模式·ipc