Eu tenho uma máquina virtual no Virtualbox com o Ubuntu 15.04 (somente na interface de linha de comando) e quero copiar arquivos da máquina virtual para o host. Como eu tenho apenas o CLI, não consigo usar pastas compartilhadas.
Eu tentei acessar minha unidade USB do Virtualbox, mas não ajudou (eu tive que formatar o disco rígido depois de conectar ao Windows).
Existe alguma maneira de copiar arquivos do Ubuntu 15.04 (máquina virtual) para o Windows 7 ou drive USB?
Minha resposta:
Eu marquei uma resposta como boa, mas consegui resolver o meu problema antes. Eu criei dois programas python. um arquivo de envio, segundo arquivo de recebimento.
Se alguém precisar deste programa aqui é código: (em ambos os casos xxx.xxx.xxx.xxx para o IP do fileServer)
fileServer.py (no computador que você deseja receber arquivos):
import socket
print('File server V 1.0 by vakus')
serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serv.bind(('xxx.xxx.xxx.xxx', 9999))
serv.listen(1)
conn, addr = serv.accept()
print('Incoming Connection. Please write password:')
pas = bytes(input(), 'UTF-8')
conpass = conn.recv(1024)
if conpass != pas:
print('Passwords are not the same. closing connection')
conn.sendall(bytes('Passwords are not the same.', 'UTF-8'))
conn.close()
exit()
else:
print('Passwords are the same.')
conn.sendall(bytes('Passwords are the same.', 'UTF-8'))
filename = conn.recv(1024)
file = ""
while True:
data = conn.recv(1024)
if not data: break
file += data.decode('UTF-8')
print(data.decode('UTF-8'), end='')
print('Close connection')
conn.close()
print('Creating file...')
try:
import os
os.mkdir('recv')
del os
except:
pass
f = open('recv/' + filename.decode("UTF-8"), 'w')
f.write(file)
f.close()
fileTransmiter.py (no computador que envia o arquivo):
import socket
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect(('xxx.xxx.xxx.xxx', 9999))
sock.sendall(bytes(input('Password: '), 'UTF-8'))
answer = sock.recv(1024)
print(answer)
if answer == bytes("Passwords are not the same.", 'UTF-8'):
exit()
filename = input('File to send: ')
f = open(filename)
sock.sendall(bytes(filename, 'UTF-8'))
for x in f.readlines():
print(x)
sock.sendall(bytes(x, 'UTF-8'))
sock.sendall(bytes('', 'UTF-8'))
sock.close()
print('Connection closed.')