저는 두 개의 서로 다른 디스크를 가지고 있는 누군가를 위해 컴퓨터를 수리하고 있습니다. 패딩과 파티셔닝은 다음과 같습니다.
- 여러 운영 체제로 채워진 여러 파티션
- 단일 파티션이 있는(즉, 파티션되지 않은) 내부 데이터 드라이브입니다.
불행히도 데이터 드라이브는 파티션 테이블을 가져오는 드라이브입니다.
- 내가 이해하는 바는 그들이 Windows를 먼저 설치한 다음 Arch Linux를 설치했지만 데이터 드라이브를 연결했기 때문에 결국 잘못된 드라이브가 파티션 테이블을 가져오는 것으로 나타났습니다.
- 그들은 최근에 데이터 드라이브를 뽑고 파티션 테이블이 사라진 것을 발견할 때까지 Windows에 계속해서 아치 리눅스를 설치하면서 몇 달 동안 눈치 채지 못했습니다.
- 파티션 테이블을 복사한 후 삭제하려고 하기 전에 겪은 문제는 만일을 대비해 미리 데이터를 백업할 공간이 없다는 점이었습니다.
내 질문:
그렇다면 디스크 간에 파티션 테이블을 복사한 다음 GUID를 재설정/임의화하여 두 디스크를 모두 사용할 수 있게 만드는 일반적인 프로세스가 안전하고 모든 기존 데이터와 독립적인지 궁금합니다.
sgdisk -R=/dev/sdb /dev/sda sgdisk -G /dev/sdb
sgdisk
이 답변에서 두 가지 명령을 받았습니다.https://unix.stackexchange.com/a/60393/173317
설정 세부정보
결과lsblk -fa
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1
└─sda2 ntfs COMPUTER 16 digit alpha numeric code
sdb
├─sdb1 ntfs System Reserved 16 digit alpha numeric code
├─sdb2 ntfs 16 digit alpha numeric code
├─sdb3 ntfs 16 digit alpha numeric code
├─sdb4
├─sdb5 swap SWAP 8 digits-4 digits-4 digits-4 digits-12 digits [SWAP]
├─sdb6 ext4 BOOT 8 digits-4 digits-4 digits-4 digits-12 digits /boot
├─sdb7 ext4 ROOT 8 digits-4 digits-4 digits-4 digits-12 digits /
└─sdb8 ext4 HOME 8 digits-4 digits-4 digits-4 digits-12 digits /home
sr0
결과parted -l
Model: ATA ST3500320AS (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 17.4kB 1018kB 1000kB bios_grub
2 1049kB 500GB 500GB ntfs Basic data partition msftdata
Model: ATA ST2000DX001-1CM1 (scsi)
Disk /dev/sdb: 2000GB
Sector size (logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 106MB 105MB primary ntfs boot
2 106MB 107GB 107GB primary ntfs
3 107GB 107GB 472MB primary ntfs diag
4 107GB 2000GB 1893GB extended lba
5 107GB 116GB 8590MB logical linux-swap(v1)
6 116GB 117GB 1074MB logical ext4 boot
7 117GB 139GB 21.7GB logical ext4
8 139GB 192GB 53.7GB logical ext4
결과fdisk -l
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 8 digits-4 digits-4 digits-4 digits-12 digits
Device Start End Sectors Size Type
/dev/sda1 34 1987 1954 977K BIOS boot
/dev/sda2 2048 976771071 976769024 465.8G Microsoft basic data
Disk /dev/sdb: 1.8 TiB, 2000398934016 bytes, 3907029168 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
Disk identifier: 10 alpha numeric (hex) digits
Device Boot Start End Sectors Size Id Type
/dev/sdb1 * 2048 206847 204800 100M 7 HPFS/NTFS/exFAT
/dev/sdb2 206848 208795647 208588800 99.5G 7 HPFS/NTFS/exFAT
/dev/sdb3 208795648 209717247 921600 450M 27 Hidden NTFS WinRE
/dev/sdb4 209717248 3907026943 3697309696 1.7T f W95 Ext'd (LBA)
/dev/sdb5 209719296 226496511 16777216 8G 82 Linux swap / Solaris
/dev/sdb6 * 226498560 228595711 2097152 1G 83 Linux
/dev/sdb7 228597760 271032319 42434560 20.2G 83 Linux
/dev/sdb8 271034368 375891967 104857600 50G 83 Linux
집에서 실행하거나 sgdisk -p
데이터 드라이브의 루트에서 아무것도 반환하지 않습니다.
답변1
GUID를 사용하면 괜찮을 것입니다.디스크하지만 조심하세요. 파티션 및 파일 시스템 UUID가 더 일반적으로 사용되며 이를 교환하는 것은 위험할 수 있습니다. GUID는 일반적으로 부트 로더에서 디스크 유형/용도(Windows, FreeBSD, CoreOS Linux 등)를 식별하는 데 사용됩니다. 설명에 따르면 안전할 것 같습니다. 추가 보안을 위해 파티션 테이블을 USB 드라이브에 백업하여 필요한 경우 복원할 수 있습니다. ( sgdisk -b
). 이는 파티션 테이블을 편집해도 데이터 블록이 수정되지 않고 해당 블록이 위치한 경계만 수정되기 때문입니다.
파티션/파일 시스템 UUID에 대해 자세히 알아보려면:
파일 시스템의 UUID는 종종 Linux 시스템에서 부팅 장치를 식별하는 데 사용됩니다. 예를 들어:
BOOT_IMAGE=/vmlinuz-4.4.14-200.fc22.x86_64 root=/dev/mapper/f20-root ro rd.lvm.lv=f20/root vconsole.font=latarcyrheb-sun16 rd.luks.uuid=luks-8cf2f2dc-5a3d-4cb4-9c09-e036b3812eac rd.lvm.lv=f20/swap rhgb quiet LANG=en_US.UTF-8
해당 디스크의 UUID를 변경하면 상황이 복잡해질 수 있습니다. 상황이 불안정해질 수 있는 또 다른 장소분할이야기의 한 면은 이렇습니다 /etc/fstab
.
#
# /etc/fstab
# Created by anaconda on Fri Dec 20 18:47:10 2013
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/f20-root / ext4 defaults,x-systemd.device-timeout=0 1 1
UUID=44450fe5-24d0-468b-b20b-10c0127308dd /boot ext4 defaults 1 2
/dev/mapper/f20-home /home ext4 defaults,x-systemd.device-timeout=0 1 2
/dev/mapper/f20-swap swap swap defaults,x-systemd.device-timeout=0 0 0
더 나은 설문조사를 얻으려면 먼저 다음을 실행하세요.
lsblk -fa
그러면 필요한 경우 교환할 수 있도록 모든 UUID 정보가 표시됩니다.