![SSH를 통해 virsh를 실행할 때 KVM 도메인이 표시되지 않는 이유는 무엇입니까?](https://linux55.com/image/215909/SSH%EB%A5%BC%20%ED%86%B5%ED%95%B4%20virsh%EB%A5%BC%20%EC%8B%A4%ED%96%89%ED%95%A0%20%EB%95%8C%20KVM%20%EB%8F%84%EB%A9%94%EC%9D%B8%EC%9D%B4%20%ED%91%9C%EC%8B%9C%EB%90%98%EC%A7%80%20%EC%95%8A%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
KVM 도메인을 실행하는 여러 노드의 검사를 자동화하려고 합니다. 방금 전체 로그인을 수행하는 대신 ssh를 사용하여 명령을 직접 실행했습니다.
ssh user@kvmhost "virsh list --all"
하지만 다음과 같은 출력이 생성됩니다.
Id Name State
--------------------
대화형으로 로그인하면 virsh list --all
도메인을 실행하고 표시할 수 있습니다. 그럼 내가 뭘 잘못하고 있는 걸까요?
답변1
LIBVIRT_DEFAULT_URI라는 환경 변수가 있는데 대화형으로 로그인할 때는 설정되지만 ssh를 통해 직접 명령을 실행할 때는 설정되지 않을 수 있습니다. 이 변수는 일반적으로 다음과 같이 설정될 수 있습니다.
LIBVIRT_DEFAULT_URI=qemu:///system
따라서 ssh에 virsh 명령을 추가하고 해당 환경 변수를 다음과 같이 설정하기만 하면 됩니다.
ssh user@kvmhost "LIBVIRT_DEFAULT_URI=qemu:///system virsh list --all"