Non credo che queste informazioni siano tracciate in modo significativo sotto /sys
o /proc
. L'unico modo in cui posso capire che questo sarebbe accessibile dopo un avvio è interrogando il sistema cercando di vedere se fosse presente un file di configurazione GRUB o Lilo, o facendo uso di uno script come bootinfoscript
.
Esempio:controlla il dispositivo di avvio
Se sai con quale dispositivo è stato avviato il tuo sistema, puoi usare dd
per scaricare il contenuto del boot loader e poi grep
per GRUB o LILO.
Puoi usare questi comandi per determinare se stai usando GRUB o LILO:
$ sudo dd if=/dev/sda bs=512 count=1 2>&1 | grep GRUB
$ sudo dd if=/dev/sda bs=512 count=1 2>&1 | grep LILO
Quello che restituisce questa stringa è il boot loader che stai utilizzando:
Binary file (standard input) matches
Esempio:utilizzo di bootinfoscript
$ sudo ./bootinfoscript --stdout
Boot Info Script 0.61 [1 April 2012]
============================= Boot Info Summary: ===============================
=> Grub2 (v1.99) is installed in the MBR of /dev/sda and looks at sector 1 of
the same hard drive for core.img, but core.img can not be found at this
location.
sda1: __________________________________________________________________________
File system: ext4
Boot sector type: -
Boot sector info:
Operating System:
Boot files: /grub2/grub.cfg
...
Nessuno di questi approcci è "conclusivo", tuttavia, dal momento che più boot loader possono coesistere, ma almeno ti dà un'idea approssimativa dei boot loader che "potrebbero" essere in uso.
Riferimenti
- Come faccio a sapere quale boot loader ho?