Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/007revad/synology_enable_m2_card
Enable M.2 PCIe cards in Synology NAS that don't officially support them
https://github.com/007revad/synology_enable_m2_card
diskstation dsm rackstation synology synology-disk-station synology-dsm synology-nas
Last synced: 22 days ago
JSON representation
Enable M.2 PCIe cards in Synology NAS that don't officially support them
- Host: GitHub
- URL: https://github.com/007revad/synology_enable_m2_card
- Owner: 007revad
- License: mit
- Created: 2023-07-06T11:39:17.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-04T06:24:00.000Z (about 1 month ago)
- Last Synced: 2025-01-17T02:05:00.544Z (29 days ago)
- Topics: diskstation, dsm, rackstation, synology, synology-disk-station, synology-dsm, synology-nas
- Language: Shell
- Homepage:
- Size: 601 KB
- Stars: 60
- Watchers: 4
- Forks: 9
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGES.txt
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Synology enable M2 card
![]()
![]()
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/paypalme/007revad)
[![](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86)](https://github.com/sponsors/007revad)
[![committers.top badge](https://user-badge.committers.top/australia/007revad.svg)](https://user-badge.committers.top/australia/007revad)### Description
Enable Synology M.2 PCIe cards in Synology NAS that don't officially support them
Allows using E10M20-T1, M2D20, M2D18 or M2D17 cards in Synology NAS models that aren't on their [supported model list](https://github.com/007revad/Synology_enable_M2_volume/wiki/Models-that-support-PCIe-M.2-cards).
- Enables E10M20-T1, M2D20, M2D18 and M2D17 for DS1823xs+, DS1821+, DS1621+.
- Enables M2D18 and M2D17 for DS2422+, RS2423+, RS2421+, RS2421RP+, RS2821RP+.
- Enables M2D18 and M2D17 for RS822RP+, RS822+, RS1221RP+ and RS1221+ using DSM 7.1.1 and older.
- May enable E10M20-T1, M2D20, M2D18 and M2D17 for other models with a PCIe x8 slot that have /usr/syno/synonvme.[Synology HDD db](https://github.com/007revad/Synology_HDD_db) now enables using Storage Manager to create volumes on M.2 drives in a PCIe M.2 adaptor card.
## Which Synology models will this work on
**Works on the following models:**
Click here to see list
| Model | E10M20-T1 | M2D20 | M2D18 | M2D17 | Notes |
|-|-|-|-|-|-|
| DS1821+ | yes | yes | yes | yes | |
| DS1621+ | yes | yes | yes | yes | |
| DS1823xs+ | yes | yes | yes | yes | |
| DS2422+ | yes | yes | yes | yes | E10M20-T1 and M2D20 already enabled in DSM |
| | | | | |
| RS2423+ | yes | yes | yes | yes | E10M20-T1 and M2D20 already enabled in DSM |
| RS2423RP+ | yes | yes | yes | yes | E10M20-T1 and M2D20 already enabled in DSM |
| RS2421+ | yes | yes | yes | yes | E10M20-T1 and M2D20 already enabled in DSM |
| RS2421RP+ | yes | yes | yes | yes | E10M20-T1 and M2D20 already enabled in DSM |
| RS2821RP+ | yes | yes | yes | yes | E10M20-T1 and M2D20 already enabled in DSM |
| RS822+ | yes | yes | yes | yes | E10M20-T1 and M2D18 already enabled in DSM* |
| RS822RP+ | yes | yes | yes | yes | E10M20-T1 and M2D18 already enabled in DSM* |
| RS1221+ | yes | yes | yes | yes | E10M20-T1 and M2D18 already enabled in DSM* |
| RS1221RP+ | yes | yes | yes | yes | E10M20-T1 and M2D18 already enabled in DSM* |
| RS2418+ | yes | yes | yes | yes | M2D20, M2D18 and M2D17 already enabled in DSM |
| RS2418RP+ | yes | yes | yes | yes | M2D20, M2D18 and M2D17 already enabled in DSM |
| | | | | |
| **others** | maybe | maybe | maybe | maybe | See Other Models Notes |**Notes**
- Synology added support for the M2D18 in RS822+ and RS1221+ in DSM 7.2**Other Models Notes**
- The Synology must have a PCIe x8 slot
- DSM must include /usr/syno/bin/synonvme
- DSM must include /usr/lib/libsynonvme.so.1**Should work for the following models but I have not tested them:**
Click here to see list
| Model | E10M20-T1 | M2D20 | M2D18 | M2D17 | Notes |
|-|-|-|-|-|-|
| FS2500 | yes | yes | yes | yes | |
| FS3410 | yes | yes | yes | yes | |
| FS6400 | yes | yes | yes | yes | |
| | | | | |
| HD6500 | yes | yes | yes | yes | |
| | | | | |
| SA4310 | yes | yes | yes | yes | E10M20-T1 and M2D20 already enabled in DSM |
| SA3610 | yes | yes | yes | yes | E10M20-T1 and M2D20 already enabled in DSM |
| SA6400 | yes | yes | yes | yes | E10M20-T1 and M2D20 already enabled in DSM |**Synology NAS models that this script may work on?**
Click here to see list
| Model | E10M20-T1 | M2D20 | M2D18 | M2D17 | Notes |
|-|-|-|-|-|-|
| DS1621xs+ | ??? | yes | ??? | ??? | |**Synology NAS models that this script won't work on:**
Click here to see list
| Model | E10M20-T1 | M2D20 | M2D18 | M2D17 | Notes |
|-|-|-|-|-|-|
| DS923+ | no | no | no | no | PCIe x2 slot only fits the E10G22-T1-Mini |
| DS723+ | no | no | no | no | PCIe x2 slot only fits the E10G22-T1-Mini |
| DS1522+ | no | no | no | no | PCIe x2 slot only fits the E10G22-T1-Mini |
| RS422+ | no | no | no | no | PCIe x2 slot only fits the E10G22-T1-Mini |
| | | | | |
| DS1817+ | no | no | no | no | Does not have /usr/syno/bin/synonvme |
| DS1517+ | no | no | no | no | Does not have /usr/syno/bin/synonvme |
| | | | | |
| RS1219+ | no | no | no | no | Does not have /usr/syno/bin/synonvme |
| RS818+ | no | no | no | no | Does not have /usr/syno/bin/synonvme |
| RS818RP+ | no | no | no | no | Does not have /usr/syno/bin/synonvme |
| RS3617xs | no | no | no | no | Does not have /usr/syno/bin/synonvme |
| RS18016xs+ | no | no | no | no | Does not have /usr/syno/bin/synonvme |
| | | | | |
| FS3017 | no | no | no | no | Does not have /usr/syno/bin/synonvme |
## How to run the script
### Download the script
1. Download the latest version _Source code (zip)_ from https://github.com/007revad/Synology_enable_M2_card/releases
2. Save the download zip file to a folder on the Synology.
- Do ***NOT*** save the script to a M.2 volume. After a DSM or Storage Manager update the M.2 volume won't be available until after the script has run.
3. Unzip the zip file.### Running the script via SSH
[How to enable SSH and login to DSM via SSH](https://kb.synology.com/en-global/DSM/tutorial/How_to_login_to_DSM_with_root_permission_via_SSH_Telnet)
**Note:** Replace /volume1/scripts/ with the path to where the script is located.
Run the script then reboot the Synology:
```YAML
sudo -s /volume1/scripts/syno_enable_m2_card.sh
```**Options:**
```YAML
-c, --check Check M.2 card status
-r, --restore Restore from backups to undo changes
-e, --email Disable colored text in output scheduler emails.
--autoupdate=AGE Auto update script (useful when script is scheduled)
AGE is how many days old a release must be before
auto-updating. AGE must be a number: 0 or greater
--model=CARD Automatically enable specified card model
Required if you want to schedule the script
CARD can be E10M20-T1, M2D20, M2D18 or M2D17
-h, --help Show this help message
-v, --version Show the script version
```### What about DSM updates?
After any DSM update you will need to run this script again.
### Schedule the script to run at shutdown
Or you can schedule Synology_enable_M2_card to run when the Synology shuts down, to avoid having to remember to run the script after a DSM update.
See How to schedule a script in Synology Task Scheduler
## Screenshots
Available options
Enabling all M.2 card models
Checking the current M.2 card settings
E10M20-T1 already enabled
All M.2 card models already enabled
Restoring the original M.2 card settings
DS1821+ with a E10M20-T1