mirror of
https://github.com/zerotier/edge.git
synced 2026-05-22 16:25:05 -07:00
35 lines
984 B
Bash
Executable File
35 lines
984 B
Bash
Executable File
#!/bin/sh
|
|
|
|
# NOTE: since mdev -s only provide $MDEV, don't depend on any hotplug vars.
|
|
|
|
current=$(readlink usbdisk)
|
|
|
|
if [ "$current" = "$MDEV" ] && [ "$ACTION" = "remove" ]; then
|
|
rm -f usbdisk usba1
|
|
fi
|
|
[ -n "$current" ] && exit
|
|
|
|
if [ -e /sys/block/$MDEV ]; then
|
|
SYSDEV=$(readlink -f /sys/block/$MDEV/device)
|
|
# if /sys device path contains '/usb[0-9]' then we assume its usb
|
|
# also, if its an usb without partitions we require FAT
|
|
if [ "${SYSDEV##*/usb[0-9]}" != "$SYSDEV" ]; then
|
|
# do not create link if there is not FAT
|
|
dd if=/dev/$MDEV bs=512 count=1 2>/dev/null | strings | grep FAT >/dev/null || exit 0
|
|
|
|
ln -sf $MDEV usbdisk
|
|
# keep this for compat. people have it in fstab
|
|
ln -sf $MDEV usba1
|
|
fi
|
|
|
|
elif [ -e /sys/block/*/$MDEV ] ; then
|
|
PARENT=$(dirname /sys/block/*/$MDEV)
|
|
SYSDEV=$(readlink -f $PARENT/device)
|
|
if [ "${SYSDEV##*/usb[0-9]}" != "$SYSDEV" ]; then
|
|
ln -sf $MDEV usbdisk
|
|
# keep this for compat. people have it in fstab
|
|
ln -sf $MDEV usba1
|
|
fi
|
|
fi
|
|
|