User Tools

Site Tools


Sidebar


Tags Cloud
sftp_lftp

Копирование больших объемов данных в несколько потоков с помощью lftp

Примеры копирования при использовании авторизации по ssh-ключам.
Закрывающий слеш в пути к исходной директории обязателен.
Задание представляет из себя текстовый файл.

  • Выполнение задания
    lftp -f tasks.lftp

Примеры

  • Данные закачиваются с локального сервера на удаленный.
    open sftp://root:@192.168.111.83
    mirror -c -P10 -R --allow-chown /LOCAL_DIR/ /REMOTE_DIR
    exit
  • Данные скачиваются с удаленного сервера на локальный.
    open sftp://root:@192.168.111.83
    mirror -c -P10 --allow-chown /REMOTE_DIR/ /LOCAL_DIR
    exit

Копирование больших объемов данных с помощью rsync

rsync в один поток - ресурсоемкий и медленный процесс.
xargs позволит запустить несколько процессов копирования отдельных директорий, но это скажется на скорости работы дисков.
В целом, использовать для копирования lftp предпочтительнее.

  • Флаги, позволяющие ускорить процесс копирования:
    -W отключает просчет checksum
    --delay-updates выполнять синхронизацию ПОСЛЕ анализа, а не во время
    -e 'ssh -o "Compression no" -c arcfour' не использовать сжатие данных и минимизировать нагрузку на CPU
    --only-write-batch=file вместо синхронизации с удаленным сервером готовит бинарный апдейт для развертывания на удаленном сервере. Полезно при большом количестве мелких файлов.

Примеры

  • Полное копирование системы:
    rsync -aHAXv --progress --numeric-ids -e 'ssh -o "Compression no" -c arcfour' --exclude={/dev/*,/proc/*,/sys/*,/tmp/*,/run/*,/media/*,/lost+found} /* root@192.168.111.83:/
sftp_lftp.txt · Last modified: 2018/05/10 16:13 by kyxap