系统运维/飞牛

【飞牛疑难杂症】N1刷飞牛NAS,升级1.2.24之后出现硬盘全部无法识别问题

daimafengzi · 3月13日 · 2026年 · · · · · 本文共1431个字 · 预计阅读5分钟 2次已读

【飞牛疑难杂症】N1刷飞牛NAS,升级1.2.24之后出现硬盘全部无法识别问题
终极急救方案:强制禁用 UAS 协议以解决 JMicron JMS576 硬盘盒识别异常问题

一、问题背景

近年来,大量用户反馈在升级到较新版本的 Linux 内核(特别是 6.1 及以上,如 6.18)后,原本正常工作的 JMicron JMS576 芯片 USB 硬盘盒突然“失联”——系统无法挂载、dmesg 报错 reset high-speed USB device 或 UAS is blacklisted,甚至直接导致系统卡顿。
根本原因在于:Linux 内核从 5.15 开始逐步强化对 UAS 协议的支持,但 JMicron JMS576 的固件实现存在缺陷,与新版 UAS 驱动不兼容。而旧版 usb-storage 协议虽效率略低,却极其稳定。
因此,强制绕过 UAS,回归传统协议,是当前最有效的“急救”手段。

二、确认设备 ID

首先,通过 lsusb 命令确认你的硬盘盒是否使用 JMS576 芯片:

lsusb

典型输出如下:

Bus 002 Device 003: ID 152d:0576 JMicron Technology Corp. / JMicron USA Technology Corp.


其中:
厂商 ID(Vendor ID):152d
产品 ID(Product ID):0576
这个 152d:0576 就是我们后续配置的关键标识。

三、修改启动参数(终极解决方案)

飞牛系统(或其他基于 ARM 的轻量级 Linux 发行版,如 Armbian、OpenWrt for N1)通常将内核启动参数存放在 /boot/env.txt 或 /boot/fuEnv.txt 中。

步骤 1:确认配置文件位置

ls /boot/env.txt
ls /boot/uEnv.ini

多数 N1 设备使用 fuEnv.txt。

步骤 2:编辑启动参数

使用 nano 编辑配置文件(以 env.txt 为例):

vi /boot/fuEnv.txt

找到包含 extraargs=bootargs= 的行,在其末尾添加(注意前面加空格):

usb-storage.quirks=152d:0576:u

完整示例如下:

verbosity=1
bootlogo=false
console=both
fdtfile=amlogic/meson-gxl-s905d-phicomm-n1.dtb
extraargs=console=ttyAML0,115200n8 console=tty0 usb-storage.quirks=152d:0576:u kernelfile=vmlinuz-6.18.6-trim

参数说明:
152d:0576:设备的 VID:PID
:u:表示对该设备禁用 UAS(u = “use usb-storage instead of UAS”)

步骤 3:保存并重启

在 vi 中:
按 esc → (退出编写)
按 shift + ;
输入 wq 回车保存退出
然后重启系统:

reboot

搞定收工!!

结语

面对 JMicron JMS576 在新版 Linux 内核中的“水土不服”,强制禁用 UAS 并非倒退,而是务实的工程取舍。通过一行启动参数,我们即可绕过内核缺陷,恢复设备可用性。

附注:该方法同样适用于其他存在 UAS 兼容性问题的 USB 存储设备(如某些 Realtek、Initio 芯片),只需替换对应的 VID:PID 即可。

0 条回应