Код: Выделить всё
KERNEL!="sd[a-z]*", GOTO="auto_mount_end"
#if i'm not a fixed drive - this is not a rule for me
ENV{ID_BUS}!="ata", GOTO="auto_mount_end"
#if i'm a root partition - i'm already mounted
#ENV{DEVLINKS}=="*/dev/root*",GOTO="auto_mount_end"
# Do not mount devices already mounted somewhere else to avoid entries for all your local partitions in /media
PROGRAM=="/bin/grep -q ' /dev/%k ' /proc/self/mountinfo", GOTO="auto_mount_end"
#matches for UUID entries
PROGRAM=="/bin/grep -q '$env{ID_FS_UUID}' /proc/self/mountinfo", GOTO="auto_mount_end"
ACTION=="add", RUN+="/usr/bin/udisks --mount /dev/%k --mount-options=rw,umask=000"
# Exit
LABEL="auto_mount_end"Но есть один тонкий момент - при включении питания для уже подключенных дисков ACTION=="add" происходит сильно раньше старта udevd, соответственно приходится вызывать это событие вручную, прописав в rc.local такую строчку:
udevadm trigger --subsystem-match="block" --action="add"
Но хочется решения более изящного.