Когда я управляю VPS, я использовал fdisk
настроить перегородки. Но когда я перезагружался, сервер жаловался, что block count 2780624 exceeds size of device (2441472 blocks)
и вошел emergency mode
.
Я сделал резервную копию раздела, но в аварийном режиме не было fdisk
команда восстановления разделов.
В настоящее время я мог либо войти в аварийный терминал, либо до того, как он войдет в терминал grub через VNC. В аварийном режиме доступны следующие команды: Скриншот команд / bin, Скриншот команд / sbin
Я впервые сталкиваюсь с такой проблемой, поэтому, если вам понадобится дополнительная информация, я предоставлю ее как можно скорее.
Редактировать:
fdisk
, gpart
, cfdisk
, sfdisk
доступный.Редактировать: Я обнаружил, что моментальный снимок сервера можно захватить и загрузить. Легче ли восстановить данные локально?
Если действительно важно восстановить эти данные, можно также использовать vi в качестве шестнадцатеричного редактора и исправить с его помощью таблицу разделов. Это будет непросто и требует (полностью) понимания двоичного формата MBR и его раздела таблицы разделов.
Даже при использовании fdisk вам понадобится структура разделов, которая была у вас раньше. Поскольку вы не указали используемый вами дистрибутив Linux, мы можем только догадываться: некоторые возможности:
Вероятно, существуют другие, о которых я не знаю. Рядом: fdisk обычно находится в / sbin, поэтому должен быть доступным. Вы проверили свою среду PATH?
И если ваш провайдер VPS не предлагает среду спасения с соответствующими инструментами, вам следует подумать о смене провайдера ...
Основываясь на опубликованной информации, я не могу найти решение, если ваша проблема действительно связана с таблицей разделов.
Вы можете вызвать сеть (есть ip и dhclient), но нет инструмента для получения чего-либо из Интернета или другого сервера.
Тем не менее я сомневаюсь, что fdisk, показанный на вашем скриншоте, - это то, что сохраняется, поскольку блоки указывают, что sda2 должен быть в пределах диска (за исключением того, что вы каким-то образом уменьшили свой диск). Чтобы разобраться в этом подробнее, было бы полезно увидеть вывод dmesg & mount. Обычно /
монтируется на этапе initrd на /sysroot
когда CentOS загружается, и с chroot внутри initrd часто можно использовать утилиты на корневом диске для целей восстановления. Тем не менее, чтобы продвинуться вперед, потребуется смонтировать корневой раздел.
Если начальные секторы раздела в таблице разделов верны, это возможно.