나는 2개의 대형 LVM 드라이브가 있는 자체 제작 800MHz Intel Atom 기반 미디어 서버와 250GB 2.5" 드라이브에 Debian 9를 가지고 있습니다. 후자에 불량 블록이 표시되어 있으므로 교체할 계획입니다.
Debian 라이브 CD에서 부팅하고 전체 250GB 디스크 표면을 새 WD Blue 1TB 드라이브에 추가하고 dd if=/dev/sda of=/dev/sdd
새 디스크를 USB-SATA 커넥터에 연결했습니다. 그런 다음 미디어 서버에 드라이브를 설치하고 250GB 드라이브를 교체했습니다. 드라이버 ID가 인쇄된 직후, 부트 로더가 시작되기 전, 시작 시 시스템이 멈춥니다. 부트로더는 grub 레거시입니다. 라이브 CD에서 부팅하고 클론으로 루트를 변경했는데 제대로 작동하는 것 같았습니다. 그래서 LVM 볼륨을 마운트하고 grub2를 새로운 /dev/sda에 설치했는데 작동했다고 합니다. 그러나 새 하드 드라이브에서 부팅하면 여전히 이전처럼 시스템이 잠깁니다. 또한 예상대로 update-initramfs -u -k all
, grub-install
, 및 whathaveyou 를 실행했습니다 .update-grub
그런 다음 시도했습니다.이 부팅 복구 디스크이 역시 성공을 주장하지만 결과에는 영향을 미치지 않습니다. 전원을 켠 후 기기가 너무 일찍 중단됩니다.
누군가 나에게 드라이브 전면 근처에 작은 /boot 파티션이 없다고 경고했기 때문에 지금 파티션을 만들었습니다. 다르지 않습니다. 또한 첫 번째 파티션 앞에 6MB의 간격을 두고 4K 섹터를 정렬하는 등 매번 전체 grub 설치 및 부팅 복구 디스크 시도를 반복해 보았습니다. 매번: 부팅되지 않고 BIOS 화면으로 이동하기 전에 충돌이 발생하지만 CD에서 부팅하고 CD로 루트할 수 있으므로 데이터가 손상되지 않은 것처럼 보입니다.
오래된 드라이브를 개조하는 것은 현재로서는 매우 효과적입니다.
매우 간단한 시스템으로, MBR msdos 스타일 부팅, EFI 없음, 운영 체제만 설치되어 있습니다.
1TB 드라이브에 복제된 이전 250GB 드라이브에서 머신이 부팅되지 않는 데에는 타당한 이유가 있습니까? 어떻게 알 수 있나요? 드라이브 ID는 /boot/grub
내가 찾을 수 있는 어디에도 나타나지 않습니다. 모두 UUID입니다.
이전 드라이브에는 512B의 물리적 섹터가 있었고 새 드라이브에는 4096B의 물리적 섹터가 있었지만 512B 에뮬레이션이 있었습니다. 그렇죠?
다음은 새 드라이브에 대해 부팅 복구 CD를 실행한 결과의 일부입니다.
Drive: sda _____________________________________________________________________
Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Partition Boot Start Sector End Sector # of Sectors Id System
/dev/sda1 * 1,036,288 477,345,791 476,309,504 83 Linux
/dev/sda2 477,347,840 1,953,525,167 1,476,177,328 5 Extended
/dev/sda5 477,349,888 489,932,799 12,582,912 83 Linux
/dev/sda3 12,288 1,036,287 1,024,000 83 Linux
Drive: sdb _____________________________________________________________________
Disk /dev/sdb: 7.3 TiB, 8001563222016 bytes, 15628053168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Partition Boot Start Sector End Sector # of Sectors Id System
/dev/sdb1 1 4,294,967,295 4,294,967,295 ee GPT
GUID Partition Table detected.
Partition Attrs Start Sector End Sector # of Sectors System
/dev/sdb1 3415,628,048,06415,628,048,031 Logical Volume Manager (LVM) partition (Linux)
Attributes: R=Required, N=No Block IO, B=Legacy BIOS Bootable, +=More bits set
Drive: sdc _____________________________________________________________________
Disk /dev/sdc: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Partition Boot Start Sector End Sector # of Sectors Id System
/dev/sdc1 1 4,294,967,295 4,294,967,295 ee GPT
GUID Partition Table detected.
Partition Attrs Start Sector End Sector # of Sectors System
/dev/sdc1 2,048 5,860,532,223 5,860,530,176 Logical Volume Manager (LVM) partition (Linux)
Attributes: R=Required, N=No Block IO, B=Legacy BIOS Bootable, +=More bits set
"blkid" output: ________________________________________________________________
Device UUID TYPE LABEL
/dev/loop0 squashfs
/dev/mapper/exported-archive 4b899a61-2f1c-4cd8-bc32-ce435912ba87 ext3
/dev/mapper/exported-media 36a5370f-d49a-4da3-9bc8-fefa0d005f4f ext3
/dev/mapper/exported-photos af677e44-2a83-4aba-8b37-c38c3b07a10b ext3
/dev/mapper/exported-web 27040136-28bf-464d-9802-c20511ad661f ext3
/dev/sda1 7788ea31-5e63-4869-a80e-40c99c6128b3 ext3
/dev/sda3 6f547317-4688-435f-a69d-787bf7262f29 ext3 boot
/dev/sda5 a311a5cb-4f03-4930-a028-bf87b4dd8e55 swap swap
/dev/sdb1 yGbmYE-Lvk1-8lZj-0xQz-u57b-L1sV-0RjV66 LVM2_member
/dev/sdc1 ShaGRu-GqRZ-4fS3-k0zp-g5x4-5Kae-uLoC9o LVM2_member
/dev/sr0 2017-10-29-01-25-15-00 iso9660 Boot-Repair-Disk 32bit
/dev/zram0 a9802c34-25bd-4f6f-b3e5-d75c62fe8adc swap
/dev/zram1 5ea34823-7d6a-4ac5-bb49-7fa9c8bbecea swap
/dev/zram2 dcc2c96c-1f33-4604-b5ac-d62964731bd4 swap
/dev/zram3 0eb6d924-359e-4fed-b904-788ce185bb0a swap
답변1
예비
이미 백업이 있다고 가정합니다. 중복성은 데이터 가치에 정비례합니다!
dd
그리고 타르볼
그래서... 완전한 장치를 만드셨네요 dd
어... 어.
불량 블록의 소스 디스크의 두 배입니다. 완전히 다른 소스 및 대상 디스크 아키텍처용
다음은 몇 가지 사소한 개선 사항입니다(단지 완전성을 목적으로 함). 실제 이점은 기대하지 않습니다. 제가 추천하는 것은 다음과 같습니다
파티션 dds
새 디스크를 dd
각 파티션에 개별적으로 분할합니다.
파티션 복사
새 디스크를 수동으로 분할합니다. 고급 복사 파일 시스템. 나에게 문제를 cp -a
가져왔다tar c... source|tar x... target
그러나 나는 당신이 이미 위의 방법을 시도했지만 성공하지 못했다고 가정합니다. 그래서…
새 디스크를 사용할 수 있나요?
새 디스크에 새로운 데비안을 설치해보세요. 효과적인가요?
그렇지 않다면 우리는 물론 완전히 다른 문제를 다루고 있는 것입니다.
그렇다면 그렇다고 가정하면
나란히
[단순화를 위해 LV 항목은 피한다고 가정합니다.]
- 새 운영 체제를 설치할 때(위) 수동으로 파티션을 나누고 선택하십시오.둘루트 시스템 - 하나는 현재(새) 설치용이고 다른 하나는 이전(사본) 설치용입니다. DebCurrent DebOld로 표시해 보겠습니다.
- DebCurrent에서 새 설치를 진행합니다.
- 이전 디스크 루트를 Debold에 복사
/etc/fstab
Debold를 다시 클릭하세요.- [DebCurrent가 시작되었다고 가정]
- 부팅할 때
- 그럽 프롬프트를 입력하세요
- DebCurrent 작업 섹션 열기
- DebOld를 가리키도록 수동으로 편집하여 부팅해 보세요.
하지만... (아마도) 문제는 남아있습니다. 이것은
하드웨어 불일치 문제
아마도 문제는
- 오래된 마더보드(MBR-BIOS)
- 새로운 디스크 - gpt 선호
아이오와기본값예:
old: BIOS-MB + MBR-disk
new: EFI-MB + gpt-disk
즉, Windows 세계에서는 새로운 EFI MB에 더 많은 비용을 지출하지 않고는 방법이 없습니다.
그러나 리눅스 세계에서는 다음을 사용할 수 있습니다.BIOS-MB가 포함된 GPT 디스크 핵심은 디스크 시작 부분 근처에 작은 1MB의 특수 BIOS 부팅 파티션인 BBP를 생성해야 한다는 것입니다.
당신은 이것을 할 수 있습니다헤어졌다모든 gpt 작업을 완료하는 것이 좋지만gdisk
나중에 추가
bpp를 만들다
gpt 디스크의 경우 실제 파티셔닝은 gdisk를 사용하여 수행하는 것이 좋습니다. 이렇게 하면 정렬이 잘 유지됩니다. 그런 다음 (g)parted를 사용하여 유형을 BBP로 표시하는 것이 더 쉬울 수 있습니다. 위의 parted 및 gdisk 링크를 참고하세요.