我正在寻找拥有功能正常的 QNAP TS-228(32 位;非 a 版本)的人。我的固件升级出了问题,固件损坏了。我有一个 usb ttl,所以我设法连接到串行控制台并修复了盒子(提取/解密了最新的 QTS 固件并替换了有故障的文件)。
不幸的是 - 我还设法破坏了 u-boot。由于此型号没有恢复固件,我从 TS-228a(较新的型号)安装了 u-boot 映像。因此,NAS 现在可以完全启动,但bootr
每次打开电源时我都必须手动运行 u-boot 命令。
< cut messages >
get_bootparam:
------------can't find tmp/factory/000BootParam.h
Factory RO: MMC
Factory RO: seq#:0x1, size:0x200
[ENV] read_env from factory failed
[ENV] Using default environment variables
In: serial
Out: serial
Err: serial
Net: Realtek PCIe GBE Family Controller mcfg = 0024
dev->name=r8168#0
Hit Esc or Tab key to enter console mode or rescue linux: 0
------------can't find tmp/factory/recovery
Press Install Button
(Re)start USB...
USB0: USB EHCI 1.00
scanning bus 0 for devices... 1 USB Device(s) found
scanning usb for storage devices... 0 Storage Device(s) found
1: Hub, USB Revision 2.0
- u-boot EHCI Host Controller
- Class: Hub
- PacketSize: 64 Configurations: 1
- Vendor: 0x0000 Product 0x0000 Version 1.0
Configuration: 1
- Interfaces: 1 Self Powered 0mA
Interface: 0
- Alternate Setting 0, Endpoints: 1
- Class Hub
- Endpoint 1 In Interrupt MaxPacket 8 Interval 255ms
USB device -1: device type unknown
** Invalid boot device **
Loading "rescue.emmc.dtb" from USB failed.
Enter console mode, disable watchdog ...
Realtek>
Realtek> env print
baudrate=115200
bootargs=console=ttyS0,115200 earlyprintk loglevel=4
bootcmd=bootr
bootdelay=0
ethact=r8168#0
ethaddr=00:10:20:30:40:50
fdt_loadaddr=0x01FF2000
gatewayip=192.168.100.254
ipaddr=192.168.100.1
kernel_loadaddr=0x03000000
mtd_part=mtdparts=rtk_nand:
netmask=255.255.255.0
rescue_audio=bluecore.audio
rescue_cmd=go ru
rescue_dtb=rescue.emmc.dtb
rescue_rootfs=rescue.root.emmc.cpio.gz_pad.img
rescue_vmlinux=emmc.uImage
rootfs_loadaddr=0x02200000
serverip=192.168.100.2
即使启动环境变量已设置为,bootr
我仍然必须始终手动执行它才能启动该框:
Realtek> bootr
Start Boot Setup ...
[INFO] fw desc table base: 0x00620000, count: 6
Normal boot fw follow...
Kernel:
FW Image to 0x03000000, size=0x00592a00, 0x2c95 blocks (0x03592a00)
FW Image fr 0x008b7600, fr block 0x45bb (non-lzma)
DT:
FW Image to 0x01ff2000, size=0x000064fa, 0x33 blocks (0x01ff84fa)
FW Image fr 0x00630000, fr block 0x3180 (non-lzma)
resolution = <0x500 0x2d0>
ROOTFS:
FW Image to 0x02200000, size=0x00400000, 0x2000 blocks (0x02600000)
FW Image fr 0x01a4a000, fr block 0xd250 (non-lzma)
Audio FW:
FW Image to 0x01b00000, size=0x0027f528, 0x13fb blocks (0x01d7f528)
FW Image fr 0x00638000, fr block 0x31c0 (non-lzma)
Start A/V Firmware ...
e# Booting kernel from L
gaHDcyM IIm aRgea awt 0E30n0a00b00l e:... M
也尝试联系 qnap 支持,但他们没有帮助。
由于我不知道问题到底是什么,我需要从 TS-228 中完整转储 /dev/mmcblk0 来修复我的盒子。如果有人愿意与我分享,我将不胜感激。
像这样的事情应该可以解决问题:
gzip </dev/mmcblk0 > /share/Public/emmc.img.gz
谢谢!
答案1
[~] # dd if=/dev/mmcblk0boot0 of=/share/Stuff/uboot.img
8192+0 records in
8192+0 records out
[~] #
答案2
这是文件 mmc.img.gz。https://easyupload.io/m47313c75889a913eb82d5cbbf695ea92d7875 emmc.img.gz