Comment réparer les blocs défectueux sous Linux



Essayez Notre Instrument Pour Éliminer Les Problèmes

Les utilisateurs qui démarrent en double une distribution de Linux avec une version de Microsoft Windows peuvent parfois essayer de réduire ou d'agrandir certaines partitions pour laisser plus d'espace pour un système d'exploitation ou un autre. Vous pouvez finalement recevoir un avertissement de GParted sous Linux ou chkdsk sous Windows indiquant qu'il y avait des secteurs défectueux. Les utilisateurs individuels de Linux peuvent parfois obtenir la même chose. Malgré cela, les utilisateurs peuvent en fait recevoir des notifications sur deux types différents de secteurs défectueux se faisant passer pour les mêmes. La première est la notification traditionnelle des secteurs défectueux qui indiquent un problème avec la géométrie physique d'un plateau de disque ou d'une cellule de mémoire NAND. C'est ce que la plupart des gens veulent dire lorsqu'ils se plaignent d'un mauvais bloc, bien qu'il y ait une différence mineure mais très technique entre un mauvais secteur et un mauvais bloc. Cependant, les machines signalent rarement à tort les secteurs comme étant mauvais.



Ceux-ci sont connus sous le nom de secteurs défectueux logiciels ou de blocs défectueux logiciels et peuvent être corrigés simplement par une simple opération de système de fichiers. Cependant, compte tenu du danger d’écrire sur des blocs défectueux, il est toujours judicieux de commencer votre enquête par une inspection SMART des données lorsque vous traitez avec un volume fixe. Ceci est non destructif et peut éliminer les problèmes de géométrie avant de continuer. Si vous ne travaillez pas avec un volume fixe, vous souhaiterez peut-être commencer votre enquête avec la méthode suivante.



Méthode 1: vérifier les données SMART

Il est facile de croire que ces secteurs défectueux ne sont qu’une erreur logicielle, mais il existe un moyen de vérifier si c’est le cas. En utilisant les données SMART, il est facile d'inspecter le micrologiciel du disque et d'en être sûr. Ouvrez l'utilitaire de disques GNOME depuis le tableau de bord dans Unity, le menu Whisker dans Xfce4, le menu Accessoires dans LXDE ou depuis le menu Applications GNOME dans KDE. Vous pouvez également le démarrer en tapant gnome-disks sur le terminal et en appuyant sur la touche Entrée. Cliquez sur le menu à côté des commandes de la fenêtre de droite après avoir mis en surbrillance votre disque dur avec le pointeur dans la colonne de gauche. Sur la plupart des installations GNU / Linux, l'utilitaire Disques utilisera par défaut votre disque dur principal.



Sélectionnez Données SMART et auto-tests dans le menu. Vous pouvez également maintenir CTRL et appuyer sur S pour ouvrir cette fenêtre. Cela vous montrera l'état de santé actuel de votre disque. Si les valeurs sont vides, cliquez sur le bouton Démarrer l'auto-test pour forcer votre disque à exécuter une auto-vérification. La ligne d'évaluation globale en haut vous dira ce que l'utilitaire de disques GNOME pense de votre lecteur.

Vous devrez peut-être faire défiler les attributs SMART même sur un affichage plein écran. Portez une attention particulière à une option appelée Nombre de réallocations. Cela vous montre combien de secteurs ont déjà été réaffectés. S'il existe de nombreux secteurs défectueux, il est probablement judicieux de remplacer le disque avant qu'il ne tombe complètement en panne.



Méthode 2: vérification du superbloc correct

Parfois, vous constaterez peut-être que les données SMART montraient tout dans l'ordre, mais vous avez peut-être obtenu une erreur «Bad Superblock» de certains utilitaires de disque. Si vous travailliez avec des cartes SD, des clés USB ou une autre mémoire de ce type, vous ne seriez pas en mesure de lire les données SMART et vous pourriez néanmoins avoir des erreurs. Cela pourrait très bien être un problème logiciel. Considérez le problème de l'exécution d'une commande telle que:

fsck.ext4 / dev / sda

Cela indiquera très probablement que vous avez un mauvais superbloc, qui fait référence au bloc maître de votre système de fichiers. Ceci est le résultat d'une erreur CLI et non d'un véritable bloc défectueux. Puisque / dev / sdb fait référence à un lecteur et non à une partition, votre commande fsck recherchera un superbloc là où il n’y en a pas et pensera à tort que quelque chose ne va pas. Heureusement, ce n’était pas une commande destructrice. Courir:

sudo fsck.ext4 / dev / sda1

Cela peut vous indiquer maintenant que votre système de fichiers est propre. Assurez-vous que le numéro qui suit ext correspond à la version ext de votre volume.

Vous pouvez également obtenir cette erreur si vous tentez d'exécuter ext2 / 3/4 fsck sur un volume FAT12 / 16/32, NTFS ou HFS / HFS +. Le vérificateur de cohérence devient confus et pense que quelque chose ne va pas, alors qu'en réalité le type de structure de fichier ne correspond pas à ce qui est attendu. Exécutez fsck.vfat ou dosfsck sur les volumes FAT, quelle que soit la version de bits que vous utilisez. Vous pouvez utiliser le commutateur -t après dosfsck ou fsck.vfat (fsck.msdos sur certaines versions de Linux) pour marquer les clusters illisibles comme des blocs défectueux.

Méthode 3: vérification des blocs défectueux sur les volumes NTFS

En supposant que vous démarrez deux fois Microsoft Windows et Linux et que vous avez des erreurs de superbloc ou d'autres secteurs défectueux sur un volume NTFS, redémarrez Windows et à partir de la ligne de commande, exécutez chkdsk / rc :, en remplaçant c: par la lettre de lecteur du Volume NTFS en question. Windows devra probablement redémarrer pour terminer l'analyse de surface. Cela peut prendre un certain temps. Par conséquent, s'il semble que votre système d'exploitation ne répond pas, c'est simplement en raison de la durée en question. Si vous recevez une erreur indiquant que vous ne disposez pas des privilèges appropriés, cliquez avec le bouton droit sur l'invite de commande dans le menu Démarrer et sélectionnez Exécuter en tant qu'administrateur avant de continuer.

Si vous travaillez avec un volume NTFS exclusivement sous Linux, vous n’avez pas autant de recours, mais si l’erreur de blocs défectueux provient simplement d’une incompatibilité de type, vous avez un moyen de la corriger. Exécutez sudo ntfsfix / dev / sdb1, en remplaçant la lettre et le numéro après / dev / sd par le périphérique et l'identificateur de partition appropriés. N'oubliez pas que vous pouvez toujours exécuter sudo fdisk-l ou retourner à l'utilitaire de disques GNOME s'il est installé pour vérifier les noms de chaque volume connecté à votre système. Vous pouvez l'exécuter en tant que sudo ntfsfix -d / dev / sdb1 si vous êtes sûr de vouloir effacer le bit sale.

Si vous êtes sûr qu'un volume NTFS a des blocs défectueux qui ne sont pas dus à la géométrie matérielle physique, comme lorsque vous avez cloné un ancien disque avec des secteurs défectueux vers un nouveau volume, exécutez sudo ntfsfix -bd / dev / sdb1 sur tout volume que vous souhaitez. Cela réinitialise la liste des marqueurs de bloc défectueux.

Méthode 4: Utilisation de l'utilitaire Linux badblocks

Après avoir démarré dans une version Linux ISO en direct ou avoir trouvé un autre moyen de démonter un système de fichiers ext2, ext3 ou ext4, vous pouvez en fait exécuter sudo fsck.ext4 -c / dev / sda1 pour effectuer une analyse en lecture seule des blocs défectueux. Naturellement, vous devrez utiliser l'identifiant de volume correct après / dev / sd et le numéro de version ext correct après fsck.ext pour l'exécuter correctement. Si vous spécifiez à la place -cc, le programme utilisera un test de lecture-écriture non destructif encore plus complet.

C'est la manière normale d'utiliser l'utilitaire badblocks, mais vous pouvez également l'utiliser techniquement par son solitaire. Exécutez sudo badblocks -n sur un nom de périphérique pour l'exécuter seul et signalez les badblocks directement dans votre terminal. Vous pouvez utiliser l'option -w pour utiliser un test en mode écriture, mais n'utilisez pas les options -n et -w ensemble car elles s'excluent mutuellement. Vous ne devez en aucun cas utiliser l'option -w sur un volume contenant des données, car cela effacera tout. Utilisez l'option -n plus lente car elle conservera vos données dans ce cas. L’option -w convient aux volumes que vous n’avez pas peur d’effacer. L'option -v peut être combinée avec l'un ou l'autre et donnera à votre terminal une sortie verbeuse utile pour inspecter la corruption des données. Vous pouvez toujours utiliser l'option -o avec le nom d'un fichier texte pour écrire les informations afin de pouvoir les consulter plus tard. Vous voudrez peut-être l'exécuter en tant que sudo badblocks -nv -o badblocks.log / dev / sdb1 pour obtenir un instantané, car vous verrez beaucoup d'informations s'il y a de véritables blocs défectueux.

5 minutes de lecture