LVM
(有点像
WIN
下的动态磁盘,把硬盘空间分配成逻辑卷的方法,这样硬盘就不必要使用分区而被简易地重划大小)
优点:随意扩展或缩小某个分区的大小,前提这个分区是逻辑卷管理的
1
.
创建
LVM
的顺序:①
物理分区
-
②物理卷
-
③
卷组
-
④
逻辑卷
-
⑤
挂载到目录
步骤:
2.
①物理分区
fdisk /dev/sdX(
硬盘代号
)
参数:
D
删除一个分区
N
创建一个分区
Q
不保存退出
T
改变分区
ID
W
保存退出
分区过程中指定分区的
ID
号,不能按照默认的形势,所以要按
t
,然后选择第几个,比如是
sdb1
,就填入
1
,然后输入
8e
(
LVM
的
ID
号)
然后用
partprobe
命令使分区立即生效而不必重启
接着格式化分区
mkfs.ext3 /dev/sdX1(
“
1
”指第一个分区
)
跟着是建立目录用于挂载,当在挂载点下看到
LOST+fount
目录说明成功
如果想使分区开机自动挂载,修改
/etc/fstab
文件,添加如下一行:
设备号
挂载点
文件类型
权限(默认)
默认
LABEL=/dev/sdX1 /mnt/sdb ext3 defaults 0 0
②物理卷
(
以
/dev/sdb1
为例
)
建立:
pvcreate /dev/sdb1
查看:
pvdisplay
从硬盘驱动器中创建物理卷(
physical volumes-PV
)。
从物理卷中创建卷组(
volume groups-VG
)。
从卷组中创建逻辑卷(
logical volumes-LV
),并分派逻辑卷挂载点
其中只有逻辑卷才可以写数据
③
卷组
建立:
vgcreate myvg(
自定义的卷组名
) /dev/sdb1
查看:
vgdisplay
④
逻辑卷
建立:
lvcreate –L
大小
卷组名
–n
逻辑卷名称
我从卷组里分
100M
来建立逻辑卷
#Lvcreate –L 100M myvg –n mylv1
⑤
挂载到目录
先格式化:
mkfs.ext3 /dev/myvg/mylv1
然后就是建立挂载目录来挂载
#mkdir /mnt/mylv1
#mount /dev/myvg/mylv1 /mnt/mylv1
现在查看一下: lvdisplay; 如果想要查看逻辑卷挂载到哪了,用 mount 命令,最后一行会显示。
现在我们再在刚才的卷组里面划分一个逻辑卷
mylv2
出来,大小是
150M
,文件格式为
ext3
,挂载到
/mnt/mylv2
#lvcreate -L 150M myvg -n mylv2
#mkfs.ext3 /dev/myvg/mylv2
#mkdir /mnt/mylv2
#mount -t ext3 /dev/myvg/mylv2 /mnt/mylv2
就这四条命令就
OK
了哈
~
3.
如果要改变现有逻辑卷的大小
现在
mylv1
是
100M
,
mylv2
是
150M
。要把
mylv2
减小
50M
,这减小的
50M
添加到
mylv1
中
#lvresize -L
绝对大小
对象
#lvresize -L 100M /dev/myvg/mylv2
然后确定大小
#resize2fs /dev/myvg/mylv2
注意:此时会出错
正确方法:
对于
lvm
,如果是扩大某个
lv
,操作比较简单,但如果是缩小
lv
,则有一定的风险。我们先要缩小
/dev/myvg/lv2
文件系统,然后才能缩小
lvm
,如果在缩小
lvm
之前忘了缩小文件系统,这时候可以这样来挽救:
1
:不要进行对该分区的任何写入操作,最好是也不
read
2
:用
lvresize2fs
重新扩大该分区,且扩大的容量是刚刚缩小的容量(数字一定要和刚刚的一致哈
~
)。
3
:缩小文件系统
4
:最后缩小逻辑卷哈。
5
:确认文件系统和逻辑卷大小一致。
#umount /mnt/mylv2
先要卸载挂载
#lvresize –L 150M /dev/myvg/mylv2
重新扩大到原来大小
#e2fsck –f /dev/myvg/mylv2
确认文件系统和逻辑卷大小一致
#resize2fs /dev/myvg/mylv2 100M
确认分区(使命令生效)
#lvresize –L 100M /dev/myvg/mylv2
重新设定大小
此时需要输入
y
#e2fsck –f /dev/myvg/mylv2
#mount /dev/myvg/mylv2 /mnt/mylv2
这样就缩小了
mylv2
的大小
现在添加到
mylv1
中
#lvresize –L 150M /dev/myvg/mylv1
#e2fsck –f /dev/myvg/mylv1
#resize2fs /dev/myvg/mylv1
-------------------------------------------------------------------------------------------------------------------------------
裸设备使用:
1.先lvreate
2. raw /dev/raw/raw0 /dev/mapper/vgname-lvname
3.修改 /etc/sysconfig/rawdevices,添加:
/dev/raw/raw0 /dev/mapper/vgname-lvname
4.执行命令; service rawdevices restart,使得/etc/sysconfig/rawdevices文件中的裸设备配置生效
5.执行/sbin/schkconfig rawdevices on 使得系统重启后,裸设备能自动加载
6.修改裸设备的属主,使得相应权限的用户对裸设备有读写权限
chown -R owner:group /dev/raw/raw0
7.将修改裸设备属主修改命令加入到系统启动执行脚本/etc/rc.local中,使得系统启动后裸设备的属主保持不变.
以上命令和操作都需要root权限来执行,具体使用方法就不详细介绍了,可以使用man手册.