동일한 이미지를 여러 SD로 복사하려면 어떻게해야합니까?


23

마지막으로 나는 라즈베리 파이에 대량 주문을 할 수 있습니다 ! 그러나 그것들을 구성하는 것은 번거로운 일이 될 것입니다. 내가하고 싶은 것은 :

  1. 하나의 Pi에서 스톡 이미지를 다운로드하고 땜질하십시오.
  2. 해당 이미지를 다른 모든 SD 카드에 저장 / 추출 / 복사
  3. 추가 구성을 수행 할 필요없이 다른 Pi를 모두 설정하십시오.

내 컴퓨터에는 단일 SD 슬롯 만 있으므로 .img수정 된 '마스터'카드에서 파일 을 생성 할 수 있습니까?


4
Tom 이이 게시물 raspberrypi.stackexchange.com/questions/311/…을 확인하십시오 . 귀하의 질문에 대한 답변이라고 생각합니다.
스티브로 빌라 드

@SteveRobillard +1 질문에 완벽하게 대답 할 것입니다.
Jivings

4
알아야 할 한 가지는 SSH입니다. 마스터에서 SSH를 설정하면 모든 이미지에서 복제 된 SSH 인증서로 끝나게되므로 반드시 원하는 것은 아닙니다. OTOH, Pis 헤드리스를 사용하려면 SSH를 설치하고 싶을 것입니다.
Darren Wilkinson

@darrenjw 매우 좋은 지적입니다. 당신은 나에게 약간의 당황과 실수를 저장했습니다. 고맙습니다.
Jivings

그 대량의 Pis를 어떻게 사용 하려는지에 따라 Andrew Mulholland의 Raspi-LTSP 프로젝트 를 확인하고 싶을 것 입니다. 강의실에 유용 할뿐만 아니라 클러스터에도 매우 유용합니다.
Dave Jones

답변:


7

복제 마스터를 사본에 작성하기 전에 수행해야 할 몇 가지 쉬운 준비 단계가있어 많은 두통을 줄일 수 있습니다.

  1. DHCP에 대한 복제 마스터 구성
  2. 에서 모든 항목 삭제 /etc/ssh/ssh_host*(SSHD를 실행할 때 다시 생성됨)
  3. 당신이있는 경우 /etc/udev/rules.d/70-network*파일을, 당신은 수정해야 eth0뭔가 다른 (내가 사용에 대한 항목을 eth9내 클론 마스터 용) - 및 관련 업데이트하는 것을 잊지 ifconfig파일 -에 CentOS에 /etc/sysconfig/network-scripts/ifcfg-eth0(그것을 만들을 9그것의)와 데비안에서 (raspbian)/etc/network/interfaces

7

사용자 정의 된 OS 1와 동일한 요구 사항이 있고 2배포해야합니다. 둘러 본 후 많은 명령을 찾았지만 .zipSD 카드에서 컴팩트 파일 을 만드는 단일 도구는 없었 으므로 다음 mkimg.sh과 같이 작동했습니다.

sudo bash mkimg.sh /dev/sda sdcard.img.zip

이렇게하면 마운트 해제 된 장치가에서 /dev/sda파일 시스템과 파티션이 축소되고 압축 된 zip이 작성됩니다. 내가 사용하는 경우 ~ 1.5GB Raspbian 시스템을 작성하여 <500MB를 만듭니다 .zip.

온 전성 검사 및 크기 계산과 함께 스크립트는 기본적으로 다음을 수행합니다.

e2fsck -f /dev/sda2
resize2fs -M /dev/sda2
parted --align optimal /dev/sda unit MB resizepart 2 1700 yes
dd bs=1M if=/dev/sda of=sdcard.img count=1900
zip sdcard.img.zip sdcard.img
parted /dev/sda resizepart 2 16.0GB
resize2fs /dev/sda2

스크립트와 문서는 GitHub에서 사용할 수 있습니다 .


5

Raspberry Pis 자체를 주 컴퓨터에서 멀티 x 용어 와 함께 사용 하여 SD 카드 쓰기를 "부팅 스트랩"할 수 있습니다. 많은 배포판의 패키지 관리자에서 multixterm을 찾을 수 있어야합니다.

1 단계 : USB 스틱 SD 카드 어댑터를 구입하십시오.

2 단계 : 표준 방법을 사용하여 기본 컴퓨터로 2 개의 SD 카드 이미지를 씁니다.

3 단계 : 이미지가있는 2 개의 SD 카드를 2 개의 Raspberry Pis에 넣고 네트워크에 연결하고 전원을 켭니다.

4 단계 : 비어있는 SD 카드 2 개를 USB 스틱 어댑터에 넣고 2 개의 실행중인 Rapsberry Pis에 꽂습니다.

5 단계 : 이제 여러분의 메인 컴퓨터에서 multixterm을 사용하는 것과 같이 명령 행 multixterm -xc "ssh % n"host1 host2 에서 hostx 와 host2는 Raspberry Pis의 IP 주소입니다.

6 단계 : multixterm의 stdin 창에서 SD 카드에 이미지를 쓸 때와 같이 dd를 사용할 수 있지만 이제 multixterm은 해당 dd 명령을 두 개의 라즈베리 파이에 동시에 보냅니다.

7 단계 : 모든 카드를 쓸 때까지 3-6 단계를 반복합니다.

더 많은 SD 카드를 이미징할수록 새로운 SD 카드를 이미징하는 데 사용할 수있는 Raspberry Pis가 더 많아집니다. 분명히이 기술은 모든 카드를 한 번에 쓸 수는 없지만 모든 카드 작성을 완료하는 데 걸리는 시간을 줄입니다. 이 기술은 크게 실험적이므로 마일리지는 다양하지만 이론은 흥미로운 실험처럼 들립니다 ...


매우 흥미롭지 만 질량이 비싸기 때문에 =) hehe는 그것을 좋아합니다. 다른 콘솔의 이미지를 다른 USB SD 어댑터에 하이퍼 스레드로 쓰는 방법이 없습니까?
Piotr Kula

5

당신이 찾고있는 것은 SD 카드 또는 SD 카드 복사기를위한 갱 프로그래머 장치입니다.

예,이 시스템은 존재합니다. 내가 Googling "sd 카드 갱 프로그래머"에 의해 찾은 입니다. 이 특정 장치에는 마스터 슬롯이 있으며 한 번에 최대 7 개의 슬레이브 SD 카드를 복사 할 수 있습니다. 슬레이브 슬롯이 3 개 또는 11 개인 다른 프로그래머도 사용할 수 있습니다.

다른 유형의 프로그래머도 있습니다. 일부는 하드 드라이브에서 이미지를 플래시 할 수 있으며 PC에 설치된 소프트웨어로 제어됩니다. 위에 링크 된 장치와 같은 다른 장치는 마스터 칩에서 정보를 미러링하기 때문에 서버와 인터페이스 할 필요가 없습니다.

이 장치는 싸지 않다는 것을 언급 할 가치가 있습니다. 일반적으로 대량 생산 환경에서 사용되며 수요가 지나치게 높지 않습니다. 이 기능을 갖춘 우수한 장치에 대해 $ 1,000 이상을 지불해야합니다.

ProDuplicator.com 에는 SD 카드 복제 옵션이 훨씬 더 있습니다.


SD 카드를 수동으로 넣거나 꺼내려면이 물건을 베이비 시팅해야한다는 것을 고려할 때 왜이 비용이 많이 드는지 궁금합니다.
Dmitry Grigoryev

@DmitryGrigoryev 내 대답 이후 5 개의 예스에서 duplicator 사이트는 이제 600 달러 미만에 IMHO가 싼 것 같습니다. 수량이 가격을 결정한다는 점을 명심하십시오. 개발 및 제조 비용을 복구해야하므로 많은 사람들이이를 필요로하기 때문에 비용이 많이 듭니다. 10 대의 PC 또는 랩톱마다이 중 하나가 있다면 아마도 $ 100-150 장치 일 것입니다.
RLH

5

우리는 매일 10 + Raspberry Pi SD 카드에 이미지를 쓸 수 있어야하는 프로젝트와 비슷한 요구 사항을 가지고있었습니다. 우리는 구입할 수있는 다양한 Card Duplicator를 살펴 봤지만 대부분은 부팅 가능한 SD 카드를 만들 수 없다는 것을 발견했습니다. 부팅 가능한 정보가 아닌 파일을 직접 복사하는 것만으로도 엄청나게 비쌉니다!

따라서 솔루션으로 2 x 7 포트 Belkin 전원 공급 USB 허브에 연결된 단일 Raspberry Pi에서 실행할 수있는 간단한 웹 기반 소프트웨어를 자체 작성했습니다 (Pi에는 2 개의 허브 제한, 최대 14 개의 USB 포트).

우리는 이제 동일한 요구 사항을 가진 다른 사람들을 돕기 위해 이것을 오픈 소스 소프트웨어로 출시했습니다. 현재는 소스 코드 만 사용할 수 있지만 Nginx + php를 실행하는 Arch Linux ARM 기반 이미지 파일도 업로드 할 예정입니다.

http://www.rockandscissor.com/projects/osid


2

이것은 Mac OS X에서 작동합니다.

땜질 한 카드를 마운트 해제 한 후 다음을 시도하십시오.

sudo dd if=/dev/sdcardlocation of=backupimage.img.

sdcardlocationSD 카드의 위치로 교체하십시오 .

당신은 교환 수 .img.dmg또는 .iso.

다음으로, 다른 카드를 준비하려면 카드를 마운트 해제하고 값을 바꾼 이전 코드를 실행하십시오. 줄은 다음과 같습니다.

sudo dd if=backupimage.img of=/dev/sdcardlocation.

카드 리더에서 꺼내기 전에 마운트를 해제하십시오.


1

비록 내 라즈베리 파이 내가 백업 할 수 있습니까? 단일 SD 카드를 복제하는 방법에 대한 탁월한 제한을 제공하며 수십 개의 카드에 대해 한 번에 하나씩 수행하면 지루할 수 있습니다.

아무도 멀티 카드 SD 카드 리더 (한 번에 여러 개의 SD 카드를 넣을 수있는 리더)를 생산하지 않은 것으로 보이며 USB 허브와 여러 개의 단일 SD 카드 USB 리더를 매우 싸게 구입할 수 있다는 사실, 프로세스 속도를 높이는 한 가지 방법은 자체 SD 카드 복제기를 만드는 것입니다.

선택한 Raspberry Pi 이미지를 슬롯에 삽입 된 빈 SD 카드 슬롯에 자동으로 쓰도록 스크립트를 작성할 수도 있습니다. 스크립트는 카드가 삽입되었음을 자동으로 감지하고 복사가 완료된 시점을 표시합니다.

으로 darrenjw는 하지만 의견에 언급, 당신은 당신이 연결하기 전에 개인 네트워크 세그먼트에 연결된 상태에서이 첫 번째 부팅이 완료되어 있는지 확인 할 수 있도록, 복제 된 이미지의 각는 부팅하는 첫 번째 시간을 SSH 인증서를 대체 할 것 인터넷에 연결된 네트워크에 연결합니다.


일반적으로 이미지를 플래시하기 위해 카드를 장착하지는 않습니다.
Alex Chamberlain

@AlexChamberlain에게 감사드립니다. Pi가 도착하기까지 몇 주가 걸렸습니다. (Grrr, 만약 내가 RS 리드리스트에 긴 리드 타임을 가지고 있었다는 것을 알고 있다면 Farnell으로부터 오랫동안 주문했을 것입니다 처음에 리드 타임)) 그래서 실제로 아직 시도하지 않았습니다.
Mark Booth

1

이 작업을 수행하는 데 더 좋은 도구가 있고 많은 RP 이미지를 복사하는 것이 좋습니다.

그러나 그것은 당신이 정말로하고 싶은 것에 달려 있습니다.

cfengine3 [1], fai [2], chef [3], fabric [4] 또는 puppet [5]을 살펴보십시오. 자동 구성 도구는 처음 시작할 때 컴퓨터에서 작업을 수행하는 데 유용합니다.

[1] http://cfengine.com/ [2] http://fai-project.org/ [3] http://www.opscode.com/chef/ [4] http : //www.debian- administration.org/articles/671 [5] http://puppetlabs.com/puppet/puppet-enterprise/


1

PiBakery 는 실용적인 솔루션이 될 수 있습니다. PiBakery를 사용하면 Wi-Fi 비밀번호, ssh 키 등과 같은 다양한 항목을 사용자 정의하기 위해 블록을 사용하여 사용자 정의 Raspbian 이미지를 만들 수 있습니다.


0

또 다른 대안은 사용하는 것입니다 플래시 운영 체제에 특정 사용자 정의와 SD 카드를 플래시 명령 줄 도구를.


0

컴퓨터에 단일 SD 카드 슬롯 만 있으면 여러 이미지를 효율적으로 구울 수있는 쉬운 방법은 전원이 공급되는 USB 허브와 여러 가지 저렴한 microSD-USB 어댑터입니다. 13 포트 USB-3 허브와 저렴한 (<$ 1) microSD-USB 어댑터를 사용하여 테스트했습니다.

많은 기본 이미지를 동시에 레코딩하는 한 dcfldd를 확인하십시오 . 라즈 비안 제시 저장소에서 사용할 수 있습니다. 여러 이미지에 동시에 쓸 수있는 향상된 GNU dd 버전입니다. 나는 약간의 테스트를했고 RPi 3B의 microSD 카드 이미지를 USB 허브의 3 가지 유형의 어댑터에 연결된 7 개의 카드로 복사 할 수있었습니다. A +의 3 포트 USB 2.0 허브에 대한 사전 테스트도 효과가있었습니다. 매개 변수를 올바르게 설정하면 거의 잊어 버릴 수 있습니다. 나는 7 개의 어댑터로 제한되었지만 속도가 가장 느린 대상 카드의 속도로 제한되지만 더 많은 수의 카드에서 작동하지 않을 것이라고 생각할 이유가 없습니다.

일단 구성 변경이 실행되고 네트워크에서 구성 변경을 통해 많은 수의 RP를 최신 상태로 유지해야하는 경우, ssh를 통한 업데이트를 허용하기 위해 ansible 또는 fabric 을 사용하여 다시 구울 필요가 없습니다. 카드를 최신 상태로 유지하십시오.

마지막으로, 고유 식별자 (예 : 네트워크 MAC 주소 기반)를 사용하여 각 RPi에서 호스트 이름을 변경하도록 마스터를 수정하여 avahi충돌을 피하기 위해 부팅 후 충돌을 피하기 위해 모든 RPi를 수정하지 않고도 쉽게 위치를 지정할 수 있습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.