Expanding Synology Volume Beyond 16TB
Background
Earlier in the year I wrote about upgrading from my old DS411j to a new DS420j, and how simple the upgrade process was. But I knew there would be trouble ahead, as Synology doesn’t provide a way to upgrade volumes created on its 32bit systems past 16TB.
Last weekend one of my HGST 4TB drives failed, and I was already seeing warnings about running out of space. It was time for some newer and bigger spindles. So I ordered a 4 pack of 8TB Seagate Iron Wolf Pro.
Each new drive took about 9 hours to resilver, so it was a couple of days before I had my RAID5 array fully working on the new drives. With the last one in place the storage pool and volume were automatically expanded to the maximum size of 16TB, but that was leaving over 5TB unusable. Not an immediate problem, but one that would eventually bite.
Workaround
!WARNING!
The stuff that follows isn’t supported by Synology, and if it goes wrong could destroy your data. Don’t consider doing this unless you are 100% confident in your backups.
!WARNING!
I’ll detail below the process that I gave up on. Thankfully I found a workaround detailed in a blog post – Expand Synology volume beyond 16TB; but since those details apply to different Synology types to my DS420j here’s what I did…
I already had Entware opkg installed, using these instructions. What follows I ran as root in an SSH session, but you can always prefix commands with sudo. It might also be advisable to run from a screen session in case your SSH link gets cut.
The crucial tool is resize2fs, but DSM’s version is too old, so opkg is needed to get a newer version:
opkg install resize2fs
I didn’t use a pinned version, and the one I got was 1.45.6
The RAID volume needs to be unmounted to be resized, but the Entware tools are on that volume, so first they need to be copied elsewhere:
umount /volume1/@entware-ng/opt cp -R /volume1/@entware-ng/opt/* /opt/
Then shut down services and unmount the RAID volume:
syno_poweroff_task -d
/volume1 will now be unmounted, and it’s possible to check the filesystem, which is mandatory before resizing.
e2fsck -f /dev/md2
That took about an hour on my filesystem, and I was glad for the suggestion to answer ‘a’ to the first y/n question as there were hundreds of them.
Next up is the command to convert the filesystem from 32bit to 64bit:
resize2fs -b /dev/md2
This took almost 4 hours for my system, with the CPU pegged at 100% pretty much throughout. It’s possible that adding a ‘p’ flag would have helped a little by showing progress.
At this point enough is done for DSM to pick up the rest. So:
reboot
and log back in. Then go to Storage Manager > Storage Pool > Action > Resize. That then kicks off a process that validates the extra array space, which for my system ran for a few hours.
And then I had a 21.82TB volume :)
The longer way
If I was less impatient I’d have copied all my data over to the old spindles (plus a spare to replace the failed drive) on my old NAS, then created a new volume on the new NAS, then copied all the data back. That would have taken days, possibly weeks, and would have carried a bunch of its own risks.
Doh!
I stupidly thought I could save a bunch of time by putting the old spindles into my old NAS and just restore the RAID5 set. But it doesn’t work like that. Drives 1,2,3 had been pulled from the array at different times, and so when they were brought back together they were inconsistent.
Filed under: howto, technology | 1 Comment
Tags: 16TB, DS411J, DS420j, expand, NAS, resize, resize2fs, storage pool, Synology, volume
One Response to “Expanding Synology Volume Beyond 16TB”
Leave a Reply Cancel reply
This site uses Akismet to reduce spam. Learn how your comment data is processed.
Subscribe
Search
Raspberry Pi Downloads
Top Posts
- Milo cancer diary part 4 - second setback
- Making an image file from an SD card on Windows
- TV Cable Tidy
- Getting more from a British Gas UP2 Timer
- Milo cancer diary part 1 - diagnosis and initial treatment
- Milo cancer diary part 2 - first setback
- Review - GL.iNet GL-MT1300 Travel Router
- Fixing flow on Aqualisa Midas Plus shower mixer
- Howto - Factory Reset iLO 4 on HP Microserver Gen8
- May 2020
-
Recent Posts
Recent Comments
andyjpb on Milo cancer diary part 3… J on Milo cancer diary part 2… ChrisB on Reversion marketing milam8m on Milo cancer diary part 1… andyjpb on Milo cancer diary part 1… Pinboard.in bookmarks
- Judge Decides Against Internet Archive
- 8 reasons why DARE failed
- Fix for dpkg errors when running apt-get in Docker BuildX multiplatform
- Kashyap Patel, MD, Sees Link Between COVID-19 and Cancer Progression, Calls for More Biomarker Testing
- Resetting the Python logger level
- 50 years of silence
- The Waluigi Effect (mega-post)
- The CTO Function
- Tinker V: Single-board RISC-V computer | Hacker News
- Leading, Managing People, Writing Code
Twitter Updates
- @alexellisuk blog.thestateofme.com/2015/11/08/tv-… 3 hours ago
- RT @matteastwood: RIP to @intel co-founder and former CEO/COB Gordon Moore who passed away today at the age of 94. One of his enduring lega… 8 hours ago
- RT @rossjanderson: One protocol to rule them all? The DMA's interoperable messaging mandate could damage end-to-end encryption more than ei… 16 hours ago
- RT @monkchips: real talk: being gen X kind of sucks right now because our boomer parents are all dying, sick, and, or, suffering from demen… 18 hours ago
- RT @deadprogram: What is Wasm-GC? Learning at @wasm_io #wasm #wasmio23 https://t.co/gzJrmihw0O 18 hours ago
Blogroll
- 451 CAOS Theory
- Adam Bosworth’s Weblog
- Andrew McAfee
- Behavioural Investing
- CapitalSCF
- Carpe Visum
- causticTech
- Charles Stross
- confused of calcutta
- Cory Doctorow
- Craig Murray
- Dan Creswell’s Weblog
- Dark Reading
- Dilbert Blog
- DJW
- Doc Searls
- Don Box’s Spoutlet
- Dopplr
- Eben Moglen
- Enhyper
- Financial Cryptography
- Fred Destin
- Freedom to Tinker
- Graham Glass, etc.
- Greg Matter
- Hugh Grant
- Internet Alchemy
- Invisible Things
- James Strachan’s Weblog
- John Merrells
- Jon Udel
- Justice League
- Kim Cameron
- Lambda the Ultimate – Programming Languages Weblog
- Light Blue Touchpaper
- Loosely Coupled weblog
- Luke Hutteman’s Weblog
- Marc Andreeson
- Nick Selby
- ongoing
- Otaku, Cedric’s weblog
- Park Paradigm
- Paul Graham
- Phil Becker
- Pi4Tech
- PJKtech
- Radovan Janecek: Nothing Impersonal
- rants
- Richard Monson-Haefel
- SAAS
- Schneier on Security
- Service Oriented Enterprise
- Simon Phipps’s Blog
- techno.blog(“Dion”)
- The BileBlog
- THE GRID BLOG
- Tim Oren’s Due Diligence
- timbl’s blog
- virtualization.info
- WebMink
- WebServices.org
- XKCD
Categories
Some conversation about this (or more generally about running a big NAS) on a LinkedIn thread