我正在尝试在 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
我之前尝试过创建它,但不确定我是否运行了错误的命令......
答案1
请注意,使用 时ln -s target /path/symlink
, 将target
被解释为相对于path
目录(符号链接所属的位置)。您的命令将创建一个指向自身的符号链接。因此,每次访问符号链接时都会发生路径查找循环。
就你的情况而言,可能/usr/bin/phpunit
已经存在并且是自循环的。首先将其删除,然后将命令更改为:
me@laptop:~/PHPUnit$ ln -s ~/PHPUnit/phpunit /usr/bin/phpunit
(这里使用绝对目标可能是最好的)