Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

SYMLINK_CONFIG Linux / DevOps

Символические ссылки в Linux: как создать ярлык на папку или файл (ln -s)

Обновлено: 26.08.2026 · Официальная документация ↗

Большие файлы логов или медиа забили системный диск, и их нужно перенести на второй подключенный диск (например, в /mnt/storage), но сайт или сервис требует, чтобы файлы оставались по старому системному пути (/var/www/uploads).

Что такое символическая ссылка (Symlink)?

Символическая ссылка (Soft link / Symlink) — это аналог ярлыка в Windows. Это специальный маленький файл-указатель, который перенаправляет программы по новому адресу. Любая программа, открывая симлинк, даже не замечает подмены и думает, что работает с оригинальной папкой.


Синтаксис команды ln -s

Запомните простое правило: ln -s КУДА_ССЫЛАТЬСЯ (Оригинал) ГДЕ_СОЗДАТЬ_ЯРЛЫК (Ссылка)


Шаг 1. Практический пример переноса папки

  1. Перемещаем тяжелую папку с картинками на большой второй диск:
    sudo mv /var/www/uploads /mnt/storage/uploads
  2. Создаем символический ярлык на старом месте:
    sudo ln -s /mnt/storage/uploads /var/www/uploads

Теперь веб-сервер будет обращаться по привычному пути /var/www/uploads, но физически все файлы будут писаться на диск /mnt/storage/uploads!


Шаг 2. Как отличить симлинк от обычной папки (ls -l)

Выполните команду просмотра:

ls -l /var/www/

Символическая ссылка обозначается буквой l в начале строки и стрелочкой:

lrwxrwxrwx 1 root root 20 Jan 15 uploads -> /mnt/storage/uploads

Шаг 3. Как правильно удалить симлинк

Чтобы удалить ссылку-ярлык (без удаления оригинальных файлов):

sudo rm /var/www/uploads

Внимание: никогда не ставьте слэш / в конце имени ссылки при удалении (пишите uploads, а не uploads/), иначе система может удалить файлы внутри целевой папки!

💡 Практика специалистов: Если Nginx возвращает ошибку 403 Forbidden при переходе по симлинку, убедитесь, что в конфигурационном файле Nginx или Apache включена опция 'disable_symlinks off;' (или 'Options FollowSymLinks').

Частые вопросы (FAQ)

В чем разница между жесткой (Hard link) и мягкой (Soft/Symbolic link) ссылкой?

Символическая ссылка (ln -s) — это ярлык, содержащий путь к файлу; она может указывать на папки и работать между разными дисками. Жесткая ссылка (ln без ключа -s) — это прямое второе имя того же самого inode на диске, не может указывать на каталоги и работает только в пределах одного раздела.

Почему ссылка подсвечивается красным цветом и мигает в терминале?

Это 'битая ссылка' (Broken symlink) — файл или папка, на которую указывал ярлык, была перемещена, переименована или удалена.

Нужно ли указывать полные (абсолютные) пути при создании ln -s?

Да, настоятельно рекомендуется всегда указывать полные абсолютные пути (начиная от корня /), чтобы ссылка не сломалась при обращении из других каталогов.

Как обновить путь существующей ссылки без ее удаления?

Используйте флаг принудительной перезаписи -f: ln -sf /new/target/path /path/to/symlink.

Полезные материалы
Рекомендуем