本帖最后由 张小牛 于 2022-2-15 10:04 编辑 ! G; X7 \& d* \! T+ H
2 s4 \8 D3 Y9 t, M8 k: _/ E1 d需要一个固件分区备份,或者谁有,试一下告诉我,最好手里有TTL或编程器,不然变砖可能救不回来。7 `6 C- a& ?; J. a! {( j* j. e
秘密就是内置的mtd是阉割版,不能解锁、不能写入,升级一下mtd软件包,1、8、9、10、13、14等分区就都可以解锁了。再安装一个nand-utils查一下就更清楚。虽然6、7不能解锁,但是flash总共就256M,所以mtd1是mtd2-14的复合体,mtd1能写基本上就能解决问题。退一步说,9和10能写,可玩性也很高。- }. c/ c* C9 M v$ a6 }8 v
! s2 F9 a/ V" U$ P3 x8 I3 N8 O
root@SAF:/usr/sbin# cat /proc/mtd
0 G4 Q& r( e" mdev: size erasesize name
4 ] ~, n1 ?- Q" w( X7 `& Bmtd0: 00100000 00020000 "bootcode"
% h" y' ]9 ?% \& T7 P& f2 Tmtd1: 0ff00000 00020000 "ubilayer_v5"
* ]/ I9 _" E( Y3 t, f! a3 dmtd2: 0001f000 0001f000 "flash_configA"* C6 F u: {2 b& b
mtd3: 0001f000 0001f000 "flash_configB"& h& M: R3 ]' ^* m1 n' \) W$ `9 a1 T
mtd4: 0001f000 0001f000 "slave_paramA"5 U( S/ B( X) x! }: }
mtd5: 0001f000 0001f000 "slave_paramB"
# B3 {0 Q; l x% U6 V0 M) Y6 dmtd6: 030ec000 0001f000 "allsystemA"4 |* U7 b5 H6 I" G% @# X& } {7 e
mtd7: 030ec000 0001f000 "allsystemB"# t. x0 [3 B v# V4 Y
mtd8: 00117000 0001f000 "keyfile" r9 A) Q% h( }* E% i! o0 J3 E r
mtd9: 0103a000 0001f000 "frameworkA", P+ ?6 p- ]4 a/ y W# I2 R
mtd10: 0103a000 0001f000 "frameworkB"
) p8 X8 l$ u# zmtd11: 0001f000 0001f000 "wifi_paramA": A7 B2 }, x% x, ?! [
mtd12: 0001f000 0001f000 "wifi_paramB"2 C, u6 d J( W# T0 F) ` g
mtd13: 00a0d000 0001f000 "file_system"
6 b. U3 ~3 g/ t" @ h7 cmtd14: 06064000 0001f000 "apps"6 Z. j' L O6 N n
" w+ q! C4 Q) t+ H" G' x4 c6 n! Q/ c& K0 U
root@SAF:/usr/sbin# cat /proc/partitions
+ y' \1 }$ t V, U# M0 X2 rmajor minor #blocks name
1 R7 u8 T0 ?6 O7 f9 l
& y E. y9 y" r 1 0 50000 ram0
- x0 F4 X( g, n$ [: P9 T 1 1 50000 ram13 t! `' @, J4 t9 }7 g; x4 _0 z; C# M
1 2 50000 ram2$ }! {$ f5 b( ]) [& Z. y
1 3 50000 ram3. L0 r/ i7 z( O1 H! T, Y1 J
31 0 1024 mtdblock0* \7 M4 r9 f6 [
31 1 261120 mtdblock1
1 L$ Y. Q2 P! X8 l 31 2 124 mtdblock26 N4 _5 M/ z p9 h" r s, e
31 3 124 mtdblock34 O- k: m- _7 o9 n
31 4 124 mtdblock49 o2 ` U* t8 M1 _9 X: J# ?
31 5 124 mtdblock5
' k4 v! r {. \8 Z 31 6 50096 mtdblock6! Z8 m/ q2 w: p3 K
31 7 50096 mtdblock7
: B, h i# J, b! g- ?7 @! { 31 8 1116 mtdblock82 W8 Q5 {$ i8 U8 b2 ^# X9 [
31 9 16616 mtdblock9. ]7 [ t9 C% ~( }% ^8 J/ w$ H
31 10 16616 mtdblock10( h- z+ W4 @+ ]) d' a8 C$ B, J
31 11 124 mtdblock11
" v3 I: n7 v7 H4 L 31 12 124 mtdblock12
# @3 g* d9 {; i# k3 ` 31 13 10292 mtdblock13
9 C( S, e4 ~8 g2 A; I 31 14 98704 mtdblock144 |# |5 Q, q/ a A. e4 k& d5 s' [/ _9 l
7 0 92 loop0* F# M- G8 K7 a D* w8 u
& `, }. x1 E6 Q I' i
% `8 {7 R! P0 h8 X; m/ b
root@SAF:/usr/sbin# mtdinfo --all
# r$ P& ~: R; V# Z9 k& O! q# }6 gCount of MTD devices: 15( `0 L6 }. s) z; |: c, _
" G6 b" D1 w+ ^Present MTD devices: mtd0, mtd1, mtd2, mtd3, mtd4, mtd5, mtd6, mtd7, mtd8, mtd9, mtd10, mtd11, mtd12, mtd13, mtd14/ n+ F# |0 x; o* I
Sysfs interface supported: yes; S4 I; U, _1 y8 S
\* J& I' v+ k' F
mtd0
! U! D2 V) D7 e: i( q2 U. U+ y1 UName: bootcode
+ H! z) y" g% @$ w$ D" NType: nand
, ^. U. S. ]7 j4 t- ^, v! t6 cEraseblock size: 131072 bytes, 128.0 KiB+ U M& `7 e! [9 a4 S* y# E
Amount of eraseblocks: 8 (1048576 bytes, 1024.0 KiB)
5 J, J- g5 ~+ j, z6 RMinimum input/output unit size: 2048 bytes
; i- p9 T/ A2 F& g4 a: ESub-page size: 2048 bytes
0 f n% d* C: }3 @* N) l+ yOOB size: 64 bytes
; c- _% |0 n9 H/ kCharacter device major/minor: 90:0
, {5 Y" T* b) n7 R0 \Bad blocks are allowed: true$ V% k+ I$ u$ } j7 w, W+ N6 {
Device is writable: false
0 `0 w9 G |! H; ~) U
% l' a/ A; N8 i% ~; ?mtd15 n" B- e6 l$ ~& s* ]: E7 S0 |
Name: ubilayer_v5
D, D7 c: b) M4 e% eType: nand
* F5 s+ A5 Y( Q9 D4 q6 w2 K- wEraseblock size: 131072 bytes, 128.0 KiB
0 N m, }. u, R5 w* UAmount of eraseblocks: 2040 (267386880 bytes, 255.0 MiB)
0 ? [# \; T* C$ ], GMinimum input/output unit size: 2048 bytes7 E, `& ]$ f5 p" `* l |9 o
Sub-page size: 2048 bytes
: e3 S1 S" f& M5 P, b! a% XOOB size: 64 bytes
$ ~1 h/ Y) b( t m: `1 D9 _9 l% sCharacter device major/minor: 90:2
: r$ p6 u X' h* Q" h$ o6 Y' ^& aBad blocks are allowed: true
9 K4 F9 `3 l+ p; aDevice is writable: true2 O Y9 v% e5 I( W0 C9 h
! v' o8 w( g0 m$ J% w8 Y% ymtd2
, V# C& b; |9 LName: flash_configA# n" q/ t' v+ t' s
Type: ubi$ r# X" g9 ^8 p& Q0 v5 [9 _
Eraseblock size: 126976 bytes, 124.0 KiB7 c& u8 z& _. Q& e9 B5 A
Amount of eraseblocks: 1 (126976 bytes, 124.0 KiB)2 S3 H- A H6 d! c+ n, P
Minimum input/output unit size: 2048 bytes* p, c9 E! H) m* k8 E! r. l
Sub-page size: 2048 bytes
' l2 }6 f+ S7 Z+ _9 kCharacter device major/minor: 90:4
8 o( e f$ J6 S; G: b9 @+ g2 Z, {Bad blocks are allowed: false
* _" ?' V f; @8 L0 GDevice is writable: false
; `: A1 C0 X3 C9 g' I8 ]' r9 h6 ]6 D9 O2 I) `' n
mtd3
" P8 N2 Z1 \$ y" XName: flash_configB) V& ~9 _* r) W* T. j, X
Type: ubi
* N' ?0 V/ `5 EEraseblock size: 126976 bytes, 124.0 KiB6 ]0 }9 c1 @# D' U. y) V
Amount of eraseblocks: 1 (126976 bytes, 124.0 KiB)4 Z( A" E/ S$ G( t5 Y3 T
Minimum input/output unit size: 2048 bytes6 d2 I3 b9 p1 q
Sub-page size: 2048 bytes
8 v S8 _+ P1 X U$ c6 ^Character device major/minor: 90:6- K$ R3 C6 b, n# j# g. L, l3 t$ K. s
Bad blocks are allowed: false9 O* k ~/ s4 q( i' s
Device is writable: false$ W$ y7 ]& s9 k7 I: ]
6 @: s. w( p& `
mtd4: a/ x( r% |9 z( K$ }6 S
Name: slave_paramA9 _* c+ A2 x7 \* f" D
Type: ubi
8 W" C# R$ E r8 T% d0 `5 _Eraseblock size: 126976 bytes, 124.0 KiB
& }4 a) J8 U6 kAmount of eraseblocks: 1 (126976 bytes, 124.0 KiB)
$ U9 y$ o# z# p4 B4 ~Minimum input/output unit size: 2048 bytes9 m( t( @7 Q B$ j
Sub-page size: 2048 bytes
8 `7 M# c! G( I3 A) Q6 }* i# l2 K" oCharacter device major/minor: 90:89 m; _4 |3 y1 w" Q
Bad blocks are allowed: false) k1 s8 Z0 q4 S
Device is writable: false
+ I! k4 K9 L, k5 ?8 m0 W) b: y3 T( K
- i* o7 t" L0 nmtd5
+ @2 U$ z! D: @, dName: slave_paramB
1 U3 j2 b' a* q, kType: ubi
+ k( p# U& a) v2 A9 A, {" v6 `1 AEraseblock size: 126976 bytes, 124.0 KiB
; g# u' z+ X: R3 @. Z2 Y2 LAmount of eraseblocks: 1 (126976 bytes, 124.0 KiB)
. ^" S8 z/ q& i9 T7 uMinimum input/output unit size: 2048 bytes
$ x% U/ f) | f' L x7 K7 ]Sub-page size: 2048 bytes
: v/ E2 T6 s+ A2 D; L. d9 r2 qCharacter device major/minor: 90:10
& [! I' C2 O- L- J$ MBad blocks are allowed: false
r2 s0 q2 }2 w* f9 v* k" C( y; sDevice is writable: false
# S0 S7 K8 L8 M4 ]% f& b {( J' H7 ~' t: O5 B1 W' w! d
mtd6
; F8 W/ x8 F; w {. O' lName: allsystemA, {9 q! h" S' ~3 Q
Type: ubi+ Y/ m9 M. ~! c" e
Eraseblock size: 126976 bytes, 124.0 KiB; B: ]5 _% M3 T" ?
Amount of eraseblocks: 404 (51298304 bytes, 48.9 MiB)
8 O1 ?" g, ^2 oMinimum input/output unit size: 2048 bytes
8 j' M5 A4 A. G* h$ WSub-page size: 2048 bytes4 m+ @) q& D* q$ L7 [9 ]
Character device major/minor: 90:12, V" `6 T i' w f2 F7 O. o: I7 U8 y
Bad blocks are allowed: false
0 @( |8 {9 Z: H& UDevice is writable: false, ~( k) Z* g* L
; F+ }+ b1 o% D, ~) hmtd7* h! q1 e: s) W8 w$ K8 F) Y% o
Name: allsystemB
9 v a! x, P+ q0 q' }Type: ubi
" P9 l; {3 v) i6 z* l6 T( G; NEraseblock size: 126976 bytes, 124.0 KiB- d/ G& A R4 g ^5 {) J0 X" Z5 G1 j
Amount of eraseblocks: 404 (51298304 bytes, 48.9 MiB)
% b& Z9 D0 t, P8 l- zMinimum input/output unit size: 2048 bytes
4 [* ~1 j. t. c- U/ TSub-page size: 2048 bytes3 o& W C( `8 @( I9 n
Character device major/minor: 90:14# `2 `2 F; R; B {$ {8 ]6 v
Bad blocks are allowed: false, o0 g; o4 Q2 ^' n) N
Device is writable: false
: a) C5 b+ u9 g* c* U* o, E1 F/ L! b7 W1 a6 x2 \9 I2 B
mtd8
) D+ d, u# C/ O3 ^Name: keyfile- c# O4 l7 _! ^3 b1 n
Type: ubi. b) A% p& h v
Eraseblock size: 126976 bytes, 124.0 KiB
c3 w: F1 W; ?$ xAmount of eraseblocks: 9 (1142784 bytes, 1.1 MiB)
( d, {3 ~% ?: }& L$ |' ?Minimum input/output unit size: 2048 bytes
7 a. } T" e4 T9 ^6 e% {) f4 tSub-page size: 2048 bytes
. Z* }% u$ n0 ~# nCharacter device major/minor: 90:16
6 B: o' R' Q) L, `: a0 ^" D: fBad blocks are allowed: false" \' i* e4 z g6 Z+ r9 J E
Device is writable: true$ z) i7 {( t+ l0 }
9 Z- r# Y% ?6 Bmtd9
& O( i; W% X, i5 x5 {Name: frameworkA; x2 i1 X3 D0 ~6 W0 d( I7 q0 z( H: e
Type: ubi. _" k5 r. J/ l" m
Eraseblock size: 126976 bytes, 124.0 KiB3 |. [: n8 l# S/ H. o
Amount of eraseblocks: 134 (17014784 bytes, 16.2 MiB)8 N; w5 \0 g# f3 V. J
Minimum input/output unit size: 2048 bytes! `4 q7 X6 j/ j' k
Sub-page size: 2048 bytes
9 c' Y3 j- d+ ]% M. cCharacter device major/minor: 90:18! }6 J, z D; l, d
Bad blocks are allowed: false8 }. v6 g2 A* i ~
Device is writable: true
6 j0 P" H, A7 \! D' Z$ ?% h% R4 f
mtd10) X* E: } i2 ^( T& S& O
Name: frameworkB' m# I |8 ]. r3 n
Type: ubi
K2 n2 s: d% {! h0 I! yEraseblock size: 126976 bytes, 124.0 KiB
8 I( ?! a. e- }7 b+ B, `Amount of eraseblocks: 134 (17014784 bytes, 16.2 MiB)1 m1 V& `# E! N7 M
Minimum input/output unit size: 2048 bytes; }% y: q$ R* J) d. k$ d
Sub-page size: 2048 bytes |8 p- h8 M& \ w) h$ i
Character device major/minor: 90:20
, m1 i8 {* s( x8 H3 [9 W9 |3 H- y6 gBad blocks are allowed: false
, O! |+ r' M% _7 E3 gDevice is writable: true4 i5 V2 Z$ [) c6 k
$ _( W7 l, ^. b5 X
mtd11
|+ i1 Q# R/ c% p: T2 PName: wifi_paramA
( P( j4 n3 c0 R, x+ _Type: ubi
2 r1 L( l6 Y/ N" z/ uEraseblock size: 126976 bytes, 124.0 KiB& g1 K& ~# V/ E5 m
Amount of eraseblocks: 1 (126976 bytes, 124.0 KiB)
0 [) v) ?2 [" IMinimum input/output unit size: 2048 bytes+ Z# o. f4 j9 H% Z7 M, Y* {
Sub-page size: 2048 bytes
F/ B4 [" y- g5 q" ]5 qCharacter device major/minor: 90:22$ w! K( F; B0 O2 E2 X9 }6 P
Bad blocks are allowed: false9 R; O9 V A$ X1 ?
Device is writable: false
) D# b r* F) P! f0 O
! i+ I6 ], a& J# ]7 amtd124 @# L3 p4 B# ~- Q
Name: wifi_paramB) z9 }$ g) Y% m2 {. `# @+ U8 p
Type: ubi' I! {2 \# G, b# A6 l. {. U
Eraseblock size: 126976 bytes, 124.0 KiB; T) U% r% U! Y+ [ T
Amount of eraseblocks: 1 (126976 bytes, 124.0 KiB)
) E; h6 N5 g6 EMinimum input/output unit size: 2048 bytes
0 E$ r3 ^$ Y" v4 m$ G1 Q& DSub-page size: 2048 bytes( X% }; l$ I7 A; {0 g, y
Character device major/minor: 90:24
6 {$ O8 Z4 ^' l! m; Q; [Bad blocks are allowed: false+ _9 i- [0 A2 K, G' b9 ~* r, `- n
Device is writable: false
3 g$ h8 Z$ ?' ]- W" Y( y3 U$ D* \4 H2 Y( l# i
mtd139 \4 m/ G2 r8 m
Name: file_system; r4 J' N9 W; l3 @& F# S# L
Type: ubi
& L3 R$ G' D1 R- ?1 C7 M4 iEraseblock size: 126976 bytes, 124.0 KiB) X, E; y" a" N6 U
Amount of eraseblocks: 83 (10539008 bytes, 10.1 MiB): F4 q0 j; R" u
Minimum input/output unit size: 2048 bytes" u6 d2 `1 D* u$ \4 }0 ~
Sub-page size: 2048 bytes
! }/ K# s! n/ h6 h6 hCharacter device major/minor: 90:26
. Z- F7 |$ i' }; P# T: ]Bad blocks are allowed: false
2 L1 H- h2 `# Z9 C. YDevice is writable: true
' F" L! a3 c6 L1 N7 E0 X
A* ~$ H9 r. \mtd14. T' C+ S3 j9 C
Name: apps: ] u; N1 l. k, Q! L
Type: ubi
+ X& v0 ?* ?. J* h$ D! H Z( tEraseblock size: 126976 bytes, 124.0 KiB
3 t: K2 o; H+ ~% IAmount of eraseblocks: 796 (101072896 bytes, 96.4 MiB)
9 F, A/ s$ D% E( p* oMinimum input/output unit size: 2048 bytes
! ]6 }+ \ Y" a/ a5 K, n2 A: JSub-page size: 2048 bytes: y( f, i& D7 \9 u$ J- s
Character device major/minor: 90:28
* N; |+ x, |# S# }5 B( s7 T0 LBad blocks are allowed: false
: c; T! W8 T8 E7 m- Z) L5 M' s. F& \Device is writable: true
$ l& w3 z; _' b$ A$ ~
. O0 O2 z& [2 o Y! z7 p2 w; q* x |