LINUX.ORG.RU

Оживление XFS на qcow2 образе.

 , , , ,


0

1

Всем здрасьте. Есть Debian сервер с софтовым RAID1. На этом сервере крутилась виртуалочка (qemu-kvm) с qcow2 образом подключенным как virtio.

Месяцев этак 3-4 назад один из жестких из рейда приказал долго жить, md его пометил как fault, и все бы ничего, но за происходяшим никто не следил, и примерно с пару месяцев назад сбоить начал и оставшийся жестак из рейда (для него smart вроде еще более менее, но в kern.log постоянно unrecoverable IO error сыпятся).

Кульминацией стало то, что система внутри виртуалки сказала «С ФС какой-то холищит, я ее отрублю, сделайте с ней что-нибудь а потом пробуйте подключить обратно». Оной ФС является XFS (виртуалка развертывалась из iso файла выданного одной конторой, внутри тот же Debian x64 с XFS home разделом, в котором был расположен целевой софт со всеми своими приблудами).

Намедни это все всплыло, виртуалка была потушена, мертвый жестак из рейда заменен и рейд засинкан с тем что еще живо (опять же при синхронизации жесткий-источник ругался, как черт, вышеупомянутыми IO error'ами, так что данные походу битые в итоге).

Ну и собственно пробовал вчера вечером извлечь хоть какую-то информацию из образа (qcow2) виртуалки. Ничего не вышло:

Подключал с помощью qemu-nbd разделы из образа к /dev/nbd*, etx4 на / монтируется норм. А вот XFS на /home не монтируется говорит:

[38125.014191] SGI XFS with ACLs, security attributes, realtime, large block/inode numbers, no debug enabled
[38125.016216] SGI XFS Quota Management subsystem
[38125.017242] XFS (nbd0): bad magic number
[38125.017256] XFS (nbd0): SB validate failed

Проверка xfs_check:

xfs_check: /dev/nbd0 is not a valid XFS filesystem (unexpected SB magic number 0x00036163)
xfs_check: size check failed
xfs_check: WARNING - filesystem uses v1 dirs,limited functionality provided.
xfs_check: read failed: Недопустимый аргумент
cache_node_purge: refcount was 1, not zero (node=0x19877390)
xfs_check: cannot read root inode (22)
cache_node_purge: refcount was 1, not zero (node=0x198774e0)
xfs_check: cannot read realtime bitmap inode (22)
xfs_check: size check failed
xfs_check: WARNING - filesystem uses v1 dirs,limited functionality provided.
xfs_check: read failed: Недопустимый аргумент
bad superblock magic number 36163, giving up

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

Отдаю себе отчет, что скорее всего все скажут «Ага не делаете бэкапы - страдайте падлы», но может есть у кого мыслишки что еще можно попробовать сделать перед тем, как окончательно махнуть шашкой.

А вообще суперблок там имеется?

В начале раздела должна быть сигнатура XFSB, она там есть? Нулевой сектор раздела с самого начала сектора.

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

olegkrutov ()

вот у меня так xfs на vbox сдохла. три ноды подряд с интервалом в пару дней. в итоге перелез на ext4

upcFrost ★★★★★ ()
Ответ на: комментарий от upcFrost

А как Вы считаете, подобное происходит из-за того, что ошибки в IO гипервизора накладываются на его манипуляции над образом виртуалки, секторы которого становятся поврежденными и т.о. ФС виртуалки превращается в винегрет («эффект бабочки» если можно так выразиться) или это просто именно XFS так чувствительна к IO ошибкам аппаратуры хранения (в данном случае ею является эмулируемый hdd).

solveMe ()
Ответ на: комментарий от solveMe

А пёс его знает. Про vbox + xfs народ правда жаловался, так что вполне возможно что оно чувствителен к каким-то подобным манипуляциям, хз. При том что он дохнет не во время нештатной ситуации, а просто стоит, стоит и бац - сдох. Вот прямо так.

upcFrost ★★★★★ ()
Ответ на: комментарий от upcFrost

Звучит слишком фантастично, у меня такого за 12 лет не было нигде.

Едиственный вопрос: может у тебя xfs v5? С ним я еще не работал.

anonymous ()

читая лор ощущение, что в дебиане/бубунте можно пользоваться только ext3, всё остальное вечно дохнет.

Автор, переезжай на centos, там xfs не дохнет. И не слушай фанатиков ext4, которые тебе потом будут советовать удалять виртуалки и создавать заново, удалять директории и создавать заного и тд. бери Centos 7, там xfs по умолчанию, живая и с дровами от 4 ветки ядра для xfs.

erzentdededd ()
Ответ на: комментарий от erzentdededd

И много у тебя Centos7 на VBox'e? Как всегда атака клоунов!

anonymous ()
Ответ на: комментарий от erzentdededd

Не ну в моем случае, то грешить именно на XFS будет несправедливо. Хотя ext4 раздел и выжил в отличии от XFS, он практически простаивал. А так то, пока аппаратура сыпаться не начала никаких нареканий к XFS. Ради праздного любопытства погуглил xfs vs ext4, как обычно мнения разделились но в плане надежности все более менее соглашаются в пользу ext4 вроде.

solveMe ()
Ответ на: комментарий от anonymous

может у тебя xfs v5?

честно, хз, никогда сам такого не ожидал. Хз потому что виртуалки делались на 7-ой центоси на скорую руку для демонстрации, типа «ок-ок-далее-ок». Поскольку они все равно не были предназначены для дальнейшего использования, я особо не заморачивался что там за фс по дефолту установщик пихает. Но сам результат меня поразил. И кстати на форумах vbox про это тоже писали что мол есть косяк

upcFrost ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.