概述
本文主要介绍ossfs如何通过www用户挂载Bucket到ECS实例。
详细描述
参考以下步骤,通过www用户挂载Bucket:
安装ossfs并创建
/etc/passwd-ossfs文件,详情请参见快速安装。执行以下命令,修改配置文件的权限。
chmod 640 passwd-ossfs执行以下命令,获取ossfs的安装路径。
which ossfs执行以下命令,获取www用户的UID和GID。
说明说明:本文以www用户为例进行介绍,如果没有该用户,使用
useradd命令创建即可。id www执行如下命令,修改配置文件的属主和属组(需要root权限)。
chown www:root /etc/passwd-ossfs依次执行以下命令,使用www用户创建挂载目录。
说明本文以test1目录为例进行介绍。
su - www mkdir test1执行以下命令,通过www用户挂载Bucket。
/usr/local/bin/ossfs $Bucket test1 -ourl=$URL -ouid=$UID -ogid=$GID -o passwd_file=$File说明$URL为Bucket的Endpoint。$File为passwd-ossfs文件路径,例如/etc/passwd-ossfs。$UID和$GID为第4步记录的UID和GID。
执行以下命令,确认www用户挂载Bucket成功。
ls -l test1如果需要卸载挂载目录,请参考以下步骤:
使用root用户执行以下命令,卸载挂载目录。
umount /test1非root用户执行以下命令,卸载挂载目录。
fusermount -u /test1
ossfs 挂载完成后,挂载点的 UID 和 GID 由挂载时指定的参数决定,挂载期间固定不可变更。对挂载点执行chown会返回Input/output error,这是 FUSE 文件系统的预期行为,不表示挂载异常。如需更换访问挂载点的用户身份,必须先卸载当前挂载,再以目标用户的 UID 和 GID 重新挂载。
从 root 用户切换为非 root 用户
依次执行以下步骤,将挂载点的属主从 root 用户切换为非 root 用户。
执行以下命令,获取目标用户的 UID 和 GID。
id <用户名>卸载当前挂载。非 root 用户执行以下命令:
fusermount -u test1root 用户执行以下命令:
umount test1执行以下命令,以目标用户的 UID 和 GID 重新挂载。
ossfs $Bucket test1 -ourl=$URL -ouid=$UID -ogid=$GID -o passwd_file=$File执行以下命令,验证挂载点的属主是否已变更为目标用户。
stat -c '%u:%g' test1
ossfs 2.0 不通过命令行-o uid、-o gid参数设置挂载点属主,而是在配置文件ossfs2.conf中通过-uid、-gid参数设置。ossfs 1.0 沿用本文所述的-o uid、-o gid命令行参数方式。
相关文档
适用于
对象存储OSS