在Linux云电脑挂载NAS文件系统

如果同一个办公网络下的Linux云电脑之间需要共享文件,您需要手动挂载NAS文件系统,挂载成功后,您可以在云电脑中把NAS文件系统当作一个普通的目录来访问和使用。本文以SMB协议的NAS文件系统为例介绍相关操作。

背景信息

无影云电脑支持在云电脑内挂载NAS文件系统,实现不同云电脑之间文件共享、日志存储和备份数据存储等。

在无影云电脑管理控制台创建的共享存储NAS,默认为通用型NAS文件系统,默认的文件协议为SMB。关于通用型NAS的详细信息,请参见通用型NAS

计费说明

当您使用通用型NAS文件系统时需要收取费用。NAS会根据存储规格、存储大小(每小时峰值)和时长收取一定的存储费用。关于通用型NAS的详细计费信息,请参见通用型NAS计费

操作步骤

在Linux云电脑上手动挂载NAS文件系统时,支持使用便捷用户身份和企业AD域用户身份挂载,下文以Linux Ubuntu操作系统为例,分别为您介绍具体操作,业务中请根据实际操作系统采用相应的命令。不同Linux操作系统版本的命令请参见Linux系统挂载SMB文件系统

以便捷用户身份挂载NAS文件系统

如果Linux云电脑所在的办公网络是便捷办公网络,且该便捷办公网络对应的NAS文件系统未开启SMB ACL功能,则支持通过便捷用户身份挂载该NAS文件系统,具体操作步骤如下。

说明

在Linux云电脑上以便捷用户身份挂载NAS文件系统时仅支持匿名挂载。

  1. 创建共享存储NAS。具体操作,请参见步骤一:创建共享存储NAS

  2. 获取挂载点域名。

    共享存储NAS页面,找到目标共享存储NAS,并在挂载点域名列查看并记录挂载点域名。

  3. 将NAS文件系统挂载到云电脑。

    1. 连接云电脑,并在云电脑上打开Terminal

    2. 依次执行以下命令,通过apt-get软件包管理工具安装CIFS客户端。

      sudo apt update
      sudo apt-get install cifs-utils
    3. 执行id命令,查看登录后的uid和gid值。

    4. 执行以下命令,将NAS文件系统挂载到云电脑。指定的目录。

      挂载命令的格式如下:

      sudo mount -t cifs //<挂载点域名>/myshare <挂载目录> -o <挂载选项>

      以下示例命令中挂载点域名以0bb254adc3-x****.cn-hangzhou.nas.aliyuncs.com为例,挂载目录以/mnt为例,uid和gid以上一步获取的为例,业务中,请根据实际情况替换为实际值。

      sudo mount -t cifs //0bb254adc3-x****.cn-hangzhou.nas.aliyuncs.com/myshare /mnt -o vers=2.1,guest,uid=1677****,gid=1677****,dir_mode=0755,file_mode=0755,mfsymlinks,cache=strict,rsize=1048576,wsize=1048576

      命令中重要字段说明如下表所示:

      字段

      说明

      挂载点域名

      创建共享存储NAS时,自动生成的挂载点域名,请根据实际值替换。

      myshare

      NAS(SMB协议)文件系统的共享目录名称,不支持变更。

      挂载目录

      待挂载的目标路径,例如:/mnt。

      挂载选项

      通过添加-o参数指定挂载必选选项:

      • vers:支持2.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|relatime:如果您的业务对文件的访问时间非极度敏感,请勿使用atime选项,默认采用relatime方式挂载。

      说明
      • 授予云服务器(Linux)管理员拥有对SMB文件系统的绝对控制权限。

      • 您可以使用mount | grep cifs命令查询自己的挂载点信息。

      • 如果您使用非官方支持的Linux操作系统版本,强烈建议使用内核在3.10.0-514以上的版本。如果Linux kernel版本小于等于3.7,必须在挂载选项中设置cache=strict参数。您可以执行uname -a命令检查当前内核版本。

  4. 执行mount -l命令,查看挂载结果。

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

    linux云电脑查看挂载是否成功..png
  5. (可选)挂载成功后,您可以执行df -h命令,查看当前文件系统的容量信息。

以企业AD域用户身份挂载NAS文件系统

Linux云电脑所在的办公网络为AD办公网络,您可以根据该AD办公网络对应的NAS文件系统是否开启SMB ACL,执行相应的操作。

以企业AD域用户身份挂载NAS文件系统(未开启SMB ACL)

  1. 创建共享存储NAS。具体操作,请参见步骤一:创建共享存储NAS

  2. 获取挂载点域名。

    共享存储NAS页面,找到目标共享存储NAS,并在挂载点域名列查看并记录挂载点域名。

  3. 将NAS文件系统挂载到云电脑。

    1. 连接云电脑,并在云电脑上打开Terminal

    2. 依次执行以下命令,通过apt-get软件包管理工具安装CIFS客户端。

      sudo apt update
      sudo apt-get install keyutils cifs-utils
    3. 执行id命令,查看登录后的uid和gid值。

    4. 执行以下命令,将NAS文件系统挂载到云电脑中指定的目录。

      挂载命令的格式如下:

      sudo mount -t cifs //<挂载点域名>/myshare <挂载目录> -o <挂载选项>

      以下示例命令中挂载点域名以0bb254adc3-x****.cn-beijing.nas.aliyuncs.com为例,挂载目录以/mnt为例,uid和gid以上一步获取的为例,业务中,请根据实际情况替换为实际值。

      sudo mount -t cifs //0bb254adc3-x****.cn-beijing.nas.aliyuncs.com/myshare /mnt -o vers=2.0,guest,uid=1677****,gid=1677****,dir_mode=0755,file_mode=0755,mfsymlinks,cache=strict,rsize=1048576,wsize=1048576
  4. 执行mount -l命令,查看挂载结果。

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

    linux云电脑查看挂载是否成功..png
  5. (可选)挂载成功后,您可以执行df -h命令,查看当前文件系统的容量信息。

以企业AD域用户身份挂载NAS文件系统(开启SMB ACL)

  1. 创建共享存储NAS。具体操作,请参见步骤一:创建共享存储NAS

  2. 获取挂载点域名。

    共享存储NAS页面,找到目标共享存储NAS,并在挂载点域名列查看并记录挂载点域名。

  3. 生成Keytab文件。具体操作,请参见步骤一:生成Keytab文件

  4. 开启SMB ACL并上传Keytab文件。

    1. 共享存储NAS页面,找到目标共享存储NAS,在操作列单击管理

      共享存储nas-管理-zh..png
    2. 文件系统列表页面的左侧导航栏,选择访问控制

    3. 在SMB ACL区域单击开启,并上传Keytab文件。上传Keytab文件的具体操作,请参见步骤二:上传Keytab文件

  5. 将NAS文件系统挂载到云电脑。

    1. 连接云电脑,并在云电脑上打开Terminal

    2. 依次执行以下命令,通过apt-get软件包管理工具安装CIFS客户端。

      sudo apt update
      sudo apt-get install keyutils cifs-utils
    3. 执行id命令,查看登录后的cruid、uid和gid值。

    4. 执行以下命令,将NAS文件系统挂载到云电脑中指定的目录。

      挂载命令的格式如下:

      sudo mount -t cifs //<挂载点域名>/myshare <挂载目录> -o <挂载选项>

      以下示例命令中挂载点域名以0bb254adc3-x****.cn-beijing.nas.aliyuncs.com为例,挂载目录以/mnt为例,cruid和uid以上一步获取的uid值为例,gid以上一步获取的gid值为例,业务中请根据实际情况替换为实际值。

      sudo mount -t cifs //0bb254adc3-x****.cn-beijing.nas.aliyuncs.com/myshare /mnt -o vers=3.0,sec=krb5,cruid=1677****,uid=1677****,gid=1677****
      重要

      如果SMB ACL选项的启用传输加密,说明开启了SMB协议的NAS文件系统传输加密功能,此时命令中的vers字段需要使用3.0版本,即挂载选项vers=3.0

  6. 执行mount -l命令,查看挂载结果。

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

    linux云电脑查看挂载是否成功..png
  7. (可选)挂载成功后,您可以执行df -h命令,查看当前文件系统的容量信息。

后续步骤

重要

为避免已挂载NAS文件系统的云电脑重启后,挂载信息丢失,您可以通过在Linux云电脑中配置/etc/fstab文件,实现在重启云电脑时,自动挂载NAS文件系统。

执行以下命令,配置云电脑开机时自动挂载。

业务中,需要将挂载点域名替换为实际值。

//<挂载点域名>/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
说明

本文挂载命令中相关字段说明请参见表格命令中重要字段说明,上述命令中0的含义请见下表。

参数

说明

0(wsize值后第一项)

非零值表示文件系统应由dump备份。对于NAS文件系统而言,此值默认为0。

0(wsize值后第二项)

该值表示fsck在启动时检查文件系统的顺序。对于NAS文件系统而言,此值默认为0,表示fsck不应在启动时运行。