
일반 사용자의 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
)가 다른 사용자의 컨텍스트에서 명령을 실행하려면 해당 사용자의 컨텍스트에서 명령을 실행해야 합니다.
이 명령이 도움이 되도록 하려면 pkexec
데비안 시스템을 사용하는 경우 첫 번째 단계는 다음과 같이 설치하는 것입니다.
sudo apt install pkexec
사용하지 않는 다른 배포판을 사용하는 경우 대신 apt
배포판 패키지 관리자를 사용하여 설치하십시오 .pkexec
apt
그런 다음 그렇지 않은 경우 root
에 로그인하여 root
테스트하십시오.
sudo -s
그리고 이름이 지정된 사용자의 컨텍스트에서 명령을 실행합니다.user
pkexec --user user virsh list --all
이름이 지정된 사용자의 가상 머신을 출력해야 합니다.user