Como posso gravar com segurança uma imagem de disco em um cartão de memória?

2

Eu rotineiramente copio imagens de disco para cartões SD para uso em um Raspberry Pi. A maneira usual de fazer isso é por dd if=/tmp/filesystem.img of=/dev/sdb , que é apenas um pequeno erro de digitação do excesso de gravação da unidade de inicialização do meu computador em /dev/sda .

Existe uma maneira mais segura de fazer isso, por exemplo. removendo permissão para fazer gravações brutas na unidade de inicialização?

    
por Mark 05.12.2017 / 03:25

2 respostas

3

Acho que a solução mais simples é não fazer isso como root e forçar o cartão SD a obter sempre a mesma letra. Você pode usar o udev para conseguir isso.

Primeiro, use udevinfo para obter atributos suficientes para identificar exclusivamente seu cartão (ou cartões) e, em seguida, crie uma regra que atribua direitos específicos de letra e acesso ao dispositivo criado pelo kernel para seu cartão SD. Um dos primeiros links do Google

Agora, se por qualquer motivo isso falhar, escreva um script de wrapper para dd que verificará se os atributos do dispositivo correspondem ao cartão SD e somente se eles executarem dd.

    
por 05.12.2017 / 06:16
0

Não há nada que o impeça de usar um script com o dispositivo de destino incorporado a ele.

#!/bin/bash
#
# Usage:  <script>  <image>
#
img="$1"
dev=/dev/sdb
echo -n "Copy image $img to $dev..."
sleep 5

echo -n " writing..."
cat "$img" >"$dev"
ss=$?

echo " done"
exit $ss

Coloque isso no seu $PATH em algum lugar e garanta que ele seja executável.

    
por 05.12.2017 / 06:59

Tags