I recently purchased a TS-469L, and while I was waiting for my hard drives to arrive in the mail, decided to throw some old drives in to familiarize myself with the settings. I initialized the system with Raid 1 on the old drives, and played with various settings until I felt comfortable with how everything was set up. At that point, I wanted to change my Raid 1 setup to Raid 5, so that (once I had my new drives) I could just swap them out and upgrade the raid size. However, I couldn't remove the volumes that had been created - the web interface reported an error when it attempted to remove any of the Raid 1 volumes that I'd created. I searched online, and found a suggestion that I could ssh into the box and use fdisk to remove the partitions of the drives, which should set the box back to it's pre-initialized state. Unfortunately, since I'm new to QNAP I didn't realize that (at least on the 469L) /dev/sda is the DOM! So I removed the DOM partitions, in addition to the partitions on the installed drives. (I know - it was a pretty stupid mistake, but I blame unfamiliarity with the system. ) As you can guess, once I rebooted, I was stuck with what appeared to be an expensive brick! I searched online for various solutions, none of which worked fully - but after several hours of troubleshooting, I was able to cobble together a solution that I thought might be useful for others.
The first page I found was qnap's Firmware recovery page (links below). As instructed, I pulled my hard drives, built a bootable D*mn Small Linux thumbdrive, and attempted to boot from the USB drive as instructed. But for some reason, I never did get boot options when pressing F11 while booting - instead it took me to an EFI shell that seemed pretty limited in what I could do. After a bit of trial/error, I found that my usb drive wasn't bootable as expected, and I found better results using Pendrive's USB installer to make a bootable USB drive. (It may be unrelated, but I also found that by sticking the USB drive in the USB-3.0 slots, the NAS would opt to boot from USB automatically, and I didn't need to press F11 to select a boot drive.) Unfortunately, when I tried recovering the firmware with DSL I had two problems: first, the keyboard failed to initialize (despite working prior to booting.) Second, it would time out while autoconfiguring devices, giving me an error that the configuration failed and that I should check bios. At that point (without a working keyboard) I was pretty much stuck. Eventually, I decided to use a 32-bit Ubuntu Desktop Live image, which booted fine. I didn't have a mouse connected to the NAS, but I was able to hit Ctrl-Alt-F2 to get to a command prompt, which was all I needed. After verifying that the image would boot, I powered the unit back down, pulled the USB drive and also copied the full (factory test version 1.x.x) image onto the thumb drive. I then booted into Ubuntu again, and used "dd" to write the full image to /dev/sda, which recreated the partitions and made the device bootable again.
Code: Select all
dd if=/cdrom/F_TS-469_20140516-1.2.8.img of=/dev/sda
# (Note that if anyone else uses this approach, the source location of the factory image will vary, depending on your ISO.)
I then pulled the USB drive and rebooted, and was happy to see the NAS boot as expected. Even better, QFinder could now find it on the network! Unfortunately, my happiness was short-lived. As outlined in the firmware recovery page, the full image is a factory test image, which can't provision the external hard drives, and needs to be updated to offically released firmware. However, QFinder failed when attempting to update the firmware, and I ended up needing to manually update it myself. After much trial/error, I believe that the failure was due to the fact that /mnt/HDA_ROOT was unmounted (without any drives to mount) and there wasn't enough space on the DOM to copy the official firmware into place prior to upgrading. I resolved this by following a portion of the "Manually Updating Firmware" page, taking the following steps:
Code: Select all
# Copy official firmware onto USB thumb drive (root directory)
# Insert thumb drive into (already running) QNAP box
# Use dmesg and fdisk -l /dev/sd* to determine which device was my thumb drive - in my case /dev/sde1
rm -rf /mnt/update
ln -sf /mnt/HDA_ROOT/update /mnt/update
mount /dev/sde1 /mnt/HDA_ROOT/update
# **remove usb thumbdrive**
At some point during this process, my thumb drive got wiped somehow. Not sure what happened, but it wasn't a big deal, I just used putty's psftp to copy the official firmware to the already mounted USB thumb drive on the NAS, and proceeded with the steps above. My biggest mistake at this point was forgetting to remove the USB drive before rebooting. Because it had been wiped, but was still bootable, the NAS tried to boot from the thumb drive, and failed, making it look like the last firmware upgrade had bricked my NAS again. At that point, I went back to the first step and repeated the entire procedure - it wasn't until later that I realized that my NAS was fine and I cost myself another hour or so of troubleshooting because I left my thumb drive in when rebooting.
Anyway, I hope this writeup will help someone else out in the future. The recovery can be done relatively quickly if you know where to find all the necessary tools and images, and if you can figure out how to pull the various instructions together to resolve issues along the way. I've included links below to all the tools and images I used - anyone not using a 469L will obviously need firmware specific to their device, but this approach should help if you find yourself without a DOM partition.
Firmware Recovery Guide for x86-based NAS
Manually Updating Firmware
TS-469L Full Image (Version 1.x.x => Factory Test)
Official Updated Firmware
Pendrive Universal USB Installer
32-bit Ubuntu Desktop Live ISO