Review EBS volumes before approving removal
On this page
This check is due for a source refresh. Confirm the current documentation before you rely on provider-specific details.
Deleting by status alone can remove data you still need. Run the read-only inventory, then verify ownership and retention for every available EBS volume before approving removal.
What you need first
- Tool
- Use Bash with the AWS Command Line Interface (AWS CLI), a terminal tool for sending AWS service commands. Start with credentials for the intended account and select the AWS Region to review.
- Access
- The command requires ec2:DescribeVolumes permission. That permission alone may not support the EC2 console, which uses additional API actions. Ask your AWS administrator for help if access is denied.
- If you do not use that tool
- Ask an authorized AWS colleague to run the command for the account and Region you specify. Request the JSON results, account, Region, and run time so you can compare VolumeId values with ownership and retention records.
Why this is worth a look
Skipping ownership and retention review can turn an available volume into a data-loss decision. DescribeVolumes reports volume properties and state, not deletion approval, billing charges, confirmed waste, or savings. Treat the output as a review list. This inventory does not calculate a charge.
Run these commands
BASHRun this Bash command with the AWS CLI and ec2:DescribeVolumes permission. Replace the example Region. It lists available volumes in the credentialed account and Region without changing resources.
set -euo pipefail
REGION="us-east-1"
aws ec2 describe-volumes \
--region "$REGION" \
--filters Name=status,Values=available \
--page-size 100 \
--query 'Volumes[].{VolumeId:VolumeId,VolumeType:VolumeType,SizeGiB:Size,SnapshotId:SnapshotId,CreateTime:CreateTime}' \
--output jsonHow to confirm it
- 01
Set the account and Region
Confirm the account selected by your AWS credentials through your organization’s sign-in process. Replace REGION with the intended AWS Region; us-east-1 is only an example.
- 02
Run the complete inventory
Run the command and record the account, Region, and run time with the results. Keep automatic pagination enabled. --page-size 100 controls each service call, not the total number of volumes returned, and smaller pages can help prevent timeouts.
- 03
Approve only confirmed removals
Compare each VolumeId with ownership and retention records. Ask the responsible owner to confirm removal, and leave unresolved volumes out of deletion approval. SizeGiB is the provisioned size in GiB; SnapshotId identifies the source snapshot when applicable.
Before making changes
Assume Bash, an installed AWS CLI, valid credentials for the intended account, the intended Region, and ec2:DescribeVolumes access. CreateTime is when volume creation was initiated, not how long the volume has been available. The command does not set IncludeManagedResources=true, so AWS-service-managed volumes with hidden visibility may be omitted. The output is a point-in-time inventory, not a billing or retention record.