xfs
[Top] [All Lists]

Re: LVM + XFS + external log + snapshots

To: Eric Sandeen <sandeen@xxxxxxxxxxx>
Subject: Re: LVM + XFS + external log + snapshots
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Mon, 24 Jun 2013 09:39:33 +1000
Cc: aurfalien <aurfalien@xxxxxxxxx>, xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <51C783B7.2040502@xxxxxxxxxxx>
References: <022467CC-8EB2-41E9-8AF6-46F781882F6B@xxxxxxxxx> <20130623225546.GB29376@dastard> <51C783B7.2040502@xxxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Sun, Jun 23, 2013 at 06:24:39PM -0500, Eric Sandeen wrote:
> On 6/23/13 5:55 PM, Dave Chinner wrote:
> > On Fri, Jun 21, 2013 at 10:30:31PM -0700, aurfalien wrote:
> >> Hi all,
> >>
> >> So I have an XFS file system within LVM  which has an external log.
> >>
> >> My mount option in FSTAB is;
> >>
> >> /dev/vg_spock_data/lv_data /data   xfs     
> >> logdev=/dev/sdc1,nobarrier,logbufs=8,noatime,nodiratime 1 1
> >>
> >> All is well no issues and very fast.
> >>
> >> Now I'd like to snapshot this bad boy and then run rsnapshot to create a 
> >> few days backup.
> > 
> > You need to snapshot the log device as well.
> > 
> > But that is problematic in that you need to snapshot it at the same
> > time you snapshot the data volume. Hence yo'd have to do:
> > 
> > # xfs_freeze -f <filesystem>
> > # <snapshot data volume>
> > # <snapshot log volume>
> > # xfs_freeze -u <filesystem>
> > 
> > And now you can mount the snapshot with:
> > 
> > # mount /dev/vg_spock_data/datasnapshot /snapshot -o 
> > nouuid,ro,logdev=/dev/vg_spock_log/logsnapshot
> > 
> > If you can't snapshot the log device, then you can't snapshot the
> > filesystem. Yet another reason for using internal logs...
> 
> Hm, given that freezing the fs makes the log (almost) completely clean, I 
> wonder
> if he could mount with /dev/zero (or a loopback 0-filled file) to get at the 
> snapshot,
> especially since it's being mounted RO.
> 
> Should be safe & consistent, no?

In theory. Never tried it myself.

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>