При создании символической ссылки, как устранить неполадки «слишком большого количества символических ссылок»?

15

Я пытаюсь создать символическую ссылку на Ubuntu 10.04 ((Lucid Lynx)):

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

И когда я делаю, /usr/bin$ ls php*я просто получаю:

php  php5  php-config  php-config5  phpize  phpize5

Я пытался создать его раньше, и я не уверен, что я запускаю неправильную команду ...

user35538
источник
попробуйте указать полный путь PHPUnit
гейзенбаг

Ответы:

30

Помните, что использование ln -s target /path/symlink, targetбудет интерпретироваться как относительно pathкаталога (куда будет входить символическая ссылка). Ваша команда создаст символическую ссылку, которая указывает на себя. Следовательно, цикл поиска пути будет происходить при каждом обращении к символической ссылке.

В вашем случае, возможно, /usr/bin/phpunitуже существует и самоконтроля. Сначала удалите его и измените вашу команду на:

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

(Использование абсолютной цели, вероятно, является лучшим здесь)

Стефан Хименес
источник