|
|
本帖最后由 IamManho 于 2019-10-6 16:38 编辑 5 U7 @" E3 D, t* N) ]
5 g' j! e, ~* d8 Q+ ~' ]) R% ^本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
% T9 n" s" N% K! U3 E! x( n6 b* @; x2 P4 e- q. k3 }6 }& D" z4 X
1、登陆SSH。
# N4 Q5 S9 L: ?- d1 Q2、输入命令行。8 a2 w1 f/ T' }% R1 Z
2.1、输入”mount -o remount,rw /“5 Q' Q: j; H0 t. j' _
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。 这个步骤需要注意,我的方案是完美恢复原机MAC。
, |! n9 A; f3 T* P 也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。3 P# @, y k4 R. J# d. f9 Q. p6 l: Y
修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
) f. W3 D" H" H1 n
8 H( C) u: q6 J7 u' K, M
2.3、输入”reboot“重启。4 }7 |9 h- m8 T2 [9 e. t: v4 p
& V, g5 s. X: w, K; E" p
" U, A- l- V- q! P2 T2 y8 O9 |/ K* \! M% B' @ \
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr(), D( B/ o8 o0 h4 m% \
{ E) ]5 K9 g. k2 o1 m" C
local face=$10 D5 s& {0 K' u9 y Q+ L
MacAddr=`/opt/bin/mac_tool read $2` //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC
: a1 Q8 }3 A% C) c #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then: }3 j+ D! i, P; I+ _, u8 N2 d
# ifconfig ${face} hw ether $MacAddr
5 u! I' D9 o7 N `) D- k #fi/ w x. k' e/ s! `" [6 I; a" y7 T
5 e% `1 o- x* L: O- F
MAC_ADDR_PRO="78:C2:C0" //预设字符串 78:C2:C0: J7 f. S" D9 U7 M
MAC_ADDR_ERR="E0:E0:E0", U4 h1 e4 J( X) z1 o
PRO_TMP=${MacAddr:0:8} //截取主板的MAC前八位字符为4C:65:A8$ u) e0 K; R' Q
pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
" Y5 k( n) }* r7 a8 R( m+ d num=${#pool}% b/ l6 |9 l/ ?6 w2 A }+ [. m
ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"
! L3 R$ ?! F2 @* w+ `7 C" s1 D
2 `2 D `) t, e( A9 g' _7 F* H. Y! D0 p eth_part=$(echo $PRO_TMP | tr [a-z] [A-Z])
5 A2 u! d1 n& `7 O, C$ `5 { pro_tmp=$(echo $MAC_ADDR_PRO | tr [a-z] [A-Z])
6 g! H7 ^6 t; Q1 M if [ X"$eth_part" = X"$pro_tmp" ];then //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)
0 J+ j6 R# l5 @, S9 U# w7 _ ifconfig ${face} hw ether $MacAddr //如果MAC前八位一致,则使用主板MAC
! @% b7 |# W: l! [9 m Q else. n" A: M: t% s- L" v, w
ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR" //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。
6 u3 W( w( g; c9 F/ h1 r# X fi
" o' Z5 }9 F+ a}; }$ Z8 n% O. T
2 u& g& q3 m% |通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。
, V% l% [/ P4 v8 K Z9 X# R那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。9 L3 v- P) N: P$ l) f
如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
* H* I1 n7 T$ \9 `4 n) N3 ~ |
评分
-
查看全部评分
|