On Wed, 2006-05-31 at 03:48, Erik Trimble wrote:
> (I'm going to combine Constantine & Eric's replies together, so I
> apologize for the possible confusion):
> 

Apology accepted. :)

Anyhoo - What do you think the chances are that any application vendor
is going to write in special handling for Solaris file removal? I'm
guessing slim to none, but have been wrong before...

On the other hand, who hasn't removed something and thought to
themselves "dang. I wish I could get that back right now..."

As a frequent ex-user of the good old Netware Salvage, I can tell you
I'm a real fan of that type of functionality. 

Delete something, but it's not actually *really* deleted until we need
that space for something else. At any point, you can fire up the salvage
utility and grab the files back out of that directory.

It was not perfect either, but, it was wayyyy faster than having to get
tapes out...

In the case of taking a snapshot before some mythical event that looks
like it's going to seriously change the system, where do we draw the
line? What do we do when we get something like a 

for i in *
do
        rm $i
done

You want a 100% solution, but is your 100% solution my, or anyone elses
100% solution?

I for one, would *much* prefer the filesystem to make that stuff
available to me, so regardless of what removed the file, I at least have
a chance to get it back.

Then again, I'd also much prefer that the files be recoverable right up
until we need the space back. Something like what Eric had suggested,
but set the space that the deleted files *cannot* use, so we still
always have 'free' blocks ready for new allocations...

So, as opposed to 
# zfs set undelete=1m home/eschrock

something like
# zfs set undelete-queue-size=1m home/eschrock
and
# zfs set undelete-unusable-size=100m home/eschrock

and these two options being mutually exclusive...

>From an implementation perspective, I'll be interested to see how we get
things back, particularly in the case of multiple directories being
removed, and NOT wanting to blow away the files in the directories that
I (or my app) might have partially reconstructed in the meanwhile...

<fantasy>

/my/directory/important/rubbish # rm -rf .*

"ARGH!"

cd ..  (Not there...)

cd /my/directory

zfs undo $PWD/important  (Or whatever interface we use!)

"ah. :)"

</fantasy>

Wow. Even thinking about how the ZFS guys might implement that breaks my
head...

Nathan.


_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to