From 5f34ed763755aa326f02325e44fae5974d23e604 Mon Sep 17 00:00:00 2001 From: gobo72 Date: Sat, 14 May 2011 04:14:49 +0000 Subject: [PATCH] =?utf8?q?Ajout=20r=C3=A9gle=20udev=20pour=20monter=20auto?= =?utf8?q?matiquement=20les=20disques=20USB?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- stage2/misc/udev-media-automount.rules | 29 ++++++++++++++++++++++++++ stage2/pkg/udev | 1 + 2 files changed, 30 insertions(+) create mode 100644 stage2/misc/udev-media-automount.rules diff --git a/stage2/misc/udev-media-automount.rules b/stage2/misc/udev-media-automount.rules new file mode 100644 index 0000000..e1174ad --- /dev/null +++ b/stage2/misc/udev-media-automount.rules @@ -0,0 +1,29 @@ +# start at sdb to ignore the system hard drive +KERNEL!="sd[b-z]*", GOTO="my_media_automount_end" +ACTION=="add", PROGRAM!="/sbin/blkid %N", GOTO="my_media_automount_end" + +# import some useful filesystem info as variables +IMPORT{program}="/sbin/blkid -o udev -p %N" + +# get the label if present, otherwise assign one based on device/partition +ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}" +ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k" + +# create the dir in /media and symlink it to /mnt +ACTION=="add", RUN+="/bin/mkdir -p '/media/%E{dir_name}'" + +# global mount options +ACTION=="add", ENV{mount_options}="relatime" +# filesystem-specific mount options (777/666 dir/file perms for ntfs/vfat) +ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},gid=100,dmask=000,fmask=111,utf8" + +# automount ntfs filesystems using ntfs-3g driver +ACTION=="add", ENV{ID_FS_TYPE}=="ntfs", RUN+="/bin/mount -t ntfs-3g -o %E{mount_options} /dev/%k '/media/%E{dir_name}'" +# automount all other filesystems +ACTION=="add", ENV{ID_FS_TYPE}!="ntfs", RUN+="/bin/mount -t auto -o %E{mount_options} /dev/%k '/media/%E{dir_name}'" + +# clean up after device removal +ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l '/media/%E{dir_name}'", RUN+="/bin/rmdir '/media/%E{dir_name}'" + +# exit +LABEL="my_media_automount_end" diff --git a/stage2/pkg/udev b/stage2/pkg/udev index fa10b2d..475748e 100644 --- a/stage2/pkg/udev +++ b/stage2/pkg/udev @@ -15,4 +15,5 @@ hvconfig_pre() hvbuild_post() { install -m755 ${SCRDIR}/misc/udev-create-persistent-net.sh /usr/local/bin + install -m644 ${SCRDIR}/misc/udev-media-automount.rules /etc/udev/rules.d/10-media-automount.rules } -- 2.20.1