MD和DM
- MD:Multi Device
将多个底层的物理设备,在内核中抽象成/dev/md# ,所有的调配工作都由内核中的md来实现的;
- DM:Device Mapper 设备映射,也能够用于提供逻辑设备;
DM的功能要比MD要强大;比如LVM2,快照,多路径;还可以实现动态增减。
在创建LVM的时候,要先创建好PV,再来创建GV,最后创建LV,格式化并挂载;
创建PV
先把要创建成PV的块设备的分区类型修改为Linux LVM类型,对应的十六进制码是:8e
# fdisk /dev/sdb
…
Command (m for help): t
Partition number (1-13): 11
Hex code (type L to list codes): 8e
Changed system type of partition 11 to 8e (Linux LVM)
使用fdisk 创建了/dev/sdb11 /dev/sdb12 /dev/sdb13这三个分区,并且已经修改好了分区类型;这里要注意的是fdisk命令最多只支持分15个分区;
下面就是把创建好的三个物理分区,创建成PV:
[root@ns2 ~]# pvcreate /dev/sdb11 /dev/sdb12
Writing physical volume data to disk "/dev/sdb11"
Physical volume "/dev/sdb11" successfully created
Writing physical volume data to disk "/dev/sdb12"
Physical volume "/dev/sdb12" successfully created
[root@ns2 ~]#
查看系统创建好的PV,可以使用pvdisplay和pvs命令:
[root@ns2 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sdb11 lvm2 a-- 1.87G 1.87G
/dev/sdb12 lvm2 a-- 1.87G 1.87G
[root@ns2 ~]# //pvs命令显示的比较简单;
[root@ns2 ~]# pvdisplay
"/dev/sdb11" is a new physical volume of "1.87 GB"
--- NEW Physical volume ---
PV Name /dev/sdb11
VG Name
PV Size 1.87 GB
Allocatable NO
PE Size (KByte) 0 //可以看出,当一个新的PV创建好了,在还没有加入到VG前,是没有PE的。
Total PE 0
Free PE 0
Allocated PE 0
PV UUID McYeUx-TBDQ-9nQY-wAlH-vfn8-vf4a-NJU8gc
"/dev/sdb12" is a new physical volume of "1.87 GB"
--- NEW Physical volume ---
PV Name /dev/sdb12
VG Name
PV Size 1.87 GB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID D9LuMe-WD2G-fHPz-nqvb-o4EI-3BR6-p4sQo2
[root@ns2 ~]#
创建GV
语法:vgcreate vg_name /dev/sdb[12345678]
[root@ns2 ~]# vgcreate myvg /dev/sdb11
Volume group "myvg" successfully created
[root@ns2 ~]#
查看创建好的VG:
[root@ns2 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
myvg 1 0 0 wz--n- 1.87G 1.87G
[root@ns2 ~]#
[root@ns2 ~]# vgdisplay
--- Volume group ---
VG Name myvg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 1
Act PV 1
VG Size 1.87 GB
PE Size 4.00 MB
Total PE 478
Alloc PE / Size 0 / 0
Free PE / Size 478 / 1.87 GB
VG UUID Eifwtg-tz8Z-5UPe-v8Fq-g9Xp-w3fq-OeAPkW
[root@ns2 ~]#
创建LV
语法:lvcreate -n lv_name -L [+]size vg_name
[root@ns2 ~]# lvcreate -n mylv -L 1G myvg
Logical volume "mylv" created
[root@ns2 ~]#
查看创建的LV
[root@ns2 ~]# lvs
LV VG Attr LSize Origin Snap% Move Log Copy% Convert
mylv myvg -wi-a- 1.00G
[root@ns2 ~]# lvdisplay
--- Logical volume ---
LV Name /dev/myvg/mylv
VG Name myvg
LV UUID ep9AkO-R1oT-ud85-Sn78-Wf50-wkm3-160ckj
LV Write Access read/write
LV Status available
# open 0
LV Size 1.00 GB
Current LE 256
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
[root@ns2 ~]#
格式化lv,并挂载
[root@ns2 ~]# mke2fs -j /dev/myvg/mylv //也可以使用mkfs.ext3 /dev/myvg/mylv
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
131072 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@ns2 ~]#
从上面格式化的路径可以看出,LVM设备的路径为:/dev/vg_name/lv_name ,那么再来看看挂载后的路径:
[root@ns2 ~]# mount /dev/myvg/mylv /lvmdata/
[root@ns2 ~]# mount
/dev/sda3 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda1 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/mapper/myvg-mylv on /lvmdata type ext3 (rw)
[root@ns2 ~]#
让创建的lv开机自动挂载
[root@ns2 ~]# cat /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP-sda2 swap swap defaults 0 0
/dev/myvg/mylv /lvmdata ext3 defaults 0 0
[root@ns2 ~]# 使用/dev/mapper/myvg-mylv也是可以的。
关于LVM扩容、缩容的操作将会在下一篇介绍。
本文暂时没有评论,来添加一个吧(●'◡'●)