Ответ
Символьная ссылка (symbolic link или soft link) — это специальный файл в Linux, который выступает как указатель на путь к другому файлу или директории. Это похоже на ярлык в Windows.
Ключевые характеристики:
- Создание: Командой
ln -s <целевой_файл_или_папка> <имя_ссылки>. - Содержимое: Ссылка содержит только текстовый путь к цели.
- Межфайловая система: Может ссылаться на объекты в других разделах или файловых системах.
- Поведение при удалении: Удаление самой ссылки не затрагивает цель. Если удалить целевой файл, ссылка становится "битой" (dangling link).
- Разрешение прав: Права доступа к файлу, на который ведет ссылка, определяются правами самого целевого файла, а не ссылки.
Практический пример в DevOps:
# Создаем конфигурационный файл по умолчанию
sudo nano /etc/myapp/config_default.yaml
# Создаем символьную ссылку, указывающую на актуальную конфигурацию для среды
sudo ln -s /etc/myapp/config_production.yaml /etc/myapp/config_current.yaml
# Теперь приложение может всегда читать из /etc/myapp/config_current.yaml
# Чтобы переключить среду, достаточно поменять цель ссылки
sudo rm /etc/myapp/config_current.yaml
sudo ln -s /etc/myapp/config_staging.yaml /etc/myapp/config_current.yaml
# Проверяем ссылку
ls -l /etc/myapp/config_current.yaml
# Вывод: lrwxrwxrwx 1 root root 35 Apr 10 12:00 /etc/myapp/config_current.yaml -> /etc/myapp/config_staging.yaml
Почему это полезно: Символические ссылки широко используются для управления версиями ПО (например, через update-alternatives), организации конфигураций для разных сред и создания удобных путей к часто используемым директориям.