Re: автомонтирование
Юра -> debian-russian@lists.debian.org @ Mon, 11 Apr 2005 15:01:44 +0400:
>> что есть в нашем дистрибутиве (и есть ли) для автоматического
>> монтирования/размонтирования. Так чтоб для пользователя наиболее приближенно
>> к m$ было. Пробовал autofs, да что-то как-то коряво все равно. в ALTLinux-e
>> нечто желаемое видел, это не помню как это там сделано. Но.... жмешь на
>> приводе выплюнуть cdrom и он послушно вылазит, без всяческих
>> доп. манипуляций.
Ю> Мне напр. удобнее жать - не на приводе(где-то там на системнике внизу под столом )
Ю> а на клавиатуре .Поэтому решил оформить алиас :
Ю> alias 1='eject -tv /cdrom && mount /cdrom'
Ю> alias 2='umount -l /cdrom && cd / && eject -rv /cdrom'
Ю> alias 3='eject -rv /cdrom'
Ю> Но есть одна проблема.
Ю> Напр. вставил диск и начал копировать с него .И вдруг мне его срочно надо
Ю> вытащить (жена вам лучше объяснит зачем) .
Ю> % umount -l /cdrom - отлично работает и копирование сразу прерывается(вылезают
Ю> менюшки : "разрешите повторить-пропустить-отменить" - все в лучших традициях мастдая) .
Ю> а вот % eject -r /cdrom - неработает и вот что выводит ---
Ю> eject: `/dev/hdb' is a multipartition device
Ю> eject: trying to eject `/dev/hdb' using CD-ROM eject command
Ю> eject: CD-ROM eject command failed
Ю> eject: unable to eject, last error: Device or resource busy
Ю> ---
Ю> но тут помогает k3b .оно может выдвинуть лоток невзирая ни на какие busy .
Ю> но зато оно не может размонтировать во время работы .
Ю> Так что два вопроса :
Ю> -как eject узнает , что device busy , и как бы это отключить ?
Пытается выдать команду и получает в ответ ошибку "device busy".
Отключить это можно только посредством освобождения устройства.
Пониманию происходящего сильно способствует чтение man umount на предмет
ключа -l. Хинт: оно файловую систему отцепляет сразу. А устройство оно
отпустит только когда процесс копирования отпустит уже открытые там
файлы. Это происходит не мгновенно. Сильно подозреваю, что если у тебя
там один файл во весь компакт, то оно его сначала честно докопирует. В
качестве варианта - перед umount выдать что-то типа fuser -k SIGTERM -m
/cdrom (после чего -l у umount можно и убрать), но будучи выдано от
рута, оно будет грубовато и несколько рискованно для системы, а будучи
выдано не от рута - не прибьет чужих процессов, там живущих.
Ю> -каким образом k3b этим совершенно не интересуется ?
Сильно подозреваю, что никаким - просто оно запускается, когда
устройство уже освободилось, и eject его может выкинуть точно так же.
--
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
Если ничто уже не помогает, прочтите же, наконец, инструкцию!
Reply to: