Можно ли создать символические ссылки, которые «следуют» за файлом?

Поведение:

me@local: tree
.
|-- ba
|   `-- file.txt
|-- foo
|   `-- file.txt -> ba/file.txt
`-- foobar

теперь, допустим, я переместил file.txt из ba в foobar:

me@local: mv ba/file.txt foobar/file.txt

Я заметил, что символическая ссылка в папке foo еще указать путь ba/file.txt.

Есть способ создать символические ссылки, которые автоматически обновляют пути при перемещении исходного файла?

Или символические ссылки, которые удаляются при удалении исходного файла?

Будет здорово .

7
задан 28 September 2010 в 13:57

3 ответа

Вы можете создавать жесткие ссылки.

Жесткие ссылки имеют свои недостатки, например, нет ссылок на каталоги, нет ссылок на файловые системы. И они не удаляются при удалении «оригинала»; на самом деле они не позволяют освободить место на диске, и вы все равно можете получить доступ к содержимому по жесткой ссылке.

Вы не можете создавать жесткие ссылки в файловом браузере (Nautilus), но есть сообщение об ошибке об этом.

0
ответ дан 28 September 2010 в 13:57

Да, вы можете.

В командной строке вы должны ввести:

ln ba/file.txt foo/file.txt

это сильная ссылка, и если вы даже удалите файл в ba / file.txt, он останется в foo / file.txt (вы Вы можете увидеть, сколько существует ссылок с помощью команды ls -l

. Если вы хотите сделать то, что вы сделали (создать символическую ссылку), вы должны набрать:

ln -s ba/file.txt foo/file.txt
0
ответ дан 28 September 2010 в 13:57

Насколько я знаю, нет никакого способа сделать это с обычными файловыми системами Linux.

Симлинки - это просто тупой текст, который гласит: «Смотри, меня действительно зовут Foo» - как вы уже выяснили, проверки Foo не существует. Вы можете создавать символические ссылки, которые ни на что не указывают, с той же легкостью, с которой вы можете создавать символические ссылки, указывающие на что-то полезное.

Может быть, кто-то с большим знанием файловых систем, отличных от ext2 / 3/4 (например, jfs? Или zfs? Или zfs?), Сможет сказать, возможно ли это в более продвинутых файловых системах, чем ext2 / 3/4. , Может быть, NTFS может поддержать это даже? NTFS не имеет символических ссылок как таковых, но есть некоторые другие немного похожие вещи (имя которых ускользает от меня прямо сейчас).

0
ответ дан 28 September 2010 в 13:57

Другие вопросы по тегам:

Похожие вопросы: