Я нашел здесь другое решение https://stackoverflow.com/a/17468560/1795821 , которое предлагает использовать sed
, чтобы избежать кавычек.
Например:
sh-3.2$ echo "/Place/='http://www.google.com'" | sed "s/\'/\\\'/g" | xargs echo
/Place/='http://www.google.com'
Я просто удалил весь раздел и переустановил. LVM все время лажал. Теперь работает отлично.
Chroot вашего раздела и попробуйте сценарий FIFO «Установить / настроить загрузчик», часть https://github.com/helmuthdu/ aui
Если это не поможет. Я бы сделал резервную копию своего раздела / home
(как предлагал Элроннд) и попробовал выполнить новую установку со сценариями FIFO / LILO.
Удачи!
Проблема заключается в том, что rEFInd не создает автоматически файл refind_linux.conf
в / boot
] каталог.
Начиная с шага 4 раздела «Технические подробности поддержки загрузчика EFI Stub» из документации rEFInd :
rEFInd ищет файл с именем refind_linux.conf в том же каталоге, что и файл ядра. Он состоит из ряда строк, каждая из которых состоит из метки, за которой следует ряд параметров ядра.Первая строка устанавливает параметры по умолчанию, а последующие строки устанавливают параметры, доступные из экрана подменю тега главного меню. Если вы установили rEFInd со сценарием refind-install, этот сценарий создает образец файла refind_linux.conf, настроенного для вашего компьютера, в / boot. Этот файл будет работать без изменений во многих установках, но для некоторых вам может потребоваться его настройка.
Я не уверен, почему он не создает этот файл, но весьма вероятно, что вы сможете решить возникшие проблемы, создав его.
refind_linux.conf
Вики Arch Linux имеет отличную запись о том, как это сделать, но по сути вы помещаете ее в тот же каталог, что и ваше ядро. (обычно в / boot
, создавая его автоматически или вручную). Первая раскомментированная строка файла будет параметрами по умолчанию для загрузки ядра.
Я создал свой файл с помощью команды mkrlconf
, и получившийся файл по адресу /boot/refind_linux.conf
выглядел так:
"Boot with standard options" "archisobaseddir=arch archisolabel=ARCH_201610"
"Boot to single user mode" "archisobaseddir=arch archisolabel=ARCH_201610 single"
"Boot with minimal options" "ro root=UUID=514a997c-a921-403d-849f-d901d26a73db"
Мы кое-что уходим, но это еще не сработало. Поскольку я создал его с живого USB, первые две записи неверны, поскольку вместо этого они ссылаются на ISO на USB. Последняя запись на самом деле верна, и это потому, что, как и в случае с ошибкой, которую вы получили, она устанавливает корневое устройство с ''
на UUID вашего /
диска.
Чтобы установить его в качестве основного варианта загрузки, просто удалите остальные строки и измените метку.
"Boot with standard options" "ro root=UUID=514a997c-a921-403d-849f-d901d26a73db"
Сохраните файл и перезапустите систему, теперь она должна работать правильно!
Это, конечно, долгий путь к созданию файла. Вам не обязательно использовать mkrlconf
для его создания, вы можете создать его вручную. Более того, он автоматически заполняет UUID диска (который я не хочу копировать и вводить вручную).
Шаг 5 из Технических подробностей загрузчика заглушек (ссылка выше) описывает, как, если нет файла refind_linux.conf
, rEFInd будет искать запись ядра в / etc / fstab
]. Хотя со странной конфигурацией громкости это вряд ли сработает.