1. OSS控制台不支持上传文件夹,是否有其它方式可以支持?
解答:OSS提供了ossutil工具,支持文件夹上传。
使用cp命令进行上传/下载/拷贝文件时:
使用-r选项来拷贝文件夹
详见官网说明:
https://help.aliyun.com/document_detail/50561.html
Github:
http://github.com/aliyun/ossutil
2. OSS的URL,怎么将失效时间设置得久一点?
解答:请使用ossutil工具。具体用法: ./ossutil sign --timeout
Usage of oss_util:
Options:
--timeout= time out of signurl, the unit is: s, default value is 60, the value range is: 0-9223372036854775807
详见ossutil工具帮助指引:./ossutil sign --help
3. 使用ossutil工具下载海量文件时中途报错,有什么办法可以避免下次又得重新从头开始下载吗?
解答:请使用--update选项,即:./ossutil cp --update
--update/-u
选项说明
如果指定了该选项,只有以下情况,ossuti才执行上传、下载、拷贝
目标文件(或object)不存在
源文件(或object)新于目标文件(或object)
当指定了该选项时,无论是否指定了--force选项,当目标文件存在时,ossutil都不会提示,直接采取上述策略。
详见云栖文章:
《【最佳实践】OSS开源工具ossutil-增量上传》
https://yq.aliyun.com/articles/601447
《【最佳实践】OSS开源工具ossutil-大文件断点续传》
https://yq.aliyun.com/articles/601787
4. 有方法可以把OSS存储挂载到Linux本地文件系统吗?
解答:OSS提供ossfs可以实现该功能。
ossfs能让您在Linux系统中把OSS bucket 挂载到本地文件系统中,
您能够像操作本地文件一样操作OSS对象,实现数据的共享。
详见官网说明:
https://help.aliyun.com/document_detail/32196.html
Github:
https://github.com/aliyun/ossfs
5. 使用ossfs将oss挂到k8s容器中,其中有部分文件是php,需要与php-fpm进程同一user,该如何做?
解答:ossfs工具支持挂载的文件夹属于某个user。
如果要使挂载的文件夹(/tmp/ossfs)属于某个user:
方法一: 如果要使挂载的文件夹(/tmp/ossfs)属于某个user,则需要以user的身份创建挂载文件夹和使用ossfs:
sudo -u user mkdir /tmp/ossfs
sudo -u user ossfs bucket-name /tmp/ossfs
方法二: 首先通过id命令获得指定用户的uid/gid信息。
例如获取www用户的uid/gid信息:id www;然后挂载时指定uid/gid参数:
ossfs your_bucket your_mountpoint -ourl=your_url -ouid=your_uid
-ogid=your_gid
注意:uid/gid都是数字。