Pokud soubor je symbolicky propojený sám se sebou, pak nejsou přítomna žádná data a jakýkoli pokus o přístup k nim povede ke smyčce a nakonec k chybě
např.
$ ls -l myfile
lrwxrwxrwx 1 sweh sweh 19 Sep 9 22:38 myfile -> /path/to/here/myfile
$ cat myfile
cat: myfile: Too many levels of symbolic links
Protože neexistují žádná data, smazáním těchto symbolických odkazů nepřijdete o žádná data, protože existují žádná data k zachování.
Pokud nedostanete Too many levels of symbolic links
chyba při pokusu o cat
soubor, pak váš soubor není odkaz na sebe.
ln
nikdy přepsat soubor odkazem na sebe. Můžete získat soubor propojený sám se sebou pomocí:
$ ln -s `pwd`/myfile myfile
$ ls -l myfile
lrwxrwxrwx 1 grochmal users 25 Sep 10 03:41 myfile -> /home/grochmal/tmp/myfile
Ale pokud to zkusíte se souborem, který obsahuje data:
$ rm -f myfile
$ echo yay > myfile
$ ln -sf `pwd`/myfile myfile
ln: '/home/grochmal/tmp/myfile' and 'myfile' are the same file
ln
, na druhou stranu přepíše soubor odkazem na jiný soubor.
Přesto si můžete být spíše jisti, že odkaz na sebe je soubor, který nikdy neobsahoval data (nebo byl explicitně smazán před vytvořením měkkého odkazu).
(v systému Linux a pomocí ln
od coreutils
, tedy)