Скорость копирования файлов на USB-диск

Может кто-нибудь объяснить это:

Я хочу скопировать некоторые большие файлы с моего macbook на локальный USB-диск

Я могу сделать это двумя способами:

1) cd в каталог на моем macbook, затем скопируйте, например:

 $ cd ~/Downloads
 $ cp file /Volume/usb/...

или

2) cd в целевой каталог на моем USB-диске и     затем скопируйте из каталога macbook, например:

  $ cd /Volume/usb
  $ cp ~/Downloads/file .

Я случайно обнаружил, что метод 2 примерно в 4 раза быстрее, чем метод 1) - любая идея, почему это так. Всегда ли это или просто особенность OS-X. Мне кажется очень странным. Я повторил эксперимент несколько раз - и он намного быстрее подключается к USB и копирует его, а не наоборот.

OS = El Capitan - локальный диск является SSD - удаленный диск является USB-магнитный диск.

Ответы

Ответ 1

Я думаю, что вы можете попасть в дисковый кеш, тогда как каждый доступ к файлу после первого значительно ускоряет копирование, поскольку его не нужно читать (полностью) с диска снова.

Не могли бы вы попробовать:

a) либо очистка кеша диска (не знаю, как это сделать на Mac, я не использую его)

b) перезагрузитесь и попробуйте свой тест наоборот, то есть сначала попробуйте скопировать сначала более быстрый, затем другой.

Также, повторяйте несколько раз, если вы делаете 1) и 2) несколько раз, все ли пробежки в одной категории всегда имеют одинаковую скорость?

Ответ 2

Я бы поспорил, потому что в более позднем случае, когда каталог открыт (имея его как текущий рабочий каталог процесса копирования), cp и система могут избежать проверки доступности (смонтированной) директории на каждом блоке написать. Если он исходит из самого cp, вы можете проверить его с помощью strace. Если это произойдет из ядра, вы можете взглянуть на источники.