最近公司服务用户激增,常规文件服务器不能满足需求,严重影响性能,决定将静态文件迁移到阿里云OSS,用来解决性能问题,提高用户体验。毕竟之前文件服务器有很多历史文件,需要同步到OSS上,但是研究了很多,大佬使用Python脚本,感觉体验很是一般,后来发现阿里官网提供的ossutil体验还是很不错
官网有很详细的教程
1、切换到安装目录
cd /data/app //1、运行以下命令下载ossutil。 wget http://gosspublic.alicdn.com/ossutil/1.7.6/ossutil64 //2、运行以下命令修改文件执行权限。 chmod 755 ossutil64
2、配置
通过交互式命令生成配置文件:
./ossutil64 config
请输入配置文件路径: # 直接回车跳过,使用默认配置文件即可:/home/deploy/.ossutilconfig (deploy是我当前的登录用户),如果你设置为其它路径,在使用命令时需使用--config-file参数指定路径 #下述配置,回车将跳过相关配置项的设置,配置项的具体含义,请使用"help config"命令查看。 请输入endpoint:http://oss-cn-shenzhen.aliyuncs.com 请输入accessKeyID:yourAccessKeyID 请输入accessKeySecret:yourAccessKeySecret 请输入stsToken: # 非必要参数,可以直接回车跳过
如果上述过程配置有误,可以修改.ossutilconfig
文件
vi /data/app/.ossutilconfig
3、使用方式
参数说明: ./ossutil64 cp <目标文件(文件夹)> <oss路径> [-u|-r|....等可选参数] cp: 贝命令,将本地文件拷贝到oss -u: cp的可选参数,表示对于相同文件名的文件,如果oss上的modifyTime早于本地的modifyTime则执行覆盖操作 -r: cp的可选参数,表示可以上传文件夹(包含文件夹中的所有文件以及子文件夹遍历上传) --exclude: 过了掉某些文件,支持通配符 <oss路径>组成: oss://<bucket名称>/[你在bucket中建立的目录] 目录可以没有,没有的话直接拷贝到bucket根目录
创建Bucket
./ossutil64 mb oss://bucket
上传文件
./ossutil64 cp local_file oss://bucket
下载文件
./ossutil64 cp cloud_url local_file
上传多个使用
./ossutil64 cp /home/resource-files/ oss://your-bucket-name/your-dir --exclude "*.html" --exclude "*.htm" -ur
关注我的微信公众号