Canali
![]() Ultime news
![]() Ultimi articoli
![]() Le ultime dal Forum |
![]() CorrelatiRimuovere il primo stadio del bootloaderPer azzerare i primi 446 byte di un Master Boot Record da eventuali malware che infettano il settore 0: dd if=/dev/zero of=/dev/sda bs=446 count=1 Ricordate poi di reinstallare il bootloader, sia esso GRUB o il bootloader di un sistema operativo Microsoft, altrimenti potreste avere un sistema non avviabile!!! Se invece volessimo azzerare l'intero MBR potremmo usare questo comando: dd if=/dev/zero of=/dev/sda bs=512 count=1 Rimuovendo l'intero MBR rimuoverete sia il bootloader che la tabella di partizione, e dovrete ripetere sia il partizionamento del disco che l'installazione del bootloader. Rimozione di una tabella di partizione dal Master Boot RecordViceversa, un utilizzo più avanzato di dd riguarda la rimozione di una tabella di partizione lasciando invariati tutti gli altri dati (bootloader, disk signature, eccetera): dd if=/dev/zero of=/dev/sda ibs=2 obs=2 seek=223 count=32 Dove pone le dimensioni dei blocchi in lettura a 2 byte, uguale alla dimensione dei blocchi in scrittura. Salta i primi 2*223 byte (446 byte) e sovrascrive con zeri (/dev/zero) i successivi 2*32 byte (i 64 byte della tabella di partizione). Oppure dd if=/dev/zero of=/dev/sda ibs=64 obs=2 seek=223 count=1 Dove sostanzialmente l'effetto è lo stesso, ma invece di cancellare 32 blocchi da 2 byte cancella direttamente 1 blocco da 64. Controllate sempre le opzioni di dd!! Devono corrispondere agli esempi riportati!! Per maggiori informazioni sul Master Boot Record e sulla sua struttura, potete andare alla scoperta del Master Boot Record in quest'articolo. Verifica della velocità di ddIn qualsiasi momento potete controllare che cosa stia facendo dd inviandone il segnale SIGUSR1 attraverso kill da un altro terminale. Dovete usare un altro terminale poiché, a meno che non abbiate relegato dd in background (posponendo il carattere & alle righe di comando), esso si prenderà il terminale in cui è stato invocato e, nel caso di scritture particolarmente lunghe potreste aver il bisogno di controllare a che punto sia. Allora andate in un altro terminale e invocate kill con la seguente riga: kill -USR1 $(pidof dd) Ora non dovete fare altro che tornare allo stesso terminale di invocazione di dd e leggere l'output di stderr, lo stesso che compare al termine della scrittura. Ricordate però che se avete reindirizzato stderr in /dev/null nella riga di invocazione non vedrete scritto nulla da nessuna parte, non importa quante volte ripeterete il kill, né dove andiate a vedere o quanto tempo aspettiate. ConclusioniÈ inutile sottolineare che l'utilizzo di dd è da consigliare solo sotto controllo di un utente esperto, o da parte di uno stesso utente esperto. dd non considera la struttura di un filesystem, ma agisce direttamente sul supporto di memorizzazione fisico e ignora del tutto il supporto logico, che è rappresentato dalle partizioni o dai filesystem stessi, qualora si specifichi una periferica di memorizzazione fisica (sda, sdb, sdc...), quindi è necessaria una gestione responsabile del programma e dei suoi effetti. Non mi stancherò mai di ripeterlo: dd può diventare uno strumento molto avanzato, e non lo usate se non siete sicuri di ciò che fate. ![]() Procedure intermedie Pagine
Segnala ad un amico |
© Copyright 2025 BlazeMedia srl - P. IVA 14742231005