Linux is my main system, but I prefer using NTFS for various use cases and in fact some use cases require something like NTFS.
The ST400 is the successor of several Zalman-rebranded iODD devices which bring a similar feature set. The main selling point: store your ISO files, VHDs and what not on an NTFS, FAT32 or exFAT drive and mount them in a way that makes the drive enclosure pose as an optical drive (CD/DVD …).
I had so far used the older Zalman-branded and iODD-branded drive enclosures with up to 2 TB hard drives and SSDs. I also have an iODD mini with 512 GB and now wanted to upgrade the ST400 from a 2 TB SSD to 4 TB.
So the first thing I did was generate the two partitions I wanted on the drive, then copy the data over from the old one using
rsync. Nothing spectacular here.
Then, after moving the new bigger SSD into the ST400 enclosure, the enclosure would report “No supported partition” with the 2.74.4 firmware. Dang.
Well, so I thought this could be remedied by converting to GPT from MBR. After all the size is known to create boot problems, because of start sectors being beyond the addressable range. Alas, I don’t want to boot from the drive itself (in its function as HDD/SSD). Anyway,
gdisk /dev/sdX will basically do the whole job swiftly, if you write (
w) the converted GPT it automatically creates from the MBR partition table. I did a backup of the first 2 MiB of the disk using
dd in order to recover from a possible botched conversion1. But all went well. A quick
partprobe /dev/sdX as superuser made the changes available.
I also had to do some shuffling of the partition sizes, since the iODD ST400 manual states:
At the first time, automatically finds mountable files on the largest partition (GPT / MBR, NTFS / exFAT / FAT32)
… and I needed to accommodate that. The outcome was this:
Number Start (sector) End (sector) Size Code Name 1 2048 4294967295 2.0 TiB 8300 Linux filesystem 2 4294967296 8001509375 1.7 TiB 8300 Linux filesystem
Notice something? For starters of course the device kept complaining about “No supported partition”, but also it says
Linux filesystem. What the heck? Well 8300 is Linux, I get that. But why did it pick that in the first place?
gdisk does that independent of the file system on the actual partition, so I neede
gdisk again to switch to type
0700 (Microsoft basic data). And lo and behold that did the trick. After syncing, disconnecting and reconnecting the firmware on the ST400 was able to recognize the larger partition and is able to list the files and folders on it as it did with the 2 TB drive.
PS: the only issue I had was
gparted erroring out on me with a mysterious error. Given the whole resizing process ran for 12 hours or so and I didn’t attend it throughout, it was quite annoying to see an error and no indication of where it failed. Fortunately going by the timestamp the relevant resizing should have been done and looking at the disk confirmed it. After checking the integrity of the partitions, I resized the remaining one and was finally done. Error was:
$ sudo gparted /dev/sdh GParted 1.4.0 configuration --enable-libparted-dmraid --enable-online-resize libparted 3.3 (gpartedbin:55435): glibmm-ERROR **: 20:22:47.643: unhandled exception (type std::exception) in signal handler: what: basic_string::_M_replace_aux Trace/breakpoint trap
- Side-note: this isn’t about backups, this is about speed. Copying huge amounts of data back and forth takes vast amounts of time and wears down the SSD, albeit slowly. [↩]