VirtualBox에서 Windows 파티션을 실행하려고 하는데 Windows 파티션을 식별하고 그룹을 다음으로 변경하는 udev 규칙을 만들고 싶습니다.vbox 사용자. 현재 UUID별로 파티션을 일치시키도록 udev를 설정했지만 더 일반적으로 만들고 싶습니다.
현재 규칙은 다음과 같습니다.
# Rules to give VirtualBox raw access to Windows partitions
# Microsoft Reserved partition
SUBSYSTEM=="block", ATTRS{transport}=="pcie", ENV{ID_PART_ENTRY_UUID}=="df9bb75d-81b8-41cc-9faa-067f21b7089c", RUN+="/bin/chgrp vboxusers /dev/$name"
# Windows partition
SUBSYSTEM=="block", ATTRS{transport}=="pcie", ENV{ID_PART_ENTRY_UUID}=="8bad4d16-593c-4d50-a315-c8b33555888f", RUN+="/bin/chgrp vboxusers /dev/$name"
사용하는 대신ID_PART_ENTRY_UUIDmsftres
, 이러한 규칙을 일치 시키고 플래그를 분할 하고 싶습니다 msftdata
. 가능합니까?
목록 속성 및 변수를 사용해 보았지만 udevadm info -n /dev/???
파티션 플래그와 관련된 내용은 표시되지 않았습니다.
답변1
GPT 디스크의 경우 UUID가 개별 파티션에 할당됩니다.유형. 시스템에 연결된 디스크의 경우 이는 다른 매개변수이며 를 사용합니다 lsblk -o +PARTTYPE
.
udev 규칙은 이제 다음과 같습니다:
# Rules to give VirtualBox users raw access to Windows partitions
# Microsoft Reserved partitions (msftres)
SUBSYSTEM=="block", ENV{ID_PART_ENTRY_TYPE}=="e3c9e316-0b5c-4db8-817d-f92df00215ae", GROUP="vboxusers"
# Windows basic data partitions (msftdata)
SUBSYSTEM=="block", ENV{ID_PART_ENTRY_TYPE}=="ebd0a0a2-b9e5-4433-87c0-68b6b72699c7", GROUP="vboxusers"
이는 GPT를 사용하여 파티션된 디스크에만 적용됩니다. MBR 디스크에서 Windows 파티션을 감지하려면 다양한 기술이 필요합니다.
UUID 환경 변수
udev는 다양한 UUID 환경 변수에 액세스할 수 있으므로 여기에 나열했습니다.
ID_PART_TABLE_UUID
: 특정 파티션 테이블에 고유하며 대부분의 경우 디스크를 고유하게 식별하는 데 사용할 수 있습니다.ID_PART_ENTRY_TYPE
: 특정 유형의 파티션에 대해 고유합니다. GPT 파티션 유형 목록은 다음에서 찾을 수 있습니다.위키피디아.ID_PART_ENTRY_UUID
: GPT 파티션을 고유하게 식별합니다.ID_FS_UUID
: 파일 시스템을 고유하게 식별합니다.- 파티션을 다시 포맷하면 변경 사항이 발생합니다.
- 특정 파일 시스템이 UUID를 지원하지 않는 경우 더 짧은 식별자가 사용됩니다.