PTS를 버퍼링하는 방법은 무엇입니까?

PTS를 버퍼링하는 방법은 무엇입니까?

libvirt를 통해 LXC 컨테이너를 사용하여 시스템을 구축 중이고, 컨테이너의 stdout.

새 도메인이 생성되면 의사 TTY가 생성 /dev/pts/*되고 libvirt's:를 사용하여 pts를 특정 LXC 컨테이너에 연결할 수 있습니다 virsh.virsh -c lxc:/// ttyconsole <domain name>

pts는 데이터 스트림이므로 screen컨테이너를 시작한 후 가능한 한 빨리 데몬 모드를 연결한 virsh다음 bash 스크립트를 사용하여 위 명령을 호출해 보았습니다 screen.

CT_PID=$(virsh -c lxc:/// ttyconsole $domain)
screen -dmS my_task $CT_PID

그러나 명령 스트림은 대부분의 작업에 비해 너무 느리고 일부 콘텐츠는 screen추가되기 전에 pts를 통해 스트리밍되므로 확실히 손실됩니다.

데이터 손실 없이 libvirt로 생성된 pts 장치의 출력을 버퍼링하는 방법은 무엇입니까?

답변1

console type=다른 libvirt 드라이버의 경우 다른 값을 사용해 볼 수 있습니다 . file예 를 들어 lxc드라이버에는 pty. 직후에는 조금 더 빨라질 수 있지만 여전히 꽤 강렬합니다.virsh start --pausedlxcvirsh startvirsh pause

관련 정보