-
Notifications
You must be signed in to change notification settings - Fork 151
FAQ
Haoran Yang edited this page Dec 31, 2015
·
32 revisions
- Q: ossfs适合什么样的程序?
- ossfs能把oss bucket挂载到本地,如果您使用的软件没有支持OSS,但您又想让数据能自动同步到OSS,那么ossfs是很好的选择。
- Q: ossfs有什么局限性?
- 由于数据需要经过网络同步到云端,ossfs在性能和功能上可能与本地文件系统有差距。如果您想让数据库等对io要求很高的应用跑在ossfs挂载的盘上,请慎重考虑。和本地文件系统具体差异:
- 随机或者追加写文件会导致整个文件的重写。
- 元数据操作,例如list directory,性能较差,因为需要远程访问OSS服务器。
- 文件/文件夹的rename操作不是原子的。
- 多个客户端挂载同一个oss bucket时,依赖用户自行协调各个客户端的行为。例如避免多个客户端写同一个文件等等。
- 不支持hard link。
- Q: ossfs一定要阿里云的机器才能用么?
- ossfs不限制一定要阿里云的内网才可以使用,外网机器依然可以使用。
- Q: ossfs能不能同时挂载多个OSS bucket
- 可以的,在passwd-ossfs文件中写入多个OSS配置信息即可。支持不同帐号的OSS。
- Q: 为什么我在mount时遇到 ossfs: unable to access MOUNTPOINT /tmp/ossfs: Transport endpoint is not connected这样的错误?
- 请先umount对应的目录。
- 请检查您在使用ossfs挂载时,填入的url参数是否正确,是否和bucket/access key id/access key secret匹配。
- Q: ossfs提示ossfs: unable to access MOUNTPOINT /tmp/odat: No such file or directory
- 这是您未创建该目录导致的,在挂载前需要创建对应目录
- Q: 我把bucket挂载到本地后,ls目录,却收到operation not permitted错误,这是为什么?
- 请检查您的bucket中,是否包含目录名含有不可见字符的OSS object。文件系统对文件/目录名有更严格的限制,因此会收到上述错误。使用其他工具对这些object重命名后,ls就能正确显示目录内容了。
- Q: ossfs挂载时如何设置权限?
- 如果要允许其他用户访问挂载文件夹,可以在运行ossfs的时候指定
allow_other
参数:ossfs your_bucket your_mount_point -ourl=your_endpoint -o allow_other
- 如果要使挂载的文件夹(/tmp/ossfs)属于某个user,则需要以user的身份创建挂载文件夹和使用ossfs:
sudo su user mkdir /tmp/ossfs
sudo su user ./ossfs bucket-name /tmp/ossfs
- Q: 如何开机自动挂载ossfs?
- 首先请参考使用说明,把bucket name,access key id/secret等信息写入/etc/passwd-ossfs,并将该文件权限修改为640。
echo your_bucket_name:your_access_key_id:your_access_key_secret > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs
- 然后在/etc/fstab中加入下面的命令
ossfs#your_bucket_name your_mount_point fuse _netdev,url=your_url,allow_other 0 0
- 其中上述命令中的your_xxx信息需要根据您的bucket name等信息填入。
- 保存/etc/fstab文件。执行
mount -a
命令,如果没有报错,则说明设置正常。以后开机后,ossfs会自动加载您设置的bucket。