Ошибки APFS: fsck не может восстановить

12

TL; DR

Задал тот же вопрос в сообществах Apple, ничего полезного. Найдите сообщение здесь: https://discussions.apple.com/thread/8123614

bash-3.2# fsck_apfs -d -l /dev/disk5
fletcher64_init:58: Selecting AVX2 implementation of fletcher64
** Checking volume.
** Checking the container superblock.
** Checking the EFI jumpstart record.
** Checking the space manager.
** Checking the object map.
** Checking the APFS volume superblock.
warning: apfs_sb at apfs_fs_index (0): apfs_features has unrecognized features (2)
** Checking the object map.
** Checking the fsroot tree.
error: btn: key (2) compare error: 22
   fsroot tree is invalid.
** The volume /dev/disk5 could not be verified completely.

Аппаратный iMac (27 дюймов, конец 2013 г.), 256 ГБ SSD, ничего особенного, ничего особенного.

Стандартное оборудование, и я уверен, что это оборудование безупречно, так как я использую на нем Linux / Freebsd.

Диск - это однораздельный GPT по умолчанию для новой установки High Sierra. Я просто стер весь диск, установил новую схему GPT, отформатировал ее как HFS + и запустил установщик с USB. Все прошло нормально, но через несколько дней я проверил громкость после отключения питания и обнаружил, что больше не могу его ремонтировать ...

Disk Utility.app говорит то же, что и fsck . Дисковая утилита в основном выполняет fsck в фоновом режиме, если вы считаете, что это не так, запустите Дисковую утилиту напрямую через Терминал, и вы увидите ее в stdout.

Я не мог найти никакой полезной документации, просто немного маркетингового мамбо-джамбо без какой-либо технической глубины.

Я установил 10.13.1 релиз Public Beta с надеждой , что , возможно , это будет распознают на непризнанные черты, теперь он говорит , что более или менее то же самое , и до сих пор не может восстановить объем - хотя он не жалуется на непризнанных особенности.

Я где-то читал, что APFS тесно связана с ZFS, так что, возможно, можно работать с инструментами ZFS или другим программным обеспечением, которое явно предназначено для восстановления APFS, аналогично тому, что было здесь: http://dtrace.org/blogs/ahl/2016/ 06/15 / apple_and_zfs /

Подтемы

  • Есть ли способ отказаться от APFS на SSD?
  • Есть ли способ конвертировать обратно в HFS +

Во время установки установщик не спрашивал о преобразовании (или, возможно, я пропустил его), и теперь я застрял с диском, который я не могу использовать.


Обновление II : после прочтения немного о ZFS, а затем ссылок из записи в Википедии об APFS (поправьте меня, если я ошибаюсь) реализация APFS должна самостоятельно устранять любые ошибки, и, теоретически, нет необходимости в команде fsck. Ну, подумав об этом, мне никогда не приходилось fsck тома BTRFS, если были некоторые проблемы, которые были очищены во время загрузки, думаю, именно так APFS и должна работать - поскольку отказоустойчивость является одной из его основных функций.

Больше технических деталей по обратному проектированию APFS здесь

Обновление III (07.01.2018)

После нескольких недель тестирования APF на собственном оборудовании Apple и сторонних производителей, проведя много общего и не очень распространенного тестирования - я рекомендую держаться подальше от него, пока ядро ​​Linux не сможет смонтировать том APFS в R / W Режим. Исходя из моего опыта, можно ожидать, что у вас будет действительно плохой день, если хранилище на базе APFS по какой-то причине выйдет из строя и не сможет самоисцелиться. В большинстве случаев он выполняет свою работу и может восстанавливаться самостоятельно - однако за 8 недель я приземлился в более чем 5 случаях, когда он не смог - несмотря на отсутствие аппаратного сбоя. Я не смог восстановить / повторно использовать том без переформатирования, поэтому я не использую APFS, пока он не будет хорошо документирован и смонтирован в Linux в режиме R / W для чего-либо еще, кроме системных файлов.

SSD против не-SSD Если вы используете APFS на не-SSD: это будет медленнее, чем HFS. Период. APFS (в настоящее время) подходит только для внутренних SSD-дисков и может быть на гибридных (хотя установщик Apple не согласится). Магнитные жесткие диски никак не выигрывают от APFS. Производительность внешнего SSD-накопителя на самом деле несопоставима, так как объем данных, которые вы можете сжать через USB-C, ограничен, и HFS + не будет узким местом.

PJJ
источник
Какая конфигурация памяти для этого компьютера? Пожалуйста, будьте как можно более конкретны - каковы точные спецификации для оперативной памяти в каждом слоте, и есть ли какие-либо из этих не Apple RAM?
Грег Глокнер,
1
У меня есть 3 машины, каждая из которых имеет одну и ту же проблему с fs, я перевёл том в usb и даже записал его на другой диск, но всё равно не смог его починить и почистить.
PJJ
Мне не повезло с восстановлением поврежденного тома APFS. Мне пришлось восстанавливать из резервной копии.
Грег Глокнер,
в то же время, кажется, есть какой-то открытый apfs-драйвер с открытым исходным кодом, cf: github.com/sgan81/apfs-fuse наткнулся на эту и вашу историю, так как у меня есть несколько похожая проблема apple.stackexchange.com/questions/323883/…
Рене Пикхардт
некоторое программное обеспечение с открытым исходным кодом, чтобы следить за восстановлением python github.com/cugu/afro / apfs hex editor github.com/ydkhatri/APFS_010
johndpope

Ответы:

4

Тот же совет, что и на форумах Apple. Резервное копирование и переформатирование вашей системы.

Apple еще не выпустила спецификацию или код APFS. Как вы обнаружили, был сделан только очень грубый реверс-инжиниринг. Попытка интерпретировать, что ключ 2 несовместим в fsrootдереве, является чистой спекуляцией на данном этапе.

Нет способа конвертировать обратно в HFS + . Хотя есть неофициальный способ отказаться .

Нет необходимости в fsckкоманде, что означает, что FS попытается исправить что-то не так на лету, онлайн. Ни одна файловая система не может быть защищена от всех возможных повреждений или ошибок реализации. Если что-то не может быть исправлено в fsckавтономном режиме, то на самом деле нет шансов, чтобы это было исправлено онлайн.

Тем не менее, один потенциальный сценарий - это ошибка с fsckсистемным кодом, а не с ним, но опять же, это чистое предположение, не позволяющее понять, в чем дело. Это ваш выбор, но переформатирование - самый безопасный момент.

user71659
источник
Я не хочу делать это каждые несколько дней - это не долгосрочный вариант.
PJJ
Это возможно, но вряд ли вы столкнулись с ошибкой. Если вы переформатируете и переустанавливаете, и ошибка повторяется, я бы посмотрел на возможную аппаратную ошибку как на (и, возможно, более) вероятную, чем ошибка в APFS.
Стив Чемберс
Может или нет - проблема в том, что нет документации, нет источников, нет ничего. Можно найти флаги fsck_apf, выполнив поиск в двоичном файле - поэтому я советую держаться подальше от APFS до того дня, когда ядро ​​Linux сможет монтировать тома APFS в режиме r / w.
PJJ
2

Попробуйте проверить свою оперативную память.

У меня была похожая проблема с 10.13 (High Sierra) на iMac 2017 (18,3) с заводским SSD и сторонним ОЗУ. Я получал многократные зависания, и Дисковая утилита первой помощи сообщала об ошибках типа «Карта объектов недействительна» и выводит «Проверка или восстановление файловой системы не удалось». Каждый раз я переформатировал SSD и переустанавливал macOS и программное обеспечение, но проблема возвращалась через несколько дней. Он прошел Apple Diagnostics, и мой локальный Apple Store не смог обнаружить никаких аппаратных проблем (после того, как я удалил стороннюю RAM). У меня не было проблем на нескольких других компьютерах, включая 2 других iMac, MacBook и несколько виртуальных машин MacOS.

Для меня исправлено сопоставление ОЗУ по банкам, т. Е. Банк 0 (DIMM 0/1) содержит согласованную пару ОЗУ Apple, а Банк 1 (DIMM 0/1) содержит согласованную пару ОЗУ стороннего производителя.

Обновление 2018-01-06: только что получил еще один сбой через 1 неделю. (Это проблема со случайными сбоями). Я временно удалил стороннюю оперативную память, пока проводил больше испытаний.

Обновление 2018-01-22: после 10 дней с новой оперативной памятью проблема не возникла. Я считаю, что моя проблема была вызвана плохой оперативной памятью. (Может быть, APFS использует оперативную память в качестве кеша?).

Грег Глокнер
источник
Привет, Грег, я более / менее откатился на HFS - по своему личному опыту я настоятельно советую держаться подальше от APFS, пока Apple не выпустит либо исходные / правильные документы, ни сторонние реализации. Короче говоря - не трогайте APFS до тех пор, пока ядро ​​Linux не сможет его смонтировать :)
PJJ
Пользуюсь им с первого дня без проблем. Я думаю, что APFS не проблема здесь. Может быть плохое оборудование.
Пол-Себастьян Маноле
0

Я смог восстановить файлы после того, как создал образ диска из поврежденного раздела APFS, и его можно смонтировать.

ВэйЖи Ши
источник