У меня необычная проблема, которая, возможно, связана с тем, что я начинающий пользователь командной строки, но также относится и к использованию графического интерфейса.
Ситуация такова, что у меня есть сетевой диск, смонтированный на /media/drive/dir
с использованием cifs mount
при входе в систему (через измененные fstab
, разрешения 0777
для dirs
и files
), и я хочу скопировать каталог, содержащий несколько подкаталогов, содержащих до 100 файлов (последовательность 3 rd sup> -gen) в каждом, в /home/USER/Desktop/dest
. Для этого я использую:
cp -r /media/drive/dir /home/USER/Desktop/dest
Когда это выполняется, cp
завершается без сообщений об ошибках, но не все подкаталоги есть, и подкаталоги также иногда отсутствуют. Эта же команда отлично работает при копировании файлов из других мест локальной системы, похоже, это происходит только для сетевого диска. Это явление также происходит, когда я использую команду copy/paste
из графического интерфейса. Я могу по отдельности скопировать файлы / каталоги, но это очень трудоемко и требует много времени.
Я прочитал многие другие темы здесь и не могу найти ни одной, которая была бы сопоставимой. Любая помощь приветствуется.
По всей вероятности причина состоит в том, что исходный каталог содержит символьные ссылки.
От https://www.gnu.org/software/coreutils/manual/html_node/cp-invocation.html#cp-invocation:
При копировании с символьной ссылки CP обычно переходит по ссылке только если не копирование рекурсивно или когда - ссылка (-l) используется. Это значение по умолчанию может быть переопределено с - архив (-a),-d, - разыменовывает (-L), - нет - разыменовывают (-P), и-H опции. Если больше чем одна из этих опций указана, последний тихо переопределяет другие.
Добавьте -L
- опция к Вашему cp
- команда:
cp -rL /media/drive/dir /home/USER/Desktop/dest
В надежде, что это выручит кого-то еще когда-нибудь:
Оказывается, что это была неисправность соединения между компьютером и сервером, и простым перезапуском системы и перемонтированием, что сервер работал для восстановления этого соединения и файлов, скопированных правильно с исходной командой.