Comment exécuter fsck sur un disque externe avec OS X?

21

J'obtiens cette erreur en essayant de repartitionner un disque externe: "".

Je veux exécuter fsck -fysur le lecteur, mais je ne connais pas la syntaxe appropriée pour le faire sur un lecteur externe?

Quelqu'un peut-il m'aider avec ce problème?

PETERV
la source

Réponses:

34

En fait, vous voulez faire:

% sudo fsck_hfs -fy /dev/disk1s1 (en fonction de la partition que vous souhaitez vérifier).

Cela ne fonctionnera pas avec juste fsckvous devez mettre fsck_hfscomme commande à exécuter.

Paul
la source
3
C'est la meilleure réponse. Avant de l'exécuter, diskutil list répertoriez tous vos disques avec Ma carte SD est disk2. Ensuite, vous voulez trouver le numéro de partition, alors faites quelque chose comme ls /dev/disk2*. Cela se traduit par disk2s1. Donc, la dernière commande que j'exécute est la suivante sudo fsck_hfs -f /dev/disk2s1. REMARQUE: j'ai volontairement formaté ma carte SD en hfs. Normalement, ils utilisent comme de la graisse ou quelque chose.
portforwardpodcast
8

J'obtiens cette erreur lorsque j'essaie de répartir un disque externe: ""

C'est en effet une erreur très descriptive.


Pour fonctionner fscksur un lecteur externe, vous devez d'abord trouver l'identifiant du lecteur. Exécutez diskutil listet vérifiez le nom du volume répertorié sous IDENTIFIER- ce sera quelque chose comme disk3s4, par exemple.

Utilisez ce nom pour exécuter fsck. Vous pouvez également passer l' -foption pour forcer la vérification d'un système de fichiers propre.

sudo fsck /dev/disk3s4

fsck a des raccourcis pour divers types de systèmes de fichiers:

  • fsck_hfspour HFS, utilisez l' -foption pour forcer la vérification des systèmes journalisés
  • fsck_exfatpour ExFAT (aucune -foption ici)
  • fsck_msdospour FAT (pas d' -foption ici)
slhck
la source
En fait, il semble qu'à partir de 10.9, vous ne pouvez pas utiliser fscksans une sorte d'indicateur. L'utilisation de la commande telle qu'indiquée ici entraîne la sortie d'aide / d'utilisation.
Ray
Voir la réponse de Paul - vous devez utiliser fsck_hfs.
Zev Eisenberg
2

J'ai dû courir avec le drapeau -l:

diskutil list # find your identifier
/sbin/fsck_hfs -l -f /dev/disk16

L' -lindicateur indique à fsck de vérifier le lecteur en mode lecture seule.

Robert Steward
la source
1

Ce n'est pas une réponse directe à la question d'origine, mais étroitement liée.

Une autre option consiste à utiliser diskutil lui-même pour vérifier ou réparer un lecteur externe.
Je ne sais pas comment il se compare à fsck, mais il a corrigé mon disque externe qui ne montait pas après l'avoir accidentellement laissé branché lors d'un redémarrage pour une mise à jour du système.

diskutil list  # to find the IDENTIFIER
  (some internal disks listed first)
  /dev/disk2 (external, physical):                                              
    #:                    TYPE NAME                    SIZE       IDENTIFIER
    0:   GUID_partition_scheme                        *500.1 GB   disk2     
    1:                     EFI EFI                     209.7 MB   disk2s1   
    2:               Apple_HFS FreeAgent GoFlex Drive  499.8 GB   disk2s2   

puis des commandes telles que

diskutil verifyDisk disk2
diskutil verifyVolume disk2s1
diskutil verifyVolume disk2s2

pour une raison quelconque, l'exécution des commandes de vérification résout mon problème, mais si vous devez aller plus loin, il existe également des commandes de réparation

diskutil repairDisk disk2
diskutil repairVolume disk2s1
diskutil repairVolume disk2s2
jk7
la source