|
|
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
& g& W" w- `- v3 r6 n* q$ U8 Y, u5 |
本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
- `" z$ w; k5 r: |2 {1 x5 G4 D2 L# C7 R+ @) F' \: {1 K
1、登陆SSH。5 S, E& b* C; K9 q0 n0 @# B
2、输入命令行。
# Y* v3 t y+ q6 P6 H) d$ b2.1、输入”mount -o remount,rw /“
- [6 S; _3 J, q; R: D: Z' k2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。 这个步骤需要注意,我的方案是完美恢复原机MAC。
$ w; N: y; T1 _* \9 E+ h" x# F 也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
/ }3 q1 r- `/ W/ P3 n 修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
R7 E( }5 X4 a0 P
8 I% I8 s5 B+ a1 G7 h6 Y4 U# F2.3、输入”reboot“重启。
2 e+ s3 j0 ]$ |9 w
+ |1 G& L7 d; H$ u4 n4 M! [1 P) c/ O, {" _) X* ?
8 L- _) z R; o顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()
7 a8 x7 P5 I6 Q# ] S' D; ]* W{
* [$ q6 h# k$ X9 e6 y5 W+ g local face=$11 c% L8 G8 _" H( k$ t8 E' Y
MacAddr=`/opt/bin/mac_tool read $2` //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC7 h+ F+ N5 w |# }
#if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then
5 Y) O2 z: C! J! B- e # ifconfig ${face} hw ether $MacAddr
0 F& J/ ~+ \! J9 d3 ]9 k' S* G #fi4 ~6 H! f; m F4 s1 D6 H( F4 W
1 e5 M$ s: V/ x3 L* e8 z MAC_ADDR_PRO="78:C2:C0" //预设字符串 78:C2:C03 m' f* s- O3 J1 @3 x; ~
MAC_ADDR_ERR="E0:E0:E0"! h6 c6 Y- A) x- Y. t
PRO_TMP=${MacAddr:0:8} //截取主板的MAC前八位字符为4C:65:A8
2 s) Z) F; a# C$ x0 k( O pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0). w+ l2 @$ k6 \$ |5 m5 Z8 c" y% r
num=${#pool}
3 H( r+ k+ ]" u1 |: s$ k7 u, K ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"8 m8 A& {5 G: J: V: w
* u3 {3 @& H& S/ o
eth_part=$(echo $PRO_TMP | tr [a-z] [A-Z])6 s9 d- [7 [4 S/ p8 q8 [8 I
pro_tmp=$(echo $MAC_ADDR_PRO | tr [a-z] [A-Z])
- p* @' g$ H3 ?( n* W2 I if [ X"$eth_part" = X"$pro_tmp" ];then //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)
4 ~, @2 T0 |& s9 k' I% I2 ]0 \8 ]% w7 Y ifconfig ${face} hw ether $MacAddr //如果MAC前八位一致,则使用主板MAC
. d1 ~! B `- F; X, I5 E else: q" m: Z5 ?7 p# q* W0 Z
ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR" //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。
4 ^' j+ |1 H5 o6 v/ D6 P4 o fi
. {# t4 p p+ q}
+ }9 u- f- R; D& X6 N/ T
) H N! }% X) |% Z# E8 D2 f' K8 ~通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。
% Z0 O% ]* \6 e- e那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
" @8 D' j0 R$ c6 N4 ~* \1 G如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
4 l | {& X: m! m$ G( c4 z4 r5 ~ |
评分
-
查看全部评分
|