使用TCP端口2222将文件传输到虚拟机QEMU无效

时间:2018-11-15 08:22:12

标签: linux tcp kernel virtual-machine qemu

所以我运行以下命令打开QEMU:

qemu-system-x86_64 -m 64M -hda ../debian_squeeze_amd64_standard.qcow2 -append "root=/dev/sda1 console=tty0 console=ttyS0,115200n8" -kernel arch/x86_64/boot/bzImage -nographic -net nic,vlan=1 -net user,vlan=1 -redir tcp:2222::22

代码可以正常工作,并且QEMU启动,但是当我键入以下代码对文件newcheck进行编码时,它显示错误:

root@debian-amd64:~# scp -P 2222 newcheck root@localhost:~
ssh: connect to host localhost port 2222: Connection refused
lost connection

有人可以让我知道怎么了吗?

2 个答案:

答案 0 :(得分:0)

在较新版本的qemu中,“-net”已弃用,建议改为使用“ -netdev”。因此,请尝试以下操作:

qemu-system-x86_64 -m 64M -hda ../debian_squeeze_amd64_standard.qcow2 -append "root=/dev/sda1 console=tty0 console=ttyS0,115200n8" -kernel arch/x86_64/boot/bzImage -nographic -netdev user,id=net0,hostfwd=tcp::2222-:22 -device e1000,netdev=net0

答案 1 :(得分:0)

我成功地将-net nic,vlan=1 -net user,vlan=1 -redir tcp:2222::22更改为-net nic,model=e1000 -net user,hostfwd=tcp::2222-:22。 希望这对XD有帮助

推荐:#07 - How To Emulate Firmware With QEMU - Hardware Hacking Tutorial