LinuxCommandLibrary

aws-efs

TLDR

List all file systems

$ aws efs describe-file-systems
copy
Create a new file system
$ aws efs create-file-system --creation-token [unique_token]
copy
Describe a specific file system
$ aws efs describe-file-systems --file-system-id [fs-xxxxxxxx]
copy
Create a mount target in a subnet
$ aws efs create-mount-target --file-system-id [fs-xxxxxxxx] --subnet-id [subnet-xxxxxxxx] --security-groups [sg-xxxxxxxx]
copy
List mount targets for a file system
$ aws efs describe-mount-targets --file-system-id [fs-xxxxxxxx]
copy
Delete a file system
$ aws efs delete-file-system --file-system-id [fs-xxxxxxxx]
copy
Add a lifecycle policy for infrequent access storage
$ aws efs put-lifecycle-configuration --file-system-id [fs-xxxxxxxx] --lifecycle-policies TransitionToIA=AFTER_30_DAYS
copy

SYNOPSIS

aws efs subcommand [options]

DESCRIPTION

aws efs is a subcommand of the AWS CLI that manages Amazon Elastic File System, a serverless NFS file system for EC2 instances and on-premises servers. EFS automatically grows and shrinks as files are added or removed.
File systems are accessed through mount targets, which provide IP addresses in your VPC subnets. Multiple EC2 instances can mount the same file system concurrently, making EFS suitable for shared workloads like web serving, content management, and container storage.
EFS supports two storage classes: Standard for frequently accessed data, and Infrequent Access (IA) for cost optimization. Lifecycle policies automatically move files between classes based on access patterns.

PARAMETERS

describe-file-systems

List file systems and their details.
create-file-system
Create a new EFS file system.
delete-file-system
Remove a file system (must be empty).
describe-mount-targets
List mount targets for a file system.
create-mount-target
Create a mount target in a subnet.
delete-mount-target
Remove a mount target.
put-lifecycle-configuration
Set lifecycle policies for storage class transitions.
describe-lifecycle-configuration
View current lifecycle policies.
--file-system-id id
The file system identifier (fs-xxxxxxxx).
--creation-token token
Idempotency token for creating file systems.
--subnet-id id
Subnet for the mount target.
--security-groups ids
Security groups for the mount target.
--performance-mode mode
generalPurpose or maxIO.
--throughput-mode mode
bursting, provisioned, or elastic.

CAVEATS

Delete all mount targets before deleting a file system. Mount targets require one per Availability Zone for high availability. Security groups must allow NFS traffic (port 2049). Performance mode cannot be changed after creation. Cross-region access requires VPC peering or Transit Gateway.

HISTORY

Amazon EFS was announced at AWS re:Invent 2015 and became generally available in June 2016. It was AWS's first managed NFS service. Infrequent Access storage class was added in 2019 for cost optimization. EFS One Zone storage classes launched in 2021 for single-AZ workloads at lower cost. Elastic throughput mode was introduced in 2022.

SEE ALSO

aws(1), mount(8), nfs(5), aws-fsx(1)

Copied to clipboard