RR DT机型DTS文件制作

专业术语

  • dt: 设备树
  • dts: 设备树源码
    • dts 文件是设备树的 ASCII 文本描述。
  • dtc: 设备树编译器
    • DTC 是一种编译工具,可以将 .dts 文件编译成 .dtb 文件。
  • dtb: 设备树二进制文件
    • DTC 编译由 .dts 生成的二进制文件(.dtb)。当引导程序启动内核时,它会预先读取 *.dtb 到内存中,然后被内核解析。

DSM的设备树

  1. 来自群晖的新发布机型基本上已经转向使用设备树。
  2. 设备树模型的磁盘顺序比传统方法更容易控制。
  3. 但是,当前 DSM 4.x 内核设备树模型 HBA 的问题尚未解决。

工具集

dtc_64bit.exe.gz windows_x64

dtc_arm.gz

dtc_aarch64.gz

dtc_i686.gz

dtc_x86_64.gz

自定义DTS文件

RR(arpl) 会在启动时根据实际硬件条件制作一个 dts 文件(/addons/model.dts)。当 DSM 系统安装后,会在 /etc/model.dtb 保留一份备份,所以我提供两种获取它的方法。

1.获取当前的 dts 文件:

  1. 当没有安装DSM系统时

    AgAABTSIUvqGW2xjVxZEqqlP9mO4k_xa.png

    通过 Telnet 连接 DSM 系统
    执行以下命令将 model.dts 上传到传输网络硬盘,然后通过 transfer 返回的地址下载到本地计算机。

    curl -sSL --insecure -w '\\n' --upload-file /addons/model.dts https://transfer.sh
    

    AgAABTSIUvpX5f4ayzVC-6MkbOEsYCHR.png

    AgAABTSIUvo7HlKUsR1AFbJF4RLSiJ9G.png

  2. 当已经安装了DSM系统时
    打开SSH

    AgAABTSIUvrfCzMFXG5CsI7KotNU06y4.png

    打开SSH工具输入下列代码

    sudo -icurl -kL https://github.com/RROrg/rr/files/14824625/dtc\_x86\_64.gz -o \~/dtc\_x86\_64.gzgzip -dc \~/dtc\_x86\_64.gz >\~/dtcchmod +x \~/dtc\~/dtc -I dtb -O dts /etc/model.dtb >model.dtscurl -sSL --insecure -w '\\n' --upload-file \~/model.dts https://transfer.sh
    

2.编辑DTS文件

  1. 获取硬盘数据。
    #SATA

    cat /sys/block/sata\*/device/syno\_block\_info
    

    #NVME

    cat /sys/block/nvme\*/device/syno\_block\_info
    
  2. 根据需要补充未插入的磁盘数据。

    AgAABTSIUvrLtaIaJ8JAsIeLzoXP5NBY.png

3.使用DTS文件

AgAABTSIUvoGySyUBK1FxaiYwtbxYJ7h.png