我在 Ubuntu 中使用 grive 与 Google 驱动器同步文件夹,但我想对 grive 同步设置带宽限制。
我使用此命令以 50 KB 的速度限制进行同步:
grive -p /home/purval -U 50 -D 50
但它不起作用。甚至没有显示任何错误消息。我的grive
版本是grive 版本 0.5.1-dev
答案1
默认情况下 grive 安装自github即使你通过了,上传和下载速度参数也不起作用-U 50 or -D 50
,grive将使用你系统的最大上传/下载带宽。
Grive 在其底层使用CURL
文件传输,curl 中有一个参数可以在传输时控制带宽,即(curl_off_t)
详细信息在这里。
描述
将curl_off_t 作为参数与maxspeed 一起传递。如果上传超过此速度(以每秒字节数计算),传输将暂停以保持速度小于或等于参数值。默认为无限速度。
有一个文件名为grive/libgrive/src/http/CurlAgent.cc在源代码中包含
CURLOPT_MAX_SEND_SPEED_LARGE 与 mMaxUpload
作为上传选项,mMaxUpload 是以 kbps 为单位的值,通过使用 grive 和 来 -U 50
设置
CURLOPT_MAX_RECV_SPEED_LARGE 与 mMaxDownload
作为下载选项,mMaxDownload 是以 kbps 为单位的值,通过使用 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 是 kbps。