Emulating hard links on FAT et al.

Bill C. Riemers cygwin@docbill.net
Tue Apr 20 21:51:00 GMT 2004


I stand corrected.  Only some flavors of Unix allow hardlinks to carry
separate permissions.  I believe I became confused, because hardlinks
always allow separate path permissions.

i.e.

   mkdir /tmp/fi
   mkdir /tmp/bar
   touch /tmp/fi/foo.txt
   ln /tmp/fi/foo.txt /tmp/bar/foo.txt
   chmod 000 /tmp/fi
   chmod 777 /tmp/bar

Now that I think about it the last time I saw a Unix system that allowed the
actual files to have separate permissions was TitanOS.  And that was a bad
idea, since most users used this feature to cheat the disk quota system.

                                           Bill

----- Original Message ----- 
From: "Corinna Vinschen" <corinna-cygwin@cygwin.com>
To: <cygwin@cygwin.com>
Sent: Tuesday, April 20, 2004 4:35 PM
Subject: Re: Emulating hard links on FAT et al.


> On Apr 20 15:00, Bill C. Riemers wrote:
> > One obvious thing hard links allow is a way to have the same file with
> > different permissions.  With a symbolic link you need both access
> > permissions for the symbolic link and actual file.  i.e.
> >
> >   ln -s /tmp/foo.exe /home/bcr/foo.exe
> >   chmod ugo-x /tmp/foo.exe
> >   chmod ugo+x /home/bcr/foo.exe
> >
> > With a hardlink, you only need access permissions for the hardlink...
>
> That's not how it works.  Hardlinks are nothing but multiple directory
> entries for the same file.  The directory entry typically only consists
> of a name and a inode number.  The inode contains the file specific
> control information.  Obviously hardlinks to the same file point to
> the same inode.  Therefore all hardlinks to the same file have the same
> permissions, owner, etc, since it's *one* file with *one* owner and *one*
> set of permissions.  And, yes, it's implemented on NTFS like this.
>
>
> Corinna
>
> -- 
> Corinna Vinschen                  Please, send mails regarding Cygwin to
> Cygwin Co-Project Leader          mailto:cygwin@cygwin.com
> Red Hat, Inc.
>
> --
> Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
> Problem reports:       http://cygwin.com/problems.html
> Documentation:         http://cygwin.com/docs.html
> FAQ:                   http://cygwin.com/faq/
>



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list