Символьне посилання (також симлінк від англ. Symbolic link, символічне посилання) — спеціальний файл у файловій системі, для якого не формуються жодні дані, крім одного текстового рядка з покажчиком. Цей рядок трактується як шлях до файлу, який повинен бути відкритий при спробі звернутися до посилання (файлу). Символьне посилання займає рівно стільки місця у файловій системі, скільки потрібно для запису її вмісту (нормальний файл займає щонайменше один блок розділу).

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

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

Створення символьного посилання

Символьне посилання можна створити за допомогою команди ln із ключем -s (від “symbolic”). Першим параметром пишеться абсолютна адреса та ім’я вихідного файлу, другим – адреса та ім’я посилання. Наприклад:

ln -s filename linkname # створюється символьне посилання (symbolic link)

Перегляд символьного посилання

Подивитися, куди веде символьне посилання, можна командою:

ls -l linkname

В результаті виконання команди в полі stat буде показано символ l (link).

Cимвольная ссылка

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

Видалення символьного посилання

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

rm linkname

При видаленні символьного посилання каталог слід враховувати, що записувати команду без слеша в кінці, інакше bash видасть помилку “неможливо видалити посилання: це каталог”.

Коректний запис:

unlink linkname
rm -r linkname

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *