Skip to content

Commit

Permalink
ovlsnapshot: status
Browse files Browse the repository at this point in the history
  • Loading branch information
amir73il committed Dec 14, 2016
1 parent aecb4a8 commit e344506
Showing 1 changed file with 28 additions and 14 deletions.
42 changes: 28 additions & 14 deletions scripts/ovlsnapshot
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,9 @@ usage()
echo "usage: $SCRIPT_NAME version"
echo
echo "$FSTYPE snapshot commands:"
echo "usage: $SCRIPT_NAME list [<path>|-a]"
echo "usage: $SCRIPT_NAME {mount|status} <path>"
echo "usage: $SCRIPT_NAME {umount|list} [<path>|-a]"
echo "usage: $SCRIPT_NAME {create|take} <path>[[/]@[/]<snapshot-name>] (default-name=<date.time>)"
echo "usage: $SCRIPT_NAME {mount|umount} <path>"
echo "usage: $SCRIPT_NAME {delete|remove} <path>[/]@[/]<snapshot-name>"
echo
echo "snapshot command parameter may be given in ZFS style <path>@<snapshot-name>"
Expand Down Expand Up @@ -230,6 +230,22 @@ list_all_mounted_snapshots()
done )
}

snapshot_status()
{
if ! snapshot_exists ; then
echo "No $FSTYPE snapshots at '$MNT'."
return 1
fi

# List snapshot overlays of snapshot mount
if snapshot_is_mounted ; then
echo "$FSTYPE snapshot at '$MNT' is mounted:"
list_snapshot_mounts $MNT
else
echo "$FSTYPE snapshot at '$MNT' is not mounted."
fi
}

# Global commands that take no <path>[@<snapshot>] argument
[ -n "$CMD" ] || usage
case "$CMD" in
Expand All @@ -250,6 +266,15 @@ esac
# Snapshot commands that take <path>[@<snapshot>] argument
[ "$2" = help ] || parse_path_snapshot_arg "$2"
case "$CMD" in
status)
if [ "$2" = help ]; then
echo "status: display status of $FSTYPE snapshot mount at <path>."
echo "usage: $SCRIPT_NAME status <path>"
exit 0
fi
snapshot_status
echo .
;;
list)
if [ "$2" = help ]; then
echo "list: display list and status of $FSTYPE snapshots."
Expand All @@ -267,18 +292,7 @@ case "$CMD" in
# List all snapshots overlays of all snapshot mounts
list_all_mounted_snapshots
exit 0
elif ! snapshot_exists ; then
echo "No $FSTYPE snapshots at '$MNT'."
exit 0
else
# List snapshot overlays of snapshot mount
if snapshot_is_mounted ; then
echo "$FSTYPE snapshot at '$MNT' is mounted:"
list_snapshot_mounts $MNT
else
echo "$FSTYPE snapshot at '$MNT' is not mounted."
fi
echo
elif snapshot_status ; then
list_snapshots
fi
echo .
Expand Down

0 comments on commit e344506

Please sign in to comment.