Сделайте
PATH=$PATH:/usr/jdk/instances/jdk1.7.0_67/bin
export PATH
и попробуйте еще раз.
ваша проблема root=/dev/sda2
, потому что это монтирование с помощью device name
, которое не уникально . Если у вас установлен только один диск, он обычно всегда отображается как /dev/sda
, так что проблем нет. Но установите второй диск или любую другую вещь в дополнение, которая отображается как /dev/sd?
, тогда нет гарантии порядка чего-либо, и часто то, что было sda
, перемещается вниз к sdb
... может быстро стать грязным и потерпеть неудачу.
Лучше всего монтировать через по устройству -id или по -uuid , которые будут уникальными.
В разделе /dev/disk/
вы увидите такие папки, как
А например под by-id/
вы увидите такие ссылки как
вот мой /etc/fstab
, который монтируется by device-id
, чтобы дать вам представление, я удалил лишние линии, чтобы сохранить его в точку. И я использую EFI, а не GRUB, но принцип тот же, только более сложный с Grub {главная часть в большом унифицированном загрузчике}:
/dev/disk/by-id/scsi-35000cca070168a20-part2 / ext3 acl,user_xattr 1 1
/dev/disk/by-id/scsi-35000cca070168a20-part1 /boot/efi vfat umask=0002,utf8=true 0 0
/dev/disk/by-id/scsi-36003048018e26e011d81ba1714e4c99f-part1 /data xfs defaults 1 0
/dev/disk/by-id/scsi-36003048018fa44011d57b61bbe1b8533-part1 /scratch xfs defaults 1 0
/dev/disk/by-id/scsi-36003048018e266011d81ba7e1afeadf6-part1 /bkup xfs defaults 1 2
Примечание :это то, что я вижу в SLES 11.4. И хотя я использую EFI, вам нужно найти определенные элементы в GRUB или GRUB2 и изменить их. В качестве примера вот мой файл /boot/efi/efi/SuSE/elilo.conf
, обратите внимание на часть root=
. Что соответствует этому в вашем GRUB, который вы хотите изменить, чтобы быть by device-id
или by uuid
. и не забудьте изменить /etc/fstab
так, чтобы он был также уникальным методом by-id
или by-uuid
.
# This file has been transformed by /sbin/elilo.
# Please do NOT edit here -- edit /etc/elilo.conf instead!
# Otherwise your changes will be lost e.g. during kernel-update.
#
# Modified by YaST2. Last modification on Mon Oct 15 11:04:42 EDT 2018
timeout = 80
##YaST - boot_efilabel = "SUSE Linux Enterprise Server 11 SP4"
default = SLES11_SP4_16
prompt
image = vmlinuz-3.0.101-108.77-default
###Don't change this comment - YaST2 identifier: Original name: linux###
label = SLES11_SP4_16
append = "splash=verbose showopts "
initrd = initrd-3.0.101-108.77-default
root = /dev/disk/by-id/scsi-35000cca070168a20-part2
image = vmlinuz-3.0.101-108.77-default
###Don't change this comment - YaST2 identifier: Original name: failsafe###
label = Failsafe_15
append = "showopts ide=nodma apm=off noresume edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 nomodeset x11failsafe "
description = "Failsafe (3.0.101-108.77-default)"
initrd = initrd-3.0.101-108.77-default
root = /dev/disk/by-id/scsi-35000cca070168a20-part2
Вам НЕ нужны boot=/dev/sd?
или root=/dev/sd?
нигде, где ?
— любая буква. Ссылка на диск из /dev/disk/by-id
или /dev/disk/by-uuid
; вы даже можете использовать by-label
при условии, что вы установили метки разделов и уверены, что они уникальны.
Это должно ответить на ваши вопросы:
Как правило, используется GRUB, находящийся на диске, который сначала отображается в BIOS или выбирается для запуска первым в BIOS. Потому что MBR диска указывает на загружаемый GRUB.
Файл /etc/fstab отвечает только за автоматизацию процесса монтирования разделов. В шторках можно вообще обойти фстаб.