Men som du säger, det är ett rätt avancerat script, och man bör nog inte peta i den om man verkligen inte vet vad man gör...
ser ut så här för mig om det är till någon hjälp:
/etc/mdev/mdev-mount.sh
Kod:#!/bin/sh notify() { # we don't really depend on the hotplug_e2_helper, but when it exists, call it if [ -x /usr/bin/hotplug_e2_helper ] ; then /usr/bin/hotplug_e2_helper $ACTION /block/$MDEV $PHYSDEVPATH fi } case "$ACTION" in add|"") ACTION="add" # check if already mounted if grep -q "^/dev/${MDEV} " /proc/mounts ; then # Already mounted exit 0 fi DEVBASE=`expr substr $MDEV 1 3` # check for "please don't mount it" file if [ -f "/dev/nomount.${DEVBASE}" ] ; then # blocked exit 0 fi # Run the result of blkid as a shell command eval `blkid /dev/${MDEV} | grep ${MDEV} | cut -d ':' -f 2` if [ -z "$TYPE" ] ; then notify exit 0 fi if [ $TYPE == swap ] ; then if ! grep -q "^/dev/${MDEV} " /proc/swaps ; then swapon /dev/${MDEV} fi exit 0 fi # check for full-disk partition if [ "${DEVBASE}" == "${MDEV}" ] ; then if [ -d /sys/block/${DEVBASE}/${DEVBASE}1 ] ; then # Partition detected, just tell and quit notify exit 0 fi if [ ! -f /sys/block/${DEVBASE}/size ] ; then # No size at all exit 0 fi if [ `cat /sys/block/${DEVBASE}/size` == 0 ] ; then # empty device, bail out exit 0 fi fi # first allow fstab to determine the mountpoint if ! mount /dev/$MDEV > /dev/null 2>&1 ; then # no fstab entry, use automatic mountpoint REMOVABLE=`cat /sys/block/$DEVBASE/removable` readlink -fn /sys/block/$DEVBASE/device | grep -qs 'pci\|ahci' EXTERNAL=$? if [ "${REMOVABLE}" -eq "0" -a $EXTERNAL -eq 0 ] ; then # mount the first non-removable internal device on /media/hdd DEVICETYPE="hdd" else if [ -z "${LABEL}" ] ; then MODEL=`cat /sys/block/$DEVBASE/device/model` if [ "$MODEL" == "USB CF Reader " ]; then DEVICETYPE="cf" elif [ "$MODEL" == "Compact Flash " ]; then DEVICETYPE="cf" elif [ "$MODEL" == "USB SD Reader " ]; then DEVICETYPE="mmc1" elif [ "$MODEL" == "USB SD Reader " ]; then DEVICETYPE="mmc1" elif [ "$MODEL" == "SD/MMC " ]; then DEVICETYPE="mmc1" elif [ "$MODEL" == "USB MS Reader " ]; then DEVICETYPE="mmc1" elif [ "$MODEL" == "SM/xD-Picture " ]; then DEVICETYPE="mmc1" elif [ "$MODEL" == "USB SM Reader " ]; then DEVICETYPE="mmc1" elif [ "$MODEL" == "MS/MS-Pro " ]; then DEVICETYPE="mmc1" else DEVICETYPE="usb" fi else DEVICETYPE="${LABEL}" fi fi # Use mkdir as 'atomic' action, failure means someone beat us to the punch MOUNTPOINT="/media/$DEVICETYPE" if ! mkdir "${MOUNTPOINT}" ; then MOUNTPOINT="/media/$MDEV" mkdir -p "${MOUNTPOINT}" fi mount -t auto /dev/$MDEV "${MOUNTPOINT}" fi ;; remove) MOUNTPOINT=`grep "^/dev/$MDEV\s" /proc/mounts | cut -d' ' -f 2 | sed 's/\\\\040/ /g'` if [ -z "${MOUNTPOINT}" ] ; then MOUNTPOINT="/media/$MDEV" fi umount "${MOUNTPOINT}" || umount "/dev/${MDEV}" rmdir "${MOUNTPOINT}" ;; *) # Unexpected keyword exit 1 ;; esac notify




Svara med citat
