Я пытаюсь отремонтировать внешний жесткий диск.(резервный диск)в OS/X Catalina загрузитесь в однопользовательском режиме и выполните следующую команду:
fsck_hfs -fyd /dev/disk2s2
(Я определил неисправный диск, просмотрев журнал в консоли.)
В журнале консоли указано:«этот объем не может быть полностью проверен»в лог-выводе, но не дает никаких дополнительных подробностей. Вот почему я пытаюсь запустить его в однопользовательском режиме с флагом -d
.
Вот что я получаю:
/dev/disk2s2 ... (NO WRITE)
Operation not permitted.
Как мне получить fsck_hfs
согласие на участие в выборах против этого сбора?
решение1
Наконец, осознав, что, поскольку этовнешнийдиск, мне не нужно переходить в однопользовательский режим, я вошел как администратор и использовал команду sudo
из терминала.
Сначала я попробовал:
sudo diskutil repairdisk disk2
sudo diskutil repairvolume disk2s2
Я заметил, что это действительно вызывает fsck_hfs
и что имя устройства включает в себя "r"
to be /dev/rdisk2s2
.
Сначала я прочитал руководство по вводу команды, чтобы узнать, какие параметры использовать:
man fsck_hfs
Затем я выполнил команду с включенной отладочной информацией, и это сработало:
sudo fsck_hfs -ryd /dev/rdisk2s2
Хотя это все еще не дает ответа на вопрос, почему я перешел NO WRITE
в однопользовательский режим... ответ, который я все равно хотел бы получить... это значит, что я нашел решение своей насущной проблемы.
(Примечание: MacOS автоматически запускала собственный fsck_hfs
процесс в фоновом режиме вскоре после того, как я подключал диск. Я top
находил идентификатор процесса, а затем sudo kill <pid>
завершал его, чтобы диск больше не был «занят», и моя команда терминала могла работать с ним.)