# dd if=/dev/zero of=/dev/sdaEffacera- t -il une table de partition préexistante?
Ou est-ce l'inverse, c'est-à-dire
# fdisk /dev/sda g (pour GPT)
effacer les zéros écrits par /dev/zero?
# dd if=/dev/zero of=/dev/sdaEffacera- t -il une table de partition préexistante?
Ou est-ce l'inverse, c'est-à-dire
# fdisk /dev/sda g (pour GPT)
effacer les zéros écrits par /dev/zero?
Réponses:
dd if=/dev/zero of=/dev/sdaEffacera- t -il une table de partition préexistante?
Oui, la table de partition est dans la première partie du lecteur, donc l'écrire dessus le détruira. Cela ddécrira sur tout le lecteur si vous le laissez fonctionner (cela prendra donc un certain temps).
Quelque chose comme dd bs=512 count=50 if=/dev/zero of=/dev/sdaserait suffisant pour écraser les 50 premiers secteurs, y compris la table de partition MBR et le GPT principal. Bien qu'au moins selon Wikipedia, GPT possède une copie secondaire de la table de partition à la fin du lecteur, donc écraser uniquement la partie dans la tête du lecteur pourrait ne pas être suffisant.
(Vous ne devez pas utiliser dd, cependant. head -c10000 /dev/zero > /dev/sdaOu cat /bin/ls > /dev/sdaaurait le même effet.)
fait
fdisk /dev/sda g(pour TPG) effacer les zéros écrits par / dev / zero?
Oui aussi (à condition d'enregistrer les modifications).
(Cependant, le phrasé dans le titre est juste déroutant, /dev/zeroen soi ne fait rien de plus que tout stockage régulier.)
/bin/lsest suffisamment courte, l'opération d'écriture peut écraser uniquement les quelques octets du MBR et la partie la plus importante (secteurs de début et de fin des partitions) peut rester intacte. Bien qu'une réinstallation du MBR (le plus souvent grub --install /dev/sda) soit toujours nécessaire pour rendre le système amorçable à nouveau.
lsbinaire réel , pas la sortie de son exécution. Le plus petit binaire ELF "Hello World" possible semble être de 98 octets (donc moins qu'un MBR), mais je pense qu'il est sûr de supposer que tout binaire avec des fonctionnalités réelles devrait être plus grand qu'un MBR (l'implémentation FreeBSD notoirement petite de ls32784 octets de long, même assez grand pour remplacer la partie de début de disque d'un GPT). ;)
ls. Une liste de /usr/binserait probablement assez longue. J'allais utiliser juste echocomme exemple, mais IIRC vous avez besoin de près de 500 octets pour écraser une table de partition MBR, donc c'est un peu fatigant à taper. (quel que soit le nombre exact)
La table de partition est stockée près du début 1 du périphérique de disque (logique 2 ).
Le remplacement de cette zone par quoi que ce soit (des zéros à partir de /dev/zeroou toute autre donnée) remplacera la table de partition par du charabia, il ne sera donc plus évident de savoir où commencent les partitions sur le périphérique.
On peut toujours analyser tout le disque et essayer d'identifier les "octets magiques" qui marquent les débuts des systèmes de fichiers.
Inversement, si vous utilisez fdisk(ou tout autre outil de partitionnement) pour créer une nouvelle table de partition, l'outil remplacera les premiers octets du disque pour stocker cette nouvelle table.
Il n'y a qu'un seul début sur le disque, donc quoi que vous fassiez en dernier "y restera".
Notez cependant que certains formats de table de partition (comme GPT) conserveront des copies de sauvegarde à différents endroits (par exemple à la fin du disque pour GPT), à partir desquels certaines informations de partition peuvent être récupérées.
1: par exemple dans les 512 premiers octets pour un MBR ou les premier et dernier 17408 octets pour un GPT
2: le lecteur peut remapper en interne les blocs logiques vers différentes parties du support physique, mais ce mappage est invisible pour (et sans importance pour) le système d'exploitation.
/dev/zeroeffacer quelque chose, c'est l'ddeffacer en copiant dessus. Les faits selon lesquels les octets se trouvent être zéro et que les octets zéro proviennent de la/dev/zeroplace d'une autre source de zéros sont des détails mineurs.