文档首页/ 弹性文件服务 SFS/ 快速入门/ 挂载文件系统/ 挂载SFS Turbo文件系统到Windows云服务器
更新时间:2025-07-21 GMT+08:00
分享

挂载SFS Turbo文件系统到Windows云服务器

当创建文件系统后,您需要使用云服务器来挂载该文件系统,以实现多个云服务器共享使用文件系统的目的,本文将介绍如何挂载文件系统到ECS上。

本章节以Windows 2019版本操作系统为例进行SMB协议的SFS Turbo文件系统的挂载。

提交工单申请SMB协议,才使用该功能。

裸金属服务器、容器(CCE&CCI)操作与云服务器一致。

普通挂载请参见windows系统挂载SMB协议文件系统

以Active Directory 域(下文简称:AD域)用户身份挂载请参见如下步骤:

步骤一:将SMB文件系统挂载点接入AD域

步骤二:Windows客户端以AD域用户身份挂载并使用SMB文件系统

步骤三:管理SMB文件系统ACL

约束与限制

约束项

说明

文件系统功能

SMB协议文件系统不支持OBS联动、NAS联动功能。

同一文件系统不能同时支持NFS协议和SMB协议。

SMB与NFS类型文件系统不支持相互使用备份进行恢复,只支持恢复出相同类型的文件系统。

SMB协议文件系统不支持多VPC功能。

SMB协议功能

  • 不支持文件扩展属性(Extended attributes)。
  • 不支持稀疏文件(Sparse Files)、文件压缩、网卡状态查询、重解析点(Reparse Points)等IOCTL或FSCTL操作。
  • 不支持交换数据流(Alternate Data Streams)。
  • 不支持LDAP身份认证功能。
  • 不支持SMB文件传输协议的Direct、SMB Multichannel、SMB Directory Leasing功能。
  • 不支持Change notify。
  • 不支持软、硬链接。
  • 不支持锁(OpLock/OpenLock/BRL/Lease)功能和Persistent File Handle功能。

SMB协议版本

支持SMB 2.0、SMB 2.1、SMB 3.0版本。

SMB客户端

在所有挂载文件系统的计算节点上和所有共享访问文件系统的用户中,任何一个特定文件或目录最多可以同时被打开10000次,即10000个活跃文件句柄。

windows系统挂载SMB协议文件系统

  1. 准备环境。以下操作步骤,请确保在挂载每台Windows服务器时执行一次即可,不需要在每次挂载时都执行一次。

    1. 开启Workstation服务。正常情况下,Workstation服务默认为启动状态。
      1. 选择“所有程序 > 附件 > 运行”或使用快捷键Win+R,输入services.msc进入本地服务。
      2. 在服务中找到Workstation,确认状态为正在运行,启动类型为自动。
      图1 “服务(本地) > Workstation”确认界面
    2. 开启TCP/IP NetBIOS Helper服务。正常情况下,TCP/IP NetBIOS Helper服务默认为启动状态。
      1. 打开网络和共享中心,单击主机所连网络。
      2. 单击“属性”,双击“Internet 协议版本 4(TCP/IPv4)”进入属性框,单击“高级”。
      3. 在高级TCP IP设置对话框中,选择“WINS > 启用TCP/IP上的NetBIOS(N)”,单击“确定”。
        图2 启用TCP/IP上的NetBIOS(N)
      4. 选择“所有程序 > 附件 > 运行”或使用快捷键Win+R,输入“services.msc”进入本地服务。
      5. 在服务中找到TCP/IP NetBIOS Helper,确认状态为正在运行,启动类型为自动。
        图3 “服务(本地) > TCP/IP NetBIOS Helper”确认界面

  2. 挂载NAS SMB协议文件系统。

    1. 打开CMD命令行窗口,执行以下命令挂载SMB文件系统。
      #guest认证
      net use X: \\huawei.com\share
      #匿名认证
      net use X: \\huawei.com\share "" /user: 
      #AD域认证
      net use X: \\huawei.com\share  PASSWORD /user: example.com\USERNAME
      表1 参数说明

      参数名称

      说明

      X

      当前Windows系统上要挂载的目标盘符,如果有冲突,或者挂载了多个NAS文件系统,可选择其他字母。

      huawei.com

      创建SMB协议文件系统时系统自动生成的挂载点地址,请根据实际值替换。

      share

      SMB的共享名称,不允许变更。

      example.com

      AD域服务器域名。

      USERNAME

      AD域服务器域设置的用户名。

      PASSWORD

      AD域服务器域设置的用户密码。

      guest认证和匿名认证仅在非加域状态下使用,在文件系统加域之后,应卸载当前连接,使用AD域用户认证。在退域之后,卸载连接,等待30s左右再挂载,建议使用匿名认证方式。

    2. 确认文件系统挂载成功。
      net use

      如果回显包含如图4所示类似信息,说明挂载成功。挂载成功后,您可以在ECS上访问NAS SMB协议文件系统,执行读取或写入操作。

      图4 挂载命令
    3. 卸载命令。
      #卸载指定盘符
      net use X: /del
      #卸载所有连接
      net use * /del
      图5 卸载命令

将SMB文件系统挂载点接入AD域

  1. 搭建AD域服务器。需要一台windows机器,与SMB文件系统在同一个VPC,以Windows Server 2019 标准版为例。

    1. 登录Windows客户端。
    2. 在桌面左下角的搜索栏查询“服务器管理器应用”,单击进入服务器管理器。
    3. 单击“仪表板 > 添加角色和功能”选项。
      图6 添加角色和功能
    4. 进入“添加角色和功能”页面,单击“基于角色或基于功能的安装”,单击“下一页”,再单击“服务器选择 > 从服务池中选择服务器”,单击“下一页”。
      图7 选择“基于角色或基于功能的安装”
      图8 选择“从服务池中选择服务器”
    5. 勾选“Active Directory 域服务”,单击“下一页”,再单击“安装”。
      图9 勾选“Active Directory 域服务”
      图10 安装界面
    6. 完成安装后,在服务器管理器界面的右上角,单击任务图标,单击“将此服务器提升为域控制器”。
      图11 “服务器管理器 > 将此服务器提升为域控制器”界面
    7. 进入到Active Directory 域服务配置向导界面,选中“部署配置 > 添加新林”,并在根域名栏填入域名信息。
      图12 添加新林
    8. 设置“域控制器选项 > DNS 选项> 键入目录服务还原模式(DSRM)密码”,然后默认选择“下一页”,直到路径选项卡,可自行选择AD域数据日志文件夹。
      图13 设置目录服务还原模式(DSRM)密码
      图14 选择AD域数据日志文件夹
    9. 查看选项默认选择“下一页”,在完成先决条件检查后,单击“安装”,等待AD域服务安装完成,并重启AD域服务器所在环境(即重启电脑)。
      图15 安装AD域服务

  2. 将文件系统加入AD域。

    • 加域流程:
      1. 登录弹性文件服务管理控制台。
      2. 进入SFS Turbo文件系统列表中,找到待加域的文件系统并单击目标文件系统名称,进入文件系统详情界面。
      3. 进入Active Directory配置页面,单击“加域”。
        图16 Active Directory配置页面
      4. 填写Active Directory配置信息。
        图17 填写配置信息
        表2 参数说明

        参数名称

        说明

        域名

        需要加入的AD域域名,如example.com。

        DNS服务器IP地址

        解析域名的DNS服务器IP,单击+,可添加备用DNS服务器IP,最多添加三个IP。

        服务账户用户名

        AD域服务器管理员账户,如:administrator。

        服务账户密码

        AD域服务器管理员账户密码。

        系统名称

        在AD域服务器标志唯一性的系统名称,不能重复,否则加域失败。

        覆盖系统名称

        如果域控制器中存在同名的系统名称,开启该选项后,已有的系统名称将会被覆盖。

        单元组织

        加入AD域服务器的单元,不填默认加入Computers,如:cn=Computers,dc=example,dc=com。

      5. 等待片刻后, 显示Active Directory域名、DNS服务器IP地址、状态系统名称等信息,状态显示可用,表明加域成功。
        图18 加域成功的展示信息
    • 退域流程:
      1. 在已加域界面,单击“退域”按钮,弹出退域提示界面。
        图19 “退域”按钮展示
      2. 输入AD域账户用户名和密码,单击“确定”,开始退域流程。
        图20 退域流程账号密码输入界面
      3. 退域成功后,Active Directory配置页面删除退域前的信息。
        图21 退域成功界面展示

Windows客户端以AD域用户身份挂载并使用SMB文件系统

下文介绍在Windows操作系统中,如何以AD域用户挂载SMB文件系统,以及挂载成功后,如何以AD域用户访问SMB协议文件系统,查看和编辑文件或目录的ACL。

前提条件:SMB文件系统挂载点已接入AD域,详细操作请参见将SMB文件系统挂载点接入AD域

方式一:Windows客户端加入AD域并挂载SMB文件系统

以下步骤将以Windows Server 2019操作系统为例,介绍如何将Windows客户端加入AD域并挂载SMB文件系统。

  1. 配置Windows客户端的DNS服务器地址。

    1. 登录Windows客户端。
    2. 在桌面左下角,单击“开始”。
    3. 在开始菜单栏,单击“控制面板”。
    4. 在控制面板对话框,选择“网络和Internet > 网络和共享中心”。
    5. 在网络与共享中心对话框查看活动网络区域,单击“以太网”。
    6. 在以太网属性对话框,单击“属性”。
    7. 在以太网属性对话框此连接使用下列项目:区域,选中“Internet协议版本4(TCP/IPv4)”,单击“属性”。
    8. 在Internet协议版本4(TCP/IPv4)属性对话框,选中“使用下面的DNS服务器地址”,设置DNS服务器地址为AD域服务器的IP地址。
      图22 设置DNS服务器地址
    9. 使用命令提示符工具执行ping命令,ping AD域名,验证Windows客户端和AD域之间的连通性。
      图23 执行ping命令

  2. 将Windows客户端加入AD域。

    1. 在控制面板对话框,选择“系统和安全 > 系统”。
    2. 在系统对话框计算机名、域和工作组设置区域,单击“更改设置”。
    3. 在系统属性对话框,单击“更改”。
    4. 在计算机名/域更改对话框,填写已搭建的AD域名。根据界面提示,单击“确定”完成配置。
      图24 计算机名/域更改对话框
    5. 重启Windows客户端,使修改配置生效。

  3. 挂载SMB文件系统。

    以AD域用户身份登录windows客户端,使用命令提示符工具执行以下命令,挂载SMB文件系统。

    net use X: \\huawei.com\share /user:example.com\USERNAME PASSWORD
    表3 参数说明

    参数名称

    说明

    huawei.com

    创建SMB协议文件系统时系统自动生成的挂载点地址,请根据实际值替换。

    share

    SMB的共享名称,不允许变更。

    example.com

    已搭建的AD域服务器域名。

    USERNAME

    在AD域服务器设置的AD域用户名。

    PASSWORD

    为您在AD域服务器设置的AD域用户密码。

方式二:Windows客户端连接AD域服务器并挂载SMB文件系统

以下步骤将以Windows Server 2019操作系统为例介绍如何将Windows客户端连接AD域服务器并挂载SMB文件系统。

  1. 配置Windows客户端的DNS服务器地址。

    1. 登录Windows客户端。
    2. 在桌面左下角,单击“开始”。
    3. 在开始菜单栏,单击“控制面板”。
    4. 在控制面板对话框,选择“网络和Internet > 网络和共享中心”。
    5. 在网络与共享中心对话框查看活动网络区域,单击“以太网”。
    6. 在以太网属性对话框,单击“属性”。
    7. 在以太网属性对话框此连接使用下列项目:区域,选中“Internet协议版本4(TCP/IPv4)”,单击“属性”。
    8. 在Internet协议版本4(TCP/IPv4)属性对话框,选中“使用下面的DNS服务器地址”,设置DNS服务器地址为AD域服务器的IP地址。
      图25 设置DNS服务器地址
    9. 使用命令提示符工具执行ping命令,ping AD域名,验证Windows客户端和AD域之间的连通性。
      图26 执行ping命令

  2. 挂载SMB文件系统。

    登录windows客户端,使用命令提示符工具执行以下命令,挂载SMB文件系统。

    net use X:  \\huawei.com\share /user:example.com\USERNAME PASSWORD
    表4 参数说明

    参数名称

    说明

    huawei.com

    创建SMB协议文件系统时系统自动生成的挂载点地址,请根据实际值替换。

    share

    SMB的共享名称,不允许变更。

    example.com

    已搭建的AD域服务器域名。

    USERNAME

    在AD域服务器设置的AD域用户名。

    PASSWORD

    为您在AD域服务器设置的AD域用户密码。

管理SMB文件系统ACL

开启ACL功能并以AD域身份挂载SMB文件系统后,您可以采用以下方式查看和编辑文件或目录ACL。

方式一:mklink命令行工具。

您可以使用mklink命令行工具,在Windows本地磁盘为SMB文件系统挂载点生成符号链接,同时查看、编辑文件或目录的ACL。

  1. 登录Windows客户端。
  2. 在搜索栏输入命令提示符,运行命令提示符应用,进入命令行工具窗口。
  3. 使用命令提示符工具创建文件系统映射,在命令行输入如下命令。

    mklink /D C:\myshare \\huawei.com\share
    表5 参数说明

    参数名称

    说明

    C:\myshare

    符号链接的文件系统路径。

    \\huawei.com\share

    SMB文件系统的挂载点。

  4. 将文件系统映射到本地盘后,可在本地盘查看、编辑文件或目录的ACL,参考方式二:Windows文件资源管理器

    非Administrator用户没有权限操作,按照下一步为普通用户添加符号链接权限。

  5. 为普通用户添加使用符号链接的权限。如果您使用系统管理员Administrator,请跳过此步骤。

    1. 使用系统管理员Administrator登录windows客户端。
    2. 单击搜索栏并运行secpol.msc。
      图27 搜索并运行secpol.msc
    3. 在本地安全策略对话框,选择“本地策略 > 用户权限分配”,按照页面提示将指定用户加入创建符号链接的权限组中。
      图28 本地安全策略对话框
      图29 添加用户或组

方式二:Windows文件资源管理器。

在Windows本地磁盘为SMB文件系统挂载点生成符号链接,可以通过Windows的文件资源管理器(File Explorer)查看、编辑文件或目录的ACL。

  1. 找到目标文件或目录,右键单击“属性”。

    图30 选择属性

  2. 在属性对话框,单击“安全”页签,然后单击“编辑”。

    图31 选择编辑

  3. 在权限对话框,单击“添加”,按照页面提示填写相关信息。

    图32 权限对话框
    图33 填写信息
    1. 在使用Windows文件资源管理器查看SMB文件系统时,如果需要回退本地磁盘路径,请单击“回退”按钮(下图中的标注“1”)或者“上退”按钮(下图中的标注“2”),请不要选中路径中的某一段(下图中的标注“3”)来回退。
      图34 回退或上退本地磁盘路径
    2. 在使用Windows文件资源管理器访问和使用文件系统时,SMB文件系统并没有实际加入用户的AD域。如果不是通过本地磁盘路径C:\myshare访问文件系统,而是通过普通网络路径\\huawei.com\share访问,在设置ACL时,会遇到因接口不可用而无法确定NAS挂载点是否已加入域的情况。
      图35 无法确定计算机是否加入域告警
      图36 接口未知告警

    Windows文件资源管理器对C:\myshare修改权限并不会应用到文件系统的根目录。修改根目录权限需要使用Set-Acl Powershell命令或者icacls命令行。

方式三:icacls命令

icacls命令是Windows命令行中的ACL操作标准命令。您可以通过icacls命令查看、编辑文件或目录ACL。

请不要修改根目录的ACL信息,否则可能导致文件系统无法访问。

如果根目录ACL被恶意删除,可通过如下命令恢复,其中X:\ 为挂载盘符。如果everyone权限被删除,导致无法设置ACL及访问根目录,需要使用超级用户或者AD域管理员账户(administrator)恢复根目录的eveyone权限。

icacls X:\ /grant BUILTIN\Administrators:(OI)(CI)(F)
icacls X:\ /grant “CREATOR OWNER”:(OI)(CI)(IO)(F)
icacls X:\ /grant  “NT AUTHORITY\SYSTEM”:(OI)(CI)(F)
icacls X:\ /grant    Everyone:(F)

用户设置ACL示例:

#获取X: 目录的控制权限列表(需要该目录的读取权限)
icacls X:
#添加用户的完全控制权限
icacls X: /grant <用户名>:(F)
#添加administrator的完全控制权限
icacls X: /grant administrator:(F)
#删除用户的所有权限
icacls X: /remove <用户名>
#删除Everyone的所有权限
icacls X: /remove everyone
  1. 登录Windows客户端。
  2. 在搜索栏,输入命令提示符,运行命令提示符应用,进入命令行工具窗口。
  3. 设置文件ACL权限。

    图37 设置文件ACL权限

  4. 移除用户ACL权限。

    图38 移除用户ACL权限

方式四:通过powerShell工具获取和设置ACL。

  1. 登录Windows客户端。
  2. 在搜索栏,输入windows powerShell,运行windows powerShell应用,进入windows powerShell命令行工具窗口。
  3. 查看文件ACL权限。

    #Get properties
    $value = Get-Acl -Path "X:"
    $value.Access
    图39 powerShell查看ACL

  4. 设置文件ACL权限。

    #Set properties
    $identity = "Administrator"
    $fileSystemRights = "FullControl" 
    $type = "Allow"
    # Create new rule 
    $fileSystemAccessRuleArgumentList = $identity, $fileSystemRights, $type
    $fileSystemAccessRule = New-Object -TypeName System.Security.AccessControl.FileSystemAccessRule -ArgumentList
    $fileSystemAccessRuleArgumentList
    # Apply new rule
    $value.SetAccessRule($fileSystemAccessRule)
    $value.Access
    #Set ACL
    Set-Acl $value -Path "X:"
    图40 powerShell设置ACL

    根目录权限请在创建文件系统时设置妥当,否则由于继承机制,命令会需要修改子目录和子文件。

相关文档