Cosa rende valida una tabella delle partizioni?


3

DOMANDA : Cosa rende riconoscibile e valida una tabella delle partizioni per un sistema operativo? (Linux in particolare)?

Informazioni facoltative sullo sfondo: ho pensato che ci fosse una sorta di "firma" che definisce una tabella delle partizioni valida e se la firma non fosse trovata, Linux (o qualsiasi sistema operativo) non avrebbe semplicemente segnalato le partizioni?

Sto usando un editor esadecimale per ispezionare dati apparentemente casuali (nuova pulizia casuale o crittografia di un'unità completa) e qualcosa su di esso continua a far riconoscere all'unità le partizioni (a volte 2, 3 o 4 partizioni di dimensioni casuali dopo che sono state cancellate o crittografato).

Ho ispezionato i byte da 446 a 509 (dove si suppone che la tabella delle partizioni sia memorizzata; usando un indice a partire da 0) e non riesco a capire cosa farebbe pensare a Linux che le partizioni siano valide --- sono solo dati casuali e avrei pensato che fosse statisticamente improbabile che una partizione fosse definita da dati randomizzati scritti nell'MBR.

Ho anche usato GParted software di gestione delle partizioni per Linux per vedere se riconosce le partizioni e lo fa non . Tuttavia, un altro software e Linux stesso riconoscono queste "partizioni". Nota: le partizioni hanno dimensioni non valide e non si sommano correttamente per eguagliare le dimensioni dell'unità fisica e sembrano avere dimensioni casuali.

Risposte:


3

Risposta: niente in particolare.

Un MBR contiene una firma di avvio alla fine per indicare che esiste (o dovrebbe essere) un codice eseguibile per un PC x86 con un BIOS. Nell'MBR, il codice legge la tabella delle partizioni e avvia la partizione attiva. Il settore di avvio di quella partizione avrebbe anche una firma di avvio. I settori di avvio su floppy disk hanno una firma di avvio. L'idea è di impedire a qualche altro tipo di macchina di caricare alla cieca il codice di avvio e di eseguirlo; ma in pratica la firma dovrebbe essere lì. In caso contrario, ciò potrebbe indicare che l'intero settore è danneggiato e non dovresti andare oltre, dal momento che non vuoi eseguire codice casuale.

Ma un sistema operativo può provare tanto (o meno) quanto vuole provare a interpretare la tabella delle partizioni. Supponiamo che tu stia scherzando con un editor esadecimale del disco e riesca a manipolare alcune voci nella tabella delle partizioni. Forse alcune delle altre partizioni sono ancora valide, quindi potrebbe valere la pena provare; non viene ancora eseguito nulla. GParted probabilmente fa un vero controllo e quando "non si somma" considera il disco corrotto e adatto al ripartizionamento.

Il nuovo formato GPT utilizza un CRC32 per rilevare la corruzione. Anche così, un sistema operativo, ora sapendo con certezza che qualcosa non va, potrebbe comunque fare il possibile per vedere cosa può essere letto comunque.


Ken, grazie per la tua risposta. Quindi secondo questo: en.wikipedia.org/wiki/Master_boot_record#Sector_layout La "Firma di avvio" è 55h AAh nelle posizioni di byte 510 e 511 (indicizzata a partire da 0). Quindi, ciò che hai detto ha senso indicare se esiste un codice di avvio valido da eseguire. La tua menzione del sistema operativo che cerca di interpretare la stessa tabella delle partizioni, indipendentemente dal fatto che abbia senso, coincide praticamente con quello che stavo indovinando; Sono ora alla ricerca di ciò su cui Linux si stia letteralmente allontanando per pensare che il mio disco abbia delle partizioni. Accettare la tua risposta - grazie!
Mikeweb49,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.