Unbrick MyCloud Once and For All - Lets Make A Clear Tutorial for Everyone!

Bennor, you are awesome! Thanks for replying so quickly! I understand it can be complex and I thank you for shedding light on the fact that different versions of linux can be used and code may be different - I didnt know that. Would you be willing to help guide me through the procedure? I was using the materials and instructions from Fox_Eve’s google drive. Perhaps you could link me to what exact firmware to use which instructions to use and which Linux boot cd to use? Again i have the 6TB Red WD drive in the 1st generation my cloud single bay. I would greatly appreciate your help. Do you think i may have a bad drive if i get read input/output errors? Sometimes it happens when glashing and sometimes it doesnt. I completely wiped the drive and ran chkdisk with no errors or bad sectors reported so im at a loss.

Also, i have no problem reading any tutorial and taking my time - i want to make sure i do it right. And id this can help anyone else id love to share it.

There are numerous free Linux distro’s available. I wound up using Ubuntu but there are others that might be better or easier to use.


That link (at the bottom) has further links on how to create boot DVD/USB media. One can either boot their PC with that media or actually install Ubuntu to a portion of their hard drive (or other location). I ended up installing Ubuntu to a portion of a Windows 10 boot drive but not everyone will want to do that.

The main problem I’ve found with all of the various instructions is one ends up having to create their own custom set of directions as they work through the process since commands may be different across different versions of Linux. Here are a couple of examples that show why one may end up having a custom set of directions and why a generic set (while useful as a guidline) may not work for everyone.

For the recent older 1TB Seagate Barracuda drive I unbricked earlier this week, I used the Fox_exe 1st gen directions: https://drive.google.com/file/d/0B_6OlQ_H0PxVbzZac0plbkZKeGM/view

I ran into problems with the hard drive I was using throwing superblock and GPT errors for some reason (I’ve had this problem with other drives I’ve unbricked for a first gen My Cloud). So I had to (if I remember right) run gdisk from the Ubuntu terminal command line, then select r, then f, then w which wrote the fixes to the drive. Then I could start with the Fox_exe directions. I restarted the hard drive drive after doing the parted steps. I leave out sudo mdadm -A /dev/md0 /dev/sdb1 /dev/sdb2" on step 8 otherwise I get errors when attempting to do “sudo mdadm --create /dev/md0 --level=1 --metadata=0.9 --raid-devices=2 /dev/sdb1 /dev/sdb2”.

If I use the v4.01.02-417 set of img files I get an out of space error when when running the “sudo dd if=kernel.img of=/dev/sdb5” command. So what I’ve been doing is using the v3.04.01-230 set of img files, then downloading the actual v4.01.02-417 WD firmware from WD and updating it at a later point, then download the latest firmware from WD and update from v4.01.02-417 to v04.05.00-334 WD firmware.

After reattaching the My Cloud plate/motherboard to the unbricked hard drive and booting it, it took a while (10 or so minutes) for the front LED to change a green or yellow to red. Happens every time, LED turns red rather than blue. I then open up a web browser and access the My cloud Dashboard (http://wdmycloud or http://wdmycloud.local) and issue a Quick Restore from the Dashboard > Settings > Utilities page and that seems to fix the content mount issue causing the red LED at boot.

After rebooting and getting a blue front LED I then upgrade to the latest firmware by first upgrading from v3.04.01-230 to v4.01.02-417 then to the latest firmware v04.05.00-334. Don’t know if one can jump from the v3.x firmware to the very latest version. Haven’t tried it. May next time I do an unbrick.

Others may not have my issues or need to do the various things I do. For me the above general steps seems to work most of the time.

You truly are a great person! Thank you so much for taking the time to help me out. I will follow your directions to a T and post back here to let you know how it goes. I also had the out of space error when writing to the sda5 partition! Thats when I started to think maybe the drive had bad sectors in that location or perhaps I was using the wrong firmware which required more space than what I had manually created the gpt table for. I was going to try to increase the size of the sda5 partition and move the numbers for the other partitions up by a few MB but then I didnt know if I did that if the mycloud itself wouldnt recognize files if they are in partitions with different starting and ending addresses.

For your directions - when you say you start with v3.04.01-230 set then download and upgrade to the latest firmware later - are you saying you unbrick the drive with v3 then after you get access via the mycloud dashboard you load the new firmware and have the device flash it for you?

Also, just in case I am missing a simple step - when you say to restart the hard drive, are you unplugging it and plugging it back in or are you restarting the entire computer? I have been restarting the entire computer to reboot from ubuntu on disk, assuming the entire system had to be restarted and not just “hot swapping” the hard drive via removing the power connector.

Again, I cannot thank you enough for being so generous with your time and giving me a hand! I seriously spend about 20 hours in total over the past week trying to flash this drive back to life!

Before I begin with any tutorial (Fox’s) is there any disk maintenance I should do to the drive or is it all pretty much taken care of with the tutorial? To be honest, I got frustrated at one point and wrote zeros to the entire drive so hopefully I didnt wipe something I needed for this setup. All my info was backed up before so no worries there.

EDIT: I followed all of your instructions and methods as well as Fox’s guide. The only problem I ran into is when I tried to “sudo touch /mnt/hdd/etc/.fresh_install”. I got a message stating touch: cannot touch. “Structure needs cleaning”. I have no idea what that means or what to do for that. I continued to the next step with the umount procedure. I have been able to do the touch procedure before and it worked fine, so I don’t know what is different this time around. I did install ubuntu on a spare hard drive and used a different computer so I dont know if that did anything or not. I have the drive plugged in now and will update in about 15 minutes to tell you whats going on. In the meantime, when transferring files to the sda5 and sda6 is it normal to show 2048+0 records in/out (100MB, 95MB)? I dont know what the 100 and 95 is. It seems to me like out of 100MB only 95MB copied? For sda6 and 7 it shows (1.0MB, 1.0MB). For the md0 it shows (2.0GB, 1.9GiB).

EDIT: UPDATE: no dice. The drive has been powered on and the ethernet plugged in for 20 minutes and still no blue light. In addition I cannot access it via the dashboard. Only 1 led for the lan is lit (the top). It is not showing it is getting a link. Any ideas?

Correct. I unbrick with the v3.x. Then use the firmware from the My Cloud site and manually update the firmeware through the My Cloud Dashboard interface. Not sure if you can jump from the intial v3.x to the very latest v4.x firmware as I normally do a intermediate early v4.x firmware first. See my post above where I explain this.

normally I just pull the power on the external drive adapter the My Cloud hard drive is connected to when performing an unbrick. If one is using a Linux boot disc/USB flash drive they may need to run the apt-get update + mdadm install command again each time they reboot their computer.

It does take a while, not sure how long exactly for the initial boot post unbrick. As indicated before though, one may have to perform the unbrick procedure more than once to get it to stick. It’s possible one may have missed a step.

I wrote a script to automate the Gen1 cloning, based on fox_exe’s instructions and image:

I tested that script on a few different disks.

Oooh missed that one. :slight_smile: What I’ve done is create a set of img files with the latest My Cloud firmware from the My Cloud partition to a Share on the My Cloud:

Create backups of My Cloud partitions using SSH while in a My Cloud Share:
sudo dd if=/dev/sda5 of=kernel.img
sudo dd if=/dev/sda7 of=config.img
sudo dd if=/dev/md0 of=rootfs.img

I copy those three files to a PC that has Ubuntu installed on it. Then use a portion of the Fox_exe script to write those files back to the My Cloud hard drive attached to that Ubuntu PC when either using a new drive or when futzing around in the firmware (currently struggling with trying to get Clean Debian and Open Media Vault working) and bricking the current drive. Obviously this process only works if the drive is already partitioned correctly.

sudo mdadm --stop /dev/md*
sudo mdadm --create /dev/md0 --level=1 --metadata=0.9 --raid-devices=2 /dev/sdb1 /dev/sdb2
sudo watch cat /proc/mdstat 
Wait for 100%. Then - [ctrl] + [c] for close.
sudo dd if=kernel.img of=/dev/sdb5
sudo dd if=kernel.img of=/dev/sdb6
sudo dd if=config.img of=/dev/sdb7
sudo dd if=config.img of=/dev/sdb8
sudo dd if=rootfs.img of=/dev/md0

Thank you for your script and for joining the discussion! I have a quick question though - i followed your instructions and everything goes fine, but when I download the firmware file in the /mnt folder then select “y” when prompted in you script it gives an error about not accessing the file.

I am running linux rescue cd. Before I download the firmware I go to the firefox preferences and select the download to go to computer/mnt. is that the correct directory? To be honest I dont fully understand linux filesystems.

EDIT: I ran your script first, then downloaded the firmware to the default Downloads folder, then used cp ~/Downloads/original_v04.01.02-417.tar.gz /mnt and it then mounted correctly. I am assuming your script had to create a correct mnt directory for me first.

I did get a few errors with the script. It first started with mdadm: unexpected failure opening /dev/md0 then when copying rootfs it said dd: failed to open 'dev/md0: no such device or address.

When the script said preparing for first boot it shows “mount: /mnt/hdd: /dev/md0 is not a valid block device”. “touch : cannot touch ‘/mnt/hdd/etc/.fresh_install’: no such file or directory”. Then “umount: /mnt/hdd: not mounted”. and then finally “umount: /mnt: target is busy”.

Then it says its finished and to connect to mycloud pcb. Any ideas?

Here is the text from the terminal window:

[root@sysresccd ~]# chmod 777 clone_wd
[root@sysresccd ~]# ./clone_wd a
This will create a WD MyCloud clone HDD on /dev/sda

Are you sure (y/n)? y
Creating clone on /dev/sda

the drive should start with no partitions
/dev/sda contains the current partitions:
Model: ATA WDC WD60EFRX-68L (scsi)
Disk /dev/sda: 5723167MiB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:

Number Start End Size File system Name Flags

Creating new partitions
Warning: The existing disk label on /dev/sda will be destroyed and all data on
this disk will be lost. Do you want to continue?
Yes/No? yes
Information: You may need to update /etc/fstab.

Information: You may need to update /etc/fstab.

Information: You may need to update /etc/fstab.

Information: You may need to update /etc/fstab.

Information: You may need to update /etc/fstab.

Information: You may need to update /etc/fstab.

Information: You may need to update /etc/fstab.

Information: You may need to update /etc/fstab.

Information: You may need to update /etc/fstab.

Configuring partitions 1-4
Information: You may need to update /etc/fstab.

Information: You may need to update /etc/fstab.

Creating RAID array on clone
mdadm: /dev/md does not appear to be an md device
mdadm: stopped /dev/md0
mdadm: /dev/sda1 appears to be part of a raid array:
level=raid1 devices=2 ctime=Fri May 24 14:24:12 2019
mdadm: /dev/sda2 appears to be part of a raid array:
level=raid1 devices=2 ctime=Fri May 24 14:24:12 2019
Continue creating array? y
mdadm: /dev/md0 is already in use.
Setting up swap and data partitions
mkswap: /dev/sda3: warning: wiping old swap signature.
Setting up swapspace version 1, size = 512 MiB (536866816 bytes)
no label, UUID=a1a61611-fb89-4863-abd8-2d578ba6de70
mke2fs 1.45.0 (6-Mar-2019)
/dev/sda4 contains a ext4 file system
last mounted on Fri May 24 14:24:48 2019
Proceed anyway? (y,N) y
Creating filesystem with 1463894528 4k blocks and 182988800 inodes
Filesystem UUID: 7b953e3b-9518-404b-b3fb-c3db7a5caf36
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848, 512000000, 550731776, 644972544

Allocating group tables: done
Writing inode tables: done
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information: done

Partition creation completed
partitions are created as follows:

Model: ATA WDC WD60EFRX-68L (scsi)
Disk /dev/sda: 5723167MiB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:

Number Start End Size File system Name Flags
3 16.0MiB 528MiB 512MiB linux-swap(v1)
1 528MiB 2576MiB 2048MiB raid
2 2576MiB 4624MiB 2048MiB raid
5 4624MiB 4724MiB 100MiB
6 4724MiB 4824MiB 100MiB
7 4824MiB 4826MiB 2.00MiB
8 4826MiB 4828MiB 2.00MiB
4 4828MiB 5723166MiB 5718338MiB ext4

Mounting data partition for working area
/mnt created

Please copy original_v04.01.02-417.tar.gz to /mnt

This is where I opened another terminal window and ran the ~/Downloads/original_v04.02.01-417.tar.gz command

press ‘y’ when you have done this y
Extracting images

Copying images to partitions 5-8
196608+0 records in
196608+0 records out
100663296 bytes (101 MB, 96 MiB) copied, 7.40455 s, 13.6 MB/s
196608+0 records in
196608+0 records out
100663296 bytes (101 MB, 96 MiB) copied, 2.47199 s, 40.7 MB/s
2048+0 records in
2048+0 records out
1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.0898336 s, 11.7 MB/s
2048+0 records in
2048+0 records out
1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.0529469 s, 19.8 MB/s

Starting RAID array
mdadm: stopped /dev/md0
mdadm: unexpected failure opening /dev/md0
Copying rootfs
this could take a while…
dd: failed to open ‘/dev/md0’: No such device or address

Preparing for first boot
mount: /mnt/hdd: /dev/md0 is not a valid block device.
touch: cannot touch ‘/mnt/hdd/etc/.fresh_install’: No such file or directory
umount: /mnt/hdd: not mounted.
umount: /mnt: target is busy.


now connect HDD to MyCloud PCB
connect ethernet and apply power
should get white light, followed by blue light after 5-10 minutes
do a 40-second reset when the LED turns blue
wait for blue LED, then access Dashboard
upgrade to whatever firmware you want
do another 40-second reset when LED turns blue
configure device as required

UPDATE: after the last unsuccessful flash using the script provided - I used the terminal to manually extract an earlier firmware “original_v03.04.01-230.tar.gz” to the sda partitions. I had to manually set raid 1 on and raid 2 on. I restarted the computer then did the mdadm --stop /dev/md* command. I skipped the mdadm -A /dev/md0 /dev/sda1 /dev/sda2 command and continued. I was able to do step 13 manually by closing the terminal window after transferring the kernel.img, config.img, and rootfs.img and opening an new terminal window and doing the mkdir /mnt/hdd and mount /dev/md0 /mnt/hdd and the touch and umount commands. This time it actually worked.

I plugged the drive in, and although it has been a half an hour there is no blue light. The progress made however is that both the mycloud LAN LED’s are now both on and both GREEN!

I think this is progress because now the LAN is both illuminated meaning it has a connection and been assigned an address. I am not able to access the device over lan howerver.

At least I feel this is starting to show some hope. Perhaps I need to just let it sit for a few hours before turning blue? Or should I attempt a soft 4 sec reset? I do not want to unplug it directly to do a 40 sec reset unless someone advises me to.

Thank you all for your help!

One suggestion. Per the directions cpt_paranoia posted in the Clone NAS hard drive to SSD thread, make sure the drive you are attempting to use does not have any partitions. And also run a mdadm --stop /dev/md* as well before you run that script or before removing partitions on the drive.

Sometimes what will happen if one doesn’t remove the existing My Cloud partitions, in particular the two RAID partitions (md0) is when one attaches that drive to their computer Linux may automatically mount the two RAID partitions as md127 and possibly md126 (at least that’s what I’ve seen it do numerous times on my end).

Hey Bennor! I did exactly what you said (stopped dev/md0 and then ran gdisk then reboot computer) but the script still throws those errors I posted in my earlier threat. I manually did everything without using the script and got no errors with my code, but the darn thing will still not turn blue. The light is solid yellow and now I only have a green LED on the upper LAN port. Is it possible my mycloud motherboard is bad? Or perhaps I am grossly neglecting something obvious? Perhaps with all of your experience maybe you wouldn’t mind testing my drive in one of your enclosures and seeing if you can get it to work?

UPDATE: I was going to reflash the drive one more time because after an hour or so the light was still yellow. But before that, I thought to myself I would just power cycle the drive. I unplugged and plugged the power back in and heard the drive start up and start seeking. The light then turned red. I could access the dashboard FINALLY!!! I did as you had said and immediately went to do a Quick Restore. The dashboard still is showing the drive doing a restore and the light is yellow, but I am hearing clicking and data sounds - so that is good (i think). I will leave it plugged in overnight and report back tomorrow if it actually finished the quick restore!! Thanks you guys!

UPDATE 2: The drive finally did its restore and I have full access! Updating to the v04.01.02-417 firmware now then will update to latest release! I will let you know how it goes!

UPDATE 3: I am getting errors when trying to update the firmware. The device will not allow me to download the latest firmware from the dashboard nor will it let me upload a file from my desktop. Any ideas?

What is the specific update error for both cases?

Perhaps try another shutdown and reboot of the My Cloud. Make sure you don’t have a static IP address and DNS address configured in the My Cloud Dashboard. Also make sure to set the correct time and time zone in the My Cloud Dashboard Settings.

Hey Bennor! I was getting all sorts of errors, from LAN to LED to not having network connectivity. It was late and I didnt write them all down. I let the drive sit for about 20 minutes then tried to access the dashboard again and it seemed smoother and had no errors. I did a reboot on the drive through the dashboard just to make sure it would startup again without errors. When I booted it again there were no errors when navigating through the dashboard tabs. I wanted to let it sit overnight before trying to do a firmware upgrade - i was thinking maybe it needed some time to process some background files. Oh, I almost forgot to mention - I was able to view the drive on my LAN computers and was able to store and access two test files I put on it.

This morning I woke up to a solid red light. Tried to unplug and replug the power - I hear the drive fast spin and then you hear a noticeable CLICK and the drive turns red - you no longer hear the hard drive.

I have tried both a 4 sec and 40 sec reset to no avail.!

Here is what the dashboard first showed when I unbricked the drive - you can see it says 1.5TB:

Then after I ran the Quick Restore and tried to update the firmware but failed due to errors (there were errors when just trying to click through dashboard tabs - one of which wouldn’t let me register users). I remember one particular error was saying to check network connectivity but both lights on LAN were flashing on the mycloud and I was already accessing the mycloud via a computer on the network.

So I decided to use a spare router I had lying around to ONLY connect my laptop and the mycloud to it. I did this in the attempt to flash a firmware to the drive without the drive knowing (via internet connectivity) there was a more recent firmware update. Like you said, you didn’t know if you could go directly from the v03 firmware all the way to the newest. I was going to go to V4 first firmware then update to the one you had mentioned and then update to the newest.

As I said before though now I am at a solid red light and neither the 4 sec or 40 second reset are doing anything to the drive - the light on the drive does not flash to indicate it is recognizing the reset button being held down for either 4 or 40 seconds and therefore the drive does nothing. Simply power cycling the drive results in the same red light.

If you are hearing a noticeable clicking sound that may indicate the drive itself may be bad. How old is the drive?

One option is to connect it to a Windows PC, format it for Windows and then use a drive information program to see if there are SMART errors (or physical media errors) with the drive.

I had run a chkdisk with windows prior to doing the unbrick peocedure and the drive passed without errors or bad sectors. I’m at a loss. Any ideas on why the drive wouldnt take new firmware? Possibly the drive is having intermittent failures? The mycloud is only 3 years old and has had little use. I really only usedbit to store some desktop files that I wanted to save as a backup. Rarely ever access the drive outside my network to retrieve files. The drive has always been in a well vented area.

mdadm --stop /dev/md*
mdadm -A /dev/md0 /dev/sdb1 /dev/sdb2
mdadm --create /dev/md0 --level=1 --metadata=0.9 --raid-devices=2 /dev/sdb1 /dev/sdb2
# Type “watch cat /proc/mdstat” and wait 100%. Then - [ctrl] + [c] for close.

  1. Use data partition as download folder:
    mount -t ext4 /dev/sdb4 /mnt
    cd /mnt

  2. Download one of arhive’s to /mnt folder:

  3. Extract by console:
    tar xvfz original_v3.04.01-230.tar.gz or 4v

  4. Ok. Upload backup images to WD’s hdd:
    dd if=kernel.img of=/dev/sdb5
    dd if=kernel.img of=/dev/sdb6
    dd if=config.img of=/dev/sdb7
    dd if=config.img of=/dev/sdb8
    dd if=rootfs.img of=/dev/md0

  5. Tell device to Fresh install (Fix for “0 MB usage” in webgui)
    mkdir /mnt/hdd
    mount /dev/md0 /mnt/hdd
    touch /mnt/hdd/etc/.fresh_install
    umount /mnt/hdd

Be patient. It takes about 5 mins before you can upgrade the firmware after boot. when upgrading from v3 to 4 or latest. wget the latest firmware then push it manually from webgui