← Back to team overview

sslug-teknik team mailing list archive

Re: Forskellen på links

 

Frank Damgaard <frank_sslug1@xxxxxxxxxxxx> writes:

> hardlink er hvor der oprettes et filnavn med samme inode-
> nummer som den oprindelige fil. det fungerer kun på samme
> "partition". Det er hurtigere at tilgå data på en fil som er en
> hardlink som hvis det var et symbolsk link.

Jeg tror at man skal åbne rigtig mange filer for det hastighedsforskel
er relevant. 

Vigtigere er det at der er fuldstændig symetri imellem de forskellige
hardlinks. Der er ikke et af navnene der er mere rigtige end de andre
og filen slettes først når alle hardlinks er fjernet. Tilgengæld
virker hardlinks kun på samme filsystem og hardlinks til kataloger er
ikke mulige[0][1].

Med symbolske links er der en kalr skelnen mellem linket og den fil
der linkes til og man kan sagtens slette filen der er linket til
hvorefter linket så ikke vil pege på nogen fil. I nogle tilfælde
bruger man ofte symbolske links, der med vilje peger på ingenting. For
eksempel kan man lade lock-filer "pege" på en angivelse af processen
der låser en resurse:

  if ln -s $(hostname).$$ /tmp/somelock; then
    nohup cmd &
  else
    echo processen kører allerede
  fi

Men ofte er der bedre måder at gøre det på.

0) På nogle unixer kan man vist som root, men jeg er ikke sikker på at
   katalogtræet så virker helt veldefineret.

1) ud over at . og .. er hardlinks

-- 
 http://peter.makholm.net/ |     Yes, you can fight it, but in the end the
     peter@xxxxxxxxxxx     |          ultimate goal of life is to have fun
                           |                             -- Linus Torvalds


References