Prologue:
I purchased a 3TB My Book Live and a 6 TB My Book Live DUO about 6 months ago. The 3TB has worked fine but the 6TB has always had this problem: the disk drives never went to idle, the case was hot (I sometimes got thermal warnings), the status light would blink green even when the Ethernet cable was disconnected. I intended the 6TB (using it in RAID configuration) to be my main archival drive, and spinning the disks 24/7 is a good way to burn it out quickly. Between then and until the last few days I’ve been occupied with higher priority tasks and never had the time to track down the problem.
A few days ago I started Googling and discovered that countless other My Book Live owners face the same problem. Even worse, most of the discussion was on forums and most topics ended with no satisfactory solution. (I never did find a satisfactory solution that worked for me.) I found countless requests for WD to fix he problem, but I updated to the latest firmware and it isn’t fixed yet.
I’m a retired hardware/software engineer and my job was to design gear and to fix designs that weren’t right. I decided that finding the final solution for the constantantly spinning My Book Live was just the right problem for me, particularly since my DUO was on a course that would lead to its destruction in a mere few years rather than the decade or more I expect to get out of it.
So here is my solution:
1.) First you must enable SSH access to your My Book Live (or My Book Live DUO)
1a.) Enable SSH access (easy method): First log in to your control panel and look at the URL in your browser’s address window. Since many of us have changed the default name of our device this URL will vary. For purposes of example let’s say you’re on the main login page and your URL is http://my-book-live/UI/#. Change the “#” to “ssh” and access that address. You will get a page titled Secure Shell (SSH) Access. You will see a box titled SSH Access: check it and save the setting. Note the comment that the default user name is “root” and the default password is “welc0me” (that’s a zero character.) Save the setting and your SSH is enabled. (You should probably reboot.)
1b.) Eable SSH access (alternate method if the first method doesn’t work): Log in to your control panel and go to Settings → Utilities → Import/Export Current Configuration. Click “Export: Save Config File” and follow the dialog to save the file somewhere on your HDD. Use a good text editor (not Notepad) to make the following change. (Hint: Use Notepad++ available at http://notepad-plus-plus.org/)..)
Before proceeding, save a copy of this configuration file. It never hurts to be cautious. Now change the line that says ssh_enable=“disabled”, replace disabled with enabled, then save the file. Referring to the previous paragraph, click “Import: Choose File” and import the file you just edited. Reboot your device (Settings → Utilities → Reboot/Shutdown). If all has gone well when your device has rebooted you will now have SSH access enabled.
2.) Get an SSH client program:
Get an SSH client that runs on your computer. Many computer people recommend the freeware SSH client PuTTY: https://en.wikipedia.org/wiki/PuTTY which supports Windows and various other operating systems. Written and maintained by Simon Tatham, you can get the free download from the PuTTY official website: http://www.chiark.greenend.org.uk/~sgtatham/putty/
It does not require installation and executes from a command line. Jut type the program name and IP address of your device. Example: “putty 192.168.1.123” You’ll get a typical login sequence: “login as:” – enter “root”, then you’ll see “root@192.168.1.123’s password:” – enter “welc0me” (0 is the number zero, not the letter).
If successful you should see a prompt looking something like this: MY-BOOK-LIVE:~#
3.) Optional step - change your root password:
Root and welc0me is the default for all the WD My Book Live products. The Unix command to change your password is “passwd” and its use is obvious. You should consider doing this for security reasons.
4.) Optional step - let’s get familiar with our system:
Type the command “top” (which I believe means "table of processes). It’s very similar to the Windows Task Manager. It updates in real time and you will probably see that nasty mediacrawler program bouncing around right at the top of the list (the most active programs) hogging resources.
All the information on the Internet says if you just let it do its thing it will finish indexing after several hours and will no longer be a resource hog. I let mine go for 6 months and it never did quit hogging resources. I’ve got both the 3TB MBL and the 6TB MBL DUO. The 3TB worked fine but the DUO never got over mediacrawler hogging resources and slowing down my accesses. During that time my DUO’s activity light never quit blinking and the disks never went to idle. This device was on a short path to self destruction and something had to be done.
Side detour: There is an interesting article at http://community.wd.com/t5/My-Book-Live/Guide-Free-up-some-resources-on-hacked-MBL/m-p/561820/highlight/true#M21353 on starting and stopping mediacrawler. This is similar to starting and stopping Windows services. BUT… If you reboot after stopping mediacrawler it will automatically restart. Not a permanent solution!
5.) How I developed my solution (optional reading):
This may be a bit complex to many of you but don’t worry, when you reach the chase scene the fix is easy. I’ll even supply an “unfix” if you want to restore normal operation.
The first problem, where is this pesky mediacrawler program located? When you login as root you end up in your home directory, so first we go to the top level of the entire disk structure using the command “cd /” (change directory, about the same as DOS). Then we do a directory search of the entire HDD including subdirectories and filter that to show only files with the word “mediacrawler.” You can Google up some Unix lessons but here’s the command that I used:
ls -a -R | grep mediacrawler
It will take a while to scan your entire disk. I’ll admit I’m no Unix expert so when expertise fails intuition is a good place to start. I saw a lot of mediacrawler files in ./usr/local/mediacrawler so that looked like a good place to start. I changed directories and did a long form directory listing:
cd /usr/local/mediacrawler
ls -all
Yep, it looks like the right neighborhood but I don’t see any mediacrawler program. The “drwxr-xr-x” stuff is the permissions followed by file owner, size, date, name… I’ll get into permissions in a few paragraphs. One important thing is that permissions starting out with “d” are directories, those starting out with “-” are files. Note also the file names are color coded. Directories are blue, executable files are green. I see a executable named “mediacrawlerd” but I was pretty sure that wasn’t the right file because Unix executables ending with the letter “d” are usually demons (you’ll have to Google that, but it’s not what we are looking for).
I know our pesky file is probably hiding nearby so I changed to the bin (binary = executables) directory and did a long form listing:
cd bin
ls -all
And there it was!!!
-rwxr-xr-x 1 root root 405711 Mar 8 14:47 mediacrawler
6.) Unix file permissions (optional reading):
The file permissions are the first 10 characters in the long listing. As I said earlier, “d” is directory, “-” is file. The remainder can be broken up into three triads. They are the owner’s permissions, the group’s permissions and “all users” permissions. They follow the form “rwx” which stands for read, write, execute. If the letter is there the access is granted, if not granted there is a dash as a place holder.
Let’s decode what our media crawler’s permissions are:
- = it’s a file
rwx = owner permissions (that’s us, root) can read, write or execute the file
r-x = group permissions can read and execute, but cannot write the file
r-x = “all users” permissions can read and execute, but cannot write the file
Important note: These permissions are often written as octal numbers. For example rwx = 111 = 7, r-x = 101 = 5, etc. Expressed in this termininology the permissions of this file are 755.
7.) Now the plan:
We want to change this file so that nobody can execute it! We want to turn those x’s into dashes.
current permissions: rwx r-x r-x = 111 101 101 = 755
desired permissions: rw- r-- r-- = 110 100 100 = 644
For this we will use the Unix chmod command. http://www.computerhope.com/unix/uchmod.htm
8.) Cutting to the chase scene:
The command you want to turn off execute permissions for mediacrawler to type this in mediacrawler’s directory:
chmod 644 mediacrawler
Reboot your device and execute the “top” command and you will see that mediacrawler is gone from the process list. Log out and in a few minutes your NAS status LED will turn a nice pretty, solid blue.
10.) Summary:
To disable mediacrawler:
- SSH into your device
- cd /usr/local/mediacrawler/bin
- chmod 644 mediacrawler
- reboot
To re-enable mediacrawler:
- SSH into your device
- cd /usr/local/mediacrawler/bin
- chmod 755 mediacrawler
- reboot
11.) Even shorter summary:
To disable: SSH, type “chmod 644 /usr/local/mediacrawler/bin/mediacrawler”, reboot
To enable: SSH, type “chmod 755 /usr/local/mediacrawler/bin/mediacrawler”, reboot
Epilogue:
With mediacrawler disabled my HDDs no longer spin 24/7, the blinking green LED has been replaced by a nice blue LED when I’m not using my unit, and my drive data transfer speed has increased by a noticeable amount.