[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

apt и сетевой smb-cdrom



Возникла следующая проблема.

Есть машина без CDROM-a, зато подключенная по сети к другой машине,
на которой есть CDROM. Хочется юзать CDROM второй машины как
apt source для первой. Вторая машина под виндой, так что монтируем
ее CDROM по SMB. На первой машине стоит Woody 3.0r0 без апдейтов.

Прописываем нужную строчку (типа "//machine2/cdrom /cdrom smbfs ro,...")
в /etc/fstab, mount/umount работают, диск читается, файлы на нем тоже.
После этого apt-cdrom прекрасно добавляет эти диски в список репозиториев,
монтируя и размонтируя их по надобности.

После этого пробуем инсталлировать какой-либо пакет командой
    apt-get install package
Появляется просьба вставить CD #N. Нужный диск на второй машине
вставлен. Я жму [Enter]. Опять появляется просьба вставить диск и так
до бесконечности.

Что делать - не пойму. Прочитал маны по апту и конфигам, доки в
/usr/share/doc/apt, Apt-HOWTO - просветления это не принесло. Как я не
пытался его мучать - и монтировал вручную, запрещая монтирование в
конфиге, и прописывал команду для монтирования, и даже mount point
yfcbkmyj ghjgbcsdfk - все безрезультатно. Кстати говоря, поддержка
SMB-CDROM-ов неявно заявлена в man apt.conf:
"It  is  possible  to provide alternate mount and unmount commands if your
mount point can-not  be  listed  in the fstab (such as an SMB mount
and old mount packages)."

Погонял я apt-get под strace-ом и вот что выяснил. /usr/bin/apt-get вызывает
/usr/lib/apt/methods/cdrom и общается с ним через stdin/stdout. В их
переписке замечено, что /usr/lib/apt/methods/cdrom отвечает "MediaFail",
а перед этим делает stat на "/cdrom/" и на "/cdrom/../" .

В Potato таких проблем не было. Если этот CD прописать как file:// source
в sources.list - проблем также не возникает, все ставится с этого диска на ура.

Что делать? Лечится ли это без ковыряния исходников?
Существует ли эта проблема в sarge и sid?




Reply to: