qrsbox(已废弃)
qrsbox
qrsbox 是七牛云存储提供的同步上传客户端工具,支持 Linux、Mac OS X、Windows 等操作系统。使用 qrsbox,可将用户本地某个目录的所有文件同步上传到七牛云存储中,同时监控目录变化,将目录中新增的文件也上传至七牛云存储。
配合操作系统已有的强大文件管理功能(分级存放、按指定项目排序、查找匹配指定条件的文件等),即可轻松优雅地完成繁复的文件管理事务。
注意:qrsbox 不会同步文件的删除操作。也就是说,如果受监控的目录中有文件被删除,已上传至七牛云存储的文件副本仍旧保留。如果用户确实需要删除该文件,可以到七牛开发者平台中删除。这一设计的目的是为了防止误删文件造成数据丢失。同时还可以收获另一个好处,就是同步上传完一个文件后,本地可以马上删除该文件以释放磁盘空间。
注意:
- qrsbox 的 Windows版本适用于华东,华北,华南,北美机房。
- qrsbox 的 Mac 和 Linux 版本仅适用于华东空间,其他地区的空间可以使用qshell。
功能特性
- 支持配置文件
- 支持大文件上传
- 支持增量部分同步更新
- 支持在后台运行监控
下载
图形化工具:
- Windows:qrsbox windows_386
命令行工具:
Windows版视频教程
使用方法
qrsbox 包含 Windows GUI 和命令行工具两部分。Windows GUI 可在 Windows 中使用,由于拥有 GUI 界面,使用起来会更加方便。命令行工具适合 Linux/OS X 等类 Unix 操作系统使用。当然,命令行工具也有 Windows 版,可在 Windows 的命令行中使用。
Windows图形工具
首先,下载 qrsbox 的 Windows GUI,并解压。
然后,在资源管理器中,进入解压后的文件,双击 qrsbox.exe,弹出如下图所求的界面:
AccessKey 和 SecretKey 获取方法:
同步源目录
- 这个目录中的所有数据会被同步到指定的 存储空间(bucket) 上。目录为本地目录,需要填写绝对路径。
- 注意:Windows 平台上路径的表示格式为:盘符:/目录,比如 E 盘下的目录 data 表示为:
e:/data
。
空间名(Bucket)
- 对应对象存储中的 存储空间(Bucket),设置后放到 同步源目录 中的资源会上传到这个存储空间中。
完成这些设置后,点击 确认,qrsbox 便会开始进行初始化。初始化完成后,就开始文件的同步。
用户可以在 qrsbox 的界面上看到同步的进程,大致如下图所示:
随着文件同步的进行,用户可以在七牛开控制台的 内容管理 中看到已上传的文件。
qrsbox 启动后会常驻内存,在 Windows 的任务栏中显示托盘:
如果用户需要修改同步源目录、AccessKey/SecretKey、或其他参数,可以右键单击 qrsbox 的托盘,选择 配置 菜单项,打开配置界面即可重新配置。
命令行工具
首先,下载 qrsbox 命令行工具。
然后,执行以下命令进行初始化:
./qrsboxcli init <AccessKey> <SecretKey> <SyncDir> <Bucket> [<KeyPrefix>]
其中,AccessKey 和 SecretKey 需要在七牛开发者平台上申请。步骤如下:
- 开通七牛开发者帐号
- 登录七牛开发者平台,查看 Access Key 和 Secret Key
参数名称 | 说明 |
---|---|
SyncDir | 本地的同步目录,该目录下的文件会随时同步上传至七牛云存储 |
Bucket | 保存同步文件的空间名 |
KeyPrefix | 文件前缀,可选。如果设置了该参数,那么上传的文件名前都会加上前缀。这个前缀主要用于在空间中区分不同上传来源的文件 |
最后,用户可以使用以下命令开始文件同步:
./qrsboxcli sync &
这里使用了 & 符号,让同步客户端进程运行在后台。如果退出终端后程序中断,请使用以下命令代替:
nohup ./qrsboxcli sync >/dev/null 2>&1 &
用户可以通过以下命令查看同步过程:
./qrsboxcli log
如果需要停止后台运行的 qrsboxcli,可以使用如下命令:
./qrsboxcli stop
如果希望改变同步目录、bucket 等运行参数,需要先用 stop 命令停止 qrsboxcli 的后台程序,重新用新的参数运行初始化命令,然后再次启动同步程序,qrsboxcli 会立刻按新的配置将新目录的文件同步至七牛云存储。
命令使用说明
执行如下命令可以获得各个子命令的使用说明:
./qrsboxcli
Usage:
qrsboxcli init <AccessKey> <SecretKey> <SyncDir> <Bucket> - Init qrsbox conf
qrsboxcli sync & - Watch <SyncDir> and sync files
qrsboxcli log - View sync log
qrsboxcli stop - Kill qrsboxcli sync process
BuildVersion:
qrsboxcli v2.5.20131013
配置文件
命令行工具的配置文件通常保存在用户主目录的 .qrsbox 下,执行 init 命令时会将具体目录路径输出到屏幕上。具体内容如下 (JSON格式):
{
"tasks": [
{
"name": "default",
"src": "<SyncDir>",
"dest": "qiniu:access_key=<AccessKey>&secret_key=<SecretKey>&bucket=<Bucket>&key_prefix=<KeyPrefix>",
"deletable": 0,
"ignore_dir_structure": 0
}
],
"debug_level": 0
}
参数名称 | 说明 |
---|---|
tasks | 指定监控任务 |
src | 指定受监控的文件目录 |
dest | 指定上传目标参数,如空间名 Bucket 和文件前缀 KeyPrefix,多个参数须以 & 符号分隔 |
AccessKey | 指定 AccessKey 值 |
SecretKey | 指定 SecretKey 值 |
debug_level | 指定日志信息输出等级,默认值为 0,即输出 Debug 信息 |
ignore 文件与规则
qrsbox 和 qrsboxcli 支持使用 ignore 文件来忽略某些不需要上传的文件,详见ignore 规则。
故障排除
Linux 环境中 No space left on device 问题现象为日志中出现如下错误:
2014/02/21 10:24:50 [ERROR][github.com/qiniu/fsw] utils.go:22: Watcher failed: no space left on device
遇到此问题,请先执行如下两行命令检查内核参数和监视文件数量:
cat /proc/sys/fs/inotify/max_user_watches
find <受监视文件夹路径> | wc -l
如果 cat 输出值小于 wc 输出值,则执行如下命令 (设定值:wc 输出值 X 2):
echo 设定值 > /proc/sys/fs/inotify/max_user_watches