Різниця між Soft Link і Hard Link в UNIX в ОС

Посилання в системі на базі UNIX використовується для встановлення зв'язку між файлом та фактичними даними на диску. Це більше схоже на вказівник або посилання, що вказує на інший файл або каталог, як і поняття покажчиків у мовах програмування.

Скажімо, файл має дуже довге ім'я, і ​​з певних причин його неможливо змінити. У UNIX ми можемо посилатися на файл із посиланням, використовуючи коротше ім’я для зручності використання. Ці посилання на той самий файл у UNIX називаються посиланнями. Простіше кажучи, посилання - це засіб посилатися на вміст файлу.

Існує два типи посилань, які використовуються в UNIX: М'які та жорсткі посилання. Обидва в основному використовуються для однієї і тієї ж мети, за винятком того, як вони ведуть себе.

Що таке м'яке посилання?

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

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

Що таке жорстке посилання?

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

Жорсткі посилання мають одне і те ж значення Inode, і на відміну від м'яких посилань, вони вказують на розташування файлу, а не на каталог. Зазвичай він використовується у файлових системах, які дозволяють отримати більше, ніж на жорсткому посиланні для одного файлу. Простіше кажучи, жорстке посилання - це лише додаткова назва для вже існуючого файлу в системах на базі UNIX.

Різниця між Soft Link і Hard Link в UNIX

Значення

М'яке посилання, яке також називають символічним посиланням, - це спеціальний покажчик, який встановлює зв'язки між файлами. Це дуже схоже на функцію швидкого доступу, доступну в операційних системах Windows. М'яке посилання просто - це ярлик файлу, який служить посиланням на інший файл або каталог. Жорстке посилання сильно відрізняється, ніж м'яке посилання. Він служить посиланням або покажчиком на оригінальний файл, тобто це точно дзеркальна копія оригінального файлу, на який він вказує. Простіше кажучи, жорстке посилання - це лише додаткова назва вже наявного файлу.

Поведінка

Оскільки м'який зв'язаний файл містить окреме значення Inode, що вказує на вихідний файл, посилання стає недоступним, якщо вихідний файл або каталог видалено з системи. Це лише ярлик до файлу, щоб ви могли видалити м'які посилання, не впливаючи на оригінальний файл або каталог. На відміну від м'яких посилань, жорсткі посилання мають те саме значення Inode, що і оригінальне, що вказує на те саме розташування файлу. Жорсткі посилання є більш гнучкими, ніж м'які посилання, оскільки ви можете отримати доступ до файлу, навіть якщо вихідний файл видалений із системи.

Командування

Для встановлення зв’язків між файлами в системі на базі UNIX вам потрібно скористатися командою «В». М'яке посилання посилається на символічний шлях, який вказує розташування вихідного файлу, але не його вміст. М'яке посилання створюється за допомогою команди "In -s".

В -в

Тут ви можете замінити 'source_file' оригінальним файлом, для якого потрібно створити м'яке посилання та 'myfile' на ім'я м'якого посилання або символічного посилання, а команда In -s створює м'яке посилання на файл ім'я, обидва в поточному каталозі.

З іншого боку, команда "В" використовується для створення жорсткого зв’язку. Команда In - це стандартна команда UNIX, яка використовується для створення жорсткого посилання на вказівку на кілька файлів з одним іменем.

В

Будова

На відміну від м'яких посилань, які можна використовувати для з'єднання і файлів, і каталогів, жорсткі посилання можуть посилатись лише на файли, але не на каталоги. Різниця надає м'яким посиланням певних якостей, яких жорсткі посилання не мають, наприклад, можливість зв'язуватися через файлову систему. Створення та видалення символічних посилань не вплине на вихідний файл. З іншого боку, жорсткі посилання не можна використовувати для посилання на файли за межами файлової системи. Жорсткі посилання мають одне і те ж значення Inode з фактичним вмістом файлу, тому видалення будь-якого посилання не вплине на інші посилання, і воно все одно відображатиме вміст файлу.

Soft Link vs. Hard Link: Порівняльна діаграма

Підсумок Soft Link vs. Hard Link

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