OS X - проблема копирования файлов - Ресурс занят

OS X - проблема копирования файлов - Ресурс занят

Обращаюсь ко всем экспертам по OS X.

Я скопировал два диска по 1 ТБ (бывшие Windows) на новый диск USB 3.0 объемом 2 ТБ с помощью Finder на Mac (OS X 10.9). Диск объемом 2 ТБ теперь заполнен примерно на 90%.

Теперь я хочу скопировать этот диск 2Tb на другой диск 2Tb с помощью Mac, однако он продолжает утверждать, что около 40% файлов заняты. Ни один из файлов на диске 2Tb никогда не открывался ни в одном приложении, кроме этой попытки скопировать файлы.

Я пробовал копировать 2Tb на 2Tb с помощью Finder, который, как только нашел 1 занятый файл, просто прекратил копирование. Не особо полезно. Я пробовал использовать вид значков, вид списка и вид столбцов.

Затем я переключился на Терминал, используя cp -RXvn, а затем просто -cp RXn. Оба смогли скопировать около 60% файлов.

Я пробовал отмонтировать оба диска, перезагрузить и переформатировать второй диск. Я пробовал все три, прежде чем снова попытаться, и каждый раз получал около 1,34 ТБ. Я пробовал несколько раз и заметил, что проблема не всегда в одних и тех же файлах, хотя трудно сказать, когда файлов тысячи.

Вот что я получаю:

cp -RXn "/Volumes/USBdrive 1/" "/Volumes/USBdrive 2"
cp: /Volumes/USBdrive 1/My photos/USA trip/image 1472.png: Resource busy
cp: /Volumes/USBdrive 1/My photos/USA trip/image 1483.png: Resource busy
cp: /Volumes/USBdrive 1/Our holiday/Rome/tour map 2014.pdf: Resource busy

Я новичок в OS X, поэтому не понимаю, как файл оказался в состоянии занятости, или что с этим делать. Мне не кажется разумным не копировать файл, даже если он в любом случае используется (Windows бы так сделал).

Может кто-нибудь подсказать, как обойти это и перенести все файлы с одного диска на другой? Нужно ли мне сначала найти способ, чтобы ресурс не считался занятым, и если да, то как?

решение1

ОБНОВЛЕНИЕ: Думаю, я понял, как это можно исправить.

Попробуйте это из терминала:

cd <drag and drop the volume you want to copy here>

Теперь сделайте:

lsof +D <drag and drop the volume you want to copy here> | grep <drag and drop the volume you want to copy here>

Эта команда покажет вам все открытые файлы на этом томе. Вы увидите имя приложения, которое удерживает файл. Допустим, ради аргумента, что это Finder.

Теперь введите (только убедитесь, что вы закрыли все свои приложения, чтобы быть уверенным):

killall Finder

Теперь запустите lsofкоманду снова, и вы больше не должны видеть эти файлы. Теперь вы сможете их скопировать.

Надеюсь, это сработает.


Предыдущий пост

Введите .Terminalenv

Посмотрите, где написано, USER=и скопируйте это имя в точности.

Теперь мы изменим владельца всех файлов на диске, просто убедитесь, что вы смонтированы на диске, который хотите скопировать, а не на системном диске. Смонтируйте корневой каталог диска, который хотите скопировать, и введите:

sudo chown -fhRL [owner]

Для того, где написано [owner], введите имя пользователя сверху. Вам будет предложено ввести пароль, потому что мы добавили, sudoчто такое Super User.

Если он выходит со статусом 0, то ошибок не было. Если вы получаете код выхода > 0, то вы можете убрать f и вы увидите все диагностические сообщения.

Далее мы изменим права доступа к файлам. Введите:

sudo chmod -fhRL u=rwx

u - пользователь r - чтение w - запись x - выполнение Опять же, если произошла ошибка, статус выхода будет больше, чем 0 Далее мы изменим флаги:

sudo chflags -fhRL nouchg 
sudo chflags -fhRL noschg

Теперь вернитесь к команде копирования и для верности добавьте sudoперед ней , и, надеюсь, это решит проблему.

решение2

Я дал баллы тем, кому я могу их дать, потому что информация была хорошей. Коренной причиной моей проблемы был неисправный HDD.

После покупки нового диска на 2 ТБ мне удалось перенести данные с помощью команд, приведенных в ответах здесь.

Еще раз спасибо тем, кто оказал помощь.

Связанный контент