다중 파티션 IMG 원시 디스크 파일이 있고 이를 마운트하지 않고 각 파티션의 파티션 레이블을 나열하고 싶습니다.
이 명령은 fdisk -l
내가 원하는 방식으로 거의 작동하지만 태그가 나열되지 않습니다.
fdisk -l test.img
Disk test.img: 200 MiB, 209715200 bytes, 409600 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: dos
Disk identifier: 0xcae9ed5b
Device Boot Start End Sectors Size Id Type
test.img1 * 2048 104447 102400 50M b W95 FAT32
test.img2 104448 206847 102400 50M b W95 FAT32
test.img3 206848 309247 102400 50M b W95 FAT32
test.img4 309248 409599 100352 49M 5 Extended
test.img5 311296 409599 98304 48M b W95 FAT32
내가 이것을 원하는 이유는 어떤 것을 설치할지 알기 위해서입니다. 위는 테스트 목적으로 만든 샘플 원시 디스크 파일의 예일 뿐이지만 실제 파일은 다양한 파티션이 있는 128GB UFD로 멀티 부팅 드라이브로 사용됩니다.
디스크 같은 것으로 가능합니까? 지금까지는 파티션을 마운트한 후에만 태그를 나열할 수 있지만 이는 목적에 맞지 않습니다. 파티션이 너무 많아서 각 파티션 레이블을 위에 표시된 출력의 일부로 포함하거나 가능하면 다른 명령을 사용하여 어느 것이 어느 것인지 알 수 있도록 하고 싶습니다.
답변1
어떻게 이해가 안 돼요용이하게시스템 도움 없이 루트로 이 작업을 수행하십시오. 시스템에 파티션에 대해 알도록 요청한 다음 파티션과 그 안에 있는 파일 시스템에 대한 정보를 다시 요청할 수 있습니다. 여기서 "시스템"은 커널 기능과 udev에 내장된 계측 기능의 느슨한 조합입니다. 다음 두 명령만 필요합니다.kpartx
그리고blkid
. 내 예는 OP와 값이 다르지만 매우 유사합니다.
# kpartx -v -a test.img
add map loop0p1 (253:8): 0 20480 linear 7:0 2048
add map loop0p2 (253:9): 0 22528 linear 7:0 22528
add map loop0p3 (253:10): 0 20480 linear 7:0 45056
add map loop0p4 (253:11): 0 2 linear 7:0 65536
add map loop0p5 (253:12): 0 40960 linear 7:0 67584
# blkid /dev/loop0 /dev/mapper/loop0p*
/dev/loop0: PTUUID="a5ebeec3" PTTYPE="dos"
/dev/mapper/loop0p1: SEC_TYPE="msdos" LABEL="MYFS1" UUID="D816-AFC1" TYPE="vfat" PARTUUID="a5ebeec3-01"
/dev/mapper/loop0p2: SEC_TYPE="msdos" LABEL="MYFS2" UUID="D857-D702" TYPE="vfat" PARTUUID="a5ebeec3-02"
/dev/mapper/loop0p3: SEC_TYPE="msdos" LABEL="MYFS3" UUID="D894-3506" TYPE="vfat" PARTUUID="a5ebeec3-03"
/dev/mapper/loop0p4: PTTYPE="dos" PARTUUID="a5ebeec3-04"
/dev/mapper/loop0p5: SEC_TYPE="msdos" LABEL="MYLASTFS" UUID="074A-2F0F" TYPE="vfat" PARTUUID="a5ebeec3-05"
# kpartx -v -d test.img
del devmap : loop0p5
del devmap : loop0p4
del devmap : loop0p3
del devmap : loop0p2
del devmap : loop0p1
loop deleted : /dev/loop0
파일 시스템이 마운트되지 않았습니다. 파티션만 매핑, 확인 및 매핑 해제합니다.