После запуска synaptic и добавления CD в репозиторий происходит отключения subfs от CD. После чего получить доступ к CD без ручной работы не получается!
Эта ошибка имеет отношение к submount.
Нужно, чтобы процесс, размонтирующий диски, делал исключение для файловых систем subfs и supermount. supermount - потому, что специально делать ничего не нужно, а кому-то может пригодиться. В eject, например, так.
В качестве workaround могу предложить сейчас установить в конфиге: APT::CDROM::NoMount "true"; (сам не проверял - не на чем, поэтому отзыв будет интересен) Проявляется ли это при использовании apt-cdrom? Есть подозрение, что лучше лечить все-таки apt (apt-pkg/contrib/cdromutl.cc: bool UnmountCdrom(string Path)).
2mouse: что скажешь ?
Возможные варианты исправления: 1. [будет не совсем корректно] Сделать (изменить, если уже есть) lua-скрипт "Scripts::Cdrom::Mount" таким образом, чтоб он проверял тип фс 2. [workaround] Прописать чего-нить в конфиге для "Acquire::cdrom::"+Path+"::Mount" "Acquire::cdrom::"+Path+"::UMount" Вроде как при непустом значении монтирование/размонтирование не будет выполняться. 3. таки сделать патч...
(In reply to comment #3) > Есть подозрение, что лучше лечить все-таки apt (apt-pkg/contrib/cdromutl.cc: Я тоже так думаю.
Created attachment 498 [details] apt-dont-umount-supersubmount.patch Проверьте только правильный ли код возврата я делаю в _exit() Перевешиваем на apt?
Раз никто не против :-)
Created attachment 499 [details] apt-eject.patch А вот еще вариант :-)
Для ALM2.4 бетта от 28072004 это всё ещё актуально!
увеличил приоритет, жизненно необходимо для M2.4
Который из патчей является актуальным?
(In reply to comment #12) > Который из патчей является актуальным? apt-eject.patch - это более простой, но менее правильный. apt-dont-umount-supersubmount.patch - правильный, только не уверен насчет кода возврата _exit()
Нужна ли какая-нить дополнительная обработка при монтировании? Может в некоторых случаях надо и монтирование пропускать?
(In reply to comment #14) > Нужна ли какая-нить дополнительная обработка при монтировании? Нет, максимум - сделать вид, что успешно размонтировали, если subfs или supermount. > Может в некоторых случаях надо и монтирование пропускать? subfs и supermount к этоим случаям не имеют отношения
Нужно проверить как cdrecord и иже с ними работает с subfs! Дело в том что на 2.3 была проблема при попытке записать DVD из k3b при активном subfs! Проблема заключалась в ругательствах типа немогу отмонтировать /dev/scd0.
Ага.. эта ошибка уже известна. Ругается dvd+rw-tools.
Так что слышно про сборку с исправлением?
Ничего не слышно. Я просто не могу понять, в чём проблема.
(In reply to comment #19) > Ничего не слышно. Я просто не могу понять, в чём проблема. Файловые системы subfs и supermount не надо размонтировать, а apt об этом не знает.
Меня не вдохновляет идея добавлять код поддержки каждой новой файловой системы в каждую программу, которая с ними работает. Господа, добавленные в Cc, прошу вас высказать свою точку зрения.
(In reply to comment #21) > Меня не вдохновляет идея добавлять код поддержки каждой новой файловой системы в > каждую программу, которая с ними работает. > > Господа, добавленные в Cc, прошу вас высказать свою точку зрения. А нужно ли вообще когда-нибудь делать umount для subfs? Если нет -- то проще subfs модифицировать, чтобы на umount не реагировала. Если да -- то в каких случаях? Если umount subfs нужен только для ручной работы, тогда опять-таки модифицировать subfs, чтобы на _обычный_ umount не реагировала Если же в каких-то случаях нужно _автоматически_ размонтировать subfs -- то ой. Только программы знают, когда этот случай наступил.
Безусловно, не всякая идея может служить источником вдохновения. Если же отвлечься от высоких материй, то совершенно ясно, что в данном конкретном случае придется таки попатчить apt. PS И собственно, откуда взялся supermount ? разве он у нас поддерживается ?
(In reply to comment #23) > PS И собственно, откуда взялся supermount ? разве он у нас поддерживается ? Я предлагаю патчить и для него тоже, потому что: 1. Патчащему это ничего не стоит. Совсем. 2. Пользователю, хочущему supermount, попытка его использовать будет стоить столько же, сколько нам subfs. Но он не осилит в одиночку все патчи, включая eject, apt, dvd+rw-tools, kde, остальное не помню.
Master 2.4 beta до сих пор воспроизводится.
Дмитрий, что мне следует предпринять, чтобы наконец было найдено какое-то решение ? Текущее состояние пакета неприемлемо.
Please check apt-0.5.15cnc6-alt6, completetly untested patch just uploaded to current.
В сообщении от Среда 08 Сентябрь 2004 16:46 Alexander Kuprin написал(a): > Добрый день. > > Наблюдается странная особенность при установке пакетов с дисков > -- APT иногда не дожидается, когда сменят CD и сообщает об ошибке > "...123 No medium..." При этом 100% повторения этой ошибки > получить не могу -- то есть, то нет. Кто-то сталкивался с таким? > Есть способ побороть? > > Аutofs отключён. Строка из /etc/fstab: > /dev/cdrom /mnt/cdrom subfs fs=cdfss,kudzu,noexec,nodev,nosuid,ro > 0 0
В релизе Master 2.4 ошибка продолжает стабильно воспроизводиться: после apt-get и apt-cdrom диск, подключенный через subfs, остаётся неотмонтированным
Насколько я понимаю, именно этого и хотели добиться (чтобы subfs не слетал).
(In reply to comment #30) > Насколько я понимаю, именно этого и хотели добиться (чтобы subfs не слетал). Да, именно так
(In reply to comment #31) > (In reply to comment #30) > > Насколько я понимаю, именно этого и хотели добиться (чтобы subfs не слетал). > Да, именно так Только не работает, CD все-равно размонтируется. apt-0.5.15cnc6-alt6
Забыл переоткрыть
Блин. В Installer 2.9.9.5 слетает.
Created attachment 879 [details] apt-0.5.15cnc6-alt-umount.patch fixed version of patch
Created attachment 884 [details] apt-0.5.15cnc6-alt-umount.patch fixed and verified
Zerg, я не понял, зачем ты запостил патч, который я приложил ещё в августе прошлого года?
(In reply to comment #37) > Zerg, я не понял, зачем ты запостил патч, который я приложил ещё в августе > прошлого года? Почему ты так подумал? Просто имя файла совпадает.
Содержимое файлов тоже совпадает.
(In reply to comment #39) > Содержимое файлов тоже совпадает. Если ты про https://bugzilla.altlinux.org/attachment.cgi?id=884 , то наверное у тебя из кэша.
Zerg, либо ты глючишь, либо глючит софт, которым ты пользуешься.
(In reply to comment #41) > Zerg, либо ты глючишь, либо глючит софт, которым ты пользуешься. Тогда в Master 2.2 apt отлично работает с subfs и ничего исправлять не надо было :-)
(In reply to comment #42) > в Master 2.2 точнее, в Master 2.4
Zerg, тогда разбирайся сам.
(In reply to comment #44) > Zerg, тогда разбирайся сам. С твоими глюками? Или ты все же объяснишь конкретно, в чем у тебя проблема?
Содержимое файлов не совпадает. Вот то, что приложено (старый патч): @@ -34,6 +34,7 @@ #include <sys/stat.h> #include <unistd.h> #include <stdio.h> +#include <mntent.h> /*}}}*/ // IsMounted - Returns true if the mount point is mounted /*{{{*/ @@ -100,6 +102,17 @@ bool UnmountCdrom(string Path) } else { + FILE *f; + if ((f = setmntent (MOUNTED, "r")) != NULL) + { + struct mntent *mnt; + while ((mnt = getmntent (f)) != NULL) + if (strcmp (Path.c_str(), mnt->mnt_fsname) == 0) + if ((strcmp ("subfs", mnt->mnt_type) == 0) || (strcmp ("supermount", mnt->mnt_type) != 0)) + _exit(0); + endmntent (f); + } + В новой версии Zerg'а читается /proc/mounts, у тебя же - /etc/mtab Далее - посмотри на условие - в subfs проверка идет на равенство нулю, а в supermount - на неравенство. Явно где-то ошибка. В общем новый патч проверен, гарантированно работает, прикладывать можно смело.
Ну значит я сравнивал патч Zerg'а с ним же. Достоверно известно, что в -alt11 патч правильный.
В 2.9.9.6 не слетает.
(In reply to comment #48) > В 2.9.9.6 не слетает. Да, там патч уже приложен.