[Devel] Проблема сборки и использования etercifs в Mandriva

Konstantin Baev =?iso-8859-1?q?kipruss_=CE=C1_etersoft=2Eru?=
Ср Ноя 5 02:30:40 MSK 2008


Продолжение:

Немножко почитал первую попавшуюся ссылку http://linux.die.net/man/8/dkms

0. У меня уже есть в результате предыдущих изысканий каталог 
/usr/src/etercifs-3.6 внутри которого наши исходники и dkms.conf
0a. Также уже стоят исходники текущего ядра. Вернее, хедеры.
1. Запускаю команду

dkms build -m etercifs -v 3.6 
--kernelsourcedir=/usr/src/linux-2.6.24.4-desktop586-1mnb/

В результате я не совсем понял, где мой собранный модуль (в привычном 
месте его не оказалось), но однако DKMS: build Completed. Что уже радует.

2. [root на localhost ~]# service etercifs start
Loading CIFS kernel module... FATAL: Could not open 
'/lib/modules/2.6.24.4-desktop-1mnb/kernel/fs/cifs/etercifs.ko': No such 
file or directory

Ну, этого и следовало ожидать.

3. Запустил инсталяцию (с перезаписью)

dkms install -m etercifs -v 3.6 --force

система выдала:

etercifs.ko.gz:
 - Installation
   - Installing to /lib/modules/2.6.24.4-desktop-1mnb/dkms/fs/cifs//

depmod.....

DKMS: install Completed.

Ну, вот, выяснилось где мой модуль. :)

4. Уже делаю проще:

modprobe etercifs

5. Проверяю

[root на localhost ~]# lsmod | grep cifs
etercifs              221108  0

6. Теперь уже работают команды  и service etercifs start и service 
etercifs stop

7. Все это, конечно, не сильно укладывается в нашу схему, но вероятно 
является заготовкой для изготовления костыля.

PS. TODO: попробовать опцию --archive <tarball-location>
очень похоже, что она позволяет натравить dkms на архив с исходниками 
модуля. Единственное - туда придется засовывать dkms.conf по дефолту. Но 
это мелочи.

Ещё: сейчас для BUILDDIR создается временная папка, которая потом сразу 
убивается. Для dkms надо будет копировать исходники в 
/usr/src/etercifs-<version> или делать ссылку или ещё как-то ему 
сказать, где их брать. Причем именно те, которые ядру соответствуют. 
Надеюсь, что можно брать из той же временной папки, из которой и сейчас 
модуль собирается. Просто команду запускать другую. Или, если он такой 
капризный все же делать симлинк из /usr/src/etercifs-<version>

-- 
Konstantin Baev
kipruss на etersoft.ru



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