Linux系统挂载SMB文件系统

Linux系统挂载SMB文件系统

安装CIFS客户端

安装CIFS客户端
Ubuntu 通过apt-get软件包管理工具进行安装。
Debian sudo apt-get update sudo apt-get install cifs-utils
RHEL 通过yum包管理器进行安装。sudo yum install cifs-utils
CentOS 通过yum包管理器进行安装。sudo yum install cifs-utils

手动挂载文件系统

  1. 使用root用户或sudo enabled客户端管理员用户,登录云服务器ECS(Linux)。

  2. 执行以下命令,挂载文件系统。

    1
    sudo mount -t cifs //file-system-id.region.nas.aliyuncs.com/myshare /mnt -o vers=2.0,guest,uid=0,gid=0,dir_mode=0755,file_mode=0755,mfsymlinks,cache=strict,rsize=1048576,wsize=1048576

    挂载命令格式:sudo mount -t cifs //<挂载点地址>/myshare <挂载目录> -o <挂载选项>

    参数 说明
    文件系统类型 在Linux操作系统中挂载SMB文件系统,必须配置-t cifs参数。
    挂载点地址 添加文件系统挂载点时,自动生成的挂载点地址,请根据实际值替换。您可以在NAS控制台,单击目标文件系统,然后单击挂载使用,将鼠标放置在挂载点地址列的挂载点图标上获取挂载点地址。
    myshare SMB文件系统的共享目录名称,不支持变更。
    挂载目录 您要挂载的目标路径,例如:/mnt/sharepath。
    挂载选项 通过添加-o参数指定挂载必选选项:vers:支持2.0或3.0协议版本。guest:只支持基于ntlm认证协议的客户端挂载。rsize:用来设置读数据包的最大限制。一般需要设置成1048576(1 MB)。wsize:用来设置写数据包的最大限制,一般需要设置成1048576(1 MB)。通过添加-o参数指定挂载可选选项:uid:挂载成功后,文件所属的用户。如果未设置uid,则默认uid=0。gid:挂载成功后,文件所属的用户组。如果未设置gid,则默认gid=0。dir_mode:向用户授予指定目录的读取、写入和执行权限。必须以0开头,例如:0755、0644等。如果未设置dir_more,则默认dir_mode=0755。file_mode:向用户授予普通文件的读取、写入和执行权限。必须以0开头,例如:0755、0644等。如果未设置file_mode,则默认file_mode=0755。mfsymlinks:支持symbol link功能。cache:cache=strict:设置SMB文件系统使用客户端缓存。如果未设置cache,则默认cache=strict。cache=none:设置SMB文件系统不使用客户端缓存。atime
  3. 执行mount -l命令,查看挂载结果。

    如果回显包含如下类似信息,说明挂载成功。

    回显信息

    挂载成功后,您可以执行df -h命令,查看当前文件系统的容量信息。

  4. 挂载成功后,您可以在ECS(Linux)上访问NAS文件系统,执行读取或写入操作。

    您可以把NAS文件系统当作一个普通的目录来访问和使用,示例如下:

    访问NAS

自动挂载文件系统

为避免已挂载文件系统的云服务器ECS重启后,挂载信息丢失,您可以通过在Linux ECS实例中配置/etc/fstab文件,实现在云服务器ECS设置重启时SMB文件系统自动挂载。

说明 在配置自动挂载前,请先确认手动挂载成功,避免ECS启动失败。

  1. 打开/etc/fstab配置文件,添加自动挂载配置。

    1
    //<挂载点地址>/myshare /mnt cifs vers=3,guest,uid=0,gid=0,dir_mode=0755,file_mode=0755,mfsymlinks,cache=strict,rsize=1048576,wsize=1048576 0 0

    示例中主要参数说明,请参见SMB(Linux)挂载命令参数说明表。其余参数说明如下。

    参数 说明
    0(wsize值后第一项) 非零值表示文件系统应由dump备份。对于NAS文件系统而言,此值默认为0。
    0(wsize值后第二项) 该值表示fsck在启动时检查文件系统的顺序。对于NAS文件系统而言,此值默认为0,表示fsck不应在启动时运行。
  2. 执行reboot命令,重启云服务器ECS。

    说明 在重启云服务器ECS前,请确认手动挂载成功,避免ECS重启失败。另外,如果自动挂载配置成功,在ECS重启后的一分钟内,可以通过df -h命令查看到挂载的NAS文件系统。

经典使用场景

不同的使用场景,可配置不同的挂载选项,实现文件系统最优性能。经典的使用场景及挂载选项配置如下所示:

云服务器ECS(Linux)共享访问场景

多用户Home Directory场景

云服务器ECS(Linux) WebServer共享访问场景

云服务器ECS(Windows)和云服务器ECS(Linux)共享访问场景

高级应用

阿里云文件存储NAS SMB协议文件系统支持基于AD域系统的用户身份认证及文件系统级别的权限访问控制。以域用户身份连接并访问SMB协议文件系统,可以实现对SMB协议文件系统中的文件及目录级别的访问控制。

关于如何实现以AD域系统的用户身份认证及文件系统级别的权限访问控制,请参见将SMB文件系统挂载点接入AD域Linux客户端以AD域用户身份挂载并使用SMB文件系统

如果您在挂载过程中遇到问题,请参见通过云服务器Linux ECS访问SMB文件系统的问题排查