Ответы:
Я получаю эту ошибку при попытке перераспределить внешний диск: ""
Это действительно очень описательная ошибка.
Для запуска fsck
на внешнем диске сначала необходимо узнать идентификатор диска. Запустите diskutil list
и проверьте имя тома, указанного в разделе IDENTIFIER
- это будет что-то вроде disk3s4
, например.
Используйте это имя для запуска fsck
. Вы также можете передать -f
опцию принудительной проверки чистой файловой системы.
sudo fsck /dev/disk3s4
fsck
имеет сокращения для различных типов файловых систем:
fsck_hfs
для HFS используйте -f
опцию принудительной проверки журнализированных системfsck_exfat
для ExFAT ( -f
здесь нет опции)fsck_msdos
для жира ( -f
здесь нет варианта)fsck
без какого-либо флага. Использование приведенной здесь команды приводит к выводу справки / использования.
fsck_hfs
.
Я должен был бежать с флагом -l:
diskutil list # find your identifier
/sbin/fsck_hfs -l -f /dev/disk16
-l
Флаг говорит Fsck проверить диск в режиме только для чтения.
Это не прямой ответ на исходный вопрос, но тесно связанный.
Другой вариант - использовать сам diskutil для проверки или восстановления внешнего диска.
Я не уверен, как он сравнивается с fsck, но он исправил мой внешний диск, который не монтировался после того, как я случайно оставил его подключенным к сети во время перезапуска для обновления системы.
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
а затем такие команды, как
diskutil verifyDisk disk2
diskutil verifyVolume disk2s1
diskutil verifyVolume disk2s2
по какой-то причине просто запуск команд проверки решает мою проблему, но если вам нужно пойти дальше, есть и команды восстановления
diskutil repairDisk disk2
diskutil repairVolume disk2s1
diskutil repairVolume disk2s2
diskutil list
перечислите все ваши диски с моей SD-картой на disk2. Затем вы хотите найти номер раздела, поэтому сделайте что-то вродеls /dev/disk2*
. Это приводит кdisk2s1
. Итак, последняя команда, которую я запускаю, - этоsudo fsck_hfs -f /dev/disk2s1
. ПРИМЕЧАНИЕ. Я специально отформатировал свою SD-карту как hfs. Обычно они используют как жир или что-то.