分类 折腾记 下的文章

闲来无事 打算亲自给手上的SM-J3109编译一次lineageos

Google如何编译并参考了一下博客之后(参考链接会放在最后)

折腾了三天终于是编译成功了

首先 需要一台装了Ubuntu系统的电脑(虚拟机也可以 但是还是建议电脑)

根据Ubuntu版本安装所需要的包

 For Ubuntu 23.10 (mantic), install libncurses5 from 23.04 (lunar) as follows:
    
    wget http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libtinfo5_6.4-2_amd64.deb && sudo dpkg -i libtinfo5_6.4-2_amd64.deb && rm -f libtinfo5_6.4-2_amd64.deb
    wget http://archive.ubuntu.com/ubuntu/pool/universe/n/ncurses/libncurses5_6.4-2_amd64.deb && sudo dpkg -i libncurses5_6.4-2_amd64.deb && rm -f libncurses5_6.4-2_amd64.deb
    
    While for Ubuntu versions older than 23.10 (mantic), simply install:
    
    lib32ncurses5-dev libncurses5 libncurses5-dev
    
    Additionally, for Ubuntu versions older than 20.04 (focal), install also:
    
    libwxgtk3.0-dev
    
    While for Ubuntu versions older than 16.04 (xenial), install:
    
    libwxgtk2.8-dev

我的Ubuntu版本是22.04 所以运行

    sudo apt update &&
    sudo apt install bc bison build-essential ccache curl flex g++-multilib gcc-multilib git git-lfs gnupg gperf imagemagick lib32readline-dev lib32z1-dev libelf-dev liblz4-tool libsdl1.2-dev libssl-dev libxml2 libxml2-utils lzop pngcrush rsync schedtool squashfs-tools xsltproc zip zlib1g-dev  python-is-python3
    #下面根据Ubuntu版本安装所需的包
    sudo apt isntall lib32ncurses5-dev libncurses5 libncurses5-dev

接下来创建编译目录并下载所需要的repo工具添加到环境变量中

    mkdir -p ~/bin
    mkdir -p ~/android/lineage
    #可以直连Google的直接执行就好
    curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
    chmod a+x ~/bin/repo
    #如果是在网络环境不好就从清华源下载repo镜像
    curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo > ~/bin/repo
    chmod a+x ~/bin/repo

添加~/bin目录到环境变量(Ubuntu22.04中已经自动添加了,这里是做演示)

    sudo vim ~/.profile
    #复制下面的代码 粘贴 保存并退出
    # set PATH so it includes user's private bin if it exists
    if [ -d "$HOME/bin" ] ; then
        PATH="$HOME/bin:$PATH"
    fi
    #然后执行
    soucre ~/.profile

接下来配置git

    git config --global user.email "[email protected]"
    git config --global user.name "Your Name"

由于其大小,一些存储库配置为lfs或Large File Storage。为了确保您的发行版为此做好准备,请运行:

    git lfs install

开启编译缓存(加快反复编译的速度)

    vim ~/.bashrc
    #复制下面的代码
    export USE_CCACHE=1
    export CCACHE_EXEC=/usr/bin/ccache
    #保存后ccache设定最大缓存容量
    ccache -M 50G

初始化LineageOS源代码存储库

    cd ~/android/lineage
    repo init -u https://github.com/LineageOS/android.git -b lineage-17.1 --git-lfs
    #同样的网络环境不好可以使用清华源镜像
    repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/lineageOS/LineageOS/android.git -b lineage-17.1 --git-lfs

开始下载源代码

    #有代理的话直接拉取即可(否则先配置清华源镜像)
    repo sync
    #配置清华源镜像
    mkdir ~/android/lineage/.repo/manifests/ 
    vim   ~/android/lineage/.repo/manifests/default.xml
    将
    
      <remote  name="github"
               fetch=".."
               review="review.lineageos.org" />
    
    改成
    
      <remote  name="github"
               fetch="https://github.com/" />
    
      <remote  name="lineage"
               fetch="https://mirrors.tuna.tsinghua.edu.cn/git/lineageOS/"
               review="review.lineageos.org" />
    将
    
      <remote  name="aosp"
               fetch="https://android.googlesource.com"
    改成
    
      <remote  name="aosp"
               fetch="https://mirrors.tuna.tsinghua.edu.cn/git/AOSP"
    将
    
      <default revision="..."
               remote="github"
    改成
    
      <default revision="..."
               remote="lineage"

配置好镜像仓库后拉取源代码

repo sync

J3LTECEC尚未进入LineageOS官方储存库,状态是unofficial,这里需要手动修改要下载的储存库。!(必须有代理才可以哦,不然会出现拉取失败的情况)

    mkdir -p ~/android/lineage/.repo/local_manifests/
    vim ~/android/lineage/.repo/local_manifests/roomservice.xml
    #复制粘贴下面的内容 
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
      <project path="vendor/samsung"                 remote="github" name="Galaxy-MSM8916/proprietary_vendor_samsung"                revision="lineage-17.1" />
      <project path="device/samsung/j3-common"       remote="github" name="Galaxy-MSM8916/android_device_samsung_j3-common"          revision="lineage-17.1" />
      <project path="device/samsung/j3ltectc"        remote="github" name="Galaxy-MSM8916/android_device_samsung_j3ltectc"           revision="lineage-17.1" />
      <project path="device/samsung/msm8916-common"  remote="github" name="Galaxy-MSM8916/android_device_samsung_msm8916-common"     revision="lineage-17.1" />
      <project path="device/samsung/qcom-common"     remote="github" name="LineageOS/android_device_samsung_qcom-common"             revision="lineage-17.1" />
      <project path="hardware/samsung"               remote="github" name="LineageOS/android_hardware_samsung"                       revision="lineage-17.1" />
      <project path="kernel/samsung/msm8916"         remote="github" name="Galaxy-MSM8916/android_kernel_samsung_msm8916"            revision="lineage-17.1" />      
</manifest>

因为这并非lineageOS官方库,所以没有网络代理的话

只能手动git拉取项目文件了(这里使用的是我搭建的github镜像站)

    #拉取私有驱动
    cd ~/android/lineage/vendor/samsung
    git clone -b lineage-17.1 https://git.gtian.cf/Galaxy-MSM8916/proprietary_vendor_samsung.git
    mv proprietary_vendor_samsung/j3-common . 
    mv proprietary_vendor_samsung/j3ltectc . 
    mv proprietary_vendor_samsung/msm8916-common .
    rm -rf proprietary_vendor_samsung
    
    #拉取android_device_samsung_qcom-common
    cd ~/android/lineage/device/samsung/qcom-common
    git clone -b lineage-17.1 https://git.gtian.cf/LineageOS/android_device_samsung_qcom-common.git
    mv android_device_samsung_qcom-common/* .
    rm -rf android_device_samsung_qcom-common
    
    #拉取android_device_samsung_msm8916-common
    cd ~/android/lineage/device/samsung/msm8916-common
    git clone -b lineage-17.1 https://git.gtian.cf/Galaxy-MSM8916/android_device_samsung_msm8916-common.git
    mv android_device_samsung_msm8916-common/* .
    rm -rf android_device_samsung_msm8916-common
    
    #拉取android_device_samsung_j3-common
    cd ~/android/lineage/device/samsung/j3-common
    git clone -b lineage-17.1 https://git.gtian.cf/Galaxy-MSM8916/android_device_samsung_j3-common.git
    mv android_device_samsung_j3-common/* .
    rm -rf android_device_samsung_j3-common
    
    #拉取android_device_samsung_j3ltectc
    cd ~/android/lineage/device/samsung/j3ltectc
    git clone -b lineage-17.1 https://git.gtian.cf/Galaxy-MSM8916/android_device_samsung_j3ltectc.git
    mv android_device_samsung_j3-common/* .
    rm -rf android_device_samsung_j3-common
    
    #拉取android_hardware_samsung
    cd ~/android/lineage/hardware_samsung
    git clone -b lineage-17.1 https://git.gtian.cf/LineageOS/android_hardware_samsung.git
    mv android_hardware_samsung/* .
    rm -rf android_hardware_samsung
    
    #拉取android_kernel_samsung_msm8916
    cd ~/android/lineage/device/kernel/samsung/msm8916
    git clone -b lineage-17.1 https://git.gtian.cf/Galaxy-MSM8916/android_kernel_samsung_msm8916.git
    mv android_kernel_samsung_msm8916/* .
    rm -rf android_kernel_samsung_msm8916

开始编译ROM以及核心

    source build/envsetup.sh
    breakfast j3ltectc
    croot
    brunch j3ltectc

编译成功之后 打包好的ROM和boot.img在~/android/lineage/out/target/product

参考链接:

https://ivonblog.com/posts/build-lineageos-20-sony-xperia-5-ii/

https://wiki.lineageos.org/devices/s3ve3gds/build

21年年末无意间了解到单线多拨
正好发现校园网是本地UAC认证之后就可上网
可以通过多账号拨号无限叠加网速
于是在放假后 正式上班的那一天
在拼夕夕上250入了redmi ax6s
请输入图片描述
到手之后由于上班没时间折腾
放在家里当了两个月的WIFI中继工具
一直到今年2月中旬辞职 才真正有时间折腾路由
当时之所以买ax6s 是因为openwrt官网已经有了这个设备的支持页面
官方论坛也有大佬流出的编译好的固件
但这固件是ax3200(ax6s的海外版本-版本号rb01),而ax6s版本号是rb03
比较恶心的是rb01当时(今年2月)就有放出开发telnet的固件,从而可以
破解ssh进而刷入openwrt,在这之前只能通过拆机用编程器将固件强行写入闪存
刷入openwrt,机缘巧合的是,当我在小米论坛吐槽不久之后(仅仅三天)
恩山论坛就有人发帖分享了ax6s开放telnet的开发版1.2.7固件
请输入图片描述
更巧的是吐槽贴被评论仅仅两小时零三分之后,恩山上就分享了开发版的固件(合理怀疑doge)
很快啊,有了开发版固件之后,按照GitHub上的教程破解ssh,破解root密码,刷入恩山大佬适配的
rb03版固件,终于是用上了openwrt

刷机教程

默认官方固件后台地址: 192.168.31.1

进入后台 登陆后在右下角复制设备SN码

计算root密码: https://miwifi.dev/ssh

常用设置->系统状态->手动升级 中 上传 1.2.7开发板固件
win+r输出cmd
键入 telnet 192.168.31.1
用户名: root
密码: 上面计算好的密码

复制下面的代码

nvram set ssh_en=1 && nvram set uart_en=1 && nvram set boot_wait=on && nvram set bootdelay=3 && nvram set flag_try_sys1_failed=0 && nvram set flag_try_sys2_failed=1
nvram set flag_boot_rootfs=0 && nvram set "boot_fw1=run boot_rd_img;bootm"
nvram set flag_boot_success=1 && nvram commit && /etc/init.d/dropbear enable && /etc/init.d/dropbear start...

这时已经完成了ssh的破解
下载Winscp
请输入图片描述
安装完成后 新建会话 协议选择 SCP 主机名:192.168.31.1 用户名:root 密码:上面计算好的密码
默认进入/root目录 双击地址栏 键入/tmp 拖入名称为factory.bin的底包 这时Win+r 键入cmd ssh [email protected]
输入下面代码

mtd -r write /tmp/factory.bin firmware

路由器会自动重启 刷机时亮黄灯
刷机完毕时 蓝灯闪烁 浏览器键入10.0.0.1
系统>备份>升级 刷写新的固件下
选择刷写固件 上传名为sysupgrade.bin的固件 不保留配置
点击继续 路由器重启 蓝灯闪烁 刷入成功

默认管理地址: http://10.0.0.1

默认密码: root

破解光猫Telnet并修改默认MAC地址

先手动嫖到账号 记下嫖到的账号信息(doge)
记下当前设备的MAC地址
windows+R输入ncpa.cpl
找到无线网卡适配器 双击 点击详细信息
记下 物理地址
请输入图片描述
接着浏览器进入
http://192.168.1.1
输入超级管理员
用户名CMCCAdmin
密码 aDm8H%MdA
网络>远程管理>loid认证
备份现在的loid
进入 http://192.168.1.1/return2factory.html
输入yes(确定loid已经备份哦 不然可就上不了网啦)
等光猫重启后进入 http://192.168.1.1/hidden_version_switch.gch
选择DefaultVersion 并确定
等带光猫重启后
win+r输入cmd后
输入 telnet 192.168.1.1
用户名 root
密码 Zte521 (注意这时输入密码是看不见的)

登录成功后输入

sendcmd 1 DB set TelnetCfg 0 TS_Enable 1
sendcmd 1 DB set PortControl 3 PortEnable 1
sendcmd 1 DB set TelnetCfg 0 Lan_Enable 1
sendcmd 1 DB set TelnetCfg 0Lan_EnableAfterOlt 1
sendcmd 1 DB set MgtServer 0 URL http://127.0.0.1
sendcmd 1 DB set MgtServer 0 Tr069Enable 0
sendcmd 1 DB save
setmac 1 256 改为上面记下的物理地址 #(不需要:号 例如112233445566)
setmac 1 257 改为上面记下的物理地址 #(不需要:号 例如112233445566)
setmac 1 258 改为上面记下的物理地址 #(不需要:号 例如112233445566)
setmac 1 259 改为上面记下的物理地址 #(不需要:号 例如112233445566)
setmac 1 260 改为上面记下的物理地址 #(不需要:号 例如112233445566)
reboot...

这样就完成了光猫telnet的破解 并且更改了光猫默认的MAC地址

配置PPPOE拨号上网

浏览器进入 http://192.168.1.1
输入上边的超级管理员账户密码
网络>宽带设置>Internet设置
配置如图
请输入图片描述
用户名和密码输入你嫖到的账户密码 单击创建 就可以上网啦
请输入图片描述

emmmm 不知不觉大学已经过去两年了,北方城市的平淡似乎已经冲散的我对这向往之地最初的幻想。闲来无事,把自己折腾校园网的过程分享出来。

设备: ZTE-F623
ZTE-F623
路由器:Redmi Ax6s(Ax3200)
Redmi Ax6s
学校的校园网接入方式有两种,一种是通过wifi连接校内的Access Point面板接入校园网,还有一种是通过伪Fttr(doge)用光猫接入校园网。

先说说最开始吧,刚来大学,什么也不懂。为了能在八人寝室有个快乐的生活,我把高三在广东组装的台式主机花了足足18块大洋寄到了学校😏
快递信息
随后从各大电商平台购入了显示器与键鼠,后续加了两条海力士DDR4的2400hz内存条,21年初在寝室给主板升级BIOS时由于跳闸导致主板G了,返厂维修需要两个月的时间,开始放荡(doge

打三月下旬玩到五月末直至学校放假才回到学校,六月初的期末考试也没参加,13科挂12科了导致了我现在的悲惨生活,6月由于不可说的原因干了1个半月网管,上一整天休一整天真不是人干的活😣

7月矿潮时由于刷坏老显卡BIOS忍痛1349从拼西西上买下16年上市的智商检测卡1050ti。到了九月回到学校因为挂科的事,痛定思痛,不在放浪。算是正式开始了我的折腾校园网生活。
订单信息
源初手法(doge
请输入图片描述
用网线直连光猫的lan1口,浏览器输入http:192.168.1.1进入光猫后台
请输入图片描述
超级账户用户名:CMCCAdmin 密码:aDm8H%MdA
请输入图片描述
在网络>宽带设置 用户名 密码 下输入嫖到的账号密码(一个一个试)
请输入图片描述
当白嫖成功时,状态>网络侧信息 ipv4地址将会显示成功拨号获得的相关信息
请输入图片描述