Date: Mon, 16 Feb 2015 11:54:10 +0200 From: Konstantin Belousov <kostikbel@gmail.com> To: Matthew Seaman <matthew@freebsd.org> Cc: freebsd-fs@freebsd.org Subject: Re: About Filesystem freeze/thaw in freebsd Message-ID: <20150216095410.GH34251@kib.kiev.ua> In-Reply-To: <54E1B90E.8050101@freebsd.org> References: <COL128-W74C2CE6B8243E74B26A286F62E0@phx.gbl> <54E1B90E.8050101@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Feb 16, 2015 at 09:31:58AM +0000, Matthew Seaman wrote: > On 02/16/15 09:07, zx zx wrote: > > Hi, I am experimenting to do a live backup of FreeBSD > > VM. Question is do we have freeze/thaw interfaces in FreeBSD? I > > searched a lot in web and freebsd source code, just could not find > > the right interface. As I know that in linux:VxFS > > provides ioctl interfaces to application programs to freeze and thaw > > VxFS file systems. The interfaces are VX_FREEZE, VX_FREEZE_ALL, and > > VX_THAW.About Freeze and thaw Freezing a file system temporarily > > blocks all I/O operations to a file system and then performs a sync > > on the file system. Current operations are completed and the file > > system is synchronized to disk. Freezing a file system is a necessary > > step for obtaining a stable and consistent image of the file system > > at the volume level. Consistent volume-level file system images can > > be obtained and used with a file system snapshot tool. The freeze > > operation flushes all buffers and pages in the file system cache that > > contain dirty metadata and user data. The operation then suspends any > > new activity on the file system until the file system is thawed. > > Any help would be appreciated, thanks a lot! Andy Zhang > > What you want is snapshotting. You can create a snapshot of UFS or ZFS > filesystems, mount the snapshot and then back it up without needing to > worry about the filesystem changing while you're trying to back it up. > > See mksnap_ffs(8) and the 'snapshot' entry in zfs(8) > > The snapshot is mounted separately from the actual filesystem which can > carry on with normal activities in the mean time. > > Snapshotting functionality is built into dump(8) for UFS filesystems > (See the -L flag in that man page) or you can use zfs send / recv to > dump filesystems to tape, which implies use of snapshots. Snapshot is different functionality from what the OP asked. Exactly requested feature is provided by UFSSUSPEND/UFSRESUME ioctls on the /dev/ufssuspend, for UFS volumes. You should consult the code to see how to use them. I suspect that the similar feature exists for ZFS, but I do not know where to start looking.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150216095410.GH34251>