虚拟机安装openwrt
文章目录
安装
-
从镜像网站下载openwrt的镜像
openwrt-*-generic-ext4-combined*
的镜像是ext4形式的镜像,与普通linux系统一样,可以随意写入(一般用这个的灵活性高)openwrt-*-generic-squashfs-*
的镜像是有固定不可写入的硬盘分区
-
扩容
-
将img文件转换为vdi,并enlarge为1G(参考这里)
VBoxManage convertfromraw --format VDI openwrt.img openwrt.vdi # 如果这步的修改vdi容量大小不成功,可以将上一步的openwrt.vdi注册到virtualbox中,然后用图形方式修改容量大小 # 只要注册硬盘,不用新建虚拟机 VBoxManage modifymedium openwrt.vdi --resize 1024
-
将Openwrt.vdi上传到一台linux机器上操作(如果是安装在SD卡上的系统从fdisk开始都是一样,只是对虚拟机是挂载vdi文件,而对SD卡直接就是操作
/dev/sd*
之类的文件)# 安装qemu-utils以挂载vdi文件 sudo apt install qemu-utils # 添加内核模块 sudo modprobe nbd # 挂载vdi文件(如果是SD卡就挂载SD卡) sudo qemu-nbd -c /dev/nbd0 "/home/evan/openwrt.vdi" # 用fdisk修改分区大小 sudo fdisk /dev/nbd0 # p命令显示分区并记录openwrt.img2的StartSector(我这里是33792) # d命令删除第二个分区 # n命令新建一个分区,First sector填上述[33792](不要remove the signature) # w命令退出 # 用e2fsck检查分区 sudo e2fsck /dev/nbd0p2 # resize2fs修改分区 sudo resize2fs /dev/nbd0p2 # 卸载vdi文件 sudo qemu-nbd --disconnect /dev/nbd0
- 将修改后的vdi传回虚拟机host
-
-
-
在virtualbox中新建一个虚拟机,将刚才生成的
vdi
作为其硬盘启动即可- 内存有256M即可
- 网卡需要一张host-only、一张NAT(第一张是host-only、第二张是NAT)
- 如果作为旁路由就只需要一张bridge网卡即可
基本设置
-
设置root密码:
passwd
-
设置网络
-
查看当前的网卡设置:
uci show network
,可以看到默认的br-lan地址是192.168.1.1 -
设置host-only网卡的的地址(应根据自己的host-only网卡地址设置)
# 下列步骤完成后应该就能通过ssh访问Openwrt了 uci set network.lan.ipaddr='192.168.11.2' uci commit reboot
-
在可以用ssh登录后就进行如下设置(其实就是将lan接口改为mng作为管理接口,wan接口为自动获取IP)
uci batch <<EOF set network.mng=interface set network.mng.type='bridge' set network.mng.proto='static' set network.mng.netmask='255.255.255.0' set network.mng.device='eth0' set network.mng.ipaddr='192.168.11.2' delete network.lan delete network.wan6 set network.wan=interface set network.wan.device='eth1' set network.wan.proto='dhcp' EOF
-
如果openwrt作为旁路由使用就按如下设置(假设家庭主路由的网段为
192.168.50.0/24
)uci batch <<EOF set network.mng=interface set network.mng.type='bridge' set network.mng.proto='static' set network.mng.netmask='255.255.255.0' set network.mng.device='eth0' set network.mng.ipaddr='192.168.50.1' delete network.lan delete network.wan delete network.wan6 EOF
-
提交修改并重启:
uci commit && reboot
-
-
设置时区
安装必要软件
安装v2
-
Add new opkg key:
wget -O kuoruan-public.key http://openwrt.kuoruan.net/packages/public.key opkg-key add kuoruan-public.key
-
Add opkg repository:
echo "src/gz kuoruan_packages http://openwrt.kuoruan.net/packages/releases/$(. /etc/openwrt_release ; echo $DISTRIB_ARCH)" >> /etc/opkg/customfeeds.conf echo "src/gz kuoruan_universal http://openwrt.kuoruan.net/packages/releases/$(. /etc/openwrt_release ; echo $DISTRIB_ARCH)" >> /etc/opkg/customfeeds.conf
-
install package:
opkg update opkg install v2raya
开机启动虚拟机
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
“VB-MYDEVICE”=“\”C:\\Program Files\\Oracle\\VirtualBox\\VBoxManage.exe\“ startvm \”NAMEOFVBINSTANCE\“ –type headless”
FAQ
关于虚拟硬盘格式
如果需要在Hype-V或者VMware中安装,则可以考虑将vdi硬盘格式转换:
# vdi转vmdk
VBoxManage.exe clonehd source.vdi target.vmdk --format VMDK
# vdi转vhd
VBoxManage.exe clonehd source.vdi target.vhd --format VHD
# vmdk转vdi
VBoxManage.exe clonehd source.vmdk target.vdi --format VDI
# 如果遇到uuid冲突问题
VBoxManage.exe internalcommands sethduuid source.vdi
文章作者 Evan Yu
上次更新 2022-12-20