Bueno vamos a lo que nos interesa:
Primero deben de tener conocimiento de compilación de kernel, pues con este método hay que meterle las manos al kernel, pero sin miedo, que solo es una cosita
Segundo deben de tener conocimientos de hacer módulos de driver para Debian con el paquete module-assistant
Comencemos:
En el momento que lo hice el kernel que estaba usando era el 3.2.0-25-generic de Debain 7
Bueno una vez que tenemos el source de nuestro kernel extraído en /usr/src/”carpeta que contiene el kernel” (yo personalmente lo pongo aquí, porque así fue como aprendí, ustedes pueden descomprimir el source del kernel donde quieran).
Una vez descomprimido el código fuente en donde más ustedes deseen, en mi caso como ya dije en /usr/src/ y suponiendo que tenemos instalados los paquetes para compilar a la Debian Way y ubicados en el directorio donde tenemos nuestro sources del kernel aplicamos:Consejo: Si no sabes como obtener el source del kernel y tienes acceso al repo de tu distro, copia o bajate el .deb llamado linux-source-“versión del kernel”.deb que se encuentra siempre en el main principal de la rama de la distro que usas, ejemplo en Debian Wheezy estaria en wheezy/pool/main/l/linux/. Muchas se preguntaran, pero es un .deb no .tar.bz2, no importa dentro de ese .deb está el agua que le entra al coco haha usar este comando
Este comando extrae todo lo que está dentro del .deb dentro de la carpeta donde lo extraigan van a /usr/src/linux-srouces-“version”/ “aquí está el deseado linux-sources-“version.tar.bz2””Código: Seleccionar todo
dpkg --extract linux-source-“version”.deb / “directorio donde lo quieren extraer”
Fin del consejo.
Código: Seleccionar todo
make config
Código: Seleccionar todo
make menuconfig
Código: Seleccionar todo
make xconfig
Bueno llego la parte 1 del arroz con pollo en este punto solo (para el tema que estamos tocando) nos interesa ir a:
Divece Driver>Network divece support>PPP(point-to-point protocol) support
Una vez estén parado encima de este parámetro y presionando “h” para ver la ayuda o si ejecutaron make xconfig lo estarán viendo por interfaz gráfica, les saldrá una explicación inmensa, pero solo nos interesa el último párrafo que dice:
If you said Y to "Version information on all symbols" above, then
you cannot compile the PPP driver into the kernel; you can then only
compile it as a module. To compile this driver as a module, choose M
here. The module will be called ppp_generic.
Bien traducción para aquellos que a esta altura no se han dado cuenta de lo importante que es saber Ingles y Carabuari
Pues seleccionamos M aquí y listo nos vamos compilar el kernel.Si usted dijera que Y (valor integrado en el kernel, la mayoría de las opciones del kernel tiene dos formas de compilar como integrado al kernel o como modulo) a la "Información de versión sobre todos símbolos" de arriba, entonces usted no podrá compilar los driver PPP dentro del kernel, usted puede únicamente compilarlos como un módulo. Para compilar estos driver como modulo, escoja M (modulo) aquí. El modulo se llamara ppp_generic.
Dentro encontraran más opciones específicas para el protocolo ppp si tenéis tiempo podéis ir viéndolas e ir desmarcando lo que no les interesa, yo lo deje todo marcada pues soy un vago y tengo que dividir mi tiempo entre la consola (juego), la novia, la familia de la novia (mi peor pesadilla), la universidad y mi propia familia (peor que la de mi novia)
48 horas después ya tenemos el kernel compilado (es broma )
Instalamos los dos .deb que nos devuelve la finalización de la compilación (image y headers)
Segundo paso y voy a explicar algo, tengo la suerte que en GUTL hace tiempo (4 años, cuando aquello la versión del foro era con tonos blancos y azules) descargue el código fuente de los driver para mi modem HSF, este código fuente ya venía preparado para ser recompilado como modulo y la gran mayoría de driver para Debian vienen en este formato, es decir cuando usted descomprima el código fuente de su driver vera que tiene una carpeta debian y una modules
Primero instalamos el module-assistant con nuestro querido
Código: Seleccionar todo
apt-get install module-assistant
Código: Seleccionar todo
m-a prepare
En mi caso me paro en el directorio donde tengo el código fuente de los driver de mi modem y ejecuto
Código: Seleccionar todo
m-a build hsf
Código: Seleccionar todo
m-a install hsf
modprobe hsf
Espero que esto les sirva de referencia para que aquellos que salen huyendo de Linux porque no les funciona el modem o quiere ya de una vez dejar de convivir con Windows porque lo necesitan para poner navegar desde sus casa en la red.Advertencias, esto es para hacer módulos de driver que ya vienen preparados para ser módulos de Debian y derivados, lo podéis identificar cuando descompriman el código fuente de sus driver y vean que existe la carpeta debian y module dentro. Esto también sirve para los driver de NVIDIA, ATI y derivados, siempre que modifiquéis en el kernel que los quieren como módulos.
También existe una manera de hacerlo para driver no preparados para Debian, pero como esta forma me funciono y mis driver por suerte (porque yo ni me había fijado en esto) ya venían preparados para la Debain Way, no tuve que buscar ninguna información para aprender hacer módulos con driver que no vienen preparado para Debian y derivados.
En internet no encontraran casi ninguna información actualizada, lo más que sale es información para el kernel 2.6.x ya el modem telefónico que todos conocemos en Cuba es tecnología del pasado, solo se usa en lugar muy remotos para comunicar los paquetes de salida a un VAST (internet satelital) y este responde por un modem satelital (de hasta 8mb/s) que está conectado por LAN al pc, al final el pc se conecta por RJ45. En conclusión los únicos que siguen comprando módems(telefónicos) y revisando esta información en internet somos los cubanos. Espero que antes de morir el puerto RJ45 de mi máquina de escritorio pierda la virginidad por un router ADSL aunque sea
Fuentes:
- Mucho google
- http://www.mogaal.com/articulos/kernel-a-la-debian.html
- Manual para compilar un kernel, aplicar parches y compilar modulos para Debian, Ubuntos y derivados. Alejandro Garrido Mota <garridomota@gmail.com>
- Mi cerebro uniendo las piesas y provocandome fuertes dolores en las largas madrugadas de compilacion y cafe.