저는 Raspberry Pi에서 사용하기 위해 디스크 이미지를 SD 카드에 복사하는 경우가 많습니다. 제가 하는 일반적인 방법은 을 통해서인데 dd if=/tmp/filesystem.img of=/dev/sdb
, 이는 내 컴퓨터의 부팅 드라이브를 덮어쓰는 것보다 약간의 오타가 있는 것입니다 /dev/sda
.
이를 수행하는 더 안전한 방법이 있습니까? 부팅 드라이브에 대한 원시 쓰기 권한을 제거함으로써?
답변1
가장 쉬운 해결책은 루트로 이 작업을 수행하지 않고 SD 카드가 항상 동일한 문자를 받도록 하는 것입니다. 이를 달성하기 위해 udev를 사용할 수 있습니다.
먼저 udevinfo를 사용하여 카드(또는 카드)를 고유하게 식별할 수 있는 충분한 속성을 얻은 다음 SD 카드용 커널에서 생성된 장치에 특정 문자와 액세스 권한을 할당하는 규칙을 만듭니다.Google의 첫 번째 링크
이제 어떤 이유로 실패하면 장치의 속성이 SD 카드와 일치하는지 확인하고 일치하는 경우에만 dd를 실행하는 dd에 대한 래퍼 스크립트를 작성하세요.
답변2
장치를 대상으로 하는 내장 스크립트를 사용하는 데 방해가 되는 것은 없습니다.
#!/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
손이 닿는 곳에 두고 $PATH
실행 가능한지 확인하세요.