Назад | Перейти на главную страницу

Регулярное обновление apt-get сломало grub

Вчера я запустил регулярное обновление (aptitude safe-upgrade) на сервере моей жены (корневой сервер Hetzner с аппаратным RAID), и с тех пор сервер не загружался должным образом. Я могу загрузить сервер с помощью системы аварийного восстановления Hetzner (которая AFAICS аналогична загрузке локального ПК с live CD), смонтировать диски и подключиться к системе. Я запустил fsck для каждого раздела, и все они в порядке. Во время chroot-доступа к ОС из системы аварийного восстановления я сделал следующее

Глядя на /var/log/apt/term.log Я вижу, что во время обновления произошла следующая ошибка:

Setting up grub-pc (1.99-21ubuntu3.15) ... /usr/sbin/grub-setup: warn: Attempting to install GRUB to a partition-less disk or to a partition. This is a BAD idea.. /usr/sbin/grub-setup: warn: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blo cklists are UNRELIABLE and their use is discouraged.. Installation finished. No error reported.

Список пакетов, которые были установлены обновлением:

Install: linux-headers-3.2.0-65-generic:amd64 (3.2.0-65.99, automatic), linux-headers-3.2.0-65:amd64 (3.2.0-65.99, automatic), linux-image-3.2.0-65-generic:amd64 (3.2.0-65.99, automatic) Upgrade: apt-transport-https:amd64 (0.8.16~exp12ubuntu10.16, 0.8.16~exp12ubuntu10.17), iproute:amd64 (20111117-1ubuntu2.1, 20111117-1ubuntu2.3), uuid-runtime:amd64 (2.20.1-1ubuntu3, 2.20.1-1ubuntu3.1), libmount1:amd64 (2.20.1-1ubuntu3, 2.20.1-1ubuntu3.1), libblkid1:amd64 (2.20.1-1ubuntu3, 2.20.1-1ubuntu3.1), libdrm-radeon1:amd64 (2.4.46-1ubuntu0.0.0.1, 2.4.52-1~precise1), libdbus-1-3:amd64 (1.4.18-1ubuntu1.4, 1.4.18-1ubuntu1.5), util-linux:amd64 (2.20.1-1ubuntu3, 2.20.1-1ubuntu3.1), linux-generic:amd64 (3.2.0.61.72, 3.2.0.65.77), libgnutls26:amd64 (2.12.14-5ubuntu3.7, 2.12.14-5ubuntu3.8), libapt-inst1.4:amd64 (0.8.16~exp12ubuntu10.16, 0.8.16~exp12ubuntu10.17), php5-gd:amd64 (5.3.10-1ubuntu3.11, 5.3.10-1ubuntu3.13), grub-pc:amd64 (1.99-21ubuntu3.14, 1.99-21ubuntu3.15), apt-utils:amd64 (0.8.16~exp12ubuntu10.16, 0.8.16~exp12ubuntu10.17), update-manager-core:amd64 (0.156.14.13, 0.156.14.15), linux-firmware:amd64 (1.79.12, 1.79.16), dbus:amd64 (1.4.18-1ubuntu1.4, 1.4.18-1ubuntu1.5), apt:amd64 (0.8.16~exp12ubuntu10.16, 0.8.16~exp12ubuntu10.17), libdrm2:amd64 (2.4.46-1ubuntu0.0.0.1, 2.4.52-1~precise1), ifupdown:amd64 (0.7~beta2ubuntu11, 0.7~beta2ubuntu11.1), bsdutils:amd64 (2.20.1-1ubuntu3, 2.20.1-1ubuntu3.1), libdrm-nouveau1a:amd64 (2.4.46-1ubuntu0.0.0.1, 2.4.52-1~precise1), linux-headers-generic:amd64 (3.2.0.61.72, 3.2.0.65.77), dpkg:amd64 (1.16.1.2ubuntu7.4, 1.16.1.2ubuntu7.5), libdrm-intel1:amd64 (2.4.46-1ubuntu0.0.0.1, 2.4.52-1~precise1), libxml2:amd64 (2.7.8.dfsg-5.1ubuntu4.6, 2.7.8.dfsg-5.1ubuntu4.9), linux-image-generic:amd64 (3.2.0.61.72, 3.2.0.65.77), libapt-pkg4.12:amd64 (0.8.16~exp12ubuntu10.16, 0.8.16~exp12ubuntu10.17), grub-pc-bin:amd64 (1.99-21ubuntu3.14, 1.99-21ubuntu3.15), libuuid1:amd64 (2.20.1-1ubuntu3, 2.20.1-1ubuntu3.1), tzdata:amd64 (2014a-0ubuntu0.12.04, 2014e-0ubuntu0.12.04), gpgv:amd64 (1.4.11-3ubuntu2.5, 1.4.11-3ubuntu2.6), openssl:amd64 (1.0.1-4ubuntu5.13, 1.0.1-4ubuntu5.16), php5-mysql:amd64 (5.3.10-1ubuntu3.11, 5.3.10-1ubuntu3.13), mount:amd64 (2.20.1-1ubuntu3, 2.20.1-1ubuntu3.1), linux-libc-dev:amd64 (3.2.0-61.93, 3.2.0-65.99), grub-common:amd64 (1.99-21ubuntu3.14, 1.99-21ubuntu3.15), grub2-common:amd64 (1.99-21ubuntu3.14, 1.99-21ubuntu3.15), php5-fpm:amd64 (5.3.10-1ubuntu3.11, 5.3.10-1ubuntu3.13), php5-common:amd64 (5.3.10-1ubuntu3.11, 5.3.10-1ubuntu3.13), libssl1.0.0:amd64 (1.0.1-4ubuntu5.13, 1.0.1-4ubuntu5.16), gnupg:amd64 (1.4.11-3ubuntu2.5, 1.4.11-3ubuntu2.6)

Кто-нибудь знает о каких-либо других шагах, которые я мог бы предпринять, чтобы исправить эту проблему, прежде чем я переустановлю весь сервер?

--РЕДАКТИРОВАТЬ--

Серверная ОС: Ubuntu 12.04

Таблица патинирования дисков:

root@rescue ~ # fdisk /dev/sda

Command (m for help): p

Disk /dev/sda: 400.1 GB, 400087408640 bytes
64 heads, 32 sectors/track, 381553 cylinders, total 781420720 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000d0317

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048     8390656     4194304+  83  Linux
/dev/sda2   *     8392704     9441280      524288+  83  Linux
/dev/sda3         9443328   781420719   385988696   83  Linux

Command (m for help):

Я вручную добавил флаг загрузки на sda2, раньше его не было. Я проверил другой сервер Hetzner, и это то же самое.

К сожалению, мне пришлось попросить хороших серверных парней из Hetzner забрать эту ОС и снять ее, я переустановил все приложения на новую версию Ubuntu 1404. Выиграйте, кое-что потеряйте ...