1 votos

Permisos por defecto para los archivos nuevos y umask por defecto

He montado un recurso compartido de NFS en mi dispositivo Android rooteado usar busybox monte.

Puedo leer y crear archivos, pero cuando voy a crear un archivo en cualquier aplicación, el archivo se establece permisos a las 0600 (porque el umask dentro de la aplicación es 077). Esto significa que un archivo creado por una aplicación sólo puede ser accedido por la aplicación.

¿Cómo puedo cambiar este comportamiento, y tiene la creación de nuevos archivos con permisos más? Hay una forma para que las aplicaciones comenzar con una umask?

También, ¿cómo es que todos los archivos creados en la sdcard son 0775 (omitiendo la aplicación de la umask) ? Quiero que mi punto de montaje NFS a comportarse como el de la Tarjeta SD

Tengo un Android rooteado cuadro con la versión 4.4.2.

1voto

Jonathan Gilbert Puntos 126

Una rápida búsqueda en Google revela una nueva API en Java 7 que permite a los bits de permisos para ser twiddled para archivos individuales. Esto no ayuda con el cambio de la umask, pero debe permitir que usted para reemplazarlo después de la creación del archivo. Echa un vistazo:

http://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html#setPosixFilePermissions%28java.nio.file.Path,%20java.util.Set%29

Si usted realmente necesita para cambiar el umask, no parece ser una función que actualmente están expuestas directamente por la BCL. Tendrás que recurrir a los nativos de llamadas, o el uso de la biblioteca, para hacerlo en su nombre. Puedo escuchar que las bibliotecas ya existe, usted estaría buscando uno que da acceso a POSIX funcionalidad del sistema operativo.

En cuanto a por qué los archivos en la sdcard ignorar el umask, sdcards normalmente están formateadas con el sistema de ficheros vfat, que es básicamente compatible con MS-DOS/Windows 95 y no reconoce el concepto de los usuarios. Como tal, no tiene manera de restringir el acceso a un archivo; si no se puede restringir el acceso de los usuarios en particular, entonces usted sólo estaría restringiendo el acceso de cualquier persona, y por qué querríamos hacer eso? :-)

Lo vfat tiene los atributos de archivo -- sólo lectura, oculto y de sistema. No hay una manera eficaz de mapa la mayoría de archivos de UNIX modo de combinaciones de estos. El conductor, por lo tanto, simplemente siempre los informes de los archivos como disponer de un determinado modo, se establece cuando el sistema de archivos montado. Android monta sdcards, para que de ese modo se devuelve como 0755 (-rwxr-xr-x).

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: