Quando si crea un collegamento simbolico, come posso risolvere "troppi livelli di collegamenti simbolici"?


15

Sto cercando di creare un collegamento simbolico su Ubuntu 10.04 ((Lucid Lynx)) che dice:

me@laptop:~/PHPUnit$ ls
assertions.php      LICENSE      PHPUnit           README.markdown
build.xml           package.xml  phpunit.bat       Tests
ChangeLog.markdown  phpunit      phpunit.xml.dist
me@laptop:~/PHPUnit$ ln -s phpunit /usr/bin/phpunit
ln: accessing `/usr/bin/phpunit': Too many levels of symbolic links

E quando lo faccio /usr/bin$ ls php*ottengo solo:

php  php5  php-config  php-config5  phpize  phpize5

Ho provato a crearlo in precedenza e non sono sicuro di eseguire un comando errato ...


prova a specificare il percorso completo di phpunit
Heisenbug,

Risposte:


30

Attenzione che usando ln -s target /path/symlink, il targetsarà interpretato come relativo alla pathdirectory (dove apparterrà il collegamento simbolico). Il tuo comando creerebbe un collegamento simbolico che punta a se stesso. Pertanto, un ciclo di ricerca del percorso si verificherebbe ogni volta che si accede al collegamento simbolico.

Nel tuo caso, forse /usr/bin/phpunitesiste già ed è auto-loop. Rimuovilo prima e cambia il tuo comando in:

me@laptop:~/PHPUnit$ ln -s ~/PHPUnit/phpunit /usr/bin/phpunit

(L'uso di un target assoluto è probabilmente il migliore qui)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.