使用场景
您可以在已创建的桶中新建一个文件夹,从而更方便地对存储在OBS中的数据进行分类管理。
由于OBS是一种对象存储服务,并没有文件系统中的文件和文件夹概念。为了使用户更方便进行管理数据,OBS提供了一种方式模拟文件夹。实际上在OBS内部是通过在对象的名称中增加“/”,将该对象在OBS管理控制台或者OBS Browser+上模拟成一个文件夹的形式展现。通过API等方式列举对象,获取到的对象名就是以“/”分隔的,最后一个“/”后的内容就是对象名。如果最后一个“/”后没有内容,则表示一个文件夹路径。文件夹的层级结构深度不会影响访问对象的性能。
使用方式
OBS支持通过控制台、API、SDK、OBS Browser+、obsutil方式新建文件夹。
使用OBS控制台
- 在OBS管理控制台左侧导航栏选择“桶列表”。
- 在桶列表中,单击待操作的桶,进入“对象”页面。
- 单击“新建文件夹”,或者单击进入目标文件夹后,再单击“新建文件夹”。
- 在“文件夹名称”中输入新文件夹名称。
- 支持创建单个文件夹和多层级的文件夹。
- 单个文件夹名称不能包含以下字符 : \:*?"<>|。
- 文件夹名称不能以英文句号(.)或斜杠(/)开头或结尾。
- 文件夹的绝对路径总长度不能超过1023字符。
- 任何单个斜杠(/)表示分隔并创建多层级的文件夹。
- 不能包含两个以上相邻的斜杠(/)。
- 单击“确定”。
使用API
通过API创建文件夹,本质上来说是创建了一个大小为0且对象名以“/”结尾的对象。请参见使用API上传一个大小为0,名称以“/”结尾的对象。
使用SDK
通过SDK创建文件夹,本质上来说是创建了一个大小为0且对象名以“/”结尾的对象。请参见使用SDK上传一个大小为0,名称以“/”结尾的对象。
使用图形化工具OBS Browser+
- 登录OBS Browser+。
- 单击目标桶名称进入对象管理界面,单击“新建文件夹”。
- 在对话框中输入文件夹的名称后,单击“确定”,如图1所示。
图1 新建文件夹
- 文件夹名称不能包含以下字符 : \:*?'<>|。
- 文件夹名称不能以英文句号(.)或斜杠(/)开头或结尾。
- 文件夹名称长度不能超过1023字节。(如果有上级目录,加上所有上级目录名长度(目录自动增加/),文件夹名总长度最大为1023字节)。例如:文件夹folder01的上级目录是folder02,文件夹名长度是按照folder02/folder01/的字节数计算的。
- 单个斜杠(/)表示分隔并创建多层级的文件夹。
如果创建文件夹时弹出拒绝访问的错误提示,则有可能是如下几种情况导致的:
- 通过桶的ACL设置功能,限制了该桶的访问权限(如:该用户无桶的写入权限)。
- 通过桶的桶策略功能,限制了该桶的访问权限(如:当前时间段不允许对桶进行写入、该用户无桶的写入权限等)。
请检查桶的ACL设置和桶策略配置,排查错误。
- 单击消息提示框中的“确定”。
使用命令行工具obsutil
命令结构:
- Windows操作系统
- macOS/Linux操作系统
运行示例:
- 以Windows操作系统为例,运行obsutil mkdir obs://bucket-test/folder1/folder2,在桶内创建文件夹。
obsutil mkdir obs://bucket-test/folder1/folder2
The bucket [bucket-test] does not support POSIX, create folder(s) step by step
Create folder [obs://bucket-test/folder1/] successfully, request id [0000016979E1D23C860BB3D8E4577C5E]
Create folder [obs://bucket-test/folder1/folder2] successfully, request id [0000016979E1D2B2860BB5181229C72C]
参数说明:
参数 |
约束 |
描述 |
bucket |
在指定的桶内创建文件夹时必选 |
桶名。 |
folder |
在指定的桶内创建文件夹时必选 |
桶内的文件夹路径,支持多级文件夹,以“/”分隔。 |
folder_url |
在本地文件系统路径中创建文件夹时必选 |
本地文件系统中的文件夹路径,支持绝对路径和相对路径。 |
config |
附加参数,可选 |
运行当前命令时的自定义配置文件,可支持的配置参数请参考配置参数说明。 |
e |
附加参数,可选 |
指定终端节点。 |
i |
附加参数,可选 |
指定用户的AK。 |
k |
附加参数,可选 |
指定用户的SK。 |
t |
附加参数,可选 |
指定用户的securitytoken。 |
后续操作
您可以单击文件夹后面操作列的“更多 > 复制路径”,复制文件夹的路径。您可以将获取到路径共享给其他用户,其他用户可以找到存储对象的桶后,在搜索对象框中输入该路径值即可获取到对象。