在Windows上使用Azure文件共享服务

之前简单介绍过,你可以通过SMB 3.0协议,将Azure文件共享挂载在本地,就如使用一个网络驱动器是一样的,但需要注意不同版本的Windows对于SMB协议的支持:

如何在Azure的Windows虚拟机中访问共享文件存储昵?

  1. 创建一个Windows 2012虚拟机,可以和你的文件共享存储在一个region,比如都在北京,也可以不在一个地区,一个在北京地区一个在上海地区
  2. 持久化你的访问凭证,如果你只是手工挂载了共享服务,那么重新启动了之后,系统就不会重新自动连接,具体方式是使用cmdkey,执行如下命令:

    cmdkey /add:<storage-account-name>. file.core.chinacloudapi.cn /user:<storage-account-name> /pass:<storage-account-key>

  3. 确保你的上述命令是执行成功的,然后就可以使用net use命令挂载你的Azure文件共享服务到你的驱动器,比如:
net use <drive-letter>: \\<storage-account-name>.file.core.chinacloudapi.cn \<share-name>
例如在本测试示例中:

net use f: \\mystorageacctfile.file.core.chinacloudapi.cn\myfileshare

然后你就可以像访问本地驱动盘一样访问共享存储

4. 重启服务器,检测共享服务是否会自动连接,可以看到系统重启以后,文件共享目录被自动加载,然后我们做个简单测试,我们在该目录下创建一个测试目录windows和测试文件mywindows.txt: 

5. 打开Powershell,使用powershell获得该文件共享下的文件列表,可以看到新建的目录和文件:

那么可不可以在用户的数据中心或者我自己的笔记本上直接挂载Azure的文件共享服务?答案是肯定的,前提:

  1. 使用自己数据中心的机器链接到Azure的文件共享服务,必须使用SMB 3.0,所以确保你的机器在SMB3.0列表中,本测试中我使用的是Windows 10
  2. SMB 3.0必须使用445端口,在我的测试中,有些运营商会封掉该端口,导致服务无法访问,不仅仅在中国,在全球其他国家的不同运营商也会有类似的情况,请在测试之前测测445端口

在本测试中,我用的中国电信宽带,我的windows 10笔记本,可以成功的链接到Azure文件共享服务,并正常操作:

注意事项:如果你在使用Net use命令的时候碰到了如下错误:

System error 53 has occurred。

那么基本上能够是因为你的网路服务提供商,你的Firewall或者ISP将445端口封掉了,请联系你的管理员或者运营商,在美国地区的各个运营商对于445端口的开发情况请参考:

http://social.technet.microsoft.com/wiki/contents/articles/32346.azure-summary-of-isps-that-allow-disallow-access-from-port-445.aspx

Azure File SMB3.0文件共享服务(3)的更多相关文章

  1. Azure File SMB3.0文件共享服务(4)

    在Linux上使用Azure文件共享服务 使用SMB 3.0从用户自己的数据连接到Azure,需要加密连接,但目前的Linux SMB客户端都暂时都不支持,Linux的开源社区正在努力将该功能添加到L ...

  2. Azure File SMB3.0文件共享服务(1)

    Azure Storage File是Azure推出的文件共享服务,目前的版本同时支持SMB 2.1和SMB 3.0协议.文件共享服务非常适合那些希望把自己数据中心中使用文件共享的应用程序,在云端需要 ...

  3. Azure File SMB3.0文件共享服务(5)

      使用Java管理Azure文件共享服务   Azure文件共享服务提供了多种方式的访问接口,包括Powershell,.Net, Java, Python等等,本章主要介绍如何使用Java来访问A ...

  4. Azure File SMB3.0文件共享服务(2)

    使用Powershell创建文件共享 Azure的文件存储结构如下所示,最基本的文件存储包含存储账号,文件共享,在文件共享下面你可以建立文件目录,上传文件: 在开始使用Powershell创建文件共享 ...

  5. Windows Azure文件共享服务--File Service

    部署在Windows Azure上的虚拟机之间如何共享文件?例如:Web Server A和Web Server B组成负载均衡集群,两个服务器需要一个共享目录来存储用户上传的文件.通常,大家可能首先 ...

  6. Microsoft Azure File 服务简介

    我们非常高兴地宣布在微软Azure中国区推出 Microsoft Azure File 服务预览版.Azure File 服务使用标准 SMB 2.1 协议提供文件共享.Azure 中运行的应用程序现 ...

  7. Azure File文件共享(6):使用Python开发

    Azure文件共享服务提供了多种方式的访问接口,包括Powershell,.Net, Java, Python等等,本章主要介绍如何使用Python来访问Azure File存储. 关于Python环 ...

  8. Azure AD Domain Service(二)为域服务中的机器配置 Azure File Share 磁盘共享

    一,引言 Azure File Share 是支持两种认证方式的! 1)Active Directory 2)Storage account key 记得上次分析的 "Azure File ...

  9. Windows Azure Storage (20) 使用Azure File实现共享文件夹

    <Windows Azure Platform 系列文章目录> Update 2016-4-14.在Azure VM配置FTP和IIS,请参考: http://blogs.iis.net/ ...

随机推荐

  1. Smallest Difference(POJ 2718)

    Smallest Difference Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6740   Accepted: 18 ...

  2. mysql 执行reset master 风险

    reset master 会把mysql实例上的所以二进制日志删除,并且日志序列从1开始:这样会引起两个问题. 001.问题一 slave 由于找不到下一个要执行的事件所以会报错.进一步master- ...

  3. mvn多模块开发消除重复依赖造成的打包失败

    错误信息: [ERROR] Failed to execute goal on project xiaoyiweifu-core: Could not resolve dependencies for ...

  4. [原]bochs+dos6.22汇编环境

    1.下载安装bochs 下载MS-DOS http://files.cnblogs.com/allbymyself/DOS6.22.rar 下载Masm5.0 2.bochs配置 1)安装目录下的bx ...

  5. 8051_asm.uew

    /L20"8051 Assembly" AASM_LANG Line Comment = ; Nocase String Chars = ' File Extensions = S ...

  6. 51 EEPROM操作模板

    各个型号容量及扇区请查datasheet #include <reg52.h> #include "intrins.h" typedef unsigned char b ...

  7. bzoj1689 [Usaco2005 Open] Muddy roads 泥泞的路

    Description Farmer John has a problem: the dirt road from his farm to town has suffered in the recen ...

  8. UESTC_Big Brother 2015 UESTC Training for Graph Theory<Problem G>

    G - Big Brother Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) ...

  9. Unique Binary Search Trees II 解答

    Question Given n, generate all structurally unique BST's (binary search trees) that store values 1.. ...

  10. Unity 预处理命令

    我们经常在代码里面写Debug.Log()调试代码,游戏后门代码.这些代码在发布时无意义的,我们就需要慢慢的删除掉它们(很痛苦),有什么办法让它们在编译的时候并不加入编译代码中呢?  预处理命令..比 ...