Sharing a usb drive to chromebook, raspberry pi, Android and Windows 10

I noticed that my new home router comes with a USB port. I figured that it was possible to connect an external hard-drive and use my router as a home file server. This means that I will be able to share files between my Chromebook, Raspberry Pi, Android tablet and Windows machines.


Here are the steps I used by device.

First steps
Plug in your usb drive and check the admin settings on your home hub.  I get there through the default address of my router which is 192.168.1.254 and yours is likely to be similar.  It is a good opportunity to change the admin password at this stage.

In Windows 10
Access to the shared network drive is as easy as opening the file explorer and typing the address into the address bar eg //192.168.1.254

Your files are now ready to be accessed on all your devices.


On a Chromebook.
It would be useful to access my PC files on my Chromebook as well.  I used File System for Windows.


Your shared files are now available in the ChromeOS File app.

On Raspberry Pi under Raspbian

1. You need to mount the network drive into the Raspbian file system.  To do this you need to have cifs-utils installed.  My Raspberry Pi 2 came with this pre-installed.  You can check whether it exists or not by running the following command: dpkg -s cifs-utils

2. Should you need it, you can install cifs using the command sudo apt-get install cifs-utils 

3. Next create a directory on your pi for where you want to mount the network drive: sudo mkdir -p /media/network/public

4. You need to edit the etc/fstab file in order to mount the network drive. You may need to give yourself permission to do this, so navigate to your /etc folder and type chown pi: fstab (where pi is your username).

5. Now open the etc/fstab file in your text editor and add the following single line:
   //192.168.1.254/usb1 /media/network/public cifs defaults,rw,username=pi,password=yourpassword,domain=domain 0 0

  Note that the first part is //IP ADDRESS OF ROUTER/directory name of network folder
 If your network folder has any spaces in the name, eg "My Documents", then replace the spaces with \040, eg My\040Documents.
 The second part is the path to the folder you created in part 3.
 You will need to put in your own username and password .

6. Now mount the drive using sudo mount -a


Android

There is no single file explorer app for Android, but many of them allow you to access network drives. I use ES file explorer which has a nice 'search' feature which will find your network drive in a few seconds. You can also pin your network drive to your desktop for easy access.

Accessing your network drive in Android

Windows Phone

I have downloaded Metro File Explorer to access my home network files on my Lumia 950.


That's all for now (I've run out of devices to try). It's time to backup to my file server and tidy up a bit.