리눅스 환경에서 SD 카드나 USB 플래시 드라이브와 같은 휴대용 저장 장치를 백업하는 작업은 생각보다 복잡하지 않으며, ‘dd’라는 복사 및 변환 도구를 활용하여 터미널에서 간단하게 수행할 수 있습니다. ‘dd’ 도구는 매우 다재다능하여, 사용자는 한 장치에서 다른 장치로 대량의 데이터를 복사하는 데 유용하게 활용할 수 있습니다. ‘dd’ 도구는 다양한 용도로 활용할 수 있지만, 그중에서도 가장 유용한 기능 중 하나는 데이터 저장소를 백업하는 것입니다. 과거에는 이 방법을 사용하여 하드 드라이브의 복사본을 만들곤 했으며, SD 카드나 플래시 드라이브 백업에도 동일하게 적용할 수 있습니다. 아래에서 그 작동 방식을 자세히 살펴보겠습니다.
참고: 이 글의 마지막 부분에는 관련 영상 튜토리얼이 포함되어 있습니다.
SD 카드 및 플래시 드라이브 백업 방법
백업을 시작하려면, 터미널 창을 열고 백업하고자 하는 SD 카드나 USB 장치를 컴퓨터에 연결합니다. 그런 다음, ‘lsblk’ 명령어를 사용하여 현재 시스템에서 인식 가능한 모든 저장 장치를 출력합니다.
특히 내장 메모리 카드 리더를 사용할 경우, SD 카드는 일반적인 ‘/dev/sdX’ 형태의 명명 규칙을 따르지 않을 수 있습니다. 대신, ‘/dev/mmcblk’ 다음에 파티션 정보가 표시되는 경우가 많습니다.
참고: USB 장치의 경우, 기존의 ‘/dev/sdX’ 명명 규칙을 따릅니다.
USB 어댑터를 사용할 경우에는 SD 카드가 ‘/dev/mmcblk'(또는 유사한 형태)로 표시되지 않을 수도 있습니다. 장치 이름은 SD 카드 어댑터가 리눅스에서 인식되는 방식에 따라 달라집니다. 어댑터 사용 설명서를 참조하는 것이 가장 좋습니다.
정확한 장치 레이블을 확인한 후에는, 백업 방법을 선택해야 합니다. 사용 목적에 맞는 아래 방법을 선택하여 진행하십시오.
이미지 파일로 백업하기
‘dd’ 도구를 사용하여 백업하는 첫 번째 방법은 저장 장치 전체를 이미지 파일 형태로 저장하는 것입니다. 이 작업을 수행하려면 다음 명령어를 입력해야 합니다. 특히 용량이 큰 SD 카드나 USB 드라이브의 경우, 이미지 파일 생성 작업에 상당한 시간이 소요될 수 있습니다.
USB 플래시 드라이브
sudo dd if=/dev/sdX of=~/image-of-usb.img
위 명령어를 실행하면 USB 드라이브의 전체 복사본이 생성되어 ‘image-of-usb.img’라는 파일로 저장됩니다. 이 이미지 파일을 안전한 곳에 백업해 두십시오. 보안을 더욱 강화하려면 아래 단계에 따라 GnuPG로 암호화하십시오.
gpg -c image-of-usb.img
GnuPG 암호화 결과물은 ‘image-of-usb.img.gpg’ 형태로 생성됩니다.
암호화 작업이 완료되면, 원본 파일을 삭제하고 암호화된 파일만 보관합니다.
rm image-of-usb.img
암호화된 파일에서 언제든지 다음 명령어를 사용하여 이미지를 추출할 수 있습니다.
gpg image-of-usb.img.gpg
SD 카드
참고: ‘0’은 SD 카드 1을 의미합니다.
sudo dd if=/dev/mmcblk0 of=~/image-of-sd-card.img
위 ‘dd’ 명령어를 실행하면 SD 카드의 스냅샷이 생성되고 ‘image-of-sd-card.img’라는 파일로 저장됩니다. 이 백업 이미지를 다른 곳으로 옮겨 Dropbox, Google 드라이브 또는 개인 서버에 업로드할 수 있습니다. 이 백업 파일은 암호화되지 않은 상태로 보관하면 보안상 취약할 수 있으며, 누군가에게 노출될 경우 개인 정보가 쉽게 유출될 수 있습니다. 따라서 SD 카드 백업 파일도 GnuPG로 암호화하는 것을 권장합니다.
암호화하려면 다음 명령어를 실행합니다.
gpg -c image-of-sd-card.img
암호화된 파일은 ‘image-of-sd-card.img.gpg’라는 이름으로 출력됩니다.
암호화가 완료되면 원본 파일을 삭제해야 합니다.
rm image-of-sd-card.img
암호화된 백업 파일을 복원하려면 ‘-c’ 옵션 없이 ‘gpg’ 명령어를 실행합니다.
gpg image-of-sd-card.img.gpg
USB 및 SD 카드 복제하기
이미지 파일로 백업하는 대신, SD 카드 자체를 복제하려면 다음 지침을 따르십시오. 먼저, 백업하려는 SD 카드나 USB 장치와 복제 대상이 될 두 번째 SD 카드나 USB 장치를 모두 연결합니다. 그런 다음, ‘lsblk’ 명령어를 사용하여 장치 목록을 확인하고 각 장치의 정확한 레이블을 기록해 둡니다.
예를 들어, SD 카드 1을 SD 카드 2에 복제하려면 각각 ‘/dev/mmcblk0’과 ‘/dev/mmcblk1’을 사용해야 합니다. 필요한 경우, ‘lsblk –help’ 명령어로 자세한 도움말을 참조하십시오.
올바른 장치 레이블을 확인했다면, 다음 단계를 따르십시오.
USB 플래시 드라이브
이전에 USB 장치를 이미지 파일로 저장할 때 사용했던 명령어가 복제에도 적용될 수 있습니다. 명령에서 변경되는 부분은 ‘of=’ 부분입니다. ‘of=~/image-of-usb.img’로 출력하는 대신, 복제 대상이 될 두 번째 USB 플래시 드라이브로 출력합니다.
예를 들어, USB 플래시 드라이브 #1이 ‘/dev/sdc’이고 USB 플래시 드라이브 #2가 ‘/dev/sdd’라고 가정합니다. 사용자 환경에 따라 다를 수 있습니다.
sudo dd if=/dev/sdc of=/dev/sdd
‘dd’ 작업이 완료되면 드라이브 #1의 모든 데이터가 드라이브 #2에 복사되어 있어야 합니다.
SD 카드
USB 장치와 마찬가지로, ‘dd’ 명령어는 SD 카드 #1의 데이터를 가져와서 SD 카드 #2에 복사합니다. 복제 작업을 시작하려면 터미널에 다음 명령어를 입력하십시오. 예를 들어, SD 카드 #1이 ‘/dev/mmcblk0’이고 SD 카드 #2가 ‘/dev/mmcblk1’이라고 가정합니다.
sudo dd if=/dev/mmcblk0 of=/dev/mmcblk1
터미널에서 키보드 입력을 다시 받을 수 있게 되면 복제 작업이 완료된 것입니다.
백업 복원하기
‘dd’ 명령어로 생성한 백업 이미지를 SD 카드나 USB 플래시 드라이브에 복원하는 가장 빠른 방법은 Etcher 도구를 사용하는 것입니다. Etcher는 주로 OS 이미지를 플래시하는 데 사용되지만, 데이터 복원에도 매우 효과적입니다.
가장 최신 버전의 Etcher를 다운로드하여 설치한 후 실행합니다. Etcher 플래시 도구를 실행하고, USB 플래시 드라이브 또는 SD 카드를 컴퓨터에 연결합니다.
Etcher 프로그램 내에서 “이미지 선택”을 클릭하여 이미지 선택 창을 불러옵니다. 여기서 ‘image-of-sd-card.img’ 또는 ‘image-of-usb.img’ 파일을 찾아 선택합니다. 이미지가 로드되면 “Flash” 버튼을 클릭하여 복원 작업을 시작합니다.
Etcher가 최종 화면 창을 표시하면, 데이터가 복원된 장치에서 정상적으로 작동해야 합니다.