Tôi đã có ba vấn đề trên một máy chủ linux:
Nếu nó không bị vô hiệu hóa, bạn phải nhấn Return khi VBox yêu cầu truy cập toàn màn hình Việc
tích hợp chuột không tự động (ứng dụng khách của tôi lấy trực tiếp chuột usb)
và ...
Chương trình VBoxControl trong lệnh savestate của máy khách được borked
Các kịch bản sau đây chăm sóc cả ba vấn đề.
Nó đòi hỏi bạn phải apt-get wmctrl và xdotool.
Bổ sung khách phải được cài đặt.
Thay đổi VM_NAME!
Thay đổi HIỂN THỊ thành bất cứ màn hình nào bạn muốn.
Để hiểu rõ nhất, hãy chạy "sudo VBoxControl guestproperty set SaveStateNow 1" trong một thiết bị đầu cuối của khách hàng.
---cắt ở đây---
#!/bin/bash
VM_NAME='My Machine Name'
MAXTRIES=20
export DISPLAY=:0.1
VBoxManage startvm "$VM_NAME" &
i="0"
while [ $i -lt $MAXTRIES ]; do
echo Fullscreen try $i
wmctrl -a "VirtualBox - Information"
if [ $? == 0 ]; then
sleep 1
xdotool key "Return"
break
fi
sleep 1
i=$[$i+1]
done
i="0"
while [ $i -lt $MAXTRIES ]; do
echo Pointer try $i
GUEST_ADDITIONS_ACTIVE=`VBoxManage showvminfo "$VM_NAME" | grep "Additions run level" | cut -d : -f 2`
if [ $GUEST_ADDITIONS_ACTIVE == "1" ]; then
sleep 1
xdotool key "Super_R+i"
break
fi
sleep 1
i=$[$i+1]
done
while true; do
if [ "`VBoxManage guestproperty get "$VM_NAME" SaveStateNow`" != 'No value set!' ]; then
echo Saving...
VBoxManage guestproperty set "$VM_NAME" SaveStateNow
VBoxManage controlvm "$VM_NAME" savestate
break
fi
sleep 1
done