【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中配置了磁盘密钥文件,则不需要手动输入。

参考资料

相关推荐
lllsure7 小时前
Linux 实用指令
linux·物联网
努力的小T7 小时前
使用 Docker 部署 Apache Spark 集群教程
linux·运维·服务器·docker·容器·spark·云计算
Nerd Nirvana8 小时前
OpenSSL crt & key (生成一套用于TLS双向认证的证书密钥)
linux·ssl·shell·认证·加密·tls·oepnssl
letisgo59 小时前
记录一次部署PC端网址全过程
linux·阿里云·服务器运维
猫猫的小茶馆9 小时前
【网络编程】UDP协议
linux·服务器·网络·网络协议·ubuntu·udp
尚墨11119 小时前
linux 安装启动zookeeper全过程及遇到的坑
linux·zookeeper
鱼嘻9 小时前
Linux自学day23-进程和线程
linux·服务器·c语言·进程和线程
AuGuSt_819 小时前
在windows下安装windows+Ubuntu16.04双系统(下)
linux·ubuntu·双系统
old_power10 小时前
Linux(Ubuntu24.04)源码编译安装OpenCV4.6.0
linux·opencv
爆更小小刘10 小时前
Linux下基本指令(4)
linux·运维·服务器