|
羞羞的铁狼
输入关键字
VPS编译OpenWrt定制固件
2019-06-16 分类:VPS技术 阅读(84) 评论(0)
玩openwrt路由器的朋友很多人知道lean的固件,会玩git的基友也会编译,但是在自己的电脑上编译的时间耗时,所以想到用国外vps来编译,一来不用老盯着电脑,二来不用挂代理,国内的话网络太慢很容易编译失败。
我编译所用的系统版本:ubuntu 14.04.6 LTS (推荐)
因为我的vps硬盘不大,我编译x86的固件,看了下需要12.6G的空间,所以还是选择比较精简的系统。
首先,根据说明文档先更新并安装以下依赖包:
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
为了能持续编译,怕网络不稳定ssh断了,所以建议开个screen守护一下shell:
apt -y install screen
screen -S buildlede
记住编译不能使用root用户,所以这里先新建一个用户来编译:
useradd -r -m -s /bin/bash lede
su lede
拉取源码:
cd /home/lede && git clone https://github.com/coolsnowwolf/lede.git
cd lede
下载和安装一些需要用到的包:
git pull && ./scripts/feeds update -a && ./scripts/feeds install -a
打开菜单选择编译前的设置项:
make menuconfig
这里make menuconfig是设置编译选项,是最关键的自定义你编译固件的步骤,首先根据CPU架构选择编译的类型,然选择路由器型号,如果万一没有的话可以编译相同硬件规格路由器的固件,有时也能用上;进入luci选项,进入modules/translations可以选择固件语言,进入themes选择主题,进入applications选择功能。功能参考如下:
Applications.jpg
配置完成之后开始编译(-j后面是线程数,建议cpu核心多的话直接拉满,否则你用单线程我估计得编译4小时以上)
make -j8 V=s
编程成功之后,固件会保存在如下路径:
/home/lede/lede/bin/targets/x86/64/
squashfs.png
因为我的系统一刷好,所以我一般直接用这个来升级,其他的路由器类型看实际情况。
最后,安装玩固件后,ssh进路由器输入神秘代码
echo 0xDEADBEEF > /etc/config/google_fu_mode
才会在WEB界面显示畅游全球的功能。
补充说明:当你挂起screen,下次想重新连上screen时,有时会出现screen session的状态为Attached但是却连不上的情况,比如提示“There is no screen to be resumed matching XXX”,解决方法如下:
screen -ls // 列出状态为Attached的session id
screen -D -r <session-id>
解释:-D -r 先删除前一用户再登陆。
|
|