Mover a instalação do Ubuntu para o flash USB

0

O cenário. Eu tenho uma instalação desatualizada do Ubuntu que estou preparando para a naftalina e quero usar a unidade que está instalada para instalar uma nova cópia de outra distro. Enquanto isso, eu tenho uma boa quantidade de dados e informações de configuração no antigo Ubuntu que eu quero preservar. Além disso, esta é uma das minhas principais caixas através das quais eu faço e-mail e em que eu executo tarefas cron importantes: meu uso é principalmente de linha de comando por meio de sessões ssh. Por isso, não quero apenas colocá-lo off-line sem a menor cerimônia.

A tarefa. Transfira o sistema operacional para uma unidade USB inicializável e execute-o a partir dele até que a reinstalação de uma nova distro no HD atual seja completa e operacional. Em outras palavras, eu tenho a minha antiga instalação do Ubuntu rodando na unidade USB que eu posso usar enquanto trabalho na configuração da nova configuração e reconfigurada conforme necessário. O antigo Ubuntu em USB também funciona como um backup de arquivos e dados importantes que eu transferirei para o novo sistema operacional quando estiver operacional.

Perguntas. Eu tenho uma unidade flash USB com a capacidade adequada. Eu planejo formatá-lo ext2, embora f2fs com uma partição de boot ext2 também esteja sendo considerado. Qualquer pensamento sobre qual sistema de arquivos será melhor usar nesta instalação temporária? Além disso, a unidade USB é USB2 e percebo que o sistema operacional pode ficar um pouco lento por esse motivo. Ainda assim, por um período de 2 a 7 dias, enquanto eu estiver configurando e configurando o novo sistema operacional, presumo que o atraso do sistema operacional seja tolerável: qualquer pensamento sobre isso? Finalmente, pretendo executar um comando como rsync -aHAXx / /usb/mnt/point para copiar os dados do Ubuntu em execução para a unidade flash: quaisquer sugestões alternativas para copiar o sistema operacional Ubuntu desatualizado para a unidade flash USB?

    
por MJiller 17.08.2017 / 17:52

2 respostas

1

Eu segui o meu plano original e tenho que dizer que funcionou muito bem. Para aqueles em uma situação como a minha, onde o O.S. instalado tem uma pegada relativamente pequena (ou seja, é menor do que as unidades USB de baixo custo) e o disco rígido onde o O.S. está atualmente instalado é a unidade de destino para migrar o sistema para um novo O.S., esse método de migração deve ser bastante eficaz. Ele fornece uma cópia de trabalho do seu O.S atual, que pode ser inicializado a qualquer momento, bem como uma cópia, acessível como uma partição de dados após a conclusão da migração, de todos os arquivos e pastas localizados sob o antigo O.S. Isso envolve apenas a obtenção de uma unidade USB com o tamanho necessário (na verdade, eu obtive uma unidade de 32 GB), formatando-a como ext2, tornando-a inicializável com o syslinux, copiando todos os dados do antigo O.S. (na verdade ainda está em execução) para a unidade USB e, finalmente, reinicializar o sistema usando a unidade USB. Etapas mais detalhadas abaixo (instruções para um BIOS legado, sistema não-uefi).

O que é necessário: uma unidade USB de tamanho apropriado, um sistema que tenha o syslinux instalado e o utilitário rsync em execução a partir do O.S., que será substituído em breve.

  1. Adquira uma unidade USB do tamanho necessário, insira-a no sistema, crie uma partição, formate-a ext2 e defina o sinalizador de inicialização para a partição (usei o gparted nas últimas 3 etapas).

  2. Torne a unidade inicializável usando o syslinux: a partir de um sistema com o syslinux instalado, execute dd bs=440 count=1 if=/usr/lib/syslinux/bios/mbr.bin of=/dev/sdx ("x" sendo substituído pela letra da unidade USB inserida).

  3. Monte a unidade e copie os arquivos necessários para o syslinux, do sistema em que o syslinux foi instalado, usando o comando cp /usr/lib/syslinux/bios/*.c32 /syslinux-boot/syslinux/ (esses arquivos pertencem ao diretório / boot / syslinux, mas como esse diretório pode ser sobrescrito na etapa 4., estamos temporariamente renomeando, neste estágio, / boot para / syslinux-boot)

  4. Copie todos os arquivos do antigo O.S. para a unidade USB usando o comando rsync -aHAXx / /mount/point-of/USB-drive (/ é o diretório raiz do seu sistema operacional antigo, a partir do qual você está executando rsync, enquanto / mount / ponto-de / unidade USB será qualquer ponto em que você montou seu drive USB ). Este processo pode levar muito tempo: no meu sistema, com portas USB2.0, demorou mais de 12 horas; então seja paciente.

  5. Quando a cópia estiver concluída, mova o diretório syslinux localizado no diretório / syslinux-boot na unidade USB para o diretório / boot na unidade USB.

  6. Edite ou crie um arquivo syslinux.cfg dentro do diretório / boot / syslinux na unidade USB. Isso pode ser um pouco complicado, pois você precisará saber o nome e a localização exatos do kernel e do initramfs que deseja usar ao inicializar a unidade USB. Você também precisará estipular a localização do sistema de arquivos raiz na unidade USB, pois ela será vista pelo BIOS do seu computador. Meu arquivo syslinux.cfg foi apropriado diretamente do wiki do Arch, com apenas algumas pequenas edições para adaptá-lo ao meu sistema. Parece algo assim:

% bl0ck_qu0te%

(/ dev / sdc1 é a localização da unidade USB no meu sistema)

  1. Reinicialize o computador, selecione na BIOS a unidade USB recém-copiada como a mídia de inicialização e ela deve inicializar praticamente como sempre. Agora você pode desativar o disco rígido atual e instalar seu novo O.S. para isso, copiando os dados que serão necessários a partir da instalação antiga, uma vez que o novo O.S. está instalado e inicializando.

Reflexões:

  1. Por quanto tempo um O.S. originalmente instalado em um disco rígido ser executado a partir de uma unidade USB? Eu não faço ideia. Eu acho que deveria ser um período relativamente curto (talvez alguns dias?), Uma vez que, se rodando a partir da mídia flash, configurações especiais são necessárias para minimizar os ciclos de leitura / gravação. Meu plano é executar o sistema antigo a partir de USB por não mais que uma semana ou duas.

  2. Tornar a unidade inicializável provavelmente poderia ser feito com o GRUB. Eu sou a favor do syslinux sobre o GRUB, então eu realmente não investiguei esse caminho.

  3. Não tenho certeza se o sistema de arquivos vfat pode ser usado em um esquema como este. Pensei em usar f2fs, o que acho interessante para projetos USB. Por último, verifiquei que as partições f2fs não podem ser inicializadas; tal variação na solução atual provavelmente exigiria colocar 2 partições na unidade USB - uma pequena partição ext2 / boot para kernel, initramfs e arquivos de inicialização, e então a partição de dados principal formatada como f2fs. Mais edição adicional do syslinux.cfg

  4. Se houver alguma possibilidade, a unidade USB inicializável executando seu antigo O.S. será usado em algum outro computador, será melhor usar o UUID da unidade em seu arquivo syslinux.cfg em vez do caminho do dispositivo, como usei. O comando blkid fornecerá as informações necessárias para fazer isso.

Créditos: o wiki do Arch (principalmente link )

    
por MJiller 23.08.2017 / 16:31
1

Eu sugiro que você:

  1. BACKUP TODOS OS SEUS DADOS.
  2. Particione sua unidade flash USB:
    • 1 partição fat32 contendo seu novo sistema Ubuntu inicializável (use o Unetbootin, por exemplo).
    • 1 partição ext4 contendo uma imagem do seu antigo sistema Ubuntu.
  3. Inicialize sua unidade flash USB.
  4. Instale o novo sistema.
  5. Monte & amp; Chroot a imagem para usar seu sistema antigo.
por userv 17.08.2017 / 19:07