免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2498 | 回复: 7
打印 上一主题 下一主题

请教关于LVM的问题 [复制链接]

论坛徽章:
1
程序设计版块每日发帖之星
日期:2016-06-29 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-01-06 12:32 |只看该作者 |倒序浏览
1:-----------文件系统与文件目录------------
一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。
卸载后,可以继续使用这个目录的文件。
请问:以前存在此目录中的文件在挂载上分区后去哪里了???
2:------------LVM实验---------------
一个逻辑卷组vg08 包含一个逻辑卷oracle 大小200M,CP一些文件到oracle。
bash-4.2# mkdir /dev/vg08
bash-4.2# mknod /dev/vg08/group c 64 0x080000
bash-4.2# vgcreate /dev/vg08 /dev/dsk/c3t6d0
bash-4.2# lvcreate -L 200 -n oracle vg08
bash-4.2# newfs /dev/vg08/oracle
bash-4.2# mount /dev/vg08/oracle /1
bash-4.2# cp -R /etc/* /1
bash-4.2# vgcfgbackup -f /tmp/vg08.conf.bak /dev/vg08
bash-4.2# umount /1
bash-4.2# vgchange -a n vg08
bash-4.2# vgexport -m /tmp/vg08.map /dev/vg08
bash-4.2# pvcreate -f /dev/rdsk/c3t6d0
------------------------------------------------------------------
现在磁盘盘头信息已经被初始化了,应该通过怎样的操作来找回vg08上的oracle逻辑卷,以及我CP过去的数据

论坛徽章:
0
2 [报告]
发表于 2012-01-06 15:03 |只看该作者
1、man mount
  mount 到目录后,更新了/etc/mtab文件,在此文件中增加了你MOUNT后的条目。你使用cd 命使,先读取此文件,然后。。。
2、vgexport 用于卷组的导出
   vgcfgbackup 用于备份LVM的信息,按你的情况,估计是找不回来的了

论坛徽章:
0
3 [报告]
发表于 2012-01-06 18:02 |只看该作者
1.不知道怎么回答
2.可以先用vgcfgrestore将卷组信息恢复到/dev/rdsk/c3t6d0,然后重新创建卷组的group文件,然后vgimport原来的map文件卷组和逻辑卷应该就回来了

论坛徽章:
0
4 [报告]
发表于 2012-01-07 04:49 |只看该作者
重新执行下列命令,你的数据会回来的.)

bash-4.2# mkdir /dev/vg08
bash-4.2# mknod /dev/vg08/group c 64 0x080000
bash-4.2# vgcreate /dev/vg08 /dev/dsk/c3t6d0
bash-4.2# lvcreate -L 200 -n oracle vg08
bash-4.2# mount /dev/vg08/oracle /1

论坛徽章:
1
程序设计版块每日发帖之星
日期:2016-06-29 06:20:00
5 [报告]
发表于 2012-01-09 09:52 |只看该作者
回复 4# hbh231

数据是回来了,可是怎么能不用创建文件系统呢???
bash-4.2# lvcreate -L 200 -n oracle vg08
bash-4.2# fstyp /dev/vg08/oracle
vxfs

这个文件系统是怎么出现的呢???
那能不能不用自己手动去创建oracle逻辑卷,找回oracle逻辑卷的信息呢???
谢谢了···

论坛徽章:
1
程序设计版块每日发帖之星
日期:2016-06-29 06:20:00
6 [报告]
发表于 2012-01-09 10:29 |只看该作者
回复 3# fruitmantis
能不能细说一下啊,先执行vgcfgrestore,要lvmtab文件中有vg08的信息才能执行啊,现在这个vg08中只有一块磁盘,还是pvcreate过的。如果是先创建vg08卷组,然后使用vgcfgrestore的话,提示不能在备份的vg08.conf.bak中找到pv的构造信息。。。再说了,就算是这步过去了,那执行vgimport也不是行不通的啊?vgimport是恢复vg08的信息到lvmtab文件中,现在lvmtab文件已经存在vg08的信息了,这个命令不会执行成功的。
-----------------------------
mkdir /dev/vg08
mknod /dev/vg08/group c 64 0x080000
vgimport -m /tmp/vg08.map /dev/vg08 /dev/dsk/c3t6d0
Logical Volume is not defined on any physical volume.
"/dev/vg08/oracle" is missing Physical Volumes.
我尝试执行vgimport 直接导入vg08的信息,提示lv丢失了。。。
然后执行vgcfgrestore
bash-4.2# vgcfgrestore -f /tmp/vg08.conf.bak /dev/rdsk/c3t6d0
Volume Group configuration has been restored to /dev/rdsk/c3t6d0
激活vg08 失败···
bash-4.2# vgchange -a y vg08
vgchange: Warning: Couldn't attach to the volume group physical volume "/dev/dsk/c3t6d0":
Cross-device link
vgchange: Warning: couldn't query physical volume "/dev/dsk/c3t6d0":
The specified path does not correspond to physical volume attached to
this volume group
vgchange: Warning: couldn't query all of the physical volumes.
vgchange: Couldn't activate volume group "vg08":
Quorum not present, or some physical volume(s) are missing.

现在手里还有一份lvmtab的备份,是vgexport vg08操作前的。
-------------------------------------------------------
想来想去,是不是vgcfgrestore 命令恢复的是vg08的信息???没有把磁盘的pvid恢复过去???

论坛徽章:
0
7 [报告]
发表于 2012-01-09 17:32 |只看该作者
wdfwdf2727 发表于 2012-01-09 10:29
回复 3# fruitmantis
能不能细说一下啊,先执行vgcfgrestore,要lvmtab文件中有vg08的信息才能执行啊,现 ...


先执行vgcfgrestore再执行vgimport,这样lvmtab会自动生成关于vg08的信息

你先执行vgimport那么map表里的lvm信息是无法被硬盘识别的,先restore就是将原来的盘头信息以及卷组信息写回去,这样import的时候map表里的信息才能被识别

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
8 [报告]
发表于 2012-01-13 16:51 |只看该作者
pvcreate 处理的是lvm信息
vgcfgrestore 恢复的也是lvm信息
newfs处理的才是filesystem block的信息

另外,hpux下的lvm中的pvid的生成 会跟timestamp有关,并不是一直不变,这跟aix还是有区别
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP