루트는 루트가 아닌 KVM 게스트를 볼 수 없습니다.

루트는 루트가 아닌 KVM 게스트를 볼 수 없습니다.

일반 사용자의 KVM 게스트에 대해 루트가 모르는 이유는 무엇입니까?

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

일반 사용자의 KVM 게스트에 대해 루트가 모르는 이유는 무엇입니까?

이는 명령이 virsh현재 사용자의 컨텍스트에서 실행되기 때문입니다.

어떤 사용자라도(예를 들어) 다른 사용자의 컨텍스트에서 명령을 실행하려면 root해당 사용자의 컨텍스트에서 명령을 실행해야 합니다.

이 명령을 가능하게 하려면 pkexecDebian 시스템을 사용하는 경우 첫 번째 단계는 다음과 같이 설치하는 것입니다.

sudo apt install pkexec

를 사용하지 않는 다른 배포판을 사용하는 경우 apt배포판의 패키지 관리자를 사용하여 pkexec대신 설치하십시오.apt

그런 다음, 계정이 없으면 root로그인하여 root테스트하세요.

sudo -s

이름이 지정된 사용자의 컨텍스트에서 명령을 실행합니다.user

pkexec --user user virsh list --all

이름이 지정된 사용자에 대한 가상 머신을 출력해야 합니다.user

관련 정보