В чем различие между жесткой и символической ссылкой?

Жесткая ссылка:

Символическая ссылка:

Однако, есть и общее свойство:

Если вы удалите жесткую ссылку или символическую ссылку, исходный файл останется без изменений.

* Пару моментов по данному вопросу.

Вообще, Жесткие ссылки на каталоги разрешены в Linux, но ограниченным способом.

Один из способов проверить это, когда мы делаем ls -la, мы находим два специальных каталога «.» а также «..». Как мы знаем «.» указывает на тот же каталог, а «..» указывает на родительский каталог.

Давайте создадим дерево каталогов, где «a» является родительским каталогом, у которого каталог «b» является дочерним.:

a
`– b

Запишите индекс каталога «а». И когда мы делаем ls -lai из каталога «а», мы можем видеть, что «.» каталог также указывает на тот же индекс.

user@host:~$ ls -lai
31721141 drwxr-xr-x 3 user group 4096 дек 23 14:35 a

user@host:~$ cd a

user@host:~/a$ ls -lai
31721141 drwxr-xr-x 3 user group 4096 дек 23 14:35 .
31457281 drwxr-xr-x 76 user group 4096 дек 23 14:32 ..
31721143 drwxr-xr-x 2 user group 4096 дек 23 14:35 b

Теперь перейдем в каталог b и сделаем то же самое:

user@host:~/a$ cd b

user@host:~/a/b$ ls -lai
31721143 drwxr-xr-x 2 user group 4096 дек 23 14:35 .
31721141 drwxr-xr-x 3 user group 4096 дек 23 14:35 ..

И здесь мы можем обнаружить, что каталог «а» имеет три жесткие ссылки. Это связано с тем, что индекс 31721141 имеет жесткие ссылки на имя «.» внутри каталога «a», имя как «..» внутри каталога «b» и еще одну, на сам каталог a.

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

Кроме того, в некоторых других UNIX системах - символические ссылки на каталоги разрешены.