2개의 운영 체제 파티션이 있는 하드 드라이브가 있습니다. 모두 합치면 내 플래시 드라이브에 복제하기에는 너무 큽니다. 어쨌든, 나는 더 작은 것을 복제하고 싶습니다.
/dev/sda1
: 120GB HDD 파티션 1(Lubuntu)
/dev/sda2
: 8GB HDD 파티션 2(Debian) <-- 복제하려는 항목
/dev/sdb
: 32GB 플래시 드라이브
단일 파티션 복제를 시도했지만 dd
부팅되지 않는 것 같습니다.
sudo dd if=/dev/sda2 of=/dev/sdb status=progress bs=1M
이 플래시 드라이브를 부팅하려고 할 때 "Boot USB"를 클릭했지만 BIOS 메뉴는 2개의 HDD OS 옵션만 있는 grub 부팅 메뉴로 재설정됩니다.
sda2
문제는 단일 파티션( )을 드라이브(sdb
) 에 복제하려고 한다는 것입니다 . 대신에 그걸 사용해야 할까요sdb1
?하나의 파티션만 복제했기 때문에 이는 부팅(grub) 콘텐츠가 손실되었음을 의미합니까?
단일 운영 체제 파티션을 부팅 가능한 플래시 드라이브에 성공적으로 복제하는 방법은 무엇입니까?
답변1
두 가지 가정이 모두 정확합니다. 파티션을 썸 드라이브에 직접 덤프하면 파티션 테이블이 없으므로 부팅 섹터도 없습니다.
이를 작동시키기 위해 할 수 있는 몇 가지 작업이 있습니다. 일반적으로 먼저 드라이브에 파티션 테이블을 만든 다음 운영 체제 데이터를 포함할 실제 파티션(/dev/sdb1)을 만든 다음 거기에 데이터를 복사합니다. 모든 데이터가 확보되면 드라이브에 grub을 설치할 수도 있습니다.
이 작업은 몇 가지 명령으로 빠르게 수행할 수 있지만 용어와 개념에 익숙하지 않으면 (끔찍한) 실수를 저지르기 쉽습니다. 그래서 나는 당신에게 다음을 제안하고 싶습니다. 그것은 더 쉬울 것입니다:
- 백업하세요! 모든 것! 때로는 문자 하나를 잃어버리면 모든 데이터가 영구적으로 손실될 수 있습니다.
- gparted를 설치하고 엽니다.
- 썸 드라이브를 선택하세요(디스크가 선택되지 않았는지 확인하세요).
- 메뉴 "장치" > "파티션 테이블 생성"
- msdos를 사용할 수 있습니다
- ext4와 같은 할당되지 않은 공간에 기본 파티션을 만듭니다.
- 새 파티션을 부팅 가능하게 만들기
- 적용 및 종료
- 달리기
sudo dd if=/dev/sda2 of=/dev/sdb1; sudo resize2fs /dev/sdb1
. - 데비안 시스템으로 부팅합니다. (
/dev/sdb
데비안을 부팅한 후에도 썸 드라이브가 그대로 남아 있다고 가정합니다.)blkid /dev/sdb1
복제된 파티션의 UUID를 얻으려면 실행하세요 .- 현재
/etc/fstab
파일을 백업합니다. /
다음과 같이 얻은 UUID에 대한 경로를 참조하도록 업데이트하십시오 .
...
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda1 during installation
UUID=5405ba56-dd62-48b4-b381-976162b4957c / ext4 errors=remount-ro 0 1
sudo mount /dev/sdb1 /mnt; sudo cp -p /etc/fstab /mnt/etc/fstab; sudo umount /mnt
이 새 fstab을 Debian 썸 드라이브에 복사하려면 실행하세요 .- 달리기
sudo grub-install /dev/sdb
- 파일 백업을
/etc/fstab
원래 상태로 복원합니다(썸 드라이브 파티션이 아닌 디스크 파티션의 UUID 사용). - 이 명령은 데비안 디스크의 부팅을 방해해서는 안 되지만, 이제 디스크가
fstab
원래 상태로 복원 되었으므로sudo update-grub
업데이트가/etc/fstab
썸 드라이브에 설정되어 있을 때 파일을 읽을 수 있는지 확인하기 위해 실행하세요.
이는 데비안 파티션의 내용을 썸 드라이브에 복제하고 이에 대한 부팅 환경을 생성했어야 합니다. 지금은 이 프로세스를 확인할 수 없습니다. 따라서 이 작업을 몇 번 수행했지만 여기의 명령은 현재 테스트되지 않았습니다.