필자가 이전에 다니던 회사는 국방관련 회사였다.
하드웨어와 소프트웨어가 연동되어있는 시스템은 혼자서 개발이 불가능하며 한번만들어진 시스템 이미지는 함부로 변경하지 못한다. 또한 대부분 x86(일반 PC에 사용되는 프로세서를 이용, 주로 intel i7)기반으로 되어있다. 해당 시스템에서 windows, linux, real-time linux, vxworks등이 설치되고 사용자프로그램이 그 위에서 동작한다.
그러다보니 테스트중 운영체제에 문제가 생기는 경우, 다시 원복하는데 엄청난 시간과 차라리 시간만 들어가면 되지만 계속 들러붙어서 클릭질을 해야 하므로 다른 업무에 방해가 된다. 그래서 필자는 해당 시스템에 장착된 저장장치 보다 더 큰 저장장치를 이용하여 하드디스크 전체를 이미지로 만들어서 보관하였고, 문제가 발생되면 해당 이미지를 그대로 SBC(싱글보드컴퓨터)에 설치하는 형태로 디버깅 또는 설치테스트를 진행하였다.
그때 주로 사용하던 툴이 리눅스의 dd라는 유틸리티이다. dd를 이용하여 특정 파티션이 아닌 하드디스크 전체를 덤프하여 파일로 저장하면 새로운 하드에 설치하여 그대로 사용할 수 있다. 그리고 windows에서도 dd와 같은 기능을 하는 도구가 있다(다만, 이동식 디스크만 덤프가 가능). 바로 ddwin이라는 유틸리티이며, 유사한 유틸리티로 Win32 Diskimager라는 툴도 있다. 예전에 H사에 다닐때 안드로이드 시스템을 복사하는데 처음 ddwin을 사용하고 더이상 사용할 일이 없을 거라고 생각했는데, 라즈베리 덕에 지금도 계속 사용하고 있다.
라즈베리파이 이미지를 준비하는데는 Raspi imager만 있으면된다. 그런데, 필요에 의해서 sd카드를 복사하거나 또는 USB를 통해서 부팅(SD보다 다소 빠른 속도로 사용가능)하고싶은 욕망이 타오를때쯤 이용하면 좋다. 특히 학생들의 경우 라즈베리파이를 이용한 프로젝트 완료후 파일을 따로 보관하기 어려울때 통채로 백업하면 좋다. 단점은 SD카드 크기에 따라 생성되는 크기도 동일하게 되므로 이미지 생성후 압축을 해두는 것이 좋다.
사용 예 는 다음과 같다.
1) 라즈베리파이 이미지 ---> 백업 -----> 파일 : 파일로 저장해둘 경우
하드디스크는 넓으니 새로 설치하여 준비하는것 보다 시간도 덜들고 별도로 개발환경 설치안해도 되고 좋다!
2) 백업된 이미지 파일 ---> 설치 -----> SD카드 : 기존 이미지 그대로 부팅하여 사용가능
다음에 동일한 크기 이상의 메모리카드만 있으면 얼마든지 복사할 수 있다. 그리고 부팅하여 바로 사용!
3) 백업된 이미지 파일 ---> 설치 -----> USB : USB를 통한 부팅 가능.
일반적으로 SD카드 속도가 너무 느리기 때문에 라즈베리파이4를 가진 독자라면 USB 3.0미디어에 설치후 2~5배 빠른
라즈베리파이를 이용할 수 있다. (제품에 따라 다르지만 확실히 속도차이는 있다.)
1. 다운로드
아쉽게도 일본회사다....
Home - Silicon Linux (si-linux.co.jp)
2. 이미지 덤프 및 기록
2.1. 이미지 저장 (SD 또는 USB메모리 내용을 파일로 저장)
① MicroSD를 카드리더에 연결후 시스템에 연결
② DDwin을 실행할 때 관리자 권한으로 실행
③ Choose disk를 선택하여 시스템에 연결한 SD카드 선택
④ Choose file을 선택하여 하드디스크에 저장할 경로와 이미지파일(ddi)이름을 지정
⑤ backup를 클릭하여 이미지 파일을 MicroSD에 기록
2.2. 이미지 재설치 (파일을 SD또는 USB메모리에 저장)
① 시스템 이미지를 하드디스크에 복사해 두고, MicroSD를 USB 리더에 연결하여 시스템에 연결
② DDwin을 실행할 때 관리자 권한으로 실행
③ Choose disk를 선택하여 시스템에 연결한 SD카드 선택
④ Choose file을 선택하여 MicroSD(또는 USB 메모리)에 기록할 이미지파일(ddi)를 지정
⑤ resotre를 클릭하여 이미지 파일을 MicroSD(또는 USB 메모리)에 기록
(주의! Backup을 누르면 SD카드의 내용이 지정된 이미지 파일로 덮어쓰기 됨)
정리하면 장치 선택하고 이미지 파일 선택해서 Backup누르면 파일로 저장, Restore 누르면 장치에 복사라고 생각하면 되겠다.
이렇게 이용하면, 저장장치 용량만 이상없다면 몇개든 동일하게 설정된 장치를 생산할 수 있다. 특히 조별 프로젝트 하는 경우 최종이미지를 잘 보관해야 다음에 써먹을 수 있으며, 작업 동기화 또는 잘못해서 시스템 오류로 운영체제가 무너진 경우 바로 복원을 할 수 있다.
DDWin... - 끝 ...
최근댓글