web-dev-qa-db-fra.com

Est-il possible d'utiliser des badblocks avec btrfs?

J'ai un disque dur avec des secteurs défectueux que j'ai trouvé en utilisant des badblocks et tout ce que Windows utilise. J'ai installé Lubuntu sur btrfs, et tout se passe bien pour l'instant (où Windows se figerait), mais existe-t-il un moyen d'alimenter la sortie de badblocks vers btrfs? Ou est-ce que btrfs fait déjà tout cela automatiquement?

Je ne stocke pas de données qui ne sont pas importantes, il s'agit simplement de jouer avec btrfs et de voir à quel point il est bon de gérer un mauvais disque dur.

5
guest

brtrfs ne supporte pas les badblocks. Il suppose actuellement que toutes les écritures sur le périphérique réussissent. Ne l'utilisez pas pour un lecteur qui renvoie des erreurs de secteur non corrigible SMART.

Plus d'informations et un contournement est disponible ici .

Le wiki de btrfs Project Ideas dit:

Non revendiqué - pas encore de correctifs - Pas encore dans le noyau

Actuellement, btrfs ne garde pas trace des blocs défectueux, des blocs de disque susceptibles de perdre des données écrites. Btrfs devrait accepter une liste au format de sortie de badblocks, la stocker dans un nouveau btree (ou peut-être dans l'arbre d'étendue actuel, avec un nouvel indicateur), déplacer toutes les données contenues dans les blocs et réserver ces blocs afin qu'ils ne puissent pas être utilisés. pour les allocations futures. En outre, on pourrait apprendre à scrub à rechercher les blocs défectueux lorsqu'une erreur de somme de contrôle est détectée. Cela rendrait gommage beaucoup plus utile; Les erreurs de somme de contrôle sont généralement causées par le disque, mais si Scrub détecte les fichiers affectés, ce qui dans un scénario de sauvegarde donne la possibilité de les recréer, le fichier suivant pour réutiliser les blocs défectueux commencera simplement à recevoir des erreurs. Ces deux éléments correspondraient à une fonctionnalité ext4 (utilisée par e2fsck).

Veuillez commenter si le statut change et je mettrai à jour cette réponse.

1
Tom Hale