Tengo una carpeta/cygwin/d/myfolder/ Y cada vez que guardo archivos allí, de cygwin si hago una ls -la veo que los archivos tienen permiso 000. Eso realmente causa Tengo un problema bastante grande ya que sincronizo esta carpeta con mi servidor y no se puede acceder a ninguno de los archivos. ¿Cómo puedo obtener los archivos para obtener automáticamente un permiso razonable?cygwin establece permiso de archivo para 000
Respuesta
tener una lectura a través de las respuestas a este enlace: http://cygwin.1069669.n5.nabble.com/vim-and-file-permissions-on-Windows-7-td61390.html
La solución no funcionó para mí también:
Editar /etc/fstab y añadir esta línea al final del archivo:
none /cygdrive cygdrive binary,noacl,posix=0,user 0 0
A continuación, cierre todos los procesos de Cygwin, abra un nuevo terminal y ls -l en sus archivos nuevamente.
Explicación: De forma predeterminada, Cygwin utiliza las listas de control de acceso (ACL) del sistema de archivos para implementar permisos POSIX reales. Algunos programas o procesos nativos de Windows pueden crear o modificar las ACL de modo que Cygwin calcule los permisos POSIX como 000. Con la opción de montaje noacl, Cygwin ignora las ACL del sistema de archivos y solo falsifica un subconjunto de bits de permiso basándose en el atributo de solo lectura de DOS.
Asegúrate de que tu umask esté configurada correctamente con el comando umask. Si su umask es decir 0777 que resta de los permisos de archivos nuevos y terminará con 000 permisos. Probablemente hay muchas otras posibilidades para considerar más allá de eso.
Si su id no está configurado correctamente en/etc/passwd y/etc/group que también puede causar que ls muestre resultados inesperados. Verifica los permisos de la carpeta. También verifique los permisos de Windows con el comando getfacl. Tal vez también verifique el comando de montaje.
'getfacl .' es lo que estaba buscando. –
En mis archivos de PC Win7 eran por lo general ---------- + 1 David Ninguno 69120 17 de Jun 13:17 mydoc.txt
he intentado todo lo anterior sin suerte Resultó Todavía tenía algunas entradas históricas de montaje en mi .zshrc ¡Las borré y el problema de Bob's your Uncle desapareció!
En respuesta anterior, se propuso una solución:
Editar/etc/fstab y añadir esta línea al final del archivo:
ninguno/cygdrive binaria cygdrive, noacl, POSIX = 0, usuario 0 0
Y en esa respuesta había este comentario:
cuando intento esto, todos mis archivos son -rw-r - r-- no importa qué chmod() yo haga. No puedo marcar los archivos como ejecutables; sólo se revierte a 0644. (== umask 0022)
que tenía este mismo problema, pero se manifiesta en la incapacidad para ejecutar archivos por lotes de DOS (* .bat) cuando se ejecuta ksh Cygwin o mksh.Me encontré con este sitio web: http://pipeline.lbl.gov/code/3rd_party/licenses.win/cygwin-doc-1.4/html/faq/ que contiene este útil consejo:
Tenga en cuenta que se puede utilizar para obligar a montar -x Cygwin para tratar todos los archivos bajo el punto de montaje como ejecutables. Esto se puede usar para archivos individuales y directorios. Entonces Cygwin no se molestará en leer archivos para determinar si son ejecutables.
Entonces referencias cruzadas con esta página - https://cygwin.com/cygwin-ug-net/using.html#mount-table - con su consejo:
cygexec - Tratar a todos los archivos por debajo del punto de montaje como ejecutables cygwin.
Añadí cygexec al cuarto campo de mi fstab. Esto lo hizo. Mi .bat ahora es ejecutable dentro de ksh/mksh, lo que es necesario ya que estoy ejecutando un trabajo de Jenkins que llama a una pila de shell Korn 3 archivos de profundidad, que no tengo control modificable. ¡Solo necesitaba el .bat para correr!
Actualización: la solución anterior no era exactamente lo que necesitaba, en posteriores pruebas. Resultó que algunos ejecutables, como javac y cl, se comportan de forma extraña (las utilidades imprimirían su uso y saldrían). Creo que lo que necesitaba en lugar de 'cygexec' era solo 'ejecutivo'. Como la misma nota de la página:
exec - Trate todos los archivos por debajo del punto de montaje como ejecutables.
- 1. clasificación 50 000 000 números
- 2. "Permiso denegado" usando cygwin en Windows
- 3. Fortran: el manejo de valores enteros de tamaño: ~ 700 000 000 000
- 4. Archivo indeleble en cygwin
- 5. Abrir un archivo de Cygwin
- 6. apache 000-host virtual predeterminado
- 7. constante de caracteres: \ 000 \ xhh
- 8. NPM en Cygwin: fin de archivo inesperado
- 9. ¿Para qué sirven las señales de permiso de archivo @ y +?
- 10. Permiso de archivo predeterminado de Linux
- 11. Cómo analizar un número como "-2.000000e + 000"
- 12. PHPExcel establece encabezados específicos para el formato de archivo
- 13. Nant: cambio de permiso de archivo
- 14. Archivo ejecutable generado usando GCC bajo cygwin
- 15. ¿Cómo uso mi archivo .vimrc en Cygwin?
- 16. Para permitir solo el host local en Apache 000-predeterminado
- 17. ¿Cómo obtener permiso para editar el archivo apache2.conf? [Ubuntu]
- 18. Cómo establecer un archivo para este permiso drwxrwsrwx en ubuntu
- 19. comparador para STL establece
- 20. CYGWIN = nodosfilewarning no ayuda cygwin advertencia
- 21. Jenkins: Permiso denegado a un archivo 777
- 22. Bash: Permiso denegado al intentar abrir un archivo
- 23. Cygwin ejecutando secuencia de comandos de un archivo por lotes?
- 24. con el Notepad ++ para git dentro cygwin
- 25. Permiso IIS7 denegado - Archivo ASP Escritura
- 26. ¿Qué es el código de estado HTTP 000?
- 27. cygwin ssh sin masilla, ¿sí?
- 28. redhat cygwin vs cygwin? cualquier difrencia?
- 29. Ejecutando una aplicación, compilada en cygwin, sin haber instalado cygwin
- 30. Instalación manual de Cygwin sin usar Setup.exe
Estos errores se pueden solucionar estableciendo los atributos de seguridad correctos en Windows. Haga clic derecho en la carpeta -> seleccione Propiedades -> seleccione la pestaña de seguridad. Ahora arregla cualquier configuración incorrecta. También verifique la opción "Avanzado". Intenta con "Habilitar herencia" y reemplaza los permisos de objetos secundarios con la configuración de la carpeta actual. –