Pipe
virt-install:從主機腳本發送來賓命令
我可以
virt-install
使用以下選項將輸入/輸出重定向到控制台--console
:virt-install \ --name centos \ --ram 1024 \ --os-type linux \ --os-variant centos7.0 \ --graphics none \ --location ~/CentOS-7-x86_64-Minimal-1908.iso \ --extra-args 'console=ttyS0,115200n8 serial' \ --console pty,target.type=serial
我想從腳本發送控制台輸入,因此我嘗試了命名管道。在普通的 kvm 中,可以使用以下選項:
-serial pipe:/tmp/centos
/tmp/centos
命名管道在哪裡:mkfifo /tmp/centos.in /tmp/centos.out
在
virt-install
我嘗試用以下--console
幾種組合替換:--console pty,target.type=serial,source.path=/tmp/centos
但沒有任何可用的:
cat /tmp/centos.out
並且沒有任何內容髮送到VM:
echo cmd > /tmp/centos.in
如何將命令從主機腳本傳送到來賓?
Libvirt 具有用於“管道”選項的原生 XML:https ://libvirt.org/formatdomain.html#elementsCharPipe
使用 virt-install 它應該是:
--console pipe,source.path=/path/to/my/pipe
- 編輯以刪除不正確的語法