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

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

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

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

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

Приклад
Створення жорсткого посилання File2 на файл з назвою file1.
$ ln file1 File2

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

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

$ ln -s file1 File3 $ ls -l File3
lrwxrwxrwx 1 nabis users 5 Sep 20 23:16 fileS -> file1

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

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

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

Пiдсумки

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