Re: FS: hardlinks on directories

Stephan von Krawczynski
2003-08-04T22:32:17Z

On Mon, 4 Aug 2003 16:09:28 -0500
Jesse Pollard <jesse@cats-chateau.net> wrote:

> > tar --dereference loops on symlinks _today_, to name an example.
> > All you have to do is to provide a way to find out if a directory is a
> > hardlink, nothing more. And that should be easy.
>
> Yup - because a symlink is NOT a hard link. it is a file.
>
> If you use hard links then there is no way to determine which is the "proper"
> link.

Where does it say that an fs is not allowed to give you this information in
some way?

>
> >
> > > It was also done in one of the "popular" code management systems under
> > > unix. (it allowed a "mount" of the system root to be under the CVS
> > > repository to detect unauthorized modifications...). Unfortunately,
> > > the system could not be backed up anymore. 1. A dump of the CVS
> > > filesystem turned into a dump of the entire system... 2. You could not
> > > restore the backups... The dumps failed (bru at the time) because the
> > > pathnames got too long, the restore failed since it ran out of disk space
> > > due to the multiple copies of the tree being created.
> >
> > And they never heard of "--exclude" in tar, did they?
>
> Doesn't work. Remember - you have to --exclude EVERY possible loop. And
> unless you know ahead of time, you can't exclude it. The only way we found
> to reliably do the backup was to dismount the CVS.

And if you completely run out of ideas in your wild-mounts-throughout-the-tree
problem you should simply use "tar -l".

And in just the same way fs could provide a mode bit saying "hi, I am a
hardlink", and tar can then easily provide option number 1345 saying "stay away
from hardlinks".

If you can do the fs patch, I can do the tar patch.

Regards,
Stephan