Win10系统利用QEMU虚拟飞腾,实现了在Win10平台下启动Linux内核并挂载NFS文件系统的功能,通过这种方式,用户可以在Win10系统中运行Linux系统,并访问远程NFS文件系统,实现了跨平台的文件共享和数据交互。这种技术的应用为用户提供了更多操作系统选择和灵活性,使得不同操作系统之间的协作变得更加便捷和高效。
具体步骤:
1.win10安装qemu, 安装成功后,再添加环境变量
运行 qemu-system-x86_64 -h 是提示信息即ok
2.win10 qemu安装tap网卡驱动,
安装成功,在网络连接里会出现一个网卡设备,右击重命名,命名为 tap0 如图
选中网卡tap0和另外一块可以上网的网卡,右击桥接,产生网桥图标,如图 这样tap0才可以通过另外一块网卡上网
3.ubuntu 安装 dhcp服务器,为了让qemu获取IP,因为有时路由器不会发DHCP ack给qemu,只会发dhcp offer,这样会一直卡在获取DHCP那边
sudo apt-get install isc-dhcp-server
配置 /etc/dhcp/dhcpd.conf, option router填写自己的IP地址
subnet 192.168.5.0 netmask 255.255.255.0{
range 192.168.5.130 92.168.5.134;
option routers 192.168.5.24;
}
配置 /etc/default/isc-dhcp-server,填写自己的网卡设备,enp2S0是自己的网卡设备,用ifconfig可以查看。如
INTERFACESv4 = 'enp2s0'
启动和停止命令
sudo service isc-dhcp-server start
sudo service isc-dhcp-server stop
如果启动成功,用 sudo service isc-dhcp-server status 命令 ,如果启动不正常,99%是配置不对,可以查看log tail -50 /var/log/syslog
或者在win10下用wireshark抓dhcp包,如果有ubuntu发过来的,就启动ok
4.ubuntu安装nfs服务端和客户端
sudo apt install nfs-kernel-server nfs-common
修改 /etc/export 文件,insecure是指可以被不同局域网访问
/home/nwz/nfs/two *(insecure,rw,sync,no_subtree_check,no_root_squash)
启动停止命令
sudo service nfs-kernel-server start
sudo service nfs-kernel-server stop
如果可以 mount 192.168.5.25:/home/nwz/nfs/two test 就ok,test为一个存在的目录
5.ubuntu编译内核
下载最新内核, 安装相关包不再多述, 进入内核,添加 TUN功能
cp arch/x86/configs/x86_64_defconfig .config
make menuconfig
make -j4
make modules
把生成的 arch/x86/boot/bzImage 拷贝到win10系统中
6.ubuntu安装qemu,用于创建文件系统
网上直接git 下载,不能下载zip release,那个不全的
7.ubuntu 创建文件系统, 添加 busybox,其中 two是
qemu-img create -f raw disk.raw 512M
mkfs -t ext4 ./disk.raw
mount disk.raw /home/nwz/nfs/two
busybox下载设置
make CONFIG_PREFIX=/home/nwz/nfs/two install
创建 /etc/inittab
::sysinit:/etc/init.d/rcS
::askfirst:/bin/ash
::ctrlaltdel:/sbin/reboot
::shutdown:/sbin/swapoff -a
::shutdown:/bin/umount -a -r
::restart:/sbin/init
创建 /etc/init.d/rcS
#!/bin/sh
8.win10 启动内核
qemu-system-x86_64 -kernel c:/Users/nwz/Desktop/temp/bzImage -append "root=/dev/nfs rw nfsroot=192.168.5.24:/home/nwz/nfs/two,vers=3,tcp ip=dhcp console=ttyS0" -nographic -net nic -net tap,ifname=tap0
网段什么的一定要对
以上就是Windows 10系统利用QEMU虚拟飞腾的全部内容,如果遇到这种情况,你可以根据以上操作来解决问题,非常简单快速,一步到位。
win10系统教程推荐