Команда Linux ln
Команда Linux ln (полное английское название: link files) — очень важная команда. Её функция — создавать синхронизированную ссылку на файл в другом месте.
Когда нам нужно использовать один и тот же файл в разных каталогах, нам не нужно помещать идентичный файл в каждый требуемый каталог. Достаточно поместить файл в фиксированный каталог, а затем с помощью команды ln создать ссылку на него в других каталогах, так что нет необходимости многократно занимать дисковое пространство.
Синтаксис
ln [参数][源文件或目录][目标文件或目录]Формат параметров следующий:
[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]
[--help] [--version] [--]
Функция команды :
В файловой системе Linux существуют так называемые ссылки. Мы можем рассматривать их как псевдонимы для файлов. Ссылки делятся на два типа: жёсткие ссылки и символические ссылки. Жёсткая ссылка означает, что файл может иметь несколько имён, тогда как символическая ссылка — это способ создать специальный файл, содержимое которого указывает на местоположение другого файла. Жёсткие ссылки существуют в одной файловой системе, а символические ссылки могут охватывать разные файловые системы.
Ни жёсткие, ни символические ссылки не копируют исходный файл; они занимают лишь очень небольшой объём дискового пространства.
Символические ссылки:
- 1. Символические ссылки существуют в виде путей. Они похожи на ярлыки в операционной системе Windows.
- 2. Символические ссылки могут пересекать файловые системы, но жёсткие ссылки — нет.
- 3. Символические ссылки могут ссылаться на несуществующее имя файла.
- 4. Символические ссылки могут ссылаться на каталоги.
Жёсткие ссылки:
- 1. Жёсткие ссылки существуют в виде копий файла. Однако они не занимают реального места.
- 2. Создание жёстких ссылок на каталоги не допускается.
- 3. Жёсткие ссылки можно создавать только в пределах одной файловой системы.
Параметры команды
Обязательные параметры:
- --backup[=CONTROL] создавать резервные копии существующих целевых файлов
- -b аналогично--backup, но не принимает параметры
- -d Разрешить суперпользователю создавать жёсткие ссылки для каталогов
- -f Принудительное выполнение
- -i Интерактивный режим; если файл существует, запрашивать у пользователя, перезаписывать ли его
- -n Рассматривать символические ссылки как обычные каталоги
- -s Мягкая ссылка (символическая ссылка)
- -v Выводить подробную информацию об обработке
Необязательные параметры:
- -S "-S<строка суффикса резервной копии> " или "--suffix=<строка суффикса резервной копии>"
- -V "-V<метод резервного копирования>" или "--version-control=<метод резервного копирования>"
- --help Отобразить справочную информацию
- --version Отобразить информацию о версии
Примеры
Создать символическую ссылку для файла. Создать символическую ссылку link2013 для файла log2013.log. Если log2013.log будет потерян, ссылка link2013 станет недействительной:
ln -s log2013.log link2013
Вывод:
[root@localhost test]# ll -rw-r--r-- 1 root bin 61 11-13 06:03 log2013.log [root@localhost test]# ln -s log2013.log link2013 [root@localhost test]# ll lrwxrwxrwx 1 root root 11 12-07 16:01 link2013 -> log2013.log -rw-r--r-- 1 root bin 61 11-13 06:03 log2013.log
Создайте жёсткую ссылку для файла. Создайте жёсткую ссылку ln2013 для log2013.log. log2013.log и ln2013 имеют одинаковые атрибуты.
ln log2013.log ln2013
Вывод:
[root@localhost test]# ll lrwxrwxrwx 1 root root 11 12-07 16:01 link2013 -> log2013.log -rw-r--r-- 1 root bin 61 11-13 06:03 log2013.log [root@localhost test]# ln log2013.log ln2013 [root@localhost test]# ll lrwxrwxrwx 1 root root 11 12-07 16:01 link2013 -> log2013.log -rw-r--r-- 2 root bin 61 11-13 06:03 ln2013 -rw-r--r-- 2 root bin 61 11-13 06:03 log2013.logДругие расширения
Справочник команд Linux