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をサポートしていない場合、より短い識別子が使用されます。