Я использую grive для синхронизации папки с диском Google в Ubuntu, но я хочу установить ограничение пропускной способности для grive sync.
Я использую эту команду для синхронизации с ограничением скорости 50 кбайт:
grive -p /home/purval -U 50 -D 50
, но она не работает. Даже не отображается никаких сообщений об ошибках. Моя версия grive
- версия grive 0.5.1-dev
По умолчанию установка grive из github , параметры скорости загрузки и выгрузки не будут работать, даже если вы пройдете -U 50 or -D 50
, grive будет использовать максимальную пропускную способность вашей системы для загрузки/выгрузки.
Grive использует CURL
для передачи файлов, и в curl есть параметр, который может управлять пропускной способностью во время передачи, т.е.(curl_off_t)
подробности здесь .
DESCRIPTION
Pass a curl_off_t as parameter with the maxspeed. If an upload exceeds this speed (counted in bytes per second) the transfer will pause to keep the speed less than or equal to the parameter value. Defaults to unlimited speed.
В исходном коде есть файл с именем grive/libgrive/src/http/CurlAgent.cc , который содержит
CURLOPT_MAX_SEND_SPEED_LARGE with mMaxUpload
в качестве опции для загрузки, mMaxUpload — это значение в кбит/с, которое устанавливается с помощью grive с -U 50
и
CURLOPT_MAX_RECV_SPEED_LARGE with mMaxDownload
как вариант для загрузки, mMaxDownload — это значение в кбит/с, которое устанавливается с помощью grive с-D 50
для управления пропускной способностью просто добавьте (curl_off_t)
, например
static_cast<curl_off_t>( mMaxUpload )
вместо только mMaxUpload
и static_cast<curl_off_t>( mMaxDownload )
вместо только mMaxDownload
в файле выше и сохраните его.
После сохранения файла скомпилируйте исходный код и запустите его, как описано в репозитории, и после успешной компиляции теперь вы можете установить пропускную способность для загрузки и выгрузки с помощью -U 50 / -D 50
, где 50 – кбит/с.