Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
tuchinА что это там за кавычка в конце последней строки? С ней точно вывалитесь. |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
scorpid, вы явно что-то не так поняли :)1) Поскольку образ подключается к певдоустройству loop1 внутри меню (а значит, на этапе выполнения конкрентного пункта), для него не обязательно каждый раз выдумывать новое имя loop1, loop2 и т.д. 2) Параметр earlymodules=loop относится не к псевдоустройству груба, а к модулю loop ядра Linux, и его не нужно (и нельзя, если параметр действительно используется образом!) "подстраивать" под придуманное вами имя псевдоустройства. |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
tuchinИменно поэтому я написал целую страницу текста, где подробно разжевано, как в grub подключать образы. Специально для вас, привожу тупой код, в котором надо править имя файла для каждого нового образа. В первой строке кода внутри меню вы вручную задаёте путь к образу, который присваивается переменной $iso . После этого, в переменную $root_uuid GRUB САМ прочтёт UUID раздела, а в переменную $isolabel – метку тома изнутри образа, после чего сам подставит значения всех трёх переменных в параметры ядра, для передачи их образу после запуска. Обратите внимание:1) Здесь НЕ задаётся $root, потому что предполагается, что GRUB (каталог grub и "конфиг" grub.cfg) расположен на том же разделе той же флешки, где лежит и сам образ. 2) Путь именно относительно раздела, то есть НЕ должен содержать ни грубовского обозначения раздела (который в скобках), ни точки монтирования в линуксе – только /каталоги/внутри/раздела/файл.iso |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
tuchinДа запросто, просто тогда надо осмысленно править код, а не тупо копипастить :) Однако, этот пример придуман именно для флешки, чтобы образ можно было добавить или обновить, не меняя больше ничего. |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
tumanovalex, я же писал, что код для загрузки из iso-образа от Arch не требует исправления и работает "как есть", надо только задать путь от корня раздела в переменной dir, если образ лежит в разделе, откуда стартует GRUB, и дополнительно раздел root, если образ лежит на другом разделе. К примеру, вот так я грузился с образа вообще безо всяких флешек, когда обновлялся с i686 на x86_64 : здесь я задал указал раздел, где у меня лежит /home , а тут я указал путь к образу относительно /homeКак и написано в вике, этот кусок кода генерит подменю, и автоматически выводит в нём по одной строке на каждый найденный в заданном каталоге образ Арч. |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
Язык сценариев для GRUB сделан по образу и подобию обычного юникс-шелла. В том числе, там есть обычная команда echo Можете вставить её куда надо и выводить переменные в нужных местах. Кроме того, все те же команды вы можете выполнять не только в меню, но и просто в консоли груба, чтобы посмотреть, что получается после каждой из них. P.S. Насколько я понимаю, ваша ошибка в необдуманном копипасте. Дело в том, что вот это: я писал внутри строки --source=" ... ", и заэкранировал переменную именно для того, чтобы она попала в список команд меню как переменная, а не значение.archisolabel=\$isolabel Вы у себя заменили --source="" на фигурные скобки {} , а значит и экранирование нужно убрать:
|
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
i686 Хост-модули VirtualBox (virtualbox-host-dkms или virtualbox-host-modules-arch) не загружаются, если собраны gcc-7. Те же модули, собранные временно откаченным gcc-6, работают, несмотря на то, что ядро собрано gcc-7. Соответственно, интерфейс VirtualBox из репозитория Arch, требует qt5, собранный gcc-7, поэтому временно откаченный для сборки модулей gcc, нужно вернуть обратно. |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
i686 После обновления glibc 2.25-1 > 2.25-2 начал сегфолтится mkinitcpio-busybox, встроенный в initramfs. Ошибка вылезает не сразу, а после обновления ядра и пересборки initramfs, после чего перезагрузка приводит к kernel panic из-за сегфолта процесса init. Лечение: под другим ядром (LTS), если его initramfs ещё не успели пересобрать, или под внешней системой, откатить glibc на 2.25-1 и пересобрать initramfs. |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
nafanjaИспользуется не natspec, а консольные zip и unzip. То, что они (стандартные!) заменены одноимёнными, но пропатченными версиями с поддержкой кодировки, и есть прозрачное решение проблемы. libnatspec – зависимость только этих двух пакетов, цепляние его к третьим программам не требуется. Итак, ещё раз: ГУИ, которые используют для упаковки-распаковки формата ZIP стандартные средства в виде zip и unzip, позволяют решить проблему вышеуказанным способом. ГУИ, которые используют другие средства – требуют другим методов решения. К сожалению, стандартных средств для linux, поддерживающих национальные кодировки в zip-архивах, мне не известно, если вы знаете – поделитесь :) На момент, когда я изучал этот вопрос (в 2010 году) их точно не было. По такому случаю я нашел и слегка доработал патчи от AltLinux, реализующие такую возможность в стандартных zip и unzip через их разработку libnatspec, и даже отправил статью с анализом и решением на OpenNet. Впоследствии, я перешел на Арч и оформил своё решение в виде пакетов в AUR. На тот момент, все известные мне ГУИ с поддержкой zip-архивов использовали именно эти утилиты, однако со временем, стали появляться новые, использующие какие-то библиотеки или встроенные средства, на форточный манер. Сам я ими не пользуюсь, и потому поиском решений для них не занимался. Если есть желание – можете попробовать. |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
RusWolfВ консоли, вестимо, без неё просто не видно, почему не запустилось :) При попытке запуска любой программы, использующей qt5, например transmission-qt и VirtuialBox. |