On Jun 23, 2013, at 4:24 PM, 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?
>
> 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
I'll try it and let you know.
Should be interesting.
- aurf
|