web-dev-qa-db-fra.com

Comment exécuter un chkdsk?

Je soupçonne qu'il pourrait y avoir un mauvais secteur sur un disque. J'ai utilisé le système de fichiers ext3.

Quel outil est le meilleur équivalent de l'outil de vérification d'erreur de Windows?

81
Guillaume Coté

Les disques

Pour rechercher les secteurs défectueux, vérifiez les données SMART, probablement les mieux accessibles, en lançant l'utilitaire Disks (Palimpseste). Même si vous ne voyez pas de blocs défectueux, lancez un auto-test pour en être sûr.

Le programme est fourni dans le package gnome-disk-utility. Exécutez gksudo gnome-disks

SMART from Palimpsest

Ou dans la version Ubuntu 16.04 (3.18):

SMART from Disks

Badblocks

Vous pouvez également utiliser badblocksname__

Sudo badblocks -sv /dev/sda

pour simplement vérifier ou pour vérifier et corriger d’abord écrire le résultat dans un fichier temporaire:

Sudo badblocks -sv /dev/sda  > bad-blocks-result
Sudo fsck -t ext4 -l bad-blocks-result /dev/sda1

vérifiera le disque entier et imprimera tous les blocs défectueux rencontrés sur /dev/sda .

De badblocksmanual:

Remarque importante: Si la sortie de badblocks doit être transmise aux programmes e2fsck ou mke2fs, il est important que la taille du bloc soit correctement spécifiée, car les numéros de bloc générés dépendent beaucoup de la taille de bloc utilisée par le système de fichiers. Pour cette raison, il est vivement recommandé aux utilisateurs de ne pas exécuter les badblocks directement, mais d'utiliser l'option -c des programmes e2fsck et mke2fs.

fsckname__

fsckne vous aidera pas à trouver les secteurs défectueux, et pire encore, s'il y a beaucoup de secteurs défectueux, cela peut endommager davantage vos données. Utilisez-le uniquement lorsque le disque est en bon état.

98
arrange

Tout au long de cette réponse, je supposerai qu'un lecteur de stockage apparaît comme un périphérique bloc sur le chemin /dev/sdc. Pour trouver le chemin d'un lecteur de stockage dans notre configuration actuelle, utilisez:

  • Disques GnomeInstall Gnome Disks (anciennement Gnome Disk Utility, a. k. a. palimpsestname__), si une interface graphique est disponible, ou
  • sur le terminal, regardez les résultats de lsblket ls -l /dev/disk/by-id et essayez de trouver le bon périphérique en fonction de la taille, du partitionnement, du fabricant et du nom du modèle.

Contrôle de base

  • détecte uniquement les supports qui ne répondent pas
  • presque instantanée (à moins que le support ne soit essoré ou cassé)
  • sûr
  • fonctionne sur un support en lecture seule (p. ex. CD, DVD, BluRay)

Parfois, un support de stockage refuse tout simplement de fonctionner. Il apparaît toujours comme un périphérique de bloc pour le noyau et dans le gestionnaire de disques, mais son premier secteur contenant la table de partition n'est pas lisible. Ceci peut être vérifié facilement avec:

Sudo dd if=/dev/sdc of=/dev/null count=1

Si cette commande génère un message relatif à une "erreur d'entrée/sortie", notre lecteur est en panne ou ne parvient pas à interagir avec le noyau Linux comme prévu. Dans le cas précédent, avec un peu de chance, un spécialiste en récupération de données disposant d'un laboratoire correctement équipé peut récupérer son contenu. Dans ce dernier cas, un système d'exploitation différent vaut la peine d'essayer. (J'ai rencontré des clés USB fonctionnant sous Windows sans pilotes spéciaux, mais pas sous Linux ou OS X).

INTELLIGENT. auto-test

  • minutie réglable
  • instantanée à lente ou plus lente (dépend de la minutie de l'essai)
  • sûr
  • met en garde contre l'échec probable dans un proche avenir

Les appareils qui le prennent en charge peuvent être interrogés sur leur état de santé via S.M.A.R.T. ou chargés de réaliser des auto-tests d’intégrité de différentes minuties. C’est généralement la meilleure option, mais elle n’est généralement disponible que sur des disques durs (non anciens) et à état solide. La plupart des supports flash amovibles ne le prennent pas en charge.

Autres ressources et instructions:

Vérification en lecture seule

  • détecte uniquement certaines erreurs de support flash
  • assez fiable pour les disques durs
  • lent
  • sûr
  • fonctionne sur un support en lecture seule (p. ex. CD, DVD, BluRay)

Pour tester l'intégrité de lecture de tout le périphérique sans écrire dessus, nous pouvons utiliser badblocks(8) comme ceci:

Sudo badblocks -b 4096 -c 4096 -s /dev/sdc

Cette opération peut prendre beaucoup de temps, surtout si le lecteur de stockage est réellement endommagé. Si le nombre d'erreurs dépasse 0, nous saurons qu'il existe un bloc incorrect. Nous pouvons interrompre l'opération en toute sécurité à tout moment (même avec force, comme lors d'une panne de courant), si le nombre exact (et peut-être même l'emplacement) des blocs défectueux ne nous intéresse pas. Il est possible d'abandonner automatiquement en cas d'erreur avec l'option -e 1.

Remarque pour une utilisation avancée: si nous voulons réutiliser la sortie pour e2fsck, nous devons définir la taille de bloc (-b) sur celle du système de fichiers contenu. Nous pouvons également modifier la quantité de données (-c, en blocs) testées en même temps pour améliorer le débit; 16 Mo devrait convenir à la plupart des appareils.

Contrôle lecture-écriture non destructif

  • très complet
  • le plus lent
  • assez sûr (sauf coupure de courant ou panique intermittente du noyau)

Parfois, en particulier avec le support Flash, une erreur ne se produit que lorsque vous essayez d’écrire. (This ne découvrira pas de manière fiable le support (flash), qui annonce une taille supérieure à celle dont ils disposent, utilisez Fight Flash Fraud à la place.)

  • JAMAIS utilisez-le sur un lecteur avec systèmes de fichiers montés ! badblocksrefuse de les utiliser de toute façon, sauf si vous le forcez.

  • Ne pas interrompre cette opération avec force !  Ctrl+C (SIGINT/SIGTERM) et l’attente d’une résiliation anticipée prématurée est acceptable, mais killall -9 badblocks (SIGKILL) ne l’est pas. En cas de résiliation forcée, badblocksne peut pas restaurer le contenu d'origine de la plage de blocs actuellement testée et le laissera écrasé par des données indésirables, ce qui risquerait de corrompre le système de fichiers.

Pour utiliser des contrôles de lecture-écriture non destructifs, ajoutez l'option -n à la commande badblocksci-dessus.

Contrôle destructif en lecture-écriture

  • très complet
  • ralentissez
  • EFFACE TOUTES LES DONNEES DU LECTEUR

Comme ci-dessus, mais sans restaurer le contenu du disque précédent après le test d'écriture, le processus est donc un peu plus rapide. Comme les données sont effacées de toute façon, la résiliation forcée reste sans conséquence négative (supplémentaire).

Pour utiliser des contrôles destructifs en lecture-écriture, ajoutez l'option -w à la commande ci-dessus badblocksname__.

73
David Foerster

fsck - vérifie et répare un système de fichiers Linux. Invoquez-le en utilisant

fsck /dev/sda1

où/dev/sda1 est le lecteur à vérifier. Voir 'man fsck' pour plus de détails.

Il y a aussi la commande 'badblocks' qui vérifie un périphérique, vous l'aurez deviné, de mauvais blocs.

Le lecteur doit être démonté une fois coché. Pour vérifier la partition racine, vous devez créer un fichier 'forcefsck' à la racine de la partition et redémarrer. Le périphérique sera vérifié lors du prochain démarrage:

Sudo touch /forcefsck
Sudo reboot

Alternativement, vous pouvez démarrer à partir d'un Live CD et lancer la vérification à partir de là.

43
Sergey

smartctl

OMI smartctl est un meilleur outil. Vous devez probablement l'installer d'abord

Sudo apt-get install smartmontools 

Ensuite

Sudo smartctl -a /dev/sda | less

d’imprimer les données de santé du lecteur, les attributs et les résultats de test disponibles. Pour quitter moins, tapez q. Alternativement

Sudo smartctl -H /dev/sda

simplement imprimer des données de santé.

Pour commencer un nouveau test automatique en arrière-plan (quelques minutes) ou long (jusqu'à plusieurs heures):

Sudo smartctl -t [short|long]

GSsmartControl ( page d'accueil ) et Gnome Disks sont des interfaces graphiques si vous préférez.

Voir également

20
Panther

badblocks

Vous pouvez vérifier si des badblocks exécutent la commande

  1. Sudo badblocks -nsv /dev/[device-partition] > bad-blocks-result pour un test lecture-écriture non destructif. Cela générera un fichier appelé bad-blocks-result avec les secteurs endommagés.
    • - n Utilisez le mode lecture-écriture non destructif. Par défaut, seul un test en lecture seule non destructif est effectué.

    • - s Affiche la progression de l'analyse en écrivant le pourcentage approximatif d'achèvement des badblocks actuels passés sur le disque.

    • - v Mode verbeux.

  2. Ensuite, vous pouvez exécuter Sudo fsck -t ext3 -l bad-blocks-result /dev/[device-partition] pour indiquer au système de fichiers où se trouvent les secteurs défectueux et, si possible, en éloigner les données.

Vous pouvez trouver plus de lecture à ce sujet ici .

20
Dielson Sales

F3 (Fight Flash Fraud) est une autre option qui devrait également détecter les faux lecteurs flash (lecteurs flash dont la capacité réelle représente une fraction de la capacité annoncée):

  1. Installer F3

    Sudo apt install f3
    
  2. Insérez votre lecteur

  3. Ecrivez les données de test dans l'espace libre sur le lecteur (vérifiez l'emplacement où votre lecteur est monté avec lsblk)

    f3write /media/$USER/D871-DD7C/
    
  4. Lire les données de test

    f3read /media/$USER/D871-DD7C/
    

Référence:

Badblocks fonctionne bien, mais il n'est pas conçu pour détecter les faux lecteurs flash et peut ne pas signaler d'erreur pour eux .

10
bmaupin

Vous pouvez tester-lire l’ensemble du disque tout en affichant un indicateur de progression:

time Sudo pv /dev/sdc >/dev/null

Certains problèmes de disque se manifesteraient par des erreurs d'E/S signalées. C’est un peu plus agréable que dd en raison de l’indicateur de progression et du fait que l’interface de ligne de commande est un peu plus standard et un peu moins typo-prone . Notez que pv est fondamentalement la version améliorée de cat. Il ne peut pas être installé par défaut, mais peut être installé avec Sudo apt-get install pv.

Une approche similaire consiste à lire le disque avec l'un des nombreux outils disponibles qui prennent spécifiquement conscience des erreurs d'E/S sur le disque, et qui ont pour caractéristique "d'essayer de sauver les données avec difficulté". Recherchez ddrescue dans le gestionnaire de paquets.

4
nobar

Si vous avez une partition que vous NE POUVEZ PAS PERDRE LES DONNÉES, suivez ces étapes

  1. Déterminez la partition sur laquelle vous souhaitez rechercher un secteur défectueux à l’aide du bouton

$fdisk -l commnd

Supposons que la partition à vérifier s'appelle/dev/sdPTC (partition à vérifier) ​​et que vous avez une autre partition pour stocker les résultats montés sur le dossier/scan/resultPath /

2.Alors vous pouvez exécuter cette commande

$Sudo badblocks -v /dev/sdPTC > /scan/resultPath/badsectors.txt

qui déterminera quels sont les blocs défectueux du périphérique donné et les stockera dans un fichier appelé badsectors.txt

  1. Vous pouvez maintenant utiliser la commande fsck pour indiquer à Ubuntu de ne pas utiliser les secteurs défectueux mentionnés dans le fichier badsectors.txt.

$Sudo fsck -l /scan_result/badsectors.txt /dev/sda

De cette façon, la durée de vie du disque dur est un peu augmentée jusqu'à ce que vous en remplaciez un nouveau.


Si vous souhaitez rechercher des secteurs physiques défectueux sur une partition complète et que vous POUVEZ VOUS PERDRE DE PERDRE TOUTES LES DONNÉES sur cette partition ou si vous êtes VIDE, procédez comme suit

  1. $Sudo apt-get install gnome-disk-utility

  2. $Sudo gnome-disks

  3. Vérifiez et vérifiez qu'il n'y a pas de données importantes sur cette partition

  4. Utiliser gnome-disks SUPPRIMER/RETIRER la partition à la main en utilisant le signe "-"

  5. En utilisant gnome-disks CREATE une nouvelle partition et sélectionnez l’option "slow" qui va vérifier l’espace donné pour des erreurs

enter image description here