Amazon Elastic Compute Cloud
CLI Reference (API Version 2012-04-01)
Print this pageEmail this pageGo to the ForumsView the PDFShare this page on TwitterShare this page on FacebookBookmark this page on DeliciousSubmit this page to RedditSubmit this page to DiggDid this page help you?  Yes  No   Tell us about it...

ec2-describe-volumes

Description

Describes your Amazon EBS volumes. For more information about Amazon EBS, go to Using Amazon Elastic Block Store in the Amazon Elastic Compute Cloud User Guide.

You can filter the results to return information only about volumes that match criteria you specify. For example, you could get information about volumes whose status is available. You can specify multiple values for a filter (e.g., the volume's status is either available or in-use). A volume must match at least one of the specified values for it to be included in the results.

You can specify multiple filters (e.g., the volume's status is available, and it is tagged with a particular value). The result includes information for a particular volume only if it matches all your filters. If there's no match, no special message is returned; the response is simply empty.

You can use wildcards with the filter values: * matches zero or more characters, and ? matches exactly one character. You can escape special characters using a backslash before the character. For example, a value of \*amazon\?\\ searches for the literal string *amazon?\.

The following table shows the available filters.

Filter Name Description

attachment.attach-time

Time stamp when the attachment initiated.

Type: xsd:dateTime

attachment.delete-on-termination

Whether the volume will be deleted on instance termination.

Type: Boolean

attachment.device

How the volume is exposed to the instance (e.g., /dev/sda1).

Type: String

attachment.instance-id

ID of the instance the volume is attached to.

Type: String

attachment.status

Attachment state.

Type: String

Valid Values: attaching | attached | detaching | detached

availability-zone

Availability Zone in which the volume was created.

Type: String

create-time

Time stamp when the volume was created.

Type: xsd:dateTime

size

Size of the volume, in GiB (e.g., 20).

Type: String

snapshot-id

Snapshot from which the volume was created.

Type: String

status

Status of the volume.

Type: String

Valid Values: creating | available | in-use | deleting | deleted | error

tag-key

Key of a tag assigned to the resource. This filter is independent of the tag-value filter. For example, if you use both the filter tag-key=Purpose and the filter tag-value=X, you get any resources assigned both the tag key Purpose (regardless of what the tag's value is), and the tag value X (regardless of what the tag's key is). If you want to list only resources where Purpose=X, see the tag:key filter later in this table.

For more information about tags, go to Using Tags in the Amazon Elastic Compute Cloud User Guide.

Type: String

tag-value

Value of a tag assigned to the resource. This filter is independent of the tag-key filter.

Type: String

tag:key

Filters the results based on a specific tag/value combination.

Example: To list just the resources assigned tag Purpose=X, then specify:

--filter tag:Purpose=X

Example: To list just resources assigned tag Purpose=X OR Purpose=Y, then specify:

--filter tag:Purpose=X --filter tag:Purpose=Y

volume-id

Volume ID.

Type: String

The short version of this command is ec2dvol.

Syntax

ec2-describe-volumes [volume_id ...] [[--filter name=value] ...]

Options

NameDescriptionRequired

volume_id

The ID of the volume to list.

Type: String

Default: Describes all volumes you own, or only those otherwise specified.

Example: vol-4282672b

No

-F, --filter name=value

A filter for limiting the results. See the preceding table for a list of allowed filter names and values. You need to use quotation marks if the value string has a space (e.g., "name=value example"). If you're using the command line tools on a Windows system, you might need to use quotation marks, even when there is no space in the value string (e.g., "name=value").

Type: String

Default: Describes all volumes you own, or those otherwise specified.

Example: --filter "tag-key=Production"

No

Common Options

OptionDescription

--region REGION

Overrides the Region specified in the EC2_URL environment variable and the URL specified by the -U option.

Default: The EC2_URL environment variable, or us-east-1 if the environment variable is not set.

Example: --region eu-west-1

-U, --url URL

URL is the uniform resource locator of the Amazon EC2 web service entry point.

Default: The EC2_URL environment variable, or https://ec2.amazonaws.com if the environment variable is not set.

Example: -U https://ec2.amazonaws.com

-K, --private-key EC2-PRIVATE-KEY

The private key to use when constructing requests to Amazon EC2.

Default: The value of the EC2_PRIVATE_KEY environment variable.

Example: -K pk-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem

-C, --cert EC2-CERT

The X.509 certificate to use when constructing requests to Amazon EC2.

Default: The value of the EC2_CERT environment variable.

Example: -C cert-HKZYKTAIG2ECMXYIBH3HXV4ZBEXAMPLE.pem

--connection-timeout TIMEOUT

Specifies a connection timeout (in seconds).

Example: --connection-timeout 30

--request-timeout TIMEOUT

Specifies a request timeout (in seconds).

Example: --request-timeout 45

-v, --verbose

Displays verbose output by showing the SOAP request and response on the command line. This is particularly useful if you are building tools to talk directly to our SOAP API.

-H, --headers

Displays column headers in the output.

--show-empty-fields

Shows empty columns as (nil).

--hide-tags

Do not display tags for tagged resources.

--debug

Prints internal debugging information. This is useful to assist us when troubleshooting problems.

-?, --help, -h

Displays Help.

-

If - is specified as an argument to one of the parameters, a list of arguments is read from standard input. This is useful for piping the output of one command into the input of another.

Example: ec2-describe-instances | grep stopped | cut -f 2 | ec2-start-instances -

Output

The command returns a table that contains the following information:

  • VOLUME identifier

  • ID of the volume

  • Size of the volume, in GiBs

  • Snapshot from which the volume was created, if applicable

  • Availability Zone in which the volume launched

  • Volume state (e.g., creating, available, in-use, deleting, deleted, error)

  • Time stamp when volume creation initiated

  • Any tags assigned to the volume

Amazon EC2 command line tools display errors on stderr.

Examples

Example Request

This example describes all volumes associated with your account.

PROMPT> ec2-describe-volumes
VOLUME vol-4d826724 800 us-east-1a in-use 2008-02-14T00:00:00+0000
ATTACHMENT vol-4d826724 i-6058a509 /dev/sdh attached 2008-02-14T00:00:17+0000
VOLUME vol-50957039 13 us-east-1a available 2008-02-091T00:00:00+0000
VOLUME vol-6682670f 1 us-east-1a in-use 2008-02-11T12:00:00+0000
ATTACHMENT vol-6682670f i-69a54000 /dev/sdh attached 2008-02-11T13:56:00+0000
VOLUME vol-932685fa 15   snap-a08912c9   us-east-1a  in-use  2010-03-31T12:17:07+0000
ATTACHMENT   vol-932685fa   i-71ca481a    /dev/sda1  attached   2010-04-06T14:16:00+0000
VOLUME vol-8975dae0  15  snap-a08912c9   us-east-1c  deleting   2010-04-07T14:59:27+0000
VOLUME vol-35be105c  10   us-east-1a   available  2010-04-08T07:57:15+0000				

Example Request

This example describes all volumes that are both attached to instance i-1a2b3c4d and also set to delete when the instance terminates.

PROMPT> ec2-describe-volumes --filter "attachment.instance-id=i-1a2b3c4d" --filter "attachment.delete-on-termination=true"