GNU/Linux >> Tutoriels Linux >  >> Linux

Btrfs peut-il suivre/éviter les mauvais blocs ?

J'ai un disque dur auquel je ne fais pas entièrement confiance, mais que je veux quand même utiliser (extraction de burstcoin, où si j'obtiens un mauvais bloc dans un fichier, je ne perdrai que quelques centimes).

Comment puis-je dire à btrfs de marquer certains blocs comme mauvais (par exemple à partir de badblocks sortie) ?

Si je ne peux pas pré-marquer les blocs comme mauvais, tous les blocs défectueux seront-ils identifiés par btrfs scrub être évité à l'avenir si le fichier qui les utilise est supprimé ?

Réponse acceptée :

Malheureusement, non.

btrfs ne suit pas les blocs défectueux et btrfs scrub n'empêche pas le fichier suivant d'atteindre le(s) même(s) bloc(s) défectueux.

Ce message sur la liste de diffusion btrfs suggère d'utiliser ext4 avec mkfs.ext4 -c (cela "construit une liste de blocs défectueux et ensuite
n'utilisera pas ces secteurs"
).
La suggestion d'utiliser btrfs sur mdadm 3.1+ avec RAID0 ne fonctionnera pas.

Il semble que LVM ne supporte pas la réallocation de badblock.

Une solution de contournement consiste à créer un périphérique excluant les blocs connus pour être mauvais :btrfs sur dmsetup.

Le wiki btrfs Project Ideas indique :

Non réclamé - pas encore de correctifs - Pas encore dans le noyau

Actuellement, btrfs ne garde pas la trace des blocs défectueux, des blocs de disque très susceptibles de perdre les données qui leur sont écrites. Btrfs devrait accepter une liste dans le format de sortie de badblocks, la stocker dans un nouveau btree (ou peut-être dans l'arbre d'extension actuel, avec un nouveau drapeau), 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 attributions futures. De plus, scrub pourrait apprendre à tester les blocs défectueux lorsqu'une erreur de somme de contrôle est détectée. Cela rendrait le gommage beaucoup plus utile; les erreurs de somme de contrôle sont généralement causées par le disque, mais alors que scrub détecte les fichiers affectés, ce qui, dans un scénario de sauvegarde, donne la possibilité de les recréer, le prochain fichier à réutiliser les blocs défectueux commencera simplement à recevoir des erreurs à la place. Ces deux éléments correspondraient à une fonctionnalité ext4 (utilisée via e2fsck).

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

En relation :Debian – Comment installer un seul paquet à partir de Debian testing ou unstable sur stable ?
Linux
  1. Comment puis-je éviter de télécharger des packages à chaque fois que j'installe Ubuntu ??

  2. Comment vérifier un disque pour les blocs défectueux ou les erreurs de disque sur CentOS / RHEL

  3. Comment puis-je éviter la vérification d'hôte de SSH pour les hôtes connus ?

  4. Effectuer une analyse des blocs défectueux sur la partition racine sous Linux

  5. btrfs :ÉNORMES métadonnées allouées

Comment vérifier les secteurs défectueux ou les blocs défectueux sur le disque dur sous Linux

Comment vérifier le disque dur pour les secteurs ou blocs défectueux sous Linux

Comment vérifier les blocs défectueux ou les secteurs défectueux sur le disque dur sous Linux

Comment puis-je effacer les mauvais raccourcis du cache GNOME Do ?

',,' peut-il être associé à '..' ?

Comment puis-je surveiller le disque io ?