случайно сделал fdisk -u /dev/vg00/db1
123carter 6 ноября, 2012 - 14:30
вообщем случайно не тот взял надо было db2 на виртуальной машине а сделал fdisk -u /dev/vg00/db1
ахтунг там боевая база
выдал
Команда (m для справки): w
Таблица разделов была изменена!
Вызывается ioctl() для перечитывания таблицы разделов.
ПРЕДУПРЕЖДЕНИЕ: Перечитывание таблицы разделов завершилось неудачей с ошибкой 22: Недопустимый аргумент.
Ядро все еще использует старую таблицу.
Новая таблица будет использована при следующей перезагрузке.
Диск /dev/vg00/db1: 4294 МБ, 4294967296 байт
24 heads, 24 sectors/track, 14563 cylinders, всего 8388608 секторов
Единицы = секторы по 1 * 512 = 512 байт
Устр-во Загр Начало Конец Блоки Id Система
/dev/vg00/db11 2048 8388607 4193280 83 Linux
Команда (m для справки): d
Выбранный раздел 1
Команда (m для справки): n
Действие команды
e расширенный
p основной раздел (1-4)
p
Номер раздела (1-4): 1
Первый сектор (24-8388607, по умолчанию 24): 2048
Последний сектор или +size или +sizeM или +sizeK (2048-8388607, по умолчанию 8388607):
Используется значение по умолчанию 8388607
Команда (m для справки): w
Таблица разделов была изменена!
Вызывается ioctl() для перечитывания таблицы разделов.
ПРЕДУПРЕЖДЕНИЕ: Перечитывание таблицы разделов завершилось неудачей с ошибкой 22: Недопустимый аргумент.
Ядро все еще использует старую таблицу.
Новая таблица будет использована при следующей перезагрузке.
щас всё работает
вопрос после перезагрузки виртуалки всё слетит у меня??
»
- Для комментирования войдите или зарегистрируйтесь

Вот скрипт:#!/usr/bin/perl
Вот скрипт:
#!/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); }Поможет найти границы файловых систем (разделов).
Вместо /dev/sdb укажите /dev/vg00/db1 вместо xfs укажите тип файловой системы на удалённых разделах (записях из partition table).
Основываясь на данных из /proc/partitions
можете расчитать вторую границу удалённых разделов (записей из partition table).
Если записей (разделов) было несколько то указывая другое значение $sector = 0 и тип файловой системы продолжайте поиск границ удалённых записей (разделов).
Затем с помощью всё того же fdisk запишите новую старую таблицу разделов.
спасибо..я так понимаю я там
спасибо..я так понимаю я там точно повредил всё?
Ну по вашим словам вы только
Ну по вашим словам вы только затёрли таблицу разделов. Вам достаточно найти границы разделов (файловых систем) и заново создать таблицу разделов, скрипт вам поможет.
Если вы ни чего не скрываете то данные целы.
Ну а создание / редактирование с помощью fdisk таблицы разделов не затрагивает данные и не приводит к созданию файловых систем, так что найдя границы разделов и сделав правильные записи с помощью fdisk вы восстановит всё до прежнего состояния без потерь.
а разве я не сделал те же
а разве я не сделал те же самые границы??
как было 2048 и 8388607 так и осталось?
Проверьте: mkdir
Проверьте:
Или какая там у вас файловая система.
ext4
ext4