xfs
[Top] [All Lists]

Re: LVM + XFS + external log + snapshots

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: LVM + XFS + external log + snapshots
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Sun, 23 Jun 2013 18:24:39 -0500
Cc: aurfalien <aurfalien@xxxxxxxxx>, xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20130623225546.GB29376@dastard>
References: <022467CC-8EB2-41E9-8AF6-46F781882F6B@xxxxxxxxx> <20130623225546.GB29376@dastard>
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130509 Thunderbird/17.0.6
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?

i.e.

truncate --size=2g logfile (or however big it needs to be)
losetup /dev/loop0 logfile
mount /dev/vg_anette_data/datasnapshot /snapshot -o logdev=/dev/loop0,nouuid,ro

-Eric

> Cheers,
> 
> Dave.
> 

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