[sisyphus] usb flash mounting with cp1251

Igor Vlasenko =?iso-8859-1?q?vlasenko_=CE=C1_imath=2Ekiev=2Eua?=
Пн Апр 14 16:51:53 MSD 2008


Уважаемые коллеги,
Думаю, тема это нужная, поэтому делаю форвард в рассылку.
Также см.
https://bugzilla.altlinux.org/show_bug.cgi?id=15340
Как бы это побороть?

----- Forwarded message from "Michael A. Kangin" <mak на rsmu.ru> -----

X-Original-To: vlasenko на imath.kiev.ua
Delivered-To: vlasenko на imath.kiev.ua
From: "Michael A. Kangin" <mak на rsmu.ru>
Organization: RSMU
To: Igor Vlasenko <vlasenko на imath.kiev.ua>
Subject: Re: [sisyphus] usb flash mounting with cp1251
Date: Sun, 13 Apr 2008 14:45:34 +0400
User-Agent: KMail/1.9.9
In-Reply-To: <20080312113029.GA6795 на dad.imath.kiev.ua>
X-imath-kiev-ua-MailScanner-Information: Please contact the ISP for more
	information
X-imath-kiev-ua-MailScanner: Found to be clean
X-imath-kiev-ua-MailScanner-From: mak на rsmu.ru
X-Spam-Status: No

В сообщении от Wednesday 12 March 2008 14:30:29 вы написали:

> > > 2) Чтобы не ругалось в DE на попытку отмонтировать из  DE,
> > > возможно стоит добавить в опции (флешек,?) ,users.

Эту опцию добавлять бесполезно - subfs её игнорирует. 

> > Я попробую и потестирую. Лучше не пытаться отмонтировать, а просто
> > вытыкать. :) а то могут точки монтирования не убиться.
>
> Я то понимаю...
> но у меня есть вполне реальные пользователи:
> дедушка, бабушка... не хочется пугать их
> страшными окнами с зловещими предупреждениями.

Некоторое движение навстречу пользователям может принести монтирование через 
cамого HAL-а (вызов монтирования через dbus). 

При этом HAL-dbus-способные DE (типа KDE) всё еще вопят страшными окошками, 
но, кажется, их можно успокоить (недавно в сизифном листе проскальзывал тред 
на тему PolicyKit и иже с ними). Или осуществлять такое монтирование от UIDа 
того пользователя, который потом отмонтировать будет - тут вообще без всяких 
проблем (как решать, с каким ЮИДом монтировать - отдельная большая головная 
боль).
Еще носитель с таким монтированием можно размонтировать вызовом программы 
pumount от пользователя, а она уже дёргает umount от имени рута.

Но у этих способов, применённых к смонтированным через subfs носителям, есть 
один большой трудноустранимый недостаток: они не способны размонтировать 
устройство, точка монтирования которого занята какой-то программой или была 
занята 2-3 секунды назад.
Дело в том, что subfs при обращении к ресурсу монтирует его еще раз, и часто 
бывает ситуация, когда устройство смонтировано дважды:
--------
# mount -t subfs /dev/sdc1 /media/usbdisk-vfat/; grep sdc1 /proc/mounts
/dev/sdc1 /media/usbdisk-vfat subfs rw 0 0
# ls /media/usbdisk-vfat/ >/dev/null; grep sdc1 /proc/mounts
/dev/sdc1 /media/usbdisk-vfat subfs rw 0 0
/dev/sdc1 /media/usbdisk-vfat vfat 
rw,fmask=0022,dmask=0022,codepage=cp866,iocharset=koi8-r 0 0
# sleep 3s; grep sdc1 /proc/mounts;
/dev/sdc1 /media/usbdisk-vfat subfs rw 0 0
---------
и, если делать попытку отмонтировать дважды смонтированное устройство через 
pumount или средствами hal/dbus (как это делает KDE), процесс обламывается - 
эти отмонтировщики не в состоянии отследить такую ситуацию.

наиболее "бронебойный" способ - вызов umount от рута по числу монтирований. 
Что и делает hal-mount-subfs при извлечении флешки.

Надо попробовать развесить баги на HAL/pumount.



-- 
wbr, Michael A. Kangin

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.


----- End forwarded message -----

-- 

Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine




Подробная информация о списке рассылки Sisyphus