여러 개의 동일한 시스템에 운영 체제를 배포하는 가장 효율적인 방법은 무엇입니까?

여러 개의 동일한 시스템에 운영 체제를 배포하는 가장 효율적인 방법은 무엇입니까?

나는 이미 이해한다DDcmd를 사용하면 (OS가 설치된) 하드 드라이브의 이미지를 생성하고 다른 하드 드라이브에 쓸 수 있으므로 작업이 완벽하게 수행됩니다.

이 방법의 문제점은 2TB 드라이브가 있고 OS+MBR/EFI가 10GB에 불과한 경우에도 2TB 드라이브의 전체 여유 공간 블록을 복사해야 하므로 이 방법이 매우 느리고 비효율적이라는 것입니다. 이 이미지를 새 하드 드라이브에 쓴 후에는 2TB의 데이터도 써야 합니다.

이를 수행하는 더 효율적인 방법이 있는지 궁금합니다. 파티션 디자인 메타데이터를 복사한 다음 OS 파일 + MBR/EFI 데이터를 복사하면 될까요? 여유 공간 블록을 무시하시겠습니까?

답변1

기술이 낮고 빠른 방법은 파일 시스템을 포함된 내용으로 축소하고, 파티션 테이블을 재구축하고, 각 파티션에서 사용된 부분만 재구축하는 것입니다. 복사한 후 각 파일 시스템을 확장하여 해당 파티션을 채웁니다.

하지만 이 문제를 해결할 수 있는 도구를 사용해야 합니다.이미지의 일부파일 시스템은 저장 및 복원이 가능하며, 사용한 부분만 저장됩니다. 그래서 확인클론속. 따라서 귀하의 질문에 대한 대답은 실제로 다음과 같습니다.partimage 또는 clonezilla 사용.

이러한 유형의 배포를 수행하면 모든 시스템에서 동일한 파일 시스템이 생성됩니다. 동일한 파일 시스템 UUID, 동일한 초기 RNG 상태, 동일한 SSH 개인 키 등을 갖게 됩니다. 각 복제본이 독립적으로 발전하는 한 UUID 충돌은 중요하지 않습니다. 그러나 이는 UUID가 고유하다는 기대를 위반하고 예를 들어 여러 복제본의 파일 시스템이 결국 동일한 시스템에 마운트되는 경우 문제를 일으킬 수 있습니다. 인스턴스가 자체적으로 수집되기 전에 인스턴스가 시작되어 사용되면 RNG 상태에 문제가 발생할 수 있습니다. 개인 키에 문제가 있는 것 같습니다. 따라서 복제 후에는 각 인스턴스에 대해 개인화 단계를 수행해야 합니다(참조:Linux 설치를 새 컴퓨터로 이동).

또 다른 접근 방식은 각 복제본에 새 파일 시스템을 생성하고 파일을 개별적으로 복사하는 것입니다( cp -a내 경험에 따르면 GNU는 cp모든 메타데이터를 보존하는 데 능숙합니다). 그러나 이는 직접 파일 시스템 복사보다 속도가 느릴 수 있으며, 특히 파일을 읽을 때 앞뒤로 조회가 많이 발생하는 회전 미디어(플래시가 아닌 HDD)에서는 더욱 느릴 수 있습니다.

답변2

Jimbo는 단지 아이디어 일뿐입니다. 당신이 할 수있는 일은 사용하는 것뿐입니다.

cfdisk /dev/sda

자신의 요구 사항에 따라 드라이브 문자를 변경하십시오. 그런 다음 여기에 10/11Gb 파티션을 만듭니다.

그런 다음 새로 생성된 파티션에서 dd를 사용합니다. 파티션은 중첩될 수 있습니다.

partprobe && dd if=/dev/sda1 of=/dev/sda1p2

그런 다음 cfdisk /dev/sda1을 사용하여 대상 드라이브에 GPT를 생성하고 dd를 사용하여 데이터를 새 대상에 복사합니다.

dd if=/dev/sda1p2 of=/dev/sda1

dd의 한 가지 문제점은 바이트 단위로 복사하므로 속도가 느리고 드라이브의 UUID가 변경되지 않는다는 것입니다. 예를 들어, 한 컴퓨터에 드라이브를 넣고 동일한 LVM 볼륨 UUID를 사용하는 다른 컴퓨터로 마이그레이션하려고 하면 충돌이 발생할 수 있습니다. 또한 매우 주의하십시오. 괜히 "디스크 파괴자"라고 불리는 것이 아니므로 올바른 드라이브가 있는지 확인하십시오.

다른 사람들이 부팅 프로그램을 언급했듯이 PXEboot를 사용하거나 Rsync 서버를 사용하고 파티션을 설정한 후 파일 시스템을 끌어 내리는 것도 수행할 수 있습니다. 많은 시스템을 배포하고 싶지만 서버를 설정하고 싶지 않은 경우. 그런 다음 필요에 맞게 자동 배포 스크립트 등을 수정하는 것을 고려해보세요. 실제로 여기에서 사용할 수 있는 매우 대략적인 초안이 있습니다.

https://github.com/cyphernix/arch-enemy

행운을 빌어요!

답변3

여러 동일한 컴퓨터에 운영 체제를 배포하려면 먼저 운영 체제만 백업해야 합니다(AOMEI 백업이 유용함). 파일 크기가 작을수록 백업하는 데 걸리는 시간과 차지하는 공간이 줄어든다는 것은 모두가 알고 있듯이 시간과 공간을 절약할 수 있는 가장 좋은 방법입니다.

관련 정보