9 votos

TextEdit muestra diálogos sobre no tener permiso para abrir ningún archivo

Alrededor de una vez al día, TextEdit comienza a mostrar diálogos como este cuando trato de abrir cualquier archivo:

El documento "test.txt" no pudo abrirse. No tienes permiso.

Para ver o cambiar los permisos, seleccione el elemento en el Finder y elija Archivo > Obtener información.

Normalmente hay mensajes como este en system.log:

9/13/12 10:41:42.952 PM sandboxd[21081]: ([357]) TextEdit(357) deny file-read-data /Users/lauri/Desktop/test.txt
9/13/12 10:41:55.118 PM TextEdit[357]: NSFileVersion tried to tried to add a new generation and failed. Versioned file URL: file://localhost/Users/lauri/Notes/temp.txt, contents URL: file://localhost/Users/lauri/Notes/temp.txt.sb-de6477ff-BhVNrq, error: Error Domain=GSLibraryErrorDomain Code=1 "The operation couldn’t be completed. (GSLibraryErrorDomain error 1.)"
9/13/12 10:41:55.118 PM TextEdit[357]: NSDocument failed to preserve the old version of a document. Here's the error:
Error Domain=GSLibraryErrorDomain Code=1 "The operation couldn’t be completed. (GSLibraryErrorDomain error 1.)"
9/13/12 10:41:55.119 PM TextEdit[357]: <Document: 0x7f971d00a510>: An error occurred while attempting to preserve the backup file at file://localhost/Users/lauri/Notes/temp.txt.sb-de6477ff-BhVNrq: Error Domain=GSLibraryErrorDomain Code=1 "The operation couldn’t be completed. (GSLibraryErrorDomain error 1.)"

No puedo abrir ningún archivo hasta que lo deje y vuelva a abrir TextEdit. También tengo que borrar los archivos de copia de seguridad (como temp.txt.sb-de6477ff-BhVNrq ) manualmente.

He tenido el problema en dos instalaciones diferentes. He intentado borrar el contenedor de la caja de arena y reparar los permisos de la partición de recuperación. ¿Alguien sabe qué está pasando?

0 votos

¿Abres el archivo dame en TextEdit y WriteRoom al mismo tiempo?

0 votos

¿Puedes abrir terminal.app y decirnos la salida de ls -lt ?

0 votos

@Mark A veces, pero no creo que empiece por eso. Aunque probablemente debería probar a quitar WriteRoom temporalmente.

3voto

Fuzzy Purple Monkey Puntos 702

Terminé reemplazando la firma de código de TextEdit por una firma ad-hoc:

sudo codesign -f -s - /Applications/TextEdit.app/

Desactiva el sandboxing, así que por ejemplo los archivos de preferencias están en ~/Library/Preferences/ en lugar del contenedor de la caja de arena.

Edición: Los diálogos volvieron después de reinstalar OS X, y ahora estoy recibiendo errores como este para codesign -f -s - :

$ sudo codesign -f -s - /Applications/TextEdit.app/
/Applications/TextEdit.app/: replacing existing signature
/Applications/TextEdit.app/: object file format unrecognized, invalid, or unsuitable

Estoy usando https://github.com/jjgod/TextEditPlus por ahora. Está basado en una versión de TextEdit que venía con 10.7, pero funciona con 10.8.2.

0voto

Frank Heikens Puntos 888

Intenta reparar el usuario permisos.

http://www.ernieflores.net/mac-os-x-10-7-lion/repair-user-permissions-in-mac-os-x-lion/

En Lion, hay una utilidad adicional de solicitud de permisos de reparación escondido. Esta herramienta se encuentra dentro de las Utilidades de Reparación de arranque. Aquí está cómo acceder a ella.

  1. Reinicia a Lion y mantén pulsadas las teclas Comando y R.
  2. Arrancarás en la pantalla de Utilidades de Reparación. En la parte superior, en la barra de menú, haga clic en el elemento Utilidades y luego seleccione Terminal.
  3. En la ventana Terminal, escriba la contraseña de restablecimiento y presione Return.
  4. Se inicia la utilidad de restablecimiento de la contraseña, pero no vas a restablecer la contraseña. En su lugar, haz clic en el icono del disco duro de tu Mac en la parte superior. En el menú desplegable que aparece debajo de él, selecciona la cuenta de usuario en la que tienes problemas.
  5. En la parte inferior de la ventana, verás un área llamado "Reajuste de los permisos del directorio de casas y ACLs". Haga clic en el botón de reinicio botón de ahí.

El proceso de reinicio toma un par de minutos. Cuando esté hecho, deja el programas que has abierto y reinicia tu Mac. Fíjate en que "Spotlight comienza a re-indexar inmediatamente

0 votos

Si los permisos del usuario estuvieran estropeados, ¿no fallaría la aplicación cada vez con el mismo error y no podría crear ningún archivo nuevo?

0 votos

Tal vez. Reparar las permanentes de los usuarios no podría hacer daño.

0 votos

Parece más bien un comentario para algo a probar pero no una respuesta real a la pregunta. Veremos en base al OP - estoy seguro de que se ha probado o se puede descartar en un corto período de tiempo.

0voto

mecano Puntos 11

Posiblemente relacionado http://forums.macrumors.com/showthread.php?t=798825 .

Intenta borrar el ~/Library/Autosave Informations (se recreará automáticamente).

0 votos

Lo intenté - de hecho, si haces eso, tienes que (también) borrar el del contenedor sandbox de TextEdit (que encontré usando una herramienta de búsqueda como Find Any File), pero eso tampoco ayudó (en OSX 10.10.4).

0voto

Jonathan Puntos 1

Mi solución, tipo: chmod o+w ~/.CFUserTextEncoding

He aquí la razón:

Tuve el mismo problema, encontré este hilo y lo resolví. Estoy usando El Capitán todavía, pero probablemente es el mismo problema en otras versiones.

El problema es que Apple parece haber añadido enlaces blandos en el directorio ~/Library/Containers/com.apple.TextEdit/Data

Por ejemplo: .CFUserTextEncoding@ -> ../../../.CFUserTextEncoding Pero, no hay ninguna comprobación de los permisos, o incluso de la existencia, de los lugares a los que apuntan.

Lo arreglé desde el directorio ~/Library/Containers/com.apple.TextEdit/Data cambiando los permisos en: ../../../..CFUserTextEncoding:

chmod 644 ../../../../.CFUserTextEncoding

En resumen, la solución es simplemente asegurarse de que el archivo ~/.CFUserTextEncoding tenga los permisos adecuados. El mío no lo tenía, pero ahora sí:

En resumen: puedes conseguirlo con el comando

chmod o+w ~/.CFUserTextEncoding

Y luego mira los permisos wth:

ls -la ~/.CFUserTextEncoding

Es posible que tenga que seguir mirando los permisos, ya que me di cuenta de que se cambió en mí más tarde. No estoy seguro de por qué.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple 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