Я просто обновил от Ubuntu 12.04 до 14,04, но во время отказавшей установки личинки установки:
Я продолжил установку и надеялся устранить проблему личинки впоследствии. Однако я столкнулся с некоторыми трудностями. Я не перезапустил свою систему, поскольку я боюсь, что она не сможет перезагрузить.
Это - ошибка, что я всегда получаю попытку установить личинку:
$ sudo grub-install /dev/mapper/isw_cjccfdbihf_Volume0p1
Installing for i386-pc platform.
grub-install: error: cannot find a GRUB drive for /dev/mapper/isw_cjccfdbihf_Volume0p1. Check your device.map.
(Я также попробовал sudo grub-install /dev/sda
но это также перестало работать с тем же самым ошибочным сообщением.)
Машина, кажется, использует установку RAID 1. Вот некоторая информация:
$ ls -algh /dev/mapper/
total 0
drwxr-xr-x 2 root 120 Aug 12 19:41 .
drwxr-xr-x 16 root 5.2K Aug 12 20:27 ..
crw------- 1 root 10, 236 Jul 28 10:30 control
lrwxrwxrwx 1 root 7 Aug 12 19:41 isw_cjccfdbihf_Volume0p1 -> ../dm-1
lrwxrwxrwx 1 root 7 Aug 12 19:41 isw_cjccfdbihf_Volume0p2 -> ../dm-2
lrwxrwxrwx 1 root 7 Aug 12 19:41 isw_cjccfdbihf_Volume0p5 -> ../dm-3
$ sudo grub-probe -t device /boot/grub
/dev/mapper/isw_cjccfdbihf_Volume0p1
$ sudo fdisk -l
Disk /dev/sda: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 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: 0x0003b681
Device Boot Start End Blocks Id System
/dev/sda1 2048 468514815 234256384 83 Linux
/dev/sda2 468516862 488390655 9936897 5 Extended
/dev/sda5 468516864 488390655 9936896 82 Linux swap / Solaris
Disk /dev/sdb: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 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: 0x0003b681
Device Boot Start End Blocks Id System
/dev/sdb1 2048 468514815 234256384 83 Linux
/dev/sdb2 468516862 488390655 9936897 5 Extended
/dev/sdb5 468516864 488390655 9936896 82 Linux swap / Solaris
Disk /dev/mapper/isw_cjccfdbihf_Volume0p1: 239.9 GB, 239878537216 bytes
255 heads, 63 sectors/track, 29163 cylinders, total 468512768 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: 0x00000000
Disk /dev/mapper/isw_cjccfdbihf_Volume0p1 doesn't contain a valid partition table
fdisk: unable to read /dev/mapper/isw_cjccfdbihf_Volume0p2: Inappropriate ioctl for device
Особенно, последние две строки, кажется, указывают на более глубокую проблему.:-(
Сообщение об ошибке grub-install
также упоминает device.map файл.
$ cat /boot/grub/device.map
cat: /boot/grub/device.map: No such file or directory
Я пытался генерировать его, но это не помогло ни одному (сообщение об ошибке не изменилось):
$ sudo grub-mkdevicemap
$ cat /boot/grub/device.map
(hd0) /dev/disk/by-id/ata-WDC_WD2500AAJS-00YZCA0_WD-WCAYU7549707
(hd1) /dev/disk/by-id/ata-WDC_WD2500AAJS-00YZCA0_WD-WCAYU7501473
У Вас есть какие-либо рекомендации, что я должен испытать затем? Любая справка глубоко ценится.
Обновление:
$ debconf-show grub-pc
debconf: DbDriver "passwords" warning: could not open /var/cache/debconf /passwords.dat: Permission denied
* grub-pc/install_devices: /dev/disk/by-id/dm-name-isw_cjccfdbihf_Volume0
grub-pc/kopt_extracted: false
grub-pc/partition_description:
* grub2/linux_cmdline:
grub-pc/install_devices_empty: false
grub-pc/timeout: 10
grub-pc/install_devices_failed_upgrade: true
* grub2/linux_cmdline_default: quiet splash
grub-pc/postrm_purge_boot_grub: false
grub-pc/hidden_timeout: true
grub-pc/disk_description:
grub-pc/mixed_legacy_and_grub2: true
grub2/kfreebsd_cmdline_default: quiet splash
grub2/device_map_regenerated:
* grub-pc/install_devices_failed: true
grub-pc/chainload_from_menu.lst: true
grub-pc/install_devices_disks_changed:
grub2/kfreebsd_cmdline:
Отметьте строку: grub-pc/install_devices: /dev/disk/by-id/dm-name-isw_cjccfdbihf_Volume0
Теперь содержание /etc/fstab
:
proc /proc proc nodev,noexec,nosuid 0 0
/dev/mapper/isw_cjccfdbihf_Volume01 / ext4 errors=remount-ro 0 1
/dev/mapper/isw_cjccfdbihf_Volume0p5 none swap sw 0 0
Файл резервной копии с 2012 показывает немного отличающиеся записи для подкачки (Volume05 вместо Volume0p5), который указывает, что имена, возможно, изменились:
# Note that this is an old file at the time the system was installed (Ubuntu 10.04 or 10.10)
# (This is also the time from which the original grub configuration is from, isn't it?!)
/dev/mapper/isw_cjccfdbihf_Volume01 / ext4 errors=remount-ro 0 1
/dev/mapper/isw_cjccfdbihf_Volume05 none swap sw 0 0
Так, возможно, это имеет некоторое отношение к "_Volume01" по сравнению с "_Volume0p1" по сравнению с "_Volume0". /etc/fstab
говорит "01", ls /dev/mapper
отображения возвратов "0p1", "0p2" и "0p5" (подкачка), и наконец debconf-show grub-pc
говорит "Volume0". Я думаю, что это несоответствие является корнем проблемы.
Теперь интересно:
grub-pc/install_devices
в выводе debconf-show grub-pc
быть?Я также просто заметил, что установка ПК личинки повреждается:
$ sudo dpkg-reconfigure grub-pc
/usr/sbin/dpkg-reconfigure: grub-pc is broken or not fully installed
Вот то, как я решил проблему:
В тихий момент, у меня было время для риска временем простоя. Таким образом, я перезагрузил систему с Ubuntu 14.04 Живой CD и переустановил Личинку. Я не встретился с проблемами и впоследствии, система, загруженная обычно.
Вот общее описание: https://help.ubuntu.com/community/Grub2/Installing#via_the_LiveCD_terminal
Из памяти, вот команды, которые я использовал в своем конкретном случае:
Начальная загрузка от Живого CD и выполняемый следующие команды:
$ sudo su
$ mount /dev/mapper/isw_cjccfdbihf_Volume0p1 /mnt
(Sorry, I'm not 100% sure whether the target was /dev/mapper/isw_cjccfdbihf_Volume0p1 or
/dev/sda. I think it was /dev/mapper/isw_cjccfdbihf_Volume0p1.)
$ grub-install --root-directory=/mnt /dev/mapper/isw_cjccfdbihf_Volume0p1
$ reboot
После этого, система перезагружается. Наконец, я мог закончить поврежденную установку с sudo apt-get install
.
В данный момент, /etc/fstab
все еще списки /dev/mapper/isw_cjccfdbihf_Volume01
для корневого каталога. Я все еще не знаю, корректно ли это на самом деле, но я не попытался изменить его на /dev/mapper/isw_cjccfdbihf_Volume0p1
, чтобы узнать, работает ли это все еще после перезагрузки.
Установка grub2 в установке RAID перестала работать, потому что именование устройства так или иначе изменяется с обновлением, но runnig система еще не перезагрузила, использует различную схему именования.
Просто установка личинки отмены, когда это перестало работать и перезагрузка. Раньше установленные неподвижные точки личинки к допустимому ядру и могут загрузиться без любой проблемы. После перезагрузки личинка устанавливает без любых проблем.
Блестящий. Я должен был изменить только одну вещь избежать этой ошибки при выполнении эти grub-install
команда:
/usr/bin/grub-bios-setup: warning: Embedding is not possible. GRUB
can only be installed in this setup by using blocklists. However,
blocklists are UNRELIABLE and their use is discouraged..
/usr/bin/grub-bios-setup: error: will not proceed with blocklists.
Используя Ваши команды выше, я изменил команду установки личинки для установки GRUB на MBR вместо раздела как так (удаляющий 'p1'):
$ grub-install --root-directory=/mnt /dev/mapper/isw_cjccfdbihf_Volume0
Иначе, это действительно сохранило мой позади и много горя. Я очень благодарен.
Ни один из ответов не работал на меня так, я перезагрузил и использовал Диск Восстановления Начальной загрузки для решения проблемы. Это работало. Гмм...!