Как стартовать Arch из файла-контейнера? [РЕШЕНО]

И на счет aufs. Его бы не выкинули, если бы не было замены.
device mapper справляется отлично. Он и используется в liveCD. По крайней мере арча.
Lupus pilum mutat, non mentem.
На чем я застрял ...

1) Что работает - запускается grub из контейнера. Причем что из vhd, что из img файла, значения не имеет. Работа с vhd гораздо удобней и проще, чем работа со связкой img-losetup-kpartx.

2)Я использовал несколько вариантов запуска самой системы, основой которых было создание loop устройства с помощью grub2.

g4d>vhd(img)>grub2 и bootmgr>grub2> отдельное ядро> vhd(img).

Ни один не сработал. Пишет неизвестная файловая система, причем сам загрузчик видит любые файлы, что в разделах, что в контейнерах. Если тупо запустить ядро введя прямые пути в grub2, то понятно оно вываливается в аварийную консоль, где никаких следов loop, не обнаруживается ...

Попробовал вставить init хуки от китайского умельца https://aur.archlinux.org/packages.php?ID=61094, но тоже не срослось. Видно устарели ...

3) Что нужно крутить.

- Либо конфиги grub2, для нормального создания loop устройств.
- либо потрошить initcpio, для монтирования таких устройств после запуска ядра grub2. Похожий вариант был с монтирование root раздела по сети - http://sysmagazine.com/posts/122708/
http://ccco.livejournal.com/ - Идеология №1 "ГАРДА"
Неужели это действительно так сложно?
1. Создаем файл-контейнер
2. Форматируем его например в ext4
3. Устанавливаем в него Арч. Полностью!!! На настоящем разделе остаются только файлы и конфиг граба.
4. Устанавливаем хук. Добавляем в mkinitcpio.conf хук mount. (Если две строки можно назвать хуком))) Пересобираем initcpio.
5. Редактируем конфиг граба.
menuentry 'Arch Linux' {
        set root=(hd0,1)
        loopback loop /root.img
        linux   (loop)/boot/vmlinuz-linux root=/host/root.img rw  mntdev=/dev/sda1 mntdir=/host
        echo    'Loading initial ramdisk ...'
        initrd  (loop)/boot/initramfs-linux.img
}
Думаю тут все ясно.
mntdev - раздел с контейнером.
mntdir - точка монтирования этого раздела (в загруженной системе не будет видна)
root - соостоит из точки монтирования и пути до контейнера в фс

В виртуалке вываливается и говорит, что не может найти корень. Просто набираем exit.
И да, с нтфс или фат не запустит. Это уже сами.
Lupus pilum mutat, non mentem.
Строка fstab выглядит примерно так.
/host/root.img              /              ext4               rw             0   1
Lupus pilum mutat, non mentem.
Спасибо попробую.

С loop я уже разобрался, я работал с контейнером как с жестким диском, создавал таблицу разделов и тд.
Хук mount в арчвике не видел, поэтому не использовал ...


И да, с нтфс или фат не запустит. Это уже сами.
Это плохо у меня все конетйнеры систем хранятся в ntfs ...
http://ccco.livejournal.com/ - Идеология №1 "ГАРДА"
denchik
С loop я уже разобрался, я работал с контейнером как с жестким диском, создавал таблицу разделов и тд.
Таблица разделов ненужна. Раздел то все равно один. ФС создается просто: mkfs.ext4 file

denchik
Хук mount в арчвике не видел, поэтому не использовал ...
Его там и не было до вчерашнего дня. Считал, что такой элементарный хук может написать каждый.
Lupus pilum mutat, non mentem.

Его там и не было до вчерашнего дня. Считал, что такой элементарный хук может написать каждый.
может быть, это дело опыта, я например так глубоко еще не залазил в arch.

В общем пока прогресс следующий - система (btrfs,x64) запускается, но есть ряд моментов, которые надо решить, чтобы можно было полноценно пользоваться ...

1) остановка загрузки в аварийную консоль ... обычно предваряется сообщением связанным с ntfs - is_boot_sector_ntfs ...
2) Русского языка нет, такое чувство что в процессе монтирование системы какие-то файлы из /etc не успевают актуализироваться. Нашелся :)
3) В процессе shutdown не отмантируется корректно хостовая fs, в итоге следующая загрузка vhd-windows из нее начинается с длительной проверки, а следующая загрузка arch без такой проверки происходит в RO режиме
4) Не получилось примонтировать хостовую fs, выдается сообщение, что она занята ...
http://ccco.livejournal.com/ - Идеология №1 "ГАРДА"
В общем по сути темы ставлю ей статус РЕШЕНО.

Рецепт изготовления от jim945 смотри здесь - http://archlinux.org.ru/forum/post/136893/ ...

Моя машина в 1 gb файле + лог + конфиг загрузчика, здесь -
https://mega.co.nz/#F!8dsRjBgS!AJaqyeoYLXdT4KehOsstgw
монтировать отдельно - mount -o compress имя_файла точка монтирования

По проблемным вопросам 1,3,4 потом открою отдельные темы ... пока, если будут какие-то мысли как их решить пишите сюда ...
http://ccco.livejournal.com/ - Идеология №1 "ГАРДА"
 
Зарегистрироваться или войдите чтобы оставить сообщение.