Fix WD My Cloud 2T through UART TTL serial interface

Fixed. After copying missing files and re-installing firmware, my cloud 2T is back to normal.

Here are steps:

  1. bought UART TTL to USB cable, soldering cable to UART TTL serial interface (ports are shown in RS232 to USB - #8 by Bennor) There are videos on YouTube showing how to open up case. Pelase note: solder cables to the side as shown in https://community.wd.com/uploads/short-url/oeq8LfVKP0b2r6U2dd072yQYnVX.jpg, the other side don’t has signals.

  2. connect to USB port of computer, power on my cloud, using minicom (cutecom, or others) to show boot messages, e.g. using command line in my linux computer: “sudo minicom -D /dev/ttyUSB0 -b 115200 -8”. Somehow minicom does not get keyboard input, cutecom does.

  3. Fix boot problems. In my case, “/etc/inittab” is missing. On Linux computer, I downloaded product firmware file sq-040405-101-20161110.zip from official web site Software and Firmware Downloads | WD Support. Unzip, extract files in deb, and mount rootfs.img.

This is unzip fireware file

$ unzip sq-040405-101-20161110.zip

#This is extract files in deb
$ ar p sq-040405-101-20161110.deb data.tar.lzma |unlzma |tar -x -C ./WDMyCloudFirmware

#After extraction, there is rootfs.img file, mount it.
$ sudo mount WDMyCloudFirmware/CacheVolume/upgrade/rootfs.img /media/WDMyCloud

There is full file system

$ ls /media/WDMyCloud/
bin
boot
dev
etc
home
lib
lost+found
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var

  1. Move out hard drive in My Cloud 2T , connect hard drive to Linux computer, and mount its /dev/md0. Copying missing files from /media/WDMyCloud/ to /media/md0/. Also copy deb file (sq-040405-101-20161110.deb) to /dev/md0/, which will be used in re-install. Note: after install mdadm package, simple invoking “mount /dev/md0 /media/md0” should be able to mount it. You will be able to see same file structure as above.

In theory, you can interrupt booting sequence using “Ctrl-C” to enter barebox environment, and using tftp to transfer missing file from Linux computer. Therefore, don’t need plug/unplug hard drive to/from computer. But the “dhcp” command in barebox does not work on my WD My Cloud 2T, “devinfo eth0” show driver is “none”.

  1. Boot My Cloud, see booting messages in minicom (or cutecom, etc.) Hopefully, you are able to see login shell. Login as root, default password is “welc0me”.

  2. Now you can install official firmware using “dpkg -i sq-040405-101-20161110.deb”. Note, at first, mount /dev/sda4 to somewhere, e.g. /mnt/sda4, and rename original /CacheVolume to /CacheVolume.bak, then make a soft link /CacheVolume → /dev/sda4/cache/. Otherwise, you may encounter insufficient hard drive space during installation.

  3. Re-installation will reboot itself. After several minutes (~5-10 minutes), you will be able to get your My Cloud back. Note: during reboot, you may notice the LED light flashing white for long time. This is because My Cloud is checking hard drive data volume, which takes 333 seconds. This is from cutecom log:
    [ 71.718601] initcall init_module…
    /dev/sda4 contains a file system with errors, check forced.
    [ 405.785018] EXT4-fs (sda4): …

Now, I de-bricked My Cloud 2T using official firmware. All my backup photos and videos are untouched. No disk partition needed. Thanks to members Fox_exe and Bennor, I read many helpful posts from you.

1 Like