avrei bisogno di scrivere uno script bash per rilevare il bootloader in uso cioè se è grub o lilo per esempio...
nessuno a delle dritte/consigli?
vi ringrazio anticipatamente
grazie raga
avrei bisogno di scrivere uno script bash per rilevare il bootloader in uso cioè se è grub o lilo per esempio...
nessuno a delle dritte/consigli?
vi ringrazio anticipatamente
grazie raga
Questo l'ho ricavato dalla macchina su cui sto lavorando ora...
Ed in effetti e' utilizzato Grub.codice:sudo dd if=/dev/hda bs=446 count=1 2> /dev/null | od -w446 -c | grep -o "G *R *U *B" | sed "s/ //g" GRUB sudo dd if=/dev/hda bs=446 count=1 2> /dev/null | strings | grep -i grub GRUB
Domani vedo di trovare una macchina con lilo e ti faccio sapere.
notte
slack? smack!
grazie mile!!!
appena posso ... me lo studio meglio
ora vado a nanna
ancora grazie mille!!!
edit: il problema è che così devo sapere su che device è installato... prima di dare quei comandi...
se vuoi il bootloader primario , sta sempre su primary master boot record , quindi a meno che non sia stato invertito l' ordine di avvio dei dischi nel bios disco 0 settore 0 traccia 0 (hda di conseguenza)
ottima notizia anche se sarebbe bello rilevare anche quella situazione, un metodo per lilo CREDO potrebbe essere questoOriginariamente inviato da francofait
se vuoi il bootloader primario , sta sempre su primary master boot record , quindi a meno che non sia stato invertito l' ordine di avvio dei dischi nel bios disco 0 settore 0 traccia 0 (hda di conseguenza)
che ne pensi?codice:lilo -t -v LILO version 22.7.1 (test mode), Copyright (C) 1992-1998 Werner Almesberger Development beyond version 21 Copyright (C) 1999-2005 John Coffman Released 17-Sep-2005 and compiled at 00:33:53 on Aug 8 2006. Warning: LBA32 addressing assumed Reading boot sector from /dev/hda
grazie del chiarimento
funziona benissimo anche con liloDomani vedo di trovare una macchina con lilo e ti faccio sapere.
grazie ragazzicodice:dd if=/dev/hda bs=446 count=1 2> /dev/null | strings | grep -i lilo LILO üLILOu)^h
@cacao74
ho capito perchè hai messo 446 infatti per chi lo volesse sapere:
http://www.pixelbeat.org/docs/disk/the first stage of boot loaders located on hard drives must fit into the first 446 bytes of the Master Boot Record, in order to leave room for the 64-byte partition table and the 2-byte 0xAA55 'signature', which the BIOS requires for a proper boot loader.
ora la cosa che risolverebbe il problema al 1000% sarebbe sapere dove il bootloader è installato cioè su quale device... per far fronte anche alla situazione descritta da francofait
inoltre quali dei due metodi, da te descritti, mi consigli? considerando pro e contro...
potrei fare il test su tutti i device presenti... nella lista
fino a incontrarne uno con il bootloader installato... in questo modo anche se lo ha cambiato il disco di boot dal bios e quindi il device è diverso da hda o sda ... il sistema di rilevamento...funziona ancora...codice:cat /proc/partitions | awk '{print $4}' | egrep "^(h|s){1}d[a-z]{1}$"
però c'è anche il caso in cui il bootloader può essere installato su entrambi i dischi se ne ha due... quindi c'è un modo per sapere che disco boota, in modo da prendere l'MBR del disco corretto da analizzare per determinare il tipo di bootloader?
idee?
cacao74?
molto interessante
http://search.cpan.org/~bryce/Linux-...ader/Detect.pm
sembra che più o meno usa le strategie che abbiamo scritto...
grazie a tutti
sono riuscito a implementare quello che mi serviva...
kernelpkg stà diventando sempre meglio di versione in versione