缺lessLVM快照/ dev和/ proc树

我创build了一个lvm快照,如下所示:

lvcreate -L 5G -s -n root-snapshot /dev/VolGroup00/LogVol00 

然后我像这样安装了快照:

 mount /dev/VolGroup00/root-snapshot /mnt/root-snapshot/ 

现在,当我看到快照中的开发树中有什么时,除了两个项目之外几乎所有东西都没有了:

 [root@server1 ~]# ls /mnt/root-snapshot/dev mapper VolGroup00 

proc里面什么也没有。 为什么是这样? 我知道proc是一个虚拟的FS,但是当拍摄快照时,系统正在运行,因此在proc和dev中有很多东西…为什么它们在快照中丢失。

我特别需要:

 /dev/console /dev/initctl /dev/null /dev/zero 

为我的备份。

编辑:安装实际上显示proc挂载fs on /但是dev … mount不会显示dev被安装在LVM之外?

 /dev/mapper/VolGroup00-LogVol00 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/VolGroup00-root--snapshot on /mnt/root-snapshot type ext3 (rw) 

它们不是真正的文件系统,也不是您创build快照的根文件系统的一部分。

但让我们忽略这一点。 我猜你正在问/ proc和/ dev挂载,因为你想chroot到你的快照? 或者在快照目录中运行备份工具? 如果是这样的话,除了安装快照以外,为什么不简单地进行绑定安装?

 mount /dev/VolGroup00/root-snapshot /mnt/root-snapshot/ mount -o bind /dev/ /mnt/root-snapshot/dev/ mount -o bind /proc/ /mnt/root-snapshot/proc/ 

当您准备好卸载快照时,只需卸载/ mnt / root-snapshot / dev /和/ mnt / root-snapshot / proc / unmounting / mnt / root-snapshot /

/proc/dev都是虚拟文件系统,它们根本不保存在LVM卷上(因为mount的输出将会确认),因此它们不包含在LVM快照中。

两者都是在运行时由内核生成的,不需要备份起来。

一个LVM转储将只包含那个特定文件系统上的内容,而不包含在其他装载上。 / proc和/ dev可以在root下挂载文件系统,因此数据不包含在LVM中。

你所要做的就是用tar或cpio等东西来备份它们。

顺便说一句,我永远不会备份/ proc文件系统,因为它没有什么档案,你可能会结束了大量的进程内存转储。