Aviso: Esta é uma solução alternativa, não uma solução. Ele funciona com um host Ubuntu e um cliente Ubuntu. Não funcionará com configurações de rede especializadas no lado da VM.
Descrição:
Eu tive problemas com a área de transferência no passado e, para mim, é uma grande preocupação em corrigir isso. Em vez disso, eu tenho um script que eu juntei que me permite basicamente criar um chat entre o host e o convidado com netcat .
Fazendo isso acontecer:
Usando um editor de texto, crie um novo arquivo de texto simples com o seguinte conteúdo. Você pode alterar o número da porta de 12354 para qualquer porta aberta.
#!/bin/bash
# DESC: vbox-chat allows you to send text back and forth between a VirtualBox
# machine an Ubuntu host. This script must be started on the host first and then
# on the client.
# ARGS: Pass "host" or "guest" as the first parameter when calling this script
port=12354
id="$1"
id=${id,,}
while [ $(grep -P "^(host|guest)$" <<< "$id" | wc -l) -eq 0 ]
do
clear
if [ "$id" == "" ]; then
read -p "Is this the host or guest system (type host or guest): " id
id=${id,,}
fi
done
clear
[ "$id" == "host" ] && other="guest" || other="host"
echo -e "Type or paste text into this windo and press enter to have it show up on the\n$other machine\n"
if [ "$id" == "host" ]; then
nc -l $port
else
hostIP=$(route -n | grep -P "^0.0.0.0" | tr -s ' ' | cut -f2 -d ' ')
nc $hostIP $port
fi
Esse script precisa ser salvo nas máquinas host e guest (eu chamei de vm-chat.sh
) e ele precisa ser executável ( chmod +x /path/to/vm-chat.sh
). Depois de fazer isso:
- Na máquina host, navegue até seu script no terminal e execute
./vm-chat.sh host
(este deve ser iniciado antes da instância guest) - Na máquina convidada, navegue até seu script no terminal e execute './vm-chat guest' (Este deve ser iniciado após a instância do host)
Agora você pode digitar (ou colar) o que quiser na janela do terminal do host, apertar enter e ele será imediatamente transferido para a janela do terminal do convidado. Da mesma forma, você pode digitar (ou colar) qualquer coisa que desejar na janela do terminal do convidado, apertar enter e ela será imediatamente transferida para a janela do terminal do host.
Obviamente, isso só vai funcionar para o texto. Se você quiser copiar e colar arquivos, pode convertê-los para base64 primeiro, mas provavelmente não é a melhor maneira de transferir arquivos.
AVISO : Todo o texto é transferido pela rede virtual entre o host e o convidado em texto simples!