linux下Samba服务访问S3数据

服务端运行环境为Centos,数据通过Minio提供S3服务,但有些客户需要传统的Posix的访问方式。对于这样的需求,对Linux端的访问通过S3fs实现,对Windows端的访问通过共享S3fs的目录来提供Samba服务。

s3fs安装
https://github.com/s3fs-fuse/s3fs-fuse/
安装:yum安装:

yum install s3fs-fuse

设置访问密码:

echo netzon:netzon123 >/etc/passwd-s3fs
chmod 600 /etc/passwd-s3fs

启动S3fs

s3fs mybuk /home/s3fs_data -o url=http://10.18.16.17:9001 -o use_path_request_style -o allow_other

也可以写入/etc/fstab

mybucket /home/s3fs_data fuse.s3fs _netdev,allow_other,use_path_request_style,url=https://url.to.s3/ 0 0

然后调用mount -a。这样,就把S3服务映射成了posix,目录为/mnt/s3fs_data。

接着安装Samba服务

yum install samba -y

添加samba访问账号

useradd lmx
passwd lmx

修改samba服务的配置文件,/etc/smaba/smb.conf,添加一个section

[netzon]
        comment = netzon share directory
        path = /home/s3fs_data
        public = yes
        writable = yes
        directory mask = 0775
        create mask = 0775
        valid users = root
        write list = root
        browserable = yes
        avaiable = yes

重启samba服务

service smb reload

设置smb访问密码

smbpasswd -a lmx

然后找一个windows,访问\\ip\netzon,输入完账号密码就可以访问了。如果客户端是mac,则按下cmd+k,输入smb://ip/netzon,然后输入账号密码即可访问。

你可能感兴趣的:(golang)