Réponses:
En supposant qu'il existe un MBR de 512 octets de type DOS, et que vous en ayez remplacé les 446 premiers octets par de la merde ( zéros ou simplement /dev/urandomsortie), ou endommagé le code de démarrage d'une autre manière. Dans ce cas, la table de partition MBR est à sa place, mais le système ne peut pas démarrer à partir de ce périphérique.
L'idée est d'utiliser le chargeur d'un autre système de type BSD pour démarrer avec votre appareil et votre noyau.
unloaddisk0s1a) en tapantlsdevset currdev="disk0s1a"loder.confpartir de votre appareil (pour être sûr que tous les réglages et hacks du noyau s'appliqueraient) en tapantread-conf boot/loader.confboot-confLorsque votre système d'exploitation démarre, vous pouvez réparer le bootcode. Je l' utilise sysinstallpour elle (Personnalisé -> Partition, W, <Yes>, BootMgr( "Installer FreeBSD Boot Manager"), <OK>, Q, <Exit>, <Exit Install>), mais il est dépréciée depuis 9,0-RELEASE et retiré de la base depuis 10.0-RELEASE. Une autre façon est d'utiliser la sauvegarde, stockée dans /boot, pour en extraire le bootcode:
# gpart bootcode -b /boot/mbr /dev/yourbootdevice