Форум сообщества Runtu.org
Ноябрь 16, 2018, 12:15:48 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Новости: Доступна для тестирования х64 версия дистрибутива Runtu XFCE 18.04 - 20181018

Подробнее
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1   Вниз
  Печать  
Автор Тема: Запуск Linux из каталога и(или) в RO режиме  (Прочитано 2495 раз)
0 Пользователей и 1 Гость смотрят эту тему.
sfs
Местный
*****
Online Online

Сообщений: 630


WWW
« : Август 22, 2017, 14:26:26 »

Из каталога - т.е. на одном разделе винта несколько Linux
В RO режиме - т.е. в установленной системе ничего не изменяется. Изменения в верхнем слое AUFS (который может быть RAM, каталогом или файлом) - т.е. экспериментируем смело
Соответственно для AUFS нужно ядро с AUFS (в ubuntu и runtu такое). Linux - любой

Решение : rootaufs2
Сделано под Arch. Для других дистрибов нужно скопировать свой /lib/modules в любой Arch (Manjaro) и собрать initrd
Готовые initrd для runtu-xfce-16.04.3-amd64_20170806.iso. *fallback* - со всеми модулями ядра
initrd для runtu-xfce-18.04-amd64_20181018
Для прочих можно разобрать готовые initrd, заменить /lib/modules на взятые из своего рабочего initrd
Разборка свежих initrd ubuntu:
Код:
#!/bin/bash
#https://unix.stackexchange.com/questions/163346/why-is-it-that-my-initrd-only-has-one-directory-namely-kernel
 target=$1
 offset=$(binwalk -y gzip $1 | awk '$3 ~ /gzip/ { print $1; exit }')
    shift
    dd if=$target bs=$offset skip=1 | zcat | cpio -id --no-absolute-filenames $@

Параметры загрузки ядра : root=/dev/sda1 ro rootdir=dirname changes quiet init=/lib/systemd/systemd
Код:
root=/dev/sda1 - раздел с дистрибом (обязятельный)
ro - можно rw или потом перемонтировать
rootdir=dirname - каталог с корнем дистриба (не обязятельный)
changes - без параметров - изменения в RAM (можно использовать каталог или файл)

Этот же функционал + еще куча наворотов есть и в UIRD. Он собирается через dracut в любом линуксе.

Кто не осилил вышеописанное - любую ubuntu можно тестировать так. Возможностей меньше, но зато все родное, из коробки
Или так
« Последнее редактирование: Вчера в 09:57:19 от sfs » Записан

sfs
Местный
*****
Online Online

Сообщений: 630


WWW
« Ответ #1 : Май 10, 2018, 10:25:54 »

Т.к. Runtu LITE 18.04 проходит путь тестирования - описанный выше метод поможет копированием нескольких файлов установить дистр на раздел с имеющимся рабочим линуксом (или виндой) и провести любые эксперименты , не боясь ничего испортить
Записан

RoDoN
Новичок
**
Offline Offline

Сообщений: 63



WWW
« Ответ #2 : Май 10, 2018, 12:12:58 »

Для других дистрибов нужно скопировать свой /lib/modules в любой Arch (Manjaro) и собрать initrd
Можно это подробнее разжевать, что и как именно сделать?
У меня на одном разделе в разных каталогах установлены PRA, Manjaro, Runtu 16.04 XFCE и Runtu 18.04 Lite, очень удобно, но только один нюансик - все установленные таким образом оси работают только с ядрами от PRA, что не айс.
Хотелось бы собрать initrd для загрузки из каталога Runtu на родном ядре.
Записан


Acer Aspire One AO751h-52Br (Atom Z520 1.33GHz, 2 Gb, Intel GMA500 1366x768)
sfs
Местный
*****
Online Online

Сообщений: 630


WWW
« Ответ #3 : Май 10, 2018, 13:56:33 »

Чтобы не заморачиваться с Арчем, наверное , самое простое будет :
1. Распаковать initrd-uxrx-4.10.cpio.xz  
2. Распаковать initrd-runtu (родной). Хоть он и называется initrd.lz - внутри gz
3. Удалить в initrd-uxrx каталог /usr/lib/modules/4.10* и переписать на его место из initrd-runtu каталог /lib/modules/*
4. Упаковать initrd-uxrx
5. Подправить grub2
Если дистр не загрузится - в п.4 взять /lib/modules/ из корня самого дистрибутива
После каждого автообновления ядра процедуру нужно будет повторять. Ну или не удалять использованное в initrd-uxrx ядро

У кого получится - выложите initrd-uxrx для     Runtu LITE 18.04 - 20180404 beta
У кого не получится - помогу
Может и в исо (хотя бы не релизы) имеет смысл включить. Чтобы увеличить число тестеров

Если автообновляемых дистров установлено много и все нужны - пожалуй проще для всех использовать ядро от PRA (i686 x86_64)
В него мололитно вкомпилены модули для загрузки с винта,флэшки , сд. Поэтому modules в initrd ему не нужен и, соответственно, пересобирать initrd не надо
При желании обновиться - брать более свежее vmlinuz* и 000-kernel*.pfs из PRA
В разных дистрах модули ядра в /lib/modules или в /usr/lib/modules - т.е. сделать симлинк
« Последнее редактирование: Май 10, 2018, 14:03:15 от sfs » Записан

sfs
Местный
*****
Online Online

Сообщений: 630


WWW
« Ответ #4 : Вчера в 09:55:58 »

Добавил в шапку скрипт Разборка свежих initrd ubuntu и initrd для runtu-xfce-18.04-amd64_20181018
Записан

Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006, Simple Machines Valid XHTML 1.0! Valid CSS!