Skip to content

Commit c968731

Browse files
authored
Merge pull request #187414 from laurabren/new-network-file-system-protocol-support-how-to
edit pass: new-network-file-system-protocol-support-how-to
2 parents 395f43f + 1a80cac commit c968731

File tree

1 file changed

+23
-25
lines changed

1 file changed

+23
-25
lines changed

articles/storage/blobs/network-file-system-protocol-support-how-to.md

Lines changed: 23 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Mount Azure Blob Storage by using the NFS 3.0 protocol | Microsoft Docs
3-
description: Learn how to mount a container in Blob storage from an Azure Virtual Machine (VM) or a client that runs on-premises by using the NFS 3.0 protocol.
3+
description: Learn how to mount a container in Blob Storage from an Azure virtual machine (VM) or a client that runs on-premises by using the NFS 3.0 protocol.
44
author: normesta
55
ms.subservice: blobs
66
ms.service: storage
@@ -11,30 +11,30 @@ ms.reviewer: yzheng
1111
ms.custom: devx-track-azurepowershell
1212
---
1313

14-
# Mount Blob storage by using the Network File System (NFS) 3.0 protocol
14+
# Mount Blob Storage by using the Network File System (NFS) 3.0 protocol
1515

16-
You can mount a container in Blob storage from a Linux-based Azure Virtual Machine (VM) or a Linux system that runs on-premises by using the NFS 3.0 protocol. This article provides step-by-step guidance. To learn more about NFS 3.0 protocol support in Blob storage, see [Network File System (NFS) 3.0 protocol support in Azure Blob Storage](network-file-system-protocol-support.md).
16+
This article provides guidance on how to mount a container in Azure Blob Storage from a Linux-based Azure virtual machine (VM) or a Linux system that runs on-premises by using the Network File System (NFS) 3.0 protocol. To learn more about NFS 3.0 protocol support in Blob Storage, see [Network File System (NFS) 3.0 protocol support in Azure Blob Storage](network-file-system-protocol-support.md).
1717

18-
## Step 1: Create an Azure Virtual Network (VNet)
18+
## Step 1: Create an Azure virtual network
1919

20-
Your storage account must be contained within a VNet. A VNet enables clients to securely connect to your storage account. To learn more about VNet, and how to create one, see the [Virtual Network documentation](../../virtual-network/index.yml).
20+
Your storage account must be contained within a virtual network. A virtual network enables clients to connect securely to your storage account. To learn more about Azure Virtual Network, and how to create a virtual network, see the [Virtual Network documentation](../../virtual-network/index.yml).
2121

2222
> [!NOTE]
23-
> Clients in the same VNet can mount containers in your account. You can also mount a container from a client that runs in an on-premises network, but you'll have to first connect your on-premises network to your VNet. See [Supported network connections](network-file-system-protocol-support.md#supported-network-connections).
23+
> Clients in the same virtual network can mount containers in your account. You can also mount a container from a client that runs in an on-premises network, but you'll have to first connect your on-premises network to your virtual network. See [Supported network connections](network-file-system-protocol-support.md#supported-network-connections).
2424
2525
## Step 2: Configure network security
2626

27-
The only way to secure the data in your account is by using a VNet and other network security settings. Any other tool used to secure data including account key authorization, Azure Active Directory (AD) security, and access control lists (ACLs) are not yet supported in accounts that have the NFS 3.0 protocol support enabled on them.
27+
Currently, the only way to secure the data in your storage account is by using a virtual network and other network security settings. Any other tools used to secure data, including account key authorization, Azure Active Directory (Azure AD) security, and access control lists (ACLs), are not yet supported in accounts that have the NFS 3.0 protocol support enabled on them.
2828

2929
To secure the data in your account, see these recommendations: [Network security recommendations for Blob storage](security-recommendations.md#networking).
3030

3131
## Step 3: Create and configure a storage account
3232

33-
To mount a container by using NFS 3.0, You must create a storage account. You can't enable existing accounts.
33+
To mount a container by using NFS 3.0, you must create a storage account. You can't enable existing accounts.
3434

35-
NFS 3.0 protocol is supported for standard general-purpose v2 storage accounts and for premium block blob storage accounts. For more information on these types of storage accounts, see [Storage account overview](../common/storage-account-overview.md).
35+
The NFS 3.0 protocol is supported for standard general-purpose v2 storage accounts and for premium block blob storage accounts. For more information on these types of storage accounts, see [Storage account overview](../common/storage-account-overview.md).
3636

37-
As you configure the account, choose these values:
37+
To configure the account, choose these values:
3838

3939
|Setting | Premium performance | Standard performance
4040
|----|---|---|
@@ -61,24 +61,24 @@ Create a container in your storage account by using any of these tools or SDKs:
6161
||[REST](/rest/api/storageservices/create-container)|
6262

6363
> [!NOTE]
64-
> By default, the root squash option of a new container is `no root squash`. But you can change that to `root squash` or `all squash`. For information about these squash options, see your operating system documentation.
64+
> By default, the root squash option of a new container is **No Root Squash**. But you can change that to **Root Squash** or **All Squash**. For information about these squash options, see your operating system documentation.
6565
6666
The following image shows the squash options as they appear in the Azure portal.
6767

6868
> [!div class="mx-imgBorder"]
69-
> ![squash options in the Azure portal](./media/network-file-system-protocol-how-to/squash-options-azure-portal.png)
69+
> ![Screenshot that shows squash options in the Azure portal.](./media/network-file-system-protocol-how-to/squash-options-azure-portal.png)
7070
7171
## Step 5: Mount the container
7272

73-
Create a directory on your Linux system, and then mount a container in the storage account.
73+
Create a directory on your Linux system, and then mount the container in the storage account.
7474

75-
1. On a Linux system, create a directory.
75+
1. On your Linux system, create a directory:
7676

7777
```
7878
mkdir -p /mnt/test
7979
```
8080

81-
2. Mount a container by using the following command.
81+
2. Mount the container by using the following command:
8282

8383
```
8484
mount -o sec=sys,vers=3,nolock,proto=tcp <storage-account-name>.blob.core.windows.net:/<storage-account-name>/<container-name> /mnt/test
@@ -88,20 +88,18 @@ Create a directory on your Linux system, and then mount a container in the stora
8888

8989
- Replace the `<container-name>` placeholder with the name of your container.
9090

91-
---
92-
9391
## Resolve common errors
9492

95-
|Error | Cause / resolution|
93+
|Error | Cause/resolution|
9694
|---|---|
97-
|`Access denied by server while mounting`|Ensure that your client is running within a supported subnet. See the [Supported network locations](network-file-system-protocol-support.md#supported-network-connections).|
98-
|`No such file or directory`| Make sure to type the mount command and it's parameters directly into the terminal. If you copy and paste any part of this command into the terminal from another application, hidden characters in the pasted information might cause this error to appear. This error also might appear if the account isn't enabled for NFS 3.0. |
99-
|`Permision denied`| The default mode of a newly created NFS v3 container is 0750. Non-root users do not have access to the volume. If access from non-root users is required, root user must change the mode to 0755. Sample command: `sudo chmod 0755 /mnt/<newcontainer>`|
100-
|`EINVAL ("Invalid argument"`) |This error can appear when a client attempts to:<li>Write to a blob that was created from a blob endpoint.<li>Delete a blob that has a snapshot or is in a container that has an active WORM (Write Once, Read Many) policy.|
101-
|`EROFS ("Read-only file system"`) |This error can appear when a client attempts to:<li>Write to a blob or delete a blob that has an active lease.<li>Write to a blob or delete a blob in a container that has an active WORM (Write Once, Read Many) policy. |
95+
|`Access denied by server while mounting`|Ensure that your client is running within a supported subnet. See [Supported network locations](network-file-system-protocol-support.md#supported-network-connections).|
96+
|`No such file or directory`| Make sure to type, rather than copy and paste, the mount command and its parameters directly into the terminal. If you copy and paste any part of this command into the terminal from another application, hidden characters in the pasted information might cause this error to appear. This error also might appear if the account isn't enabled for NFS 3.0.|
97+
|`Permission denied`| The default mode of a newly created NFS 3.0 container is 0750. Non-root users don't have access to the volume. If access from non-root users is required, root users must change the mode to 0755. Sample command: `sudo chmod 0755 /mnt/<newcontainer>`|
98+
|`EINVAL ("Invalid argument"`) |This error can appear when a client attempts to:<li>Write to a blob that was created from a blob endpoint.<li>Delete a blob that has a snapshot or is in a container that has an active WORM (write once, read many) policy.|
99+
|`EROFS ("Read-only file system"`) |This error can appear when a client attempts to:<li>Write to a blob or delete a blob that has an active lease.<li>Write to a blob or delete a blob in a container that has an active WORM policy. |
102100
|`NFS3ERR_IO/EIO ("Input/output error"`) |This error can appear when a client attempts to read, write, or set attributes on blobs that are stored in the archive access tier. |
103-
|`OperationNotSupportedOnSymLink` error| This error can be returned during a write operation via a Blob or Azure Data Lake Storage Gen2 API. Using these APIs to write or delete symbolic links that are created by using NFS 3.0 is not allowed. Make sure to use the NFS v3 endpoint to work with symbolic links. |
104-
|`mount: /mnt/test: bad option;`| Install the nfs helper program using **sudo apt install nfs-common**.|
101+
|`OperationNotSupportedOnSymLink` error| This error can be returned during a write operation via a Blob Storage or Azure Data Lake Storage Gen2 API. Using these APIs to write or delete symbolic links that are created by using NFS 3.0 is not allowed. Make sure to use the NFS 3.0 endpoint to work with symbolic links. |
102+
|`mount: /mnt/test: bad option;`| Install the NFS helper program by using `sudo apt install nfs-common`.|
105103

106104
## See also
107105

0 commit comments

Comments
 (0)