Жорсткі та м’які посилання

Матеріал з Вікі ЦДУ
Версія від 22:47, 19 квітня 2012; Ломанюк (обговореннявнесок)

(різн.) ← Попередня версія • Поточна версія (різн.) • Новіша версія → (різн.)
Перейти до: навігація, пошук

Жорсткі і символічні посилання
Linux win.jpg

Існує два типи посилань -жорсткі посилання і символьні посилання. Команда ln бере на себе завдання по створенню посилань.

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

Приклад
Створення жорсткого посилання rlink на файл з назвою file.


Rlink.PNG

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

Символьні (м'які) посилання можуть вказувати на файл поза файлової системи, навіть на вже неіснуючий файл. Це власне, невеличкий файл що утримує необхідну інформацію. Ви можете додавати і усувати символьні посилання без впливу на справжній файл. Оскільки символьні посилання, це лише файл із власною інформацією, він може вказувати також на каталоги. Щоб створити символьне посилання, додайте опцію -s до ln команди:

Slink.PNG

В символьних посиланнях не використовуються права доступу до файлу (іншими словами, вони завжди мають вигляд rwxrwxrwx). В дійсності, права доступу символьних посилань визначаються правами доступу до того файлу, на який вказує символьне посилання.

При тому, що між жорсткими і і символьними посиланнями існує функціональна схожість, між ними є і відмінності. По-перше, можна створити символьне посилання на файл, який не існує зробити аналогічно с жорстким посиланням не можна. По-друге, за допомогою символьних посилань можна просто встановити , на який файл вони вказують, а с жорсткими посиланнями простого способу визначити, які ще файли зв'язані з даним індексним дескриптором, немає. В обох випадках, жорсткого і символьного посилань, першим аргументом ln стоїть справжній файл (file), а потім йде назва файла-посилання що буде створено (rlink та link).

Посилання широко використовуються в системі Linuх. Особливо важливі символьні посилання, які вказують на бібліотеки загального користування, що знаходяться в каталозі /lib.

Пiдсумки

  • Вся суттева iнформацiя про файл прив'язана до його iндексного дескриптора.
  • Звернутися до файлу можна за його iм'ям, зв'язаним з iндексним дескриптором.
  • Кiлькiсть iмен необмежена.
  • Файл залишаеться доступним операцiйнiй системi до тих пiр, поки не будуть видаленi всi його iмена.
  • Символьне посилання - це особливий тип файлу, що посилається на жорстке посилання.