有用户在win10系统中执行inittab main方法时出现了错误,这个问题似乎与在win10下使用qemu启动linux内核有关。在这种情况下,用户需要进一步调查问题的根本原因,并寻找解决方案,以确保系统的正常运行。希望在技术支持的帮助下,用户能够尽快解决这个困扰他们的问题。
具体步骤:
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
网段什么的一定要对
以上就是win10系统inittab的全部内容,如果有不清楚的用户可以参考以上步骤进行操作,希望对大家有所帮助。
win10系统教程推荐
win10系统推荐