[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: FileSystem Question



On 06/29/07 17:54, Douglas Allan Tutty wrote:
On Fri, Jun 29, 2007 at 06:45:03PM +0000, Manon Metten wrote:
It's definitely no ordinary backup or RAID. It even works with a single hd.
SFS takes care of all this. I don't have to backup anything. SFS just
writes all subsequent copies of a file to different locations on the hd and
moves the existing ones to .recycled (well, in fact it only updates the
TOC). .recycled is just a hidden directory where all previous copies of a
file are stored.

This also means that in the rare case of a system crash when saving a
file, I only lose that part of my work that was in memory only. The copy
on disk remains untouched because only AFTER a new copy is written
to disk (to a different location), the old copy will be moved to .recycled
and the TOC will be updated. But in case of a crash during save, the
new copy isn't finished and thus the old copy remains untouched and
no TOC update is necessary. This whole process is completely hidden
for the user. .recycled only comes to mind when I have to recover some
data.

It sounds like the Log File System (LFS) that NetBSD is working on, or
the database-style of a mainframe where every 'file' is really a record
in a database where back copies are maintained until the space is
needed.

No. It is file versioning, which OpenVMS has had since the late 1970s. Extremely useful, for every reason that OP mentioned.

http://en.wikipedia.org/wiki/Files-11

    NODE"user pass"::device:[dir.subdir]filename.type;ver

    Every file has a version number, which defaults to 1 if no
    other versions of the same filename are present (otherwise
    one higher than the greatest version). Every time a file is
    saved, rather than overwriting the existing version, a new
    file with the same name but an incremented version number is
    created. Old versions are can be deleted explicitly, with the
    DELETE or the PURGE command, or optionally, older versions of
    a file can be deleted automatically when the file's version
    limit is reached (set by SET FILE/VERSION_LIMIT). Old versions
    are thus not overwritten, but are kept on disk and may be
    retrieved at any time. The architectural limit on version
    numbers is 32767. The versioning behavior is easily overridden
    if it is unwanted. In particular, files which are directly
    updated, such as databases, do not create new versions unless
    explicitly programmed.

--
Ron Johnson, Jr.
Jefferson LA  USA

Give a man a fish, and he eats for a day.
Hit him with a fish, and he goes away for good!



Reply to: