É possível executar qualquer distro da RAM de um .iso salvo em um sistema de arquivos NTFS?

5

A execução completa da RAM foi feita em várias distros, como o Slax , DamnSmallLinux , e mais recentes versões do Ubuntu , e como eu tenho 8GB parece razoável que eu possa rodar muitas distros inteiramente da RAM (desde que eu selecione um que tenha a habilidade).

Eu gostaria de fazer isso com OpenELEC (ou qualquer distro), e com uma complicação adicional: sou um desenvolvedor .NET , trabalho e uso principalmente o Windows, o que significa que NTFS e FAT32 são meus sistemas de arquivos preferidos . Até que chegue o dia se e quando o Windows puder nativamente ler / gravar partições ext, isso não mudará. O Ext2fck não instala nem mesmo no Windows 8, portanto não há como me convencer dos 'méritos' de ter drives e partições em um formato ilegível para minha operação diária.

Há também coisas como syslinux , vmlinuz , extlinux e similares que podem carregar .iso arquivos na RAM e inicializá-los com eficiência. Para adicionar a cereja no topo do bolo, o bootloader do Windows me permitirá adicioná-las como opções no menu de inicialização nativo do Windows, o que eu fiz para o UBCD 5.11, e irá até funcionar para sistemas de arquivos virtuais como .vhd , etc. p>

Então, aqui está meu sonho:

Eu quero combinar todos os três em um. Eu quero ter uma partição ext2 / ext3 / ext4 instalada, neste caso uma instalação do OpenELEC, compactá-lo em um .iso e criar uma entrada no meu menu de inicialização que irá fazer isso diretamente, ou passá-lo para o syslinux ou o assim fará o seguinte:

Extraia o .iso completamente na RAM como uma partição ext2 / 3/4 e inicie nesse SO na RAM. Em seguida, montarei meu disco rígido NTFS para a parte / STORAGE da instalação do OpenELEC com o ntfs-3g.

Então, como um bônus, na saída eu teria o sistema recomprimido a um .iso, e se for bem sucedido, substitua o .iso assim persistindo minhas mudanças através de inicializações (desde que o desligamento tenha sido bem sucedido). Ele não precisaria se copiar da memória: ele poderia copiar qualquer arquivo / alteração que quisesse rastrear (se alguns não estivessem disponíveis) de volta para a unidade de onde ele foi inicializado, se presente, e então comprimir isso de volta em um arquivo. .

Slax , DSL e Ubuntu pode inicializar a RAM e persistir as alterações, então eu sei que é possível se o seu sistema operacional suportar. Eu estou querendo saber se isso pode ser feito em um 'funciona para qualquer distro que você quiser'. O Slax salva suas alterações em um diretório ext / slax / changes se estiver em uma partição ext ou como changes.dat (para NTFS / FAT32). Esta solução poderia funcionar também, suponho, mas provavelmente exigiria mais interação com o SO hospedado para coordenar isso do que usando o .iso.

Então, quão perto posso chegar?

Existem soluções fáceis para isso já estão lá fora? Eu teria que escrever um 'SYSLINUX' / 'ISOLINUX' / 'EXTLINUX' / 'VMLINUX personalizado? O que seria necessário para que isso acontecesse e, se já é possível, como eu começo?

    
por Ehryk 21.02.2013 / 08:22

1 resposta

1

Existe um instalador de EXE para o Puppy Linux que é iniciado a partir de um .iso em FAT32 , NTFS ou sistemas de arquivos Linux (ou seja, ext2 / ext3 / ext4, xfs, etc.) usando syslinux e são executados na RAM usando unionfs / aufs com acesso total ao armazenamento persistente (disco, SD, flashdrive, etc.).

Outros ISOs podem ser montados, a partir da linha de comando ou do script, e também clicando neles no gerenciador de arquivos ROX-Filer incluído. Um uso conveniente disso é acessar seletivamente ou restaurar arquivos de uma versão antiga em vez de ter que reverter tudo.

O ISO original da distribuição Puppy Linux, que geralmente é um sistema de arquivos ext3 / 4, é mantido na camada mais baixa da pilha aufs. As alterações são registradas na camada superior e liberadas para o disco periodicamente (configuráveis) para um "arquivo salvo". Na inicialização, o ISO original é carregado na RAM e montado somente leitura; em seguida, o arquivo de salvamento é carregado e montado somente para leitura e uma camada de leitura / gravação vazia é montada para quaisquer novas alterações. Para preservar um histórico de alterações, basta configurar o coping automático ou manual do ISO do arquivo de salvamento para um diretório de arquivamento.

A "camada" de O / S do unionfs / aufs e a montagem múltipla de sistemas de arquivos são as principais tecnologias em ação aqui, portanto, se o Puppy Linux não funcionar para você, procure outras distros que as usam .

Há um grande número de opções de instalação disponíveis para o Puppy Linux, incluindo um Instalador EXE do Windows , que é um pacote separado que configura o carregador de inicialização do Windows para inicialização dupla.

    
por 10.06.2013 / 17:10