#!/bin/sh
#   $Id: diskidlinks,v 1.12 2016/07/16 11:48:36 az Exp $
#
#   File:	diskidlinks
#   Date:	01 Nov 2012 22:26:03
#   Author:	Alexander Zangerl <az@snafu.priv.at>
# 
#   Abstract:
#     small mdev helper to populate /dev/disk/by-uuid and /by-label
# 
DEVNAME=$(busybox basename $1)
if [ -z "$DEVNAME" ]; then
    echo "Usage: $0 <diskdev>\n\$ACTION should be add or remove\n" >&2
    exit 1
fi
OP=${ACTION:-add}

[ -d /dev/disk/by-uuid ] || mkdir -p /dev/disk/by-uuid
[ -d /dev/disk/by-label ] || mkdir -p /dev/disk/by-label

if [ "$OP" = "add" ]; then
		# prime the cache
		/sbin/blkid >/dev/null 2>&1
    eval `/sbin/blkid -o export $DEVNAME`

    [ -n "$LABEL" ] && ln -s ../../$DEVNAME /dev/disk/by-label/$LABEL
    [ -n "$UUID" ] && ln -s ../../$DEVNAME /dev/disk/by-uuid/$UUID

elif [ "$OP" = "remove" ]; then
    /sbin/blkid -g
    find /dev/disk -type l -lname ../../$DEVNAME |xargs --no-run-if-empty rm
fi
exit 0
