I'm using GLaDOS kernel which includes the NFS modules (and I'm using the Codename Android ICS 4.0.3 ROM) on a GSM Galaxy Nexus. I'm trying to connect to my NFSv4 server (Ubuntu 11.10). My other clients (e.g., Ubuntu 11.04 laptop) can connect over the same LAN network, but my Galaxy Nexus will not connect.
In the Android terminal (BTEP), in su mode, I'm entering these commands:
insmod sunrpc.ko
insmod lockd.ko
insmod nfs.ko
lsmod shows the modules loaded:
nfs 104232 0 - Live 0xbf036000
lockd 42336 1 nfs, Live 0xbf028000
sunrpc 150792 3 nfs,lockd, Live 0xbf000000
My mount command (In the terminal, in su mode) is:
mount -t nfs4 nfserver:/shared1 /sdcard/nfs/shared1
The error is "no such device". (See edit below - I have a new error now.) It returns immediately, so I'm fairly certain this is entirely a client side error. It is probably not even trying to contact the server.
Usually the "no such device" error means that the nfs kernel module is not loaded. However, in my case, it is indeed loaded, as shown above. Can anyone help?
EDIT: so now I believe that the BusyBox mount command does not support NFSv4. Unfortunately, my server only supports NFSv4. So I borrowed a NAS device which supports NFS v3 and set that up.
Now the error is "invalid argument". In fact, the BusyBox mount command gives the same "invalid argument" error on all mounts using either "-t nfs" or "-t cifs". That leads me to conclude (based on quote below) that there is a version mismatch between BusyBox and my Linux kernel.
- busybox: 1.19.3-Stericson
- linux: 3.0.8-GLaDOS-V1-15
My conclusion is supported by this link where he says:
This is how I interpret it.
kernel is newer - recompile mount command (i.e. busybox etc)
Make sure that it uses the headers from the kernel it will run with.
Finally, trying a regular NFS v3 server (the NAS device) with Mount Manager does not succeed with either NFS or CIFS. But AndSMB will connect to the NAS using CIFS.