Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3013674
  • 博文数量: 454
  • 博客积分: 4860
  • 博客等级: 上校
  • 技术积分: 6375
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-13 10:08
个人简介

10年工作经验,专研网站运维。

文章分类

全部博文(454)

文章存档

2017年(11)

2016年(13)

2015年(47)

2014年(36)

2013年(147)

2012年(64)

2011年(136)

分类: LINUX

2012-10-15 13:47:45

一 lvm 基本配置
0. 注意:系统fdisk /dev/sdb之后,需要用partprobe重新让系统识别新的磁盘分区,或者用 partx /dev/sdb5来让系统识别新的分区,但是,我用了好几次都不生效,必须得重启系统才能格式化硬盘的,就是说,必须重启系统才能识别新的分区。
1. 查看磁盘和lvm信息命令
fdisk -l
df -h
pvs
pvscan
pvdisplay
vgs
vgscan
vgdisplay
lvs
lvscan
lvdisplay
2. 创建pv
pvcreate /dev/sdj /dev/sdk /dev/sdl
3. 创建vg
vgcreate aic_vg /dev/sdj /dev/sdk /dev/sdl
4. 创建lv
lvcreate -L 20G -n dmadmin_lv aic_vg
lvcreate -L 120G -n dbproaic_lv aic_vg
5. 格式化分区
mkfs.ext3 /dev/aic_vg/dmadmin_lv
mkfs.ext3 /dev/aic_vg/dbproaic_lv
6. 创建目录
mkdir dmadmin
7. 挂载分区
[root@corshdwpro01 ~]# vim /etc/fstab
/dev/aic_vg/dmadmin_lv          /dmadmin        ext3    defaults        1 1
/dev/aic_vg/dbproaic_lv         /dbproaic        ext3    defaults        1 1
[root@corshdwpro01 ~]# mount -a
8. 查看相关信息
[root@corshetlpro01 ~]# df -h
9. 配置分区权限
[root@corshetlpro01 ~]# useradd gme
[root@corshetlpro01 ~]# passwd gme
[root@corshetlpro01 ~]# chown -R gme.gme /mysqladmin/
[root@corshetlpro01 ~]# chmod -R 755 /mysqladmin/
[root@corshetlpro01 ~]# ll /
                   lvm管理
1. 扩大vg
vgextend + vg名称 + pv名称
vgextend test_vg /dev/sdm
2. 减小vg
vgreduce + vg名称 + 分区
vgreduce test_vg /dev/sdm
3. 扩大lv
lvextend -L +10G /dev/test_vg/test_lv
resize2fs /dev/test_vg/test_lv
df -h 查看
4. 减小vg
umount /test
df -h 查看
e2fsck -f /dev/test_vg/test_lv
resize2fs /dev/test_vg/ 10G
lvresize -L 10G /dev/test_vg/test_lv 10G
mount -t ext3 /dev/test_vg/test_lv /test
df -h 查看
5. 删除lv
umount /test/
Do you really want to remove active logical volume "test_lv"? [y/n]: y
  Logical volume "test_lv" successfully removed
lvremove /dev/test_vg/test_lv
6. 删除pv
[root@corshdwpro01 ~]# vgremove test_vg
  Volume group "test_vg" successfully removed
7. 删除vg
[root@corshdwpro01 ~]# pvremove /dev/sdn
  Labels on physical volume "/dev/sdn" successfully wiped
[root@corshdwpro01 ~]# rm -r /test/
rm: remove directory `/test/'? y
       
                 三 lvm高级应用
 
[实验]通过lvm快照进行热备
分类: U/Linux RHCE6 RHCA 587人阅读 评论(0) 举报

lvm快照有两大用途,一是用来克隆虚拟机,例如做xen虚拟机时,可先新建一台完整虚拟机,假设大小为10G,然后我们可以在这台10G的虚拟机上创建1个3G的快照,接着通过这个3G的快照启动虚拟机,做完实验后,可以直接删除快照而保持原来完整虚拟机的纯净。

lvm快照的第二大用途是实时备份(moment-in-time),即为了保持系统的一致性,我们先做一个快照冻结当前系统状态,这样快照里面的内容可暂时保持不变,系统本身继续运行,通过备份快照来实现不中断服务的的备份。

本文实验基于快照的热备。

[root@station122 md]# fdisk -l /dev/sdb

Disk /dev/sdb: 107.4 GB, 107374182400 bytes
255 heads, 63 sectors/track, 13054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xbfedc746

Device Boot Start End Blocks Id System
/dev/sdb1 1 13055 104857568+ 5 Extended
/dev/sdb5 1 131 1048576+ 83 Linux
/dev/sdb6 131 262 1048576+ 83 Linux
/dev/sdb7 262 392 1048576+ 83 Linux
/dev/sdb8 392 523 1048576+ 83 Linux
/dev/sdb9 523 653 1048576+ 83 Linux
/dev/sdb10 653 784 1048576 83 Linux
/dev/sdb11 784 2089 10485760 83 Linux
[root@station122 md]# pvcreate /dev/sdb5 #创建pv
Wiping software RAID md superblock on /dev/sdb5
Physical volume "/dev/sdb5" successfully created
[root@station122 md]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 VolGroup lvm2 a- 79.51g 0
/dev/sdb5 lvm2 a- 1.00g 1.00g
[root@station122 md]# vgcreate vg1 /dev/sdb5 #创建vg
Volume group "vg1" successfully created
[root@station122 md]# vgs
VG #PV #LV #SN Attr VSize VFree
VolGroup 1 3 0 wz--n- 79.51g 0
vg1 1 0 0 wz--n- 1020.00m 1020.00m
[root@station122 md]# lvcreate -L 20M -n lv1 vg1 #创建lv
Logical volume "lv1" created
[root@station122 md]# lvs
LV VG Attr LSize Origin Snap% Move Log Copy% Convert
lv_home VolGroup -wi-ao 28.54g
lv_root VolGroup -wi-ao 50.00g
lv_swap VolGroup -wi-ao 992.00m
lv1 vg1 -wi-a- 20.00m
[root@station122 md]# mkfs.ext3 /dev/vg1/lv1 #创建文件系统
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
5136 inodes, 20480 blocks
1024 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=20971520
3 block groups
8192 blocks per group, 8192 fragments per group
1712 inodes per group
Superblock backups stored on blocks:
8193

Writing inode tables: done
Creating journal (1024 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@station122 md]# mkdir /mnt/lv1
[root@station122 md]# mount /dev/vg1/lv1 /mnt/lv1/ #挂载文件系统
[root@station122 md]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
50G 884M 46G 2% /
tmpfs 120M 0 120M 0% /dev/shm
/dev/sda1 485M 29M 431M 7% /boot
/dev/mapper/VolGroup-lv_home
29G 172M 27G 1% /home
/dev/sr0 3.2G 3.2G 0 100% /media
/dev/mapper/vg1-lv1 20M 1.2M 18M 7% /mnt/lv1
[root@station122 lv1]# rm /mnt/lv1/* -rf
[root@station122 mnt]# cp /etc/passwd lv1/ #拷贝一个文件做测试用
[root@station122 mnt]# ll lv1/
total 2
-rw-r--r--. 1 root root 902 Jul 16 19:09 passwd
[root@station122 mnt]# lvcreate -L 5M -s -n lv1_sp /dev/vg1/lv1 #创建lvm快照
Rounding up size to full physical extent 8.00 MiB

Logical volume "lv1_sp" created
[root@station122 mnt]#
[root@station122 mnt]# lvs
LV VG Attr LSize Origin Snap% Move Log Copy% Convert
lv_home VolGroup -wi-ao 28.54g
lv_root VolGroup -wi-ao 50.00g
lv_swap VolGroup -wi-ao 992.00m
lv1 vg1 owi-ao 20.00m
lv1_sp vg1 swi-a- 8.00m lv1 0.15
[root@station122 mnt]# mkdir /mnt/lv1_sp
[root@station122 mnt]# mount /dev/vg1/lv1_sp /mnt/lv1_sp/ #挂载快照,注意我们并没有为该快照创建文件系统
[root@station122 mnt]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
50G 884M 46G 2% /
tmpfs 120M 0 120M 0% /dev/shm
/dev/sda1 485M 29M 431M 7% /boot
/dev/mapper/VolGroup-lv_home
29G 172M 27G 1% /home
/dev/sr0 3.2G 3.2G 0 100% /media
/dev/mapper/vg1-lv1 20M 1.2M 18M 7% /mnt/lv1
/dev/mapper/vg1-lv1_sp
20M 1.2M 18M 7% /mnt/lv1_sp
[root@station122 mnt]# cd /boot/
[root@station122 boot]# ll -h
total 18M
-rw-r--r--. 1 root root 96K Sep 1 2010 config-2.6.32-71.el6.x86_64
drwxr-xr-x. 3 root root 1.0K Mar 28 10:00 efi
drwxr-xr-x. 2 root root 1.0K Mar 28 10:03 grub
-rw-r--r--. 1 root root 12M Mar 28 10:02 initramfs-2.6.32-71.el6.x86_64.img
drwx------. 2 root root 12K Mar 28 09:55 lost+found
-rw-r--r--. 1 root root 157K Sep 1 2010 symvers-2.6.32-71.el6.x86_64.gz
-rw-r--r--. 1 root root 2.2M Sep 1 2010 System.map-2.6.32-71.el6.x86_64
-rwxr-xr-x. 1 root root 3.7M Sep 1 2010 vmlinuz-2.6.32-71.el6.x86_64
[root@station122 boot]# cp vmlinuz-2.6.32-71.el6.x86_64 /mnt/lv1/ #模拟系统运行,往lvm写入3.7M数据
[root@station122 boot]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
50G 884M 46G 2% /
tmpfs 120M 0 120M 0% /dev/shm
/dev/sda1 485M 29M 431M 7% /boot
/dev/mapper/VolGroup-lv_home
29G 172M 27G 1% /home
/dev/sr0 3.2G 3.2G 0 100% /media
/dev/mapper/vg1-lv1 20M 4.8M 14M 27% /mnt/lv1
/dev/mapper/vg1-lv1_sp
20M 1.2M 18M 7% /mnt/lv1_sp
[root@station122 boot]# lvs #快照已占用46.09%
LV VG Attr LSize Origin Snap% Move Log Copy% Convert
lv_home VolGroup -wi-ao 28.54g
lv_root VolGroup -wi-ao 50.00g
lv_swap VolGroup -wi-ao 992.00m
lv1 vg1 owi-ao 20.00m
lv1_sp vg1 swi-ao 8.00m lv1 46.09
[root@station122 boot]# cat /mnt/lv1_sp/passwd | wc -l #模拟快照备份,此处仍可以读取
20
[root@station122 boot]# cp initramfs-2.6.32-71.el6.x86_64.img /mnt/lv1/ #再往lvm写入一个12M的文件,超出快照大小8M
[root@station122 boot]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
50G 884M 46G 2% /
tmpfs 120M 0 120M 0% /dev/shm
/dev/sda1 485M 29M 431M 7% /boot
/dev/mapper/VolGroup-lv_home
29G 172M 27G 1% /home
/dev/sr0 3.2G 3.2G 0 100% /media
/dev/mapper/vg1-lv1 20M 17M 1.8M 91% /mnt/lv1
/dev/mapper/vg1-lv1_sp
20M 1.2M 18M 7% /mnt/lv1_sp
[root@station122 boot]# lvs #快照占用100%
LV VG Attr LSize Origin Snap% Move Log Copy% Convert
lv_home VolGroup -wi-ao 28.54g
lv_root VolGroup -wi-ao 50.00g
lv_swap VolGroup -wi-ao 992.00m
lv1 vg1 owi-ao 20.00m
lv1_sp vg1 Swi-Io 8.00m lv1 100.00
[root@station122 boot]# cd /mnt/lv1 #lvm还有空间
[root@station122 lv1]# du -sh
16M .
[root@station122 boot]# cat /mnt/lv1_sp/passwd | wc -l #lvm快照已不可读取,有时仍可读取,不知何故?
cat: /mnt/lv1_sp/passwd: Input/output error
0
[root@station122 lv1_sp]# du -sh #至快照目录执行du命令会报错
du: cannot access `./.vmlinuz-2.6.32-71.el6.x86_64.hmac': Input/output error
3.0K


小结: 如果在备份期间,数据变换量大于快照容量,可能会导致备份失败。

阅读(2594) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~