LINUX.ORG.RU

Нечаянно убил партиции с XFS и EXT3, помогите восстановить!


0

0

Убил я их с дуру тем что в WinXP попытался раздел swap переформатировать в ntfs. Рухнуло все махом (Ext3 54мб, ReiserFS 10гб,XFS 80гб и EXT3 33гб), решил пока ничего не трогать. Первые два не особо важны, бэкап системы есть полный. Главное это XFS 80гб и EXT3 33гб, там дофига важного! Разделы в точности до килобайта я не помню, написал приблизительно, а то вроде можно было cfdisk зарядить. Что посоветуете?

Ответ на: комментарий от AlexFree

gpart. Мне помогло в аналогичной ситуации.

anonymous
()

Ну рейзер легко восстановить: reiserfsck --rebuild-tree -S -l file.log /dev/<что_там_у_тебя>

Lee_Noox ★★★
()

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

# chmod a+r /dev/hda
$ for i in `seq 0 24321`; do echo -n "$i: "; dd if=/dev/hda bs=8225280 count=1 skip="$i" 2>/dev/null | file -; done | grep -E "(XFS)|(ext[23])"

Где 24321 -- вы должны заменить на количество цилиндров в своём винте.
А 8225280 на размер цилиндра на своём винте.
Их можно узнать командой:

# sfdisk -l /dev/hda | head -n3

Disk /dev/hda: 24321 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

Для примера, вот что выдаёт sfdisk для hda2
# sfdisk -l /dev/hda | grep -E "(Device)|(hda2)"
   Device Boot Start     End   #cyls    #blocks   Id  System
/dev/hda2       2432    2443      12      96390   83  Linux

И мы можем убедиться, что та команда его найдёт:

$ for i in `seq 2432 2432`; do echo -n "$i: "; dd if=/dev/hda bs=8225280 count=1 skip="$i" 2>/dev/null | file -; done | grep -E "(XFS)|(ext[23])"
2432: /dev/stdin: Linux rev 1.0 ext3 filesystem data (needs journal recovery)

Т.е. команда правильно находит Start'ы -- а end'ы вы и сами расчитаете ;-)

В конце не забудьте
# chmod o-r /dev/hda

unDEFER ★★★★★
()

>Убил я их с дуру тем что в WinXP попытался раздел swap переформатировать в ntfs

Встречный вопрос, а кто тебе сказал, что ты их убил?
Я вижу что ты убил swap, естественно система не будет работать после этого.


Попробуй загрузиться с какого нибудь LiveCD или RescueCD и напусти на своп fdisk. Насколько я понимаю должно заработать.

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

Есть еще одна хорошая "искалка" разделов и "восстановитель" partition table. Называется SyMon. Кроме всего прочего прекрасный менеджер загрузок.
Ищется гуглем на раз.

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