dd
전체 하드 드라이브를 이미지 파일로 저장했습니다 . 하드 드라이브에는 ntfs, swap 및 ext4로 포맷된 일부 기본 파티션이 포함되어 있습니다. 이것이 내가 하는 방법이다:
dd if=/dev/sda | ssh user@fastmachine "cat - > diskimage.img"
그런 다음 테스트를 위해 하드 드라이브의 처음 5~6GB를 새 시스템으로 덮어썼습니다.
- 1.5GB 스왑 기본 파티션을 만들었습니다.
- 4GB ext4 기본 파티션을 만들었습니다.
테스트 시스템을 테스트한 후 이제 기존 시스템을 복원하고 싶습니다. 하지만 내 로컬 하드 드라이브는나는 아주 천천히 글을 쓴다.시간과 노력을 절약하기 위해 이미지에서 약 6GB만 복구하고 싶습니다. 이 정도면 충분하고 안전한가요? 작동할까요? 나는 이렇게 할 것이다:
ssh user@fastmachine "dd if=diskimage.img bs=1M count=6000" | dd of=/dev/sda
업데이트 - 부분 복구 테스트
하드 드라이브를 부분적으로만 복원할 수 있습니다.
업데이트 - 1.8인치 Pata 하드 드라이브 속도 테스트
쓰기 속도 테스트 중이에요
dd if=/dev/zero of=blub count=1000 bs=1M
그리고
ssh user@fastmachine "dd if=/dev/zero count=1000 bs=1M" | dd of=blub
- 처음에는 1.8인치 드라이브에 14.5MByte/s의 쓰기 속도가 제공되었습니다. 생각만큼 나쁘지는 않았습니다.
- 두 번째는 11.4 MByte/s = 91.2 Mbit/s ≒ 100 Mbit/s = 내 이더넷 연결 속도를 제공했습니다.
하지만:WLAN을 통한 SSH(무선)단 1.3MB/s! 여기에 문제가 있습니다.
이더넷을 통해 복사할 때 SSH는 CPU 로드의 68%를 사용하는 반면, WLAN(무선)을 통한 복사는 20%만 사용합니다.
결론적으로:더 빠른 네트워크와 하드 드라이브/플래시 드라이브가 있다면 netcat(nc)을 사용하여 데이터를 복사할 것입니다.
답변1
이론적으로는 이것이 가능하지만 주의 사항이 있습니다. 재구축하려는 영역 외부에서 디스크 레이아웃을 변경하면 안 됩니다. 중요한 것은 디스크에 사용되는 파티션 구성표입니다. ~을 위한막 생물 반응기데이터가 첫 번째 섹터(그리고 논리 파티션의 헤더)에 포함되어 있기 때문에 이는 쉽습니다. ~을 위한GPT조금 더 복잡합니다. 파티션 데이터의 복사본이 두 개 있고 서로 일치해야 합니다. 일반적으로 파티셔닝 소프트웨어가 이를 지원하는 경우(예:gdisk
), 시나리오 데이터를 파일로 저장하고 데이터와 함께 복원하는 데 사용합니다.
또는 옵션이 있는 경우 두 드라이브를 동일한 컴퓨터에 넣는 것을 고려하십시오. 이는 매우 특이한 설정이 아닌 한 ssh
데이터 전송에 병목 현상이 발생하기 때문입니다*).
*) 매우 오래되었거나 잘못 구성된 ATA HDD, 저가형 플래시 장치(메모리 카드 또는 플래시 드라이브) 또는 USB를 통해 연결된 모든 것과 같이 속도가 매우 느린 하드 드라이브에 연결된 최신 프로세서, v1 또는 특별히 패치된 OpenSSH 버전만 실행 .
답변2
만약에덮어쓰거나 변경된 파티션은 전적으로 디스크의 첫 번째 부분에 있으며,만약에나머지 디스크는 변경되지 않았으므로 안전합니다. 어쨌든 위험은 있습니다. 밤새 복구를 실행하도록 놔두는 것은 어떨까요?