007revad / Synology_HDD_db

Add your HDD, SSD and NVMe drives to your Synology's compatible drive database and a lot more
MIT License
2.7k stars 180 forks source link

RX1214 expansion unit in combination with RS2421+ #344

Closed Jellepie closed 2 months ago

Jellepie commented 3 months ago

Hello, I have a RS2421+ with a RX1214 expansion unit connected.

When I execute the script it says it cannot find the expansion unit:

synoadmin@STOR004:/$ sudo /volume1/test/Synology_HDD_db-3.5.98/syno_hdd_db.sh
Synology_HDD_db v3.5.98
RS2421+ DSM 7.2.1-69057-5
StorageManager 1.0.0-0017

rs2421+_host_v7 version 8037

Running from: /volume1/test/Synology_HDD_db-3.5.98/syno_hdd_db.sh

HDD/SSD models found: 2
WD60EFRX-68L0BN1,82.00A82,6000 GB
WD60EFRX-68MYMN1,82.00A82,6000 GB

No M.2 drives found

No M.2 PCIe cards found

No Expansion Units found

WD60EFRX-68L0BN1 already exists in rs2421+_host_v7.db
WD60EFRX-68MYMN1 already exists in rs2421+_host_v7.db

Support disk compatibility already enabled.

Support memory compatibility already enabled.

Drive db auto updates already enabled.

DSM successfully checked disk compatibility.

You may need to reboot the Synology to see the changes.

It is detected by DSM: image

As a test, there are currently 3 disks in the expansion unit.

They show up as eSATA devices but are unusable:

image

007revad commented 3 months ago

I didn't realise that Inifiniband expansion units show up in DSM as eSATA devices.

Give me a few hours and I'll add the RX1214 and other old inifiniband expansion units to my https://github.com/007revad/Synology_enable_eunit script.

007revad commented 3 months ago

I've released a new version, v3.0.14, that supports the RX1214.

https://github.com/007revad/Synology_enable_eunit/releases

007revad commented 3 months ago

Can you tell what the following command returns:

sudo syno_slot_mapping
Jellepie commented 3 months ago

I tried v3.0.14 but the message remains, even after a reboot. I tried RX1214 & RX1214RP. (I have an RX1214RP) The script ran fine and added the rx1214 expansion unit though.

Synology_enable_eunit v3.0.14
RS2421+ DSM 7.2.1-69057-5

StorageManager 1.0.0-0017

Running from: /volume1/test/Synology_enable_eunit-3.0.14/syno_enable_eunit.sh

Connected Expansion Units:
RX1214

RX1217rp is enabled in /etc/model.dtb
RX1217rp is enabled in /etc.defaults/model.dtb
RX1217 is enabled in /etc/model.dtb
RX1217 is enabled in /etc.defaults/model.dtb
RX1214rp is enabled in /etc/model.dtb
RX1214rp is enabled in /etc.defaults/model.dtb
RX1214 is enabled in /etc/model.dtb
RX1214 is enabled in /etc.defaults/model.dtb

1) DX517       5) RX418      9) RX1217    13) RX1211    17) Restore
2) DX513       6) RX415     10) RX1214rp  14) DX1215II  18) Quit
3) DX213       7) RX410     11) RX1214    15) DX1215
4) DX510       8) RX1217rp  12) RX1211rp  16) DX1211
Select your Expansion Unit: 10
You selected RX1214rp

RX1214rp already enabled in model.dtb

Finished
synoadmin@STOR004:/$ sudo /volume1/test/Synology_enable_eunit-3.0.14/syno_enable_eunit.sh
Synology_enable_eunit v3.0.14
RS2421+ DSM 7.2.1-69057-5

StorageManager 1.0.0-0017

Running from: /volume1/test/Synology_enable_eunit-3.0.14/syno_enable_eunit.sh

Connected Expansion Units:
RX1214

RX1217rp is enabled in /etc/model.dtb
RX1217rp is enabled in /etc.defaults/model.dtb
RX1217 is enabled in /etc/model.dtb
RX1217 is enabled in /etc.defaults/model.dtb
RX1214rp is enabled in /etc/model.dtb
RX1214rp is enabled in /etc.defaults/model.dtb
RX1214 is enabled in /etc/model.dtb
RX1214 is enabled in /etc.defaults/model.dtb

1) DX517       5) RX418      9) RX1217    13) RX1211    17) Restore
2) DX513       6) RX415     10) RX1214rp  14) DX1215II  18) Quit
3) DX213       7) RX410     11) RX1214    15) DX1215
4) DX510       8) RX1217rp  12) RX1211rp  16) DX1211
Select your Expansion Unit: 11
You selected RX1214

RX1214 already enabled in model.dtb

Finished

This is what I get after running sudo syno_slot_mapping

synoadmin@STOR004:/$ sudo syno_slot_mapping
System Disk
Internal Disk
01: /dev/sata1
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:

Esata port count: 1
Eunit port 1 - RX1214

USB Device
01:
02:
007revad commented 3 months ago

Okay. So now I'll have a look at the syno_hdd_db script to see why it's not finding your RX1214

Does the following commands find the RX1214?

sudo syno_disk_data_collector record
file=$(ls /var/log/diskprediction | tail -n1)
grep -Eowi "([FRD]XD?[0-9]{3,4})(rp|ii|sas){0,2}" "/var/log/diskprediction/$file" | uniq
Jellepie commented 3 months ago

It doesn't return anything:

synoadmin@STOR004:/$ sudo syno_disk_data_collector record
Password:
synoadmin@STOR004:/$ file=$(ls /var/log/diskprediction | tail -n1)
synoadmin@STOR004:/$ grep -Eowi "([FRD]XD?[0-9]{3,4})(rp|ii|sas){0,2}" "/var/log/diskprediction/$file" | uniq
grep: /var/log/diskprediction/data-2024-08-17.json: Permission denied
synoadmin@STOR004:/$ sudo grep -Eowi "([FRD]XD?[0-9]{3,4})(rp|ii|sas){0,2}" "/var/log/diskprediction/$file" | uniq
007revad commented 3 months ago

Do you have any drives in the RX1214?

Jellepie commented 3 months ago

Yes, there are 3 WD Red 6TB drives in it. It shows them in the DSM UI as external devices on top but they can't be used in storage manager: image

In storage manager I can only see the 1 disk in the RS2421+: image

007revad commented 3 months ago

Have you rebooted since you ran Synology_enable_eunit?

Jellepie commented 3 months ago

Yes, on the first run the script asked to reboot, which I did. 2nd run it didn't ask to reboot.

edit: just gave it another reboot but same result

007revad commented 3 months ago

Has the "incompatible expansion unit" warning gone in storage manager?

Jellepie commented 3 months ago

no

Jellepie commented 3 months ago

not sure if it matters but it says "RX1214-1" in storage manager: image

And in info center it says "Synology-RX1214": image

007revad commented 3 months ago

RX1214-1 in storage manager is normal. It's because the RS2421 has 2 expansion ports and the RX1214 is connected to expansion port 1.

Have you tried connecting it to expansion port 2?

Jellepie commented 3 months ago

There's only 1 port on both the rs2421 as the rx1214.

007revad commented 3 months ago

Ah yes, the 24 in RS2421+ means "12 bay NAS + one 12 bay expansion unit".

007revad commented 3 months ago

Are you able to copy the following 4 files, zip them, then attach the zip file to your reply.

Change "/volume1/test" to a volume and shared folder on your RS2421+

cp /var/run/model.dtb /volume1/test/var_run_model.dtb
cp /etc/model.dtb /volume1/test/etc_model.dtb
cp /etc.defaults/model.dtb /volume1/test/etcdefaults_model.dtb
cp /etc.defaults/model.dtb.bak /volume1/test/etcdefaults_model.dtb.bak

And tell me what these commands return:

ls -l /var/run/model.dtb
ls -l /etc/model*
ls -l /etc.defaults/model*
Jellepie commented 3 months ago

I've attached the requested files files.zip

This is the output of the commands:

synoadmin@STOR004:/$ ls -l /var/run/model.dtb
-rw-r--r-- 1 root root 6459 Aug 18 13:00 /var/run/model.dtb
synoadmin@STOR004:/$ ls -l /etc/model*
-rw-r--r-- 1 root root 6459 Aug 17 13:02 /etc/model.dtb
synoadmin@STOR004:/$ ls -l /etc.defaults/model*
-rw-r--r-- 1 root root 6459 Aug 17 13:02 /etc.defaults/model.dtb
-rw-r--r-- 1 root root 5567 Sep 23  2023 /etc.defaults/model.dtb.bak
007revad commented 3 months ago

I tried RX1214 & RX1214RP. (I have an RX1214RP)

Do you mean you tried connecting the RX1214 & then the RX1214RP and neither worked?

The script ran fine and added the rx1214 expansion unit though.

Your model.dtb files only contain RX1214RP and not RX1214

RX1214 is enabled in /etc/model.dtb RX1214 is enabled in /etc.defaults/model.dtb

I think this from the script is incorrect, when the model.dtb already contains RX1214RP. The script is looking for "RX1214" but matching on the RX1214 in "RX1214RP".

Can you run this version with the --check option to confirm that it correctly shows that RX1214RP is enabled and does not show that RX1214 is enabled: https://github.com/007revad/Synology_enable_eunit/releases/tag/v3.0.15-RC

If it does not show:

RX1214 is enabled in /etc/model.dtb
RX1214 is enabled in /etc.defaults/model.dtb

then run it without the --check option and enable RX1214

Jellepie commented 3 months ago

Do you mean you tried connecting the RX1214 & then the RX1214RP and neither worked?

Sorry for the confusion, I have and RX1214RP. At first I selected RX1214RP, when that didn't work after a reboot I tried RX1214. But that didn't work either after a reboot.

I'll try the new release now.

Jellepie commented 3 months ago
Synology_enable_eunit v3.0.15
RS2421+ DSM 7.2.1-69057-5

StorageManager 1.0.0-0017

Using options: --check
Running from: /volume1/test/Synology_enable_eunit-3.0.15-RC/syno_enable_eunit.sh

Connected Expansion Units:
RX1214

RX1217rp is enabled in /etc/model.dtb
RX1217rp is enabled in /etc.defaults/model.dtb
RX1217 is enabled in /etc/model.dtb
RX1217 is enabled in /etc.defaults/model.dtb
RX1214rp is enabled in /etc/model.dtb
RX1214rp is enabled in /etc.defaults/model.dtb

enabling rx1214

Synology_enable_eunit v3.0.15
RS2421+ DSM 7.2.1-69057-5

StorageManager 1.0.0-0017

Running from: /volume1/test/Synology_enable_eunit-3.0.15-RC/syno_enable_eunit.sh

Connected Expansion Units:
RX1214

RX1217rp is enabled in /etc/model.dtb
RX1217rp is enabled in /etc.defaults/model.dtb
RX1217 is enabled in /etc/model.dtb
RX1217 is enabled in /etc.defaults/model.dtb
RX1214rp is enabled in /etc/model.dtb
RX1214rp is enabled in /etc.defaults/model.dtb

1) DX517       5) RX418      9) RX1217    13) RX1211    17) Restore
2) DX513       6) RX415     10) RX1214rp  14) DX1215II  18) Quit
3) DX213       7) RX410     11) RX1214    15) DX1215
4) DX510       8) RX1217rp  12) RX1211rp  16) DX1211
Select your Expansion Unit: 11
You selected RX1214

Added RX1214 to model.dtb

The Synology needs to restart.
Type yes to reboot now.
Type anything else to quit (if you will restart it yourself).
yes
Terminated

It did not show RX1214 as enabled with the --check option. After enabling it again with option 11 it shows the drives in Storage Manager and they can be used!

image

image

It seems like DSM sees the RX1214RP as RX1214 but that doesn't really matter as the only difference is the redundant PSU.

Thank you very much!

007revad commented 3 months ago

Excellent.

I'll change the script so when someone selects an RP model the scripts adds both the RP and non-RP models.

I noticed the original model.dtb file contains both RX1217 and RX1217RP. Maybe RX1214RP identifies itself as a RX1214 and the RX1217RP identifies itself as a RX1217RP.