Pré-requisitos
Você precisa ter um ambiente linux com o gparted instalado. Se você estiver em um Mac ou Windows, terá que baixar rapidamente o virtualbox e executar uma instância do Ubuntu.
para instalar o gparted no Ubuntu,
sudo apt-get install gparted
Nota: Usamos o Ubuntu 18.04 LTS para este tutorial
Etapa 1: clonar cartão SD
Ok, supondo que você esteja logado no Ubuntu e inseriu o cartão SD contendo o sistema operacional Raspbian personalizado que foi usado para executar seu pi, você pode abrir o terminal e listar os discos da seguinte maneira.
sudo fdisk -l
Nota: Se você estiver usando um virtualBox, por favor, monte o cartão de memória dentro para que você possa acessá-lo do terminal.
Isso foi executado em uma caixa virtual, dependendo do seu sistema, o caminho do seu cartão SD pode mudar. Neste exemplo, conforme mostrado na captura de tela, o caminho para meu cartão SD seria /dev/sdb.
Ok, agora precisamos clonar completamente o cartão SD e fazemos isso usando o seguinte comando.
sudo dd if=/dev/sdb of=/your/path/to/clone.img
Neste comando se significa arquivo de entrada que é o caminho do meu disco /dev/sdb. Esse valor pode mudar no seu. E de significa arquivo de saída, que você pode fornecer qualquer caminho que especificar.
Este processo levará algum tempo, pois copiará o que está no seu cartão de memória bloco por bloco. Quanto maior o tamanho do cartão de memória, mais tempo levaria. Você verá na linha de comando quando o processo for concluído.
Nota: Para que isso seja concluído em um virtualBox, seu espaço livre em disco deve ser pelo menos duas vezes o tamanho do seu cartão SD.
No nosso caso, o tamanho do cartão de memória era de cerca de 14,5 GB e levou aproximadamente 20 a 30 minutos para clonar totalmente em nosso disco rígido não SSD.
Etapa 2: reduzindo a imagem
Ok, uma vez que a imagem foi clonada, você pode estar se perguntando sobre o tamanho da imagem. No meu caso a imagem tinha 14,5gb. Mas meu sistema operacional personalizado ocupa apenas cerca de 4 GB, pelo que me lembro. Encolher a imagem foi o próximo problema que tivemos que resolver. Para isso, o Linux é sua única opção, pois o gparted está disponível apenas no linux.
Para fazer isso, vamos usar o arquivo de script pyShrink escrito por Drewsif que pode ser encontrado aqui .
Abra seu terminal e execute os seguintes comandos linha por linha em seu terminal.
wget https://raw.githubusercontent.com/Drewsif/PiShrink/master/pishrink.shchmod +x pishrink.shsudo mv pishrink.sh /usr/local/bin
Ok com isso feito, o resto é fácil. Para reduzir sua imagem, execute o seguinte.
sudo pishrink.sh /seu/caminho/para/clone.img /seu/caminho/para/clone-shrink.img
Isso também levará algum tempo e, finalmente, fornecerá uma saída informando o quanto sua imagem inicial foi reduzida no novo arquivo.
É praticamente isso, e sua imagem personalizada agora está pronta para piscar.
Etapa 3: Flash a imagem em um novo cartão SD
Isso é relativamente fácil. Baixe o aplicativo Etcher para o seu sistema operacional e selecione sua imagem recém-encolhida, depois selecione o novo cartão SD e clique no botão Flash E está tudo bem.
Etapa 4: compactar ainda mais a imagem
Ainda com uma imagem de 4gb+ é um pouco demais para ser compartilhada com outras pessoas na internet. Podemos compactar ainda mais executando gzip.
gzip -9 /seu/caminho/para/clone-shrink.img
Isso compactará ainda mais seu arquivo de imagem para que você possa carregá-lo facilmente e armazená-lo em um bucket de armazenamento em nuvem ou em uma unidade.
Obrigado por ler. Espero que isso tenha ajudado você.
Felicidades!