Спасение раздела в Debian, когда пошло, что-то не так

Добрый день, уважаемые
Дело было вечером в четверг и один из наших админов, должен был сделать изменение размера диска на одной из виртуалок KVM. Казалось бы совсем тривиальная задача, но она может привести к потере данных вообще… И так… вся история уже под катом

Как я уже сказал — вечером в четверг (дождика вроде как не было) один из наших админов решили выполнить давно поставленную задачу и увиличить размер ФС внутри виртуалки KVM.

Предварительно я уже увеличил размер самого диска с 14 ГБ до 60ГБ и админу нужно было просто уже увеличить размер ФС внутри виртуальной машины.

Примерно в 12 ночи админ присылает сообщение — где спрашивает, должен ли быть раздел extented или primary… В ответ я ему написал, что нужно сделать так, как было до этого на самой виртуалки.

Время шло… и админ скидывает, что у него посыпались ошибки, что расширить раздел не получается… и он перестал монтироваться… на часах уже 2 ночи…

Я ему написал, чтобы он ничего уже не делал и оставил виртуальку в покое и сам пошел делать копию образа диска VM — назвав vmname_bad

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

На утро, со свежими мыслями поднимаю виртуалку с такой же ОС (Debian 9) и подключаю диск. через fdisk я вижу этот диск уже расширенный до 60GB и партицию… которая собственно немного битая.

Пытаюсь по скриншотам, что предоставил админ — найти предыдущую разметку, но увы тщетно. Пытаюсь через fdisk подобрать значения, но увы все попытки failed.

Раз fdisk мне не может помочь… призываю на помощь parted. Загрузим parted — я удаляю старую партицию rm 2 и зная примерные значения разбивки делаю rescue — указываю начальное значение и конечное значение, где может быть пратиция. Минутное ожидание и parted находит партицию и предлагает внести о ней информацию в систему — Я согласился и вышел из parted.

Монтирую раздел — все ОК. Файлы на месте все хорошо, но размер еще старый 14GB. Размонтировал /dev/sdd1 и делаю resize2fs /dev/sdd1, затем e2fsck /dev/sdd1 и монтирую вновь и вижу уже расширенный раздел со всеми файлами и вполне себе живой.

Все закончилось хорошо и для меня и для админа.

Источник: habr.com