Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Redhat/Fedora - Помогите плиз восстановить большой раздел

Ответить
Настройки темы
Redhat/Fedora - Помогите плиз восстановить большой раздел

Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Hello,

Расскажу я грустную, но поучительную историю. Есть в наличии сервер с рейдконтроллером и двумя массивами на нем и установленной Fedora 8 x86_64, ядро 2.6.24.3-12. Про первый массив вдаваться в подробности не буду, с ним все ok. Второй массив имеет объем 6 террабайт (точнее, чуть меньше, 5 с копейками). Я его разбил parted-ом на три раздела по 1.9 террабайта и взгромоздил xfs. Все три раздела успешно жили и не тужили. В прошлую субботу мне пришлось перегрузить сервер (абсолютно корректно reboot). После загрузки mount отказался монтировать третий раздел sdb3. После обследования получил следующую информацию. Судя по всему, третий раздел в таблице разделов сейчас прописан с совершенно неверными цифрами. А именно:

fdisk -l
Диск /dev/sdb: 5999.9 ГБ, 5999909928960 байт
255 heads, 63 sectors/track, 729447 cylinders
Units = цилиндры of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00094bb7

Устр-во Загр Начало Конец Блоки Id Система
/dev/sdb1 1 243032 1952148437+ 83 Linux
/dev/sdb2 243032 486063 1952148437+ 83 Linux
/dev/sdb3 218714 461988 1954101562+ 83 Linux
Units = цилиндры of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00094bb7

Устр-во Загр Начало Конец Блоки Id Система
/dev/sdb1 1 243032 1952148437+ 83 Linux
/dev/sdb2 243032 486063 1952148437+ 83 Linux
/dev/sdb3 218714 461988 1954101562+ 83 Linux

То есть sdb3 как бы наложен на sdb1 и sdb2. sdb1 и sdb2 сейчас чувствуют себя нормально, монтируются и работают. То есть, насколько я понимаю, надо прописать в таблицу разделов правильные стартовый и финальный сектора для sdb3. Только как это сделать ? Пробовал использовать sfdisk, но он меня мягко говоря, послал. Сначала я снял дамп с sdb и получил файл следующего содержания:

# таблица разделов /dev/sdb
unit: sectors

/dev/sdb1 : start= 1, size=3904296875, Id=83
/dev/sdb2 : start=3904296876, size=3904296875, Id=83
/dev/sdb3 : start=3513626455, size=3908203125, Id=83
/dev/sdb4 : start= 0, size= 0, Id= 0

/dev/sdb1 : start= 1, size=3904296875, Id=83
/dev/sdb2 : start=3904296876, size=3904296875, Id=83
/dev/sdb3 : start=3513626455, size=3908203125, Id=83
/dev/sdb4 : start= 0, size= 0, Id= 0

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

cat mysdb_sfdisk_new_1
# таблица разделов /dev/sdb
unit: sectors

/dev/sdb1 : start= 1, size=3904296875, Id=83
/dev/sdb2 : start=3904296876, size=3904296875, Id=83
/dev/sdb3 : start=7808593751, size=3909972304, Id=83
/dev/sdb4 : start= 0, size= 0, Id= 0

и скормил его sfdisk-у на запись. Он меня с этим файлом послал следующими ругательствами:
sfdisk -n /dev/sdb < mysdb_sfdisk

Диск /dev/sdb: 729447 цилиндров, 255 головок, 63 секторов/дорожку
Старая ситуация:
Единицы = цилиндры по 8225280 байт, блоки по 1024 байт, начиная с 0

Устр-во Загр Нач Конец #цил #блоки Id Система
/dev/sdb1 0+ 243031- 243032- 1952148437+ 83 Linux
/dev/sdb2 243031+ 486062- 243032- 1952148437+ 83 Linux
/dev/sdb3 218713+ 461987- 243275- 1954101562+ 83 Linux
/dev/sdb4 0 - 0 0 0 Пустой

Новая ситуация:
Единицы = секторы по 512 байт, начиная с 0

Устр-во Загр Начало Конец #секторы Id Система
/dev/sdb1 1 3904296875 3904296875 83 Linux
/dev/sdb2 3904296876 7808593750 3904296875 83 Linux
/dev/sdb3 7808593751 11718566054 3909972304 83 Linux
/dev/sdb4 0 - 0 0 Пустой

Предупреждение: раздел 1 не заканчивается на границе цилиндра
/dev/sdb3 7808593751 11718566054 3909972304 83 Linux
/dev/sdb4 0 - 0 0 Пустой

Предупреждение: раздел 1 не заканчивается на границе цилиндра

sfdisk: Не нравятся мне эти разделы - ничего не изменено.
(Если вы действительно хотите этого, используйте опцию --force.)

Попробовал я его запустить с командой --force (предварительно, на всякий случай, сделав dd if=/dev/sdb of=sdb_part bs=512 count=1). Он это дело проглотил, сказал "записываю .. перечитываю таблицу .. не забудьте подправить fstab .." После этого я предложил ему рассказать про обновленную таблицу разделов и просто офигел, когда увидел в дампе те же самые цифры, что и в самом начале. То есть sdb3 начинался с того же 3513626455 сектора. Вот, собственно, и сказочке конец. Теперь обращаюсь к многоуважаемой общественности. Подскажите пожалуйста почему так неуважительно ведет себя sfdisk и можно ли как-то попытаться прописать правильные цифры для sdb3, дабы попытаться вытянуть этот раздел без переразбиения ?

Отправлено: 14:56, 28-10-2008

 


Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Redhat/Fedora - Помогите плиз восстановить большой раздел

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Как восстановить скрытый раздел ноутбука? 2-D Ноутбуки 0 31-10-2009 14:31
Как восстановить скрытый раздел? LaoTsi Ноутбуки 2 06-02-2009 11:22
HDD - [решено] помогите восстановить раздел после реразбивки browser Накопители (SSD, HDD, USB Flash) 4 20-11-2008 18:05
HDD - Восстановить раздел 10ГБ, созданный VISTA Andrey40 Накопители (SSD, HDD, USB Flash) 2 20-02-2008 19:58
Как восстановить раздел? foxIG Общий по Linux 3 31-03-2007 00:24




 
Переход