나는 지난 몇 시간 동안 어려움을 겪었습니다.
다음 명령을 사용하여 기존 파티션을 모두 삭제하고 (거의 마운트 해제된) 이동식 USB 미디어에 새 파티션을 만듭니다.
$ sudo fdisk /dev/sdb1
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-30296063, default 2048): 2048
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-30296063, default 30296063): 30296063
Created a new partition 1 of type 'Linux' and of size 14,5 GiB.
그런 다음 다음 명령을 사용하여 파티션 유형을 변경하십시오.
Command (m for help): t
Hex code (type L to list all codes): c
Changed type of partition 'Linux' to 'W95 FAT32 (LBA)'.
적용된 변경사항:
Command (m for help): w
The partition table has been altered.
Syncing disks.
커널에 변경 사항을 알립니다.
$ sudo partprobe
여태까지는 그런대로 잘됐다. 그 후 새 파티션에 FAT32 파일 시스템을 만들었습니다.
$ sudo mkfs -t vfat /dev/sdb1
mkfs.fat 4.1 (2017-01-24)
장치를 가상 디렉터리에 탑재합니다.
$ sudo mount /dev/sdb1 /media/xxx
모든 것이 괜찮아 보이지만 fdisk 유틸리티를 사용하여 장치의 파티션을 다시 확인하려는 경우:
$ sudo fdisk /dev/sdb1
Disk /dev/sdb1: 14,5 GiB, 15511584768 bytes, 30296064 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: 0x00000000
이상한 디스크 식별자와 파티션 테이블이 전혀 없습니다(왜?). 하지만 이 명령을 실행하면:
$ sudo fdisk -l
Disk /dev/sdb: 14,5 GiB, 15518924800 bytes, 30310400 sectors
Disk model: TransMemory
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: 0x03eba3c3
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 30298111 30296064 14,5G b W95 FAT32
예, 파티션 테이블은 여기에 있지만 파티션 유형은 W95 FAT32(LBA)가 아닌 W95 FAT32입니다. 그럼 내가 뭘 잘못하고 있는 걸까요? 이 동작이 정상인가요?
답변1
fdisk
개별 파티션이 아닌 전체 디스크에서 작동합니다. 즉, 를 사용합니다 fdisk -l /dev/sdb
.