No dijo si tenía otro software instalado que esté montando automáticamente todas las unidades. Mi solución a continuación supone que no. Si lo hace, entonces su problema es diferente: debe especificar qué es para que alguien pueda sugerir cómo desinstalarlo o controlarlo.
Aquí hay un ejemplo de reglas de udev para montar solo unidades permitidas (no probadas pero basadas en reglas similares que yo uso):
#-- Skip if not an appropriate "sd" device
KERNEL!="sd[b-z]*", GOTO="99_exit"
SUBSYSTEM!="block", GOTO="99_exit"
#-- Handle 'remove' and 'change' events
SUBSYSTEMS=="usb", ACTION=="remove", RUN+="/usr/bin/pumount /dev/%k", GOTO="99_exit"
ACTION=="remove|change", GOTO="99_exit"
#-- Create useful environment variables
SUBSYSTEMS=="usb", ENV{ID_SERIAL}!="?*", IMPORT{builtin}="usb_id"
SUBSYSTEMS=="usb", ENV{ID_FS_LABEL}!="?*", IMPORT{program}="/sbin/blkid -o udev -p %N"
#-- Skip if this is not a filesystem (e.g. if this is the whole drive, not a formatted partition)
ENV{ID_FS_USAGE}!="filesystem", GOTO="99_exit"
#-- Mount only allowed drives:
SUBSYSTEMS=="usb", ACTION=="add", ENV{ID_FS_LABEL}=="something_allowed", RUN+="/usr/bin/sudo -u someuser /usr/bin/pmount -t vfat /dev/%k /media/some_name"
SUBSYSTEMS=="usb", ACTION=="add", ENV{ID_FS_LABEL}=="other_allowed", RUN+="/usr/bin/sudo -u someuser /usr/bin/pmount -t vfat /dev/%k /media/other_name"
#-- Exit
LABEL="99_exit"
El comando de montaje que utiliza depende, por supuesto, de su preferencia. El que mostré es solo un ejemplo.
ACTUALIZACIÓN: deduzco de sus comentarios que tiene algo instalado que se monta automáticamente. En mi sistema (Debian Wheezy), no lo hago. Probé el grep que sugeriste y obtuve un resultado diferente. En /lib/udev/rules.d/80-udisks.rules
, encontré esta sección de código:
# Mark devices that shouldn't be automounted / autoassembled etc.
#
# Deny all, then punch holes for what looks like physical drives
# (TODO: this heuristic might need some work)
#
ENV{UDISKS_PRESENTATION_NOPOLICY}="1"
KERNEL=="sd*|hd*|sr*|mmcblk*|mspblk*", ENV{DISKS_PRESENTATION_NOPOLICY}="0"
Esto sugiere que, si tuviera instalado un software de montaje automático, podría ser controlado por la variable de entorno UDISKS_PRESENTATION_NOPOLICY. No ha especificado su distribución, pero aparentemente es diferente.
cat /lib/udev/rules.d/* | grep mount
no imprime nadaman udev
, es posible que desee ejecutargrep mount
los directorios/etc/udev/rules.d/
y/run/udev/rules.d/
.Puedes probar USBGuard . Implementa una lista negra / lista blanca de dispositivos USB en la parte superior de UDev y el marco de autorización USB del kernel de Linux. Puede lograr lo mismo usando UDev como ya se propuso, pero USBGuard es una herramienta dedicada para ese trabajo y tiene un lenguaje de reglas y un applet GUI (opcional).
Dado que los discos flash USB generalmente tienen un número de serie, entonces la lista blanca usando VID: PID y un número de serie quisiera esto en usbguard:
Esto permitiría (autorizar) conectar dos dispositivos USB con solo una interfaz de almacenamiento masivo, VID: PID o 1234: 5678 y un valor de iSerial de "123456" o "abcdef". Todo lo demás estaría bloqueado.
Descargo de responsabilidad: soy el autor de ese proyecto.
fuente