lvm 快照:如何获取已更改、已添加、已删除的文件列表?

lvm 快照:如何获取已更改、已添加、已删除的文件列表?

我有一个 lvm 快照,我想看看有哪些文件更改、添加或删除(只要文件列表就足够了。)

有没有简单的方法来获取该列表?

提前感谢任何回复。

答案1

  1. 以只读方式挂载旧快照mount /dev/snapshot-somewhere /snap
  2. 列出真实文件系统和快照上的文件列表cd /snap; ls -lR . >/tmp/list.snap(或使用 mtree 或 rsync 制作列表)
  3. 比较列表diff -u list.real list.snap

rsync 只需一个参数即可创建文件列表:

$ cd /tmp
$ rsync -r .
drwxrwxrwt         612 2012/01/19 10:43:15 .
-rwxr-xr-x        9444 2012/01/19 08:43:13 foo

mtree 可以创建一个文件,它可以检查该文件是否根据生命文件系统发生变化:

$ cd /tmp/tree
$ mtree -c > /tmp/list.mtree
$ touch bar.c
$ echo '/* comment */' >> foo.c
$ mtree < /tmp/list.mtree
$ mtree < /tmp/desc 
. changed
    modification time expected Thu Jan 19 11:18:11 2012 found Thu Jan 19 11:20:46 2012
bar.c extra
foo.c changed
    size expected 1350 found 1364
    modification time expected Thu Jan 19 11:18:11 2012 found Thu Jan 19 11:21:26 2012

相关内容