[sisyphus] Снова про монтирование
Yura Kalinichenko
=?iso-8859-1?q?yuk_=CE=C1_kalina=2Ein=2Eua?=
Сб Мар 1 22:31:11 MSK 2008
Hi!
Прежде всего хочу поблагодарить Michael A. Kangin за (наконец-то!)
простое и независимое от всяческих DM и FM решение задачи монтирования
сменных носителей. В общем все работает просто отлично, но у меня есть
несколько небольших правок. К сожалению, не нашел этого очень нужного
пакета в официальных репозитариях, посему нет возможности вешать патчи в
багзиллу, так что публикую их здесь.
1) если метка флешки содержит в себе пробельные символы (напр. у меня
точка монтировния обзывается "USB DISK") - то устройство не может
автоматически отмонтироваться. Лечится следующим патчем:
---------------hal-mount-fix_umount_space.patch--------------
diff -U 2 -r hal-mount-subfs-0.1.2.orig/mount-hal-fs hal-mount-subfs-0.1.2/mount-hal-fs
--- hal-mount-subfs-0.1.2.orig/mount-hal-fs 2008-03-01 14:06:56 +0200
+++ hal-mount-subfs-0.1.2/mount-hal-fs 2008-03-01 14:02:13 +0200
@@ -86,5 +86,5 @@
do_unmount() {
- MOUNT_POINT=$1
+ MOUNT_POINT="$1"
initlog -n $LOG_NAME -s "Trying unmount $MOUNT_POINT"
@@ -125,5 +125,6 @@
while MOUNT_LINE=`grep -m 1 "^$HAL_PROP_BLOCK_DEVICE " /proc/mounts`; do
- do_unmount "`echo $MOUNT_LINE |cut -f 2 -d ' '`"
+ set -- $MOUNT_LINE
+ do_unmount "`echo -e "$2"`"
done
----------------end of hal-mount-fix_umount_space.patch-------------
2) в многопользовательской системе монтировать носители с mode=0666,
IMHO, несколько некорректно. В качестве решения предлагаю использовать
для subfs опцию монтирования procuid, которая обеспечивает доступ по
принципу "кто первый встал (на точку монтирования) - того и тапки". Это
+ перекодирование имен файлов, исходя из предположения, что в системе (в
соответствии с генеральной линией партии) локаль UTF-8, а на vfat -
CP866 - делает второй патч:
---------------hal-mount-options.patch---------------------
diff -U 2 -r hal-mount-subfs-0.1.2.orig/99-submount-fs-options.fdi hal-mount-subfs-0.1.2/99-submount-fs-options.fdi
--- hal-mount-subfs-0.1.2.orig/99-submount-fs-options.fdi 2008-03-01 14:12:41 +0200
+++ hal-mount-subfs-0.1.2/99-submount-fs-options.fdi 2008-03-01 15:59:16 +0200
@@ -7,8 +7,8 @@
<match key="volume.policy.should_mount" bool="true">
<match key="volume.policy.mount_filesystem" string="subfs">
- <merge key="volume.policy.mount_options" type="string">nodev,nosuid,noexec,noatime</merge>
+ <merge key="volume.policy.mount_options" type="string">nodev,nosuid,noexec,noatime,procuid</merge>
<match key="volume.policy.mount_option.fs" string="vfat">
- <append key="volume.policy.mount_options" type="string">,fmask=0111,dmask=000,quiet</append>
+ <append key="volume.policy.mount_options" type="string">,iocharset=utf8,codepage=866,showexec</append>
</match>
@@ -18,5 +18,5 @@
<match key="volume.policy.mount_option.fs" string="iso9660">
- <append key="volume.policy.mount_options" type="string">,mode=0444,iocharset=koi8-r,ro</append>
+ <append key="volume.policy.mount_options" type="string">,iocharset=utf8,ro</append>
</match>
@@ -27,5 +27,5 @@
<merge key="storage.policy.mount_options" type="string">nodev,nosuid,noexec,noatime</merge>
<match key="storage.policy.mount_option.fs" string="floppyfss">
- <append key="storage.policy.mount_options" type="string">,fmask=0111,dmask=000,quiet,sync</append>
+ <append key="storage.policy.mount_options" type="string">,procuid,iocharset=utf8,codepage=866,showexec,quiet,sync</append>
</match>
</match>
---------------end of hal-mount-options.patch--------------
3) остается открытым вопрос по принудительному отмонтироваю флешек.
Проведенный эксперимент показал, что в случае FS типа vfat в принципе
достаточно выполнить sync и выдернуть флешку. Но как-то мне это не очень
нравится. К примеру, вдруг мне захочется отформатировать флешку в ext2 -
и что я буду иметь в результате ? Правильно, unclean filesystem. Ну и
при многопользовательском доступе будут проблемы.
Есть идеи ?
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : yuk.vcf
Тип : text/x-vcard
Размер : 177 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/sisyphus/attachments/20080301/9d02080c/attachment-0002.vcf>
Подробная информация о списке рассылки Sisyphus