LINUX.ORG.RU
ФорумAdmin

на xfs разделе выборочно пропали файлы


0

1

достаточно долго я пользовался nas My Book World Edition (1Tb).

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

если однако сделать cat /dev/md2, то среди всяких бинарных иногда по экрану пролетают текстовые данные: названия файлов, фрагменты кода текстовых и xml-файлов, хранившихся ранее на разделе.

Вопрос такой - что делать для восстановления информации, если это вообще возможно?

файловая система XFS.

testdisk: http://pastebin.com/Maj0khJk

>файловая система XFS.

=)

anonymous ()

для начала куда-нить сдампить содержимое дисков. потом уже можно экспериментировать.

А так смотри dmesg, fsck, etc... У xfs есть xfsdebug, xfsdump и вообще много чего полезного... :)

true_admin ★★★★★ ()

Вынуть диски из NAS`а, подключить к локальному компу, собрать рэйд попробовать смонтировать, если raid-1 (зеркало) то можно вынуть один винт и подмонтировать только его.

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

пробовал - не помогло. потому сюда и написал вопрос - хочу узнать как правильно пробовать.

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

kostik87, уже разобрал и подключил.
с рейдами я раньше не сталкивался - можешь подробнее описать что и как делать?

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

Ну для начала все же стоить узнать какой тип массива был, если зеркало, то можно пробовать монтировать просто винт, возможно с опцией offset и указанием файловой системы, если вы не знаете тип raid массива и/или файловую систему на нем, то тогда можно попробовать собрать raid.

1. Установить mdadm в вашу систему. 2. Просканировать систему на наличие raid массивов и собрать raid.

# mdadm --detail --scan > /etc/mdadm.conf
# mdadm --assemble /dev/md0 /dev/sdXY /dev/sdXY
# mdadm --assemble --scan

В принципе если после первой комманды достаточно будет добавить mdadm в стартовые сценарии и после перезагрузки raid должен быть собран, или же собрать его вручну, явно указав компоненты массива, тип и очередность дисков записана в суперблоке.

После чего можно порбовать монтировать /dev/md0.

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


вот что получилось в результате:

nemesis vitaliy # mdadm --assemble /dev/md0 /dev/sdb4 /dev/sdb4
mdadm: metadata format 00.90 unknown, ignored.
mdadm: cannot open device /dev/sdb4: Device or resource busy
mdadm: /dev/sdb4 has no superblock - assembly aborted

И

nemesis vitaliy # mdadm --assemble /dev/md2 /dev/sdb4 /dev/sdb4
mdadm: metadata format 00.90 unknown, ignored.
mdadm: device /dev/md2 already active - cannot assemble it
nemesis vitaliy # mdadm --assemble --scan
mdadm: metadata format 00.90 unknown, ignored.

какие будут рекомендации.

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

По поводу сообщения, видимо не совпадают версии mdadm.

Какой тип RAID, зеркало или страйп, яже вас спрашивал, или вы читаете только выборочно ?

Если зеркало, то можно просто попробовать смонтировать файловую систему с жесткого диска, поискав ее начало с помощью опции offset и точно указав тип файловой системы, вот здесь есть пример скрипта

http://www.linux.org.ru/forum/admin/6166512?lastmod=1303149979865#comment-616...

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

Попробуйте выполнить проверку файловой системы, но только сначала отмонтируйте ее, или перемонтируйте в «ro».

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

Так же скорее всего для запуска fsck.xfs вам придется записать в таблицу рзделов на одном из винтов запись о разделе, начинающемся с сетора, где начтнается суперблок файловой системя, вам скрипт должен вывести, лучше делать это с помощью /sbin/fdisk, перейдя в режим указания границ разделов в секторах, нажать «u».

Можете перед этим сделать копию mbr, что бы потом восстановить суперблок raid.
Сохранение
dd if=/dev/sdX of=~/sdX.mbr bs=512 count=1
Восстановления
dd if=~/sdX.mbr of=/dev/sdX bs=512 count=1

После этого создайте запись о разделе с помощью fdisk, конец раздела можно указать равным последнем сектору винта, файловая система сама знает какого она размера, после этого попробуйте fsck.xfs /dec/sdX1

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

>Попробуйте выполнить проверку файловой системы, но только сначала отмонтируйте ее, или перемонтируйте в «ro».

чем имеенно? xfs_check?


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

Вы все сообщение прочитали, или только первое предложение?

В последующих предложениях я описал чем выполнить проверку и что нужно сделать для этого.

«Так же скорее всего для запуска fsck.xfs вам придется записать в таблицу ...»

«После этого создайте запись о разделе с помощью fdisk, конец раздела можно указать равным последнем сектору винта, файловая система сама знает какого она размера, после этого попробуйте fsck.xfs /dec/sdX1 ...»

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

честно говоря, так как я не особо разбираюсь в том, что вы пишете, то мне и связь между вашими предложениями не очевидна. может вы мне через jabber, например, поможете?
мой vitaliy DD kulikov@@ гуглопочта

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

У меня нет jabber`а. Я всего лишь написал, что вам нужно выполнить проверку файловой системы на raid массиве, воспользоваашись утилитой fsck.xfs, но в качестве параметра, который ей необходимо передать должен быть или раздел, или жесткий диск, или образ, но чтобы файловая система начиналась на устройстве с самого начала, инача fsck.xfs не найдет суперблок файловой системы и не выполнит проверку.

Поэтому если вам нужно создать на устройстве (накопителе) раздел с указанием границ раздела, соотвествующих началу и концу файловой системы, если этого раздела нет.

Кстати вы не отписались, удалось вам собрать raid массив или нет, так как в этом сообщении вы пишете, что вам не удалось его собрать: на xfs разделе выборочно пропали файлы (комментарий)

Хотя потом в этом вроде у вас получилось: на xfs разделе выборочно пропали файлы (комментарий)

Если вы собрали raid массив, то зачем вы тогда монтируете скриптом в этом сообщении: на xfs разделе выборочно пропали файлы (комментарий)

Все таки отпишитесь, получилось у вас или нет собрать raid массив? И что выдает эта команда:

# mdadm --detail --scan

Если raid вы собрали и у вас он монтируется, то выполните проверку файловой системы

# mount /dev/mdX /mnt/mdx -t xfs
# umount /dev/mdx отмонтирование перед проверкой
# fsck.xfs /dev/mdx проверка (можете попробовать xfs_check)
но все это только в том случае, если у вас собирается raid.

Отпишитесь, у вас raid собирается из разделов, или напрямую из накопителей?

Жду для начала ответов на эти вопросы.

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

вот что я могу ответить на текст выше:
http://img135.imageshack.us/i/raidl.png/

далее
vitaliy@nemesis ~/tmp $ sudo mdadm --detail --scan

mdadm: metadata format 00.90 unknown, ignored.
ARRAY /dev/md1 level=raid1 num-devices=2 metadata=00.90 UUID=45fb8fd6:9fbf9c3d:ad18934b:408df25e
ARRAY /dev/md2 level=raid1 num-devices=2 metadata=00.90 UUID=3ca7a544:c7cbc32d:7df64a63:1bb9f2e2
ARRAY /dev/md0 level=raid1 num-devices=2 metadata=00.90 UUID=5b2750d4:44f02d53:df0d546f:097e1575
ARRAY /dev/md3 level=raid1 num-devices=2 metadata=00.90 UUID=0a61682b:9971b566:1b7290b6:16c2f0cb


raid собирается из разделов. сама железка - это терабайтный накопитель с четырьмя разделами (фактически это разобранный My book world edition от WD - http://www.thg.ru/network/western_digital_mybook_world_edition/index.html)

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

Выполните проверку файловых систем на разделах, затем пробуйте монтировать.

Есть еще вариант просто откатиться на прошивку, которая была у вас до этого.

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