为斐讯K2P编译OpenWRT固件
因为原作者推荐使用Ubuntu 14 LTS x64但是DigitalOcean最低只有Ubuntu 16 x64,所以这里选择16吧,应该差别不大,内存选择4G,因为在编译的过程中有个阶段会占用很大的内存,第一次编译的时候我选择了1G内存,后来出错了,索性选4G内存吧。
前期准备
SSH 登录 VPS,修改远程端口,安装 vim 和 screen
apt-get update
apt-get install vim screen -y
原作者推荐不要使用root用户git和编译,所以先使用root权限创建一个用户 openwrt
# 添加用户
adduser openwrt
# 设置密码
passwd openwrt
# 为该用户指定命令解释程序(通常为/bin/bash)
usermod -s /bin/bash openwrt
# 为该用户添加sudo权限
# /etc/sudoers文件默认是只读的,对root来说也是,因此需先添加sudoers文件的写权限
chmod u+w /etc/sudoers
# 编辑sudoers文件
vim /etc/sudoers
# 找到这行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (这里的xxx是你的用户名)
youruser ALL=(ALL:ALL) ALL
# 撤销sudoers文件写权限
chmod u-w /etc/sudoers
# 为新用户添加工作目录的读写权限
chown openwrt:openwrt -R /home/openwrt/
因为这里不需要使用openwrt用户远程登录,所有没有为openwrt配置SSH权限。
使用root用户登录vps,开启一个新会话,避免网络断线后正在执行的任务被取消
screen -S dev
切换到openwrt用户
su openwrt
输入密码
开始编译
sudo apt-get update
sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch 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
# lede 源码
git clone https://github.com/coolsnowwolf/lede
# MTK wifi 闭源驱动
git clone https://github.com/MeIsReallyBa/k2p-openwrt-mt7615_5.0.2.0.git
# 把 mtk 目录移动到 lede 源码中的 package 目录中
cd k2p-openwrt-mt7615_5.0.2.0
mv mtk/ /home/openwrt/lede/package/
# 编译前的配置
cd /home/openwrt/lede/
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig
Target System 选择 MediaTek Ralink MIPS,Subtarget 选择 MT7621 based boards,Target Profile 选择 Phicomm K2P,另外,建议勾选Build the Openwrt SDK ,方便日后交叉编译,我编译的时候没选,因为暂时用不到

选择 wifi 驱动
在主菜单,找到MTK,回车进入

选中driver,回车进入

先按Y选中KMOD-MT_WIFI,再回车进入

将First Wifi Interface选为MT7615E,其他两个选为NONE,按Y保证MT WIFI DRIVER被勾选。接着选择Wifi Operation Mode,回车进入

按Y勾选AP,接着一直按EXIT返回到Driver目录,选中Wifi-L1profile回车进入


保证1st card被勾选,按N取消对2nd 3rd card的勾选。这时候wifi驱动的勾选已经完成

openwrt的自带无线配置不支持mtk驱动,需要勾选mtk插件进行配置。按EXIT回到MTK目录,回车进入MISC,勾选MTK-Luci-plugin


选择save保存配置
编译
make -j1 V=s
如果一切正常,你最终可以在 bin/targets/ramips/mt7621 下找到编译好的固件
openwrt-ramips-mt7621-k2p-squashfs-sysupgrade.bin

刷机后如果无法使用无线,如下图所示:

解决步骤:网络-接口-lan里的物理设置勾选ra0保存设置后5g出现,再勾选rax0会有2.4g。
参考资料:
解决linux下sudo更改文件权限报错xxxis not in the sudoers file. This incident will be reported.
GitHub-MeIsReallyBa/k2p-openwrt-mt7615_5.0.2.0
图解如何给k2p的openwrt18.06编译mtk闭源5.0.2.0驱动
为斐讯K2P编译OpenWRT LEDE,并启用mtk闭源wifi驱动及H3C认证(谷歌快照,可能会失效)