Я попытался обновить Ubuntu стандартным обновлением apt-get и столкнулся с проблемами, аналогичными описанным здесь: https://www.webhostingtalk.com/showthread.php?t=1315016
grub прошел этап реконфигурации как часть этого процесса (реконфигурация была командной строкой, но вызвала псевдо GUI). Ошибка при записи в / dev / sda и / dev / sdb, поэтому пришлось продолжить без установки ( других вариантов нет)
Теперь любая команда apt-get не выполняется, и я думаю, что это сводится к следующей ошибке с grub:
$ update-grub
/usr/sbin/grub-probe: error: failed to get canonical path of `none'.
или
$ sudo apt-get upgrade
<snip>
Setting up friendly-recovery (0.2.31) ...
/usr/sbin/grub-probe: error: failed to get canonical path of `none'.
dpkg: error processing package friendly-recovery (--configure):
apt-get -f install
аналогичным образом терпит неудачу.
$ dpkg --configure -a
Setting up grub-pc (2.02~beta2-29ubuntu0.3) ...
/usr/sbin/grub-probe: error: failed to get canonical path of `none'.
dpkg: error processing package grub-pc (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of grub2:
grub2 depends on grub-pc (= 2.02~beta2-29ubuntu0.3); however:
Package grub-pc is not configured yet.
dpkg: error processing package grub2 (--configure):
dependency problems - leaving unconfigured
Мой сервер рейд, так что я предполагаю, что причина?
[править] Вероятно, это «никто», о котором идет речь:
$ cat /etc/fstab
proc /proc proc defaults 0 0
/dev/md/0 none swap sw 0 0
/dev/md/1 /boot ext3 defaults 0 0
/dev/md/2 / ext4 defaults 0 0
Мой Предполагается, что md0
является спасательным разделом, предоставленным моим хостом (Хетцнером).
Должен ли я сказать grub игнорировать md0? Как это сделать?
Вывод fdisk:
$ fdisk -l
Disk /dev/sda: 447.1 GiB, 480103981056 bytes, 937703088 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
Disklabel type: dos
Disk identifier: 0x00032e61
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 8390656 8388609 4G fd Linux raid autodetect
/dev/sda2 8392704 9441280 1048577 512M fd Linux raid autodetect
/dev/sda3 9443328 937701040 928257713 442.6G fd Linux raid autodetect
Disk /dev/sdb: 447.1 GiB, 480103981056 bytes, 937703088 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
Disklabel type: dos
Disk identifier: 0x00074c3d
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 8390656 8388609 4G fd Linux raid autodetect
/dev/sdb2 8392704 9441280 1048577 512M fd Linux raid autodetect
/dev/sdb3 9443328 937701040 928257713 442.6G fd Linux raid autodetect
Disk /dev/md2: 442.5 GiB, 475133575168 bytes, 927995264 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 /dev/md0: 4 GiB, 4292804608 bytes, 8384384 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 /dev/md1: 511.7 MiB, 536543232 bytes, 1047936 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
Чистка и переустанавливает, решил все способные проблемы:
sudo dpkg --purge grub-pc grub2 grub-gfxpayload-lists
sudo apt-get -f install
# the following gives the prompts:
sudo apt-get install grub-pc grub2 grub-gfxpayload-lists
я вновь заявил о вопросе лучше (и без способных проблем) здесь: grub2: личинке обновления не удалось получить канонический путь 'none'