wsl配置
确保wsl有安装ssh相关软件,这里就不赘述了
sudo apt-get install ssh
sudo apt-get install openssh-client
qemu启动脚本配置
qemu的启动脚本中增加一句
-net user,hostfwd=::2222-:22 -net nic
这句话的意思是,将qemu的22号端口映射到host(也就是wsl)的2222端口,启动qemu之后可以在wsl这边看到

完整的启动脚本如下所示
run_qemu_debian(){
cmd="$QEMU -m 1024 -cpu max,sve=on,sve256=on -M virt,gic-version=3,its=on,iommu=smmuv3\
-nographic $SMP -kernel arch/arm64/boot/Image \
-append \"$kernel_arg $debug_arg $rootfs_arg $crash_arg $dyn_arg\"\
-drive if=none,file=$rootfs_image,id=hd0\
-device virtio-blk-device,drive=hd0\
--fsdev local,id=kmod_dev,path=./kmodules,security_model=none\
-device virtio-9p-pci,fsdev=kmod_dev,mount_tag=kmod_mount\
-net user,hostfwd=::2222-:22 -net nic\
$DBG"
echo "running:"
echo $cmd
eval $cmd
}
qemu配置
启动qemu之后,还要在我们qemu模拟的debian中做好ssh相关的配置,在/etc/ssh/sshd_config中加上一句
PermitRootLogin yes

然后重启ssh相关服务
sudo service ssh restart
wsl连接
输入命令,输入密码后即可连接
ssh -p 2222 root@0.0.0.0

这里选择的是0.0.0.0这个IP是因为netstat -anp中显示的是
tcp 0 0 0.0.0.0:2222 0.0.0.0:* LISTEN 44/qemu-system-aarc
参考链接
-
宿主机要通过ssh访问虚拟机有两种网络配置方式,一种是用户模式网络,另一种是网桥网络模式。前面的我们使用的是第一种,这个参考链接还介绍了怎么用网桥桥接的方式。
FEATURED TAGS
Ubuntu
markdown
stm32
OSDK
飞控
串口
Jscope
C
C++
bin
J-Flash
字符串
指针数组
malloc
vscode
svg
png
github
python
CMake
CMakeLists
Linux
拷贝构造函数
GIF
录屏
docker
操作系统
make
Makefile
文件操作
DSP
CCS
SQL
MySQL
shell
bochs
计算机网络
win10
SMTP
Socket
iOS
uxplay
投屏
证书错误
apt
nodesource
ELF
Typora
图床
fossil
sql
git
SecureCRT
windows
cygwin
blog
alsa
alsa-utils
alsa-lib
音频
USB
链接文件
内存
mmap
tcpdump
交叉编译
网络
防火墙
crontab
bond
Linux性能
udev
linux
pcie
wsl2
MMIO
wsl
qemu
raspi4
gdb
ssh
tun
tap
ifconfig
打印
gmac
phy
vim
组播
rock3a
win11
usb
sd
ubuntu
iptables
netfilter
wifi
veth
ipv6
wireshark
radvd
dhcpv6
dhcpv4
网络命名空间
br虚拟网卡
NDP
emmc
存储
raspi4b
baremental
jtag
buildroot
rootfs
ext4
调试
uboot
dropbear
raspi
ebpf
uart
baremetal
kernel
bringup
libbpf
arm64
fit
gzip
压缩
initcall_debug
bootargs
I2C
代理
cmake
python3
zephyr
mcxa156
riscv
MCXA156
I3C
RPMB
tar
lzma
dns
picgo
gpt
otg
adb
fdtdump
gadget
fastboot
mdns
gcc
mailbox