xfs
[Top] [All Lists]

xfsrestore deletes files in cumulative restores

To: Linux XFS Mailing List <linux-xfs@xxxxxxxxxxx>
Subject: xfsrestore deletes files in cumulative restores
From: "Bernhard R. Erdmann" <be@xxxxxxxxxxx>
Date: Sun, 08 Jul 2001 12:41:20 +0200
Sender: owner-linux-xfs@xxxxxxxxxxx
Hi,

today I did some restore tests (do you really trust your backups?)

The XFS filesystem /var/spool/imap (Cyrus IMAP spooldir) was backed up
in
level 0 on July, 2nd
      1          3rd
      1          4th
      2          5th
      2          6th
      3          7th
      3          8th.

I restored from tape to /mnt/junk the xfsdump images
level 0 of July, 2nd
      1          4th
      2          6th
      3          8th.

Then I used tar to compare the two directory trees:

# (cd /var/spool/imap && tar cf - .) | tar df -
[...]
tar: ./user/be/Sent/xy/290.: Warning: Cannot stat: No such file or
directory
[...]

Lots of files were missing (mostly due to reorganisation, aka moving
mails to different folders). I traced the history of this particular
file user/be/Sent/xy/290.

It's not in the restored subtree:

# ls -l user/be/Sent/xy/29*
-rw-------   1 cyrus    root         1243 Nov 30  2000
user/be/Sent/xy/29.
-rw-------   1 cyrus    root          775 Jul  5 15:52
user/be/Sent/xy/291.

But it's still in the backed up spooldir:

# ls -l /var/spool/imap/user/be/Sent/xy/29*
-rw-------   1 cyrus    root         1243 Nov 30  2000
/var/spool/imap/user/be/Sent/xy/29.
-rw-------   2 cyrus    root          885 Jul  4 18:47
/var/spool/imap/user/be/Sent/xy/290.
-rw-------   2 cyrus    root          775 Jul  5 15:52
/var/spool/imap/user/be/Sent/xy/291.

What did xfsrestore do to my holy IMAP spool???

Amanda's index tells me this file was backed up on July 5th and 6th in
level 2:

$ zgrep Sent/xy/290 _var_spool_imap/200107*
_var_spool_imap/20010705_2.gz:/user/be/Sent/xy/290.
_var_spool_imap/20010706_2.gz:/user/be/Sent/xy/290.

Then I restored that particular subtree user/be/Sent/xy with xfsrestore
debug mode:

# (/usr/sbin/amrestore -p $TAPE ente imap | /usr/sbin/xfsrestore -r -s
user/be/Sent/xy -v trace - .) > xfsrestore.debug.0
# (/usr/sbin/amrestore -p $TAPE ente imap | /usr/sbin/xfsrestore -r -v
trace - .) > xfsrestore.debug.1
# (/usr/sbin/amrestore -p $TAPE ente imap | /usr/sbin/xfsrestore -r -v
trace - .) > xfsrestore.debug.2
# (/usr/sbin/amrestore -p $TAPE ente imap | /usr/sbin/xfsrestore -r -v
trace - .) > xfsrestore.debug.3

After applying level 2, the file was in the restored subtree:

# ls -l user/be/Sent/xy/29*
-rw-------   1 cyrus    root         1243 Nov 30  2000
user/be/Sent/xy/29.
-rw-------   1 cyrus    root          885 Jul  4 18:47
user/be/Sent/xy/290.

After applying level 3, it was missing:

# ls -l user/be/Sent/xy/29*
-rw-------   1 cyrus    root         1243 Nov 30  2000
user/be/Sent/xy/29.
-rw-------   1 cyrus    root          775 Jul  5 15:52
user/be/Sent/xy/291.

xfsrestore.debug.3 told me xfsrestore had deleted user/be/Sent/xy/290.:

[...]
/usr/sbin/xfsrestore: rename nondir user/be/Sent/xy/290. to
orphanage/9074670.1
/usr/sbin/xfsrestore: unlink nondir orphanage/9074670.1
[...]
/usr/sbin/xfsrestore: restoring user/be/Sent/xy/291. (9074676 0)
/usr/sbin/xfsrestore: restoring regular file ino 9074676
user/be/Sent/xy/291.
/usr/sbin/xfsrestore: truncating user/be/Sent/xy/291. from 0 to 775
/usr/sbin/xfsrestore: restore complete: 76 seconds elapsed

What's going on here? I'm using xfsdump-1.0.9-0.

<Prev in Thread] Current Thread [Next in Thread>
  • xfsrestore deletes files in cumulative restores, Bernhard R. Erdmann <=