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

Re: LILO O GRUB



Leo wrote:
Toni Castillo Girona wrote:

Hola,

recientemente necesito crear un sencillo programa en C que sea capaz de determinar si en los 512 primeros bytes del disco (el MBR) se encuentra instalado GRUB o LILO.

Y claro, he probado de volcar dichos bytes con dd para repasarlos via hexedit y buscar cadenas o patrones que me indiquen que buscar dentro de dichos bytes con mi programa para llegar a dicha conclusión.

Con LILO veo que aparece una cadena literal "LILO" :

..!...LILO...

Pero en el caso de GRUB no. Supongo que tendrá alguna clase de fingerprint, algún valor en hexadecimal del palo FC0A o asi que identifique a GRUB....

La pregunta es: ¿alguien sabe donde puedo conseguir + información al resepcto?

He pensado en bajarme las fuentes de lilo y de grub (apt-get source ... ) y leermelas pero igual hay alguien que ya ha pasado por esto.....

¡¡gracias!!



Toni, has utilizado algún ejemplo de la web para hacerlo?

Muchas Gracias.


Salu2.

--- Dat1.net ---
[Este mail fue controlado con Declude Virus/F-Prot]


Ei, el problema de lilo ya lo tengo solventado. En el archivo "common.h" del código fuente de lilo se indica claramente:

// typedef struct {
//      char jump[6]; /* jump over the data */
//      char signature[4]; /* "LILO" */
//      unsigned short stage,version; /* stage is 0x10 */
//      unsigned short offset; /* partition entry offset */
//      unsigned char drive; /* BIOS drive code */
//      unsigned char head; /* head; always 0 */
//      unsigned short drvmap; /* offset of drive map */
// unsigned char ptable[PARTITION_ENTRY*PARTITION_ENTRIES]; /* part. table *
/
// } BOOT_PARAMS_C; /* chain loader */

Es decir, que el literal "LILO" se encuentra en el offset 6 del MBR. Esto coincide si leo con dd el MBR de diferentes equipos con LILO y lo edito con hexedit.

Ahora solo me falta saber que hace GRUB, porque el literal "GRUB" lo coloca en posiciones diferentes (en un caso en offset 375d y en otro 377d).

Estoy echando un vistazo a las fuentes.

¡¡Gracias por todo!!



Reply to: