lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <4676B4B9.9030002@hawkeye.stone.uk.eu.org>
Date:	Mon, 18 Jun 2007 17:37:13 +0100
From:	Jack Stone <jack@...keye.stone.uk.eu.org>
To:	Bryan Henderson <hbryan@...ibm.com>
CC:	alan <alan@...eserver.org>, hpa@...or.com,
	linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
	akpm@...ux-foundation.org, viro@...iv.linux.org.uk
Subject: Re: Versioning file system

Bryan Henderson wrote:
>> Part of the problem is that "whenever you modify a file"
>> is ill-defined, or rather, if you were to take the literal meaning of it
>> you'd end up with an unmanageable number of revisions.
> 
> Let me expand on that.  Do you want to save a revision every time the user 
> types in an editor?  Every time he runs a "save" command?  Every time a 
> program does a write() system call?  Every time a program closes a 
> modified file?  If you're adding to a C program, is every draft you 
> compile a revision, or just the final modification after the bugs are 
> worked out?
> 
> When I was very new to coding, I used VMS and thought the automatic 
> revisioning would be a great thing because it would save me when I 
> modified a program and later regretted it.  The system made a revision 
> every time I exited the editor.  But I soon found that the "previous 
> revision" to which I wanted to revert was always many editings back, since 
> I spent a lot of time trying to make the regrettable code work before 
> giving up.  VMS kept a fixed number of revisions per file.  But keeping 20 
> versions of other files would have been wasteful of disk space, directory 
> listing space, etc.
> 
> Later, I discovered what I think are superior alternatives:  RCS-style 
> version management on top of the filesystem, and automatic versioning 
> based on time instead of count of "modifications."  For example, make a 
> copy of every changed file every hour and keep it for a day and keep one 
> of those for a week, and keep one of those for a month, etc.  This works 
> even without snapshot technology and even without sub-file deltas.  But of 
> course, it's better with those.

>From what I can see this seems to be the consesus (and it sound very
sensible to me).

The question remains is where to implement versioning: directly in
individual filesystems or in the vfs code so all filesystems can use it?

Jack
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ