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文件系统,因为它没有什么档案,你可能会结束了大量的进程内存转储。