原版 openwrt 21.02.0-rc4 安装教程。


原版 openwrt 21.02.0-rc4 安装和使用教程

下载与安装(ESXI虚拟机下安装)

点击openwrt downloads下载相关镜像文件,本文以openwrt-21.02.0-rc4-generic-squashfs-combined.img.gz为例。

下载之后解压为img文件。

使用StarWind V2V Converter将文件转换为ESXI可用的vmdk镜像。转换出来之后有两个文件,都要用到。(如果不使用虚拟机,使用U盘在实体机器上安装,请搜索相关教程。可以直接使用U盘作为启动硬盘)。

在ESXI上添加新的虚拟机,系统选择linux,版本选择linux 4.x 或以上,其他默认。

创建虚拟机完成之后,修改虚拟机设置,删除默认硬盘。将上面转换出来的两个vmdk文件上传到刚刚创建好的虚拟机文件夹目录下。

点击添加现有硬盘选项,选中刚上传的vmdk文件,添加一个硬盘。其余内存大小、cpu等设置根据电脑配置自行选择。在虚拟机选项>引导选项中中将引导方式改为BIOS。

全部设置完成之后,点击保存,不要直接启动虚拟机。

openwrt 扩容

openwrt默认的硬盘空间太小。编辑一下刚才的虚拟机选项,将硬盘空间改为1G或者更多。点击保存。

保存成功之后,使用ESXI的文件管理器,将刚才修改大小之后的硬盘文件下载下来。使用 DiskGenius打开此硬盘文件。将未格式化的那一部分空间扩展到最大。(也可以留一部分空间折腾Docker等应用,扩展空间之后保存。)

删除ESXI里面的虚拟机openwrt虚拟机硬盘文件,将扩展完空间的硬盘文件重新上传到刚才的虚拟机硬盘文件的地方。此时启动虚拟机,只要是第一次启动,刚才扩展的空间就会被默认占满。这样扩容就算完成了。

openwrt基本配置

开启虚拟机

进入系统之后按enter开启控制台。输入vim /etc/config/network修改网络设置。

i进入编辑模式,修改lan口IP,将option ipaddr '192.168.1.1'中的IP地址改成你想要设置的ip地址。之后:wq保存。

输入reboot重启

重启完成之后,将线缆插入openwrt的lan网口(根据你的虚拟机配置寻找你openwrt的lan口)。

路由器网络

将openwrt的wan口连接到主路由器lan口上(也可以直接连接到光猫上),让路由器可以上网。

下面是openwrt 的opkg设置代理的方法,不用代理的话可以不管

  • 确认本机与openwrt路由器在同一局域网下。
  • ssh登录openwrt
  • 输入命令vi /etc/opkg.conf回车
  • 在文件最后添加option http_proxy http://192.168.0.1:7890, 前面的192.168.0.17890改成你已经科学上网电脑的ip和端口
  • 保存退出
  • 更新软件包列表:opkg update,使用opkg安装相应的软件opkg install 软件包
  • 参考openwrt官网文档的Proxy support这一项。

openwrt语言设置和其他基础设置

在浏览器中输入lan口IP地址并访问,此时你就能通过网页设置openwrt了。

此时openwrt的管理界面处于英文状态。在system>software中点击Update lists…按钮更新列表

搜索luci-i18n-base-zh-cnluci-i18n-acme-zh-cn(经过测试,这两个安装包可能不兼容,只安装uci-i18n-base-zh-cn就可以了。),分别安装这两个软件包。然后在system中将语言改成中文。(安装luci-theme-material主题软件包。主题包可自行选择,搜索theme可以找到其他主题。)

此时可以修改一下时间同步选项里的NTP服务器,改为:ntp.aliyun.comtime.apple.comcn.ntp.org.cnntp.ntsc.ac.cn。将时区改为Asia/Shanghai,之后点击与 NTP 服务器同步更新时间。

网络>接口>设备中配置br-lan接口,在网桥端口中把所有wan口之外没有用到的接口全部勾选并保存,让这些接口全部成为lan口。

扩容Overlay

扩容最简单的方式还是使用上面安装时候的扩容方式。如果是已经启动之后,安装了一些软件才想起来扩容,那就能用这种方式了。

安装lsblkcfdiskblock-mount软件包。(注意:block-mount软件包为挂载点管理,安装此软件包之后需要重启openwrt才能看到挂载点界面)

在ESXI中关闭此虚拟机,直接更改此openwrt虚拟机的硬盘大小。推荐为2G或以上。(或者新添加一个硬盘,推荐为1G以上。这个没有试过)之后保存并重新开启此虚拟机。

点击OpenWrt扩容Overlay,按照esir的视频教程扩容overlay。

  • 如果你安装的是generic-ext4-combined系统,请看下面步骤。
  • 当按照视频中的操作进行到输入命令mount /dev/sda3 /mnt/sda3挂载时,回车你会看到 mount: mounting /dev/sda3 on /mnt/sda3 failed: No such file or directory的报错。因为你的mnt目录是空的,/overlay目录也是空的。这时候就不用按照视频中的步骤继续操作了。按照下面的步骤继续。
  • 重启openwrt
  • 进入路由管理界面的 系统>挂载点
  • 新增一个挂载点,勾上已启用UUID选择为刚才格式化的1G分区。挂载点选择作为外部 overlay 使用(/overlay)点击保存
  • 去掉其他的挂载了刚才格式化1G分区的已启用对勾,点击保存并应用,重启openwrt。
  • 此时已经扩容完成。
自动挂载

分区默认会在 OpenWRT 重启后会自动挂载,如果遇到没有挂载的情况,需要编辑 /etc/rc.local

vim /etc/rc.local

exit 0 之前加入一行 mount /dev/sda3 /overlay 即可。

开启Sftp

安装 vsftpdopenssh-sftp-server软件包,(还是在系统>Software(软件包)里面搜索并安装,下面就不赘述了)之后就可以通过Xftp上传文件到openwrt了。

手动安装ipk软件包

按照上面步骤开启Sftp。

你可以使用Xftp这个软件上传文件到openwrt里面,也可以使用其他支持sftp的软件进行上传。

上传完成之后,使用ssh工具登陆openwrt,执行下面的命令。

opkg update
opkg install /root/xxx.ipk  #假设你将`ipk`文件上传到了`root`目录下。

在安装ipk时,务必要先安装这个ipk的依赖软件包,github的项目都会在项目介绍中写清楚依赖项目,如果缺少依赖在安装ipk时会报错。
一般的基础依赖包都可以在openwrt的系统>Software(软件包)搜索并安装。如果搜索不到,可以在github的依赖介绍页面寻找依赖项目的链接,手动去下载并安装。
ps:下面是实战

安装OpenClash

点击OpenClash,在此页面找到 OpenClash发布的ipk文件并下载。

如上一章节所写,在安装之前先到OpenClash页面上查看并安装依赖包。

下面是截至2021-8-6,OpenClash的依赖项目。

  • luci
  • luci-base
  • iptables
  • dnsmasq-full
  • coreutils
  • coreutils-nohup
  • bash
  • curl
  • ca-certificates
  • ipset
  • ip-full
  • iptables-mod-tproxy
  • iptables-mod-extra
  • libcap
  • libcap-bin
  • ruby
  • ruby-yaml
  • kmod-tun(TUN模式)
  • luci-compat(Luci-19.07)
  • ip6tables-mod-nat(ipv6)

Software(软件包)上一个一个搜索安装依赖,或者使用下面的命令批量安装(不同的包之间要加空格):

opkg update
opkg install luci luci-base iptables dnsmasq-full coreutils coreutils-nohup bash curl ca-certificates ipset ip-full iptables-mod-tproxy iptables-mod-extra libcap libcap-bin ruby ruby-yaml kmod-tun luci-compat ip6tables-mod-nat

安装dnsmasq-full会可能会报错check_data_file_clashes: Package dnsmasq-full wants to install file /etc/init.d/dnsmasq But that file is already provided by package * dnsmasq,提示相关功能已经由dnsmasq实现。操作如下:

opkg remove dnsmasq          #卸载dnsmasq
opkg install dnsmasq-full    #重新安装dnsmasq-full

安装dnsmasq-full 可能会继续报错resolve_conffiles: Existing conffile /etc/config/dhcp is different from the conffile in the new package. The new conffile will be placed at /etc/config/dhcp-opkg.,配置文件冲突了,这个不用管。

依赖安装好了,把ipk上传到openwrt的root目录,执行opkg install luci-app-openclash*.ipk安装ipk.

至此OpenClash已经安装成功,刷新之后就可以看到OpenClash的管理页面了。


文章作者: 包子
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 包子 !
  目录