Automatically mount EC2 EBS (Elastic Block Storage) devices
Python Makefile
Switch branches/tags
Clone or download


EBSmount: Automatically mount EC2/Eucalyptus EBS devices

EBSmount has 2 commands:

    ebsmount-udev       Triggered by udev on EBS attach and detach
    ebsmount-manual     Manually mount EBS device (simulates udev add trigger)


    - Supports Amazon EC2 and Eucalyptus EBS devices
    - Automatically mounts EBS devices when they are attached (via udev)
    - Supports formatted devices, as well as partitions
    - Ignores unformatted devices and unsupported filesystems
    - Device/partition uniquely identifiable mountpoints
    - Configurable mount options
    - Hooking scripts execution upon mount (optionally)
    - Convenience command for a one step format and mount
    - Logging

Quick start:
    - If the EBS device is not formatted, it will not be mounted
      automatically. For convenience, the user can format and mount the
      device in one step, for example:

        ebsmount-manual --format=ext4 /dev/sdf

Default configuration (/etc/ebsmount.conf):

    FILESYSTEMS=ext2 ext3 ext4

    DEVPATHS=/devices/xen/vbd- /devices/virtio-pci/virtio

Unique mountpoints:

    - Every EBS filesystem is mounted to its own uniquely identifiable
      mountpoint, based on:


    - For example:

Hooking scripts:

    - Once a filesystem is mounted, EBSmount will execute scripts in
      alpha-numeric ordering located in MOUNTPOINT/.ebsmount

    - Hooking scripts execution is disabled by default. To enable execution,
      RUNHOOKS must be set to True in /etc/ebsmount.conf Additionally, hook
      scripts will only be executed if they are owned by root.

    - The mountpoint of the device will be set in the environment for
      convenience, as MOUNTPOINT

    - This provides a very powerful mechanism. In its simplest form, the
      user might want to symlink the mountpoint to a more accessible
      path, for example:


        #!/bin/bash -e
        [ -e $target ] || ln -s $mountp $target