У меня есть USB-накопитель, который содержит личные вещи, такие как ключ SSH. Я хочу установить эту флешку в свой домашний каталог с разрешениями 0700. В настоящее время я делаю это с помощью этой строки в / etc / fstab:
LABEL=KAYSTICK /home/k/.kaystick auto rw,user,noauto,umask=077,fmask=177 0 0
Это отлично работает, но есть одна небольшая проблема: в Nautilus (файловом менеджере Gnome) отображается точка монтирования ".kaystick". Думаю, Nautilus просто сканирует файл / etc / fstab и отображает все, что там находит. Эта точка монтирования довольно бесполезна, потому что по ней нельзя щелкнуть, когда устройства нет, и нельзя щелкнуть, когда устройство присутствует (потому что тогда оно уже смонтировано). Я знаю, что это действительно незначительная проблема, потому что я мог бы просто игнорировать ее, но я перфекционист, и поэтому я хочу избавиться от этой бесполезной точки монтирования в Nautilus.
Есть ли другой способ настроить точку монтирования и параметры монтирования для конкретного USB-устройства? Может в udev это можно настроить? Если да, то как?
Узнал сам. Я добавил файл /lib/udev/rules.d/99-kaystick.rules с таким содержанием:
IMPORT{program}="/sbin/blkid -o udev -p %N"
ENV{ID_FS_LABEL}!="KAYSTICK", GOTO="kaystick_end"
ACTION=="add", RUN+="/bin/mkdir -m 0 -p /home/k/KAYSTICK", RUN+="/bin/mount -o noatime,umask=077,fmask=177,utf8,uid=1000,gid=1000,sync /dev/%k /home/k/KAYSTICK"
ACTION=="remove", RUN+="/bin/umount -l /dev/%k", RUN+="/bin/rmdir /home/k/KAYSTICK"
LABEL="kaystick_end"
а затем запустил эту команду, чтобы перезагрузить правила udev:
udevadm control --reload-rules
Теперь каждый раз, когда я вставляю USB-накопитель, создается каталог / home / k / KAYSTICK, и накопитель подключается к этому каталогу с настраиваемыми параметрами монтирования. При извлечении флешки она автоматически отключается, и каталог удаляется. Автоматическое отключение не работало с решением / etc / fstab, которое я пробовал раньше, поэтому это решение намного лучше.