Я аспирант, и группа, в которой я работаю, поддерживает кластер Linux. Каждый узел кластера имеет свой собственный локальный диск, но эти локальные диски относительно малы и не имеют автоматического резервного копирования. Таким образом, группа владеет файловым сервером со многими ТБ дискового пространства. Я новичок в Linux, поэтому я не уверен, каковы характеристики файлового сервера с точки зрения скорости, сетевых возможностей и т. Д. Из опыта я знаю, что локальные диски значительно быстрее файлового сервера с точки зрения ввода-вывода , Около дюжины или около того людей используют файловый сервер.
Использование cp
для копирования файла размером ~ 20 ГБ с файлового сервера на один из локальных дисков в среднем занимает около 11,5 минут в реальном времени (согласно time
). Я знаю, что эта cp
операция не очень эффективна, потому что (1) time
говорит мне, что системное время для такой копии составляет всего ~ 45 секунд; и потому (2), когда я проверяю top
во время копирования, % CPU довольно низок (по осмотру, в среднем примерно 0-10% ).
Использование cp
для копирования одного и того же файла размером ~ 20 ГБ из одной папки на локальном диске в другую папку на том же локальном диске занимает меньше времени - около 9 минут в режиме реального времени (согласно системному времени ~ 51 секунда time
). Таким образом, очевидно, что файловый сервер несколько медленнее, чем локальный диск, как и ожидалось, но, возможно, не значительно медленнее. Я удивлен, что копирование с локального на одно локальное происходит не быстрее, чем за 9 минут.
Мне нужно скопировать ~ 200 больших файлов - каждый ~ 20 ГБ - с файлового сервера на один из локальных дисков. Итак, мой вопрос: есть ли более быстрая альтернатива cp
копированию больших файлов в Linux? (Или есть какие-нибудь флаги, cp
которые я мог бы использовать, которые бы ускорили копирование?) Даже если бы я мог как-то сэкономить минуту на этом времени копирования, это очень помогло бы.
Я уверен, что покупаю новые, более быстрые аппаратные диски, но у меня нет доступа к таким ресурсам. Я также не являюсь системным администратором - я всего лишь (начинающий) пользователь, поэтому у меня нет доступа к более подробной информации о загрузке дисков. Я знаю, что, хотя около дюжины людей используют файловый сервер ежедневно, я единственный, кто использует этот конкретный узел / локальный диск.
dd
и rsync
сравнить, какой из них работает быстрее в вашей среде
dd
, но я просто пытался rsync
. Реальное время составляло около 11,5 минут, а системное время - около 1,5 минут time
.
/dev/sda1
туда /dev/sdb1
будет быстрее, чем из одного местоположения /dev/sda1
в другое местоположение /dev/sda1
или в другой раздел, /dev/sda
потому что жесткий диск не должен будет выполнять дополнительные операции поиска между операциями чтения и записи (при условии, что традиционные жесткие диски имеют вращающиеся диски и движущиеся головки; SSD явно другой).