详细步骤
一、环境&准备
- VMware Workstation Pro 16
- 包含科学上网插件的OP镜像
- 科学上网
二、安装OP虚拟机
需要一台全局科学上网的OP作为编译机的路由,让编译机处于全局留学环境.
虽然让宿主机全局科学上网也行,但还是不太方便,有些时候还是需要非留学网络的,切来切去比较麻烦
# 这里直接使用vmdk类型的镜像
选择一个位置存放虚拟机,把镜像拷到哪里
我放在 E:\Virtual Machines\OpenWrt ,把vmdk镜像复制一个到这里
# 创建虚拟机
VMware->文件->新建虚拟机
->自定义
->Workstation 15.x
->稍后安装操作系统
->linux 其他Linux4.X内核64位
->虚拟机名称和位置,和上面保持一致,名称OpenWrt,位置 E:\Virtual Machines\OpenWrt
->提示包含现有虚拟机,是
->处理器,1核2线程,随意
->内存默认768
->使用网络地址转换(NAT)
->LSI Logic
->SCSI
->使用现有虚拟硬盘
->选择刚才E:\Virtual Machines\OpenWrt文件夹内的vmdk镜像
->保持现有格式
->完成
#查看VM的NAT配置
VMware
->编辑
->虚拟网络编辑器
->选中VMnet8 NAT模式,NAT设置
->记下网络信息,我的子网为192.168.65.0,掩码24,网关.2
# 配置OP网络
直接开机,进入等待系统开机完成(控制台信息不跳动),点击虚拟机窗口,回车进入
配置网络
vi /etc/config/network # 把 lan 下的192.168.x.x 改为 192.168.65.100(根据虚拟机NAT子网而定)
/etc/init.d/network restart # 重启网络
到宿主机浏览器,打开192.168.65.100
用户root,默认无密码或者密码为password(取决于固件),登录
给OP设置一个密码,到 系统->管理权->路由器密码,设置一个密码
根据虚拟机NAT网络信息,进一步修改网络配置,到
网络->接口->lan->编辑
->常规设置,网关:192.168.65.2
->高级设置,使用自定义的nds服务器:119.29.29.29,+,8.8.4.4,+,192.168.65.2
->保存
->保存并应用
这样OP虚拟机应该能正常上网了(宿主机能上网),可以到终端去ping百度或者其它方法验证
# 配置全局科学上网
根据插件不同,配置不一样,以PassWall为例
在节点列表添加自己已有的留学节点信息,可以通过连接导入,保存并应用
基本设置->主要:勾选主开关,tcp节点选择上一步添加的节点,udp无所谓
基本设置->模式:全部选择全局代理,保存并应用
可以点上面的github连接检查,确保能连到github
至此,op配置完成,可以作为旁路由,支持编译机全局留学网络
至于使用img镜像的,可以通过StarWindConverter软件转换为vmdk
三、安装编译机
镜像,这里选择 ubuntu-20.04-live-server-amd64.iso
附下载磁力链接:magnet:?xt=urn:btih:C44F931B1A3986851242D755D0AC46E9FA3C5D32&dn=ubuntu-20.04-live-server-amd64.iso&xl=952107008
# 下载好ISO镜像
# 创建虚拟机
VMware->文件->新建虚拟机
->自定义
->Workstation 15.x
->稍后安装操作系统(这里不直接引用镜像,不想用自带的简易安装)
->Linux Ubuntu64位
->名称:ubuntu_2004_bianyi,位置:E:\Virtual Machines\ubuntu_2004_bianyi
->处理器配置:处理器数量8,内核数量2,内核总数16(根据自身机器cpu配,当然是给的配置越好 ,编译速度越快了!)
->内存:8192MB
->使用网络地址转换(NAT)
->LSI Logic
->SCSI
->创建新硬盘:最大硬盘大小60G,将虚拟磁盘拆分成多个文件
->硬盘文件名称 默认
->完成
编辑虚拟机设置->硬件
->CD/DVD:连接,使用ISO映像文件,选择下载好的ISO镜像,确定
#安装ubuntu
开启虚拟机,等待跑完前置程序
到选择语言,默认English
->Continue without updating
->默认键盘即可,Done
->网络配置,这里给它配个静态网络
->ens33 eth ,Edit IPv4
->Automatic (DHCP) 改为 Manual
这里网关暂时不配置留学,方便更新系统以及软件
->Subnet:192.168.65.0/24,Address:192.168.65.101,Gateway:192.168.65.2,Name server:192.168.65.2,save
->Done
->代理不配置,Done
->软件镜像站默认国内镜像,Done
->硬盘设置,启用lvm,Set up this disk as an LVM group,按空格键选上,Done
->默认给的根分区空间太少,这里直接拉满,选择mount at / 的lv,Edit
->Size:58G,Save
->再次确认,Continue
->创建一个用户,五个框全写clearwind好了,Done
->安装SSH服务,空格选上Install OpenSSH server,Done
->预装环境,什么也不要,Done
->等待安装内核和一些配置进程完成
->等待下载安装更新完成(不想等就直接 Cancel update and reboot 好了)
->重启,reboot
让你移除安装镜像,这个无所谓,vm会自己调启动优先级,不移除也行,直接回车重启
要移除的话,选择虚拟机->右键设置->cd/dvd->取消启动时连接的勾
等待开机完成(控制台不再跳动),可以使用SSH工具连接,也可以使用直接使用VM的控制台窗口登录
ip:192.168.65.101,端口:22,用户名:clearwind,密码:clearwind
#配置Ubuntu
先解决sudo的密码问题,改成使用sudo不需要密码
sudo sed -i '20a\clearwind ALL=(ALL:ALL) NOPASSWD:ALL' /etc/sudoers
输入密码,之后使用sudo就不需要密码了
下面更新系统
sudo apt -y update && sudo apt -y upgrade
安装编译环境(根据需要编译的包确定)
sudo apt -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf screen
升级和环境安装完后,把网关改为OP旁路由,使这台编译机处于全局留学环境
sudo sed -i 's/192.168.65.2/192.168.65.100/g' /etc/netplan/00-installer-config.yaml
sudo netplan apply
测试
curl www.google.com
有返回即说明能连上
反应有些慢,编辑/etc/netplan/00-installer-config.yaml,把dns换成119.29.29.29和8.8.4.4,解析得快多了...
# This is the network config written by 'subiquity'
network:
ethernets:
ens33:
addresses:
- 192.168.65.101/24
gateway4: 192.168.65.100
nameservers:
addresses:
- 119.29.29.29
- 8.8.4.4
version: 2
# 可以愉(tong)快(ku)地进行编译工作了...