2015-09-10 2 views
0

https://www.youtube.com/watch?v=-XosJtC0vyAсимволическая ссылка может быть создана только от родителя к дочерней по FreeBSD?

В текущем каталоге (тест), я использовал

echo date > date.sh ; chmod u+x date.sh 

создать date.sh и сделать его исполняемым.

Тогда я использовал

ln -s date.sh ../date.sh.sym1 
ln -s ./date.sh ../date.sh.sym2 

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

./date.sh.sym1 
./date.sh.sym2 

В результате, как показали команды не найден. Тогда в родительском каталоге, я использовал

ln -s test/date.sh date.sh.sym3 

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

./date.sh.sym3 

Это потому, что символическая ссылка может быть создана только от родителя к дочернему? (FreeBSD 10.2)

ответ

1

Пользователь в видео неправильно набрал команды ln. Первым параметром для ln является цель (к чему вы привязываетесь) второй параметр, где место ссылки. Когда вы делаете ln -s date.sh ../date.sh.sym1, вы помещаете символическую ссылку в родительский каталог в то, что находится в текущем каталоге. Пользователь в видео затем изменил каталоги в родительский каталог. Из этой системы отсчета ОС ожидала что-то под названием date.sh в текущем каталоге. Следовательно, ошибки command not found.

Второй пользователь, ln -s test/date.sh date.sh.sym3 создал ссылку на test/date.sh. Этот путь (test/date.sh) может быть разрешен, и именно поэтому он побежал.