디스크 이미지를 메모리 카드에 안전하게 쓰는 방법은 무엇입니까?

디스크 이미지를 메모리 카드에 안전하게 쓰는 방법은 무엇입니까?

저는 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실행 가능한지 확인하세요.

관련 정보