找回密码
 立即注册
楼主: xsp1989

[原创] 完美解决猫盘群晖掉IP问题

 火... [复制链接]

0

主题

14

回帖

158

积分

初级渣柚V2

积分
158
发表于 2023-1-14 21:57:46 | 显示全部楼层
学习一下

2

主题

5

回帖

50

积分

初级渣柚V2

积分
50
QQ
发表于 2023-1-17 15:37:30 | 显示全部楼层
感谢分享。

0

主题

2

回帖

11

积分

初级渣柚V1

积分
11
QQ
发表于 2023-1-17 21:24:14 | 显示全部楼层
看看怎么解决

1

主题

3

回帖

46

积分

初级渣柚V1

积分
46
发表于 2023-1-17 21:58:38 | 显示全部楼层
谢谢谢谢谢谢谢谢谢

0

主题

7

回帖

21

积分

初级渣柚V1

积分
21
QQ
发表于 2023-1-18 09:18:32 | 显示全部楼层
转发:我好像解决部分猫盘刷群晖后掉IP的问题了+ d3 C! e8 o, T9 @9 }

$ T( U, b$ K% w1 b- w! iaquila995
, L2 e% ?) T% ]8 g' L# Z% A: ^8 g
于 2020-06-24 16:37:11 发布/ k- B7 o4 D' s& y0 l/ G
3 L. ]  E7 z8 V. B+ X! o; L
13215
+ f1 T' F6 k% P 收藏 13" ~! S5 P6 z+ h2 j. Q
分类专栏: 群晖
* r' b& g7 o7 S0 m" N% o版权
5 L2 P& w0 I1 T0 j! |2 C
- Y# e' {( S# D( p5 `群晖2 g8 U1 ^! J* X
专栏收录该内容
) Y3 W0 O6 M* E1 篇文章0 订阅) Q$ X, l0 j# i# C% ~$ q
订阅专栏
2 Y( ]# Q; p) K5 H我好像解决部分猫盘刷群晖后掉IP的问题了. M# b; O% R3 G/ J. Y2 g

7 t8 i; o1 b4 w! ^  ^我好像解决部分猫盘刷群晖后掉IP的问题了! i% J, q8 [$ M+ O

7 J) W/ h) X% `( W先说我的情况,xianyu上的,到手发现刷群晖后第一次没挂硬盘时可见ip,关机,上硬盘,再开机就一直见不到ip了,没敢一直重启,心疼硬盘。
1 s9 S7 ~, ^- @然后刷个X3P用了一段时间,还是想用群晖。上了块固态,试了多次后,应该解决掉IP的问题了,现在挂的是500G普通盘,一直正常。
8 Y! T- A4 R" p6 P- ` * T- i( B$ m; Q7 S. c: l3 e) ]( E
跳过刷机说重点,每次重刷完群晖都是可以连上的,但重启后就不行了,所以应该不是所谓的虚焊问题,应该是某个设置没有达到,网卡没有工作。; j$ |( H7 ^( B2 I

/ M& s# R: ?9 n# E( [/ ?* I然后发现的情况是,如果进到env环境(我也不知道叫什么,反正就是在xshell下一直按回车的环境),网卡是工作的,只是再进到群晖启动时没有工作。
4 p& C9 w4 B2 S8 D/ R
, V) G5 G' @' `  z; U) [1 z先看了下有什么可用的命令:
! M+ j8 c, k6 T# y4 T6 j# B
8 F/ ~* t% r) t9 ^2 `  OMarvell>> help0 ~6 Z0 n' h& J' ]4 {
?       - alias for 'help'; i9 T( [+ m/ E
base    - print or set address offset
  Y7 W; l( ]* pbdinfo  - print Board Info structure% I" S* r& R# g" @9 d8 [0 Z% w) t
blkcache- block cache diagnostics and control3 h' _' v8 X: d4 V
boot    - boot default, i.e., run 'bootcmd'- V: S; J8 p- u: M% P3 K
bootd   - boot default, i.e., run 'bootcmd'0 j- R9 X0 m$ ?# X. u% R
bootefi - Boots an EFI payload from memory0 ]/ F/ ~  j$ ~( P4 |) H
bootelf - Boot from an ELF image in memory# `: Z7 K3 i7 @. i' Q9 A
booti   - boot arm64 Linux Image image from memory
% i. z) {+ F+ k8 Pbootm   - boot application image from memory/ \1 j# e1 U5 ^/ G0 w% H
============================================================
0 v5 {: J7 U! T% \! [: jbootp   - boot image via network using BOOTP/TFTP protocol3 d: Z' J2 H/ ~! @
============================================================) W+ R8 `, z3 B: n, G" i3 C
bootvx  - Boot vxWorks from an ELF image
  c0 J6 k( @# s3 L3 y7 G6 j4 ~bubt    - Burn a u-boot image to flash, f6 W3 E$ ^  r9 o
cmp     - memory compare6 E* U& C# \+ H. m
coninfo - print console devices and information( N3 ~0 I6 z% h7 W7 J4 R# P
cp      - memory copy
" i* Q1 I' }0 j" `* n0 jcrc32   - checksum calculation
* q7 t  k1 u6 l) {dcache  - enable or disable data cache  h+ B/ ?( n: p
-------------------------------------------------------------" F1 m) @* i9 x
dhcp    - boot image via network using DHCP/TFTP protocol& d/ j# ]/ y% f! Q' o7 H- h9 Z
-------------------------------------------------------------
! J1 y5 Y) d5 i- b# g% cdm      - Driver model low level access
5 T$ G3 N, t; j( ?echo    - echo args to console
2 a& p2 N7 X1 W9 M+ R- C# @editenv - edit environment variable; I0 k  M) N3 k* |: j
env     - environment handling commands
" r4 {3 o1 j  k6 a2 rexit    - exit script
$ K% W- N+ s$ Z! y; o8 }; u; {  Dext2load- load binary file from a Ext2 filesystem
. Y: W& s$ c4 L0 A0 S# Qext2ls  - list files in a directory (default /)
6 G. L6 F% T1 w, P+ v5 ]% g2 Fext4load- load binary file from a Ext4 filesystem% @- o: ^4 N( j! s* t4 E  u
ext4ls  - list files in a directory (default /)
" r! z6 n3 U6 \( i8 T. Qext4size- determine a file's size
/ B* [% R/ M  x0 }0 B2 U; e7 Y4 f" Mext4write- create a file in the root directory
" N$ B: O5 q1 V' _( k0 _false   - do nothing, unsuccessfully, B' O: p; A/ C
fatinfo - print information about filesystem/ r" r2 Y, w* ?6 i  `; ^
fatload - load binary file from a dos filesystem
! ?4 S4 m3 H, Z9 G1 sfatls   - list files in a directory (default /)
9 @3 v/ O0 t; l: [fatsize - determine a file's size
- i6 f  ^! w* W2 n) g4 n# F1 sfdt     - flattened device tree utility commands5 O7 e' G$ j, P/ n
fstype  - Look up a filesystem type
- S3 w- I. U! V# Mgo      - start application at address 'addr': ]9 e4 U" W* K8 y! K9 g
gpio    - query and control gpio pins% W) V# c9 Q  W3 @
help    - print command description/usage$ c" K3 m& P2 U0 Z& ]: v
i2c     - I2C sub-system
& p8 s! K' B( n) y3 |) U; Hicache  - enable or disable instruction cache
2 d2 F- I$ Q) d+ p" Ciminfo  - print header information for application image8 `  s' x6 ?: h! g
ir      - ir    - Reading and changing internal register values.. p3 o( p' K$ b& n+ \, B; [
# R5 |" E/ R5 r2 B5 R

5 G; V& [0 ^4 r  J; _) ]# nitest   - return true/false on integer compare9 l) I/ z! s! B( @: v  F  [# l
load    - load binary file from a filesystem
$ i  I0 Z2 j' h  t" ?( D* i& jloadb   - load binary file over serial line (kermit mode)
9 z( ^$ K% e$ {; B6 f/ l: lloads   - load S-Record file over serial line
' S% R/ Y+ {0 `loadx   - load binary file over serial line (xmodem mode)
8 G- L- S% x3 j2 o5 i4 lloady   - load binary file over serial line (ymodem mode)+ f- q8 z0 O9 T
loop    - infinite loop on address range
/ R! ^* r! [3 B$ D" l6 \+ fls      - list files in a directory (default /)
$ Y+ T9 D3 g% m9 r7 Mlzmadec - lzma uncompress a memory region1 S, u/ F8 Y( Q
md      - memory display# p) @+ E3 H& J/ c* u+ i; i
mdio    - MDIO utility commands
0 P; k3 u: H, M0 r9 S+ Hmii     - MII utility commands
: m% c9 _0 _; X+ h3 W0 _8 P7 \, `$ tmm      - memory modify (auto-incrementing address)0 O1 y+ r% p' ?2 x3 s. w3 Q; B% ], b
mmc     - MMC sub system
8 ]0 W1 ~. Q) v5 O5 Z  bmmcinfo - display MMC info
+ m# C( t6 t3 [- \& xmw      - memory write (fill)
0 P+ s; {  j. knfs     - boot image via network using NFS protocol
7 x7 A/ ]$ A+ r# f2 ^! I9 Z7 Hnm      - memory modify (constant address)4 {$ K! c$ V- d, m/ F
part    - disk partition related commands/ N% N- O+ r0 g/ i8 d, S  m3 D
ping    - send ICMP ECHO_REQUEST to network host
9 n8 ]4 c, c* ~% ^9 C9 G9 Oprintenv- print environment variables
. a6 H5 G" t' t4 Epxe     - commands to get and boot from pxe files
. |5 C1 e9 L6 n3 W% S: Rregulator- uclass operations
5 L! e% V2 s; [7 i: R! ?reset   - Perform RESET of the CPU+ u1 m# F& E; E+ i
run     - run commands in an environment variable
( o! Z% R0 a& p9 jsave    - save file to a filesystem
  s* D/ L1 H( H8 m+ [saveenv - save environment variables to persistent storage
2 P: y7 [* P7 b. B# h6 hscsi    - SCSI sub-system  c9 O6 S0 R( }. W/ h7 R, w+ g
scsiboot- boot from SCSI device: J/ c) K5 `) J/ z7 }8 m' V* q1 P' N
setenv  - set environment variables
! _$ @6 Q& Q/ K. g2 C1 T5 W6 Fsf      - SPI flash sub-system
; \( F5 G# f/ E, U. qshowvar - print local hushshell variables
# V/ E- [" H0 ?+ h, g2 Esize    - determine a file's size
# }, O1 K7 L( }6 T/ N' Zsleep   - delay execution for some time6 T( U# x' |) {4 P
source  - run script from memory
, U  `2 w. A* A" u7 fsspi    - SPI utility command3 @& O7 r% l" I, |
sysboot - command to get and boot from syslinux files
, {: Q* G# N' f7 Ctest    - minimal test like /bin/sh
: l- P# _. f7 l9 [3 G' V$ L1 \1 [% v2 i6 Stftpboot- boot image via network using TFTP protocol1 l( g& W) t" r: E+ F' W
time    - run commands and summarize execution time
2 X2 e$ I' H- Ttrue    - do nothing, successfully7 E1 M& E: L- _
usb     - USB sub-system
: A8 z2 p; T( \! n+ {& c) Zusbboot - boot from USB device
/ }" W7 `  l4 ?( r3 @version - print monitor, compiler and linker version% M; g' l8 ]0 Y) ~+ f0 V- a
. ~# N, S* g2 ?
发现了gpio+ c) T$ m+ D" j6 }, ^) K* h% z; l
& R  W3 X. Q, @+ w2 `
arvell>> gpio
  u7 x* a% l4 ~+ }gpio - query and control gpio pins8 f- E, T! F! O) ]( z% u. Q- Y' P+ O

- R3 k" d% h/ [& | 7 j0 K: Y$ r: r! Y/ d1 B
Usage:: F6 ^3 e$ u& V/ Y
gpio <input|set|clear|toggle> <pin>3 m" w. m& X- ^7 s/ W$ q
    - input/set/clear/toggle the specified pin. z2 O% @3 \: ^7 C
gpio status [-a] [<bank> | <pin>]  - show [all/claimed] GPIOs
. J; z& \& j4 g$ V. C, ~ + ~5 C1 t6 F0 a$ S8 l- R

6 B* p9 Y# ~  T: F3 ]& J8 d6 tMarvell>> gpio status  Y4 u( k* Z$ g$ _
Bank GPIO2:
% T% o% ~+ ^% e7 x: DGPIO20: output: 1 [x] sata_pwr9 I% e9 \! v5 q8 L
GPIO221: output: 1 [x] phy_reset
0 Q: e0 K1 w: z* S4 D: E9 p
/ G) q, B% M) S/ b: m: @可见的io脚- w! Y, j6 ~2 w1 M" V/ V! `, M

' j8 [5 S5 D' L2 k" w* X; gMarvell>> gpio status -a6 {4 p* S7 O" S9 w
Bank GPIO1:
5 F4 [/ d' Q4 @9 p0 dGPIO10: input: 0 [ ]4 n) i" @. R5 ~) |$ h' b
GPIO11: input: 0 [ ]! H- E* ?7 a1 W  }
GPIO12: input: 1 [ ]# M( l9 O, ^. g
GPIO13: input: 1 [ ]
  o( F+ Q/ ~- K. M2 G) E7 X0 m; }# CGPIO14: input: 1 [ ]
$ [0 O. v- h5 z! Y5 K' U0 NGPIO15: input: 1 [ ]
& H8 `, l) q( YGPIO16: input: 0 [ ]8 I. W2 x5 B+ v0 l% t0 c' H
GPIO17: input: 0 [ ]; W1 o  q4 \$ H, I- I
GPIO18: input: 0 [ ]
- `8 F4 g% `$ M1 q8 i2 }GPIO19: input: 0 [ ]2 {5 {9 k4 b, S9 c
GPIO110: input: 1 [ ]1 n, X4 ?$ A0 K* L% V8 G
GPIO111: input: 0 [ ]* O- }( l$ E& a! w4 g- p
GPIO112: input: 0 [ ]
. L3 N/ e' H7 m* F* fGPIO113: input: 0 [ ]
2 Y! ^- h! f8 D& x8 u  X0 Q2 B5 AGPIO114: input: 0 [ ]2 @( P8 T( L5 N' C( I0 L& H& i" X
GPIO115: input: 1 [ ]8 f& q/ J( }, r% O
GPIO116: input: 1 [ ], m: l" V4 u( K
GPIO117: input: 1 [ ]9 {. W+ L4 G% W, ?+ k9 Z
GPIO118: input: 1 [ ]
# j% c$ D$ R# R1 [GPIO119: input: 1 [ ], W- q: C+ _# J) g9 m
GPIO120: input: 0 [ ]$ m! F5 k& j) R+ v) J
GPIO121: input: 0 [ ]; \0 o0 j9 M) O, a
GPIO122: input: 0 [ ]2 D) n5 \% M7 O7 a0 S: e
GPIO123: input: 0 [ ]
3 v, Z! E$ P5 P3 m) o+ W" d9 G6 mGPIO124: input: 0 [ ]
9 c3 q6 X! @( J8 e% OGPIO125: input: 0 [ ]
5 W5 K9 \9 O9 d& U4 x4 mGPIO126: input: 0 [ ]
) C5 w# z; F2 x" v) }GPIO127: input: 0 [ ]
$ ^4 C1 `' s5 c/ x1 M8 aGPIO128: input: 0 [ ]3 y* V! D+ K" h0 V( ?
GPIO129: input: 0 [ ]
1 x+ L* F3 G; a7 H* }. xGPIO130: input: 0 [ ]
4 I) r* k; B2 lGPIO131: input: 0 [ ]" I9 l/ v1 b0 v" _/ i
GPIO132: input: 0 [ ]. D) M  s6 O9 c& C
GPIO133: input: 0 [ ]
. P) g( x  |$ F' r7 t; ]7 KGPIO134: input: 0 [ ]
* p6 ?' D9 m/ x: t% k+ a: L2 e. DGPIO135: input: 0 [ ]
. G( I' E5 ^9 M8 d( v- z9 K" X0 W 5 ~0 ~" p9 r# q/ L3 B2 G  H
* v5 ]$ E: T3 k
Bank GPIO2:5 U$ o: O6 L1 w. _) _% E1 i8 z% D
GPIO20: output: 1 [x] sata_pwr5 C$ H0 c: N7 c9 j
GPIO21: input: 0 [ ]. }2 g6 E+ p. @3 [! d' Y, |
GPIO22: input: 1 [ ]) e: x- S( \/ R2 J
GPIO23: input: 1 [ ]
- R' _' U: R! r+ f$ wGPIO24: input: 1 [ ]
: k9 T+ D8 p7 u  ZGPIO25: input: 1 [ ]( }- U9 W$ m: Q: B! c
GPIO26: input: 0 [ ]
. O& i- K4 u' G) e; V8 B6 IGPIO27: input: 1 [ ]/ r3 {( }( S& B9 ^
GPIO28: input: 1 [ ]3 _, [; \& q7 W& y/ N0 _
GPIO29: input: 1 [ ]$ E$ P. A- c. y& O
GPIO210: input: 1 [ ]; Y. `; _9 j% B
GPIO211: input: 1 [ ]# T" M( L8 u  I5 m
GPIO212: input: 0 [ ]& u* w1 B- W/ I4 ~0 d6 ?
GPIO213: input: 0 [ ]
# o' m  V2 T6 _GPIO214: input: 1 [ ]
0 ]" ]; [2 ~5 G' S$ P* w) R0 O* hGPIO215: input: 1 [ ]% J$ F; {9 O) T( @( L
GPIO216: input: 1 [ ]
5 _) N$ |! O( l8 t+ ]$ i7 ~3 P8 oGPIO217: input: 1 [ ]+ U3 E1 f5 M9 a& j- \
GPIO218: input: 1 [ ]- Y9 q0 P, ^2 q- R4 k
GPIO219: input: 1 [ ]2 a9 o4 ]3 M) n% g
GPIO220: input: 0 [ ]' H, i$ i; F# N
GPIO221: output: 1 [x] phy_reset; I0 ^8 g" V1 Z$ @5 X# e5 P
GPIO222: input: 1 [ ]
, I% D' U- {+ E4 R8 X2 HGPIO223: input: 1 [ ]' b& x# m' q/ m8 [
GPIO224: input: 1 [ ]
" j/ U; M! T9 s8 uGPIO225: input: 1 [ ]
4 r/ W3 G: H- y0 Q/ |3 l! _7 n' OGPIO226: input: 1 [ ]
; u2 ^5 u5 H$ \( R! L  ZGPIO227: input: 0 [ ]
6 K' |) f2 i( @# L5 tGPIO228: input: 0 [ ]+ B/ O. ~4 _, N$ n
GPIO229: input: 0 [ ]3 Z* r9 h0 Q2 W1 M, g
1 B' {0 y- y' {- Z' B  P" n
别的看不懂,只看到一个是硬盘的供电,一个是phy_reset,不知道干什么的。
. Y1 i$ X, U4 A
% [( e- ?! n& w% N# T/ {Marvell>> gpio
& R- ?1 ~+ t9 X. {" q# N" c  N7 q+ lgpio - query and control gpio pins
* [% P+ ~, T& @7 ]- p. Q 5 K( c& k: h4 V8 x

; Q" H5 s4 u! j2 DUsage:
* x3 E) M# {) D8 q' {: ggpio <input|set|clear|toggle> <pin>
' ?! i: x! n& W: O4 g# K    - input/set/clear/toggle the specified pin, N& m1 L; [* o
gpio status [-a] [<bank> | <pin>]  - show [all/claimed] GPIOs
9 Q. t4 n. Z0 j4 \3 P) D6 @9 F5 ]1 T9 q
/ y. y7 q. D5 h. u. i) W- F5 ~set是置1,clear是置0,toggle八成就是翻转(初中级英语,没办法,全靠猜)
' p! Y' s! T. T) x
$ X$ m- Q* @% |. p6 y然后看到env有地方是参数设置,类似dos的环境变量吧
# i1 O3 p8 u7 c3 y! ]# ?& ^' j # I& ?2 l/ m2 \. s) ^
Marvell>> env print3 W3 f5 D8 a/ P+ {0 {
arch=arm% p% u; s& V2 r; A. T" ^* D. b9 B
baudrate=115200
/ x# [% K7 Z$ y3 Y; `$ ~! _! J: _board=mvebu_armada-37xx5 ^$ i- G% x# x) R
board_name=mvebu_armada-37xx
4 D- C5 m+ F' D6 y4 A0 sboot_mmc0p1= setenv bootdev mmc 0:1; ext4load ${bootdev} ${scriptaddr} /boot/boot.scr && source ${scriptaddr};
1 X$ Y4 e+ K! s$ @- \. jboot_mmc0p2= setenv bootdev mmc 0:2; ext4load ${bootdev} ${scriptaddr} /boot/boot.scr && source ${scriptaddr};
! q( Z& ~- e: w$ X: Lboot_sata=scsi scan; setenv bootdev scsi 0:1; ext4load ${bootdev} ${scriptaddr} /boot/boot.scr && source ${scriptaddr};
: s) X6 N, I/ E, Hboot_targets=usb mmc0p1 mmc0p2 sata
7 H& Y  p5 w2 @: M$ K* Tboot_usb=usb start; setenv bootdev usb 0:1; ext4load ${bootdev} ${scriptaddr} /boot/boot.scr && source ${scriptaddr};
: U7 C( J! m0 ~# P6 Lbootcmd=gpio input GPIO23; if test $? = 0 ;then echo "Enter button mode";run bootcmd_button;else echo "Enter nomal Mode";run bootcmd_normal;fi
( D" @! l% d6 |8 u; Ibootcmd_button=for target in ${boot_targets};do run boot_${target}; done;1 V; D8 F- j0 v
bootcmd_normal=run bootcmd_syno;
8 _3 V5 K& m* n; b! A/ Zbootcmd_syno=run syno_bootargs;sf probe;sf read $loadaddr 0x0D5000 0x306000;echo "syno: start decompressing kernel... ";lzmadec $loadaddr $kernel_addr;sf read $initrd_addr 0x3DB000 0x410000;sf read $fdt_addr 0xd2000 0x3000;booti $kernel_addr $initrd_addr $fdt_addr;# P7 t# T4 a" [% ]9 ?* R
bootdelay=1
3 R: ^/ c* ]' H$ l' K9 W; obootdev=scsi 0:15 X# s1 z& F! U! Q
console=console=ttyMV0,115200 earlycon=ar3700_uart,0xd0012000) f# U8 i7 r9 J5 I8 N
cpu=armv86 W6 a! ?/ f5 R9 @' v% |
ethact=neta@30000- t6 c' ]% H9 E* J0 s
ethaddr=00:11:32:11:22:009 }, m" X2 G# C: s; h1 G
ethprime=eth0
' A3 P9 `8 P9 H: r7 ^! Dfdt_addr=0x6000000
( t9 ]. h. w" e2 R' [  Nfdt_high=0xffffffffffffffff" ?6 e# W& `9 n) I2 I+ m- d, e
fdtcontroladdr=1f6437d0' _+ z! Z  S& E+ e9 n6 I
gatewayip=192.168.1.254- E' Q' Q6 @5 w. d
hostname=catdrive( ?3 ~* e2 {' ], A; h0 ~4 v
image_name=/vmlinuz/ @# O1 x4 C/ T- G, b" m
initrd_addr=0x1100000$ y3 t5 E2 Z! Q2 y9 a1 G) I
initrd_size=0x2000000
& \& y- P2 L/ yipaddr=192.168.1.119
' a7 H9 {% s' Z1 F- q# Skernel_addr=0x7000000; W  y- E5 k6 L) M8 T* n; Q
loadaddr=0x8000000
* U* Z+ ^8 V  D9 dnetdev=eth0: K  X: Y# y0 X+ v. h8 i
netmask=255.255.255.0
  `! I8 h! q1 |; r1 M5 Orootpath=/srv/nfs/
" Q; ]/ U7 D9 H2 Qscriptaddr=0x6d00000
5 Y+ w* W1 ^+ nserverip=192.168.1.254. \0 D" s. P% ]" M
soc=mvebu& B* S: a% G9 _+ q0 p7 K2 C
stderr=serial@12000
' O; w5 a  z/ w4 g7 _' Rstdin=serial@12000$ i' M; q( f# Z! N- ]
stdout=serial@12000
4 G' c# ]1 f. F; s6 z9 Z3 C% k7 p& Rsyno_bootargs=setenv bootargs console=ttyS0,115200 ip=off root=/dev/sda1 rw swiotlb=2048 syno_hw_version=DS119j syno_fw_version=M.246 syno_hdd_powerup_seq=1 ihd_num=1 netif_num=1 syno_hdd_enable=40 syno_hdd_act_led=10 flash_size=8 vendor=Marvell0 B& B) n) h' V' H. `1 c
vendor=Marvell+ q+ b, ~" R* M* W3 u" q$ m

* k& T- @# t0 w/ g5 n
( H6 V. {* n4 ~" L# AEnvironment size: 2001/8188 bytes
0 s) K- d1 d% n( `# pMarvell>>$ i& e8 `1 z: q

4 L, ^& f4 J( V. }, D/ x0 Z  P看到有一个GPIO23,试了下,原来是reset按钮检测,没什么用。但它有两个启动项,主要是bootcmd_normal,而这又指向bootcmd_syno.. G* E5 }& c) f0 l$ x  T
bootcmd_syno=run syno_bootargs;sf probe;sf read $loadaddr 0x0D5000 0x306000;echo "syno: start decompressing kernel... ";lzmadec $loadaddr $kernel_addr;sf read $initrd_addr 0x3DB000 0x410000;sf read $fdt_addr 0xd2000 0x3000;booti $kernel_addr $initrd_addr $fdt_addr;
6 ~4 j' d! b5 i3 Y 6 {! p: y1 y2 V: l
这里好像是群晖引导,一条一条的命令,我又不会改linux的启动呀内核呀,只能在这儿动手了
2 o) `) t0 ]  j4 B& Z) B& [bootdelay=10 ,启动等待时间,1秒,太少,我都来不及按,改成10秒
1 _+ w% P' g2 s4 s6 K8 ~% k+ b" } 2 O2 N" o8 x* y6 g
bootcmd_syno=gpio clear GPIO221;sleep 10;gpio clear GPIO20;sleep 10;gpio set GPIO221;sleep 10;gpio set GPIO20;sleep 10;run syno_bootargs;sf probe;sf read $loadaddr 0x0D5000 0x306000;echo "syno: start decompressing kernel... ";lzmadec $loadaddr $kernel_addr;sf read $initrd_addr 0x3DB000 0x410000;sf read $fdt_addr 0xd2000 0x3000;booti $kernel_addr $initrd_addr $fdt_addr;1 Y' ^2 {7 k/ b* w

- k) N  R0 C( R/ G3 y8 ^3 D. U: R注意我划掉的那部分,是先给硬盘断电,一会儿再通电,在固态硬盘可用,可能因为固态硬盘启动电流小,冲击小,当用普通盘时,有一定几率会死机,所以用普通盘时,我去掉了。& T" X, P8 m, R# r. k3 \) l6 e
思路是:6 g$ i5 d% Q" r1 c+ f2 x
启动前先把phy那个=0,等10秒,关硬盘,等10秒,phy那个置1,开硬盘。之后正常启动。" n6 e/ y) m- d4 \) R0 \

5 @2 w6 \& S  ~0 T这样有时能得到IP,但还是会有一定几率不行,所以又加上了网上流行的ping 60秒不通时重启
; A' L5 M2 M! b; y4 L  D
7 ~: j3 k/ B; O6 ]% c5 j- F! c控制面板,任务计划-新增-触发的任务-用户定义脚本,开机启动,开机60秒得不到ip 重启0 R4 x# \/ b3 P* K+ z
#!/bin/bash
" g- @( k& a0 [! _  Gdt=`date '+%d/%m/%Y %H:%M:%S'`' Z/ R7 i4 o3 M$ t' }/ y% B
echo "$dt"
, @0 h' E2 S" k" h5 A, V+ tsleep 605 s; `, R, U& s: j( X) L' e
num=`ping -c20 114.114.114.114 | tail -2 | head -1 | cut -f 3 -d"," | cut -f 1 -d"%" | cut -f 2 -d" "`
; a. Q/ L" @3 V! a( Hecho $num
* ], p$ @! O7 b* j9 h0 n  Yecho $?
+ ~/ Y4 y  _. }6 M: c! Bif [ $? -eq 0 -a $num -eq 0 ]; then
9 {/ K/ g; n! u- Y    echo "$dt ok" >> /result.txt
9 M$ p7 y7 p& velse
4 R: [2 _/ ?: F, D0 o' L9 I    echo "$dt noip loss $num reboot" >> /result.txt, ]- H" _% e! d, {& _6 s/ k! T
    reboot% p2 p$ u# g1 A' ~
fi# f$ R# {$ w( h  f! L
& m3 \  F: ?# Z( _3 n5 f* T
第五行,ping后边的IP自己改,我用了一个外网的IP。9 f1 ~% Q8 C/ W5 u8 o' l
$ w( u+ o- K4 N0 n3 K- }0 ?9 Y2 w, \# C
总是思路就是,第一次刷完群晖会有ip,挂着硬盘,装系统,设置60秒脚本,重启,如果找不到IP,改bootcmd_syno,再重启等着进系统。! k/ H. r" N% {# G9 p3 i, A) z
- D% Z9 A; D" M& C% t
我反正试了几天,刚上电,等一会儿根本没有IP,60秒后,会重启,这次绝对有IP。但总要用ttl+shell盯着测试太麻烦,所以又加了一个正常启动后闪led灯的脚本,从网上抄的,忘记上谁发的了,侵权见谅。8 f8 o: n" |' b. F( Q: }6 v8 v

2 L/ G6 m6 h6 h! C还是上边60秒的地方,再加一条
0 ~2 \# n- g/ D  R
& R$ z% B; L& Q  m" ]' j . @$ p, i7 }! E. P4 A% r5 S1 f
2cset -y -f 0 0x45 0x00 0x554 e$ s% c6 s" b! C# U  `2 v( K
i2cset -y -f 0 0x45 0x01 0x01
* s3 s- Y$ r+ ~$ i) B5 }i2cset -y -f 0 0x45 0x30 0x07
4 k- b1 l% j  h& o6 P& b. h+ @. qi2cset -y -f 0 0x45 0x31 0x729 X! d0 T: H  \
i2cset -y -f 0 0x45 0x32 0x724 x2 g) R- C7 I8 [4 {8 U$ w
i2cset -y -f 0 0x45 0x33 0x72
; [" y: R  Z" K% ~9 f7 ?  I#调节三个灯灯每周期上升沿和最高亮度时间. h4 |! q( p0 w. ^
#想要白色的话,把三个灯时间改为一样的就可以了,比如全部设为0x44. }. Z0 U8 V9 u! ?* W
i2cset -y -f 0 0x45 0x37 0x447 u" ?: x6 m) y/ ~4 |( \5 ^
i2cset -y -f 0 0x45 0x3a 0x550 x3 ]3 M2 `, ?+ R' t' Y
i2cset -y -f 0 0x45 0x3d 0x668 w4 B" e, \1 J3 A" o# x: {. |
#调节三个灯每周期下降沿时间和关机时间2 G; M+ f8 Z7 V: W% t- }. _
i2cset -y -f 0 0x45 0x38 0x440 V% [2 M& {$ {2 b0 }
i2cset -y -f 0 0x45 0x3b 0x55
* W; T- U9 ~  W! I" C6 \i2cset -y -f 0 0x45 0x3e 0x66$ I# w9 l1 d$ @' n; m9 Q: Q
i2cset -y -f 0 0x45 0x39 0x40. h3 y& J4 u5 k6 D0 ?+ Y. o' |% p
i2cset -y -f 0 0x45 0x3c 0x40
0 k) {1 w1 C  ji2cset -y -f 0 0x45 0x3f 0x40
4 ?9 j- e0 |) [+ ?: ?# 0-255,更亮
( j  m4 ^" i* E, p, \8 E; l( si2cset -y -f 0 0x45 0x34 1283 ?" q) U* O" w# Q
i2cset -y -f 0 0x45 0x35 128
$ J' p. t3 T0 V1 K+ ^- di2cset -y -f 0 0x45 0x36 128: I/ w9 G" x; |- G- W3 N
. Q! B. Y8 T6 p4 i6 D# }6 q4 R5 L
然后在这条设置里有一个“先行任务”,设置成上边的60秒,也就是60秒那条执行完才执行这条。而60秒那条,没有ip就会重启,有ip就完成了,就会执行亮灯6 |4 K, e! v/ b- y. t: q

5 R1 c9 p9 Z% O0 b4 @
- R$ P& x& x; }, P( ~; C我知道很多大神会做内核解决各种问题,我也知道看起来很小的问题,工作量是非常大的,可能要几个月才能解决,所以大神做的东西是不可能轻易免费发出来的,人家也要吃饭,不可能靠爱发电(我也在公司做简单的技术,知道技术无价的道理)。我从99年学电脑开始,绝大部分的东西都是从网上找来学的,所以非常感谢所有把知识发到网上共享的大神们。8 Y2 Q$ o; b# _7 U( j! l) g
9 c' U& m+ l, ?% u! F; |9 x
希望大家有条件能测试一下这个方法,如果可行,请发出去让更多的人看到,如果有改进的方法,也请共享出来,因为这个方法换盘好像不方便。2 t% i2 V  Z! D7 u" [) a

1

主题

4

回帖

255

积分

中级渣柚V1

积分
255
发表于 2023-1-18 14:08:36 | 显示全部楼层
时间问题?

5

主题

34

回帖

302

积分

中级渣柚V1

积分
302
发表于 2023-2-1 16:28:20 | 显示全部楼层
多谢分享!!
0 r- j; B7 m, X8 R2 f, d

2

主题

15

回帖

282

积分

中级渣柚V1

积分
282
发表于 2023-2-1 18:25:22 来自手机 | 显示全部楼层
看一看学习

3

主题

32

回帖

330

积分

中级渣柚V1

积分
330
发表于 2023-2-1 22:18:59 来自手机 | 显示全部楼层
学习学习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|矿渣社区 ( 黔ICP备2024020525号-1 )

GMT+8, 2025-4-4 10:37 , Processed in 0.254615 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表