Fedora25ワークステーションホストでゲストとしてさまざまな仮想マシンを実行しています。仮想ディスク(および他のすべての個人用のもの)を、2番目の組み込みディスクの異なる個別のパーティションに保存します。 virt-manager
仮想マシンをqemu
ユーザーとして実行し、ディスクを起動するには、以下を実行する必要があります。
Sudo setfacl -R -m u:qemu:rwx /run/media/cl
これにより、qemu
ユーザーはこれらの仮想ディスクを使用してVMを起動できます。ただし、ホストシステムを再起動すると、ACL設定が失われ、そのコマンドを再度実行する必要があります。 Ubuntuシステムをホストとして使用している場合、コマンドを1回実行するだけで、権限の変更はその後の再起動後も存続します。
Ubuntuのように、再起動後にRed Hatベースのシステムに変更されたACL設定を記憶させるにはどうすればよいですか?
これはハックですが、起動時に、おそらく/etc/systemd/system/set-qemu-acl.service
で、簡単なsystemd
サービスを記述して実行することができます。
[Unit]
Description=QEMU ACL Hack
Requires=local-fs.target
After=local-fs.target
[Service]
ExecStart=/usr/bin/setfacl -R -m u:qemu:rwx /run/media/cl
[Install]
WantedBy=multi-user.target
次に、それを有効にします。
Sudo systemctl enable set-qemu-acl.service
システムのcron
テーブルに線を引くこともできます。
* * * * * root /usr/bin/getfacl /run/media/cl | grep 'user:qemu:rwx' || /usr/bin/setfacl -R -m u:qemu:rwx /run/media/cl
または、手動でマウントしているので、ラッパースクリプトでそれを実行できます(おそらく/usr/local/bin/mount-acl
)。
#!/bin/sh
mount $1 $2
setfacl -R -m u:qemu:rwx $2
それなら、Sudo mount-acl /dev/partition /run/media/wherever
だけで、行きたい場所にたどり着きますね。