Які переваги символьних посилань над жорсткими посиланнями та навпаки?


10

Я розумію відмінності між символічними та жорсткими зв’язками, але ніколи не розумів, чому обираю те чи інше.


2
Дивіться відповіді на тему "Яка різниця між символьним посиланням та жорстким посиланням?" на StackOverflow: stackoverflow.com/questions/185899 / ...
pelms

Відповіді:


10

Це було детально обговорено на ServerFault.

Жорстке посилання традиційно поділяє ті самі структури файлової системи (inode in unixspeak), тоді як soft-link - це перенаправлення імені шляху.

  • Жорсткі посилання повинні бути в одній файловій системі, програмні посилання можуть перетинати файлові системи.
  • Файли з твердим посиланням залишаються зв'язаними, навіть якщо ви перемістите будь-який з них (якщо ви не перемістите один до іншої файлової системи, що запускає механізм копіювання та видалення). Файли з м'якими посиланнями розриваються, якщо ви переміщуєте ціль (оригінал), а іноді при переміщенні посилання (Ви використовували абсолютний чи відносний шлях? Чи все-таки він дійсний?).
  • Файли з твердим посиланням є рівними, тоді як оригінал є спеціальним у софтпосиланнях, а при видаленні оригіналу видаляються дані. Дані не зникають, поки всі тверді посилання не будуть видалені.
  • Softlinks може вказувати на будь-який мети, але більшість OS / файлові систем дозволяють hardlinking каталогів для запобігання циклів в файлової системі графа (за винятком з .і ..записів в UNIX каталогах , які є жорсткими посиланнями).
  • Софтпосилання можуть вимагати спеціальної підтримки інструментів для ходьби файлової системи. Прочитайте на readlink (2) .

(Деякі деталі повернуті до відома Mat1t . Спасибі.)


10

Рональд написав, що жорстке посилання може мати різні дозволи в двох місцях. Це неправильно. Обидва місця мають один і той же індед. Дозволу прив’язані до inode, а не до імені файлу. Тож жорсткі посилання в двох місцях мають абсолютно однакові дозволи, час доступу, ...


1

символьні посилання можуть перетинати файлові системи, жорсткі посилання не можуть. Якщо ви видалите оригінальний файл, жорстке посилання все ще зберігає його живим, символьне посилання не робить.


0

Жорстке посилання по суті означає, що файл живе в двох місцях, він може мати різні дозволи, ви можете видалити його на місці, але не в іншому.

М’яке посилання - це лише вказівник на реальну річ.

Міцним посиланням є дві (або більше) записи каталогів, що вказують на один і той же файл. М'яке посилання - це запис каталогу, який вказує на інший запис каталогу.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.