LINUX.ORG.RU

История изменений

Исправление kostik87, (текущая версия) :

Если данные важны были, то используй утилиту по восстановлению файлов, например GetDataBack for NTFS, она платная и под Windows, может под PE запустишь, но придётся либо покупать либо искать в Internet.

А так, ты в начале опиши, что с диском делали, если просто изменили таблицу разделов, то можно поискать по диску границы разделов и потом заново посредством fdisk воссоздать разметку на диске.

Для поиска разделов тебе поможет вот этот скрипт:

#!/bin/sh
for ((sector=62; ; sector++))
do
   offset=$(($sector*512))
   cmd="mount -t ntfs-3g /dev/sdb /mnt/tmp/ -o ro,offset=$offset"
   echo "sector: $sector offset: $offset"
   $cmd 2>/dev/null && echo "partition found @ offset $offset!" && break
done
За пояснением вот сюда: grub rescue no such partition (комментарий)

Или вот этот скрипт:

#!/usr/bin/perl -w
for ($sector = 0; ; $sector++)
{
$offset = $sector * 512;
$cmd = "mount /dev/sdb /mnt/tmp -t xfs -o ro,offset=$offset > /dev/null";
`$cmd`;
print "sector: $sector offset: $offset\n";
die "partition found @ offset $offset!" if ($? == 0);
} 
он по функционалу аналогичен, только написан на perl. вопрос по dd и mount (комментарий)

Ну, а если там уже перезаписаны данные, то только восстанавливать данные посредством указанной выше утилиты, ну или просто размечать диск сразу по новой.

Исправление kostik87, :

Если данные важны были, то используй утилиту по восстановлению файлов, например GetDataBack for NTFS, она платная и под Windows, может под PE запустишь, но придётся либо покупать либо искать в Internet.

А так, ты в начале опиши, что с диском делали, если просто изменили таблицу разделов, то можно поискать по диску границы разделов и потом заново посредством fdisk воссоздать разметку на диске.

Для поиска разделов тебе поможет вот этот скрипт:

#!/bin/sh
for ((sector=62; ; sector++))
do
   offset=$(($sector*512))
   cmd="mount -t ntfs-3g /dev/sdb /mnt/tmp/ -o ro,offset=$offset"
   echo "sector: $sector offset: $offset";
   $cmd 2>/dev/null && echo "partition found @ offset $offset!" && break
done
За пояснением вот сюда: grub rescue no such partition (комментарий)

Или вот этот скрипт:

#!/usr/bin/perl -w
for ($sector = 0; ; $sector++)
{
$offset = $sector * 512;
$cmd = "mount /dev/sdb /mnt/tmp -t xfs -o ro,offset=$offset > /dev/null";
`$cmd`;
print "sector: $sector offset: $offset\n";
die "partition found @ offset $offset!" if ($? == 0);
} 
он по функционалу аналогичен, только написан на perl. вопрос по dd и mount (комментарий)

Ну, а если там уже перезаписаны данные, то только восстанавливать данные посредством указанной выше утилиты, ну или просто размечать диск сразу по новой.

Исходная версия kostik87, :

Если данные важны были, то используй утилиту по восстановлению файлов, например GetDataBack for NTFS, она платная и под Windows, может под PE запустишь, но придётся либо покупать либо искать в Internet.

А так, ты в начале опиши, что с диском делали, если просто изменили таблицу разделов, то можно поискать по диску границы разделов и потом заново посредством fdisk воссоздать разметку на диске.

Для поиска разделов тебе поможет вот этот скрипт:

#!/bin/sh
for ((sector=62; sector<=625142448 ; sector++))
do
   offset=$(($sector*512))
   cmd="mount -t ntfs-3g /dev/sdb /mnt/tmp/ -o ro,offset=$offset"
   echo "sector: $sector offset: $offset";
   $cmd 2>/dev/null && echo "partition found @ offset $offset!" && break
done
За пояснением вот сюда: grub rescue no such partition (комментарий)

Или вот этот скрипт:

#!/usr/bin/perl -w
for ($sector = 0; ; $sector++)
{
$offset = $sector * 512;
$cmd = "mount /dev/sdb /mnt/tmp -t xfs -o ro,offset=$offset > /dev/null";
`$cmd`;
print "sector: $sector offset: $offset\n";
die "partition found @ offset $offset!" if ($? == 0);
} 
он по функционалу аналогичен, только написан на perl. вопрос по dd и mount (комментарий)

Ну, а если там уже перезаписаны данные, то только восстанавливать данные посредством указанной выше утилиты, ну или просто размечать диск сразу по новой.