동일한 파티션 테이블이 없는 다른 드라이브에 시스템을 복제할 때 시스템의 파티션 테이블을 어떻게 편집합니까?

동일한 파티션 테이블이 없는 다른 드라이브에 시스템을 복제할 때 시스템의 파티션 테이블을 어떻게 편집합니까?

좋아, rsync 명령을 사용하여 시스템을 내 서버에 복제했습니다. 다음으로, 대상 시스템을 조작할 수 있도록 실행 중인 시스템에 드라이브를 마운트했습니다. (명확하게 말하면 대상이 실행되고 있지 않습니다.) 단지 마운트된 드라이브입니다. 그런 다음 서버의 복제본을 드라이브의 루트 위치로 동기화합니다. - 이것은 대상 시스템을 부팅할 때 복제된 시스템의 이전 파티션을 찾기 때문에 실패하는 경우 발생하는 문제입니다. 이 파티션은 훨씬 작기 때문에 해당 드라이브에 존재하지 않습니다. 그래서 몇 가지 질문이 있습니다.

  1. rhel 7의 파티션 테이블이나 MBR은 어디에 있습니까? 새 드라이브에는 하나의 파티션이 있으므로 현재 파티션만 사용하도록 자유롭게 변경할 수 있습니까?

  2. 이로 인해 패닉 모드가 발생합니다. 파티션을 정리할 수 있도록 initramfs를 다시 빌드할 수 있나요?

  3. 파티션이 grub 구성 스크립트를 가리키나요? 다음은 대상 클론을 생성하는 데 사용한 명령입니다.

rsync -av -e ssh --exclude=/proc/* --exclude=/sys/* <server-ip>:/path/to/image/root/ /path/to/target/clone/root/

대상이 부팅되지만 부팅 중에 실패합니다. grub.cfg 파일의 원래 --set=root가 이전 하드 드라이브의 위치를 ​​가리키는 것으로 나타났습니다. 새 드라이브를 나타내도록 이 파일을 편집할 수 있습니까? 아니면 새 드라이브에 대해 grub.cfg를 다시 생성할 수 있는 방법이 있습니까?

답변1

Rsync는 이 사용 사례에 적합하지 않습니다. 백업을 시도할 때 Rsync를 사용하는 것이 좋습니다.데이터대신 파일 시스템체계그 자체.

당신은 그것을 사용할 수 있습니다DD명령은 다음과 같이 변경됩니다.

호스팅된 애플리케이션 및 서비스를 중지합니다.

dd를 사용하여 전체 디스크를 복사하고 압축합니다.

sudo dd if=/dev/sda conv=sync,noerror bs=64K | gzip -c > <path>/backup_image.gz

실행하다체크섬지퍼에.

백업의 압축을 풉니다.

다음 명령을 사용하여 대상 시스템을 시작하십시오.라이브 CD설치하다.

전송 zip 및 체크섬 파일 사용동기화또는SCP.

수신된 zip에 대해 체크섬을 수행하고 두 체크섬을 비교합니다.

백업 드라이브의 압축을 풀고 새 드라이브에 복사합니다.

gunzip -c <path_to_diskX>.gz | dd of=/dev/diskY

귀하의 마지막 의견과 관련하여:

DD비트 단위 복사를 수행합니다. 대상 드라이브가 소스 드라이브보다 작기 때문에막 생물 반응기첫 번째 섹터에 위치하고 있습니다. 이를 수행하려면 추가 단계를 수행해야 합니다.

소스 드라이브에서:

닫다교환공간.

크기 조정 및 축소파일 시스템공간만 사용되었습니다(+ 일부 Mbs).

파티션 축소갈라진또는 기타 유틸리티(크기는

대상 드라이브에서:

파티션 확인갈라진.

달리기FSCK파일 시스템에서.

관련 정보