LINUX.ORG.RU

Восстановление XFS после резкого отключения питания

 , , ,


0

2

Всем здравствуйте. Имеется жесткий диск с файловой системой XFS, после резкого отключения питания не монтировался.

ivan@ivan-NB154:~$ sudo mount /dev/sdb1 /mnt/wd-blue 
mount: /mnt/wd-blue: wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error.

Я запустил xfs_repair:

ivan@ivan-NB154:~$ sudo xfs_repair -v /dev/sdb1
Phase 1 - find and verify superblock...
       - block cache size set to 173048 entries
Фаза 2 - использование внутреннего журнала
       - zero log...
zero_log: head block 0 tail block 0
       - scan filesystem freespace and inode maps...
       - found root inode chunk
Phase 3 - for each AG...
       - scan and clear agi unlinked lists...
       - process known inodes and perform inode discovery...
       - agno = 0
       - agno = 1
       - agno = 2
       - agno = 3
       - agno = 4
       - process newly discovered inodes...
Фаза 4 - поиск повторяющихся блоков...
       - setting up duplicate extent list...
       - check for inodes claiming duplicate blocks...
       - agno = 1
       - agno = 0
       - agno = 2
       - agno = 3
       - agno = 4
Phase 5 - rebuild AG headers and trees...
       - agno = 0
       - agno = 1
       - agno = 2
       - agno = 3
       - agno = 4
       - reset superblock...
Phase 6 - check inode connectivity...
       - resetting contents of realtime bitmap and summary inodes
       - traversing filesystem ...
       - agno = 0
       - agno = 1
       - agno = 2
       - agno = 3
       - agno = 4
       - traversal finished ...
       - moving disconnected inodes to lost+found ...
Phase 7 - verify and correct link counts...

       XFS_REPAIR Summary    Wed Mar  8 12:25:13 2023

Phase		Start		End		Duration
Phase 1:	03/08 12:24:56	03/08 12:24:57	1 second
Phase 2:	03/08 12:24:57	03/08 12:24:58	1 second
Phase 3:	03/08 12:24:58	03/08 12:25:06	8 seconds
Phase 4:	03/08 12:25:06	03/08 12:25:06	
Phase 5:	03/08 12:25:06	03/08 12:25:06	
Phase 6:	03/08 12:25:06	03/08 12:25:13	7 seconds
Phase 7:	03/08 12:25:13	03/08 12:25:13	

Total run time: 17 seconds
done

но смонтировать раздел так и не удается, та же самая ошибка что и в начале была. Тогда я запустил xfs_repair с флагом -L:

ivan@ivan-NB154:~$ sudo xfs_repair -L /dev/sdb1
Phase 1 - find and verify superblock...
Фаза 2 - использование внутреннего журнала
       - zero log...
       - scan filesystem freespace and inode maps...
clearing needsrepair flag and regenerating metadata
       - found root inode chunk
Phase 3 - for each AG...
       - scan and clear agi unlinked lists...
       - process known inodes and perform inode discovery...
       - agno = 0
       - agno = 1
       - agno = 2
       - agno = 3
       - agno = 4
       - process newly discovered inodes...
Фаза 4 - поиск повторяющихся блоков...
       - setting up duplicate extent list...
       - check for inodes claiming duplicate blocks...
       - agno = 0
       - agno = 1
       - agno = 2
       - agno = 3
       - agno = 4
Phase 5 - rebuild AG headers and trees...
       - reset superblock...
Phase 6 - check inode connectivity...
       - resetting contents of realtime bitmap and summary inodes
       - traversing filesystem ...
       - traversal finished ...
       - moving disconnected inodes to lost+found ...
Phase 7 - verify and correct link counts...
Maximum metadata LSN (1:136152) is ahead of log (1:2).
Format log to cycle 4.
done
ivan@ivan-NB154:~$ sudo mount /dev/sdb1 /mnt/wd-blue 
mount: /mnt/wd-blue: wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error.

и как видно из вывода, та же самая ошибка. Как восстановить раздел? И ещё, подскажите, какая файловая система наиболее устойчива к резким отключениям питания?

XFS самая неподходящая для случаев потери питания FS. Соболезную.

какая файловая система наиболее устойчива к резким отключениям питания?

Таких не существует. Как и людей устойчивых к удару в голову например. Даже профессиональные боксёры от этого умирают. Решайте саму проблему, а не боритесь с последствиями. К тому же обычно перебои в электросети ещё и бросками напряжения сопровождаются, есть шанс и железо потерять.

Купите бесперебойник (а лучше стабилизатор+бесперебойник, или online\line-interactive модель бесперебойника, они сами стабилизируют), свяжите его с компьютером и настройте автоматическое отключение при пропадении питания. Они недорогие, если от них нужно продержаться минут пять максимум, до того как система «разгрузится» и выключится, большой запас по ёмкости аккумуляторов не нужен. И пользуйтесь любой ФС по вкусу.

Jameson ★★★★★
()
Последнее исправление: Jameson (всего исправлений: 3)

Не монтируется из-за плохого суперблока по идее. Скопируйте первые скажем 2 Мб диска с помощью dd и киньте куда-нибудь, я посмотрю что с вашим суперблоком.

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

UFS2 с включенным SoftUpdates обеспечивает группирование транзакций записи в памяти и быструю запись большого пакета данных из этого буфера. При выключении питания опасность лишь потерять данные из этого блока, а файловая система остаётся в целостности.

После сбоя питания на UFS2 и включения компьютера начинает работу fsck в фоне, не мешая штатной работе сервисов и программ и освобождая ранее зарезервированные для записи области диска — этим обеспечивается восстановление свободного пространства. Какие-то фрагменты недописанного он может сложить в каталог /.lost+found, если это будет важно для восстановления.

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

Так у меня итак компьютер подключен к бесперебойнику, когда какой-то скачок напряжения то ибп щелкает, иногда очень частые эти щёлканья, то есть получается что ибп не стабилизирует ничего

ivan333FF
() автор топика

И ещё, подскажите, какая файловая система наиболее устойчива к резким отключениям питания?

У меня довольно часто бывают жесткие отключения питания и я еще ни разу не имел проблем с ext4. Возможно какие-то данные потеряются при записи, но чтобы после этого она не монтировалась, ее нужно было чинить – я даже представить себе не могу.

Im_not_a_robot ★★★★★
()

3.5. Repairing an XFS File System

Предупреждение

Утилита xfs_repair не может восстановить файловую систему XFS с грязным журналом. Чтобы очистить журнал, смонтируйте и размонтируйте файловую систему XFS. Если журнал поврежден и не может быть воспроизведен повторно, используйте опцию -L(«принудительное обнуление журнала»), чтобы очистить журнал, то есть . Имейте в виду, что это может привести к дальнейшему повреждению или потере данных. xfs_repair -L /dev/device
iZEN ★★★★★
()
Последнее исправление: iZEN (всего исправлений: 2)

в общем, отключил я жесткий диск, потом через несколько часов попытался обычно его примонтировать, и все удалось, не знаю как это сработало, после того что я написал выше, я больше ничего не делал и просто выключил компьютер, а с ним и остановился жёсткий диск.

ivan333FF
() автор топика
Ответ на: комментарий от ValdikSS

автору предложили смонтировать ФС с -t xfs, и оно смонтировалось.

(а) а разве это необходимо при наличии соответствующей записи в fstab, и (б) хоть где-то было озвучено что такой записи нет? Или я что-то совсем упускаю (volumeID затёрся итп)?

bugfixer ★★★★
()