У меня есть диск от Buffalo LinkStation, на котором есть раздел XFS, который я не могу смонтировать.
Вставьте диск в контейнер SATA-> USB на коробке Ubuntu. Получаю следующее:
$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdb1 63 594404 297171 83 Linux
/dev/sdb2 594405 1590434 498015 83 Linux
/dev/sdb4 1590435 976768064 487588815 5 Extended
/dev/sdb5 1590498 1863539 136521 82 Linux swap / Solaris
/dev/sdb6 1863603 976494959 487315678+ 83 Linux
Проблемный раздел - / dev / sdb6.
$ sudo xfs_check /dev/sdb6
ERROR: The filesystem has valuable metadata changes in a log which needs to
be replayed. Mount the filesystem to replay the log, and unmount it before
re-running xfs_check. If you are unable to mount the filesystem, then use
the xfs_repair -L option to destroy the log and attempt a repair.
Note that destroying the log may cause corruption -- please attempt a mount
of the filesystem before doing this.
Таким образом, использование опции xfs_repair -L приводит меня к ситуации, дальше которой я не могу выйти:
$ sudo xfs_repair -L /dev/sdb6
Phase 1 - find and verify superblock...
superblock read failed, offset 382252089344, size 131072, ag 89, rval -1
fatal error -- Input/output error
С помощью photorec мне удалось извлечь некоторые файлы из этого раздела, так что данные есть, и диск физически работает. Однако есть проблема с суперблоками.
Как мне восстановить этот раздел?
Приведенные выше ответы не помогли мне, когда у меня была эта проблема сегодня (около 9,5 часов назад). Я представлю здесь решение, которое сработало для меня, а также причины, по которым предыдущий ответ не помог.
/home
не может быть сохранен / отредактирован и т. д. или какой-либо каталог в списке.dmesg
где-то показал xfs_do_force_shutdown called
вокруг нескольких других сообщений xfs.xfs_repair
не удалось на этапе 1 с superblock read failed
с последующим fatal error -- Input/output error
/
, т.е. только /home
не работал).mount
приведет к superblock cannot be found
(или аналогичная) ошибка, но нет подсказки, что делать дальше.Решение основано на эта почта Найджел Смит, главный автор XFS (если я правильно понял). Я повторно опубликую шаги здесь, если предыдущая ссылка устареет. Все следующие операции должны выполняться как root
(очевидно).
smartctl -t long /dev/sda
. Это может занять некоторое время. Вы также можете запустить короткий тест с помощью smartctl -t short /dev/sda
если есть относительно недавний длительный тест (как было в моем случае).smartctl -l selftest /dev/sda
или smartctl -a /dev/sda
(последний все отображает, но нужная информация находится почти в самом конце).LBA_of_first_error
. Это позиция первой ошибки на диске. Из последнего теста (который будет пронумерован "# 1" и будет находиться в верхней части списка) возьмите отображаемое число, разделите его на восемь и усеките до целого числа (см. Исходный пост о том, почему).# dd if=/dev/zero of=/dev/sda conv=sync bs=4096 count=1 seek=*NUMBER_COMPUTED_EARLIER*
smartctl -A /dev/hda | egrep 'Reallocated|Pending|Uncorrectable'
В моем случае я повторял шаги с 1 по 4, пока не уменьшил число ошибок до 24.xfs_repair /dev/sda
(без в -L
флаг). Вероятно, это сообщит, что вам следует попытаться смонтировать файловую систему из-за ошибок журнала журнала.xfs_repair -L /dev/sda
который удаляет журнал журнала (что может привести к удалению данных)./home
.xfs_check
было устаревшим в пользу xfs_repair -n
.apt-get install xfsprogs
только чтобы понять, что это Debian, их «стабильные» пакеты буквально на годы отстают. Короче говоря, xfs_repair /dev/sda
просто висел навсегда. Процесс не удалось убить (даже с помощью sigterm).После ошибки воспроизведения XFS попробуйте снова СМОНТИРОВАТЬ раздел, как указано в сообщении об ошибке.
Если все станет слишком запутанным, настоятельно рекомендую скачать UFS Explorer чтобы помочь с глубоким восстановлением файлов из другой системы.
У меня есть раздел XFS на "sda6". В Lubuntu это исправлено, не исправляется и не монтирует раздел XFS на 13.10. При загрузке Lubuntu он говорит, что нужно исправить и попробовать при загрузке исправить файловую систему XFS. Когда я пошел на первую установку Lubuntu, в разделе написано Неизвестно.
Lubuntu не исправил. Используя команду xfs_check для меня не решено.
Я наконец решил вернуться к Debian 7 и переустановите. Это обнаружен все файловые системы и нормально смонтированный XFS раздел.
Я читал много пользователей о файловых системах XFS, поэтому я думаю, что это проблема с изменениями версий ядра, потому что Debian 7 использует версию 3.2 и монтирует XFS обычно без ошибок, но на Ubuntu с последним ядром 3.11 не решает файловую систему XFS.
Я пробовал с CentOS 6.5, но CentOS продолжить работу с RedHat и со старым "стабильным" ядром. Это не будет обнаружен XFS автоматически.
Наконец-то я на Debian 7 делает резервную копию всех данных на разделе XFS и воссоздайте разделы на EXT4.
Из-за того, что RedHat не исправит раздел чтения XFS и некоторые проблемы с XFS (погуглите, сколько пользователей не решило разделы чтения XFS), я обычно выбираю Debian для резервного копирования и перехода на новый, совместимый с ядром 3.11, на EXT4 / btrfs ... файловые системы.
Надеюсь, это кому-то поможет.
Я исправил свой раздел XFS, используя новый загруженный Debian 8.7.1 поверх реального сервера, просто поместил диск поверх этой системы, и он автоматически исправился. Centos 5 и 6 не могут отремонтировать