3 votos

No se puede hacer que el cliente NFS de Android 4.0 se conecte a mi servidor NFSv4 de Ubuntu: "no such device"

Estoy usando GLaDOS kernel que incluye los módulos NFS (y estoy usando el Codename Android ICS 4.0.3 ROM) en un Galaxy Nexus GSM. Estoy tratando de conectarme a mi servidor NFSv4 (Ubuntu 11.10). Mis otros clientes (por ejemplo, mi portátil Ubuntu 11.04) pueden conectarse a través de la misma red LAN, pero mi Galaxy Nexus no puede conectarse.

En la terminal de Android (BTEP), en modo su, estoy ingresando estos comandos:

insmod sunrpc.ko
insmod lockd.ko
insmod nfs.ko

lsmod muestra los módulos cargados:

nfs 104232 0 - En vivo 0xbf036000
lockd 42336 1 nfs, En vivo 0xbf028000
sunrpc 150792 3 nfs,lockd, En vivo 0xbf000000

Mi comando de montaje (En la terminal, en modo su) es:

mount -t nfs4 nfserver:/shared1 /sdcard/nfs/shared1

El error es "ningún dispositivo encontrado". (Ver edición a continuación - Ahora tengo un nuevo error.) Regresa inmediatamente, por lo que estoy bastante seguro de que este es un error completamente en el lado del cliente. Probablemente ni siquiera está intentando contactar al servidor.

Normalmente el error "ningún dispositivo encontrado" significa que el módulo del kernel nfs no está cargado. Sin embargo, en mi caso, está cargado, como se muestra arriba. ¿Alguien puede ayudar?

EDICIÓN: ahora creo que el comando de montaje de BusyBox no admite NFSv4. Desafortunadamente, mi servidor solo admite NFSv4. Por lo tanto, tomé prestado un dispositivo NAS que admite NFS v3 y lo configuré.

Ahora el error es "argumento no válido". De hecho, el comando de montaje de BusyBox da el mismo error de "argumento no válido" en todos los montajes usando "-t nfs" o "-t cifs". Eso me lleva a concluir (basado en la cita a continuación) que hay una discrepancia de versión entre BusyBox y mi kernel de Linux.

  • busybox: 1.19.3-Stericson
  • linux: 3.0.8-GLaDOS-V1-15

Mi conclusión es respaldada por este enlace donde él dice:

Esto es cómo lo interpreto.
el kernel es más nuevo: vuelve a compilar el comando de montaje (es decir, busybox, etc.)
Asegúrate de que utiliza los encabezados del kernel con el que se ejecutará.

Finalmente, intentar con un servidor NFS v3 regular (el dispositivo NAS) con Mount Manager no logra éxito con NFS ni CIFS. Pero AndSMB se conectará al NAS usando CIFS.

1voto

mercutio Puntos 5828

Puedo decirte que no es el comando mount, es el módulo nfs.ko que probablemente no soporta NFS4.

Cuando llamas a mount -t nfs ... el comando mount buscará el tipo de sistema de archivos nfs. Si no lo encuentra, entonces obtendrás el error no such device. Si lo encuentra, básicamente entrega el "mount" al módulo.

Para el problema del gestor de montaje, si no tienes un módulo cifs, cifs no funcionará con el gestor de montaje. AndSMB utiliza su propia implementación de cifs/samba, y eso está bien, pero para lograr algo que permita que cualquier aplicación acceda a la parte montada, tiene que ser el módulo cifs.ko. Tengo que investigar más sobre el problema de nfs que aún tienes.

0voto

hmagoo Puntos 11

Quizás no sea lo que quieres pero hago esto

busybox mount -o rw,intr,soft,nolock,nfsvers=2 192.168.0.7:/mnt/HD/HD_a2 /mnt/sdcard/nfs

0voto

Robert Puntos 1

Tienes que escribir el comando mount usando -t nfs ... nfsvers=4

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X