5.4 ¿Qué son los parches (patchs)? ¿Cómo se instalan?

Imagen de ElSanto

¿Qué son los parches y para qué sirven?:

Un parche para el núcleo no es más, que un fichero que solamente contiene información, sobre las lineas de código que han cambiado desde la versión precedente del núcleo. De esta manera, solamente os teneis que bajar un fichero con los cambios, en vez, del núcleo al completo. El ahorro en cantidad de Mb bajados es bastante considerable, sobre todo para aquellos que dependen del módem y no tienen una conexión buena a internet.

Algo a tener muy en cuenta si vais a actualizar el núcleo por medio de parches, en vez de bajaros el núcleo al completo, es que teneis que ir actualizando de versión a versión. Para que se entienda un poco mejor, aqui teneis un ejemplo:

Si teneis el núcleo 2.2.0 y vais a actualizarlo al 2.2.1, os podeis bajar el fichero patch-2.2.1.gz [70Kb] en vez, del núcleo 2.2.1 al completo [12.5Mb]. Pero si teneis el nucleo 2.2.0 y vais a actualizar al 2.2.4, NO os vale bajaros el fichero patch-2.2.4.gz nada más, tendriais que bajaros el 2.2.1, 2.2.2, 2.2.3 y 2.2.4. Esto es porque los ficheros patch solamente contienen los cambios de versión a versión.

Si la diferencia entre la versión que teneis y la que quereis instalar, es muy grande (p.ej: del 2.2.0 al 2.2.10), no os merece la pena actualizar por medio de parches, en este caso bajaros la versión completa.

¿Qué hacer con un fichero patch-XX.YY.ZZ.gz?:

Ya os habeis bajado el fichero patch (se pueden bajar del mismo subdirectorio donde está la versión completa), que necesitas para actualizar el núcleo, y ahora, ¿qué hacemos?. Ahora, hay que aplicarlo al núcleo que teneis y compilar de nuevo. El procedimiento para actualizar el núcleo por medio de ficheros patch es el siguiente:

  • Copiar el fichero patch-XX.YY.ZZ.gz al directorio /usr/src/ : cp patch-XX.YY.ZZ.gz /usr/src/

  • Cambiar a este subdirectorio y descomprimir el fichero: cd /usr/src/; gunzip patch-XX.YY.ZZ.gz
  • Aplicar el parche: patch -s -p0 < patch-XX.YY.ZZ
  • La opción -s hara que solo se impriman mensajes de error. Si no recibís ningún mensaje de error (como debería de ser ;-)) solamente os queda entrar en /usr/src/linux: cd /usr/src/linux
  • Y ejecutar make clean, make xconfig, make dep, make bzImage, el resto es igual que en la sección anterior a partir del punto 11)