Eu estava tentando instalar o Ubuntu ao vivo em uma unidade USB com alterações persistentes. No entanto, eu queria escrever as alterações no disco rígido em vez de USB por várias razões (desempenho, espaço).
Descobri que as alterações são tratadas em um arquivo com um sistema de arquivos ext3 montado pelo sistema (casper-rw). Mas parece ser detectado automaticamente na unidade flash na inicialização.
Como posso criar um novo arquivo casper-rw no disco rígido e redirecionar o sistema ao vivo do Ubuntu na unidade USB para o disco rígido?
edit 2015-07-14:
Obrigado pelas respostas até agora. Eles são muito interessantes e ajudam muito a entender melhor a mecânica do "recurso de salvamento persistente do sistema ativo" e mostram boas abordagens para resolver o problema. Infelizmente, eu estava tentando superar algumas limitações que eu tinha em mente ao fazer a pergunta sobre o acesso ao sistema host e / ou o acesso ao novo hardware que não indiquei claramente (desculpe por isso).
Se o particionamento for uma opção, acho que a resposta indicada aqui é muito boa, pois ela exige apenas que você crie uma nova partição, rotule-a como casper-rw e pronto (foi ótimo, eu testei).
Se a compra de um novo hardware for uma opção, lembrem-se de uma unidade flash USB3.0 (MLC ou SLC), HDDs portáteis, eSATA e outras opções que têm um desempenho muito melhor do que uma unidade flash USB2.0 média.
Então, eu queria saber se existe uma maneira de apenas criar um arquivo casper-rw em vez de uma partição em um disco com acesso limitado a (ou copiar / vincular o da unidade flash).
Dessa forma, seria fácil copiar o arquivo casper-rw de volta para a unidade flash e usá-lo de lá novamente ou movê-lo para outro computador, garantindo grande flexibilidade, alterações mínimas no disco rígido e remoção fácil das alterações feitas para o sistema.
Respostas:
Você pode facilmente colocar o sistema de arquivos gravável (no arquivo casper-rw) de uma mídia ao vivo em um disco rígido. A limitação é que o arquivo casper-rw deve ir em uma partição FAT. As máquinas mais recentes (UEFI) têm uma partição FAT EFI, mas geralmente são pequenas demais para armazenar um arquivo casper-rw 1G-4G. Em outra partição FAT grande o suficiente, é possível criar diretórios, cada um contendo um arquivo casper-rw para mídias ao vivo possivelmente diferentes. Suponha que sda11 seja 10G e tenha um sistema de arquivos 10G FAT, montado em / mnt / sda11, no qual existem diretórios / A, / B, / C, / D e / E. Suponha que usaremos / A para nossa mídia persistente, colocando um casper-rw lá.
Pegue sua mídia ao vivo criada com persistência e edite o arquivo /boot/grub/grub.cfg e o arquivo /syslinux/txt.cfg, adicionando a palavra "persistente"
/boot/grub/grub.cfg ...
/syslinux/txt.cfg
É isso aí. Você nem precisa renomear / remover o arquivo casper-rw na mídia USB.
Se houver espaço na mídia USB, você pode até copiar o casper-rw do disco rígido de volta para o USB e fazer as alterações com você.
O caminho persistente não permite nenhuma referência explícita ao disco, portanto deve ser exclusivo em todas as partições FAT. Testado com 1 ou 2 partições FAT (uma sendo a partição EFI). Não funcionará em um sistema de arquivos ext2 ou ntfs em vez de FAT. Se você também adicionar a palavra "toram" na mesma linha que "persistente", o sistema de arquivos compactado no USB lento será copiado para o ram e oferecerá um desempenho muito melhor, no entanto, parece haver um problema de desligamento, com a partição FAT não sendo desmontado corretamente (o que parece não causar nenhum problema, mas ...)
fonte
grub.cfg
ousyslinux.txt
considera que você só pode montar a mídia ao vivo somente leitura, pois é uma iso?Isso é extremamente fácil se você usar a seguinte configuração:
Instale o Ubuntu em um pendrive SLC USB (preferencialmente o USB 3.0, se o seu hardware o suportar) sem nenhum dos itens do casper (apenas uma instalação normal, tratando o pendrive como um SSD).
Por quê? Os SLCs são duas vezes mais caros que os MLCs, mas são 4 vezes mais rápidos e duram 8 * mais! Então eles realmente são pequenos SSDs em um bastão!
Otimize o sistema e trate o pendrive como um pequeno SSD, portanto:
No seu
/etc/sysctl.conf
add:No seu,
/etc/fstab
adicione os parâmetros em negrito à sua linha USB de inicialização. (Provavelmente serásdc
ousdd
. A seguir está um exemplo, use o UID, se possível)/dev/sdc / ext4 defaults,noatime,discard,errors=remount-ro 0 1
crie 2 usuários: um usuário administrador que tenha seu diretório pessoal no pendrive, mas tenha muito poucos arquivos e um usuário normal que tenha seu diretório pessoal no HDD.
Somente agora insira o HDD e adicione as informações necessárias sobre o HDD para
fstab
montar automaticamente o HDD e adicionar os seguintes parâmetros:nobootwait,nofail
para permitir a inicialização mesmo quando o disco rígido não estiver presente (se for esse o caso, apenas o usuário administrador terá acesso, não o usuário normal)
Agora efetue login como usuário administrador e mova o diretório inicial do usuário normal do pen drive para o disco rígido:
cp --preserve=all /home/NormalUser/* /media/ExternalHDD/NormalUser
Se tudo estiver bem:
Feito! :-)
Para constar: eu tenho um pendrive MLC USB 2.0 de 16GB assim (mais do que suficiente para o meu caso de uso e não é muito caro e tem cerca de 5 anos e ainda está em execução!)
fonte