Root 無法看到非超級使用者的 KVM 來賓

Root 無法看到非超級使用者的 KVM 來賓

為什麼 root 不知道普通使用者的 KVM guest 虛擬機器?

user@Lin0011:~$ virsh list --all
 Id   Name         State
-----------------------------
 -    Lin0021   shut off

user@Lin0011:~$ 
root@Lin011# virsh list --all
 Id   Name   State
--------------------

root@Lin011# 
user@Lin0011:~$ virsh uri
qemu:///session

user@Lin0011:~$ 
user@Lin0011:~$ 
user@Lin0011:~$ env | grep VIR
user@Lin0011:~$ 
root@Lin011# virsh uri
qemu:///system

root@Lin011# 
root@Lin011# 
root@Lin011# env | grep VIR
root@Lin011# 


答案1

為什麼 root 不知道普通使用者的 KVM guest 虛擬機器?

這是因為該命令virsh在當前使用者的上下文中運行。

為了讓任意使用者(例如root)在另一個使用者的上下文中執行該命令,我們需要在該使用者的上下文中執行該命令。

為了讓這個可能的pkexec命令可以提供幫助,如果您使用的是 Debian 系統,第一步是安裝它,如下所示:

sudo apt install pkexec

如果您使用的是其他不使用的發行版,apt請使用您的發行版套件管理器來安裝pkexec,而不是apt

然後,如果您沒有root,請登入root進行測試:

sudo -s

並在名為的用戶的上下文中執行命令user

pkexec --user user virsh list --all

應該輸出名為的用戶的虛擬機user

相關內容