tl; dr - É possível inicializar a partir de um arquivo .iso localizado em um volume lmv2 não criptografado? Quão?
Estou tentando configurar isso em uma VM do VirtualBox antes de fazer isso de verdade com o meu laptop. Eu tenho a seguinte configuração:
- Partições de 4 gpt
- gpt1 - inicialização do bios 2M ef02
- gpt2 - 5G não criptografado não-lvm, para dados variados, iso's, etc.
- gpt3 - 5G lvm não criptografado, para / boot, iso's, etc.
- gpt4 - restante, lvm, criptografado com dm-crypt / luks, para root, swap, home, etc.
- no gpt2, tenho cópias dos arquivos iso atuais do Arch e do Xubuntu
- no gpt3, eu tenho um lvm2 lv com as mesmas cópias dos mesmos iso's
Eu tenho o seguinte trabalho:
- no gpt4, instalações funcionais do Arch e Xubuntu (e gostaria de adicionar outras distros em outros volumes lógicos em algum momento)
- grub2 instalado a partir do Arch em / dev / sda
- usando o comando configfile do grub2, pode alternar e inicializar a partir do menu grub2 de ambos os distros
- pode inicializar iso's no menu grub a partir de não-lvm gpt2
O que eu gostaria de fazer é inicializar a partir do iso no gpt3 lvm (e, finalmente, nem sequer tenho a partição não-lvm gpt2).
Minha entrada do grub é:
menuentry "Xubuntu ISO" {
set isofile="/xubuntu-12.04.1-desktop-amd64.iso"
# from non-lvm
loopback loop (hd0,gpt2)$isofile
# from lvm
#loopback loop (vgboot-iso)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject
initrd (loop)/casper/initrd.lz
}
As 2 linhas de loopback apontam para 2 cópias diferentes da mesma iso. Eu verifiquei na linha de comando do grub que as duas linhas de loopback funcionam.
Ao inicializar a partir do iso na partição não-lvm, tudo funciona bem.
Ao inicializar a partir do iso na partição lvm, a inicialização é iniciada e, eventualmente, obtém este erro:
(initramfs) /scripts/casper-premount/20iso_scan: line 46: can't open /dev/sr0: No medium found
Para a entrada do arco:
menuentry "Arch ISO" {
set isofile="/archlinux-2012.09.07-dual.iso"
loopback loop (hd0,gpt2)$isofile
#loopback loop (vgboot-iso)$isofile
linux (loop)/arch/boot/x86_64/vmlinuz archisolabel=ARCH_201209 img_dev=/dev/sda2 img_loop=$isofile earlymodules=loop
initrd (loop)/arch/boot/x86_64/archiso.img
}
A inicialização a partir do gpt2 iso funciona, mas não sei o que alterar "/ dev / sda2" para a inicialização do lvm.
EDIT: Isso pode ser feito? Para qualquer arquivo .iso oficial da distribuição Linux atual? Fedora? Debian? openSUSE? CentOS?
Isso é impossível? Ou é algo que ninguém pensou em tentar antes?
EDIT2: Minha recompensa expirou há muito tempo e, após 9 meses, estou assumindo que isso simplesmente não é possível em qualquer distribuição Linux. Deixarei a pergunta em aberto, mas duvido que haja uma solução funcional a qualquer momento no futuro próximo.
search
é o volume lógico que contém o arquivo iso, certo? Para obtê-lo, você precisa fazersudo blkid
.