Вопрос или проблема
Я пытаюсь синхронизировать внешний жесткий диск с тем, на котором находится мой фотоархив.
Я решил начать с основ, поэтому выполнил команду:
rsync -aHm --delete /Volumes/archivo_1a/ /Volumes/archivo_1c/
При первом запуске все работало нормально. При последующих запусках я получаю следующее сообщение:
building file list ... rsync: opendir "/Volumes/archivo_1a/.DocumentRevisions-V100" failed: Permission denied (13)
rsync: opendir "/Volumes/archivo_1a/.TemporaryItems" failed: Permission denied (13)
rsync: opendir "/Volumes/archivo_1a/.Trashes" failed: Permission denied (13)
done
IO error encountered -- skipping file deletion
и не удается удалить файлы, которые были удалены с диска-источника.
Диск-источник является разделенным диском; остальные два раздела я использую для резервных копий time machine. Может ли это быть проблемой? Или что-то еще может происходить.
Вы можете использовать sudo, но лучше использовать –exclude=”.TemporaryItems” –exclude=”.Trashes”, чтобы избежать конфликта с операционной системой за управление ее системными папками.
Эти файлы, которые не удалось создать резервную копию, являются системными и файлами rsync:
Их можно безопасно игнорировать. –exclude
.DocumentRevisions-V100
.TemporaryItems
.Trashes
Как указано: @Apple StackExchange
Ответ или решение
При выполнении синхронизации двух внешних жестких дисков с помощью команды rsync
, вы столкнулись с проблемами доступа, которые связаны с системными папками, такими как .DocumentRevisions-V100
, .TemporaryItems
и .Trashes
. Эти сообщения об ошибках свидетельствуют о том, что у вас нет необходимых прав для доступа к этим директориям.
Для начала, важно отметить, что использование команды sudo
может дать вам необходимые права, однако не рекомендуется использовать rsync
с правами суперпользователя для системных папок, так как это может привести к непредвиденным последствиям.
Вот несколько рекомендаций для решения вашей проблемы:
-
Исключение системных папок: Вместо использования
sudo
, вы можете безопасно исключить эти папки из синхронизации, добавив флаг--exclude
в вашу командуrsync
. Это позволит избежать ошибок, связанных с отсутствием доступа к данным директориям. Вам следует изменить вашу команду следующим образом:rsync -aHm --delete --exclude=".DocumentRevisions-V100" --exclude=".TemporaryItems" --exclude=".Trashes" /Volumes/archivo_1a/ /Volumes/archivo_1c/
-
Проверка разрешений: Убедитесь, что у вас есть необходимые права доступа к исходным данным. Например, вы можете проверить права с помощью команды
ls -l /Volumes/archivo_1a/
и убедиться, что ваша учетная запись имеет доступ к нужным файлам и папкам. -
Перемещение данных: В случае, если вышеуказанные папки вам не нужны для синхронизации, возможно, стоит рассмотреть их перемещение либо удаление. Вы можете это сделать, но будьте осторожны, чтобы не удалить ценные данные.
-
Проверка целостности источника: Убедитесь, что ваш источник (жесткий диск) в порядке. Иногда проблемы с диском могут вызывать сбои в работе команд.
-
Использование дополнительных опций: Если вы хотите получить более детальные сообщения об ошибках для диагностики, добавьте опцию
-v
для получения расширенной информации о процессе:rsync -avHm --delete --exclude=".DocumentRevisions-V100" --exclude=".TemporaryItems" --exclude=".Trashes" /Volumes/archivo_1a/ /Volumes/archivo_1c/
Следуя этим рекомендациям, вы сможете успешно синхронизировать свои жесткие диски, избегая проблем с правами доступа, и сохраните работоспособность системы. Если возникнут дополнительные вопросы или возникают другие ошибки, непременно обратитесь за дальнейшей помощью.