Как создавать ссылки на каталоги с помощью команды ln?

Возможно ли создавать жесткие\символические ссылки на каталоги? В задании указано создать жесткую ссылку с каталога на файл, с каталога на каталог. Нигде не нашел, как именно это делается. Ссылки между файлами создаются командой ln без проблем.

ln ~/kat1/kat2 ~/kat3 

ln: /kat1/kat2: Не допускается создавать жесткие ссылки на каталоги

Также с файла на каталог не получается:

ln file1 ~/kat1/kat2
ln: Не удалось создать жесткую ссылку '~/kat1/kat2/file1': Файл существует

В ошибке приводится файловый путь, но в моей системе он не существует, т.к. file1 находится в каталоге kat3.


Ответы (1 шт):

Автор решения: Senior Pomidor
ln -sfn /path1 /path2
  • -s - создает мягкую ссылку
  • -P - создать жесткую ссылку.
  • -f - если таргет файл уже существует и является каталогом, тогда удаляет его, чтобы создать ссылку. Используется в пару с -s, лучше не использовать этот флаг
  • -n - если в пути есть уже мягкие ссылки, то не следовать им. Это наиболее полезно с опцией -f, чтобы заменить символическую ссылку, которая может указывать на каталог

достаточно использовать утилиту без параметров и будет создана жесткая ссылка. ln source hardlink

→ Ссылка