Если копирование выполняется в некотором терминале оболочки (т. е. bash), тогда cp может быть явно сказано скопировать файл, на который указывает ссылка, с --dereference, а не сама ссылка. Поведение cp по умолчанию состоит в том, чтобы скопировать файлы, следуя их ссылкам, но многие графические файловые браузеры, похоже, по умолчанию пытаются копировать ссылки и обычно сохраняют большинство атрибутов.
man cp
-a, --archive
same as -dR --preserve=all
-d same as --no-dereference --preserve=links
-L, --dereference
always follow symbolic links in SOURCE
Пример
touch SomeFile.txt
echo "some content" > someFile.txt
ln -s -T someFile.txt someLink
echo "Some content for the test file." > someLink
mkdir someDirectory
ln -s -T someDirectory someDirLink
Тот факт, что someLink является ссылкой, показан флагом l в первой позиции вывода листинга (а `d 'обозначает каталог).
ls -l
-a, --archive
same as -dR --preserve=all
-d same as --no-dereference --preserve=links
-L, --dereference
always follow symbolic links in SOURCE
Файл содержит контент, а ссылка указывает на файл, но может быть использована практически любым способом. файл может быть. (Обратите внимание на размер файла ссылки и размер текстового файла: 32 байта против 12 байтов.)
cat someFile.txt
drwxrwxr-x. 2 user group 4096 Aug 17 17:17 someDirectory lrwxrwxrwx. 1 user group 13 Aug 17 17:17 someDirLink -> someDirectory -rw-rw-r--. 1 user group 32 Aug 17 17:01 someFile.txt lrwxrwxrwx. 1 user group 12 Aug 17 17:12 someLink -> someFile.txt cat someLink
[d15 ] Some content for the test file. Сначала скопируйте ссылку на каталог. Затем скопируйте файл в каталог по ссылке. (Ниже также показано, что ссылки на каталоги работают аналогично ссылкам на файлы.):
cp -a someLink someDirLink/newCopy
cp -L someLink someDirectory/newCopy.txt
ll -l someDirLink/
Some content for the test file. Пример
Связи могут указывать на полный путь или относительный путь. Поскольку в этом примере используется ссылка, основанная на относительном пути цели, находящейся в том же каталоге, что и создаваемая ссылка, ссылка была разбита, когда она была скопирована в новый каталог.
cat someDirLink/newCopy
Some content for the test file. cat someDirLink/newCopy.txt
lrwxrwxrwx. 1 user group 12 Aug 17 17:12 newCopy -> someFile.txt -rw-rw-r--. 1 user group 32 Aug 17 17:36 newCopy.txt Я думаю, проблема связана с кэшированными эскизами, которые Nautilus пытается загрузить при открытии этой библиотеки. В 13.10 миниатюры хранятся в ~/.cache/thumbnails, пытаясь опорожнить этот каталог и посмотреть, помогает ли это.
Если он по-прежнему не помогает, то возможно, что плагины naililus не будут нарушены, что связано с конкретным filetype в этой папке. В этом случае загляните в этот каталог и проверьте, есть ли файл, который не находится в других каталогах.
Или файл в этом каталоге поврежден, и когда вы открываете этот каталог, Nautilus пытается его кешировать, но он из-за коррупции. В этом случае вы должны проверить эти файлы, работают ли они и не повреждены.
В стартовой панели есть ошибка:
https://bugs.launchpad.net/ubuntu/+source/nautilus-python/+bug/1203349
В основном, файл длиной 0 или поврежденный файл, сидящий в папке, достаточно, чтобы сделать сбои nautilus, когда он пытается создать свою миниатюру.
Самое быстрое решение - открыть терминал и rm path/to/zero-length-file (если вам повезет) или определить и rm path/to/corrupted-file (если вам не повезло).
Кто-то сообщил, что решил проблему, обновив libgtk-3-0_3.8.6 до 3-0_3.8.7, но когда я пишу, что версия libgtk официально не была выпущена для 13.10.